- From: Reto Bachmann-Gmür <reto.bachmann@trialox.org>
- Date: Mon, 04 Oct 2010 17:29:16 +0200
- To: nathan@webr3.org
- CC: Bernard Vatant <bernard.vatant@mondeca.com>, Pat Hayes <phayes@ihmc.us>, Semantic Web <semantic-web@w3.org>
Nathan said the following on 10/04/2010 04:05 PM: > 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? Yes, they are. the scope oof the bnode is the graph, the above graph is true for exactly those worlds where there is a person labeled Nathan known by :Sue and :Bob, > > 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. yes the latter graph is more general, it is true even in those world where :Sue and :Bob know a different Person labeled Nathan. > > 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 ] . know, you lost information. > > 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 . the two last varaints are serializations of the same graph (which is different than the original). Cheers, reto > > If the answer is yes, then there is no sameness I guess. > > Best, > > Nathan >
Received on Monday, 4 October 2010 15:30:16 UTC