W3C home > Mailing lists > Public > public-rdf-in-xhtml-tf@w3.org > November 2009

Re: Default and empty CURIE prefixes in a non-XHTML host language

From: Toby Inkster <tai@g5n.co.uk>
Date: Thu, 26 Nov 2009 11:25:58 +0000
To: Christoph LANGE <ch.lange@jacobs-university.de>
Cc: RDFa Developers <public-rdf-in-xhtml-tf@w3.org>, Michael Kohlhase <m.kohlhase@jacobs-university.de>
Message-ID: <1259234758.708.112.camel@ophelia2.g5n.co.uk>
On Thu, 2009-11-26 at 01:17 +0100, Christoph LANGE wrote:
> I suppose both is possible, because the RDFa recommendation says that
> for CURIE processing mappings for (1) and (2) have to be provided [by
> way of the specification of the host language].  I think I will do
> that, but not particularly endorse its usage, as general-purpose RDFa
> processors would not understand it.

Hmmm... this is a good point. I've tried to make my Perl RDFa parser as
generic as possible, and allow XHTML-specific features (like treating
<head> and <body> specially; understanding <base href>; etc) to be
switched off. But I don't currently provide a way to change the default
CURIE prefix from <http://www.w3.org/1999/xhtml/vocab#>.

Nor do I provide a way to define additional keywords. If I were to add
such a feature, what do you think would be more useful - allow
additional keywords in @rel/@rev; or allow them to be used in any

> Now I'm just wondering why this is done in such a strange way for RDFa
> in XHTML.  Why are the bare words that _are_ allowed in @rel and @rev
> attributes not specified as prefixless CURIEs (mapping to the
> http://www.w3.org/1999/xhtml/vocab# namespace) but as special reserved
> words? Is this for historical reasons?  

Indeed - it's for hysterical raisins. @rel and @rev are not new
attributes defined by RDFa, but have existed since HTML 2.0 was
published 14 years ago. These keywords have been "grandfathered in" to
RDFa and require slightly different handling to real CURIEs - for
instance, they should be handled case-insensitively, as previous
versions of HTML and XHTML have defined @rel and @rev as

> And why is there, in addition, a default
> namespace http://www.w3.org/1999/xhtml/vocab# for use with the empty
> prefix? That makes @rel="next" redundantly equal to @rel=":next".

It does seem a little redundant, yes, but there doesn't seem to be a
better vocabulary to point the empty prefix at.

> There is additionally a separate CURIE spec at
> http://www.w3.org/TR/curie/.
> Which one is more reliable, RDFa or CURIE? 

The CURIE spec is a spin-off of the RDFa spec, intended to allow CURIEs
to be easily used by other specifications, like the XHTML role
attribute. The XHTML+RDFa recommendation does not normativly reference
it, so when there are differences between them, the behaviour described
by the XHTML+RDFa recommendation is what RDFa processors should follow.

With the imminent closure of the XHTML2 working group it seems unlikely
that the CURIE spec will ever become a W3C Recommendation, unless it's
taken over by another working group.

Toby A Inkster
Received on Thursday, 26 November 2009 11:26:48 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:02:05 UTC