path: root/xsd-examples/cxx/tree/xpath/README
diff options
Diffstat (limited to 'xsd-examples/cxx/tree/xpath/README')
1 files changed, 43 insertions, 0 deletions
diff --git a/xsd-examples/cxx/tree/xpath/README b/xsd-examples/cxx/tree/xpath/README
new file mode 100644
index 0000000..1187743
--- /dev/null
+++ b/xsd-examples/cxx/tree/xpath/README
@@ -0,0 +1,43 @@
+This example shows how to use the C++/Tree mapping together with XPath.
+In particular, it shows how to execute an XPath query on the underlying
+DOM document and then handle the result using the more convenient object
+model representation. For more information on maintaining association
+with the underlying DOM document, refer to Section 5.1, "DOM Association"
+in the C++/Tree Mapping User Manual.
+You will need the XQilla library[1] which provides XQuery and XPath 2
+support on top of Xerces-C++ in order to build and run this example.
+The example consists of the following files:
+ XML Schema definition for a simple person record vocabulary.
+ Sample XML instance document.
+ C++ types that represent the person record vocabulary and a set of
+ parsing functions that convert XML instance documents to a tree-like
+ in-memory object model. These are generated by XSD from people.xsd.
+ Definition and implementation of the parse() function that parses an
+ XML document to a DOM document.
+ Driver for the example. It first calls the above parse() function to
+ parse the input file to a DOM document using XQilla-provided DOM
+ Implementation with support for XPath 2. It then parses the DOM
+ document to the object model. Finally, it prepares and executes
+ an XPath query on the underlying DOM document and then handles
+ the result by getting back from the returned DOM nodes to object
+ model nodes.
+To run the example on the sample XML document simply execute:
+$ ./driver people.xml