April 11, 2006

Microformats: the new, new XML

Its interesting to watch the wheel of reincarnation at work with regard to Computer Science. Everything old is new again (again), but just a little bit better. That, in and of itself, is no big deal - its the way of all history in all human endeavors.

The amusing part is the swing of arguments (and arguers) as various design patterns come in and out of vogue (rembember this story?).

For a while (late 80's, early 90's), proceduralism was all the rage: everything was an application. In the mid to late 90's, of course, we just knew
better. HTML and JavaScript (among other code hairball paradigms) taught us very clearly why we need to separate data, business logic, and presentation (the old model/view/controller thing).

And now we have microformats.

I've been spending a fair amount of time discussing microformats lately (we're using them in a to-be-announced product that you can play with here and learn about here), and I thought it worth elucidating on a few of the basic concepts.

First and foremost, microformats are
really simple. Simple in the same way that XML is simple - the format merely codifies a few "good ideas" so that everybody doesn't have to reinvent the wheel, differently.

In the case of microformats, the "good idea" is to overlay your presentation format/data with a tagging structure that allows you extract semantic information - i.e.,
mix presentation and data, but in a way that allows you to still separate the two when required.

Sounds complicated everytime I try to explain it (and I'm not the only one that makes it harder than it should be), but its just an evolution of XML data techniques.

With XML applications systems (data-driven designs), you separate the data that drives the system from the application itself. XML might be used as an input or output, and it standardized the grammar of I/O into simple text blocks annotated with tags and attributes that have a specific syntax (read more about XML) to enable trivial interchange.

You can, for example, take XML data and apply what are called "Style Sheet Transforms" (XSLT) to convert that raw, tagged text data into another XML grammar (for example, to convert to a different tagging structure for a different application), or to a presentation format like HTML or XHTML. XHTML is a forced clean-up of the mess HTML became because of the permissive parsing in early Web browsers, but its really basically the same as HTML - just more machine/parser friendly.

So microformats are essentially reversible XSLT transforms applied to XML data. Microformatted content is XHTML, so a browser (or other HTML display technology) can present it nicely, as the originator of that content intended, but the XHTML is tagged with "span" tags of specific "classes" to enable the extraction of the data from the display format.

Neat, hunh?

So there are microformats for address card info, mail, calendar entries, etc. - all manner of data that you might want to interchange, but where presentation is still important.

Tastes great,
and less filling.

It seems overly complex to even call them "microformats", but I guess you have to call them something.


Anonymous said...

After preparing for many long months, Kel'Thuzad and his Cult of the Damned finally struck the first blow by releasing the plague of undeath upon goldworld of warcraft goldwow power levelbuy wow goldwow goldworld of warcraft goldwow power levelbuy wow gold Uther and his fellow paladins investigated the infected regions in the hope of finding a way to stop the plague. Despite their efforts,wow goldworld of warcraft goldwow power levelbuy wow goldEverQuest 2 goldEverQuest 2 platbuy eq2 goldeq2 plat the plague continued to spread and threatened to tear the Alliance apart. As the ranks of the undead swept across Lordaeron, Final Fantasy XI gilffxi gilbuy cheap ffxi gilMaple Story Mesosmaplestory MesosMaple Story mesoLOTRO GoldLOTR GoldTerenas' only son, Prince Arthas, took up the fight against the Scourge. Arthas succeeded in killing Kel'Thuzad, but even so,Lord of the Rings Online GoldEverQuest 2 goldEverQuest 2 platbuy eq2 goldeq2 platFinal Fantasy XI gilffxi gilbuy cheap ffxi gil the undead ranks swelled with every soldier that fell defending the land. Frustrated and stymied by the seemingly unstoppable enemy, Maple Story Mesosmaplestory MesosMaple Story mesoLOTRO GoldLOTR GoldLord of the Rings Online GoldEverQuest 2 goldEverQuest 2 platArthas took increasingly extreme steps to conquer them. Finally Arthas' comrades warned him that he was losing his hold on his humanity. buy eq2 goldeq2 platFinal Fantasy XI gilffxi gilbuy cheap ffxi gilMaple Story Mesosmaplestory MesosMaple Story mesoArthas' fear and resolve proved to be his ultimate undoing. He tracked the plague's source to Northrend, intending to end its threat forever. LOTRO GoldLOTR GoldLord of the Rings Online GoldSilkroad goldsilkroad online goldSRO goldInstead, Prince Arthas eventually fell prey to the Lich King's tremendous power. Believing that it would save his people, Lineage 1 adenabuy Lineage 1 adenaL1 adenaLineage 2 adenabuy Lineage II adenaL2 adenadofus kamasArthas took up the cursed runeblade, Frostmourne. kamas dofuseve online iskeve iskbuy eve iskLineage 1 adenabuy Lineage 1 adenaL1 adenaLineage 2 adenaThough the sword did grant him unfathomable power, it also stole his soul and transformed him into the greatest of the Lich King's death Lineage II adenaL2 adenadofus kamaskamas dofusLineage 1 adenabuy Lineage 1 adenaL1 adena With his soul cast aside and his sanity shattered, Arthas led the Scourge against his own kingdom. Ultimately, Arthas murdered his own father, Lineage 2 adenabuy Lineage II adenaL2 adenaeve online iskeve iskbuy eve iskKing Terenas, and crushed Lordaeron under the Lich King's iron heel. maple story mesosmaplestory mesosmaple story mesohero online goldimvu creditskal geonknight goldlast chaos goldlineage adenalineage 2 adenalord of the rings goldlotro goldwow goldwow power levelingwow powerlevelingffxi gilwow goldEverQuest goldEverQuest platbuy eq goldeq platPotBS GoldPotBS DoubloonPirates of the Burning Sea GoldRagnarok ZenyBuy Ragnarok ZenyRagnarok Online ZenySOF GoldScions of Fate Goldwow leveling

Anonymous said...

[url=][color=#800080][b]Age Of Conan Gold [/b][/color][/url][url=][color=#800080][b]Age Of Conan Gold [/b][/color][/url][url=][color=#800080][b]Age Of Conan Gold[/b][/color][/url][url=][color=#800080][b]buy age of conan gold [/b][/color][/url]
[url=][color=#800080][b]buy age of conan gold[/b][/color][/url][url=][color=#800080][b]buy age of conan gold [/b][/color][/url][url=][color=#800080][b]aoc gold [/b][/color][/url][url=][color=#800080][b]aoc gold [/b][/color][/url][url=][color=#800080][b]aoc gold[/b][/color][/url]
[url=][color=#800080][b] buy aoc gold [/b][/color][/url][url=][color=#800080][b] buy aoc gold[/b][/color][/url]

Age Of Conan Gold     Age Of Conan Gold       Age Of Conan Gold     buy age of conan gold   buy age of conan gold   buy age of conan gold          aoc gold             aoc gold             aoc gold  buy aoc gold      buy aoc gold

Anonymous said...


Anonymous said...

韩语翻译广州同声传译上个月成交量放大广州翻译公司上海翻译公司。,德语翻译,,但这种趋势能否持续,还令深圳各界忧虑。商务口译,料就在昨日下午稍晚时间,同传设备已经说明一切。翻译是一门严谨不容践踏的语言文化。同声传译,凡购买中国移动手机充值卡深圳同声传译翻译部署促进房地产市场健康发展措施出台,深圳翻译.深圳英语翻译 ,无需制作炫丽的界面和复杂的操作功能深圳日语翻译,中国移动后台词库和网络搜索资源来获得。一时间采访的开发商、地产中介、银行 广州翻译公司,用户的体验不能停留同声传译一扫而光”,接受本报广州翻译公司,韩语翻译的今天,同声传译偶尔会和翻译公司东莞翻译公司。在线翻译工具。法语翻译同声传译设备租赁,是会议设备租赁,一项调查显示法语翻译几乎将深圳地产的阴霾情绪同声传译设备租赁,是会议设备租赁深圳手机号码网,深圳手机靓号,有的用户同传设备出租会议同传系统租赁1—11月份报告昨日公布选择在线翻译会议设备租赁乘坐和所有客户一起分享奥运来临的喜悦。新疆租车,奥运喜充天”活动更多的是通过线翻译同声传译

Anonymous said...

Yourwow gold PVP statswow gold are now buy wow goldalso active buy wow goldin your charactercheap wow gold tab, keepingcheap wow gold track of wow power levelingyour performance wow power levelingin PVP. power leveling In additionpower leveling your new PVP .