- From: Pat Hayes <phayes@ihmc.us>
- Date: Tue, 21 Feb 2012 15:43:37 -0600
- To: Andy Seaborne <andy.seaborne@epimorphics.com>
- Cc: public-rdf-wg@w3.org
On Feb 21, 2012, at 5:44 AM, Andy Seaborne wrote: > > > On 21/02/12 07:56, Pat Hayes wrote: >> For conservatives among us, the opposite re-interpretation is always >> available. Any quad-graph can be thought of as a SPARQL dataset, by >> 'slicing' the quads according to their last argument, and >> re-declaring this parameter to be a graph label. However, to retain >> the semantic flexibility (ie to have the triples in each graph able >> to be re-interpreted differently in each labeled graph), we would >> have to modify the RDF semantics to allow for this graph-local >> context being involved in the truth recursions. And as already noted, >> it is simpler, and much less of a change ot the basic RDF model, to >> do this by thinking of this construction in the quad-graph way as >> being a set of property-with-three-argument quads rather than as a >> collection of labelled sets of two-argument triples. And as so many >> of the 'natural' uses of datasets seem to want to take advantage of >> the apparent contextual' possibility of the graph label, and this >> option is only available in a quad-store format in any case, it seems >> comparatively harmless to attach the needed semantics directly to >> this quad store format, rather than tinker with the semantics of >> triples or try to make sense of graph 'names' which do not denote >> graphs. > > I was wondering about existing vocabularies. > > If I understand the quad proposal, then all existing vocabularies are technically undefined because they never define P(S,O,G), only P(S,O). No, that is fine. IEXT can be purely a set of triples in the new semantics, so every old interpretation is still a new interpretation. And that does "define" the value of P(S, O, G): its always flase, for any G. But in any case, RDF vocabularies are never *defined*, strictly speaking. They mean whatever their owner specifies them to mean. Right now, for example, any quad with a property in the rdf: or rdfs: namespaces is simply false, as a kind of default, but we are free to change this if we want to (without changing any of the triples, of course.) Actually I would recommend that we don't, since the rdf: and rdfs: vocabularies are not intended to be used 'contextually' (eg they dont change with time and should be resistant to subjective re-interpretation) so it would be good to restrict them to a purely triple-based meaningful use. Then writing something like G: { :A rdfs:subClass :B + } would be formally a contradiction (since that *quad* is defined to be false. because being a subclass isn't comething that you can put into a context. Or, we could decide it was, but then we would need to talk rather a lot about kinds of context and what effect they have on subclassing and so forth.) > > The graph-local context view seems to preserve the vocabulary by reinterpreting P(S,O). It's less neat to have sets of triples + graph labels, but it does seem to carry-over existing data. What I was trying to convey is that the graph-with-context view is formally identical with the quads view. What we have right now is graphs-without-context. > > Have I missed something? Not sure (see above.) Pat > > Andy > > ------------------------------------------------------------ IHMC (850)434 8903 or (650)494 3973 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32502 (850)291 0667 mobile phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes
Received on Tuesday, 21 February 2012 21:44:15 UTC