- From: Peter Patel-Schneider <pfpschneider@gmail.com>
- Date: Wed, 17 Apr 2013 09:56:12 -0700
- To: RDF WG <public-rdf-wg@w3.org>
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. 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, so any "accidentally" shared blank nodes had to be specially handled when combining (merging) RDF graphs. In practice, RDF stores produce RDF graphs that do share blank nodes so their operations do not follow the specification. 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. 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. A Changes between RDF 2004 and RDF 1.1 Earlier versions of RDF assumed that blank nodes should not be shared between RDF graphs and so combining RDF graphs involved modifying any shared blank nodes. RDF graphs can now, under certain circumstances, share blank nodes, and this modification of blank nodes when combining RDF graphs is no longer required. On Wed, Apr 17, 2013 at 9:55 AM, Peter Patel-Schneider <pfpschneider@gmail.com> wrote: >
Received on Wednesday, 17 April 2013 16:56:39 UTC