Technical

We're going to use XML!

PINT Team

Every time we hear the exclamation “we’re going to use XML” a small shiver runs through our collective technical spines. What exactly did the speaker mean by this statement? Did they mean they planned on using a well known XML-based vocabulary or language to store their data? Or maybe they meant they were going to define their own XML-based language to store or exchange data? Or maybe they were going to have an ad-hoc application of XML syntax rules to undocumented collections of tags with no specification? Unfortunately it is very likely that the third point is the case.

If you don’t follow XMLese what we’re saying here is that most likely the “XML fan” plans on inventing a set of tags like <item>, <name>, <price>, <qty> and so on and storing their data in it. For example,

<item>
<name>iPhone</name>
<price>699</price>
<qty>1</qty>
</item>

Now there seems to be nothing wrong with this. The well-formedness rules of XML will force us to nest our tags properly, case them properly, use quotes appropriately, not forget all the close tags and the various other little markup things we should do that browsers tend to correct for us. That’s all fine and well, well-formedness rules are great to enforce syntax, but what about semantics?

What is the specification of this language? What tags are allowed? What should they contain? What do they mean? With such a simple language this isn’t too difficult to deal with, but what is going to happen when life gets a bit more complicated? Suddenly we are adding in tags and tags and on and on and on. Now how are you going to deal with documents that conform to the old version of the language without all the newly introduced tags? Will you write tools to migrate them? How will you create these documents? Who will teach the language to the new employees who write documents in the language or develop the code that handles these documents? The power of XML has just allowed you to create your own proprietary language with all the nasty implications that comes with that.

Don’t get us wrong, XML is a tremendous technology, but it seems doomed to repeat all the failings of its predecessor, SGML, and then some given its wider use. Yet we do think it will ultimately succeed and in data interchange and storage projects you really must consider XML data formats, they are the way to go. XML can be the “concrete” foundation of your site or application but just like with that useful substance, you can create quite a monstrous mess that is hard to deal with if you misuse it.

Related Articles

Designing for Digital and Print

Having consistent messaging, look, and feel is essential to providing a seamless experience for users. Translating that across digital and print can be a challenge. ...

Rob McFarlane
By Rob McFarlane
Oct 29th, 2018

All The Tests: PINT’s Overview of Web Testing

To help you get started with testing, we’ve compiled some of the basics: Types of Tests you’ll want to consider and the concept of The Testing Pyramid. ...

Preston Resenbeck
By Preston Resenbeck
Sep 18th, 2018

Tell us about your project

Please fill out your information and submit
X