In this article I want to take a look at the semantic powers of both HTML 4.01 and XHTML 1.0. Both languages share almost the exact same DTD which give them equal semantic value. But is this value enough for the web?
By looking at the title of this article, I'm guessing you already know my answer. In my opinion, the semantics of HTML 4.01 (and thus also XHTML 1.0) is very weak. It's good for simple documents and, unfortunately, that's what HTML is made for. If you think about it, HTML is not made for websites like Jero.net at all, but more for a set of scientific documents. A website like, for instance, Slashdot, is a complex collection of pages and articles. In HTML there is no way to define this structure and the specific relations between different pages.
Another thing HTML sucks at is to define the structure of a single page.
There's no way to tell the user agent what part of the page should be
considered to be the header of the page, the footer, not even the menu. The
only thing near this is, is by the use of the h#
elements, but once again, they are more suited for documents, not web pages.
So what we need is a markup language designed to understand what part of a webpage is to be considered the header, the footer and the menu. Probably more, but these are a good start. Luckily for us, there are already two markup languages with these features that are currently in the developing process:
Both languages use different methods to define these semantics. XHTML 2.0
uses the role
attribute while WA 1.0 uses separate
elements for both the header, footer and
menu. The
main advantage is that the elements make sense. There's now a lot of confusion
on which elements we should use for a specific task. This is a sign that HTML
doesn't make sense. If we'd have a good set of elements that were
actually made for websites instead of scientific documents, there wouldn't be a
lot of confusion because we'd know which element to choose.
Another advantage is that the structure of a webpage can now also be understood by user agents. So search engine bots could use this to improve their indexing algorithms and user agents could create a built-in function to allow the user to skip the top of the page right to the content.
Finally, having this ability to use these elements to define a richer structure, it'll also be easier for WYSIWYG editors to work with HTML because they understand what the purpose of a specific part of the page is. Once it knows that, it could give the user a much better set of editorial options.
Although I haven't really given the new possibilities for WYSIWYG a thought so I'm not really sure what could be possible and what could not be possible, I'm sure having this ability to define a much clearer structure will at least make WYSIWYG a bit easier.
So hopefully by the time the usage of Internet Explorer (with Internet Explorer, I'm sure it'll be impossible to introduce a new markup language) is starting to cripple, either WA 1.0 or XHTML 2.0 will be pushed as the successor of HTML 4.01 because I'm sure we all agree HTML 4.01 had its time.
Right now, Web Applications 1.0 has been adopted by the W3C as the successor of HTML 4.01; HTML5. XHTML 2.0 is still in development as the successor of XHTML 1.0. Finally, progress!!
Copyright © 2005 - 2007 Jeroen van der Meer. All rights reserved.