W3C home > Mailing lists > Public > public-rdf-comments@w3.org > July 2012

Re: [Editorial] "blank nodes do not denote specific resources"

From: Pat Hayes <phayes@ihmc.us>
Date: Thu, 19 Jul 2012 11:32:19 -0500
Cc: nathan@webr3.org, Eric Prud'hommeaux <eric@w3.org>, public-rdf-comments <public-rdf-comments@w3.org>
Message-Id: <4A6B438F-A32C-440B-BC3B-68AF70135D0F@ihmc.us>
To: David Booth <david@dbooth.org>

On Jul 19, 2012, at 9:05 AM, David Booth wrote:

> On Thu, 2012-07-19 at 14:48 +0100, Nathan wrote:
>> David Booth wrote:
>>> On Thu, 2012-07-19 at 07:13 -0400, Eric Prud'hommeaux wrote:
>>>> * Nathan <nathan@webr3.org> [2012-07-18 22:24+0100]
>>>>> David Booth wrote:
>>>>>> On Wed, 2012-07-18 at 14:02 -0400, David Booth wrote:
>>>>>>> http://www.w3.org/TR/rdf11-concepts/#resources-and-statements
>>>>>>> says: "blank nodes do not denote specific resources".  I don't
>>>>>>> think
>>>>>>> that is quite correct, since a blank node *does* denote a specific
>>>>>>> resource.  It just doesn't give that resource a name that is meaningful
>>>>>>> outside the graph.  I suggest rewording this as "blank nodes do not have
>>>>>>> stable names that can be referenced outside of the graph".
>>>>>> Andy explained off list that this was worded this way to avoid implying
>>>>>> that a bnode implies a unique, identifiable individual, since a bnode is
>>>>>> like an existential variable.  My concern was that it should be clear
>>>>>> that when someone writes (in the same graph):
>>>>>> _:b1 a :Dog .
>>>>>> _:b1 :name "Rex" .
>>>>>> both statements (when applied) refer to the *same* (unspecified) dog,
>>>>>> which has (for the purposes of this graph) been called _:b1, though
>>>>>> there may be more than one dog that satisfies these statements.  So I
>>>>>> guess the wording here is tricky, and I'm unsure of how to make it
>>>>>> clearer.
>>>>>> How about "blank nodes do not indicate unique, identifiable resources"?
>>>>>> Would that be better?  I'm okay with leaving it as is if you think not.
>>>>> "blank nodes indicate the existence of a thing, without providing a
>>>>> name for that thing."
>>>> +1
>>>> doesn't get involved in assumptions of uniqueness which exist at the
>>>> graph-level (e.g. SPARQL) but not in RDF-Entailment or OWL.
>>> The only problem is that that phrasing says that the blank node does not
>>> have a name, when _:b1 obviously *is* a name, it just isn't a *stable*
>>> name.  Maybe say ". . . without providing a *stable* name for that
>>> thing"?
>> _:b1 isn't a name, it's an artefact of the serialization, just as [] 
>> isn't a name, and the <>'s aren't part of the IRI.
> But in plain English _:b1 obviously *is* a name (even if it only exists
> in the serialization).

Why? It is a character string, but that does not make it a name. The English words "someone", "who", "which", etc.. are also not names, for much the same reason.

>  It is only not a name in the RDF abstract model,
> because it doesn't exist there.  

But we are talking about RDF, right? The blank node *in RDF* is not a name and does not have any textual label. That string _:b1 is not part of RDF. (By the way, even if it were a name, it would not be the name *of the bnode*, any more than an IRI is a name of itself.) 

> So if we claim that it's not a name,
> then we have to explain that we're using the word "name" in a special
> way, and in general I think it's better to stick with plain English when
> possible. 

Well, RDF is not colloquial English. One does need to accept that RDF is a formalism that does come with a certain amount of formality surrounding its terminology and use. Not a lot, by any means: compared, say, to JSON or HTML, RDF is almost childishly simple, but it is not completely without structure. In RDF, a "name" is either a URI reference (soon to be an IRI) or a literal. Blank nodes are not names and do not have any associated textual identifier. This is all stated very clearly and simply in the RDF specs. Get used to it.


> -- 
> David Booth, Ph.D.
> http://dbooth.org/
> Opinions expressed herein are those of the author and do not necessarily
> reflect those of his employer.

IHMC                                     (850)434 8903 or (650)494 3973   
40 South Alcaniz St.           (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
Received on Thursday, 19 July 2012 16:32:52 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:59:30 UTC