Re: What is the logic of storing XML in a Database?

From: Bernard Peek <>
Date: 28 Mar 2007 12:21:24 GMT
Message-ID: <>

On 2007-03-28, Cimode <> wrote:

> What advantage of XML as a transport format do you see over let's say
> a CSV file with an integrated header?

There's nothing that you can do with XML that can't be done in other ways. But of course there's very little that you can do with a computer that you can't eventually do with pencil and paper. Not all of the advantages of XML are immediately obvious.

From my experience of replacing legacy formats with XML the main benefits are:

Data can be validated before it's transmitted. Validation against a schema will trap most major errors. It will trap most of the minor errors that would normally require action by an expensive and extremely bored human being. Therefore it reduces processing costs and staff turnover.

Errors are rejected by a machine. That usually makes it the sender's responsibility to check and correct the data. Making that unambiguous saves a lot of time and endless arguments between business partners.

Code to handle XML is standardised and therefore doesn't need to be rewritten for each individual application. This makes it more reliable and cheaper to develop and maintain.

It is difficult to extend CSV systems boyond the simple flat-file system with a single record type. Traditionally, at least in the systems I've worked with, the solution is to denormalise the data from more than one table. Therefore CSV is usually more verbose than XML and can take up much more storage space. (The storage space argument isn't one I usually have a lot of time for - it's not usually worth bothering with.)

XML data is not generally manually edited, this is a huge advantage. Fixing manually prepared data files soaks up vast amounts of time and effort. It's more likely that XML files will be generated and read by automated systems than by someone typing data. That makes XML data much more reliable than CSV.

In search of cognoscenti
Received on Wed Mar 28 2007 - 14:21:24 CEST

Original text of this message