This example shows how to use the C++/Tree mapping to parse XML instance
documents into a tree-like in-memory data structure, modify this in-memory
representation, and finally serialize it back to XML instance documents.
XML instance documents are described by XML Schema definitions.

The example consist of the following files:

library.xsd
  XML Schema which describes a library of books.

library.xml
  Sample XML instance document.

library.hxx
library.ixx
library.cxx
  Data types that represent the given vocabulary, a set of parsing
  functions that convert XML instance documents to a tree-like in-memory
  data structure, and a set of serialization functions that convert the
  in-memory representation back to XML. These are generated by XSD from
  library.xsd.

driver.cxx
  Driver for the example. It first calls one of the parsing functions
  that constructs the in-memory representation from the input file. It
  then prints the content of the in-memory representation to STDERR.
  Finally, the driver modifies the in-memory representation and
  serializes it back to XML.

To run the example on the sample XML instance document simply execute:

$ ./driver library.xml

This example also shows how to to use the ID/IDREF cross-referencing
mechanism and the xsd:enumeration to C++ enum mapping.
