Re: Is there a systematic method for naming bnodes?

Bernard Vatant wrote:
> Hello Nathan, Pat
> 2010/10/4 Nathan <>
>> 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 

   _: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 ] .


   _: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.



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