How long will documents be used?

One of the most interesting and simultaneously most frustrating aspects of XML is that developers can rarely count on their documents having one and only one use. Because XML is such an open format, it's always possible to apply a different set of processing tools to the same information. While this may seem unappealing or unlikely to some developers, it's actually one of XML's greatest strengths. XML's harsh insistence on a common syntax also means that programmers can develop tools which use that syntax in a wide variety of ways.

Messages intended for use only on the wire may seem like transient bits with no chance of later (and different) processing, but there are all kinds of scenarios where documents with only one acceptable kind of processing and a brief lifespan turn into important and minable information source which can be used by a wide variety of applications.

RPC calls and similar short messages may be processed and discarded, but the sender, recipient, or an intermediary may store copies of those messages for regulatory, administrative, or other reasons. Because the messages are XML, they are easily stored, reprocessed, and reused by anyone who takes the time to investigate them.

Developers may not want to consider the unknown future of their information, which may prove to be more permanent than their software. The risk of information permanence is real, however, and although XML wasn't designed explicitly to encourage it, it certainly makes it more likely. Thinking ahead, considering the prospect that other people will want or need to use your information and the document structures you in circumstances you can't predict, should be yet another reason to be very careful in your markup design.

Monastic XML Copyright 2002 Simon St.Laurent.