XML: The Syntax and the Spirit
By Sean Mc Grath
Lots of people, myself included, think XML is great. I have worked with markup languages for many years and was fortunate enough to participate in a small way to the creation of XML itself. I work with XML every day of my working life. Even with my total immersion and exposure to it, I still think XML is great. I really do. But...
I do wish someone would switch off the "reality distortion field" that increasingly surrounds XML. XML is not rocket science. Its power lies in the sheer simplicity of the idea, which goes something like this:
Take raw information in plain text format and sprinkle tags into it that describe what the component pieces of the information mean -- somewhat like HTML tags, only with meaningful names like <partnumber>, <invoice>, and so on.
Um, that's it. Well okay, there is a lot more detail than that, but there lies the essence of XML.
Now, somewhere along the line, XML developed the ability to solve all your IT problems effortlessly and instantaneously, seriously impress the boss, bolster your CV, and bake bread all at the same time. Now lets face it, the IT industry basically runs on hype so we should not be too surprised when the hype machine goes into overdrive with XML. Especially when all the seriously big players in the industry seem to be falling over themselves in the rush to heap fulsome praise and magic powers on a poor, unsuspecting, three-letter acronym.
I can live with the hype and so can you. Goodness knows we have had enough practice. The part that I have difficulty with, and I suggest you might like to have difficulty with it too, is the idea that information stored and/or transmitted in XML form is somehow guaranteed to be open and non-proprietary. It is not true. Let me repeat and rephrase for emphasis.
It is just not true that information stored and/or transmitted in XML form is guaranteed to be open and non-proprietary.
I have heard vendors say "all the data in our system is in XML, therefore our systems are completely open". More worrisome, I have heard senior management of large corporations and state institutions saying similar things.
Here is the problem. XML is really two separate things. Firstly, it is a syntax that facilitates the creation of self-describing information. Secondly, it is a spirit that exhorts both vendors and information stakeholders of all forms to seize the opportunity to make information open and non-proprietary. The trouble is that the statement "100 per cent XML compliant" refers only to the syntax, not the spirit. It is entirely possible to create closed, proprietary IT systems that are 100% XML based.
Storing the contents of a Word document, a Lotus 123 spreadsheet, or a Postscript file in XML format is trivial. No magic occurs when you do this. The information content of those formats is still locked in, regardless of the syntax used to store the information. So the next time somebody tries to tell you that XML compliance in what they are trying to sell you ensures open and non-proprietary data, you have entered a reality distortion field. You have been warned.
XML is an awesome technology with tremendous potential that is changing the face of Information Technology as you read this, but no technology, XML included, can magically ensure that your data remains independent of any one vendor or computer system. Only you can do that. By ensuring you apply the sprit as well as the syntax of XML to you business.
Sean is co-founder and Chief Technology Officer of Propylon and is an industry–recognised XML expert.