W3C home > Mailing lists > Public > semantic-web@w3.org > July 2020

Re: Attempting (vainly?) to change the subject was: Blank nodes must DIE! [ was Re: Blank nodes semantics - existential variables?]

From: Patrick J Hayes <phayes@ihmc.us>
Date: Wed, 29 Jul 2020 19:29:20 -0500
CC: Henry Story <henry.story@bblfish.net>, Semantic Web <semantic-web@w3.org>
Message-ID: <7028C994-F19D-4C96-A475-3BFCC33D5DD0@ihmc.us>
To: Antoine Zimmermann <antoine.zimmermann@emse.fr>
You did open up an old can, Antoine. I will try not to shake it too hard, just some points for clarification.

> On Jul 29, 2020, at 3:48 PM, Antoine Zimmermann <antoine.zimmermann@emse.fr> wrote:
> 
> Le 29/07/2020 à 18:52, Patrick J Hayes a écrit :
> 
> [skip]
> 
>> Ahem. https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3199260
> 
> Yes. It's important to differentiate between "there is nothing for X" and "there is no *standard* for X". And also differentiate between "there is something for X" and "there is a *standard* for X".
> 
> In this case, there is a well documented formal semantics for Named Graphs, namely the one that Pat references. It also has the privilege to be the first published formal semantics of Named Graphs.
> 
> However, not only "Pat's Named Graph semantics" (I'll use this term to denote the semantics defined in Carroll et al.'s paper, that is, the one that Pat references) is not standard, but it also isn't the only one formal semantics for Named Graphs.
> 
> If a document D1 contains:
> 
> <x> {
>  <Superman> <kissed> <LoisLane> .
>  <Superman> owl:sameAs <ClarkKent> .
> }
> 
> does it say the same thing as document D2:
> 
> <y> {
>  <Superman> <kissed> <LoisLane> .
>  <Superman> owl:sameAs <ClarkKent> .
> }
> 
> ?

Of course they say the same thing. They are equivalent graphs, in RDF and in our semantics. But that doesn't make them identical. 

> Or, does D1-union-D2 entails "<x> owl:sameAs <y>".
> 
> In Pat's Named Graph semantics, it does not. There are good reasons for this, which are explained in Carroll et al.'s paper. Yet, there are also good reasons (arguably) to use Named Graphs with the intent that D1 is equivalent to D2, or that it entails that D1-union-D2 entails "<x> owl:sameAs <y>”.

I havn’t seen any good reasons for that. If I publish <x> in China on Wednesday and you publish <y> in Russia on Saturday, and <x> = <y> so they are the same thing, which of us published it, and when? 

> 
> Also, if D3 says:
> 
> <x> {
>  <ClarkKent> <kissed> <LoisLane> .
> }
> 
> then, in Pat's Named Graph semantics, it is not the case that D1 entails D3.

Because they have the same name, but are different graphs. That is impossible if graph names are rigid names: it is like having xsd:integer have its usual meaning in one place but mean xsd:real somewhere else. If D3 hadn't stolen and misused the name, and called their graph <z> instead of <x>, then the entailment would be fine. 

> Yet, there are good reasons (arguably) to use Named Graphs with the intent that D1 entails D3.
> 
> There are ways of defining a formal semantics for Named Graphs such that D1 entails D2, or that D1 entails D3, or both.
> 
> These different ways of interpreting Named Graphs (and more generally RDF Datasets) have been discussed ad nauseam in the RDF 1.1 Working Group. The group published a note about these options (https://www.w3.org/TR/rdf11-datasets/), that I authored. Although I authored it, it is not supposed to reflect my personal view on the topic. It is meant to reflect the state of the discussions within the working group, and the extent of the possibilities when it comes to interpreting Named Graphs and RDF Datasets.

The document you wrote is a great survey, but I would remark that it is oriented towards datasets, where the graph name and the graph it names are syntactically very close, whereas our paper was thinking of names being used to refer to graphs out on the open Web. 

> Now, personally, I have my preference. I would prefer that D1 entails D3, and I think that Pat's Named Graph semantics could be encoded using a different data structure similar to a "named graph literal”.

Could this handle the kind of application we focussed on, with warrants on the open web? It is a lot more use than using RDF to talk about Superman :-)

Pat

> 
> For instance:
> 
> <alice> <likes> "<bob> {<Superman> <kissed> <LoisLane> . <Superman> owl:sameAs <ClarkKent>}"^^pat:NGSemantics .
> <bob> {
>  <Superman> <kissed> <LoisLane> .
>  <Superman> owl:sameAs <ClarkKent>
> }
> 
> would entail:
> 
> <bob> {
>  <ClarkKent> <kissed> <LoisLane> .
> }
> 
> but would not entail:
> 
> <alice> <likes> "<bob> {<ClarkKent> <kissed> <LoisLane> .}"^^pat:NGSemantics .
> 
> nor:
> 
> <alice> <likes> "<nick> {<Superman> <kissed> <LoisLane> . <Superman> owl:sameAs <ClarkKent>}"^^pat:NGSemantics .
> 
> 
> Opinions may vary. (huho, I think I opened another big can of worms here...)
> -- 
> Antoine Zimmermann
> ISCOD / LSTI - Institut Henri Fayol
> École Nationale Supérieure des Mines de Saint-Étienne
> 158 cours Fauriel
> 42023 Saint-Étienne Cedex 2
> France
> Tél:+33(0)4 77 42 66 03
> Fax:+33(0)4 77 42 66 66
> http://zimmer.aprilfoolsreview.com/
Received on Thursday, 30 July 2020 00:29:38 UTC

This archive was generated by hypermail 2.4.0 : Thursday, 30 July 2020 00:29:40 UTC