diff options
Diffstat (limited to 'xsd-examples/cxx/parser/wildcard/README')
-rw-r--r-- | xsd-examples/cxx/parser/wildcard/README | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/xsd-examples/cxx/parser/wildcard/README b/xsd-examples/cxx/parser/wildcard/README new file mode 100644 index 0000000..181a2d8 --- /dev/null +++ b/xsd-examples/cxx/parser/wildcard/README @@ -0,0 +1,45 @@ +This example shows how to parse the XML data matched by XML Schema +wildcards (any and anyAttribute) in the C++/Parser mapping. The +example consists of the following files: + +email.xsd + XML Schema which describes a simple email format with the + extensible envelope type. + +email.xml + Sample email message. + +email-pskel.hxx +email-pskel.cxx + Parser skeletons generated by the XSD compiler from email.xsd using the + following command line: + + xsd cxx-parser email.xsd + + Or if using Expat instead of Xerces-C++ as the underlying XML parser: + + xsd cxx-parser --xml-parser=expat email.xsd + +driver.cxx + Parser implementations and a driver for the example. The + parser implementations simply print the data to STDERR. + The driver first constructs parser instances from the + parser implementations mentioned above and a couple of + predefined parsers for the XML Schema built-in types. + In then invokes the parser instances to parse the input + file. + +To compile and link the example manually from the command line we can use +the following commands (replace 'c++' with your C++ compiler name): + +c++ -c email-pskel.cxx +c++ -c driver.cxx +c++ -o driver driver.o email-pskel.o -lxerces-c + +Or if using Expat as the underlying XML parser: + +c++ -o driver driver.o email-pskel.o -lexpat + +To run the example on the sample XML instance document execute: + +./driver email.xml |