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

On 10/30/20 5:59 PM, Peter F. Patel-Schneider wrote:
> 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>>.

Sorry, I guess I misunderstood your previous point.

David


> 
> 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 Saturday, 31 October 2020 02:30:34 UTC