Re: RDF-ISSUE-17 (graph merge): How are RDF datasets to be merged? [RDF Graphs]

On 29/03/11 15:39, Souripriya Das wrote:
> Axel,
>
> Given that loading in batches into the same graph is common in practice,
> should we consider adding an option, REUSE BNODE (or something similar),
> to the relevant SPARQL update statements  (e.g., LOAD, etc.) to allow
> specifying "reuse bnode" intention without having to do it artificially?
>
> I think such an option will be very simple to add. The default could be
> the "NOREUSE BNODE" option.
>
> Thanks,
> - Souri.

That isn't a SPARQL Update issue so much as a RDF syntax issue.

If you GET-parse an RDF graph document, then do the same again then the 
bNodes are different.  The app may wish to make them the same - in which 
case it can smush them, including telling the local system to do it. 
But with no action, they are different bnodes, whether they have the 
same label or not.

A label is scoped to the represenation, i.e. single GET action.

It's the safe way because otherwise the graph may change, be serialized 
with the same labels but different bNodes (a label is not a global 
identity for a bnode).

Only if bNodes had a globally unique label (like a UUID) could there be 
a change and even then to preserve bakwards compatibility would require 
some syntactic adornment.

Some bNodes don't even have labels e.g. [] and (1) in Turtle.

Serializers currently use short names, like _:b0 because the label is 
scoped to the document.

	Andy

Received on Tuesday, 29 March 2011 15:11:57 UTC