For desktop applications, the most commonly supported format for importing and exporting data is the comma-separated value format. So, it makes a lot of sense to develop a utility that converts XML documents to CSV files.
The general requirement for this utility is to convert an XML document to a CSV file. Design considerations dictate that the XML document is of a specific format, that is, that it complies with a specific XML grammar. XML documents in other formats may be transformed into this format using XSLT. Here's a summary of the required functionality.
One qualification needs to be made here. In the strictest terms, the XML instance document does not have to be entirely contained within a single disk file. It may contain external entities that are defined in other XML documents in other disk files. However, this is so uncommon for most of the applications for which this book is targeted that I will stay with the generalization that we process a single XML instance document in a single file.