XML Isn't Just a Data Format?.
Clemens Masters writes;
I am sorry to say that, but if today you still believe and insist that XML is just another data format, the train may already have left the station for you.
Well, then I guess my train is long gone. Ouch. Sorry Clemens, but XML is just a data format. Now, good data formats like XML are nothing to sneeze at, and I'm glad we have it, just like I'm glad we have/had ASCII. But for heaven's sake, it's just syntax, a context free grammar.
He also stated;
One of the core messages of my talk is that the XML InfoSet is the focus of integration.
IMO, this is like saying C structs are the focus of integration. Ok, so you and I agree on what one is, and perhaps even how its represented. Now what? How do we integrate? We can't, at least with just that shared knowledge. If we also shared a model for how to identify, exchange, and manipulate them, then that could form a focus for integration. Which is, of course, akin to what REST tries to do around a more general abstraction called a resource.
[Mark Baker, Tech Curmudgeon]
I've gotta say I'm with Mark on this one. XML is great data format for exchanging information. The main value of XML is its syntax.
However as soon as people start adding layers of semantics on top of XML (W3C DOM, XPath object model, XQuery model, DTDs, XSD, PSV1, InfoSet) things seem to get more complex and less useful from an integration perspective.
I guess I've missed the train too :-)
Update: Dare made a good point about why people use XML and the various useful tools you get with XML which I agree with totally. My point in this thread is really that when we talk of integration and sharing information - the sharing XML syntax is usually the best approach, which is typically much more reusable than a semantic model or programming language API.