Technical Plenary

Volume 8, Issue 36; 04 Mar 2005; last modified 08 Oct 2010

A week at Logan airport talking web architecture and XML.

The annual W3C Technical Plenary is a whole heapin' helping of technology chatter. It's an all-day, all-technical affair sandwiched in between four days of working group meetings. Per usual, I was booked for the whole week, double booked for part of the week, and triple booked once or twice.

After Steve Bratt’s introduction, the plenary itself got busy with extensibility and versioning. In a great panel, introduced spectacularly by Paul Downey, we got a peek at just how many facets that problem has. In summaryApologies for the W3C member-only link., it's about “effective management of change”, “inheritance”, “don't procrastinate”, “identifiers”, “agreements are valuable”, “partial understanding”, and “compatibility”. At least.

My own contribution to the plenary day was participation in a panel on the future of XML. I mumbled something along these lines:

XML is widely deployed; the cost of change is enormous. It would seem that the benefits of a change would have to be equally enormous to justify the effort. My crystal ball has always been pretty poor, but it seems to me there are four possible directions we could take:

Editorial revision: shuffle XML, XML Namespaces, Infoset, XML Base, xml:id, XInclude, and maybe a few other things together into a more coherent set of specifications that describe exactly the same language.

Party like it's 1997: knowing now what we didn't know then, refactor things, blunt some of the sharper edges, fix a few obvious problems, but develop essentially the same technology.

Armed revolution: design a new system that solves all of the problems that XML is now being used to solve, but do it better.

The future is now: continue extending XML to solve new problems (binary, update, etc.) as best we can.

In retrospect, what I think I didn't say is what direction I think we might actually be able to pursue. To be blunt, editorial revision would be an interesting intellectual exercise but it'd be vastly, horribly, unbearably tedious to get it all right; I don't think the return on investment warrants trying to make the small-to-medium fixes that I've described in the past, much as I wish we could go back to 1997 and do them; I'm one of the old guard, revolution may be the answer, but I'm afraid I'm more likely to be up against the wall than leading the charge; and that means we just have to muddle along as best we can. And that's what I think we probably have to do.

I found the panel a bit depressing, actually. Especially when Jonathan Marsh capped it off by suggesting that maybe what we really ought to do is rescind XML 1.1.

My spirits were buoyed somewhat by Richard Ishida’s lightning talk, “XML For Everyone?” Richard described new work being done to develop XML. Drawing from hundreds of languages that require XML 1.1, he gave a whole bunch of concrete examples. When he postulated that the “X” in XML might come to mean “excluded” without the adoption of XML 1.1, he got cheers from the audience. Long, loud, and widespread cheers from one end of the audience to the other.

Maybe this XML thing will work out.


I feel complelled to note that when Liam Quinn polled the audience for anyone who was fluent in a language that XML 1.0 "excluded", there was nary a peep.

Those widespread cheers for XML 1.1 among W3C insiders have not echoed in the marketplace. Microsoft has no religious objection to this, simply doesn't see enough collective benefit from XML 1.1 to outweigh the very real pain it inflicts on the XML industry. Without truly widespread uptake, XML 1.1 simply adds one more variable to the already complex interoperability equation. That's why Michael Rys (NOT "Microsoft", although that is a popular opinion here) suggested recinding it.

There are lots of good ideas in XML 1.1, especially the more sensible alignment with Unicode and removing the arbitrary restrictions on the characters that XML can represent (although the continued outlawing of 0x0 is mystifying). Furthermore, the failure to note NEL as a newline character in XML 1.0 is simply a bug that really must be fixed at some point. These changes simply didn't add up to enough reason to create a new version of XML, in the humble collective opinion of those of us at Microsoft who track the XML specs and advise management on the costs and benefits of implementing them.

I do agree with Michael Rys - W3C should recind it, and at some point in the future issue a new set of specs that offer its features in a coherent package that has enough other goodies in it to make it worth a wide audience implementing and converting to . What W3C seens to be offering now is a death by a thousand cuts -- XML 1.1, Schema 1.1, future versions of the other specs that support XML 1.1, and so on.

—Posted by Mike Champion on 05 Mar 2005 @ 07:17 UTC #

Sorry, Michael Rys says it was Jonathan Marsh who made the argument about recinding XML 1.1.

—Posted by Mike Champion on 05 Mar 2005 @ 08:58 UTC #

beautiful picture Norm :)

—Posted by Libby Miller on 06 Mar 2005 @ 11:56 UTC #

Thanks, Libby. Though I think Stuart beat my efforts. Twice. :-)

—Posted by Norman Walsh on 07 Mar 2005 @ 03:20 UTC #

In the original publication of this essay, I quoted Jonathan Marsh's opinion as if it was Microsoft's opinion. I had no business making that inference and I apologize for doing so. I have no idea what corporate position Microsoft might or might not hold with respect to rescinding XML 1.1.

—Posted by Norman Walsh on 07 Mar 2005 @ 04:04 UTC #