XHTML 2.0: The Latest Trick
If the Semantic Web means anything, it means changing the Web's infrastructure just enough so that inter-machine exchanges become as ubiquitous, cheap, and easy as inter-human exchanges already are. One vital goal, however, is to make inter-machine exchanges possible without doing permanent damage to the ecology of the Web: inter-machine exchanges are not meant to replace or supplant inter-human ones, merely to supplement them. And a supplement, by its very nature, is always something one can do without. At present the primary medium of inter-human exchange on the Web is HTML. In the rush to tweak the Web's infrastructure to support inter-machine exchanges, we would do well to not forget about the importance of HTML among our grand semantic schemes.
The problem with inter-machine exchanges is that they are significantly more difficult to conceptualize, design, develop, and deploy than HTML-based web publishing. Therefore they are likely to be a supplement to the existing Web: most people won't actively develop or deploy mechanisms to facilitate them, but many, perhaps most Web users will benefit directly or indirectly from them.
In some ways, then, the Semantic Web will reverse the early Web's balance between producers and consumers. HTML was and is simple enough that just about anyone could learn enough of it to publish on the Web. And that was and is a very good thing. It is one of the things which the Semantic Web must never disturb. Some form of HTML, preferably XHTML, will always be the most ubiquitous type of Web content; people will keep writing it by hand, building user interfaces with it, trying, succeeding, failing to scrape useful information from it by means of machine processing, and so on. Any part of the Web's infrastructure with such a long future shelf life deserves careful and attentive shepherding.
It's this context, the long view of the Web's future and the way most people use it now and then, in which it makes the most sense to think about the first public draft of XHTML 2.0, which appeared on 5 August. Since HTML is going to be around for a very long time, it makes sense to rationalize it, continue evolving it, and, in general, to make it more powerful and more amenable to the kinds of things people want to do with it. There are signs, encouraging in such an early draft, that the W3C Working Group responsible for XHTML 2.0 understands and is working to enact this ideal.
The More Things Change, the More They Change
In what remains, I want to run down a list of noteworthy changes that have appeared in XHTML 2.0, considering how they are likely to impact a specific, but important, use case: people writing documents by hand to publish on the Web. The XHTML 2.0 draft doesn't enumerate all the changes from XHTML 1.1, so the following list is incomplete.
Navigation lists. One thing web designers have been doing forever is building ad hoc widgets, structures, scripts to display site navigation elements. In response to this universal need, XHTML 2.0 includes a new kind of list, represented by the element nl. Nav lists are, as the XHTML 2.0 draft states, "intended to be used to define collections of selectable items for presentation" in some kind of display structure, likely to be device and browser specific. The draft specifies a fairly abstract, default presentational rendering of nav lists for devices with a visual display, but leaves non-visual device rendering unspecified, wisely. In an XHTML 2.0 document, a nav list might look something like:
<nl> <name>The Constitution of Mars </name> <li href="#legislative">Article 1. Legislative Department</li> <li> <nl> <name>Article 2. Executive Department</name> <li href="#ec">Section 1: Executive Council</li> <li href="#powers">Section 2: Powers of the Executive Council</li> </nl> </li> <li href="#judicial">Article 3. Judicial Department</li> <li href="#governance">Article 4. The Global Government and the Towns and Settlements</li> ... </nl>
Adding the nav list to XHTML 2.0 has a kind of democratizing effect: people with little or no understanding of scripting or document object models will be able to write and deploy complex site and document navigational structures in a very simple way; and, it should be added, in a way that is a natural and organic extension of what they likely already know.
Pages: 1, 2