org.apache.xerces.parsers

Class NonValidatingConfiguration

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,v 1.13 2004/02/24 23:15:57 mrglavas Exp $
Author:
Elena Litani, IBM

Field Summary

protected static String
ALLOW_JAVA_ENCODINGS
Feature identifier: allow Java encodings.
protected static String
CONTINUE_AFTER_FATAL_ERROR
Feature identifier: continue after fatal error.
protected static String
DATATYPE_VALIDATOR_FACTORY
Property identifier: datatype validator factory.
protected static String
DOCUMENT_SCANNER
Property identifier document scanner:
protected static String
DTD_SCANNER
Property identifier: DTD scanner.
protected static String
DTD_VALIDATOR
Property identifier: DTD validator.
protected static String
ENTITY_MANAGER
Property identifier: entity manager.
protected static String
ERROR_REPORTER
Property identifier: error reporter.
protected static String
LOAD_EXTERNAL_DTD
Feature identifier: load external DTD.
protected static String
NAMESPACE_BINDER
Property identifier: namespace binder.
protected static String
NORMALIZE_DATA
Feature identifier: expose schema normalized value
protected static String
NOTIFY_BUILTIN_REFS
Feature identifier: notify built-in refereces.
protected static String
NOTIFY_CHAR_REFS
Feature identifier: notify character refereces.
protected static String
SCHEMA_ELEMENT_DEFAULT
Feature identifier: send element default value via characters()
protected static String
SCHEMA_VALIDATOR
Property identifier: XML Schema validator.
protected static String
VALIDATION_MANAGER
protected static String
WARN_ON_DUPLICATE_ATTDEF
Feature identifier: warn on duplicate attribute definition.
protected static String
WARN_ON_DUPLICATE_ENTITYDEF
Feature identifier: warn on duplicate entity definition.
protected static String
WARN_ON_UNDECLARED_ELEMDEF
Feature identifier: warn on undeclared element definition.
protected static String
XMLGRAMMAR_POOL
Property identifier: grammar pool.
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.
protected org.apache.xerces.xni.parser.XMLDTDScanner
fDTDScanner
DTD scanner.
protected DTDDVFactory
fDatatypeValidatorFactory
Datatype validator factory.
protected XMLEntityManager
fEntityManager
Entity manager.
protected XMLErrorReporter
fErrorReporter
Error reporter.
protected org.apache.xerces.xni.grammars.XMLGrammarPool
fGrammarPool
Grammar pool.
protected org.apache.xerces.xni.parser.XMLInputSource
fInputSource
Input Source
protected org.apache.xerces.xni.XMLLocator
fLocator
Locator
protected boolean
fParseInProgress
True if a parse is in progress.
protected org.apache.xerces.xni.parser.XMLDocumentScanner
fScanner
Document scanner.
protected ValidationManager
fValidationManager

Fields inherited from class org.apache.xerces.parsers.BasicParserConfiguration

ENTITY_RESOLVER, ERROR_HANDLER, EXTERNAL_GENERAL_ENTITIES, EXTERNAL_PARAMETER_ENTITIES, NAMESPACES, SYMBOL_TABLE, VALIDATION, XML_STRING, fComponents, fDTDContentModelHandler, fDTDHandler, fDocumentHandler, fLastComponent, fLocale, fSymbolTable

Fields inherited from class org.apache.xerces.util.ParserConfigurationSettings

PARSER_SETTINGS, fFeatures, fParentSettings, fProperties, fRecognizedFeatures, fRecognizedProperties

Constructor Summary

NonValidatingConfiguration()
Default constructor.
NonValidatingConfiguration(SymbolTable symbolTable)
Constructs a parser configuration using the specified symbol table.
NonValidatingConfiguration(SymbolTable symbolTable, org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
Constructs a parser configuration using the specified symbol table and grammar pool.
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.

Method Summary

protected void
checkFeature(String featureId)
Check a feature.
protected void
checkProperty(String propertyId)
Check a property.
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.
protected void
configurePipeline()
Configures the pipeline.
protected org.apache.xerces.xni.parser.XMLDTDScanner
createDTDScanner()
Create a DTD scanner.
protected DTDDVFactory
createDatatypeValidatorFactory()
Create a datatype validator factory.
protected org.apache.xerces.xni.parser.XMLDocumentScanner
createDocumentScanner()
Create a document scanner.
protected XMLEntityManager
createEntityManager()
Creates an entity manager.
protected XMLErrorReporter
createErrorReporter()
Creates an error reporter.
protected ValidationManager
createValidationManager()
boolean
getFeature(String featureId)
Returns the state of a feature.
boolean
parse(boolean complete)
Parses the document in a pull parsing fashion.
void
parse(org.apache.xerces.xni.parser.XMLInputSource source)
Parses the specified input source.
protected void
reset()
Reset all components before parsing.
void
setFeature(String featureId, boolean state)
Set the state of a feature.
void
setInputSource(org.apache.xerces.xni.parser.XMLInputSource inputSource)
Sets the input source for the document to parse.
void
setLocale(Locale locale)
Set the locale to use for messages.
void
setProperty(String propertyId, Object value)
setProperty

Methods inherited from class org.apache.xerces.parsers.BasicParserConfiguration

addComponent, checkFeature, checkProperty, getDTDContentModelHandler, getDTDHandler, getDocumentHandler, getEntityResolver, getErrorHandler, getLocale, parse, reset, setDTDContentModelHandler, setDTDHandler, setDocumentHandler, setEntityResolver, setErrorHandler, setFeature, setLocale, setProperty

Methods inherited from class org.apache.xerces.util.ParserConfigurationSettings

addRecognizedFeatures, addRecognizedProperties, checkFeature, checkProperty, getFeature, getProperty, setFeature, setProperty

Field Details

ALLOW_JAVA_ENCODINGS

protected static final String ALLOW_JAVA_ENCODINGS
Feature identifier: allow Java encodings.

CONTINUE_AFTER_FATAL_ERROR

protected static final String CONTINUE_AFTER_FATAL_ERROR
Feature identifier: continue after fatal error.

DATATYPE_VALIDATOR_FACTORY

protected static final String DATATYPE_VALIDATOR_FACTORY
Property identifier: datatype validator factory.

DOCUMENT_SCANNER

protected static final String DOCUMENT_SCANNER
Property identifier document scanner:

DTD_SCANNER

protected static final String DTD_SCANNER
Property identifier: DTD scanner.

DTD_VALIDATOR

protected static final String DTD_VALIDATOR
Property identifier: DTD validator.

ENTITY_MANAGER

protected static final String ENTITY_MANAGER
Property identifier: entity manager.

ERROR_REPORTER

protected static final String ERROR_REPORTER
Property identifier: error reporter.

LOAD_EXTERNAL_DTD

protected static final String LOAD_EXTERNAL_DTD
Feature identifier: load external DTD.

NAMESPACE_BINDER

protected static final String NAMESPACE_BINDER
Property identifier: namespace binder.

NORMALIZE_DATA

protected static final String NORMALIZE_DATA
Feature identifier: expose schema normalized value

NOTIFY_BUILTIN_REFS

protected static final String NOTIFY_BUILTIN_REFS
Feature identifier: notify built-in refereces.

NOTIFY_CHAR_REFS

protected static final String NOTIFY_CHAR_REFS
Feature identifier: notify character refereces.

SCHEMA_ELEMENT_DEFAULT

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

SCHEMA_VALIDATOR

protected static final String SCHEMA_VALIDATOR
Property identifier: XML Schema validator.

VALIDATION_MANAGER

protected static final String VALIDATION_MANAGER

WARN_ON_DUPLICATE_ATTDEF

protected static final String WARN_ON_DUPLICATE_ATTDEF
Feature identifier: warn on duplicate attribute definition.

WARN_ON_DUPLICATE_ENTITYDEF

protected static final String WARN_ON_DUPLICATE_ENTITYDEF
Feature identifier: warn on duplicate entity definition.

WARN_ON_UNDECLARED_ELEMDEF

protected static final String WARN_ON_UNDECLARED_ELEMDEF
Feature identifier: warn on undeclared element definition.

XMLGRAMMAR_POOL

protected static final String XMLGRAMMAR_POOL
Property identifier: grammar pool.

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.

fDTDScanner

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

fDatatypeValidatorFactory

protected DTDDVFactory fDatatypeValidatorFactory
Datatype validator factory.

fEntityManager

protected XMLEntityManager fEntityManager
Entity manager.

fErrorReporter

protected XMLErrorReporter fErrorReporter
Error reporter.

fGrammarPool

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

fInputSource

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

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).

fScanner

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

fValidationManager

protected ValidationManager fValidationManager

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

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 interface 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 interface 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.

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

configurePipeline

protected void configurePipeline()
Configures the pipeline.

createDTDScanner

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

createDatatypeValidatorFactory

protected DTDDVFactory createDatatypeValidatorFactory()
Create a datatype validator factory.

createDocumentScanner

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

createEntityManager

protected XMLEntityManager createEntityManager()
Creates an entity manager.

createErrorReporter

protected XMLErrorReporter createErrorReporter()
Creates an error reporter.

createValidationManager

protected ValidationManager createValidationManager()

getFeature

public boolean getFeature(String featureId)
            throws org.apache.xerces.xni.parser.XMLConfigurationException
Returns the state of a feature.
Specified by:
getFeature in interface org.apache.xerces.xni.parser.XMLParserConfiguration
getFeature in interface org.apache.xerces.xni.parser.XMLComponentManager
Overrides:
getFeature in interface 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.

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.

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
Overrides:
parse in interface BasicParserConfiguration
Parameters:
source - The input source.
Throws:
org.apache.xerces.xni.XNIException - Throws exception on XNI error.

reset

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

setFeature

public void setFeature(String featureId,
                       boolean state)
            throws org.apache.xerces.xni.parser.XMLConfigurationException
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 interface 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.

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.

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 interface 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.

setProperty

public void setProperty(String propertyId,
                        Object value)
            throws org.apache.xerces.xni.parser.XMLConfigurationException
setProperty
Specified by:
setProperty in interface org.apache.xerces.xni.parser.XMLParserConfiguration
Overrides:
setProperty in interface BasicParserConfiguration
Parameters:
propertyId -
value -

Copyright B) 1999-2005 Apache XML Project. All Rights Reserved.