The SAXPrint sample parses an XML file and prints out the
contents again in XML (some loss occurs). To run SAXPrint,
enter the following
The following parameters may be set from the command line
![](resources/void.gif) | ![](resources/void.gif) | ![](resources/void.gif) |
![](resources/void.gif) | Usage: SAXPrint [options] file
This program prints the data returned by the various SAX
handlers for the specified input file. Options are NOT case
sensitive.
Options:
-u=xxx Handle unrepresentable chars [fail | rep | ref*]
-v=xxx Validation scheme [always | never | auto*]
-n Enable namespace processing.
-s Enable schema processing.
-x=XXX Use a particular encoding for output (LATIN1*).
-? Show this help
* = Default if not provided explicitly
The parser has intrinsic support for the following encodings:
UTF-8, USASCII, ISO8859-1, UTF-16[BL]E, UCS-4[BL]E,
WINDOWS-1252, IBM1140, IBM037
| ![](resources/void.gif) |
![](resources/void.gif) | ![](resources/void.gif) | ![](resources/void.gif) |
-u=fail will fail when unrepresentable characters are encountered
-u=rep will replace with the substitution character for that codepage
-u=ref will report the character as a reference
-v=always will force validation
-v=never will not use any validation
-v=auto will validate if a DOCTYPE declaration is present in the XML document
Here is a sample output from SAXPrint
![](resources/void.gif) | ![](resources/void.gif) | ![](resources/void.gif) |
![](resources/void.gif) | cd xml4c-3_5_1-linux/samples/data
SAXPrint -v=always personal.xml
<?xml version="1.0" encoding="LATIN1"?>
<personnel>
<person id="Big.Boss">
<name><family>Boss</family> <given>Big</given></name>
<email>chief@foo.com</email>
<link subordinates="one.worker two.worker three.worker
four.worker five.worker"></link>
</person>
<person id="one.worker">
<name><family>Worker</family> <given>One</given></name>
<email>one@foo.com</email>
<link manager="Big.Boss"></link>
</person>
<person id="two.worker">
<name><family>Worker</family> <given>Two</given></name>
<email>two@foo.com</email>
<link manager="Big.Boss"></link>
</person>
<person id="three.worker">
<name><family>Worker</family> <given>Three</given></name>
<email>three@foo.com</email>
<link manager="Big.Boss"></link>
</person>
<person id="four.worker">
<name><family>Worker</family> <given>Four</given></name>
<email>four@foo.com</email>
<link manager="Big.Boss"></link>
</person>
<person id="five.worker">
<name><family>Worker</family> <given>Five</given></name>
<email>five@foo.com</email>
<link manager="Big.Boss"></link>
</person>
</personnel> | ![](resources/void.gif) |
![](resources/void.gif) | ![](resources/void.gif) | ![](resources/void.gif) |
![](resources/note.gif) | SAXPrint does not reproduce the original XML file.
SAXPrint and DOMPrint produce different results because of
the way the two APIs store data and capture events. |