Image via Wikipedia
There has been a flurry of activities around RDFa 1.1 in the
past few months. Although a number of blogs and news items have
been published on the changes, all those have become “officialized”
only the past few days with the
publication of the latest drafts , as well as with the
publication of RDFa 1.1 Lite. It may be worth looking back at
the past few months to have a clearer idea on what happened. I make
references to a number of other blogs that were published in the
past few months; the interested readers should consult those for
details.
The latest official drafts for RDFa 1.1 were published in Spring
2011. However, lot has happened since. First of all, the
RDFWA
Working Group , working on this specification, has received a
significant amount of comments. Some of those were rooted in
implementations and the difficulties encountered therein; some came
from potential authors who asked for further simplifications. Also,
the announcement of
schema.org had an important effect:
indeed, this initiative drew attention on the importance of
structured data in Web pages, which also raised further questions
on the usability of RDFa for that usage pattern This came to the
fore even more forcefully at the
workshop organized by the stakeholders of schema.org in Mountain
View. A new
task force on the
relationships of RDFa and microdatahas been set up at W3C;
beyond looking at the relationship of these two syntaxes, that task
force also raised a number of issues on RDFa 1.1. These issues have
been, by and large, accepted and handled by the Working Group (and
reflected in the new drafts).
What does this mean for the new drafts? The bottom line: there
have been some fundamental changes in RDFa 1.1. For example,
profiles, introduced in earlier releases of RDFa 1.1, have been
removed due to implementation challenges; however, management of
vocabularies have acquired an
optionalfeature that helps vocabulary authors to “bind”
their vocabularies to other vocabularies, without introducing an
extra burden on authors (see
another blog for more details). Another long-standing issue was
whether RDFa should include a syntax for ordered lists; this has
been done now (see the
same blogfor further details).
A more recent important change concerns the usage of
@property
and
@rel
. Although usage of these attributes for RDF savy
authors was never a real problem (the former is for the creation of
literal objects, whereas the latter is for URI references), they
have proven to be a major obstacle for ‘lambda’ HTML authors. This
issue came up quite forcefully at the schema.org workshop in
Mountain View, too. After a long technical discussion in the group,
the new version reduces the usage difference between the two
significantly. Essentially, if, on the same element,
@property
is present together with, say,
@href
or
@resource
, and
@rel
or
@rev
is
notpresent, a URI reference is generated as an object of
the triple. I.e., when used on a, say,
<link>
or
<a>
element,
@property
behaves exactly like
@rel
. It turns out that this usage pattern is so
widespread that it covers most of the important use cases for
authors. The new version of the
RDFa 1.1 Primer (as
well as the
RDFa 1.1
Core, actually) has a number of examples that show these. There
are also some other changes related to the behaviour of
@typeof
in relations to
@property
; please consult the specification for
these.
The publication of
RDFa 1.1 Lite was also
a very important step. This defines a “sub-set” of the RDFa
attributes that can serve as a guideline for HTML authors to
express simple structured data in HTML without bothering about more
complex features. This is the subset of RDFa that
schema.org will “accept”, as an alternative to the
microdata , as a possible
syntax for schema.org vocabularies. (There are some examples on how
some schema.org example look like in RDFa 1.1 Lite on a
different blog .) In some sense, RDFa 1.1 Lite can be considered
like the equivalent of microdata, except that it leaves the door
open for more complex vocabulary usage, mixture with different
vocabularies, etc. (The
HTML Task
Forcewill publish soon a more detailed comparison of the
different syntaxes.)
So here is, roughly, where we are today. The recent publications
by the W3C RDFWA Working Group have, as I said, ”officialized” all
the changes that were discussed since spring. The group decided not
to publish a Last Call Working Draft, because the last few weeks’
of work on the
HTML Task
Forcemay reveal some new requirements; if not, the last round
of publications will follow soon.
And what about implementations? Well,
my “shadow”
implementation of the RDFa distiller (which also includes a
separate “
validator ” service) incorporates all the latest changes. I also
added a new feature a few weeks ago, namely the possibility to
serialize the output in JSON-LD (although this has become
outdated a few days ago, due to some
changes in
JSON-LD …). I am not sure of the exact status of Gregg Kellogg’s
RDF Distiller,
but, knowing him, it is either already in line with the latest
drafts or it is only a matter of a few days to be so. And there are
surely more around that I do not know about.
This last series of publications have provided a nice closure
for a busy RDFa year. I guess the only thing now is to wish
everyone a Merry Christmas, a peaceful and happy Hanukkah, or other
festivities you honor at this time of the year. In any case,
a very happy New Year!
Filed under:
Python ,
Semantic Web ,
Work
Related Tagged:
HTML ,
HTML5 ,
JSON ,
RDFa ,
RDFa 1.1
Lite ,
Resource Description Framework ,
schema.org