W3C home > Mailing lists > Public > semantic-web@w3.org > December 2018

Re: Pragmatics of Blank Nodes Re: Toward easier RDF: a proposal

From: David Booth <david@dbooth.org>
Date: Mon, 10 Dec 2018 12:27:09 -0500
To: Henry Story <henry.story@bblfish.net>
Cc: Andy Seaborne <andy@seaborne.org>, Semantic Web <semantic-web@w3.org>, Aiden Hogan <aidhog@gmail.com>
Message-ID: <90c1f79c-b841-0d04-52a0-afb7b91c2c00@dbooth.org>
On 12/10/18 6:29 AM, Andy Seaborne wrote:
> On 06/12/2018 10:53, Henry Story wrote:
> . . .
>> Why could not the RDF library implement bondes as a triple
>>
>>     type BNode = GraphID × LocalNodeId × Lean
> 
> I don't quite understand the idea here.  Lean changes as the graph is 
> updates.

To illustrate, if we have the following lean graph:

   [ a :Hit ; :by :hammer ; :agent :pat ] .    # Object1

then we might replace this blank node with a predictable Skolem URI 
based on the tightly connected properties of that blank node, and that 
would produce a particular URI.  But if we then we add more statements 
to produce this graph (having two blank nodes):

   [ a :Hit ; :by :hammer ; :agent :pat ] .     # Object1
   [ a :Hit ; :by :hammer ; :agent :pat ; :target :wall ] .  # Object2

The lean version of that last graph is the following (having only one 
blank node):

   [ a :Hit ; :by :hammer ; :agent :pat ; :target :wall ] .  # Object2

and it would produce a *different* Skolem URI based on the tightly 
connected properties of that blank node, because it has a different set 
of tightly connected properties.

I do not see this as a problem, because the whole point of "lean"ing the 
graph is that you get rid of some assertions, so it seems perfectly 
reasonable that a different subgraph would use a different Skolem URI.

In this example, "lean"ing allowed us to get rid of the Object1 subgraph 
(identified by one predictable Skolem URI) in favor of the Object2 
subgraph (identified by a different Skolem URI).  Also, if we knew a key 
for Object1 and Object1, and they had the same key, then the 
Skolemization algorithm could assign the same Skolem URI to both, and 
they would be automatically collapsed without having to "lean" the graph.

As a reminder:
https://lists.w3.org/Archives/Public/semantic-web/2018Dec/0041.html
[[
By "tightly connected" I
mean the subgraph that is connected only through consecutive blank
nodes.
]]

However, I am still waiting for confirmation from Aiden Hogan that this 
Skolemization approach will work as described.

David Booth
Received on Monday, 10 December 2018 17:27:32 UTC

This archive was generated by hypermail 2.4.0 : Thursday, 24 March 2022 20:42:03 UTC