Re: owl:sameAs/referential opacity Re: Can RDFstar be defined as only syntactic sugar on top of RDF (Re: weakness of embedded triples)

This doesn't necessarily have anything to do with blank node canonicalization. 

In fact, the scheme that I was toying with completely ignored anything about
the blank nodes except their co-occurence (so that <<_:a :x _:a>> ended up
with a different IRI than <<_:b :x _:c>>.

peter


On 10/30/20 5:49 PM, David Booth wrote:
> On 10/30/20 2:53 PM, Peter F. Patel-Schneider wrote:
>> I had thought that it might be possible to produce something useful by
>> employing non-injective mappings when determining the IRI for an embedded
>> triple.   But this approach has potential problems because embedded statements
>> with different subjects, predicates, or objects will end up being the same.
>> Even if the the only thing that mapping is insensitive to is the actual
>> identity of blank nodes then you end up with situations like:
>>
>> :Mary :said s:Johnsaw_ .
>> s:Johnsaw_ rdf:type rdf:statement .
>> s:Johnsaw_ rdf:subject :John .
>> s:Johnsaw_ rdf.predicate :saw .
>> s:Johnsaw_ rdf:object _:b1 .
>>
>> :Mary :said s:Johnsaw_ .
>> s:Johnsaw_ rdf:type rdf:statement .
>> s:Johnsaw_ rdf:subject :John .
>> s:Johnsaw_ rdf.predicate :saw .
>> s:Johnsaw_ rdf:object _:b2 .
>>
>> Here the statement s:Johnsaw_ has two objects, which appears to have
>> unintended consequences.  I have not yet convinced myself that there is no way
>> to make this work, although I do believe that there are unintended
>> consequences.
>
> Yes, presumably those should have been two different URIs, instead of using
> s:Johnsaw in both places.
>
> This is essentially the blank node canonicalization problem, i.e., the
> problem of relabeling or skolemizing blank nodes in a predictable repeatable
> way when doing RDF canonicalization.   Aiden Hogan (copied) has done a lot
> of work on this, and -- if I'm remembering correctly -- one basic result is
> that, when renaming each blank node, you need to consider the whole
> blank-node-connected subgraph in which it appears. In other words, you need
> to consider the whole subgraph that is reachable via blank node
> connections.   (Hopefully Aiden will correct me if I got this wrong or did
> not express it correctly!)
>
> David Booth
>

Received on Friday, 30 October 2020 22:01:09 UTC