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

Re: Graph labels vs. graph names. (was: Re: complete graphs)

From: Richard Cyganiak <richard@cyganiak.de>
Date: Wed, 5 Oct 2011 13:22:40 +0100
Cc: RDF Working Group WG <public-rdf-wg@w3.org>
Message-Id: <0165BBE4-DF32-444A-94D3-370BF89C95D6@cyganiak.de>
To: Pat Hayes <phayes@ihmc.us>
Hi Pat,

On 5 Oct 2011, at 07:34, Pat Hayes wrote:
>>>> For example, :G1 below is a name for the graph containing triples that state that {:s1 :p1 :o1.} was published yesterday at <http://example.com/>.
>>>> 
>>>> :G1 {
>>>>  [] a :Publishing;
>>>>     :date "2011-09-30"^^xsd:date;
>>>>     :webAddress <http://example.com/>;
>>>>     :triples :G2.
>>>> }
>>>> :G2 {
>>>>  :s1 :p1 :o1.
>>>> }
…
>> Let's look at two URIs in that graph: G2 and <http://example.com/>.
>> 
>> As far as I can tell, RDF Semantics tells us nothing about the referents of either of these URIs, except that they're in a certain relationship to the blank node in the graph.
> 
> Indeed, which is why if we want to ensure that they do relate to something in particular (such as a graph label to the graph it labels), we should add this as a semantic condition.

Wait a minute.

There is no semantic condition that makes <http://example.com/> denote the web page. As far as RDF Semantics is concerned, <http://example.com/> is a completely arbitrary URI, and replacing it with <http://something.else/> would change *nothing* in the meaning of the graph.

I have not seen you suggest any change to that.

Why is a semantic condition that makes :G2 denote the graph important, while a semantic condition that makes RDF Semantics aware of the web is unimportant?

>> Personally I find it easy to accept that :G2 denotes a particular named graph the exists in the same dataset, external to our graph G1.
> 
> Oh, I agree that is entirely reasonable. However, nothing in the specs actually state or require this, so it is technically invalid

Can you please back up the claim that it is “technically invalid” with some quotations from the spec?

> and certainly not something I would want to rely upon when writing software.

Implementers and users of SPARQL seem to be generally perfectly ok with relying on private conventions.

Is there any evidence that the lack of a rigidly fixed denotation for graph IRIs actually causes any problems for users or implementers?

> Any reasoner which relied upon this would be incorrect.

No, it would merely use an ad-hoc semantic extension. I believe that RDF Semantics specifically allows this kind of thing.

>> I certainly don't see anything in RDF Semantics that contradicts this.
> 
> There is nothing that contradicts it, but there is also nothing that sanctions it as being correct.

There is nothing that sanctions the use of <http://example.org/> to denote that web page as correct either, and that doesn't seem to cause any problems, so I don't think that RDF Semantics needs to sanction anything about graph names either.

> And since we have explicitly decided (as I believe we have) that the fourth IRI in a quad is not a 'name' for a graph in the sense that it is required to denote that graph, I take it that the use of G2: is a label in the second expression does *not* establish a naming or referential relationship between the URI and the graph. (If this is wrong, then of course I stand corrected and withdraw my point.)  Since RDF semantics does require that when that same URI is used in an RDF triple, it must be related to what it names by the standard denotation relationship, it follows that there can be no semantic requirement that the use of this URI inside the triple means the same thing as its use as a graph label. They might as well be two different URIs: in fact, your example with the first occurrence of  :G2 replaced by :G3 would be *exactly* identical in meaning, according the semantic model we have at present. As I am sure you will agree, there is nothing in the RDF semantics which prevents :G2 and :G3 from referring to the same entity. Of course, there is nothing to ensure that they do, either: it is, in fact, a complete crap-shoot; just as it is when you use the same name in contexts which are explicitly, normatively, stated to allow different meanings for occurrences of one and the same name. 

RDF Semantics is already oblivious to the most interesting use of URIs – the web. It doesn't know anything of the inherent difference between what's identified by <http://example.com/>, <http://something.else/> and <http://google.com/>. These are all alike to RDF Semantics. A complete crap-shoot.

This doesn't seem to have bothered anyone very much over the last seven years.

I suggest that it's fine if RDF Semantics is equally oblivious to the structure of RDF datasets. It's fine if RDF Semantics doesn't know anything about the inherent difference between :G1, :G2 and :G3 resulting from their use (or non-use) as graph names in the example above.

I would like to see an explanation why it is ok for RDF Semantics to completely ignore the use of IRIs on the web yet the sky would be falling if it ignored the use of IRIs as graph names in RDF datasets.

Best,
Richard
Received on Wednesday, 5 October 2011 12:23:12 GMT

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