[uf-discuss] re: HTML5 support

Ciaran McNulty mail at ciaranmcnulty.com
Tue Jul 20 04:05:56 PDT 2010

On Tue, Jul 20, 2010 at 5:05 AM, Angelo Gladding <angelo at gladding.name> wrote:
> Can an enlightened soul describe in which ways microdata is actually
> superior to profiled poshformats?

To me it's not a question of Microdata vs POSH, it's more like
Microdata vs class attributes where both are methods that can be used
in POSH style data embedding.

The main arguments (and I present these without necessarily agreeing!)
seem to be:

1. Class is ingrained as a CSS hook mechanism. Most people on this
list are fine with class being used for other purposes, but despite
that the argument comes up incredibly often that using class is
somehow a 'hack'. Microdata overcomes that, so right or wrong, it may
be worth ditching class for embedded data just to help uptake.

2. The class space is already populated with lots of ill-thought-out
CSS identifiers. This means POSH formats have to attempt crude forms
of namespacing (e.g. picking a uniquely-named root element) to try and
not collide with existing markup. That works for @class="fn" say, but
it's easy to collide with @class="email". Microdata separates out the
important stuff.

3. Related to 2, microdata extraction is possible without having to be
profile-aware, so for instance microdata can be converted to JSON
without knowledge of the vocabulary used.

4. Microdata features some structures like @itemref that help combine
disparate data across a document into one Microdata element, which in
Microformats would need the slightly hacky rel-include structures that
frankly I don't think anyone has been completely happy with.

5. Microdata allows locally-scoped typing using the @itemtype property
and a URL, while a POSH format can only do something similar with a
document-level @profile.

6. Microdata defines an API for DOM access to Microdata that allows
scripts to deal with Microdata-embedded data when doing the same with
Microformats involves some fairly heavy DOM parsing.

The arguments against Microdata are basically that it's complex, huge,
obviously isn't based on any existent markup in the wild, and really
doesn't look like an obvious core element of HTML5 so it's weird that
it's included in the same spec.


More information about the microformats-discuss mailing list