If you have a hammer, everything seems to be a nail. If you've
spent many years in unx environments, you expect all data being
text, because you have powerfull tools to process text files (awk,
grep, wc, etc...). If you come from XML world, you expect data
being XML, because you have powerfull tools to process XML data
(XPath, XQuery, Xslt, ...). If you come from front world, you
expect data being JSon, because you have tools to process JSon
(powerfull tools ? ;-)).
Changing programs is always an easy task, but changing human habits is much more difficult. In my opinion, you should let militarians use text files, and civilians use XML files. But you must provide efficient and easy to use tools to convert - without loss - from one format to the other.
Then, as an XML guy, convert text files to XML, process XML files with XML tools, and send them to civilians. Or process civilians files with XML tools, convert them to text and send them to militarians.
See you,
Christophe
Hi Folks,
In his book Software Tools Brian Kernighan says, “A program should be viewed as just a stage in a larger process. Stages should be simple and easy to connect. Keep data in a standard internal form for text for other programs.” That last part – keep data in a standard form – is particularly interesting.
I am working on a project to map (translate) military air navigation data to a civilian air nav form. What is the standard form? Is the military form – tab-delimited text files (a.k.a., UNIX form) – the standard form? Or is the civilian form – XML – the standard form? Should the military form be maintained as long as possible, processing the data using UNIX tools, and only at the final step is the data converted to XML? Or should the military data be immediately converted to XML and thenceforth use XML tools to process the data, ultimately arriving at the desired XML instance? As an XML person, I took the latter path, but now that I’ve learned a bit about UNIX, I question if that was the best choice.
Thoughts?
/Roger