You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by an...@locus.apache.org on 2000/01/28 23:46:00 UTC

cvs commit: xml-xerces/java/docs faq-performance.xml javapurecheck.xml sam-domcount.xml sam-domfilter.xml sam-domwriter.xml sam-treeview.xml

andyc       00/01/28 14:46:00

  Added:       java/docs faq-performance.xml javapurecheck.xml
                        sam-domcount.xml sam-domfilter.xml
                        sam-domwriter.xml sam-treeview.xml
  Log:
  Adding new docs.
  
  Revision  Changes    Path
  1.1                  xml-xerces/java/docs/faq-performance.xml
  
  Index: faq-performance.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE faqs SYSTEM "sbk:/style/dtd/faqs.dtd">
  
  <faqs title="Performance FAQs">
  
  	<faq title="General Performance">
  		<q>General Performance</q>
  		<a><p>Don't use XML where it doesn't make sense. XML is not a panacea. 
  		You will not get good performance by transferring and parsing a 
  		lot of XML files. </p>
  		<p>Using XML is memory, CPU, and network intensive.</p></a>
  	</faq>
  	
  	<faq title="Parser Performance">
  		<q>Parser Performance</q>
  		<a><p>Avoid creating a new parser each time you parse; reuse parser 
  		instances. A pool of reusable parser instances might be a good idea 
  		if you have multiple threads parsing at the same time.</p>
  		</a>
  	</faq>
  	<faq title="Parsing Documents Performance">
  		<q>Parsing Documents Performance</q>
  		<a><ul>
  			<li>Convert the document to US ASCII ("US-ASCII") or Unicode 
  			("UTF-8" or "UTF-16") before parsing. Documents written using 
  			ASCII are the fastest to parse because each character is 
  			guaranteed to be a single byte and map directly to their 
  			equivalent Unicode value. For documents that contain Unicode 
  			characters beyond the ASCII range, multiple byte sequences 
  			must be read and converted for each character. There is a 
  			performance penalty for this conversion. The UTF-16 encoding 
  			alleviates some of this penalty because each character is 
  			specified using two bytes, assuming no surrogate characters. 
  			However, using UTF-16 can roughly double the size of the 
  			original document which takes longer to parse.</li>
  			<li>Explicitly specify "US-ASCII" encoding if your document is in 
  			ASCII format. If no encoding is specified, the XML specification 
  			requires the parser to assume UTF-8 which is slower to process.</li>
  			<li>Avoid external entities and external DTDs. The extra file 
  			opens and transcoding setup is expensive.</li>
  			<li>Reduce character count; smaller documents are parsed quicker. 
  			Replace elements with attributes where it makes sense. Avoid 
  			gratuitous use of whitespace because the parser must scan past it.</li>
  			<li>Avoid using too many default attributes. Defaulting 
  			attribute values slows down processing.</li>
  		</ul>
  		</a>
  	</faq>
  	<faq title="XML Application Performance">
  		<q>XML Application Performance</q>
  		<a><ul>
  			<li>Turn validation off if you don't need it. Validation is 
  			expensive. Also, avoid using a DOCTYPE line in your XML document. 
  			The current version of the parser will always read the DTD if the 
  			DOCTYPE line is specified even when not validating.</li>
  			<li>For large documents, avoid using DOM which uses a lot of 
  			memory. Instead, use SAX if appropriate. The DOM parser requires 
  			that the entire document be read into memory before the 
  			application processes the document. The SAX parser uses very 
  			little memory and notifies the application as parts of the 
  			document are parsed.</li>
  		</ul>
  		</a>
  	</faq>
  </faqs>
  
  
  
  1.1                  xml-xerces/java/docs/javapurecheck.xml
  
  Index: javapurecheck.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd">
  
  <s1 title="JavaPureCheck Output">
  	<s2 title="JavaPureCheck Results">
  <source>###################### JavaPureCheck Report ##########################
  #      
  #      Generated on          : January 26, 2000 10:34:32 AM PST
  #      System Model Version  : jdk11
  #      JavaPureCheck Version : 3.15	
  #      Rule Base Version     : 1.92
  #      
  #      Summary: 
  #      
  #      PURE: 339 	WARNING: 9 	ERROR: 0
  #      
  #      Final Result   :  WARNING
  #      
  ######################################################################
  
  Class: org.xml.sax.InputSource
  Status: PURE
  
  Class: org.xml.sax.misc.LexicalHandler
  Status: PURE
  
  Class: org.xml.sax.misc.NamespaceHandler
  Status: PURE
  
  Class: org.xml.sax.misc.DeclHandler
  Status: PURE
  
  Class: org.xml.sax.SAXNotSupportedException
  Status: PURE
  
  Class: org.xml.sax.AttributeList
  Status: PURE
  
  Class: org.xml.sax.SAXNotRecognizedException
  Status: PURE
  
  Class: org.xml.sax.DTDHandler
  Status: PURE
  
  Class: org.xml.sax.ErrorHandler
  Status: PURE
  
  Class: org.xml.sax.DocumentHandler
  Status: PURE
  
  Class: org.xml.sax.SAXException
  Status: PURE
  
  Class: org.xml.sax.helpers.LocatorImpl
  Status: PURE
  
  Class: org.xml.sax.helpers.ConfigurableParserAdapter
  Status: PURE
  
  Class: org.xml.sax.helpers.ParserFactory
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.xml.sax.helpers.AttributeListImpl
  Status: PURE
  
  Class: org.xml.sax.SAXParseException
  Status: PURE
  
  Class: org.xml.sax.Parser
  Status: PURE
  
  Class: org.xml.sax.EntityResolver
  Status: PURE
  
  Class: org.xml.sax.HandlerBase
  Status: PURE
  
  Class: org.xml.sax.Locator
  Status: PURE
  
  Class: org.xml.sax.Configurable
  Status: PURE
  
  Class: org.apache.xml.serialize.HTMLSerializer
  Status: PURE
  
  Class: org.apache.xml.serialize.BaseMarkupSerializer
  Status: PURE
  
  Class: org.apache.xml.serialize.SerializerFactory
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xml.serialize.Serializer
  Status: PURE
  
  Class: org.apache.xml.serialize.OutputFormat$DTD
  Status: PURE
  
  Class: org.apache.xml.serialize.OutputFormat$Defaults
  Status: PURE
  
  Class: org.apache.xml.serialize.OutputFormat
  	Warning: possible hard-coded path: text/xml
  	Note: Defines a bad path
  	Explanation: 	&lt;Explanation required&gt;
  	Warning: possible hard-coded path: text/plain
  	Note: Defines a bad path
  	Explanation: 	&lt;Explanation required&gt;
  	Warning: possible hard-coded path: application/pdf
  	Note: Defines a bad path
  	Explanation: 	&lt;Explanation required&gt;
  	Warning: possible hard-coded path: text/html
  	Note: Defines a bad path
  	Explanation: 	&lt;Explanation required&gt;
  	Warning: possible hard-coded path: -//W3C//DTD XHTML 1.0 Strict//EN
  	Note: Defines a bad path
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xml.serialize.Method
  Status: PURE
  
  Class: org.apache.xml.serialize.SerializerFactoryImpl
  Status: PURE
  
  Class: org.apache.xml.serialize.HTMLdtd
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xml.serialize.XMLSerializer
  Status: PURE
  
  Class: org.apache.xml.serialize.XHTMLSerializer
  Status: PURE
  
  Class: org.apache.xml.serialize.ElementState
  Status: PURE
  
  Class: org.apache.xml.serialize.TextSerializer
  Status: PURE
  
  Class: org.apache.xml.serialize.LineSeparator
  Status: PURE
  
  Class: org.apache.xml.serialize.DOMSerializer
  Status: PURE
  
  Class: org.apache.html.dom.HTMLDirectoryElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableRowElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableColElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFieldSetElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLModElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableSectionElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLDocumentImpl
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.html.dom.NameNodeListImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLStyleElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLBuilder
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFontElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLMetaElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTextAreaElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLPreElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLUListElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLOptionElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLHRElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLLabelElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableCaptionElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLBaseFontElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLMenuElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLQuoteElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLObjectElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLSelectElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFormElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLScriptElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLBRElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLOListElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLImageElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLBaseElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFrameElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLHtmlElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLParagraphElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLDivElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLLIElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLHeadElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLOptGroupElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLButtonElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTableCellElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLInputElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLBodyElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLAreaElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLHeadingElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLLegendElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLCollectionImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFormControl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLParamElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLDOMImplementationImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLTitleElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLMapElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLDListElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLAppletElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLIFrameElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLFrameSetElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLAnchorElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLIsIndexElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.HTMLLinkElementImpl
  Status: PURE
  
  Class: org.apache.html.dom.CollectionIndex
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$XMLDeclDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner
  Status: PURE
  
  Class: org.apache.xerces.framework.Version
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLContentSpecNode
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$TrailingMiscDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLValidator$ContentSpec
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDTDScanner$EventHandler
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLAttrList
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLParser$NullReader
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLParser$ReaderState
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$EventHandler
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLValidator
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$PrologDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLErrorReporter
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$ScannerDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$EndOfInputDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLParser
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher
  Status: PURE
  
  Class: org.apache.xerces.framework.XMLDTDScanner
  Status: PURE
  
  Class: org.apache.xerces.domx.DOMException
  Status: PURE
  
  Class: org.apache.xerces.domx.XGrammarWriter
  Status: PURE
  
  Class: org.apache.xerces.domx.XGrammarWriter$OutputFormat
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLEntityHandler$EntityReader
  Status: PURE
  
  Class: org.apache.xerces.readers.StreamingCharReader$DeferredError
  Status: PURE
  
  Class: org.apache.xerces.readers.StringReader
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xerces.readers.UTF8CharReader
  Status: PURE
  
  Class: org.apache.xerces.readers.CharReader
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLDeclRecognizer
  Status: PURE
  
  Class: org.apache.xerces.readers.XCatalog
  Status: PURE
  
  Class: org.apache.xerces.readers.UCSReader
  Status: PURE
  
  Class: org.apache.xerces.readers.DefaultReaderFactory
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLEntityHandler$CharBuffer
  Status: PURE
  
  Class: org.apache.xerces.readers.UTF8Recognizer
  Status: PURE
  
  Class: org.apache.xerces.readers.StreamingCharReader
  Status: PURE
  
  Class: org.apache.xerces.readers.UCSRecognizer
  Status: PURE
  
  Class: org.apache.xerces.readers.XCatalog$Parser
  Status: PURE
  
  Class: org.apache.xerces.readers.UTF8Reader
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLEntityReaderFactory
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLEntityReader
  Status: PURE
  
  Class: org.apache.xerces.readers.XCatalog$Parser$Resolver
  Status: PURE
  
  Class: org.apache.xerces.readers.AbstractCharReader$DeferredError
  Status: PURE
  
  Class: org.apache.xerces.readers.AbstractCharReader
  Status: PURE
  
  Class: org.apache.xerces.readers.MIME2Java
  Status: PURE
  
  Class: org.apache.xerces.readers.UTF8Recognizer$XMLDeclReader
  Status: PURE
  
  Class: org.apache.xerces.readers.EBCDICRecognizer
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLEntityHandler
  Status: PURE
  
  Class: org.apache.xerces.readers.XMLCatalogHandler
  Status: PURE
  
  Class: org.apache.xerces.parsers.RevalidatingDOMParser
  Status: PURE
  
  Class: org.apache.xerces.parsers.SAXParser
  Status: PURE
  
  Class: org.apache.xerces.parsers.DOMParser
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xerces.validators.datatype.InvalidDatatypeValueException
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.BooleanValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.DecimalValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.IllegalFacetException
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.DatatypeMessageProvider
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.InternalDatatypeValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.UnknownFacetException
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.DatatypeValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.IntegerValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.TimeDurationValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.DoubleValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.IllegalFacetValueException
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.StringValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.FloatValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.TimeInstantValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.datatype.RealValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMStateSet
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$EventHandler
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttributeValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMNode
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.SimpleContentModel
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorENTITY
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMLeaf
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorID
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorENTITIES
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMBinOp
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorNOTATION
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DFAContentModel
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorIDREF
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorIDREFS
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorNMTOKENS
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.ElementDeclPool
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMException
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.CMUniOp
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.EntityPool$RequiredNotation
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorCDATA
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$AttValidatorNMTOKEN
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.XMLContentModel
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.InsertableElementsInfo
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator
                              $AttValidatorENUMERATION
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.DTDValidator$ContentSpecImpl
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.EntityPool
  Status: PURE
  
  Class: org.apache.xerces.validators.dtd.MixedContentModel
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XSchemaValidator
                                   $DatatypeValidatorRegistry
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XSchemaValidator
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.DatatypeContentModel
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XUtil
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XSchemaValidator$ErrorHandler
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.SchemaMessageProvider
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XSchemaValidator$Resolver
  Status: PURE
  
  Class: org.apache.xerces.validators.schema.XSchemaValidator$1
  Status: PURE
  
  Class: org.apache.xerces.utils.StringPool
  Status: PURE
  
  Class: org.apache.xerces.utils.SymbolCache
  Status: PURE
  
  Class: org.apache.xerces.utils.CharDataChunk
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xerces.utils.ChunkyByteArray
  Status: PURE
  
  Class: org.apache.xerces.utils.NamespacesScope$NamespacesHandler
  Status: PURE
  
  Class: org.apache.xerces.utils.XMLMessages
  Status: PURE
  
  Class: org.apache.xerces.utils.StringHasher
  Status: PURE
  
  Class: org.apache.xerces.utils.StringPool$StringProducer
  Status: PURE
  
  Class: org.apache.xerces.utils.XMLMessageProvider
  Status: PURE
  
  Class: org.apache.xerces.utils.ImplementationMessages
  Status: PURE
  
  Class: org.apache.xerces.utils.ChunkyCharArray
  Status: PURE
  
  Class: org.apache.xerces.utils.NamespacesScope
  Status: PURE
  
  Class: org.apache.xerces.utils.UTF8DataChunk
  	Warning: method reference: java.lang.Class.forName(java.lang.String)
  	Note: May load impure class
  	Explanation: 	&lt;Explanation required&gt;
  Status: WARNING
  
  Class: org.apache.xerces.utils.StringPool$CharArrayRange
  Status: PURE
  
  Class: org.apache.xerces.utils.XMLCharacterProperties
  Status: PURE
  
  Class: org.apache.xerces.msg.XMLMessages
  Status: PURE
  
  Class: org.apache.xerces.msg.SchemaMessages
  Status: PURE
  
  Class: org.apache.xerces.msg.ImplementationMessages
  Status: PURE
  
  Class: org.apache.xerces.msg.DatatypeMessages
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredNotationImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredEntityImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredNode
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredProcessingInstructionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredDocumentTypeImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.TreeWalkerImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredEntityReferenceImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NotationImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.events.EventImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.events.MutationEventImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DOMImplementationImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NodeImpl$EnclosingAttr
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredCommentImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredElementImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DocumentTypeImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NodeImpl$LEntry
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredElementNSImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.ElementDefinitionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredTextImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DocumentFragmentImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredDocumentImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredDocumentImpl$IntVector
  Status: PURE
  
  Class: org.apache.xerces.dom.CharacterDataImpl$1
  Status: PURE
  
  Class: org.apache.xerces.dom.CommentImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NodeIteratorImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DOMExceptionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.CharacterDataImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.ElementNSImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.AttrNSImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.LCount
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredCDATASectionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredAttrNSImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeepNodeListImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NodeImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.ProcessingInstructionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.AttrImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.CDATASectionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.ElementImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredAttrImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NodeContainer
  Status: PURE
  
  Class: org.apache.xerces.dom.TextImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.EntityReferenceImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DocumentImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.DeferredElementDefinitionImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.NamedNodeMapImpl
  Status: PURE
  
  Class: org.apache.xerces.dom.EntityImpl
  Status: PURE
  
  Class: org.w3c.dom.DocumentType
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLBodyElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLUListElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLLabelElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLObjectElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLOptGroupElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLDivElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLBaseElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLAnchorElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLLIElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLBRElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTitleElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLFieldSetElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLDOMImplementation
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLFrameSetElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLFrameElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableRowElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableColElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLScriptElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLHeadingElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLMapElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTextAreaElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLIFrameElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLDocument
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLModElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLDirectoryElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLMenuElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLButtonElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLParagraphElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLHRElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLFontElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLBaseFontElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLLegendElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLStyleElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLOListElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLOptionElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableCellElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLFormElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLLinkElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableCaptionElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLInputElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLMetaElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLParamElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLPreElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLSelectElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLCollection
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLQuoteElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLHeadElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLAreaElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLAppletElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLHtmlElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLIsIndexElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLImageElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLTableSectionElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLElement
  Status: PURE
  
  Class: org.w3c.dom.html.HTMLDListElement
  Status: PURE
  
  Class: org.w3c.dom.ProcessingInstruction
  Status: PURE
  
  Class: org.w3c.dom.traversal.NodeIterator
  Status: PURE
  
  Class: org.w3c.dom.traversal.NodeFilter
  Status: PURE
  
  Class: org.w3c.dom.traversal.TreeWalker
  Status: PURE
  
  Class: org.w3c.dom.traversal.DocumentTraversal
  Status: PURE
  
  Class: org.w3c.dom.Attr
  Status: PURE
  
  Class: org.w3c.dom.CDATASection
  Status: PURE
  
  Class: org.w3c.dom.DocumentFragment
  Status: PURE
  
  Class: org.w3c.dom.Comment
  Status: PURE
  
  Class: org.w3c.dom.Text
  Status: PURE
  
  Class: org.w3c.dom.DOMImplementation
  Status: PURE
  
  Class: org.w3c.dom.Element
  Status: PURE
  
  Class: org.w3c.dom.DOMException
  Status: PURE
  
  Class: org.w3c.dom.EntityReference
  Status: PURE
  
  Class: org.w3c.dom.events.MutationEvent
  Status: PURE
  
  Class: org.w3c.dom.events.EventListener
  Status: PURE
  
  Class: org.w3c.dom.events.EventTarget
  Status: PURE
  
  Class: org.w3c.dom.events.EventException
  Status: PURE
  
  Class: org.w3c.dom.events.Event
  Status: PURE
  
  Class: org.w3c.dom.events.DocumentEvent
  Status: PURE
  
  Class: org.w3c.dom.Document
  Status: PURE
  
  Class: org.w3c.dom.NodeList
  Status: PURE
  
  Class: org.w3c.dom.Notation
  Status: PURE
  
  Class: org.w3c.dom.NamedNodeMap
  Status: PURE
  
  Class: org.w3c.dom.CharacterData
  Status: PURE
  
  Class: org.w3c.dom.Node
  Status: PURE
  
  Class: org.w3c.dom.Entity
  Status: PURE
  
  Final Result   :  WARNING</source>
  	</s2>
  </s1>
  
  
  
  1.1                  xml-xerces/java/docs/sam-domcount.xml
  
  Index: sam-domcount.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd">
  
  <s1 title="SAX/DOMCount Samples">
  	<s2 title="Running SAXCount and DOMCount">
  		<p>SAXCount and DOMCount invoke the parser 
  		on an XML document, and print out information about the 
  		document. By default, SAXCount creates a non-validating 
  		SAX parser and DOMCount creates a validating DOM parser. 
  		They both count the number of elements, attributes, text characters, 
  		and ignorable whitespace characters in the document and display the 
  		amount of time it takes to complete the task. </p>
  		<p>The command lines below expect 
  		the current directory to be the directory containing the JAR file.</p>
  		<p>Requirements:</p>
  		<ul>
  			<li>&javaparsername; is loaded on your computer.</li>
  			<li>JDK is loaded on your computer.</li>
  		</ul>
  		<p>Source code: </p>
  		<ul>
  			<li>SAXCount.java</li>
  			<li>DOMCount.java</li>
  		</ul>
  	</s2>
  
  	<s2 title="SAXCount">
  		<p><em>To run SAXCount:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>SAXCount</code> parser</li>
  		</ol>
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then the <code>SAXCount</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: drive.</p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%
  cd c:\&javaparserdirectory;
  java sax.SAXCount data\personal.xml</source>
  
  		<p><em>Switches:</em></p>
  		<p>SAXCount also allows you to change the default behavior using the 
  		following command line flags: </p>
  		<ul>
  			<li>-p Specify the parser class to be used.
  			<br/>The available parsers are:</li>
  			<ul>
  				<li>org.apache.xerces.parsers.SAXParser [default parser]</li>
  			</ul>
  			<li>-h Print SAXCount help information. [default is no help]</li>
  			<li>-v Turn on validation</li>
  		</ul>
  		<p>Running SAXCount with the default settings is equivalent to 
  		running SAXCount like this (type this in as one long command line): </p>
  <source>java sax.SAXCount -p org.apache.xerces.parsers.SAXParser 
      data\personal.xml </source>
  		<p>Bringing up the help information: </p>
  <source>java sax.SAXCount -h </source>
  		<note>Parse your own XML file instead of data\personal.xml</note>
  	</s2>
  	
  	<s2 title="DOMCount">
  		<p><em>To run DOMCount:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>DOMCount</code> parser</li>
  		</ol>
  		
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then the <code>DOMCount</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: dirve.</p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%
  cd c:\&javaparserdirectory;
  java dom.DOMCount data\personal.xml</source>
  
  		<p><em>Switches:</em></p>
  		<p>DOMCount also allows you to change the default behavior via the 
  		following command line flags (type this in as one long command line): </p>
  		<ul>
  			<li>-p Specify the parser class to be used.
  			<br/>The available parsers are:</li>
  			<ul>
  				<li>dom.wrappers.NonValidatingDOMParser</li>
  				<li>dom.wrappers.DOMParser [default parser]</li>
  			</ul>
  			<li>-h Print DOMCount help information. [default is no help]</li>
  		</ul>
  		<p>Running DOMCount with the default settings is equivalent to running 
  		<code>DOMCount</code> like this: </p>
  
  <source>java dom.DOMCount -p dom.wrappers.DOMParser 
      data\personal.xml </source>
  		<p>Bringing up the help information: </p>
  <source>java dom.DOMCount -h</source>
  
  		<note>Parse your own XML file instead of data\personal.xml</note>
  
  
  	</s2>
  </s1>
  
  
  
  1.1                  xml-xerces/java/docs/sam-domfilter.xml
  
  Index: sam-domfilter.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd">
  
  <s1 title="DOMFilter Sample">
  	<s2 title="Running DOMFilter">
  		<p><code>DOMFilter</code> parses an XML document, searching for specific elements 
  		by name, or elements with specific attributes.</p>
  		<p>Requirements:</p>
  		<ul>
  			<li>&javaparsername; is loaded on your computer.</li>
  			<li>JDK is loaded on your computer.</li>
  		</ul>
  		<p>Source code: </p>
  		<ul>
  			<li>DOMFilter.java</li>
  		</ul>
  	</s2>
  	
  	<s2 title="DOMFilter">
  		<p><em>To run DOMFilter:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>DOMFilter</code> parser</li>
  		</ol>
  		
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then the <code>DOMFilter</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: dirve.</p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%
  cd c:\&javaparserdirectory;
  java dom.DOMFilter data\personal.xml</source>
  
  		<p><em>Switches:</em></p>
  		<p><code>DOMFilter</code> also allows you to change the default behavior using the 
  		following command line flags (type this in as one long command line): </p>
  		<ul>
  			<li>-p Specify the parser class to be used.
  			<br/>The available parsers are:</li>
  			<ul>
  				<li>dom.wrappers.NonValidatingDOMParser</li>
  				<li>dom.wrappers.DOMParser [default parser]</li>
  			</ul>
  			<li>-h Print DOMCount help information. [default is no help]</li>
  			<li>-e Specify the name of the element to search for. 
  			[defaults to matching all elements]</li>
  			<li>-a Specify the name of the attribute to search for. 
  			[defaults to matching all attributes]</li>
  		</ul>
  		<p>Running <code>DOMFilter</code> with the default settings is 
  		equivalent to running 
  		<code>DOMFilter</code> like this: </p>
  
  <source>java dom.DOMFilter -p dom.wrappers.DOMParser 
      data\personal.xml </source>
  	
  		<p>Bringing up the help information: </p>
  <source>java dom.DOMFilter -h</source>
  	
  		<p>Searching for elements: </p>
  <source>java dom.DOMFilter -e family data\personal.xml</source>
  	
  		<p>Search for attributes: </p>
  <source>java dom.DOMFilter -a subordinates data\personal.xml</source>
  
  		<note>Parse your own XML file instead of data\personal.xml</note>
  
  
  	</s2>
  </s1>
  
  
  
  1.1                  xml-xerces/java/docs/sam-domwriter.xml
  
  Index: sam-domwriter.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd">
  
  <s1 title="SAX/DOMWriter Samples">
  	<s2 title="Running SAXWriter and DOMWriter">
  		<p><code>SAXWriter</code> and <code>DOMWriter</code> parse your input file, 
  		and print it out in XML format.  A command line option can be used to 
  		print in a "canonical" XML format so the output can be used to compare 
  		XML documents. SAXWriter and DOMWriter also display any errors or 
  		warnings that occurred during the parse.</p>
  		<p><code>SAXWriter</code> uses either the validating or non-validating 
  		SAX parser. <code>DOMWriter</code> uses either the validating or 
  		non-validating DOM parser. </p>
  		<p><code>DOMWriter</code> provides a -e switch to set the output 
  		Java encoding. </p>
  		<p>The command lines below expect the current directory to be the 
  		directory containing the JAR file.</p>
  		<p>Requirements:</p>
  		<ul>
  			<li>&javaparsername; is loaded on your computer.</li>
  			<li>JDK is loaded on your computer.</li>
  		</ul>
  		<p>Source code: </p>
  		<ul>
  			<li>SAXWriter.java</li>
  			<li>DOMWriter.java</li>
  		</ul>
  	</s2>
  
  	<s2 title="SAXWriter">
  		<p><em>To run SAXWriter:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>SAXWriter</code> parser</li>
  		</ol>
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then the <code>SAXWriter</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: drive.</p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%
  cd c:\&javaparserdirectory;
  java sax.SAXWriter data\personal.xml</source>
  
  		<p><em>Switches:</em></p>
  		<p>SAXCount also allows you to change the default behavior using the 
  		following command line flags: </p>
  		<ul>
  			<li>-p Specify the parser class to be used.
  			<br/>The available parsers are:</li>
  			<ul>
  				<li>org.apache.xerces.parsers.SAXParser [default parser]</li>
  			</ul>
  			<li>-h Print SAXWriter help information. [default is no help]</li>
  			<li>-c Output in canonical format. [default is normal format] </li>
  		</ul>
  		<p>Running <code>SAXWriter</code> with the default settings is equivalent to 
  		running <code>SAXWriter</code> like this (type this in as one long command line): </p>
  <source>java sax.SAXWriter -p org.apache.xerces.parsers.SAXParser 
      data\personal.xml </source>
  	
  		<p>Bringing up the help information: </p>
  <source>java sax.SAXWriter -h </source>
  
  		<p>Print in canonical format: </p>
  <source>java sax.SAXWriter -c  data\personal.xml</source>
  
  		<note>Parse your own XML file instead of data\personal.xml</note>
  	</s2>
  	
  	<s2 title="DOMWriter">
  		<p><em>To run DOMWriter:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>DOMWriter</code> parser</li>
  		</ol>
  		
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then the <code>DOMWriter</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: dirve.</p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%
  cd c:\&javaparserdirectory;
  java dom.DOMWriter data\personal.xml</source>
  
  		<p><em>Switches:</em></p>
  		<p>DOMCount also allows you to change the default behavior via the 
  		following command line flags (type this in as one long command line): </p>
  		<ul>
  			<li>-p Specify the parser class to be used.
  			<br/>The available parsers are:</li>
  			<ul>
  				<li>dom.wrappers.NonValidatingDOMParser</li>
  				<li>dom.wrappers.DOMParser [default parser]</li>
  			</ul>
  			<li>-h Print DOMWriter help information. [default is no help]</li>
  			<li>-c Output in canonical format. [default is normal format]</li>
  			<li>-e encodingName Output using the specified encoding. [default is UTF8]</li>			
  		</ul>
  		<p>Running <code>DOMWriter</code> with the default settings is equivalent to running 
  		<code>DOMWriter</code> like this: </p>
  
  <source>java dom.DOMWriter -p dom.wrappers.DOMParser 
      data\personal.xml </source>
  	
  		<p>Bringing up the help information: </p>
  <source>java dom.DOMWriter -h</source>
  
  		<p>Searching for elements: </p>
  <source>java dom.DOMWriter -c data\personal.xml</source>
  
  		<p>Running DOMWriter with the -e switch and no encoding specified 
  		will print out a list of valid encoding names: </p>
  <source>java dom.DOMWriter -e</source>
  
  		<p>Prints the following: </p>
  <source>Java Encoding one of (case sensitive):
    Default
    8859_1 8859_2 8859_3 8859_4 8859_5 8859_6 8859_7
    8859_8 8859_9 Cp037 Cp273 Cp277 Cp278 Cp280 
    Cp284 Cp285 Cp297 Cp420 Cp424 Cp437 Cp500
    Cp737 Cp775 Cp838 Cp850 Cp852 Cp855 Cp856
    Cp857 Cp860 Cp861 Cp862 Cp863 Cp864 Cp865
    Cp866 Cp868 Cp869 Cp870 Cp871 Cp874 Cp875
    Cp918 Cp921 Cp922 Cp930 Cp933 Cp935 Cp937
    Cp939 Cp942 Cp948 Cp949 Cp950 Cp964 Cp970
    Cp1006 Cp1025 Cp1026 Cp1046 Cp1097 Cp1098 Cp1112
    Cp1122 Cp1123 Cp1124 Cp1250 Cp1251 Cp1252 Cp1253
    Cp1254 Cp1255 Cp1256 Cp1257 Cp1258 Cp1381 Cp1383
    Cp33722 MS874 DBCS_ASCII DBCS_EBCDIC EUC EUCJIS GB2312
    GBK ISO2022CN_CNS ISO2022CN_GB JIS JIS0208 KOI8_R KSC5601
    MS874 SJIS SingleByte Big5 CNS11643 MacArabic
    MacCentralEurope MacCroatian MacCyrillic MacDingbat
    MacGreek MacHebrew MacIceland MacRoman MacRomania
    MacSymbol MacThai MacTurkish MacUkraine SJIS Unicode 
    UnicodeBig UnicodeLittle UTF8</source>
  
  		<note>Parse your own XML file instead of data\personal.xml</note>
  
  
  	</s2>
  </s1>
  
  
  
  1.1                  xml-xerces/java/docs/sam-treeview.xml
  
  Index: sam-treeview.xml
  ===================================================================
  <?xml version="1.0" standalone="no"?>
  <!DOCTYPE s1 SYSTEM "sbk:/style/dtd/document.dtd">
  
  <s1 title="TreeViewer Sample">
  	<s2 title="Running TreeViewer">
  		<p><code>TreeViewer</code> displays the input file in a graphical tree 
  		based interface. This sample highlights the error handling 
  		capabilities of the parser, demonstrating how the parser can 
  		recover from many types of common errors.  </p>
  		<p>Requirements:</p>
  		<ul>
  			<li>&javaparsername; is loaded on your computer.</li>
  			<li>Either:</li>
  			<ul><li>JDK 1.1.8 and Swing1.1.1 are is loaded on your computer.</li></ul>
  			<li>Or:</li>
  			<ul><li>Java 2 (jdk1.2.2)  is loaded on your computer.</li></ul>
  		</ul>
  		<p>Source code: </p>
  		<ul>
  			<li>TreeViewer.java</li>
  			<li>TreeView.java</li>
  			<li>DOMTree.java</li>
  			<li>DefaultImages.java</li>
  		</ul>
  	</s2>
  
  	<s2 title="TreeViewer">
  		<p><em>To run TreeViewer:</em></p>
  		<ol>
  			<li>open up a MS-DOS command line window</li>
  			<li>set the path to the jdk\bin directory</li>
  			<li>change directory to the latest &javaparserdirectory; directory</li>
  			<li>invoke the <code>TreeViewer</code> parser</li>
  		</ol>
  		
  		<p><em>On Windows:</em></p>
  		<p>The easiest way to do this is to create a .bat file using the 
  		Notepad editor. Then <code>TreeViewer</code> can be invoked by double clicking 
  		on the file name or icon. The following command lines assume that 
  		both the jdk and the &javaparserdirectory; directories are located directly below 
  		the c: dirve.</p>
  		
  		<p><em>With jdk1.1.8:</em></p>
  <source>set path=c:\jdk1.1.8\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%;
  set classpath=c:\Swing-1.1.1\swingall.jar;%CLASSPATH%;
  cd c:\&javaparserdirectory;
  java dom.TreeViewer data\personal.xml</source>
  		
  		<p><em>With jdk1.2.2:</em></p>
  		<p>Swing is included in the Java 2 release and it doesn't required 
  		a separate reference. </p>
  <source>set path=c:\jdk1.2.2\bin;%PATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;.jar;%CLASSPATH%
  set classpath=c:\&javaparserdirectory;\&javaparserdirectory;Samples;%CLASSPATH%;
  cd c:\&javaparserdirectory;
  java dom.TreeViewer data\personal.xml</source>
  
  		<note>Parse your own XML file instead of data\personal.xml</note>
  	</s2>
  </s1>