summaryrefslogtreecommitdiff
path: root/examples/cxx/tree/dbxml/README
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cxx/tree/dbxml/README')
-rw-r--r--examples/cxx/tree/dbxml/README45
1 files changed, 45 insertions, 0 deletions
diff --git a/examples/cxx/tree/dbxml/README b/examples/cxx/tree/dbxml/README
new file mode 100644
index 0000000..59e67d0
--- /dev/null
+++ b/examples/cxx/tree/dbxml/README
@@ -0,0 +1,45 @@
+This example shows how to use the C++/Tree mapping on top of the Berkeley
+DB XML embedded XML database. This example is described in detail in the
+"C++/Tree Mapping and Berkeley DB XML Integration Guide" which can be
+found in the documentation/cxx/tree/dbxml directory of the XSD
+distribution.
+
+You will need the Berkeley DB XML libraries[1] installed in order to build
+and run this example. The makefiles and project files for this example link
+to the DB XML library names corresponding to version 2.3.X. Earlier and later
+versions can also be used but may require adjustments to the library names
+being linked to.
+
+Note that due to the incomplete DOM API implementation provided by DB
+XML (as of version 2.3.10), the generated code and your application
+should be compiled with the DBXML_DOM macro defined in order to avoid
+using unsupported parts of the API.
+
+The example consists of the following files:
+
+library.xsd
+ XML Schema which describes a library of books.
+
+library.hxx
+library.cxx
+ C++ types that represent the given vocabulary, a set of parsing
+ functions that convert XML instance documents to a tree-like in-memory
+ object model, and a set of serialization functions that convert the
+ object model back to XML. These are generated by XSD from library.xsd.
+
+driver.cxx
+ Driver for the example. It performs the following four operations on
+ the database:
+
+ * Create a new document in DB from an object model
+ * Create an object model from a document in DB
+ * Create an object model from a document fragment in DB
+ * Update a document fragment in DB from an object model
+
+
+To run the example simply execute:
+
+$ ./driver
+
+
+[1] http://www.sleepycat.com/products/bdbxml.html