Class DOMParserImpl

  • All Implemented Interfaces:
    org.apache.xerces.xni.XMLDocumentHandler, org.apache.xerces.xni.XMLDTDContentModelHandler, org.apache.xerces.xni.XMLDTDHandler, org.w3c.dom.DOMConfiguration, org.w3c.dom.ls.LSParser
    Direct Known Subclasses:
    DOMASBuilderImpl

    public class DOMParserImpl
    extends AbstractDOMParser
    implements org.w3c.dom.ls.LSParser, org.w3c.dom.DOMConfiguration
    This is Xerces DOM Builder class. It uses the abstract DOM parser with a document scanner, a dtd scanner, and a validator, as well as a grammar pool.
    Version:
    $Id: DOMParserImpl.java 784915 2009-06-15 18:54:11Z knoaman $
    Author:
    Pavani Mukthipudi, Sun Microsystems Inc., Elena Litani, IBM, Rahul Srivastava, Sun Microsystems Inc.
    • Field Detail

      • NAMESPACES

        protected static final java.lang.String NAMESPACES
        Feature identifier: namespaces.
        See Also:
        Constant Field Values
      • VALIDATION_FEATURE

        protected static final java.lang.String VALIDATION_FEATURE
        Feature id: validation.
        See Also:
        Constant Field Values
      • XMLSCHEMA

        protected static final java.lang.String XMLSCHEMA
        XML Schema validation
        See Also:
        Constant Field Values
      • XMLSCHEMA_FULL_CHECKING

        protected static final java.lang.String XMLSCHEMA_FULL_CHECKING
        XML Schema full checking
        See Also:
        Constant Field Values
      • DYNAMIC_VALIDATION

        protected static final java.lang.String DYNAMIC_VALIDATION
        Dynamic validation
        See Also:
        Constant Field Values
      • NORMALIZE_DATA

        protected static final java.lang.String NORMALIZE_DATA
        Feature identifier: expose schema normalized value
        See Also:
        Constant Field Values
      • DISALLOW_DOCTYPE_DECL_FEATURE

        protected static final java.lang.String DISALLOW_DOCTYPE_DECL_FEATURE
        Feature identifier: disallow docType Decls.
        See Also:
        Constant Field Values
      • HONOUR_ALL_SCHEMALOCATIONS

        protected static final java.lang.String HONOUR_ALL_SCHEMALOCATIONS
        Feature identifier: honour all schemaLocations
        See Also:
        Constant Field Values
      • NAMESPACE_GROWTH

        protected static final java.lang.String NAMESPACE_GROWTH
        Feature identifier: namespace growth
        See Also:
        Constant Field Values
      • TOLERATE_DUPLICATES

        protected static final java.lang.String TOLERATE_DUPLICATES
        Feature identifier: tolerate duplicates
        See Also:
        Constant Field Values
      • fNamespaceDeclarations

        protected boolean fNamespaceDeclarations
        Include namespace declaration attributes in the document.
      • fSchemaType

        protected java.lang.String fSchemaType
      • fBusy

        protected boolean fBusy
    • Constructor Detail

      • DOMParserImpl

        public DOMParserImpl​(java.lang.String configuration,
                             java.lang.String schemaType)
        Constructs a DOM Builder using the standard parser configuration.
      • DOMParserImpl

        public DOMParserImpl​(org.apache.xerces.xni.parser.XMLParserConfiguration config)
        Constructs a DOM Builder using the specified parser configuration.
      • DOMParserImpl

        public DOMParserImpl​(SymbolTable symbolTable)
        Constructs a DOM Builder using the specified symbol table.
      • DOMParserImpl

        public DOMParserImpl​(SymbolTable symbolTable,
                             org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
        Constructs a DOM Builder using the specified symbol table and grammar pool.
    • Method Detail

      • reset

        public void reset()
        Resets the parser state.
        Overrides:
        reset in class AbstractDOMParser
        Throws:
        SAXException - Thrown on initialization error.
      • getDomConfig

        public org.w3c.dom.DOMConfiguration getDomConfig()
        Specified by:
        getDomConfig in interface org.w3c.dom.ls.LSParser
      • getFilter

        public org.w3c.dom.ls.LSParserFilter getFilter()
        When a filter is provided, the implementation will call out to the filter as it is constructing the DOM tree structure. The filter can choose to remove elements from the document being constructed, or to terminate the parsing early.
        The filter is invoked after the operations requested by the DOMConfiguration parameters have been applied. For example, if " validate" is set to true, the validation is done before invoking the filter.
        Specified by:
        getFilter in interface org.w3c.dom.ls.LSParser
      • setFilter

        public void setFilter​(org.w3c.dom.ls.LSParserFilter filter)
        When a filter is provided, the implementation will call out to the filter as it is constructing the DOM tree structure. The filter can choose to remove elements from the document being constructed, or to terminate the parsing early.
        The filter is invoked after the operations requested by the DOMConfiguration parameters have been applied. For example, if " validate" is set to true, the validation is done before invoking the filter.
        Specified by:
        setFilter in interface org.w3c.dom.ls.LSParser
      • setParameter

        public void setParameter​(java.lang.String name,
                                 java.lang.Object value)
                          throws org.w3c.dom.DOMException
        Set parameters and properties
        Specified by:
        setParameter in interface org.w3c.dom.DOMConfiguration
        Throws:
        org.w3c.dom.DOMException
      • getParameter

        public java.lang.Object getParameter​(java.lang.String name)
                                      throws org.w3c.dom.DOMException
        Look up the value of a feature or a property.
        Specified by:
        getParameter in interface org.w3c.dom.DOMConfiguration
        Throws:
        org.w3c.dom.DOMException
      • canSetParameter

        public boolean canSetParameter​(java.lang.String name,
                                       java.lang.Object value)
        Specified by:
        canSetParameter in interface org.w3c.dom.DOMConfiguration
      • getParameterNames

        public org.w3c.dom.DOMStringList getParameterNames()
        DOM Level 3 CR - Experimental. The list of the parameters supported by this DOMConfiguration object and for which at least one value can be set by the application. Note that this list can also contain parameter names defined outside this specification.
        Specified by:
        getParameterNames in interface org.w3c.dom.DOMConfiguration
      • parseURI

        public org.w3c.dom.Document parseURI​(java.lang.String uri)
                                      throws org.w3c.dom.ls.LSException
        Parse an XML document from a location identified by an URI reference. If the URI contains a fragment identifier (see section 4.1 in ), the behavior is not defined by this specification.
        Specified by:
        parseURI in interface org.w3c.dom.ls.LSParser
        Throws:
        org.w3c.dom.ls.LSException
      • parse

        public org.w3c.dom.Document parse​(org.w3c.dom.ls.LSInput is)
                                   throws org.w3c.dom.ls.LSException
        Parse an XML document from a resource identified by an LSInput.
        Specified by:
        parse in interface org.w3c.dom.ls.LSParser
        Throws:
        org.w3c.dom.ls.LSException
      • parseWithContext

        public org.w3c.dom.Node parseWithContext​(org.w3c.dom.ls.LSInput is,
                                                 org.w3c.dom.Node cnode,
                                                 short action)
                                          throws org.w3c.dom.DOMException,
                                                 org.w3c.dom.ls.LSException
        Parse an XML document or fragment from a resource identified by an LSInput and insert the content into an existing document at the position epcified with the contextNode and action arguments. When parsing the input stream the context node is used for resolving unbound namespace prefixes.
        Specified by:
        parseWithContext in interface org.w3c.dom.ls.LSParser
        Parameters:
        is - The LSInput from which the source document is to be read.
        cnode - The Node that is used as the context for the data that is being parsed.
        action - This parameter describes which action should be taken between the new set of node being inserted and the existing children of the context node. The set of possible actions is defined above.
        Throws:
        org.w3c.dom.DOMException - HIERARCHY_REQUEST_ERR: Thrown if this action results in an invalid hierarchy (i.e. a Document with more than one document element).
        org.w3c.dom.ls.LSException
      • getAsync

        public boolean getAsync()
        Specified by:
        getAsync in interface org.w3c.dom.ls.LSParser
        See Also:
        LSParser.getAsync()
      • getBusy

        public boolean getBusy()
        Specified by:
        getBusy in interface org.w3c.dom.ls.LSParser
        See Also:
        LSParser.getBusy()
      • abort

        public void abort()
        Specified by:
        abort in interface org.w3c.dom.ls.LSParser
        Overrides:
        abort in class AbstractDOMParser
        See Also:
        LSParser.abort()
      • startElement

        public void startElement​(org.apache.xerces.xni.QName element,
                                 org.apache.xerces.xni.XMLAttributes attributes,
                                 org.apache.xerces.xni.Augmentations augs)
        The start of an element. If the document specifies the start element by using an empty tag, then the startElement method will immediately be followed by the endElement method, with no intervening methods. Overriding the parent to handle DOM_NAMESPACE_DECLARATIONS=false.
        Specified by:
        startElement in interface org.apache.xerces.xni.XMLDocumentHandler
        Overrides:
        startElement in class AbstractDOMParser
        Parameters:
        element - The name of the element.
        attributes - The element attributes.
        augs - Additional information that may include infoset augmentations
        Throws:
        org.apache.xerces.xni.XNIException - Thrown by handler to signal an error.