W3C home > Mailing lists > Public > semantic-web@w3.org > October 2010

Re: Is there a systematic method for naming bnodes?

From: Nathan <nathan@webr3.org>
Date: Mon, 04 Oct 2010 15:05:22 +0100
Message-ID: <4CA9DF22.9090900@webr3.org>
To: Bernard Vatant <bernard.vatant@mondeca.com>
CC: Pat Hayes <phayes@ihmc.us>, Semantic Web <semantic-web@w3.org>
Bernard Vatant wrote:
> Hello Nathan, Pat
> 
> 2010/10/4 Nathan <nathan@webr3.org>
> 
>> Pat Hayes wrote:
>>
>>> Well, the very idea of a *blank* node is one that has no name, so this
>>> idea seems to be rather against the spirit of the bnode, so to speak. Of
>>> course, concrete syntaxes do use bnode identifiers, but these are really
>>> just an artifact of the need to represent a graph in a linear character
>>> sequence. These bnode identifiers are purely local to the graph.
>>>
>> Hmm, does this mean then that often people are using blank nodes as if they
>> have a name, and should this be avoided?
>>
>> for example:
>>
>>  _:x1 rdf:type ex:Person ; rdfs:label "Nathan"@en .
>>  :Bob :knows _:x1 .
>>  :Sue :knows _:x1 .
>>
>> as far as I know many RDF processors (and indeed common understanding)
>> would treat this as if to say that: "The person that Bob knows called Nathan
>> is the same person that Sue knows called Nathan"
>>
> 
> Indeed it's the way I've ever understood it myself. And actually it's the
> kind of use I often present in introducing bnodes, with even less
> description of the object, not even a label.
> Just to say that :Bob and :Sue have some common relation, about whom I don't
> know anything whatsoever otherwise.
> 
> :Bob foaf:knows _:x1 .
> :Sue foaf:knows _:x1 .
> 
> Can I (question for Pat, here) declare this in abstract syntax, without
> bnode identifiers? Or should I go through some convoluted declaration of
> non-empty class?
> 
> 
>> When it appears that correct interpretation would be "Bob knows a person
>> call Nathan and Sue knows a person called Nathan"
>>
> 
> Well, my (maybe naive ) assumption was that using the same bnode identifier
> was making for the same-ness of the resource.

That's my worry, is it asserting the sameness or not? if i swap out 
bnodes for "something" then

  Bob knows something that is a Person with a label of "Nathan"
  Sue knows something that is a Person with a label of "Nathan"

but I don't see any sameness.

Perhaps I could reverse the question to ask, if I parsed the following 
graph:

   _:x1 rdf:type ex:Person ; rdfs:label "Nathan"@en .
   :Bob :knows _:x1 .
   :Sue :knows _:x1 .

Could I then serialize it as:

   :Bob :knows [ rdf:type ex:Person ; rdfs:label "Nathan"@en ] .
   :Sue :knows [ rdf:type ex:Person ; rdfs:label "Nathan"@en ] .

or

   _:g1 rdf:type ex:Person ; rdfs:label "Nathan"@en .
   :Bob :knows _:g1 .
   _:g6 rdf:type ex:Person ; rdfs:label "Nathan"@en .
   :Sue :knows _:g6 .


If the answer is yes, then there is no sameness I guess.

Best,

Nathan
Received on Monday, 4 October 2010 14:12:49 UTC

This archive was generated by hypermail 2.4.0 : Thursday, 24 March 2022 20:41:23 UTC