- From: Antoine Zimmermann <antoine.zimmermann@emse.fr>
- Date: Sat, 17 Nov 2012 11:27:43 +0100
- To: Richard Cyganiak <richard@cyganiak.de>
- CC: RDF Working Group WG <public-rdf-wg@w3.org>
I don't find this really useful, and even confusing. Like Andy, I see this as an implementation approach. (id,scope) is just a complicated way of defining a globally unique identifier for a bnode. What I would say instead is the following: """ Bnodes are drawn from an infinite set. Each bnode has a label being a UNICODE string, different from all other bnode labels. So when one draws a bnode, one can tell which bnode it is. Serialisation syntaxes that rely on bnode identifiers are in fact identifying the exact bnode they use. """ And everything stays the same. No other changes are required. It especially clarifies what this sentence means: """ Given two blank nodes, it is possible to determine whether or not they are the same. """ In RDF 2004, this sentence was never really implemented anywhere. If you got a bunch of triples, then another bunch of triples, you could not say which bnode of the first bunch were the same or different as the bnodes of the second bunch. There are cases when you want to split a graph into subgraphs, in which case you must know what bnodes actually appear in each subgraph. To get back the full graph from the subgraphs, it is required that you use set union, not merge. This requires that the bnodes are all identified in the same way across the subgraphs. Notice that a bnode label does not denote anything in terms of the formal semantics, so it has nothing to do with an IRI, and nothing to do with a skolem IRI. The label is only there to tell which bnode is used. It's an existential variable name and it can be replaced by any other variable name without changing the meaning of a graph. Fresh bnode may be defined formally as follows: """ Given a set of RDF graphs Sg, the triples of which containing a set Sb of bnodes, a fresh bnode with respect to Sg is a bnode b not in Sb. """ Of course, when we say "new", it has to be new wrt something predefined, thus the notion of "fresh bnode with respect to a set of RDF graphs". --AZ Le 14/11/2012 12:02, Richard Cyganiak a écrit : > Following recent discussions, I've written up a proposal to change > the design of blank nodes in RDF by explicitly introducing scoped > blank node identifiers into the abstract syntax. > > http://www.w3.org/2011/rdf-wg/wiki/User:Rcygania2/B-Scopes > > Requirements: > > • Consistency with all resolutions the WG has made so far • No > changes to other specs beyond Concepts and Semantics required • No > changes to conforming implementations required > > All further details are in the wiki. > > Comments welcome. > > Best, Richard > -- Antoine Zimmermann ISCOD / LSTI - Institut Henri Fayol École Nationale Supérieure des Mines de Saint-Étienne 158 cours Fauriel 42023 Saint-Étienne Cedex 2 France Tél:+33(0)4 77 42 66 03 Fax:+33(0)4 77 42 66 66 http://zimmer.aprilfoolsreview.com/
Received on Saturday, 17 November 2012 10:28:14 UTC