W3C home > Mailing lists > Public > public-rdf-comments@w3.org > June 2013

Re: bNodes as graph identifiers

From: Steve Harris <steve.harris@garlik.com>
Date: Mon, 3 Jun 2013 11:45:26 +0100
Cc: <public-rdf-comments@w3.org>
Message-Id: <F37A5274-CD4A-45A4-81E0-53CB04CE185C@garlik.com>
To: "Markus Lanthaler" <markus.lanthaler@gmx.net>
On 2013-06-03, at 11:28, "Markus Lanthaler" <markus.lanthaler@gmx.net> wrote:

> On Monday, June 03, 2013 11:53 AM, Steve Harris wrote:
>> On 2013-06-01, at 03:46, Pat Hayes wrote:
>>>> * RDF is already too complex for people coming into it to learn
>> easily. Every
>>>> time we add a new feature to the language we increase the barrier to
>> entry.
>>> 
>>> First, this does not change RDF. Second, allowing bnodes as graph
>> labels in datasets is not a "new feature", it is simply removing a
>> restriction. Arguably, it simplifies dataset syntax.
>> 
>> If RDF tutorials, or specs don't mention this at all then we have no
>> need of this discussion.
>> 
>> If they do, then it changes RDF.
>> 
>> Saying it doesn't change RDF because the change in the logic is
>> small/non-existant is missing the point entirely.
> 
> I think was Pat was trying to say is that datasets haven't been standardized
> till now. We are doing this in RDF 1.1. Thus it doesn't change RDF at all.
> Datasets simply didn't exist before RDF 1.1

Yes they did, SPARQL defined them, and they were widely used in common practice for years before that.

>>> Right. Expecting to be able to access bnode IDs from outside their
>>> scope is something we should strongly discourage. Even if it works,
>>> it is Bad Practice.
>> 
>> Right, but that *severely* limits the utility of this feature.
> 
> Why?

Well, you have no persistent identifier, and no easy (legitimate) way to refer to the graph in your code, except by example. That can be difficult to deal with in the real world.

Suppose I have:

_:a {
   :s1 :p "foo" .
   :s1 :q "bar" .
}

_:b {
   :s1 :p "foo" .
   :s1 :q "baz" .
}

The only way I can refer to the graph labelled as _:b in my system is by noting that it has :s1 :p "foo", :s1 :q "baz" - it has no identity beyond that.

I'm sure there are cases where that's what users want, but I suspect they're not common.

>> I'm willing to bet that if you presented this view to the JSON-LD
>> people (who requested anonymous graphs in the first place) they
>> wouldn't be keen on this as a solution to their representational issue.
> 
> That's definitely not the case. In most cases I would expect that there
> isn't even a bnode identifier associated with the graph.

I don't think I understand that statement.

- Steve

-- 
Steve Harris
Experian
+44 20 3042 4132
Registered in England and Wales 653331 VAT # 887 1335 93
80 Victoria Street, London, SW1E 5JL
Received on Monday, 3 June 2013 10:45:54 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:29:57 UTC