What version of HTML for RDFa?

RDFa started out as a project within the XHTML2 community. Oftentimes, people think that means it can’t work at all without XHTML2. Importantly, because RDFa is effectively only extra attributes in the body, you can start using RDFa right now in any version of HTML. You won’t “validate”, but you’ll still be “compliant” with the HTML specification, which says that extra attributes should just be ignored by the browser, and that’s exactly what happens.

That said, we want RDFa to be clean from a web architecture standpoint. In the words of Dan Connolly, that means that you should be able to “follow your nose” from a document that contains RDFa to a specification of RDFa. That’s why we’re building RDFa as an XHTML 1.1 module, so you’ll be able to specify that your page contains RDFa with a module declaration, and your document will validate. Importantly, the latest HTML Working Group charter of the W3C, now has an “encouragement for extensibility”:

The HTML WG is encouraged to provide a mechanism to permit
independently developed vocabularies such as
Internationalization Tag Set (ITS), Ruby, and RDFa to be mixed
into HTML documents. Whether this occurs through the
extensibility mechanism of XML, whether it is also allowed in
the classic HTML serialization, and whether it uses the DTD and
Schema modularization techniques, is for the HTML WG to
determine.

This means that, if the HTML WG does the right thing and follows this encouragement, we’ll also be able to make RDFa validate in HTML5. RDFa is, after all, just about agreeing on a few tweaks of syntax to enable interoperable structured data on the web. The really exciting stuff will be the applications, of course.



Leave a Reply

You must be logged in to post a comment.