org.apache.xerces.impl.dtd

## Class XMLDTDValidator

- java.lang.Object
- - org.apache.xerces.impl.dtd.XMLDTDValidator

- All Implemented Interfaces:
    XMLDTDValidatorFilter, RevalidationHandler, org.apache.xerces.xni.parser.XMLComponent, org.apache.xerces.xni.parser.XMLDocumentFilter, org.apache.xerces.xni.parser.XMLDocumentSource, org.apache.xerces.xni.XMLDocumentHandler
  Direct Known Subclasses:
    XML11DTDValidator, XMLNSDTDValidator

      public class XMLDTDValidator
      extends java.lang.Object
      implements org.apache.xerces.xni.parser.XMLComponent, org.apache.xerces.xni.parser.XMLDocumentFilter, XMLDTDValidatorFilter, RevalidationHandler

  The DTD validator. The validator implements a document filter: receiving document events from the scanner; validating the content and structure; augmenting the InfoSet, if applicable; and notifying the parser of the information resulting from the validation process.

  Formerly, this component also handled DTD events and grammar construction. To facilitate the development of a meaningful DTD grammar caching/preparsing framework, this functionality has been moved into the XMLDTDLoader class. Therefore, this class no longer implements the DTDFilter or DTDContentModelFilter interfaces.

  This component requires the following features and properties from the component manager that uses it:

  - http://xml.org/sax/features/namespaces
  - http://xml.org/sax/features/validation
  - http://apache.org/xml/features/validation/dynamic
  - http://apache.org/xml/properties/internal/symbol-table
  - http://apache.org/xml/properties/internal/error-reporter
  - http://apache.org/xml/properties/internal/grammar-pool
  - http://apache.org/xml/properties/internal/datatype-validator-factory
  Version:
    $Id: XMLDTDValidator.java 1380445 2012-09-04 04:43:34Z mrglavas $
  Author:
    Eric Ye, IBM, Andy Clark, IBM, Jeffrey Rodriguez IBM, Neil Graham, IBM

  # INTERNAL:

    Usage of this class is not supported. It may be altered or removed at any time.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static java.lang.String` | `BALANCE_SYNTAX_TREES` Feature identifier: balance syntax trees.
    `protected static java.lang.String` | `DATATYPE_VALIDATOR_FACTORY` Property identifier: datatype validator factory.
    `protected static java.lang.String` | `DYNAMIC_VALIDATION` Feature identifier: dynamic validation.
    `protected static java.lang.String` | `ERROR_REPORTER` Property identifier: error reporter.
    `protected boolean` | `fBalanceSyntaxTrees` Controls whether the DTD grammar produces balanced syntax trees.
    `protected DTDDVFactory` | `fDatatypeValidatorFactory` Datatype validator factory.
    `protected org.apache.xerces.xni.XMLLocator` | `fDocLocation`
    `protected org.apache.xerces.xni.XMLDocumentHandler` | `fDocumentHandler` Document handler.
    `protected org.apache.xerces.xni.parser.XMLDocumentSource` | `fDocumentSource`
    `protected DTDGrammar` | `fDTDGrammar` DTD Grammar.
    `protected boolean` | `fDTDValidation` Validation against only DTD
    `protected boolean` | `fDynamicValidation` Dynamic validation.
    `protected XMLErrorReporter` | `fErrorReporter` Error reporter.
    `protected DTDGrammarBucket` | `fGrammarBucket` Grammar bucket.
    `protected org.apache.xerces.xni.grammars.XMLGrammarPool` | `fGrammarPool`
    `protected org.apache.xerces.xni.NamespaceContext` | `fNamespaceContext` Namespace support.
    `protected boolean` | `fNamespaces` Namespaces.
    `protected boolean` | `fSeenDoctypeDecl` True if seen DOCTYPE declaration.
    `protected SymbolTable` | `fSymbolTable` Symbol table.
    `protected DatatypeValidator` | `fValENTITIES` Datatype validator: ENTITIES.
    `protected DatatypeValidator` | `fValENTITY` Datatype validator: ENTITY.
    `protected DatatypeValidator` | `fValID` Datatype validator: ID.
    `protected boolean` | `fValidation` Validation.
    `protected ValidationManager` | `fValidationManager`
    `protected ValidationState` | `fValidationState`
    `protected DatatypeValidator` | `fValIDRef` Datatype validator: IDREF.
    `protected DatatypeValidator` | `fValIDRefs` Datatype validator: IDREFS.
    `protected DatatypeValidator` | `fValNMTOKEN` Datatype validator: NMTOKEN.
    `protected DatatypeValidator` | `fValNMTOKENS` Datatype validator: NMTOKENS.
    `protected DatatypeValidator` | `fValNOTATION` Datatype validator: NOTATION.
    `protected boolean` | `fWarnDuplicateAttdef` warn on duplicate attribute definition, this feature works only when validation is true
    `protected static java.lang.String` | `GRAMMAR_POOL` Property identifier: grammar pool.
    `protected static java.lang.String` | `NAMESPACES` Feature identifier: namespaces.
    `protected static java.lang.String` | `PARSER_SETTINGS`
    `protected static java.lang.String` | `SYMBOL_TABLE` Property identifier: symbol table.
    `protected static java.lang.String` | `VALIDATION` Feature identifier: validation.
    `protected static java.lang.String` | `VALIDATION_MANAGER`
    `protected static java.lang.String` | `WARN_ON_DUPLICATE_ATTDEF` Feature identifier: warn on duplicate attdef

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XMLDTDValidator()` Default constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `addDTDDefaultAttrsAndValidate(org.apache.xerces.xni.QName elementName, int elementIndex, org.apache.xerces.xni.XMLAttributes attributes)` Add default attributes and validate.
    `boolean` | `characterData(java.lang.String data, org.apache.xerces.xni.Augmentations augs)` Character content.
    `void` | `characters(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)` Character content.
    `void` | `comment(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)` A comment.
    `void` | `doctypeDecl(java.lang.String rootElement, java.lang.String publicId, java.lang.String systemId, org.apache.xerces.xni.Augmentations augs)` Notifies of the presence of the DOCTYPE line in the document.
    `void` | `emptyElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)` An empty element.
    `void` | `endCDATA(org.apache.xerces.xni.Augmentations augs)` The end of a CDATA section.
    `void` | `endDocument(org.apache.xerces.xni.Augmentations augs)` The end of the document.
    `void` | `endElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.Augmentations augs)` The end of an element.
    `void` | `endGeneralEntity(java.lang.String name, org.apache.xerces.xni.Augmentations augs)` This method notifies the end of a general entity.
    `protected void` | `endNamespaceScope(org.apache.xerces.xni.QName element, org.apache.xerces.xni.Augmentations augs, boolean isEmpty)`
    `org.apache.xerces.xni.XMLDocumentHandler` | `getDocumentHandler()` Returns the document handler
    `org.apache.xerces.xni.parser.XMLDocumentSource` | `getDocumentSource()` Returns the document source
    `protected java.lang.String` | `getExternalEntityRefInAttrValue(java.lang.String nonNormalizedValue)` Checks entities in attribute values for standalone VC.
    `java.lang.Boolean` | `getFeatureDefault(java.lang.String featureId)` Returns the default state for a feature, or null if this component does not want to report a default value for this feature.
    `java.lang.Object` | `getPropertyDefault(java.lang.String propertyId)` Returns the default state for a property, or null if this component does not want to report a default value for this property.
    `java.lang.String[]` | `getRecognizedFeatures()` Returns a list of feature identifiers that are recognized by this component.
    `java.lang.String[]` | `getRecognizedProperties()` Returns a list of property identifiers that are recognized by this component.
    `protected void` | `handleEndElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.Augmentations augs, boolean isEmpty)` Handle end element.
    `protected boolean` | `handleStartElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)` Handle element
    `boolean` | `hasGrammar()` Returns true if the validator has a DTD grammar
    `void` | `ignorableWhitespace(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)` Ignorable whitespace.
    `protected void` | `init()` initialization
    `protected boolean` | `invalidStandaloneAttDef(org.apache.xerces.xni.QName element, org.apache.xerces.xni.QName attribute)` Returns true if invalid standalone attribute definition.
    `protected boolean` | `isSpace(int c)`
    `void` | `processingInstruction(java.lang.String target, org.apache.xerces.xni.XMLString data, org.apache.xerces.xni.Augmentations augs)` A processing instruction.
    `void` | `reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)` Resets the component.
    `void` | `setDocumentHandler(org.apache.xerces.xni.XMLDocumentHandler documentHandler)` Sets the document handler to receive information about the document.
    `void` | `setDocumentSource(org.apache.xerces.xni.parser.XMLDocumentSource source)` Sets the document source
    `void` | `setFeature(java.lang.String featureId, boolean state)` Sets the state of a feature.
    `void` | `setProperty(java.lang.String propertyId, java.lang.Object value)` Sets the value of a property.
    `void` | `startCDATA(org.apache.xerces.xni.Augmentations augs)` The start of a CDATA section.
    `void` | `startDocument(org.apache.xerces.xni.XMLLocator locator, java.lang.String encoding, org.apache.xerces.xni.NamespaceContext namespaceContext, org.apache.xerces.xni.Augmentations augs)` The start of the document.
    `void` | `startElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)` The start of an element.
    `void` | `startGeneralEntity(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, java.lang.String encoding, org.apache.xerces.xni.Augmentations augs)` This method notifies the start of a general entity.
    `protected void` | `startNamespaceScope(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)`
    `void` | `textDecl(java.lang.String version, java.lang.String encoding, org.apache.xerces.xni.Augmentations augs)` Notifies of the presence of a TextDecl line in an entity.
    `boolean` | `validate()` Return true if validator must validate the document
    `protected void` | `validateDTDattribute(org.apache.xerces.xni.QName element, java.lang.String attValue, XMLAttributeDecl attributeDecl)` Validate attributes in DTD fashion.
    `void` | `xmlDecl(java.lang.String version, java.lang.String encoding, java.lang.String standalone, org.apache.xerces.xni.Augmentations augs)` Notifies of the presence of an XMLDecl line in the document.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### NAMESPACES

          protected static final java.lang.String NAMESPACES

      Feature identifier: namespaces.
      See Also:
        Constant Field Values

    - #### VALIDATION

          protected static final java.lang.String VALIDATION

      Feature identifier: validation.
      See Also:
        Constant Field Values

    - #### DYNAMIC_VALIDATION

          protected static final java.lang.String DYNAMIC_VALIDATION

      Feature identifier: dynamic validation.
      See Also:
        Constant Field Values

    - #### BALANCE_SYNTAX_TREES

          protected static final java.lang.String BALANCE_SYNTAX_TREES

      Feature identifier: balance syntax trees.
      See Also:
        Constant Field Values

    - #### WARN_ON_DUPLICATE_ATTDEF

          protected static final java.lang.String WARN_ON_DUPLICATE_ATTDEF

      Feature identifier: warn on duplicate attdef
      See Also:
        Constant Field Values

    - #### PARSER_SETTINGS

          protected static final java.lang.String PARSER_SETTINGS

      See Also:
        Constant Field Values

    - #### SYMBOL_TABLE

          protected static final java.lang.String SYMBOL_TABLE

      Property identifier: symbol table.
      See Also:
        Constant Field Values

    - #### ERROR_REPORTER

          protected static final java.lang.String ERROR_REPORTER

      Property identifier: error reporter.
      See Also:
        Constant Field Values

    - #### GRAMMAR_POOL

          protected static final java.lang.String GRAMMAR_POOL

      Property identifier: grammar pool.
      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

    - #### fValidationManager

          protected ValidationManager fValidationManager

    - #### fValidationState

          protected final ValidationState fValidationState

    - #### fNamespaces

          protected boolean fNamespaces

      Namespaces.

    - #### fValidation

          protected boolean fValidation

      Validation.

    - #### fDTDValidation

          protected boolean fDTDValidation

      Validation against only DTD

    - #### fDynamicValidation

          protected boolean fDynamicValidation

      Dynamic validation. This state of this feature is only useful when the validation feature is set to `true`.

    - #### fBalanceSyntaxTrees

          protected boolean fBalanceSyntaxTrees

      Controls whether the DTD grammar produces balanced syntax trees.

    - #### fWarnDuplicateAttdef

          protected boolean fWarnDuplicateAttdef

      warn on duplicate attribute definition, this feature works only when validation is true

    - #### fSymbolTable

          protected SymbolTable fSymbolTable

      Symbol table.

    - #### fErrorReporter

          protected XMLErrorReporter fErrorReporter

      Error reporter.

    - #### fGrammarPool

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

    - #### fGrammarBucket

          protected DTDGrammarBucket fGrammarBucket

      Grammar bucket.

    - #### fDocLocation

          protected org.apache.xerces.xni.XMLLocator fDocLocation

    - #### fNamespaceContext

          protected org.apache.xerces.xni.NamespaceContext fNamespaceContext

      Namespace support.

    - #### fDatatypeValidatorFactory

          protected DTDDVFactory fDatatypeValidatorFactory

      Datatype validator factory.

    - #### fDocumentHandler

          protected org.apache.xerces.xni.XMLDocumentHandler fDocumentHandler

      Document handler.

    - #### fDocumentSource

          protected org.apache.xerces.xni.parser.XMLDocumentSource fDocumentSource

    - #### fDTDGrammar

          protected DTDGrammar fDTDGrammar

      DTD Grammar.

    - #### fSeenDoctypeDecl

          protected boolean fSeenDoctypeDecl

      True if seen DOCTYPE declaration.

    - #### fValID

          protected DatatypeValidator fValID

      Datatype validator: ID.

    - #### fValIDRef

          protected DatatypeValidator fValIDRef

      Datatype validator: IDREF.

    - #### fValIDRefs

          protected DatatypeValidator fValIDRefs

      Datatype validator: IDREFS.

    - #### fValENTITY

          protected DatatypeValidator fValENTITY

      Datatype validator: ENTITY.

    - #### fValENTITIES

          protected DatatypeValidator fValENTITIES

      Datatype validator: ENTITIES.

    - #### fValNMTOKEN

          protected DatatypeValidator fValNMTOKEN

      Datatype validator: NMTOKEN.

    - #### fValNMTOKENS

          protected DatatypeValidator fValNMTOKENS

      Datatype validator: NMTOKENS.

    - #### fValNOTATION

          protected DatatypeValidator fValNOTATION

      Datatype validator: NOTATION.

  - ### Constructor Detail

    - #### XMLDTDValidator

          public XMLDTDValidator()

      Default constructor.

  - ### Method Detail

    - #### reset

          public void reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)
                     throws org.apache.xerces.xni.parser.XMLConfigurationException

      Description copied from interface: `org.apache.xerces.xni.parser.XMLComponent`
      Resets the component. The component can query the component manager about any features and properties that affect the operation of the component.
      Specified by:
        `reset` in interface `org.apache.xerces.xni.parser.XMLComponent`
      Parameters:
        `componentManager` - The component manager.
      Throws:
        `org.apache.xerces.xni.parser.XMLConfigurationException`

    - #### getRecognizedFeatures

          public java.lang.String[] getRecognizedFeatures()

      Returns a list of feature identifiers that are recognized by this component. This method may return null if no features are recognized by this component.
      Specified by:
        `getRecognizedFeatures` in interface `org.apache.xerces.xni.parser.XMLComponent`

    - #### setFeature

          public void setFeature(java.lang.String featureId,
                        boolean state)
                          throws org.apache.xerces.xni.parser.XMLConfigurationException

      Sets the state of a feature. This method is called by the component manager any time after reset when a feature changes state.

      Note: Components should silently ignore features that do not affect the operation of the component.

      Specified by:
        `setFeature` in interface `org.apache.xerces.xni.parser.XMLComponent`
      Parameters:
        `featureId` - The feature identifier.
        `state` - The state of the feature.
      Throws:
        `SAXNotRecognizedException` - The component should not throw this exception.
        `SAXNotSupportedException` - The component should not throw this exception.
        `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.

    - #### getRecognizedProperties

          public java.lang.String[] getRecognizedProperties()

      Returns a list of property identifiers that are recognized by this component. This method may return null if no properties are recognized by this component.
      Specified by:
        `getRecognizedProperties` in interface `org.apache.xerces.xni.parser.XMLComponent`

    - #### setProperty

          public void setProperty(java.lang.String propertyId,
                         java.lang.Object value)
                           throws org.apache.xerces.xni.parser.XMLConfigurationException

      Sets the value of a property. This method is called by the component manager any time after reset when a property changes value.

      Note: Components should silently ignore properties that do not affect the operation of the component.

      Specified by:
        `setProperty` in interface `org.apache.xerces.xni.parser.XMLComponent`
      Parameters:
        `propertyId` - The property identifier.
        `value` - The value of the property.
      Throws:
        `SAXNotRecognizedException` - The component should not throw this exception.
        `SAXNotSupportedException` - The component should not throw this exception.
        `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.

    - #### getFeatureDefault

          public java.lang.Boolean getFeatureDefault(java.lang.String featureId)

      Returns the default state for a feature, or null if this component does not want to report a default value for this feature.
      Specified by:
        `getFeatureDefault` in interface `org.apache.xerces.xni.parser.XMLComponent`
      Parameters:
        `featureId` - The feature identifier.
      Since:
        Xerces 2.2.0

    - #### getPropertyDefault

          public java.lang.Object getPropertyDefault(java.lang.String propertyId)

      Returns the default state for a property, or null if this component does not want to report a default value for this property.
      Specified by:
        `getPropertyDefault` in interface `org.apache.xerces.xni.parser.XMLComponent`
      Parameters:
        `propertyId` - The property identifier.
      Since:
        Xerces 2.2.0

    - #### setDocumentHandler

          public void setDocumentHandler(org.apache.xerces.xni.XMLDocumentHandler documentHandler)

      Sets the document handler to receive information about the document.
      Specified by:
        `setDocumentHandler` in interface `org.apache.xerces.xni.parser.XMLDocumentSource`

    - #### getDocumentHandler

          public org.apache.xerces.xni.XMLDocumentHandler getDocumentHandler()

      Returns the document handler
      Specified by:
        `getDocumentHandler` in interface `org.apache.xerces.xni.parser.XMLDocumentSource`

    - #### setDocumentSource

          public void setDocumentSource(org.apache.xerces.xni.parser.XMLDocumentSource source)

      Sets the document source
      Specified by:
        `setDocumentSource` in interface `org.apache.xerces.xni.XMLDocumentHandler`

    - #### getDocumentSource

          public org.apache.xerces.xni.parser.XMLDocumentSource getDocumentSource()

      Returns the document source
      Specified by:
        `getDocumentSource` in interface `org.apache.xerces.xni.XMLDocumentHandler`

    - #### startDocument

          public void startDocument(org.apache.xerces.xni.XMLLocator locator,
                           java.lang.String encoding,
                           org.apache.xerces.xni.NamespaceContext namespaceContext,
                           org.apache.xerces.xni.Augmentations augs)
                             throws org.apache.xerces.xni.XNIException

      The start of the document.
      Specified by:
        `startDocument` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `locator` - The system identifier of the entity if the entity is external, null otherwise.
        `encoding` - The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader).
        `namespaceContext` - The namespace context in effect at the start of this document. This object represents the current context. Implementors of this class are responsible for copying the namespace bindings from the the current context (and its parent contexts) if that information is important.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### xmlDecl

          public void xmlDecl(java.lang.String version,
                     java.lang.String encoding,
                     java.lang.String standalone,
                     org.apache.xerces.xni.Augmentations augs)
                       throws org.apache.xerces.xni.XNIException

      Notifies of the presence of an XMLDecl line in the document. If present, this method will be called immediately following the startDocument call.
      Specified by:
        `xmlDecl` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `version` - The XML version.
        `encoding` - The IANA encoding name of the document, or null if not specified.
        `standalone` - The standalone value, or null if not specified.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### doctypeDecl

          public void doctypeDecl(java.lang.String rootElement,
                         java.lang.String publicId,
                         java.lang.String systemId,
                         org.apache.xerces.xni.Augmentations augs)
                           throws org.apache.xerces.xni.XNIException

      Notifies of the presence of the DOCTYPE line in the document.
      Specified by:
        `doctypeDecl` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `rootElement` - The name of the root element.
        `publicId` - The public identifier if an external DTD or null if the external DTD is specified using SYSTEM.
        `systemId` - The system identifier if an external DTD, null otherwise.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### startElement

          public void startElement(org.apache.xerces.xni.QName element,
                          org.apache.xerces.xni.XMLAttributes attributes,
                          org.apache.xerces.xni.Augmentations augs)
                            throws org.apache.xerces.xni.XNIException

      The start of an element.
      Specified by:
        `startElement` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `element` - The name of the element.
        `attributes` - The element attributes.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### emptyElement

          public void emptyElement(org.apache.xerces.xni.QName element,
                          org.apache.xerces.xni.XMLAttributes attributes,
                          org.apache.xerces.xni.Augmentations augs)
                            throws org.apache.xerces.xni.XNIException

      An empty element.
      Specified by:
        `emptyElement` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `element` - The name of the element.
        `attributes` - The element attributes.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### characters

          public void characters(org.apache.xerces.xni.XMLString text,
                        org.apache.xerces.xni.Augmentations augs)
                          throws org.apache.xerces.xni.XNIException

      Character content.
      Specified by:
        `characters` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `text` - The content.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### ignorableWhitespace

          public void ignorableWhitespace(org.apache.xerces.xni.XMLString text,
                                 org.apache.xerces.xni.Augmentations augs)
                                   throws org.apache.xerces.xni.XNIException

      Ignorable whitespace. For this method to be called, the document source must have some way of determining that the text containing only whitespace characters should be considered ignorable. For example, the validator can determine if a length of whitespace characters in the document are ignorable based on the element content model.
      Specified by:
        `ignorableWhitespace` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `text` - The ignorable whitespace.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### endElement

          public void endElement(org.apache.xerces.xni.QName element,
                        org.apache.xerces.xni.Augmentations augs)
                          throws org.apache.xerces.xni.XNIException

      The end of an element.
      Specified by:
        `endElement` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `element` - The name of the element.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### startCDATA

          public void startCDATA(org.apache.xerces.xni.Augmentations augs)
                          throws org.apache.xerces.xni.XNIException

      The start of a CDATA section.
      Specified by:
        `startCDATA` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### endCDATA

          public void endCDATA(org.apache.xerces.xni.Augmentations augs)
                        throws org.apache.xerces.xni.XNIException

      The end of a CDATA section.
      Specified by:
        `endCDATA` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### endDocument

          public void endDocument(org.apache.xerces.xni.Augmentations augs)
                           throws org.apache.xerces.xni.XNIException

      The end of the document.
      Specified by:
        `endDocument` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### comment

          public void comment(org.apache.xerces.xni.XMLString text,
                     org.apache.xerces.xni.Augmentations augs)
                       throws org.apache.xerces.xni.XNIException

      A comment.
      Specified by:
        `comment` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `text` - The text in the comment.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by application to signal an error.

    - #### processingInstruction

          public void processingInstruction(java.lang.String target,
                                   org.apache.xerces.xni.XMLString data,
                                   org.apache.xerces.xni.Augmentations augs)
                                     throws org.apache.xerces.xni.XNIException

      A processing instruction. Processing instructions consist of a target name and, optionally, text data. The data is only meaningful to the application.

      Typically, a processing instruction's data will contain a series of pseudo-attributes. These pseudo-attributes follow the form of element attributes but are not parsed or presented to the application as anything other than text. The application is responsible for parsing the data.

      Specified by:
        `processingInstruction` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `target` - The target.
        `data` - The data or null if none specified.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### startGeneralEntity

          public void startGeneralEntity(java.lang.String name,
                                org.apache.xerces.xni.XMLResourceIdentifier identifier,
                                java.lang.String encoding,
                                org.apache.xerces.xni.Augmentations augs)
                                  throws org.apache.xerces.xni.XNIException

      This method notifies the start of a general entity.

      Note: This method is not called for entity references appearing as part of attribute values.

      Specified by:
        `startGeneralEntity` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `name` - The name of the general entity.
        `identifier` - The resource identifier.
        `encoding` - The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader).
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### endGeneralEntity

          public void endGeneralEntity(java.lang.String name,
                              org.apache.xerces.xni.Augmentations augs)
                                throws org.apache.xerces.xni.XNIException

      This method notifies the end of a general entity.

      Note: This method is not called for entity references appearing as part of attribute values.

      Specified by:
        `endGeneralEntity` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `name` - The name of the entity.
        `augs` - Additional information that may include infoset augmentations
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### textDecl

          public void textDecl(java.lang.String version,
                      java.lang.String encoding,
                      org.apache.xerces.xni.Augmentations augs)
                        throws org.apache.xerces.xni.XNIException

      Notifies of the presence of a TextDecl line in an entity. If present, this method will be called immediately following the startParameterEntity call.

      Note: This method is only called for external parameter entities referenced in the DTD.

      Specified by:
        `textDecl` in interface `org.apache.xerces.xni.XMLDocumentHandler`
      Parameters:
        `version` - The XML version, or null if not specified.
        `encoding` - The IANA encoding name of the entity.
        `augs` - Additional information that may include infoset augmentations.
      Throws:
        `org.apache.xerces.xni.XNIException` - Thrown by handler to signal an error.

    - #### hasGrammar

          public final boolean hasGrammar()

      Description copied from interface: `XMLDTDValidatorFilter`
      Returns true if the validator has a DTD grammar
      Specified by:
        `hasGrammar` in interface `XMLDTDValidatorFilter`
      Returns:
        true if the validator has a DTD grammar

    - #### validate

          public final boolean validate()

      Description copied from interface: `XMLDTDValidatorFilter`
      Return true if validator must validate the document
      Specified by:
        `validate` in interface `XMLDTDValidatorFilter`
      Returns:
        true if validator must validate the document

    - #### addDTDDefaultAttrsAndValidate

          protected void addDTDDefaultAttrsAndValidate(org.apache.xerces.xni.QName elementName,
                                           int elementIndex,
                                           org.apache.xerces.xni.XMLAttributes attributes)
                                                throws org.apache.xerces.xni.XNIException

      Add default attributes and validate.
      Throws:
        `org.apache.xerces.xni.XNIException`

    - #### getExternalEntityRefInAttrValue

          protected java.lang.String getExternalEntityRefInAttrValue(java.lang.String nonNormalizedValue)

      Checks entities in attribute values for standalone VC.

    - #### validateDTDattribute

          protected void validateDTDattribute(org.apache.xerces.xni.QName element,
                                  java.lang.String attValue,
                                  XMLAttributeDecl attributeDecl)
                                       throws org.apache.xerces.xni.XNIException

      Validate attributes in DTD fashion.
      Throws:
        `org.apache.xerces.xni.XNIException`

    - #### invalidStandaloneAttDef

          protected boolean invalidStandaloneAttDef(org.apache.xerces.xni.QName element,
                                        org.apache.xerces.xni.QName attribute)

      Returns true if invalid standalone attribute definition.

    - #### init

          protected void init()

      initialization

    - #### handleStartElement

          protected boolean handleStartElement(org.apache.xerces.xni.QName element,
                                   org.apache.xerces.xni.XMLAttributes attributes,
                                   org.apache.xerces.xni.Augmentations augs)
                                        throws org.apache.xerces.xni.XNIException

      Handle element
      Returns:
        true if validator is removed from the pipeline
      Throws:
        `org.apache.xerces.xni.XNIException`

    - #### startNamespaceScope

          protected void startNamespaceScope(org.apache.xerces.xni.QName element,
                                 org.apache.xerces.xni.XMLAttributes attributes,
                                 org.apache.xerces.xni.Augmentations augs)

    - #### handleEndElement

          protected void handleEndElement(org.apache.xerces.xni.QName element,
                              org.apache.xerces.xni.Augmentations augs,
                              boolean isEmpty)
                                   throws org.apache.xerces.xni.XNIException

      Handle end element.
      Throws:
        `org.apache.xerces.xni.XNIException`

    - #### endNamespaceScope

          protected void endNamespaceScope(org.apache.xerces.xni.QName element,
                               org.apache.xerces.xni.Augmentations augs,
                               boolean isEmpty)

    - #### isSpace

          protected boolean isSpace(int c)

    - #### characterData

          public boolean characterData(java.lang.String data,
                              org.apache.xerces.xni.Augmentations augs)

      Description copied from interface: `RevalidationHandler`
      Character content.
      Specified by:
        `characterData` in interface `RevalidationHandler`
      Parameters:
        `data` - The character data.
        `augs` - Augmentations
      Returns:
        True if data is whitespace only

Copyright © 1999-2022 The Apache Software Foundation. All Rights Reserved.