|author||Karen Arutyunov <email@example.com>||2020-12-18 18:48:46 +0300|
|committer||Karen Arutyunov <firstname.lastname@example.org>||2021-02-25 13:45:48 +0300|
Switch to build2
Diffstat (limited to 'xsd-examples/cxx/tree/order/mixed/README')
1 files changed, 45 insertions, 0 deletions
diff --git a/xsd-examples/cxx/tree/order/mixed/README b/xsd-examples/cxx/tree/order/mixed/README
new file mode 100644
@@ -0,0 +1,45 @@
+This example shows how to use ordered types to capture mixed content
+text and to maintain order information between elements and text.
+In this example we use mixed content model to describe text with
+embedded links in the form:
+ This paragraph talks about <a href="uri">time</a>.
+The example transforms such text into plain text with references in
+ This paragraph talks about time[uri].
+It also saves the modified text back to XML in order to verify the
+element and text order.
+The example consists of the following files:
+ XML Schema which describes "text with links" instance documents.
+ Sample XML instance document.
+ C++ types that represent the given vocabulary as well as a set of
+ parsing and serialization functions. These are generated by XSD
+ from text.xsd. Note that the --ordered-type-mixed option is used
+ to indicate to the XSD compiler that all types with mixed content
+ should be automatically treated as ordered.
+ Driver for the example. It first calls one of the parsing functions
+ that constructs the object model from the input XML file. It then
+ iterates over the text and elements in the content order to convert
+ the document to its plain text representation. The driver then adds
+ another paragraph of text and a link to the object model while showing
+ how to maintain the content order. Finally, it saves the modified
+ text back to XML to verify that the content order is preserved in
+ the output document.
+To run the example on the sample XML instance document simply execute:
+$ ./driver text.xml