Friendly competition of RDFa 1.1 implementations…

The specification is in RDFa 1.1 is in Candidate Recommendation. This means that implementations are gathered around an extensive test suite (close to 300 tests) to produce a suitable implementation report. Well… three implementations are already in a neck-and-neck race to gain the favor of users!

Gregg Kellogg (who is also the wizard behind the test suite, b.t.w.) has a Ruby implementation. It is part of a more general Ruby RDF environment (RDF.rb), and the site also offers an on-line distiller service. I.e., users can provide a URI and the RDF content is returned.

I have a similar implementation, called pyRdfa, except that it is for Python, my programming language of preference. It can be used with RDFLib, one of the most widely used RDF environments for Python (in fact, a previous version has been added to the RDFLib distribution and I hope the RDFa 1.1 version will also be added, too, eventually). Just as Gregg, I have also set up a similar distiller service.

And… Niklas Lindström has just announced that he had finalized his implementation in Clojure, called clj-rdfa, and has also set up his own distiller service. The interesting aspect of Niklas’ implementation is that it has a Jena adapter (used for the so-called “vocabulary expansion” feature  of RDFa 1.1) meaning that his implementation can also be used from within Jena (I must admit I do not know too much about Clojure, so I do not know the details).

All three implementations are in public domain, and all three pass the complete RDFa test suite. And the fourth implementation may not be far away: as far as I know, Manu Sporny is busy with his C implementation, and some others may come forward. So the race is on!

Enhanced by Zemanta

About Ivan Herman

Ivan Herman is the leader of the Digital Publishing Activity at W3C. For more details, see

Comments are closed.