Class NonValidatingConfiguration

  • All Implemented Interfaces:
    org.apache.xerces.xni.parser.XMLComponentManager, org.apache.xerces.xni.parser.XMLParserConfiguration, org.apache.xerces.xni.parser.XMLPullParserConfiguration

    public class NonValidatingConfiguration
    extends BasicParserConfiguration
    implements org.apache.xerces.xni.parser.XMLPullParserConfiguration
    This is the non validating parser configuration. It extends the basic configuration with the set of following parser components: Document scanner, DTD scanner, namespace binder, document handler.

    Xerces parser that uses this configuration is not conformant non-validating XML processor, since conformant non-validating processor is required to process "all the declarations they read in the internal DTD subset ... must use the information in those declarations to normalize attribute values, include the replacement text of internal entities, and supply default attribute values".

    Version:
    $Id: NonValidatingConfiguration.java 713638 2008-11-13 04:42:18Z mrglavas $
    Author:
    Elena Litani, IBM
    • Field Detail

      • WARN_ON_DUPLICATE_ATTDEF

        protected static final java.lang.String WARN_ON_DUPLICATE_ATTDEF
        Feature identifier: warn on duplicate attribute definition.
        See Also:
        Constant Field Values
      • WARN_ON_DUPLICATE_ENTITYDEF

        protected static final java.lang.String WARN_ON_DUPLICATE_ENTITYDEF
        Feature identifier: warn on duplicate entity definition.
        See Also:
        Constant Field Values
      • WARN_ON_UNDECLARED_ELEMDEF

        protected static final java.lang.String WARN_ON_UNDECLARED_ELEMDEF
        Feature identifier: warn on undeclared element definition.
        See Also:
        Constant Field Values
      • ALLOW_JAVA_ENCODINGS

        protected static final java.lang.String ALLOW_JAVA_ENCODINGS
        Feature identifier: allow Java encodings.
        See Also:
        Constant Field Values
      • CONTINUE_AFTER_FATAL_ERROR

        protected static final java.lang.String CONTINUE_AFTER_FATAL_ERROR
        Feature identifier: continue after fatal error.
        See Also:
        Constant Field Values
      • LOAD_EXTERNAL_DTD

        protected static final java.lang.String LOAD_EXTERNAL_DTD
        Feature identifier: load external DTD.
        See Also:
        Constant Field Values
      • NOTIFY_BUILTIN_REFS

        protected static final java.lang.String NOTIFY_BUILTIN_REFS
        Feature identifier: notify built-in refereces.
        See Also:
        Constant Field Values
      • NOTIFY_CHAR_REFS

        protected static final java.lang.String NOTIFY_CHAR_REFS
        Feature identifier: notify character refereces.
        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
      • SCHEMA_ELEMENT_DEFAULT

        protected static final java.lang.String SCHEMA_ELEMENT_DEFAULT
        Feature identifier: send element default value via characters()
        See Also:
        Constant Field Values
      • ERROR_REPORTER

        protected static final java.lang.String ERROR_REPORTER
        Property identifier: error reporter.
        See Also:
        Constant Field Values
      • ENTITY_MANAGER

        protected static final java.lang.String ENTITY_MANAGER
        Property identifier: entity manager.
        See Also:
        Constant Field Values
      • DOCUMENT_SCANNER

        protected static final java.lang.String DOCUMENT_SCANNER
        Property identifier document scanner:
        See Also:
        Constant Field Values
      • DTD_SCANNER

        protected static final java.lang.String DTD_SCANNER
        Property identifier: DTD scanner.
        See Also:
        Constant Field Values
      • XMLGRAMMAR_POOL

        protected static final java.lang.String XMLGRAMMAR_POOL
        Property identifier: grammar pool.
        See Also:
        Constant Field Values
      • DTD_VALIDATOR

        protected static final java.lang.String DTD_VALIDATOR
        Property identifier: DTD validator.
        See Also:
        Constant Field Values
      • NAMESPACE_BINDER

        protected static final java.lang.String NAMESPACE_BINDER
        Property identifier: namespace binder.
        See Also:
        Constant Field Values
      • DATATYPE_VALIDATOR_FACTORY

        protected static final java.lang.String DATATYPE_VALIDATOR_FACTORY
        Property identifier: datatype validator factory.
        See Also:
        Constant Field Values
      • VALIDATION_MANAGER

        protected static final java.lang.String VALIDATION_MANAGER
        See Also:
        Constant Field Values
      • SCHEMA_VALIDATOR

        protected static final java.lang.String SCHEMA_VALIDATOR
        Property identifier: XML Schema validator.
        See Also:
        Constant Field Values
      • LOCALE

        protected static final java.lang.String LOCALE
        Property identifier: locale.
        See Also:
        Constant Field Values
      • fGrammarPool

        protected org.apache.xerces.xni.grammars.XMLGrammarPool fGrammarPool
        Grammar pool.
      • fDatatypeValidatorFactory

        protected DTDDVFactory fDatatypeValidatorFactory
        Datatype validator factory.
      • fScanner

        protected org.apache.xerces.xni.parser.XMLDocumentScanner fScanner
        Document scanner.
      • fInputSource

        protected org.apache.xerces.xni.parser.XMLInputSource fInputSource
        Input Source
      • fDTDScanner

        protected org.apache.xerces.xni.parser.XMLDTDScanner fDTDScanner
        DTD scanner.
      • fConfigUpdated

        protected boolean fConfigUpdated
        fConfigUpdated is set to true if there has been any change to the configuration settings, i.e a feature or a property was changed.
      • fLocator

        protected org.apache.xerces.xni.XMLLocator fLocator
        Locator
      • fParseInProgress

        protected boolean fParseInProgress
        True if a parse is in progress. This state is needed because some features/properties cannot be set while parsing (e.g. validation and namespaces).
    • Constructor Detail

      • NonValidatingConfiguration

        public NonValidatingConfiguration()
        Default constructor.
      • NonValidatingConfiguration

        public NonValidatingConfiguration​(SymbolTable symbolTable)
        Constructs a parser configuration using the specified symbol table.
        Parameters:
        symbolTable - The symbol table to use.
      • NonValidatingConfiguration

        public NonValidatingConfiguration​(SymbolTable symbolTable,
                                          org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
        Constructs a parser configuration using the specified symbol table and grammar pool.

        REVISIT: Grammar pool will be updated when the new validation engine is implemented.

        Parameters:
        symbolTable - The symbol table to use.
        grammarPool - The grammar pool to use.
      • NonValidatingConfiguration

        public NonValidatingConfiguration​(SymbolTable symbolTable,
                                          org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool,
                                          org.apache.xerces.xni.parser.XMLComponentManager parentSettings)
        Constructs a parser configuration using the specified symbol table, grammar pool, and parent settings.

        REVISIT: Grammar pool will be updated when the new validation engine is implemented.

        Parameters:
        symbolTable - The symbol table to use.
        grammarPool - The grammar pool to use.
        parentSettings - The parent settings.
    • Method Detail

      • setFeature

        public void setFeature​(java.lang.String featureId,
                               boolean state)
                        throws org.apache.xerces.xni.parser.XMLConfigurationException
        Description copied from class: BasicParserConfiguration
        Set the state of a feature. Set the state of any feature in a SAX2 parser. The parser might not recognize the feature, and if it does recognize it, it might not be able to fulfill the request.
        Specified by:
        setFeature in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Overrides:
        setFeature in class BasicParserConfiguration
        Parameters:
        featureId - The unique identifier (URI) of the feature.
        state - The requested state of the feature (true or false).
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - If the requested feature is not known.
      • getProperty

        public java.lang.Object getProperty​(java.lang.String propertyId)
                                     throws org.apache.xerces.xni.parser.XMLConfigurationException
        Description copied from class: ParserConfigurationSettings
        Returns the value of a property.
        Specified by:
        getProperty in interface org.apache.xerces.xni.parser.XMLComponentManager
        Specified by:
        getProperty in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Overrides:
        getProperty in class ParserConfigurationSettings
        Parameters:
        propertyId - The property identifier.
        Returns:
        the value of the property
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - Thrown for configuration error. In general, components should only throw this exception if it is really a critical error.
      • setProperty

        public void setProperty​(java.lang.String propertyId,
                                java.lang.Object value)
                         throws org.apache.xerces.xni.parser.XMLConfigurationException
        Description copied from class: BasicParserConfiguration
        setProperty
        Specified by:
        setProperty in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Overrides:
        setProperty in class BasicParserConfiguration
        Parameters:
        propertyId - The property identifier.
        value - The value of the property.
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - If the requested feature is not known.
      • setLocale

        public void setLocale​(java.util.Locale locale)
                       throws org.apache.xerces.xni.XNIException
        Set the locale to use for messages.
        Specified by:
        setLocale in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Overrides:
        setLocale in class BasicParserConfiguration
        Parameters:
        locale - The locale object to use for localization of messages.
        Throws:
        org.apache.xerces.xni.XNIException - Thrown if the parser does not support the specified locale.
      • getFeature

        public boolean getFeature​(java.lang.String featureId)
                           throws org.apache.xerces.xni.parser.XMLConfigurationException
        Description copied from class: ParserConfigurationSettings
        Returns the state of a feature.
        Specified by:
        getFeature in interface org.apache.xerces.xni.parser.XMLComponentManager
        Specified by:
        getFeature in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Overrides:
        getFeature in class ParserConfigurationSettings
        Parameters:
        featureId - The feature identifier.
        Returns:
        true if the feature is supported
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - Thrown for configuration error. In general, components should only throw this exception if it is really a critical error.
      • setInputSource

        public void setInputSource​(org.apache.xerces.xni.parser.XMLInputSource inputSource)
                            throws org.apache.xerces.xni.parser.XMLConfigurationException,
                                   java.io.IOException
        Sets the input source for the document to parse.
        Specified by:
        setInputSource in interface org.apache.xerces.xni.parser.XMLPullParserConfiguration
        Parameters:
        inputSource - The document's input source.
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - Thrown if there is a configuration error when initializing the parser.
        java.io.IOException - Thrown on I/O error.
        See Also:
        parse(boolean)
      • parse

        public boolean parse​(boolean complete)
                      throws org.apache.xerces.xni.XNIException,
                             java.io.IOException
        Parses the document in a pull parsing fashion.
        Specified by:
        parse in interface org.apache.xerces.xni.parser.XMLPullParserConfiguration
        Parameters:
        complete - True if the pull parser should parse the remaining document completely.
        Returns:
        True if there is more document to parse.
        Throws:
        org.apache.xerces.xni.XNIException - Any XNI exception, possibly wrapping another exception.
        java.io.IOException - An IO exception from the parser, possibly from a byte stream or character stream supplied by the parser.
        See Also:
        setInputSource(org.apache.xerces.xni.parser.XMLInputSource)
      • cleanup

        public void cleanup()
        If the application decides to terminate parsing before the xml document is fully parsed, the application should call this method to free any resource allocated during parsing. For example, close all opened streams.
        Specified by:
        cleanup in interface org.apache.xerces.xni.parser.XMLPullParserConfiguration
      • parse

        public void parse​(org.apache.xerces.xni.parser.XMLInputSource source)
                   throws org.apache.xerces.xni.XNIException,
                          java.io.IOException
        Parses the specified input source.
        Specified by:
        parse in interface org.apache.xerces.xni.parser.XMLParserConfiguration
        Specified by:
        parse in class BasicParserConfiguration
        Parameters:
        source - The input source.
        Throws:
        org.apache.xerces.xni.XNIException - Throws exception on XNI error.
        java.io.IOException - Throws exception on i/o error.
      • reset

        protected void reset()
                      throws org.apache.xerces.xni.XNIException
        Reset all components before parsing.
        Overrides:
        reset in class BasicParserConfiguration
        Throws:
        org.apache.xerces.xni.XNIException - Thrown if an error occurs during initialization.
      • configurePipeline

        protected void configurePipeline()
        Configures the pipeline.
      • checkFeature

        protected void checkFeature​(java.lang.String featureId)
                             throws org.apache.xerces.xni.parser.XMLConfigurationException
        Check a feature. If feature is know and supported, this method simply returns. Otherwise, the appropriate exception is thrown.
        Overrides:
        checkFeature in class BasicParserConfiguration
        Parameters:
        featureId - The unique identifier (URI) of the feature.
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - Thrown for configuration error. In general, components should only throw this exception if it is really a critical error.
      • checkProperty

        protected void checkProperty​(java.lang.String propertyId)
                              throws org.apache.xerces.xni.parser.XMLConfigurationException
        Check a property. If the property is know and supported, this method simply returns. Otherwise, the appropriate exception is thrown.
        Overrides:
        checkProperty in class BasicParserConfiguration
        Parameters:
        propertyId - The unique identifier (URI) of the property being set.
        Throws:
        org.apache.xerces.xni.parser.XMLConfigurationException - Thrown for configuration error. In general, components should only throw this exception if it is really a critical error.
      • createEntityManager

        protected XMLEntityManager createEntityManager()
        Creates an entity manager.
      • createErrorReporter

        protected XMLErrorReporter createErrorReporter()
        Creates an error reporter.
      • createDocumentScanner

        protected org.apache.xerces.xni.parser.XMLDocumentScanner createDocumentScanner()
        Create a document scanner.
      • createDTDScanner

        protected org.apache.xerces.xni.parser.XMLDTDScanner createDTDScanner()
        Create a DTD scanner.
      • createDatatypeValidatorFactory

        protected DTDDVFactory createDatatypeValidatorFactory()
        Create a datatype validator factory.