The W3C, like, OWNS the Web, man. Work continues there on drafting specifications for the next version of HTML, and the working group charged with this task has just released a new editor's draft detailing progress. While the process is far from finished, the new browsers are already recognizing some new elements of the updated standard, so we thought we'd take a look at how HTML 5 is shaping up.

Why do we need a new HTML?

Because the old one has been knocking around since the mid-1990's. HTML 4 was officially recommended by the WC3 back in 1997. Things have moved on since then, as you may have noticed. Gas got dearer and America got meaner. More to the point, the Web got asynchronous, embraced embedded multimedia, and the browser morphed into the desktop. HTML 5 is all about getting up to date in the era of dynamic applications. Or, in W3C's words, 'The main area that has not been adequately addressed by HTML is a vague subject referred to as Web Applications. This specification attempts to rectify this, while at the same time updating the HTML specifications to address issues raised in the past few years.' Incidentally, an alternate title being used for HTML 5 is Web Applications 1.0.

So They've Gone Nuts and are Trying to Horn in on the AJAX/Flash/Silverlight Racket?

No, don't be silly. 'For sophisticated cross-platform applications, there already exist several proprietary solutions (such as Mozilla's XUL, Adobe's Flash, or Microsoft's Silverlight). These solutions are evolving faster than any standards process could follow, and the requirements are evolving even faster. These systems are also significantly more complicated to specify, and are orders of magnitude more difficult to achieve interoperability with, than the solutions described in this document.'

Controversies, Setbacks, Reversals...?

No more than is usual. In July of last year Roger Johansson quit the HTML 5 working group, later branding it a 'Circus'. His disquiet stemmed from a 'hostile' atmosphere, where 'people were being ridiculed, ignored or dismissed when they asked questions, voiced objections, or otherwise tried to contribute.' What's more, the whole editing process was '...less than ideal'. A short while later, he rejoined the flock and buried the hatchet with his old chums. And into his old chums. Meanwhile, Johansson pointedly remarks in his 'About' that his site is built on a 'built on a solid foundation of valid HTML 4.01 Strict'

Who's drafting HTML 5?

WHATWG and the W3C HTML Working Group. And who or what is WHATWG, you ask? The Web Hypertext Application Technology Working Group, an independent body which looks at HTML development from the perspective of the Web developer and browser deliverables. It's focus is 'limited to technologies that will need to be directly implemented in Web browsers.' You can follow them on Twitter.

Legacy Browser Support?

What about the millions of home machines running ancient browsers? Will Hotmail and Altavista crawl to a halt for the un-upgrading masses? HTML 5 is designed to work fine in legacy browsers, so there shouldn't be a problem. New elements which the browser doesn't understand are ignored, and the old ones are treated as per usual.

New HTML 5 Elements, Tags

The W3C draft is a monster to work through to find new elements. So we've 'borrowed' extensively from an excellent IBM paper from last August, written by Elliot Rusty Harold, who goes through some of the more interesting new additions. New Structure Elements: You've got to admit, it's a bit redundent having a hundred div tags just to break up a page. These new html tags aim to make structure more semantic and sensible. section header footer nav article You can see examples in the IBM paper showing how much more efficient using these new tags makes page structure. Semantic dialog - Brutus Hey Caesar, do you like apples? Caesar: Do I ever! Brutus: How do you like them apples, scumbag? Caesar: Arrrrgghh! New dd and dt attributes inside a dialog element allow you to format for this kind of dialog now. figure - represents a block-level image with a caption Inline Semantic Elements These constitute some of the more interesting markup expansions in HTML 5, so we'll have a proper look at them. mark- m 'indicates text which is marked somehow but not necessarily emphasized... like highlighted passages in a book', according to Harold. time time /time formalizes hours and dates. Meter meter /meter 'represents a numeric value in a specified range. For example, you can use it for salaries... or test scores. [This] helps browsers and other clients recognize amounts in HTML pages.' The meter element can have up to six attributes: value, min, low, high, max. Progress 'represents the state of an ongoing process, like the progress bar in a GUI application.' It requires Javascript intervention to dynamically update. Embedded Media It's a bit of a chore embedding media, when you think about it. We're spoiled by YouTube, which gives us the long confusing embed string needed. To embed an image you want to host yourself, you simply upload it and use an img tag to size and display it. Why can't we do that with video and audio? Hold that thought...
html 5 cmswire
(taken from the IBM paper) Video Once this thing gains browser support, you will be able to upload your vids to your own site and just use video /video to embed. Audio Ditto Interactivity details Shows additional information which might be prompted by something like a mouseover. datagrid Intended for lists and expandable trees and tables, all of which can be updated by scripts or by the user. menu HTML menus are back (they were around in HTML 2, apparently.) Hurrah! When Will We See the Finished Article? The final version of HTML 5 is not expected to be runner-stamped before 2012. But browsers and web services will uptake and recognize new elements etc. as we go along Are Browsers Using HTML 5 Yet? Yes -- FireFox, Safari, Opera and Internet Explorer are all using a limited number of the new standards. In point of fact, they've been using them for some time. You can view the full list of known HTML 5 browser implementations here. The latest W3C HTML 5 draft is available to view here.