- From: Ivan Herman <ivan@w3.org>
- Date: Mon, 17 Dec 2007 13:58:11 +0100
- To: Mark Birbeck <mark.birbeck@x-port.net>
- Cc: W3C RDFa task force <public-rdf-in-xhtml-tf@w3.org>
- Message-ID: <47667263.1030104@w3.org>
Mark, I must say I do not fully agree with you. You said in one of your mail that you are usually accused of being pedantic:-), well, it is my turn:-)... The fundamental issue is: a bnode is _not_ a special URI, if one looks at the RDF semantics. Yes, usually it is _used_ as a unique URI, but for semantics people it is certainly different (Bnodes are existential variables). Believe me, you would make lots of people very happy if you were right:-) That also means RDFa, in my view, _does_ impose an extra semantics on top of CURIE. If, seeing the following code: <span about="[_:a]" rel="a:b" resource="c:d"/> an RDFa processor generated <SOMEUNIQUEURI> a:b c:d. instead of [] a:b c:d. this would be, strictly speaking, an error, because RDFa defines _:a as a _blank node_. As long as RDFa is used for plain RDF, it does not really matter in practice, but if it is used to encode statements that are related to some complex OWL-DL ontology, it begins to matter in theory (again, in 99% of the practical cases it does not...). That is why I also said: we already define an extra semantics on top of CURIE-s, ie, adding an extra semantics for "_:" is not a big step. Having said that: my real goal, obviously, is to solve the @instanceof issue which is still open for me:-( Ivan P.S. Regardless of the "_:" issue: this drew my attention on the fact that the CURIE syntax description in the RDFa syntax carefully avoids the usage of the term 'BNode'. I think it should not. This seems to be a general CURIE term that has a very specific 'mapping' if used in a specific context like RDFa... Mark Birbeck wrote: > Hi Ivan, > >> Well... We already add some extra semantics (including in the pure CURIE >> syntax) to "_:a"; we talk about globally unique value, which is >> something special (let alone in RDFa term). > > The whole point of my post was to explain that we actually *don't* do > anything special in RDFa with respect for CURIEs. :) Thanks for > bringing this out though, because I realise now that the CURIE draft > is not up-to-date in this regard. > > As we know, CURIEs deals in mappings from one string to another. One > way of creating a mapping is by using @xmlns, but there are other > ways, and in fact, the CURIE spec is agnostic about how you get your > mappings. > > All the CURIE spec does is to say that if you have a mapping for > "foaf", then the following CURIE: > > foaf:name > > would become a URI that is the concatenation of the value in the map > for "foaf", and the URI "name". > > Now, bnodes are actually nothing special in the world of URIs. All > they are is identifiers that are internally consistent, but not > available globally. So if a CURIE processor were to initialise it's > mapping tables with an entry for "_" which maps to > "bnode:url-of-the-document#", or any other algorithm you can think of > to get a unique identifier, then all is well. Then the CURIE: > > _:a > > will map to: > > bnode:url-of-the-document#a > > This means, by the way, that CURIEs will 'just work' in other > languages such as SPARQL. > > (I'm aware that the set of bnodes is supposed to be disjoint with the > set of URIs, but since a URI can be just about anything, this is nigh > on impossible to achieve in practice. So the next best thing is to > devise a class of URIs that are so unlikely to ever occur in real life > as to be for all intents and purpose, disjoint from the set of URIs.) > > >> So I do not think why we >> would not agree to add some special semantics to "_:" (at least in >> RFDa). > > Because, firstly, the idea of unique identifiers in CURIEs is not > unique to RDFa, and secondly, there are no special semantics for > CURIEs in RDFa. > > >> It does sound like a good idea, it fills a 'hole' in usage... > > I agree with you there. It's just that, as I tried to say before, the > syntax you are proposing already means something and is consistent. > It's not 'available', I'm afraid. > > >> Regardless of the @instanceof: at the moment, if we use "_:a" to >> generate a BNode, that portion of the code, as we all know, is not >> necessarily copy-pastable. > > Yes, I agree. It's exactly the same problem with @id in XML. But we > may not be able to fix this, in this version of RDFa, although I would > hope that nothing we do now will prevent us from fixing it in the > future. > > >> With the usage of "_:' it is. > > With the usage of some appropriate syntax, it is. ;) Not this one, though. > > Regards, > > Mark > -- Ivan Herman, W3C Semantic Web Activity Lead Home: http://www.w3.org/People/Ivan/ PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Monday, 17 December 2007 12:58:17 UTC