| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| --> |
| <!DOCTYPE s1 SYSTEM 'dtd/document.dtd'> |
| <s1 title='JAXP Samples'> |
| <s2 title='Overview'> |
| <p> |
| This page documents the various Java API for XML Processing (JAXP) |
| samples included with Xerces. Besides being useful programs, |
| they can be used as JAXP programming examples to learn how to |
| program using the JAXP API. |
| </p> |
| <p>JAXP samples:</p> |
| <ul> |
| <li><link anchor='ParserAPIUsage'>jaxp.ParserAPIUsage</link></li> |
| <li><link anchor='SourceValidator'>jaxp.SourceValidator</link></li> |
| <li><link anchor='InlineSchemaValidator'>jaxp.InlineSchemaValidator</link></li> |
| <li><link anchor='TypeInfoWriter'>jaxp.TypeInfoWriter</link></li> |
| <li><link anchor='DatatypeAPIUsage'>jaxp.DatatypeAPIUsage</link></li> |
| </ul> |
| </s2> |
| <anchor name='ParserAPIUsage'/> |
| <s2 title='Sample jaxp.ParserAPIUsage'> |
| <p> |
| A sample which demonstrates usage of classes in the |
| javax.xml.parsers package, particularly new features introduced |
| in JAXP 1.3, including XInclude processing, integration with |
| the JAXP 1.3 Validation API and parser reset. |
| </p> |
| <s3 title='usage'> |
| <source>java jaxp.ParserAPIUsage (options) uri</source> |
| </s3> |
| <s3 title='options'> |
| <table> |
| <tr><th>Option</th><th>Description</th></tr> |
| <tr><td>-a uri ...</td><td>Provide a list of schema documents.</td></tr> |
| <tr><td>-api (sax|dom)</td><td>Select API to use (sax|dom).</td></tr> |
| <tr><td>-xi | -XI</td><td>Turn on/off XInclude processing.</td></tr> |
| <tr><td>-sp | -SP</td><td>Turn on/off secure processing.</td></tr> |
| <tr><td>-h</td><td>Display help screen.</td></tr> |
| </table> |
| </s3> |
| </s2> |
| <anchor name='SourceValidator'/> |
| <s2 title='Sample jaxp.SourceValidator'> |
| <p> |
| A sample demonstrating how to use the JAXP 1.3 Validation API |
| to create a validator and use the validator to validate input |
| from SAX, DOM or a stream. The output of this program shows the |
| time spent executing the Validator.validate(Source) method. |
| </p> |
| <p> |
| This class is useful as a "poor-man's" performance tester to |
| compare the speed of various JAXP 1.3 validators with different |
| input sources. However, it is important to note that the first |
| validation time of a validator will include both VM class load time |
| and validator initialization that would not be present in subsequent |
| validations with the same document. Also note that when the source for |
| validation is SAX or a stream, the validation time will also include |
| the time to parse the document, whereas the DOM validation is |
| completely in memory. |
| </p> |
| <note> |
| The results produced by this program should never be accepted |
| as true performance measurements. |
| </note> |
| <s3 title='usage'> |
| <source>java jaxp.SourceValidator (options) ...</source> |
| </s3> |
| <s3 title='options'> |
| <table> |
| <tr><th>Option</th><th>Description</th></tr> |
| <tr><td>-l name</td><td>Select schema language by name.</td></tr> |
| <tr><td>-x number</td><td>Select number of repetitions.</td></tr> |
| <tr><td>-a uri ...</td><td>Provide a list of schema documents.</td></tr> |
| <tr><td>-i uri ...</td><td>Provide a list of instance documents to validate.</td></tr> |
| <tr><td>-vs source</td><td>Select validation source (sax|dom|stream).</td></tr> |
| <tr> |
| <td>-f | -F</td> |
| <td> |
| Turn on/off Schema full checking.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-hs | -HS</td> |
| <td> |
| Turn on/off honouring of all schema locations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-va | -VA</td> |
| <td> |
| Turn on/off validation of schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-ga | -GA</td> |
| <td> |
| Turn on/off generation of synthetic schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr><td>-m | -M</td><td>Turn on/off memory usage report.</td></tr> |
| <tr><td>-h</td><td>Display help screen.</td></tr> |
| </table> |
| </s3> |
| <s3 title='notes'> |
| <p> |
| The speed and memory results from this program should NOT be |
| used as the basis of parser performance comparison! Real |
| analytical methods should be used. For better results, perform |
| multiple validations within the same virtual machine to |
| remove class loading from parse time and memory usage. |
| </p> |
| <p> |
| Not all features are supported by different parsers. |
| </p> |
| </s3> |
| </s2> |
| <anchor name='InlineSchemaValidator'/> |
| <s2 title='Sample jaxp.InlineSchemaValidator'> |
| <p> |
| A sample demonstrating how to use the JAXP 1.3 Validation API |
| to create a validator and use the validator to validate input |
| from a DOM which contains inline schemas and multiple validation |
| roots. The output of this program shows the time spent executing |
| the Validator.validate(Source) method. |
| </p> |
| <p> |
| This class is useful as a "poor-man's" performance tester to |
| compare the speed of various JAXP 1.3 validators with different |
| input sources. However, it is important to note that the first |
| validation time of a validator will include both VM class load time |
| and validator initialization that would not be present in subsequent |
| validations with the same document. |
| </p> |
| <note> |
| This sample makes use of the JAXP 1.3 XPath API and requires either |
| a JAXP 1.3 compliant XSLT processor (or JDK 5.0) to run. |
| </note> |
| <note> |
| The results produced by this program should never be accepted |
| as true performance measurements. |
| </note> |
| <s3 title='usage'> |
| <source>java jaxp.InlineSchemaValidator (options) uri ...</source> |
| </s3> |
| <s3 title='options'> |
| <table> |
| <tr><th>Option</th><th>Description</th></tr> |
| <tr><td>-l name</td><td>Select schema language by name.</td></tr> |
| <tr><td>-x number</td><td>Select number of repetitions.</td></tr> |
| <tr><td>-a xpath ...</td><td>Provide a list of XPath expressions for schema roots.</td></tr> |
| <tr><td>-i xpath ...</td><td>Provide a list of XPath expressions for validation roots.</td></tr> |
| <tr><td>-nm pre uri ...</td><td>Provide a list of prefix to namespace URI mappings for the XPath expressions.</td></tr> |
| <tr> |
| <td>-f | -F</td> |
| <td> |
| Turn on/off Schema full checking.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-hs | -HS</td> |
| <td> |
| Turn on/off honouring of all schema locations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-va | -VA</td> |
| <td> |
| Turn on/off validation of schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-ga | -GA</td> |
| <td> |
| Turn on/off generation of synthetic schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr><td>-m | -M</td><td>Turn on/off memory usage report.</td></tr> |
| <tr><td>-h</td><td>Display help screen.</td></tr> |
| </table> |
| </s3> |
| <s3 title='notes'> |
| <p> |
| The speed and memory results from this program should NOT be |
| used as the basis of parser performance comparison! Real |
| analytical methods should be used. For better results, perform |
| multiple validations within the same virtual machine to |
| remove class loading from parse time and memory usage. |
| </p> |
| <p> |
| Not all features are supported by different parsers. |
| </p> |
| </s3> |
| </s2> |
| <anchor name='TypeInfoWriter'/> |
| <s2 title='Sample jaxp.TypeInfoWriter'> |
| <p> |
| Provides a trace of the schema type information for elements and |
| attributes in an XML document. This demonstrates usage of the |
| JAXP 1.3 Validation API, particuarly how to read type information |
| from a TypeInfoProvider. |
| </p> |
| <s3 title='usage'> |
| <source>java jaxp.TypeInfoWriter (options) ...</source> |
| </s3> |
| <s3 title='options'> |
| <table> |
| <tr><th>Option</th><th>Description</th></tr> |
| <tr><td>-l name</td><td>Select schema language by name.</td></tr> |
| <tr><td>-p name</td><td>Select parser by name.</td></tr> |
| <tr><td>-a uri ...</td><td>Provide a list of schema documents.</td></tr> |
| <tr><td>-i uri ...</td><td>Provide a list of instance documents to validate.</td></tr> |
| <tr> |
| <td>-f | -F</td> |
| <td> |
| Turn on/off Schema full checking.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-hs | -HS</td> |
| <td> |
| Turn on/off honouring of all schema locations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-va | -VA</td> |
| <td> |
| Turn on/off validation of schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr> |
| <td>-ga | -GA</td> |
| <td> |
| Turn on/off generation of synthetic schema annotations.<br/> |
| <strong>NOTE:</strong> Not supported by all schema factories and validators. |
| </td> |
| </tr> |
| <tr><td>-h</td><td>Display help screen.</td></tr> |
| </table> |
| </s3> |
| </s2> |
| <anchor name='DatatypeAPIUsage'/> |
| <s2 title='Sample jaxp.DatatypeAPIUsage'> |
| <p> |
| A sample which demonstrates usage of the JAXP 1.3 Datatype API. |
| </p> |
| <s3 title='usage'> |
| <source>java jaxp.DatatypeAPIUsage</source> |
| </s3> |
| </s2> |
| </s1> |