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 Details

    • WARN_ON_DUPLICATE_ATTDEF

      protected static final String WARN_ON_DUPLICATE_ATTDEF
      Feature identifier: warn on duplicate attribute definition.
      See Also:
    • WARN_ON_DUPLICATE_ENTITYDEF

      protected static final String WARN_ON_DUPLICATE_ENTITYDEF
      Feature identifier: warn on duplicate entity definition.
      See Also:
    • WARN_ON_UNDECLARED_ELEMDEF

      protected static final String WARN_ON_UNDECLARED_ELEMDEF
      Feature identifier: warn on undeclared element definition.
      See Also:
    • ALLOW_JAVA_ENCODINGS

      protected static final String ALLOW_JAVA_ENCODINGS
      Feature identifier: allow Java encodings.
      See Also:
    • CONTINUE_AFTER_FATAL_ERROR

      protected static final String CONTINUE_AFTER_FATAL_ERROR
      Feature identifier: continue after fatal error.
      See Also:
    • LOAD_EXTERNAL_DTD

      protected static final String LOAD_EXTERNAL_DTD
      Feature identifier: load external DTD.
      See Also:
    • NOTIFY_BUILTIN_REFS

      protected static final String NOTIFY_BUILTIN_REFS
      Feature identifier: notify built-in refereces.
      See Also:
    • NOTIFY_CHAR_REFS

      protected static final String NOTIFY_CHAR_REFS
      Feature identifier: notify character refereces.
      See Also:
    • NORMALIZE_DATA

      protected static final String NORMALIZE_DATA
      Feature identifier: expose schema normalized value
      See Also:
    • SCHEMA_ELEMENT_DEFAULT

      protected static final String SCHEMA_ELEMENT_DEFAULT
      Feature identifier: send element default value via characters()
      See Also:
    • ERROR_REPORTER

      protected static final String ERROR_REPORTER
      Property identifier: error reporter.
      See Also:
    • ENTITY_MANAGER

      protected static final String ENTITY_MANAGER
      Property identifier: entity manager.
      See Also:
    • DOCUMENT_SCANNER

      protected static final String DOCUMENT_SCANNER
      Property identifier document scanner:
      See Also:
    • DTD_SCANNER

      protected static final String DTD_SCANNER
      Property identifier: DTD scanner.
      See Also:
    • XMLGRAMMAR_POOL

      protected static final String XMLGRAMMAR_POOL
      Property identifier: grammar pool.
      See Also:
    • DTD_VALIDATOR

      protected static final String DTD_VALIDATOR
      Property identifier: DTD validator.
      See Also:
    • NAMESPACE_BINDER

      protected static final String NAMESPACE_BINDER
      Property identifier: namespace binder.
      See Also:
    • DATATYPE_VALIDATOR_FACTORY

      protected static final String DATATYPE_VALIDATOR_FACTORY
      Property identifier: datatype validator factory.
      See Also:
    • VALIDATION_MANAGER

      protected static final String VALIDATION_MANAGER
      See Also:
    • SCHEMA_VALIDATOR

      protected static final String SCHEMA_VALIDATOR
      Property identifier: XML Schema validator.
      See Also:
    • LOCALE

      protected static final String LOCALE
      Property identifier: locale.
      See Also:
    • fGrammarPool

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

      protected DTDDVFactory fDatatypeValidatorFactory
      Datatype validator factory.
    • fErrorReporter

      protected XMLErrorReporter fErrorReporter
      Error reporter.
    • fEntityManager

      protected XMLEntityManager fEntityManager
      Entity manager.
    • 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.
    • fValidationManager

      protected ValidationManager fValidationManager
    • 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 Details

    • 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 Details

    • setFeature

      public void setFeature(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 Object getProperty(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(String propertyId, 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 -
      value -
      Throws:
      org.apache.xerces.xni.parser.XMLConfigurationException - If the requested feature is not known.
    • setLocale

      public void setLocale(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(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, 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.
      IOException - Thrown on I/O error.
      See Also:
    • parse

      public boolean parse(boolean complete) throws org.apache.xerces.xni.XNIException, 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.
      IOException - An IO exception from the parser, possibly from a byte stream or character stream supplied by the parser.
      See Also:
    • 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, 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.
      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(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(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.
    • createValidationManager

      protected ValidationManager createValidationManager()