Re: shared bnodes

On 24 Aug 2012, at 11:19, Antoine Zimmermann wrote:
> So, I'm saying that you can just forget about trying to identify equal bnodes across graph, and simply rely on a local identifier in one graph, a local identifier in another graph, and tell with a dedicated mechanism that these two locally identified bnodes are assumed to be the same.

I think I'm +1 to this sentiment.

So far, the only argument in favour of allowing shared bnodes that I can recall was to manage inferred triples in a separate graph.

This is a valid and compelling use case. But an equally valid use case would be to manage all the inferred triples in another *dataset*. So, if I can infer some triples from graph g1 in dataset DS, then I can just store these triples in a graph named g1 in dataset DS_inference.

Can datasets share bnodes?

The whole bnode sharing thing brings a lot of complexity with it. In a complete graph store management language, I need operations for "copy graph with bnodes intact", "copy graph with fresh bnodes", and so on. Most users won't understand the difference and it will just add to the general sense of bewilderment that surrounds bnodes.

I say let's simplify things for once and disallow bnode sharing between graphs. The use case above can still be addressed via skolem IRIs.

Best,
Richard

Received on Friday, 24 August 2012 10:40:40 UTC