W3C home > Mailing lists > Public > public-rdf-wg@w3.org > December 2011

Re: [GRAPH] graph deadlock?

From: Pat Hayes <phayes@ihmc.us>
Date: Mon, 19 Dec 2011 22:45:33 -0600
Cc: Ivan Herman <ivan@w3.org>, W3C RDF WG <public-rdf-wg@w3.org>
Message-Id: <678A19D2-DDED-48D1-9EE0-D55C4A4434EE@ihmc.us>
To: Richard Cyganiak <richard@cyganiak.de>

On Dec 19, 2011, at 2:28 PM, Richard Cyganiak wrote:

> Pat,
> 
> On 17 Dec 2011, at 17:21, Pat Hayes wrote:
>>> (1) RDF Datasets. It consists of labelled graphs: (G, l), where l is an URI. (Some raised the possibility to use literals for 'l', but I think there is a consensus to use URI-s). There is no semantic relationship between 'G' and 'l', so something like (with an ad-hoc syntax here):
>>> 
>>> ( {a:b c:d e:f}, mailto:ivan@w3.org }
>>> 
>>> is a perfectly o.k. labelled graph in an RDF Dataset
>> 
>> Fine so far, but we get into a problem when we do the details. I personally have no problem (well, a kind of private horror, but thats just me) with datasets as you describe them here. The problem is, people apparently want to both have these AND use the URIs in them to refer to the associated graph in RDF triples (eg in 'metadata' graphs.) And that combination is simply illegal, according to the 2004 RDF specs.
> 
> You keep saying things like that.
> 
> I keep asking for quotations from the specs that back up these claims.
> 
> You never deliver, or deliver only a vague pseudo-arguments that rely on unstated assumptions not required by the specifications.

I will repeat the details, which IMO should be obvious to anyone who understands RDF. RDF as presently defined in the 2004 specs does not have any provision for URIrefs to have multiple denotations in an interpretation, or to be interpreted in one way in one place and (simultaneously) another way in another place. The entire RDF model is based on the presumption that each URIref has a single denotation wherever it occurs, and the notion of interpretation is based on that presumption. (In case you feel that this is a mistake, consider how we could manage to have a semantic web, or indeed a Web at all, in which different occurrences of a given IRI could mean completely different things depending where they occur.)

If you do not agree on the above, or think it is irrelevant,. then you have not understood the RDF semantic model. 

Now, consider the case where a URI  UUU is used as a graph label in a dataset, and also occurs in the RDF inside a graph in that same dataset, where it is interpreted as denoting, say, a human being or a mailbox. OK so far. Now, however, add the dataset some more RDF (perhaps in the default graph used to express some metadata, for example) in which that same URI is intended to be used to refer to the graph that it labels. There are *no* RDF interpretations in which a single URIref can denote two different things. So this dataset as a whole has no satisfying interpretations. So it is formally inconsistent. Moreover, the inconsistency arises directly, and obviously, from this usage in which a URI is used to "name" something other than what everyone agrees it is in fact interpreted to mean (as, vividly, in Ivan's example using an email address). And this is, surely, *obviously* at odds with the basic assumption of the entire Web, that URIs, when considered as names, identify *one* thing. 

> 
> When you say “this is illegal in RDF” then I think this has to be read as “I don't like it”.

No, I mean it violates the semantic assumptions of the (normative) RDF model. I might suggest that when you say "It isnt illegal", this has to be read as "I havnt understood the semantics spec."

>> We could simply declare that RDF has no semantics, and is simply to be used by programmers to mess around with in ways they find handy. Really, this might be the best way to move forward. But until we do this, we have to take the semantics seriously. 
> 
> Or we could just not bother giving any formal semantics to any new parts that are added to RDF. Several parts of RDF don't have a formal semantics and work pretty much fine anyways, e.g., RDF lists.

They have no semantics because they dont need any semantics. If a list had a semantics, it would describe the list. Those are basically LISP S-expressions coded into RDF triples: they *exhibit* the required structure rather than *describe* it. 

But I agree, we could indeed not give semantics to new parts. The sticking point, however, is that this particular 'new' part is already using the 2004 RDF semantics, but it is using it incorrectly. 

Pat

> 
> Best,
> Richard
> 

------------------------------------------------------------
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, 20 December 2011 04:46:08 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:25:46 GMT