A fair part of my job involves munging data between various formats as part as the never ending task of keeping e-commerce going. The last few days I've been helping a large retailer get their product data into a couple of different formats:
The problem is that these formats are under-documented and not really human friendly. Catalog City wants tab delimited, Kelkoo bar delimited, and Commission Junction (somewhat funky) CSV. This seems so early '90s to me.
The reason I like XML is that it is programmer friendly, consider for example:
ABC101 9.99 An exciting widget
It's pretty obvious what's going on here and if I missed out a field it would stand out. The other advantage is that I could add <sale-price> or <description> and existing programs shoudn't break. Compare this to:
ABC101|9.99|An exiting widget
It's not really self-documenting. There's also the problem of embedded characters, what do I do if the name contains a pipe, or a newline, etc.?