org.apache.xerces.parsers

Class DTDConfiguration

Implemented Interfaces:
org.apache.xerces.xni.parser.XMLComponentManager, org.apache.xerces.xni.parser.XMLParserConfiguration, org.apache.xerces.xni.parser.XMLPullParserConfiguration
Known Direct 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:

  • Properties
  • Version:
    $Id: DTDConfiguration.java,v 1.18 2004/02/24 23:15:57 mrglavas Exp $
    Authors:
    Arnaud Le Hors, IBM
    Andy Clark, IBM
    Neil Graham, 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_PROCESSOR
    Property identifier: DTD loader.
    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
    JAXP_SCHEMA_LANGUAGE
    Property identifier: JAXP schema language / DOM schema-type.
    protected static String
    JAXP_SCHEMA_SOURCE
    Property identifier: JAXP schema source/ DOM schema-location.
    protected static String
    LOAD_EXTERNAL_DTD
    Feature identifier: load external DTD.
    protected static String
    NAMESPACE_BINDER
    Property identifier: namespace binder.
    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 boolean
    PRINT_EXCEPTION_STACK_TRACE
    Set to true and recompile to print exception stack trace.
    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 XMLDTDProcessor
    fDTDProcessor
    DTD Processor .
    protected org.apache.xerces.xni.parser.XMLDTDScanner
    fDTDScanner
    DTD scanner.
    protected XMLDTDValidator
    fDTDValidator
    DTD Validator.
    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 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

    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

    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(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
    configureDTDPipeline()
    protected void
    configurePipeline()
    Configures the pipeline.
    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 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 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(Locale locale)
    Set the locale to use for messages.

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

    ERROR_REPORTER

    protected static final String ERROR_REPORTER
    Property identifier: error reporter.

    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.

    NAMESPACE_BINDER

    protected static final String NAMESPACE_BINDER
    Property identifier: namespace binder.

    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.

    PRINT_EXCEPTION_STACK_TRACE

    protected static final boolean PRINT_EXCEPTION_STACK_TRACE
    Set to true and recompile to print exception stack trace.
    Field Value:
    false

    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.

    fDTDProcessor

    protected XMLDTDProcessor fDTDProcessor
    DTD Processor .

    fDTDScanner

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

    fDTDValidator

    protected XMLDTDValidator fDTDValidator
    DTD Validator.

    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

    fNamespaceBinder

    protected XMLNamespaceBinder fNamespaceBinder
    Namespace binder.

    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

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

    configureDTDPipeline

    protected void configureDTDPipeline()

    configurePipeline

    protected void configurePipeline()
    Configures the pipeline.

    createDTDProcessor

    protected XMLDTDProcessor createDTDProcessor()
    Create a DTD loader .

    createDTDScanner

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

    createDTDValidator

    protected XMLDTDValidator createDTDValidator()
    Create a DTD validator.

    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.

    createNamespaceBinder

    protected XMLNamespaceBinder createNamespaceBinder()
    Create a namespace binder.

    createValidationManager

    protected ValidationManager createValidationManager()

    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.

    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.

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