Re: Why blank nodes?

On 2012-09-07, at 12:47, Eric Prud'hommeaux wrote:

> * Steve Harris <> [2012-09-07 12:08+0100]
>> On 2012-09-07, at 11:41, Antoine Zimmermann wrote:
>>> Le 07/09/2012 12:35, Steve Harris a écrit :
>>>> Taking a step back, and thinking about what we (Experian) actually use bNodes for, to inform our position on the various scope questions.
>>>> Basically, it's just a replacement for auto_increment columns in SQL.
>>>> There are two motivations for this
>>>> 1) it saves the data generating process from minting a globally unique identifier for it
>>>> 2) it's more efficient in the store, as there's no need to store a text symbol for it
>>>> This has been helped by Skolem URIs, as now we have an easy way to refer to them between SPARQL queries.
>>>> Any other features of bNodes are just a distraction or inconvenience really.
>>>> I'm sure other people have different reasons for using them, anyone care to share?
>>> Bnodes are an absolute requirement for OWL to be serialised in RDF. Without bnodes, it would be impossible to define an RDF-based semantics for OWL which is (mostly) compatible with the direct semantics.
>> What feature of bNodes makes the true though - that's what I was trying to get to.
>>> Bnodes are very often used to express n-ary relations.
>> Yup, for reasons 1) and 2) above, IMHO.
> and 3) it's better not to utter an identifier which you can't or don't intend to honor in the future.
> Sometimes that emerges from 1) or 2), but some data sources offer data which simply can't be repeatably discriminated, repeated rows in a database for example.

Good point.

We don't actually lean on that one, but I can imagine situations where you'd want to.

- Steve

Steve Harris, CTO
Garlik, a part of Experian
+44 7854 417 874
Registered in England and Wales 653331 VAT # 887 1335 93
80 Victoria Street, London, SW1E 5JL

Received on Friday, 7 September 2012 12:25:43 UTC