Fighting Windmills. Yesterday, Brussels was another stop of the ongoing Microsoft EMEA Architect's tour. Going through the customer feedback on my "Service Oriented Architectures" talk I once again realized that there's a lot more work to do in terms of educating people about the significance of XML. One of the core messages of my talk is that the XML InfoSet is the focus of integration.

The comment that caught my attention was stating that I were completely missing the point about interoperability because "XML is just a data format". 

Excuse me, Sir, but it's not. XML is a very broad and deep infrastructure for data that has moved very much beyond being a "data format". The "data format" perception of XML may have been accurate in 1998, but by now, the focus has entirely shifted towards the XML Information Set (Infoset).

Focusing on the Infoset and not on angle brackets allows you to serialize to and import from virtually any binary or text format (including XML 1.0 with angle brackets) and always have a central anchor point that is indeed independent of your choice of serialization format. If you look (just to name one example) at Microsoft's BizTalk Server, you will see that it's common practice to have a parser that reads EDIFACT and produces an Infoset, performs various operations on the Infoset and serializes the result back out as EDIFACT (or X.12 or some custom text format) again. The fact that BizTalk will indeed serialize that Infoset as XML 1.0 as it is passes through its internal pipeline stages is an internal implementation detail of BizTalk.

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.

Updated: