Re: Attempt to provide semantics to Sandro's named graph design

Hi Sandro,

On Apr 11, 2012, at 16:14 , Sandro Hawke wrote:

[snip]

>> 
>> 
>>> 
>>> * I think we want another condition that says a given label can only be
>>> associated with one graph.   I'm not sure if we say that in the DS
>>> conditions and in merging, or somehow say it globally.    Anyway, it
>>> would be something like:
>>> 
>>> all i,j in (1...n): if (ui,Gi) in DS and 
>>>                         (uj,Gj) in DS and
>>>                          ui = uj
>>>                        then Gi=Gj.
>>> 
>>> 
>> 
>> Right. This was not necessary before, that is why I used the ∃! in the formula that has now changed. Except that it is not Gi=Gj, but that the two graphs are equivalent (modulo bnodes...).
> 
> Just to make sure I understand you, this equivalence is to deal with the
> problem where ig you parse the Turtle document "{} <b> 1; <c> 1" twice,
> you're going to get two DIFFERENT graphs, right?   So you're saying Gi
> and Gj aren't the same, but are equivalent in this bnode-renaming way.
> If so, yes, I agree.

I presume you meant [] and not {}...

Yes, graph equivalence means that the two graphs may be transformed into one another modulo some bnode renaming magic.

> 
>> As for the global thing: I think the semantics can go as far as saying that if you use the same label to two different graphs, then you get into an inconsistent situation. 
>> 
>> Looking at the result: at the moment I do not see any value in the rdf:Graph class! Indeed, none of the semantic conditions make use of it (except of course its definition). And because this semantics *is* fairly weak after all, this may be fine.
> 
> Maybe you're missing Condition 3?   That uses rdf:Graph.

Yes, but the only thing that condition does is to define what rdf:Graph means. But none of the other condition refer to it; put it another way, all the other conditions are formulated without a reference to the fact that ui is or is not in rdf:Graph. If so, what is the use?

> 
> You could make that a bit stronger, too, making it a biconditional.
> That is, it is also true that I(ui)=Gi implies {ui rdf:type rdf:Graph}.

Yep, could be done, but does not change what I said...

> 
>> Although... there is still the subgraphing question pending; 
> 
> I'd call that the partial-vs-complete graph reference question, but,
> yes.   This is one of those cases where people are using DWIM semantics,

'DWIM' ??

> so it's painful to switch to standard semantics.
> 
> For clarity, we might want to use some syntax like this for now, inside
> the group:
> 
> <u> {= <a> <b> <c> }    for complete-graph semantics
> 
>     read as <u> denotes something which hasGraph <a> <b> <c>.
> 
> <u> {+ <a> <b> <c> }    for partial-graph semantics.
> 
>     read as <u> denotes something which hasGraph a graph that includes
>     at least the triple <a> <b> <c>
> 
> (Earlier I suggested using "..." instead of "+", but that gets
> confused with metasyntax.  People use "..." all the time in their
> examples to mean they're leaving out some details of the example.)
> 
> (Also, Eric suggesting using +{...}, but putting an equals outside the
> braces has a very different implication.)
> 
> 
>> also whether we want to syntactically determine the nature of the default graph.
> 
> You mean like whether it's the merge of the named graphs or not?

Yes. This came up reading Tom Baker's examples. The semantics being as it is, whether the default graph is the union of all the graphs or not makes a major difference.

Ivan

> 
>     -- Sandro
> 
>> Ivan
>> 
>>> 
>>> That's it for now...
>>> 
>>>  -- Sandro
>>> 
>>> 
>>> 
>> 
>> 
>> ----
>> Ivan Herman, W3C Semantic Web Activity Lead
>> Home: http://www.w3.org/People/Ivan/
>> mobile: +31-641044153
>> FOAF: http://www.ivan-herman.net/foaf.rdf
>> 
>> 
>> 
>> 
>> 
> 
> 


----
Ivan Herman, W3C Semantic Web Activity Lead
Home: http://www.w3.org/People/Ivan/
mobile: +31-641044153
FOAF: http://www.ivan-herman.net/foaf.rdf

Received on Wednesday, 11 April 2012 14:26:10 UTC