« SCAI 2006 | Main | SCAI 2006 slides »
2006-10-25
Whaaat!?
That was my reaction when I read a recent blog entry by Richard Cyganiak where he argues - essentially - that namespaces are bad (my interpretation). He claims that using namespace prefixes in SPARQL queries is superfluous and just makes things harder. He says:
The query processor should match the QNames regardless of namespace. Thus,
:name
would match bothfoaf:name
anddoap:name
.
Ouch! Please tell me I am missing something. We decided to use URIs to name nodes in an RDF graph for a reason, so that one wouldn't think that foaf:name
and doap:name
are the same, or interchangeable, or in any way related. They are, of course, both sub-properties of rdfs:label
, but you have a reasoner to tell you that. Don't you?
URIs are opaque, meaning that even if two URIs end in "name", you should think of those URIs as mere identifiers with no semantics associated to their names. Now, it would be a different thing if you queried for things whose human-readable names (i.e., values of rdfs:label
or some sub-property thereof) would be the same. Maybe. I wouldn't, but someone else might.
Please, please tell me that I am getting old and I missed something crucial...
Posted by ora at 15:37
Comments
Well, I can't tell from here whether you are getting old or not, but I had just read that same piece just before reading your reaction (mmmm... PlanetRDF feed).
I am in complete agreement with you. His proposal strikes me as expecting SQL to match similar statements across all possible tables. Unique IDs? Why shouldn't we treat customer.id and vendor.id as essentially the same? Oy.
Posted by: Randy Ray at October 25, 2006 04:24 PM
No, you haven't missed anything.
I assume the proposal is just the fevered ramblings of a man sick of writing
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
every time he wanted to query on names.
My answer: environment support.
Posted by: Rich at October 25, 2006 06:53 PM
The query processor should match the names with special prefix by choosing the name known from environment (OWL, RDFS etc.), errors should be signalled if there is no appropriate name in OWL or there are too many of them. If app-developers need "syntax sugar", the proper fix is exactly "syntax sugar", not ill-patched semantics.
That's how I will resolve the issue in next release of OpenLink Virtuoso.
Posted by: Iv An at October 26, 2006 01:41 AM