org.apache.xerces.parsers

Class XML11DTDConfiguration

public class XML11DTDConfiguration extends ParserConfigurationSettings implements XMLPullParserConfiguration, XML11Configurable

This class is the DTD-only parser configuration used to parse XML 1.0 and XML 1.1 documents.

This class recognizes the following features and properties:

Version: $Id: XML11DTDConfiguration.java,v 1.2 2004/07/23 15:50:15 mrglavas Exp $

Author: Elena Litani, IBM Neil Graham, IBM Michael Glavassevich, IBM John Kim, IBM

Field Summary
protected static StringCONTINUE_AFTER_FATAL_ERROR
Feature identifier: continue after fatal error.
protected static StringDATATYPE_VALIDATOR_FACTORY
Property identifier: datatype validator factory.
protected static StringDOCUMENT_SCANNER
Property identifier document scanner:
protected static StringDTD_PROCESSOR
Property identifier: DTD loader.
protected static StringDTD_SCANNER
Property identifier: DTD scanner.
protected static StringDTD_VALIDATOR
Property identifier: DTD validator.
protected static StringENTITY_MANAGER
Property identifier: entity manager.
protected static StringENTITY_RESOLVER
Property identifier: entity resolver.
protected static StringERROR_HANDLER
Property identifier: error handler.
protected static StringERROR_REPORTER
Property identifier: error reporter.
protected static StringEXTERNAL_GENERAL_ENTITIES
Feature identifier: external general entities.
protected static StringEXTERNAL_PARAMETER_ENTITIES
Feature identifier: external parameter entities.
protected ArrayListfCommonComponents
Common components: XMLEntityManager, XMLErrorReporter
protected ArrayListfComponents
XML 1.0 Components.
protected booleanfConfigUpdated
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 XMLDTDScannerfCurrentDTDScanner
Current DTD scanner.
protected DTDDVFactoryfCurrentDVFactory
Current Datatype validator factory.
protected XMLDocumentScannerfCurrentScanner
Current scanner
protected DTDDVFactoryfDatatypeValidatorFactory
The XML 1.0 Datatype validator factory.
protected XMLDocumentHandlerfDocumentHandler
The document handler.
protected XMLDTDContentModelHandlerfDTDContentModelHandler
The DTD content model handler.
protected XMLDTDHandlerfDTDHandler
The DTD handler.
protected XMLDTDProcessorfDTDProcessor
The XML 1.0 DTD Processor .
protected XMLDTDScannerfDTDScanner
The XML 1.0 DTD scanner.
protected XMLDTDValidatorfDTDValidator
The XML 1.0 DTD Validator: binds namespaces
protected XMLEntityManagerfEntityManager
Entity manager.
protected XMLErrorReporterfErrorReporter
Error reporter.
protected XMLGrammarPoolfGrammarPool
Grammar pool.
protected XMLInputSourcefInputSource
protected XMLDocumentSourcefLastComponent
Last component in the document pipeline
protected LocalefLocale
protected XMLLocatorfLocator
protected XMLNSDocumentScannerImplfNamespaceScanner
The XML 1.0 Document scanner that does namespace binding.
protected XMLDTDValidatorfNonNSDTDValidator
The XML 1.0 DTD Validator that does not bind namespaces
protected XMLDocumentScannerImplfNonNSScanner
The XML 1.0 Non-namespace implementation of scanner
protected booleanfParseInProgress
True if a parse is in progress.
protected SymbolTablefSymbolTable
protected ValidationManagerfValidationManager
protected XMLVersionDetectorfVersionDetector
protected ArrayListfXML11Components
XML 1.1.
protected DTDDVFactoryfXML11DatatypeFactory
The XML 1.1 datatype factory.
protected XML11DocumentScannerImplfXML11DocScanner
The XML 1.1 document scanner that does not do namespace binding.
protected XML11DTDProcessorfXML11DTDProcessor
The XML 1.1 DTD processor.
protected XML11DTDScannerImplfXML11DTDScanner
The XML 1.1 DTD scanner.
protected XML11DTDValidatorfXML11DTDValidator
The XML 1.1 DTD validator that does not do namespace binding.
protected XML11NSDocumentScannerImplfXML11NSDocScanner
The XML 1.1 document scanner that does namespace binding.
protected XML11NSDTDValidatorfXML11NSDTDValidator
The XML 1.1 DTD validator that does namespace binding.
protected static StringJAXP_SCHEMA_LANGUAGE
Property identifier: JAXP schema language / DOM schema-type.
protected static StringJAXP_SCHEMA_SOURCE
Property identifier: JAXP schema source/ DOM schema-location.
protected static StringLOAD_EXTERNAL_DTD
Feature identifier: load external DTD.
protected static StringNAMESPACES
Feature identifier: namespaces.
protected static StringNAMESPACE_BINDER
Property identifier: namespace binder.
protected static booleanPRINT_EXCEPTION_STACK_TRACE
Set to true and recompile to print exception stack trace.
protected static StringSYMBOL_TABLE
Property identifier: symbol table.
protected static StringVALIDATION
Feature identifier: validation.
protected static StringVALIDATION_MANAGER
protected static StringXML11_DATATYPE_VALIDATOR_FACTORY
protected static StringXMLGRAMMAR_POOL
Property identifier: grammar pool.
protected static StringXML_STRING
Property identifier: xml string.
Constructor Summary
XML11DTDConfiguration()
Default constructor.
XML11DTDConfiguration(SymbolTable symbolTable)
Constructs a parser configuration using the specified symbol table.
XML11DTDConfiguration(SymbolTable symbolTable, XMLGrammarPool grammarPool)
Constructs a parser configuration using the specified symbol table and grammar pool.
XML11DTDConfiguration(SymbolTable symbolTable, XMLGrammarPool grammarPool, XMLComponentManager parentSettings)
Constructs a parser configuration using the specified symbol table, grammar pool, and parent settings.
Method Summary
protected voidaddCommonComponent(XMLComponent component)
Adds common component to the parser configuration.
protected voidaddComponent(XMLComponent component)
Adds a component to the parser configuration.
protected voidaddRecognizedParamsAndSetDefaults(XMLComponent component)
Adds all of the component's recognized features and properties to the list of default recognized features and properties, and sets default values on the configuration for features and properties which were previously absent from the configuration.
protected voidaddXML11Component(XMLComponent component)
Adds an XML 1.1 component to the parser configuration.
protected voidcheckFeature(String featureId)
Check a feature.
protected voidcheckProperty(String propertyId)
Check a property.
voidcleanup()
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 voidconfigurePipeline()
Configures the pipeline.
protected voidconfigureXML11Pipeline()
Configures the XML 1.1 pipeline.
XMLDocumentHandlergetDocumentHandler()
Returns the registered document handler.
XMLDTDContentModelHandlergetDTDContentModelHandler()
Returns the registered DTD content model handler.
XMLDTDHandlergetDTDHandler()
Returns the registered DTD handler.
XMLEntityResolvergetEntityResolver()
Return the current entity resolver.
XMLErrorHandlergetErrorHandler()
Return the current error handler.
booleangetFeature(String featureId)
Returns the state of a feature.
LocalegetLocale()
Returns the locale.
voidparse(XMLInputSource source)
Parses the specified input source.
booleanparse(boolean complete)
protected voidreset()
reset all XML 1.0 components before parsing and namespace context
protected voidresetCommon()
reset all common components before parsing
protected voidresetXML11()
reset all components before parsing and namespace context
voidsetDocumentHandler(XMLDocumentHandler documentHandler)
Sets the document handler on the last component in the pipeline to receive information about the document.
voidsetDTDContentModelHandler(XMLDTDContentModelHandler handler)
Sets the DTD content model handler.
voidsetDTDHandler(XMLDTDHandler dtdHandler)
Sets the DTD handler.
voidsetEntityResolver(XMLEntityResolver resolver)
Sets the resolver used to resolve external entities.
voidsetErrorHandler(XMLErrorHandler errorHandler)
Allow an application to register an error event handler.
voidsetFeature(String featureId, boolean state)
Set the state of a feature.
voidsetInputSource(XMLInputSource inputSource)
Sets the input source for the document to parse.
voidsetLocale(Locale locale)
Set the locale to use for messages.
voidsetProperty(String propertyId, Object value)
setProperty

Field Detail

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_PROCESSOR

protected static final String DTD_PROCESSOR
Property identifier: DTD loader.

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.

ENTITY_RESOLVER

protected static final String ENTITY_RESOLVER
Property identifier: entity resolver.

ERROR_HANDLER

protected static final String ERROR_HANDLER
Property identifier: error handler.

ERROR_REPORTER

protected static final String ERROR_REPORTER
Property identifier: error reporter.

EXTERNAL_GENERAL_ENTITIES

protected static final String EXTERNAL_GENERAL_ENTITIES
Feature identifier: external general entities.

EXTERNAL_PARAMETER_ENTITIES

protected static final String EXTERNAL_PARAMETER_ENTITIES
Feature identifier: external parameter entities.

fCommonComponents

protected ArrayList fCommonComponents
Common components: XMLEntityManager, XMLErrorReporter

fComponents

protected ArrayList fComponents
XML 1.0 Components.

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.

fCurrentDTDScanner

protected XMLDTDScanner fCurrentDTDScanner
Current DTD scanner.

fCurrentDVFactory

protected DTDDVFactory fCurrentDVFactory
Current Datatype validator factory.

fCurrentScanner

protected XMLDocumentScanner fCurrentScanner
Current scanner

fDatatypeValidatorFactory

protected DTDDVFactory fDatatypeValidatorFactory
The XML 1.0 Datatype validator factory.

fDocumentHandler

protected XMLDocumentHandler fDocumentHandler
The document handler.

fDTDContentModelHandler

protected XMLDTDContentModelHandler fDTDContentModelHandler
The DTD content model handler.

fDTDHandler

protected XMLDTDHandler fDTDHandler
The DTD handler.

fDTDProcessor

protected XMLDTDProcessor fDTDProcessor
The XML 1.0 DTD Processor .

fDTDScanner

protected XMLDTDScanner fDTDScanner
The XML 1.0 DTD scanner.

fDTDValidator

protected XMLDTDValidator fDTDValidator
The XML 1.0 DTD Validator: binds namespaces

fEntityManager

protected XMLEntityManager fEntityManager
Entity manager.

fErrorReporter

protected XMLErrorReporter fErrorReporter
Error reporter.

fGrammarPool

protected XMLGrammarPool fGrammarPool
Grammar pool.

fInputSource

protected XMLInputSource fInputSource

fLastComponent

protected XMLDocumentSource fLastComponent
Last component in the document pipeline

fLocale

protected Locale fLocale

fLocator

protected XMLLocator fLocator

fNamespaceScanner

protected XMLNSDocumentScannerImpl fNamespaceScanner
The XML 1.0 Document scanner that does namespace binding.

fNonNSDTDValidator

protected XMLDTDValidator fNonNSDTDValidator
The XML 1.0 DTD Validator that does not bind namespaces

fNonNSScanner

protected XMLDocumentScannerImpl fNonNSScanner
The XML 1.0 Non-namespace implementation of scanner

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

fSymbolTable

protected SymbolTable fSymbolTable

fValidationManager

protected ValidationManager fValidationManager

fVersionDetector

protected XMLVersionDetector fVersionDetector

fXML11Components

protected ArrayList fXML11Components
XML 1.1. Components.

fXML11DatatypeFactory

protected DTDDVFactory fXML11DatatypeFactory
The XML 1.1 datatype factory. *

fXML11DocScanner

protected XML11DocumentScannerImpl fXML11DocScanner
The XML 1.1 document scanner that does not do namespace binding. *

fXML11DTDProcessor

protected XML11DTDProcessor fXML11DTDProcessor
The XML 1.1 DTD processor. *

fXML11DTDScanner

protected XML11DTDScannerImpl fXML11DTDScanner
The XML 1.1 DTD scanner. *

fXML11DTDValidator

protected XML11DTDValidator fXML11DTDValidator
The XML 1.1 DTD validator that does not do namespace binding. *

fXML11NSDocScanner

protected XML11NSDocumentScannerImpl fXML11NSDocScanner
The XML 1.1 document scanner that does namespace binding. *

fXML11NSDTDValidator

protected XML11NSDTDValidator fXML11NSDTDValidator
The XML 1.1 DTD validator that does namespace binding. *

JAXP_SCHEMA_LANGUAGE

protected static final String JAXP_SCHEMA_LANGUAGE
Property identifier: JAXP schema language / DOM schema-type.

JAXP_SCHEMA_SOURCE

protected static final String JAXP_SCHEMA_SOURCE
Property identifier: JAXP schema source/ DOM schema-location.

LOAD_EXTERNAL_DTD

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

NAMESPACES

protected static final String NAMESPACES
Feature identifier: namespaces.

NAMESPACE_BINDER

protected static final String NAMESPACE_BINDER
Property identifier: namespace binder.

PRINT_EXCEPTION_STACK_TRACE

protected static final boolean PRINT_EXCEPTION_STACK_TRACE
Set to true and recompile to print exception stack trace.

SYMBOL_TABLE

protected static final String SYMBOL_TABLE
Property identifier: symbol table.

VALIDATION

protected static final String VALIDATION
Feature identifier: validation.

VALIDATION_MANAGER

protected static final String VALIDATION_MANAGER

XML11_DATATYPE_VALIDATOR_FACTORY

protected static final String XML11_DATATYPE_VALIDATOR_FACTORY

XMLGRAMMAR_POOL

protected static final String XMLGRAMMAR_POOL
Property identifier: grammar pool.

XML_STRING

protected static final String XML_STRING
Property identifier: xml string.

Constructor Detail

XML11DTDConfiguration

public XML11DTDConfiguration()
Default constructor.

XML11DTDConfiguration

public XML11DTDConfiguration(SymbolTable symbolTable)
Constructs a parser configuration using the specified symbol table.

Parameters: symbolTable The symbol table to use.

XML11DTDConfiguration

public XML11DTDConfiguration(SymbolTable symbolTable, 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.

XML11DTDConfiguration

public XML11DTDConfiguration(SymbolTable symbolTable, XMLGrammarPool grammarPool, 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

addCommonComponent

protected void addCommonComponent(XMLComponent component)
Adds common component to the parser configuration. This method will also add all of the component's recognized features and properties to the list of default recognized features and properties.

Parameters: component The component to add.

addComponent

protected void addComponent(XMLComponent component)
Adds a component to the parser configuration. This method will also add all of the component's recognized features and properties to the list of default recognized features and properties.

Parameters: component The component to add.

addRecognizedParamsAndSetDefaults

protected void addRecognizedParamsAndSetDefaults(XMLComponent component)
Adds all of the component's recognized features and properties to the list of default recognized features and properties, and sets default values on the configuration for features and properties which were previously absent from the configuration.

Parameters: component The component whose recognized features and properties will be added to the configuration

addXML11Component

protected void addXML11Component(XMLComponent component)
Adds an XML 1.1 component to the parser configuration. This method will also add all of the component's recognized features and properties to the list of default recognized features and properties.

Parameters: component The component to add.

checkFeature

protected void checkFeature(String featureId)
Check a feature. If feature is know and supported, this method simply returns. Otherwise, the appropriate exception is thrown.

Parameters: featureId The unique identifier (URI) of the feature.

Throws: 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)
Check a property. If the property is know and supported, this method simply returns. Otherwise, the appropriate exception is thrown.

Parameters: propertyId The unique identifier (URI) of the property being set.

Throws: 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.

configurePipeline

protected void configurePipeline()
Configures the pipeline.

configureXML11Pipeline

protected void configureXML11Pipeline()
Configures the XML 1.1 pipeline. Note: this method also resets the new XML11 components.

getDocumentHandler

public XMLDocumentHandler getDocumentHandler()
Returns the registered document handler.

getDTDContentModelHandler

public XMLDTDContentModelHandler getDTDContentModelHandler()
Returns the registered DTD content model handler.

getDTDHandler

public XMLDTDHandler getDTDHandler()
Returns the registered DTD handler.

getEntityResolver

public XMLEntityResolver getEntityResolver()
Return the current entity resolver.

Returns: The current entity resolver, or null if none has been registered.

See Also: XML11DTDConfiguration

getErrorHandler

public XMLErrorHandler getErrorHandler()
Return the current error handler.

Returns: The current error handler, or null if none has been registered.

See Also: XML11DTDConfiguration

getFeature

public boolean getFeature(String featureId)
Returns the state of a feature.

Parameters: featureId The feature identifier.

Returns: true if the feature is supported

Throws: XMLConfigurationException Thrown for configuration error. In general, components should only throw this exception if it is really a critical error.

getLocale

public Locale getLocale()
Returns the locale.

parse

public void parse(XMLInputSource source)
Parses the specified input source.

Parameters: source The input source.

Throws: XNIException Throws exception on XNI error. java.io.IOException Throws exception on i/o error.

parse

public boolean parse(boolean complete)

reset

protected void reset()
reset all XML 1.0 components before parsing and namespace context

resetCommon

protected void resetCommon()
reset all common components before parsing

resetXML11

protected void resetXML11()
reset all components before parsing and namespace context

setDocumentHandler

public void setDocumentHandler(XMLDocumentHandler documentHandler)
Sets the document handler on the last component in the pipeline to receive information about the document.

Parameters: documentHandler The document handler.

setDTDContentModelHandler

public void setDTDContentModelHandler(XMLDTDContentModelHandler handler)
Sets the DTD content model handler.

Parameters: handler The DTD content model handler.

setDTDHandler

public void setDTDHandler(XMLDTDHandler dtdHandler)
Sets the DTD handler.

Parameters: dtdHandler The DTD handler.

setEntityResolver

public void setEntityResolver(XMLEntityResolver resolver)
Sets the resolver used to resolve external entities. The EntityResolver interface supports resolution of public and system identifiers.

Parameters: resolver The new entity resolver. Passing a null value will uninstall the currently installed resolver.

setErrorHandler

public void setErrorHandler(XMLErrorHandler errorHandler)
Allow an application to register an error event handler.

If the application does not register an error handler, all error events reported by the SAX parser will be silently ignored; however, normal processing may not continue. It is highly recommended that all SAX applications implement an error handler to avoid unexpected bugs.

Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.

Parameters: errorHandler The error handler.

Throws: java.lang.NullPointerException If the handler argument is null.

See Also: XML11DTDConfiguration

setFeature

public void setFeature(String featureId, boolean state)
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.

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(XMLInputSource inputSource)
Sets the input source for the document to parse.

Parameters: inputSource The document's input source.

Throws: XMLConfigurationException Thrown if there is a configuration error when initializing the parser. IOException Thrown on I/O error.

See Also: XML11DTDConfiguration

setLocale

public void setLocale(Locale locale)
Set the locale to use for messages.

Parameters: locale The locale object to use for localization of messages.

Throws: XNIException Thrown if the parser does not support the specified locale.

setProperty

public void setProperty(String propertyId, Object value)
setProperty

Parameters: propertyId value

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