« SCAI 2006 | Main | SCAI 2006 slides »



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 both foaf:name and doap: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


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