Re: Proposed edits for ISSUE-107 - blank nodes (this time with some content)

Le 17/04/2013 18:56, Peter Patel-Schneider a écrit :
> This is a proposal to finish off the work done for ISSUE-107, revised
> definition of blank nodes, in the core WG documents.
> The WG has realized that blank nodes can be shared between RDF graphs under
> certain conditions.   The Semantics document reflects this understanding by
> no longer requiring that blank nodes are standardized apart when combining
> RDF graphs.  The Concepts document needs changes to reflect this
> understanding, and its technical embodiment in Semantics.
> There are a few clean-ups needed in Semantics:
> 1/ The first paragraph of Issue 1, in Section 3, can be removed, as there is
> no notion of blank node scoping.
> 2/ Issue 2, in Section 3, can also be removed.  The preceeding sentence
> should be changed to
>      Graphs share blank nodes only if they are derived from graphs
>      described by documents or other structures (such as the data
>      structures in an RDF store) that explicitly provide for the sharing
>      of blank nodes between different RDF graphs.  Simply downloading a
>      web document does not mean that the blank nodes in a resulting RDF
>      graph is the same as the blank nodes coming from other downloads of
>      the same document.
> 3/ In Section 4, under Blank Nodes, change the last sentence to
>      Blank nodes themselves differ from other nodes in not being assigned
>      a denotation by an interpretation, reflecting the intuition that
>      they have no 'global' meaning.
> 4/ In Section 4, under Intuitive Summary, change "in the scope" to "in the
> graph".
> The required changes to Concepts are as follows:
> 3.4 Blank Nodes
> Blank nodes are disjoint from IRIs and literals.  Otherwise, the set of
> possible blank nodes is arbitrary.  RDF makes no reference to any internal
> structure of blank nodes.

It must also be said that the set is infinite.

> Note:
> Blank node identifiers are local identifiers that are used in some concrete
> RDF syntaxes and RDF store implementations. Blank node identifiers are
> always locally scoped to the document or RDF store, and are not persistent
> or portable identifiers for blank nodes. Blank node identifiers are not part
> of the RDF abstract syntax, but are entirely dependent on the concrete
> syntax or implementation. The syntactic restrictions on blank node
> identifiers, if any, therefore also depend on the concrete RDF syntax or
> implementation.  Implementations that handle blank node identifiers in
> concrete syntaxes need to be careful not to create the same blank node from
> multiple occurences of the same blank node identifier except in situations
> where this is supported by the syntax.
> In the RDF 1.0 specification, it was assumed that different RDF graphs
> should not share blank nodes,

huh? no.

  so any "accidentally" shared blank nodes had
> to be specially handled when combining (merging) RDF graphs.

In both RDF 1.0 and RDF 1.1, any graphs that are treated 
programmatically (serialised graphs) may accidentally share bnode 
identifiers and therefore be specially handled when combined.

   In practice,
> RDF stores produce RDF graphs that do share blank nodes so their operations
> do not follow the specification.

huh?! again, no.

   Further, RDF datasets contain RDF graphs
> that can share blank nodes.  For these reasons, blank nodes are no longer
> treated specially when combining RDF graphs.

I don't understand this last sentence.

   It is up to implementations to
> ensure that they do not accidentally produce indistinguishable data
> structures for different blank nodes or otherwise make identifications
> between different blank nodes.

I'm not sure I understand this either.

> A Changes between RDF 2004 and RDF 1.1
> Earlier versions of RDF assumed that blank nodes should not be shared
> between RDF graphs

No, it never did.

> and so combining RDF graphs involved modifying any shared
> blank nodes.

No, only the merge operation required it. The 2004 specification even 
mention the use of union as an alternative operation (RDF Semantics 
Sec.1.5). There are possible operations.

> RDF graphs can now, under certain circumstances, share blank
> nodes, and this modification of blank nodes when combining RDF graphs is no
> longer required.

This is pretty much the same thing as in RDF 1.0. Sec.1.5 of RDF 
Semantics says that under certain circumstances, union can be used. 
Under other circumstances, merge-2004 is used.


> On Wed, Apr 17, 2013 at 9:55 AM, Peter Patel-Schneider
> <> wrote:

Antoine Zimmermann
ISCOD / LSTI - Institut Henri Fayol
École Nationale Supérieure des Mines de Saint-Étienne
158 cours Fauriel
42023 Saint-Étienne Cedex 2
Tél:+33(0)4 77 42 66 03
Fax:+33(0)4 77 42 66 66

Received on Wednesday, 24 April 2013 14:25:09 UTC