Whether you like XML or not, we’re stuck with it for a long time. These days, the only new XML-based projects being started up are document-centric and publishing-oriented. Thank goodness, because that’s a much better fit than all the WS-* and Java EE config puke and so on that has given those three letters a bad name among so many programmers. XML for your document database is actually pretty hard to improve on.
February 10, 1998 · I was at some meeting or another at Microsoft, and we were trying to get the last few changes in and publish the final approved spec. Of course, I wasn’t allowed to connect to Microsoft’s Internet. So Dan Connolly at the W3C would look at it, find some little glitch in the formatting or document-status section, we’d talk on the phone, I’d edit ~/XML/xml.xml, HTMLify it with a bunch of Perl I’d cooked up for the job, drop it onto a floppy disk, and give it to one of the Microsoft guys who’d email it to Dan. We went around this track quite a few times, as I recall.
What’s Really Strange · When XML was invented, it was the world’s only useful cross-platform cross-language cross-character-set cross-database data format. Where by “useful” I mean, “came with a pretty good suite of free open-source tools to do the basic things you needed.”
That’s why it ended up being used for all sorts of wildly-inappropriate things.
Is That All There Is? · So these days, if you want to interchange tuples or tables of tuples or numbers and strings, you have JSON. If you want to do nontrivial publishing automation, use XML. If you want to interchange smart bitmaps of page images, there’s PDF. I personally think we’re probably done with inventing low-level textual interchange formats.
What I’m Happiest About · XML really helped push Unicode down the world’s throat.
What I Regret Most · That I gave up working on Lark, the first ever production-ready XML parser, and still one of the fastest. It was maybe the best piece of software I ever wrote; but I couldn’t see the point when there were two other pretty good Java-language XML parsers out there in the wild. Oh well.
Further Reading · XML People, written on XML’s tenth birthday. Also, I suppose, the 135 other pieces here at this blog tagged “XML”.
Comment feed for ongoing:
From: DS morse (Feb 10 2013, at 11:40)
And I'm proud to work with the Air Force to put Lark in the hands of millions of users who rely on its speed to make timely intelligence decisions which help keep us all safer
From: Ungaro (Feb 12 2013, at 00:51)
I fondly remember XML, back in the day... Many of my HP colleagues went to work for CommerceOne, they tried hard to commercialize it for for all kinds of B2B transactions.
I soon became a big fan of XAML and MSFT's WPF. It was awesome to describe UI elements using data, rather than code. Then I woke up one morning and realized that is why HTML was invented...
Today, HTML5, CSS3 and JSON are the rage, so I roll with it. XML still has a place but in an ever-narrowing niche.
From: Jamshid (Feb 12 2013, at 09:49)
I'm glad Unicode was shoved down the world's throat, but to give credit where credit is due, Microsoft's early adoption of wide-characters in their Win32 api and their first class support in Microsoft SQL Server did more than XML ever did.
From: irneb (Feb 12 2013, at 22:02)
It's rather strange how many times the term "Re-invent the wheel" comes to mind when discussing technology of today.
For XML this was a particular case of "Re-invent the wheel, only square". Just look into Canonical S-Expressions, provides all the functionality of XML only a lot less noise-to-data. And there were already numerous libs for such using any number of character coding (in the 80's and before).
It seems that XML was a case of using HTML syntax to re-invent s-expressions.
From: len (Feb 13 2013, at 12:31)
I find myself managing a group using XML to tag IADS IETMs where every nit in markup and the history of XML is exposed like watching my life flashby as I fall off the cliff. Karma is real.
As for S-expressions and the reinvent the wheel notion, take it up with Erik Naggum. Let us know what he says.
From: Jim Fuller (Feb 15 2013, at 06:33)
yes, as James Clark said at the closing of XML Prague ' json is for data and xml is for documents'.
The hype curve was nearly a decade in the making for XML and we are now just emerging and applying extensible markup to sensible problems for it.
Also lets remind ourselves XML is thriving and very much undergoing lots of development and innovation ... for example the entire BBC Olympics site had XML under its hood; providing not just static data (sem + meta), but also providing services and even assisting time encoded information on all 28 live internet streams at planet wide scale/scope.
I appreciate the contribution you made to XML 15 years ago.
From: Tim (but not THE Tim) (Feb 19 2013, at 19:12)
I like XML because it's flexible; one of the related pieces I like best is XSL. I've used XSL to transform all sorts of things, including non-XML things: one powerful (for me) technique is to define a file as a System entity, enclose the entity within two tags, and apply an XSL Transform to it.