org.apache.xerces.parsers
Class DTDConfiguration

java.lang.Object
  extended by org.apache.xerces.util.ParserConfigurationSettings
      extended by org.apache.xerces.parsers.BasicParserConfiguration
          extended by org.apache.xerces.parsers.DTDConfiguration
All Implemented Interfaces:
org.apache.xerces.xni.parser.XMLComponentManager, org.apache.xerces.xni.parser.XMLParserConfiguration, org.apache.xerces.xni.parser.XMLPullParserConfiguration
Direct Known Subclasses:
StandardParserConfiguration

public class DTDConfiguration
extends BasicParserConfiguration
implements org.apache.xerces.xni.parser.XMLPullParserConfiguration

This is the DTD-only parser configuration. It extends the basic configuration with a standard set of parser components appropriate to DTD-centric validation. Since the Xerces2 reference implementation document and DTD scanner implementations are capable of acting as pull parsers, this configuration implements the XMLPullParserConfiguration interface.

In addition to the features and properties recognized by the base parser configuration, this class recognizes these additional features and properties:

Version:
$Id: DTDConfiguration.java 713638 2008-11-13 04:42:18Z mrglavas $
Author:
Arnaud Le Hors, IBM, Andy Clark, IBM, Neil Graham, IBM

Field Summary
protected static java.lang.String ALLOW_JAVA_ENCODINGS
          Feature identifier: allow Java encodings.
protected static java.lang.String CONTINUE_AFTER_FATAL_ERROR
          Feature identifier: continue after fatal error.
protected static java.lang.String DATATYPE_VALIDATOR_FACTORY
          Property identifier: datatype validator factory.
protected static java.lang.String DOCUMENT_SCANNER
          Property identifier document scanner:
protected static java.lang.String DTD_PROCESSOR
          Property identifier: DTD loader.
protected static java.lang.String DTD_SCANNER
          Property identifier: DTD scanner.
protected static java.lang.String DTD_VALIDATOR
          Property identifier: DTD validator.
protected static java.lang.String ENTITY_MANAGER
          Property identifier: entity manager.
protected static java.lang.String ERROR_REPORTER
          Property identifier: error reporter.
protected  DTDDVFactory fDatatypeValidatorFactory
          Datatype validator factory.
protected  XMLDTDProcessor fDTDProcessor
          DTD Processor .
protected  org.apache.xerces.xni.parser.XMLDTDScanner fDTDScanner
          DTD scanner.
protected  XMLDTDValidator fDTDValidator
          DTD Validator.
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  XMLNamespaceBinder fNamespaceBinder
          Namespace binder.
protected  boolean fParseInProgress
          True if a parse is in progress.
protected  org.apache.xerces.xni.parser.XMLDocumentScanner fScanner
          Document scanner.
protected  ValidationManager fValidationManager
           
protected static java.lang.String JAXP_SCHEMA_LANGUAGE
          Property identifier: JAXP schema language / DOM schema-type.
protected static java.lang.String JAXP_SCHEMA_SOURCE
          Property identifier: JAXP schema source/ DOM schema-location.
protected static java.lang.String LOAD_EXTERNAL_DTD
          Feature identifier: load external DTD.
protected static java.lang.String LOCALE
          Property identifier: locale.
protected static java.lang.String NAMESPACE_BINDER
          Property identifier: namespace binder.
protected static java.lang.String NOTIFY_BUILTIN_REFS
          Feature identifier: notify built-in refereces.
protected static java.lang.String NOTIFY_CHAR_REFS
          Feature identifier: notify character refereces.
protected static boolean PRINT_EXCEPTION_STACK_TRACE
          Set to true and recompile to print exception stack trace.
protected static java.lang.String VALIDATION_MANAGER
           
protected static java.lang.String WARN_ON_DUPLICATE_ATTDEF
          Feature identifier: warn on duplicate attribute definition.
protected static java.lang.String WARN_ON_DUPLICATE_ENTITYDEF
          Feature identifier: warn on duplicate entity definition.
protected static java.lang.String WARN_ON_UNDECLARED_ELEMDEF
          Feature identifier: warn on undeclared element definition.
protected static java.lang.String XMLGRAMMAR_POOL
          Property identifier: grammar pool.
 
Fields inherited from class org.apache.xerces.parsers.BasicParserConfiguration
ENTITY_RESOLVER, ERROR_HANDLER, EXTERNAL_GENERAL_ENTITIES, EXTERNAL_PARAMETER_ENTITIES, fComponents, fDocumentHandler, fDTDContentModelHandler, fDTDHandler, fLastComponent, fLocale, fSymbolTable, NAMESPACES, SYMBOL_TABLE, VALIDATION, XML_STRING
 
Fields inherited from class org.apache.xerces.util.ParserConfigurationSettings
fFeatures, fParentSettings, fProperties, fRecognizedFeatures, fRecognizedProperties, PARSER_SETTINGS
 
Constructor Summary
DTDConfiguration()
          Default constructor.
DTDConfiguration(SymbolTable symbolTable)
          Constructs a parser configuration using the specified symbol table.
DTDConfiguration(SymbolTable symbolTable, org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
          Constructs a parser configuration using the specified symbol table and grammar pool.
DTDConfiguration(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(java.lang.String featureId)
          Check a feature.
protected  void checkProperty(java.lang.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 configureDTDPipeline()
           
protected  void configurePipeline()
          Configures the pipeline.
protected  DTDDVFactory createDatatypeValidatorFactory()
          Create a datatype validator factory.
protected  org.apache.xerces.xni.parser.XMLDocumentScanner createDocumentScanner()
          Create a document scanner.
protected  XMLDTDProcessor createDTDProcessor()
          Create a DTD loader .
protected  org.apache.xerces.xni.parser.XMLDTDScanner createDTDScanner()
          Create a DTD scanner.
protected  XMLDTDValidator createDTDValidator()
          Create a DTD validator.
protected  XMLEntityManager createEntityManager()
          Creates an entity manager.
protected  XMLErrorReporter createErrorReporter()
          Creates an error reporter.
protected  XMLNamespaceBinder createNamespaceBinder()
          Create a namespace binder.
protected  ValidationManager createValidationManager()
           
 java.lang.Object getProperty(java.lang.String propertyId)
          Returns the value of a property.
 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 setInputSource(org.apache.xerces.xni.parser.XMLInputSource inputSource)
          Sets the input source for the document to parse.
 void setLocale(java.util.Locale locale)
          Set the locale to use for messages.
 void setProperty(java.lang.String propertyId, java.lang.Object value)
          setProperty
 
Methods inherited from class org.apache.xerces.parsers.BasicParserConfiguration
addComponent, getDocumentHandler, getDTDContentModelHandler, getDTDHandler, getEntityResolver, getErrorHandler, getLocale, setDocumentHandler, setDTDContentModelHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature
 
Methods inherited from class org.apache.xerces.util.ParserConfigurationSettings
addRecognizedFeatures, addRecognizedProperties, getFeature
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.xerces.xni.parser.XMLParserConfiguration
addRecognizedFeatures, addRecognizedProperties, getDocumentHandler, getDTDContentModelHandler, getDTDHandler, getEntityResolver, getErrorHandler, getFeature, getLocale, setDocumentHandler, setDTDContentModelHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature
 

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

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_PROCESSOR

protected static final java.lang.String DTD_PROCESSOR
Property identifier: DTD loader.

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

JAXP_SCHEMA_LANGUAGE

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

See Also:
Constant Field Values

JAXP_SCHEMA_SOURCE

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

See Also:
Constant Field Values

LOCALE

protected static final java.lang.String LOCALE
Property identifier: locale.

See Also:
Constant Field Values

PRINT_EXCEPTION_STACK_TRACE

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

See Also:
Constant Field Values

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.


fDTDProcessor

protected XMLDTDProcessor fDTDProcessor
DTD Processor .


fDTDValidator

protected XMLDTDValidator fDTDValidator
DTD Validator.


fNamespaceBinder

protected XMLNamespaceBinder fNamespaceBinder
Namespace binder.


fValidationManager

protected ValidationManager fValidationManager

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

DTDConfiguration

public DTDConfiguration()
Default constructor.


DTDConfiguration

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

Parameters:
symbolTable - The symbol table to use.

DTDConfiguration

public DTDConfiguration(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.

DTDConfiguration

public DTDConfiguration(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

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 - Thrown if there is a configuration error.

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.

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.


configureDTDPipeline

protected void configureDTDPipeline()

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.


createDTDProcessor

protected XMLDTDProcessor createDTDProcessor()
Create a DTD loader .


createDTDValidator

protected XMLDTDValidator createDTDValidator()
Create a DTD validator.


createNamespaceBinder

protected XMLNamespaceBinder createNamespaceBinder()
Create a namespace binder.


createDatatypeValidatorFactory

protected DTDDVFactory createDatatypeValidatorFactory()
Create a datatype validator factory.


createValidationManager

protected ValidationManager createValidationManager()


Copyright 1999-2010 The Apache Software Foundation. All Rights Reserved.