XML at Five
The XML 1.0 Recommendation turned five years old this Monday, 10 February. Since February 1998 XML has grown and developed, vastly exceeding all initial expectations. During those five years, XML.com has followed the XML world tirelessly, publishing nearly a thousand articles and becoming a forum for the heart of the XML community itself.
To celebrate this auspicious anniversary, I asked some XML old-hands and friends of XML.com to comment on their experience with XML over the last five years. Read on for their entertaining, illuminating and thought-provoking comments.
It's no exaggeration to say that XML has changed my life, professionally and personally. What about my respondents?
Rick Jelliffe, standards activist and Topologi CTO, still waves the flag of the SGML guard: "Not at all, actually. I started working in software for publishing using markup fifteen years ago, and still am." Others mused on the effect XML had on their professional life, and in particular that working with XML brought them into contact with some unique people. Eve Maler, a founding member of the W3C XML working group: "In addition to legitimizing my nervous habit of hierarchically structuring all data within my reach, it has allowed me to work with and learn from some of the most talented people in the world." Michael Sperberg-McQueen, Architecture Domain Leader at the W3C and co-editor of the XML 1.0 spec, added that XML "got me out of the university, out of Chicago, and into a job where others in the organization agree that working on open standards for information is a worthwhile way to spend time. Works for me."
Norbert Mikula, Director of Runtime Technology at Intel Labs and author of one of the very first XML parsers, recalls those early, halcyon days: "[XML] enabled me to work with some of the brightest minds in the computer industry. I fondly remember a time when the first day of an XML conference was usually a continuous group-hug exercise. It was really just a large family of weirdos." Of course, we've shaken that self-congratulatory thing these days...
It's good to know that XML experts walk the XML walk as well as they talk the talk. Henry Thompson of the University of Edinburgh and the W3C, is completely absorbed with XML: "All three of my jobs are centered on XML, I started an XML company 18 months ago, my intellectual focus is on XML."Ken Holman of Crane Softwrights and noted XML trainer, explained the benefits of XML in his business:
"I get professional looking document publishing results and easily managed content synthesized into presentations for my web site. I have been able to create and sell home-grown information products (my electronic books, licensed training materials, paper books, and instructor-led training handouts) all from a single set of sources. My customer management is made easy by on-the-fly aggregation of customer-maintained data in XML files at arbitrary URL addresses."
O'Reilly editor and long-time enfant terrible of the XML world, Simon St.Laurent, described how his entanglement with XML emerged from an interest in hypertext: "XML has derailed me from my original hypertext interests and forced me to think a lot harder about information structures in general. Along the way it's gotten me a few jobs, sparked a few fights, and generally left me wanting both less (fewer specs) and more (well-thought-out applications)."
Ken Holman already described how XML is used in his business but what, I wondered, were the favorite XML applications of the experts?
Old habits die hard with Eve Maler: "My personal favorite is good old authoring and publishing. Using XSLT in this way still feels like a 'killer app' to me, because I remember the days when it wasn't trivial to get your information out of SGML form."
Rick Jelliffe and Henry Thompson, both involved in young XML-based companies, are intrigued by new processing models and possibilities. Jelliffe said "I like things you can see and play with. XML on the desktop is great, especially because it allows lots more client-server and, especially, peer-to-peer interaction." Thompson offers an alternative to conventional web services as his favorite: "Auto-updating of transcluding documents as an alternative to messaging."
Michael Sperberg-McQueen offered two applications, and echos Eve Maler's approval of XSLT.
"First, I like using XML to encode historically important manuscripts, with rich detail concerning the text and its inscription in the manuscript: what words have been deleted, what words have been added later, and then using XSLT to offer the user a choice of many different views of the material, created from the same single source: a new-spelling text with annotation suitable for high-school students or undergraduates, an old-spelling text with annotation suitable for graduate students and scholars, a diplomatic transcription with paleographic and codicological details; annotation for textual critics, annotation for historians, annotation for literary scholars; the text of Hamlet in the Folio, in this or that Quarto, or as emended by this or that critic of the past four hundred years.
Second, I get a particular charge out of seeing XML used in applications for which SGML was proposed, in the late 1980s and early 1990s, but usually rejected out of hand as hopelessly impractical. XML for configuration files (in Gnome, or Cocoon, or a zillion other packages); XML for graphics (SVG rules!); XML for programming (XSLT has become one of my favorite programming tools)."
Simon St.Laurent enjoys the combination of independence and interoperability that XML offers him: "I like that I can concoct my own vocabularies for particular documents depending on what the document looks like, yet still have pathways to more standard vocabularies. It works well for writing documents and converting them to DocBook or XHTML, but it's also pretty nice for mixing and matching rule-sets for programs."
Norbert Mikula revels in the joy tags bring to everyday correspondence,
using XML "to add semantics to my e-mails such as: My
currency="USD">0.02</value> <rant>...</rant> or
A while back I enjoyed myself by poking fun at various parts of the XML world, picking out some of the more amusing applications of XML. What's the craziest XML application our XML experts have seen?
Eve Maler agrees with Norbert Mikula, "I would have to say spontaneous
well-formed markup in human-written email, such as
<sarcasm>...</sarcasm>. It works great with
wetware parsers, and you don't have to worry about performance
You can have too much of a good thing, however, and Norbert Mikula does have limits to where he'll put those nutritious angle brackets. His too-crazy scenario for XML is "an XML-syntax based programming language." Rick Jelliffe took the sentiment further, and criticized XHTML: "HTML thrived on being more forgiving of missing tags than even SGML allowed. Throwing that away makes HTML a lot less attractive. Which is true of markup in general, actually."
Michael Sperberg-McQueen asserts that "there are no crazy applications, only crazy application designers," leading nicely on to St.Laurent's craziest use of XML: "I haven't written it yet."
Regrets, We've Had A Few
No retrospective is complete without wishing we'd done something differently. Simon St.Laurent worried about the increase in complexity of XML, a point also made by Norbert Mikula.
"When Jon Bosak approached me at SGML '96 with the challenge to write an XML parser in three weeks (because so it was written as a requirement in one of the first XML drafts) I was actually able to do it. Now, that we have dozens of layers added to it, you need an engineering department for the same task. Sometimes, to the innocent bystander, XML's complexity has just gotten out of control. The good news is, however, that tools and infrastructure increasingly absorb some of this complexity which allows us to keep going."
Ken Holman also finds this a concern, "I would make the layers of processing far more distinct than how they have evolved...e.g. separating the representation of information in text markup from the application interpretation of information found in text markup. I'm really worried W3C Schema is going to ruin text processing and disenfranchise document writers, and I think RELAX-NG is probably the way of the future because if its clean lines."
This encouragement toward simplicity is also echoed by Eve Maler, "...get some of those communities to keep the words 'What Is The Minimum Required To Declare Victory?' uppermost in their minds. I suspect this is what Tim Bray attempts to do on a daily basis!"
Michael Sperberg-McQueen offered two recipes for reducing confusion:
"(a) I'd provide a more convenient way for people to distinguish between parsers which can support all of XML and parsers which require standalone XML to work right. Lots of problems result from people wanting the functionality of validating XML processors, but insisting on deploying non-validating parsers which don't want to read external DTDs. One reason is that we don't have a good, concise way to describe the different possible kinds of processors.
(b) I'd take everyone who says XML is 'semi-structured data' (in contrast with relational data, which they believe to be 'structured') out back and engage in what Steve Zilles calls "severe counseling". The difference between data in third normal form and XML is not the difference between structured and semi-structured data: it's the difference between simple, regular structures that are easy to treat with the mathematical theory of relations and natural structures that are not so regular, not so simple, but very, very real, and very, very structured."
Pages: 1, 2