This example shows how to use 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
  hello.xsd.


driver.cxx
  Driver for the example. It first calls one of the parsing functions
  that constructs the in-memory representation from an 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.
