On 27/01/15 17:11, Stian Soiland-Reyes wrote:
I agree that "local scope" should be clarified

"local scope" is a piece of terminology used only for RDF syntax. Once away from syntax, there is no "scope" to a blank node.

It is described in:
http://www.w3.org/TR/rdf11-concepts/#section-blank-nodes

The scope is the file for the purposes of reading that file once.

A bnode "_:a" is the same bNode everywhere in that file at the time it is read (i.e. parsed).

If the file is read twice, "_:a" generates a different blank nodes.

The only things you can do with blank nodes are:

* Create a new one ("a fresh one"), different from every other blank node.

* See if it is the same as another (java's .equals) because all RDF terms are distinguishable [1].

* Put them in triples and hence into graphs.

That has the implications that they can be put into several datastructures.

The description in the javadoc:
"""
They are always locally scoped to the file or RDF store
"""
is not right.  They are not scoped to the RDF store.

The nearest concept is that one store must have created it in the first place but once created, the blank node is just a thing and a rather simple, boring thing at that.

This analogy might help (or not):

There is a table with 4 metal spheres on it in a line across it. Each sphere is exactly kind of material, the same mass, the same colour and the same shininess. You can ask "is that sphere the same as that other one?" by pointing to two of them. If you put them in a bag, shake the bag and take one out, you can't tell whether this chosen one is the same as the one that was on the right-hand end of the line.

        Andy

[1] http://www.w3.org/TR/rdf11-concepts/#section-rdf-graph

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to