Tuesday, July 18, 2006

Capturing the real world in microformats

.. taking the semantic web a step further

Only the very alert reader may have noticed that I dropped the word "microformat" carefully in my post about implementing the Google Mini. It is too much asking of anyone out there that this is a sign that I am slowly being won over by the movement that promotes the use of microformats on the web.

What are microformats?

Explaining the Big Idea behind microformats has been effectively covered by the wiki at Microformats.org, but to keep you here I will briefly pull a quote from said page: "Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards."

IMHO the main drive behind the microformats idea could be that there are over a million ways to markup data like business contacts and that they usually produce easily human readable information, but because of the varying underlying html it is hard for machines to understand what the data is about.

Chris Messina
Microformats are simple codes that you can use to identify specific kinds of data, like people or events, in your web pages.
How does it work?

Microformats are based on standard html tags that are improved by adding standard class attributes. In the example below there is the part of an hCard microformat that holds the postal code.

<span class="postal-code">8332 KS</span>

CSS can be applied to this quite simply to make it visual appealing to the human and the standard html can be understood by the browser or an extension / plugin that automatically can add the contact to the address book, start an email, make a call or shows the location of the contact on a map. Anything could be done. No cutting and pasting involved. Simply scan the page for the specific html tag with the class name and do whatever you like with the information found.

Search engines could also use this to automatically gather all sorts of information.

More benefits and drawback

The possibilities of giving more ease of use to the visitors of a page seem endless, but also for web designers / developers it means that there are more common solutions to common problems. More patterns.

Yep, here's a drawback, that means that after learning about CSS and all the browser inconsistencies and hacks and XHTML and unobtrusive JavaScript we know must also start to use microformats. It's the ultimate curse: you never stop learning in IT. But it is also one IT's charms.

A new standard is emerging

The microformats are not part of any W3C standard and I don't think they will ever be. The amount of critique on the W3C has been increasing lately. More and more voices are stating that they are getting more and more enstranged from the developers community that promoted standards based design. Likely, we will see more standards being developed out in the wild and slowly but surely these standards will be adopted by more and more developers until it is absolutely insane to not use them.

Now is the moment

For early adopters or people who want to get at least a sniff of things to come the time has arrived to start reading up on microformats and start implementing them here and there. Or maybe build a first Firefox extension that makes clever use of the data held in these microformats.

Go on you developers, go and do the right thing!