aboutsummaryrefslogtreecommitdiff
path: root/examples/cxx/hybrid/binary/xdr/README
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cxx/hybrid/binary/xdr/README')
-rw-r--r--examples/cxx/hybrid/binary/xdr/README50
1 files changed, 50 insertions, 0 deletions
diff --git a/examples/cxx/hybrid/binary/xdr/README b/examples/cxx/hybrid/binary/xdr/README
new file mode 100644
index 0000000..e81a149
--- /dev/null
+++ b/examples/cxx/hybrid/binary/xdr/README
@@ -0,0 +1,50 @@
+This example shows how to save/load the C++/Hybrid object model to/from
+XDR (eXternal Data Representation) binary format using XDR streams. The
+XDR API is available out of the box on most POSIX systems as part of Sun
+RPC. On other platforms you may need to install a third-party library
+which provides the XDR API.
+
+The example consists of the following files:
+
+library.xsd
+ XML Schema which describes a library of books.
+
+library.xml
+ Sample XML instance document.
+
+library.hxx
+library.cxx
+
+library-pskel.hxx
+library-pskel.cxx
+library-pimpl.hxx
+library-pimpl.cxx
+
+library-pskel.hxx
+library-pskel.cxx
+library-pimpl.hxx
+library-pimpl.cxx
+ Object model (the first pair of files), parser skeletons (the
+ second pair), parser implementations (the third pair), serializer
+ skeletons (the fourth pair), and serializer implementations (the
+ fifth pair). These files are generated by the XSD/e compiler from
+ library.xsd. The --generate-parser, --generate-serializer, and
+ --generate-aggregate options were used to request the generation
+ of the parsing and serialization code. The --generate-insertion and
+ --generate-extraction options were used to generate the insertion
+ and extraction operations for the XDR streams.
+
+driver.cxx
+ Driver for the example. It first calls the parser that constructs
+ the object model from the input XML file. It then saves the object
+ model to the XDR representation and loads it back. Finally, the
+ driver calls the serializer to serialize the loaded object model
+ back to XML.
+
+To run the example on the sample XML instance document simply execute:
+
+$ ./driver library.xml
+
+The example reads from STDIN if input file is not specified:
+
+$ ./driver <library.xml