Have spent some spare time looking at microformats recently (and more importantly, writing a microformats parser).

The main thing that troubles me is that microformats have no explicit way of conveying the structure of the data. This scuppers the idea of a general microformats importer (which I would obviously like for JAM*VAT, amongst other things).

There are three ways a metadata scheme can convey structure:

1) In the data itself (e.g. RDF, XML, OPML) 2) In a seperate schema (e.g. ASN1) 3) Out of bounds (i.e. documented somewhere, but not 'discoverable' by the parser)

Microformats currently use the third - the structure of the data needs to be pre-known by the parser, since there's reliable no way of deducing it from the data. This is a concious decision on the part of the microformats community - they don't want to go down the schema-language rathole. However it does have a few negative effects:

  • Schema design needs to be centralised (or at least well publicised) (since each new schema must be adopted and implemented by the parser writers)
  • You can't use existing parsers to parse new formats

I think the latter effect means that niche microformats are unlikely to emerge, since writing a range of parsers for the important languages is a big job.