Re: RDFa and Web Directions North 2009

Hi Henri,

> Why was RDFa specified to use xmlns:foo when it was obvious that people
> would want to deploy it as text/html and you should have known that HTML
> parsers handled xmlns:foo differently from XML parsers?

Ah...now that is a fair question. :)

I am no great fan of XML namespaces either. In my view they were
created for a world of interlocking/interchangable documents that
simply never happened. I think at the level of the infoset that
namespaces are useful, but at the level of user mark-up they are not.
It's a bit like needing 'jump by an offset of 23 bytes if not zero' at
the level of assembly language and machine code, with such a construct
being irrelevant in a high-level programming language.

However, given that many W3C standards rely on XML namespaces, we felt
that we would face problems if we tried to progress RDFa using a
prefix/mapping mechanism that did *not* use XML namespaces.

So we took a pragmatic decision; we realised that at some point we
would use a simple attribute to specify token mappings, but for the
first pass through of RDFa, we thought we should provide a less
'controversial' mapping mechanism.

We did however, make some important steps away from XML namespaces,
though. Of course, we didn't get a smooth ride, but we started by
making the move away from QNames. We devised CURIEs, which are strings
with a simple substitution mechanism, and we said that XML namespaces
are simply *one* possible source of tokens for doing that
substitution.

By saying that we are not using XML namespaces, but that @xmlns is one
way to provide prefix mappings, we left the door wide open for other
substitution mechanisms, and as Ivan said, work is underway to provide
one or more alternative mechanisms to @xmlns.

Mappings could be provided inline, using a new attribute, and in
external files -- something that @xmlns is not capable of.

At the moment the working title for the 'new attribute' mechanism is
@prefix. Myself, I prefer @token for reasons that I'll be explaining
in a forthcoming post, but the name is neither here nor there; it
simply provides a way to create 'tokens' that can be used in strings
that look like this: "dc:title".

We strongly believe that once this mechanism is available, people will
not bother using @xmlns. Although it took time, and had to be done in
a couple of steps, we will have then completed the transition away
from XML namespaces.

Regards,

Mark

-- 
Mark Birbeck, webBackplane

mark.birbeck@webBackplane.com

http://webBackplane.com/mark-birbeck

webBackplane is a trading name of Backplane Ltd. (company number
05972288, registered office: 2nd Floor, 69/85 Tabernacle Street,
London, EC2A 4RR)

Received on Monday, 16 February 2009 11:51:22 UTC