Some impressions from the plenary day on W3C TPAC 2008 regarding HTML5:
At Standards Suck we are reporting on TPAC 2008 with interviews of various people. More to come.
(Tomorrow the HTML Working Group meeting will start. Michael Smith posted the final agenda. First meeting this week I am in that has an agenda upfront. Mike++)
What also was funny was that the Web was not about the browser except that lots of people here at TPAC wanted browsers to do things differently. E.g., implement XBL, provide some end user visible UI for errors in a site, et cetera. Not exactly consistent messaging.
“Also, what is wrong with using XML for this?”
Nothing, of course you should use XML for this :). That is exactly why the XHTML2 WG went for XML, but the HTML5 WG apparantly chose to undo that.
Distributed extensibility is important because then people can add their own scripted markup easily. Just a small example is the
g:insertMail tag I use on my About page to trick spam harvester bots, or the
g:sort attribute to indicate sortable rows elsewhere. And because people want to share those kinds of tags with others, and combine several libraries that each add their own tags, HTML5’s
data-* attributes don’t suffice (those are a bandaid solution anyway). Plus, I don’t trust the HTML5 people, who seem to only consider majority vote, to provide features that minority groups might need.
But I’m sure that has already been said time and again. I don’t understand the objection to namespaces anyway. They’re easy. But then again, I wouldn’t be in favour of adding namespaces to HTML, because doing so would further the agenda of HTML to the detriment of XML.
Plus, I don’t trust the HTML5 people, who seem to only consider majority vote, to provide features that minority groups might need.
HTML 5 people is a bit vague, but because I have been part of the WG. I wonder if it includes me. Anyway let's say, it does. My impression is that the HTML 5 WG doesn't work at all with majority vote, but on "implementations rule". As in some features are proposed, and then they will be considered last call when there are identified implementations. We spent a big part of today dealing with flagging the spec with the things which were controversial or working draft (aka not stable), or last call (being stable and implemented most of the time.)
There is also a call for test cases building and implementation reports for each tools.
Maybe I should put that differently: I don’t expect the HTML5 WG to provide functionality that minority groups need. Aside from the annoyance that everything would have to happen by committee, it would simply be out of scope (although the HTML5 scope seems to be ever increasing). But given that, I don’t see how you can arrive at any other conclusion than that ‘distributed extensibility’ is a necessity.
I guess you’re right in that implementations rule, for HTML5 in practice that means the 4 big desktop browsers. They have no need for features such as namespaces themselves, as they are just a few parties that can agree on not adding conflicting features, and as they are in control of the specification they don’t need to account for anyone else; if you’re a minority group in need of certain functionality however, for which you need distributed extensibility so as not to create conflicts with other extensions, you are out of luck.
But as I said before, I really hope that no extensibility features are implemented in the HTML serialisation of HTML5 (that includes
data-* attributes), because HTML5/XML already provides everything that is needed, and we do not need a competing standard. In my mind it is fine to extend HTML5-the-language, but HTML-the-syntax we can not get rid of soon enough.
The XML serialization needs a namespace. This would allow xhtml5:elements in existing codebases which are tailored towards generating XHTML1.0 strict. You can talk about expanding the semantics of XHTML but the generated documents are then no longer valid XHTML1.0!
Anne: "Also, what is wrong with using XML for this?"
Some of us would appreciate being given the opportunity to do so ;)