## org.apache.xerces.parsers
Class DTDConfiguration

    java.lang.Object
      |
      +--org.apache.xerces.util.ParserConfigurationSettings
            |
            +--org.apache.xerces.parsers.BasicParserConfiguration
                  |
                  +--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:

- Features
  - http://apache.org/xml/features/validation/warn-on-duplicate-attdef
  - http://apache.org/xml/features/validation/warn-on-undeclared-elemdef
  - http://apache.org/xml/features/allow-java-encodings
  - http://apache.org/xml/features/continue-after-fatal-error
  - http://apache.org/xml/features/load-external-dtd
- Properties
  - http://apache.org/xml/properties/internal/error-reporter
  - http://apache.org/xml/properties/internal/entity-manager
  - http://apache.org/xml/properties/internal/document-scanner
  - http://apache.org/xml/properties/internal/dtd-scanner
  - http://apache.org/xml/properties/internal/grammar-pool
  - http://apache.org/xml/properties/internal/validator/dtd
  - http://apache.org/xml/properties/internal/datatype-validator-factory

Version:
  $Id: DTDConfiguration.java,v 1.12 2003/03/23 02:12:24 andyc Exp $
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` `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`

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

Methods inherited from class org.apache.xerces.parsers.BasicParserConfiguration
`addComponent, getDocumentHandler, getDTDContentModelHandler, getDTDHandler, getEntityResolver, getErrorHandler, getLocale, setDocumentHandler, setDTDContentModelHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setProperty`

Methods inherited from class org.apache.xerces.util.ParserConfigurationSettings
`addRecognizedFeatures, addRecognizedProperties, getFeature, getProperty`

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, getProperty, setDocumentHandler, setDTDContentModelHandler, setDTDHandler, setEntityResolver, setErrorHandler, setFeature, setProperty`

Field Detail

### WARN_ON_DUPLICATE_ATTDEF

    protected static final java.lang.String WARN_ON_DUPLICATE_ATTDEF

  Feature identifier: warn on duplicate attribute definition.

### WARN_ON_DUPLICATE_ENTITYDEF

    protected static final java.lang.String WARN_ON_DUPLICATE_ENTITYDEF

  Feature identifier: warn on duplicate entity definition.

### WARN_ON_UNDECLARED_ELEMDEF

    protected static final java.lang.String WARN_ON_UNDECLARED_ELEMDEF

  Feature identifier: warn on undeclared element definition.

### ALLOW_JAVA_ENCODINGS

    protected static final java.lang.String ALLOW_JAVA_ENCODINGS

  Feature identifier: allow Java encodings.

### CONTINUE_AFTER_FATAL_ERROR

    protected static final java.lang.String CONTINUE_AFTER_FATAL_ERROR

  Feature identifier: continue after fatal error.

### LOAD_EXTERNAL_DTD

    protected static final java.lang.String LOAD_EXTERNAL_DTD

  Feature identifier: load external DTD.

### NOTIFY_BUILTIN_REFS

    protected static final java.lang.String NOTIFY_BUILTIN_REFS

  Feature identifier: notify built-in refereces.

### NOTIFY_CHAR_REFS

    protected static final java.lang.String NOTIFY_CHAR_REFS

  Feature identifier: notify character refereces.

### ERROR_REPORTER

    protected static final java.lang.String ERROR_REPORTER

  Property identifier: error reporter.

### ENTITY_MANAGER

    protected static final java.lang.String ENTITY_MANAGER

  Property identifier: entity manager.

### DOCUMENT_SCANNER

    protected static final java.lang.String DOCUMENT_SCANNER

  Property identifier document scanner:

### DTD_SCANNER

    protected static final java.lang.String DTD_SCANNER

  Property identifier: DTD scanner.

### XMLGRAMMAR_POOL

    protected static final java.lang.String XMLGRAMMAR_POOL

  Property identifier: grammar pool.

### DTD_PROCESSOR

    protected static final java.lang.String DTD_PROCESSOR

  Property identifier: DTD loader.

### DTD_VALIDATOR

    protected static final java.lang.String DTD_VALIDATOR

  Property identifier: DTD validator.

### NAMESPACE_BINDER

    protected static final java.lang.String NAMESPACE_BINDER

  Property identifier: namespace binder.

### DATATYPE_VALIDATOR_FACTORY

    protected static final java.lang.String DATATYPE_VALIDATOR_FACTORY

  Property identifier: datatype validator factory.

### VALIDATION_MANAGER

    protected static final java.lang.String VALIDATION_MANAGER

### JAXP_SCHEMA_LANGUAGE

    protected static final java.lang.String JAXP_SCHEMA_LANGUAGE

  Property identifier: JAXP schema language / DOM schema-type.

### JAXP_SCHEMA_SOURCE

    protected static final java.lang.String JAXP_SCHEMA_SOURCE

  Property identifier: JAXP schema source/ DOM schema-location.

### PRINT_EXCEPTION_STACK_TRACE

    protected static final boolean PRINT_EXCEPTION_STACK_TRACE

  Set to true and recompile to print exception stack trace.

### 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

### 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`
  Overrides:
    `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 `ParserConfigurationSettings`
  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-2003 Apache XML Project. All Rights Reserved.