org.apache.xerces.impl.xs

## Class XMLSchemaValidator

- java.lang.Object
- - org.apache.xerces.impl.xs.XMLSchemaValidator

All Implemented Interfaces:
  RevalidationHandler, FieldActivator, XSElementDeclHelper, org.apache.xerces.xni.parser.XMLComponent, org.apache.xerces.xni.parser.XMLDocumentFilter, org.apache.xerces.xni.parser.XMLDocumentSource, org.apache.xerces.xni.XMLDocumentHandler

    public class XMLSchemaValidator
    extends java.lang.Object
    implements org.apache.xerces.xni.parser.XMLComponent, org.apache.xerces.xni.parser.XMLDocumentFilter, FieldActivator, RevalidationHandler, XSElementDeclHelper

The XML Schema 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.

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

- http://xml.org/sax/features/validation
- http://apache.org/xml/properties/internal/symbol-table
- http://apache.org/xml/properties/internal/error-reporter
- http://apache.org/xml/properties/internal/entity-resolver

Version:
  $Id: XMLSchemaValidator.java 1024038 2010-10-18 22:06:35Z sandygao $
Author:
  Sandy Gao IBM, Elena Litani IBM, Andy Clark IBM, Neeraj Bajaj, Sun Microsystems, inc.

# INTERNAL:

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

### Nested Class Summary

Nested Classes
`protected class` `XMLSchemaValidator.KeyRefValueStore` Key reference value store.
`protected class` `XMLSchemaValidator.KeyValueStore` Key value store.
`protected static class` `XMLSchemaValidator.LocalIDKey`
`protected static class` `XMLSchemaValidator.ShortVector` A simple vector for `short`s.
`protected class` `XMLSchemaValidator.UniqueValueStore` Unique value store.
`protected class` `XMLSchemaValidator.ValueStoreBase` Value store implementation base class.
`protected class` `XMLSchemaValidator.ValueStoreCache` Value store cache.
`protected static class` `XMLSchemaValidator.XPathMatcherStack` Stack of XPath matchers for identity constraints.
`protected class` `XMLSchemaValidator.XSIErrorReporter` A wrapper of the standard error reporter.

### Field Summary

Fields
`protected static java.lang.String` `ALLOW_JAVA_ENCODINGS` Feature identifier: whether to recognize java encoding names
`protected static java.lang.String` `CONTINUE_AFTER_FATAL_ERROR` Feature identifier: whether to continue parsing a schema after a fatal error is encountered
`protected static java.lang.String` `DYNAMIC_VALIDATION` Feature identifier: dynamic validation.
`protected static java.lang.String` `ENTITY_MANAGER`
`static java.lang.String` `ENTITY_RESOLVER` Property identifier: entity resolver.
`static java.lang.String` `ERROR_REPORTER` Property identifier: error reporter.
`protected AugmentationsImpl` `fAugmentations`
`protected boolean` `fAugPSVI`
`protected ElementPSVImpl` `fCurrentPSVI` current PSVI element info
`protected org.apache.xerces.xni.XMLString` `fDefaultValue`
`protected org.apache.xerces.xni.XMLDocumentHandler` `fDocumentHandler` Document handler.
`protected org.apache.xerces.xni.parser.XMLDocumentSource` `fDocumentSource`
`protected boolean` `fDoValidation`
`protected boolean` `fDynamicValidation`
`protected boolean` `fEntityRef`
`protected org.apache.xerces.xni.parser.XMLEntityResolver` `fEntityResolver` Entity resolver
`protected java.util.Hashtable` `fExpandedLocationPairs`
`protected java.lang.String` `fExternalNoNamespaceSchema`
`protected java.lang.String` `fExternalSchemas`
`protected boolean` `fFullChecking`
`protected org.apache.xerces.xni.grammars.XMLGrammarPool` `fGrammarPool`
`protected boolean` `fIdConstraint`
`protected boolean` `fInCDATA`
`protected java.lang.Object` `fJaxpSchemaSource`
`protected java.util.Hashtable` `fLocationPairs`
`protected XMLSchemaValidator.XPathMatcherStack` `fMatcherStack` Stack of active XPath matchers for identity constraints.
`protected boolean` `fNamespaceGrowth`
`protected boolean` `fNormalizeData`
`protected boolean` `fSchemaDynamicValidation`
`protected boolean` `fSchemaElementDefault`
`protected SymbolTable` `fSymbolTable` Symbol table.
`protected java.util.ArrayList` `fUnparsedLocations`
`protected boolean` `fUseGrammarPoolOnly`
`protected ValidationManager` `fValidationManager`
`protected ConfigurableValidationState` `fValidationState`
`protected XMLSchemaValidator.ValueStoreCache` `fValueStoreCache` Cache of value stores for identity constraint fields.
`protected XSDDescription` `fXSDDescription` Schema Grammar Description passed, to give a chance to application to supply the Grammar
`protected XMLSchemaValidator.XSIErrorReporter` `fXSIErrorReporter` Error reporter.
`protected static java.lang.String` `GENERATE_SYNTHETIC_ANNOTATIONS` Feature: generate synthetic annotations
`protected static java.lang.String` `HONOUR_ALL_SCHEMALOCATIONS` Feature identifier: honour all schemaLocations
`protected static int` `ID_CONSTRAINT_NUM`
`protected static java.lang.String` `ID_IDREF_CHECKING` Feature identifier: whether to ignore ID/IDREF errors
`protected static java.lang.String` `IDENTITY_CONSTRAINT_CHECKING` Feature identifier: whether to ignore identity constraint errors
`protected static java.lang.String` `IGNORE_XSI_TYPE` Feature identifier: whether to ignore xsi:type attributes until a global element declaration is encountered
`protected static java.lang.String` `JAXP_SCHEMA_LANGUAGE` Property identifier: JAXP schema language.
`protected static java.lang.String` `JAXP_SCHEMA_SOURCE` Property identifier: JAXP schema source.
`protected static java.lang.String` `NAMESPACE_GROWTH` Feature identifier: namespace growth
`protected static java.lang.String` `NORMALIZE_DATA` Feature identifier: expose schema normalized value
`protected static java.lang.String` `PARSER_SETTINGS`
`protected static java.lang.String` `ROOT_ELEMENT_DECL` Property identifier: root element declaration.
`protected static java.lang.String` `ROOT_TYPE_DEF` Property identifier: root type definition.
`protected static java.lang.String` `SCHEMA_AUGMENT_PSVI` Feature identifier: augment PSVI
`protected static java.lang.String` `SCHEMA_DV_FACTORY` Property identifier: Schema DV Factory
`protected static java.lang.String` `SCHEMA_ELEMENT_DEFAULT` Feature identifier: send element default value via characters()
`protected static java.lang.String` `SCHEMA_FULL_CHECKING` Feature identifier: schema full checking
`protected static java.lang.String` `SCHEMA_LOCATION` Property identifier: schema location.
`protected static java.lang.String` `SCHEMA_NONS_LOCATION` Property identifier: no namespace schema location.
`protected static java.lang.String` `SCHEMA_VALIDATION` Feature identifier: validation.
`protected static java.lang.String` `STANDARD_URI_CONFORMANT_FEATURE` Feature identifier: standard uri conformant feature.
`static java.lang.String` `SYMBOL_TABLE` Property identifier: symbol table.
`protected static java.lang.String` `TOLERATE_DUPLICATES` Feature identifier: tolerate duplicates
`protected static java.lang.String` `UNPARSED_ENTITY_CHECKING` Feature identifier: whether to ignore unparsed entity errors
`protected static java.lang.String` `USE_GRAMMAR_POOL_ONLY` Feature identifier: use grammar pool only
`protected static java.lang.String` `VALIDATE_ANNOTATIONS` Feature identifier: validate annotations.
`protected static java.lang.String` `VALIDATION` Feature identifier: validation.
`protected static java.lang.String` `VALIDATION_MANAGER`
`static java.lang.String` `XMLGRAMMAR_POOL` Property identifier: grammar pool.

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`XPathMatcher` `activateField(Field field, int initialDepth)` Request to activate the specified field.
`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` `elementDefault(java.lang.String data)`
`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.
`void` `endValueScopeFor(IdentityConstraint identityConstraint, int initialDepth)` Ends the value scope for the specified identity constraint.
`org.apache.xerces.xni.XMLDocumentHandler` `getDocumentHandler()` Returns the document handler
`org.apache.xerces.xni.parser.XMLDocumentSource` `getDocumentSource()` Returns the document source
`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.
`XSElementDecl` `getGlobalElementDecl(org.apache.xerces.xni.QName element)`
`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.
`void` `ignorableWhitespace(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)` Ignorable whitespace.
`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.
`void` `startValueScopeFor(IdentityConstraint identityConstraint, int initialDepth)` Start the value scope for the specified identity constraint.
`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.
`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

#### VALIDATION

    protected static final java.lang.String VALIDATION

Feature identifier: validation.

See Also:
  Constant Field Values

#### SCHEMA_VALIDATION

    protected static final java.lang.String SCHEMA_VALIDATION

Feature identifier: validation.

See Also:
  Constant Field Values

#### SCHEMA_FULL_CHECKING

    protected static final java.lang.String SCHEMA_FULL_CHECKING

Feature identifier: schema full checking

See Also:
  Constant Field Values

#### DYNAMIC_VALIDATION

    protected static final java.lang.String DYNAMIC_VALIDATION

Feature identifier: dynamic validation.

See Also:
  Constant Field Values

#### NORMALIZE_DATA

    protected static final java.lang.String NORMALIZE_DATA

Feature identifier: expose schema normalized value

See Also:
  Constant Field Values

#### SCHEMA_ELEMENT_DEFAULT

    protected static final java.lang.String SCHEMA_ELEMENT_DEFAULT

Feature identifier: send element default value via characters()

See Also:
  Constant Field Values

#### SCHEMA_AUGMENT_PSVI

    protected static final java.lang.String SCHEMA_AUGMENT_PSVI

Feature identifier: augment PSVI

See Also:
  Constant Field Values

#### ALLOW_JAVA_ENCODINGS

    protected static final java.lang.String ALLOW_JAVA_ENCODINGS

Feature identifier: whether to recognize java encoding names

See Also:
  Constant Field Values

#### STANDARD_URI_CONFORMANT_FEATURE

    protected static final java.lang.String STANDARD_URI_CONFORMANT_FEATURE

Feature identifier: standard uri conformant feature.

See Also:
  Constant Field Values

#### GENERATE_SYNTHETIC_ANNOTATIONS

    protected static final java.lang.String GENERATE_SYNTHETIC_ANNOTATIONS

Feature: generate synthetic annotations

See Also:
  Constant Field Values

#### VALIDATE_ANNOTATIONS

    protected static final java.lang.String VALIDATE_ANNOTATIONS

Feature identifier: validate annotations.

See Also:
  Constant Field Values

#### HONOUR_ALL_SCHEMALOCATIONS

    protected static final java.lang.String HONOUR_ALL_SCHEMALOCATIONS

Feature identifier: honour all schemaLocations

See Also:
  Constant Field Values

#### USE_GRAMMAR_POOL_ONLY

    protected static final java.lang.String USE_GRAMMAR_POOL_ONLY

Feature identifier: use grammar pool only

See Also:
  Constant Field Values

#### CONTINUE_AFTER_FATAL_ERROR

    protected static final java.lang.String CONTINUE_AFTER_FATAL_ERROR

Feature identifier: whether to continue parsing a schema after a fatal error is encountered

See Also:
  Constant Field Values

#### PARSER_SETTINGS

    protected static final java.lang.String PARSER_SETTINGS

See Also:
  Constant Field Values

#### NAMESPACE_GROWTH

    protected static final java.lang.String NAMESPACE_GROWTH

Feature identifier: namespace growth

See Also:
  Constant Field Values

#### TOLERATE_DUPLICATES

    protected static final java.lang.String TOLERATE_DUPLICATES

Feature identifier: tolerate duplicates

See Also:
  Constant Field Values

#### IGNORE_XSI_TYPE

    protected static final java.lang.String IGNORE_XSI_TYPE

Feature identifier: whether to ignore xsi:type attributes until a global element declaration is encountered

See Also:
  Constant Field Values

#### ID_IDREF_CHECKING

    protected static final java.lang.String ID_IDREF_CHECKING

Feature identifier: whether to ignore ID/IDREF errors

See Also:
  Constant Field Values

#### UNPARSED_ENTITY_CHECKING

    protected static final java.lang.String UNPARSED_ENTITY_CHECKING

Feature identifier: whether to ignore unparsed entity errors

See Also:
  Constant Field Values

#### IDENTITY_CONSTRAINT_CHECKING

    protected static final java.lang.String IDENTITY_CONSTRAINT_CHECKING

Feature identifier: whether to ignore identity constraint errors

See Also:
  Constant Field Values

#### SYMBOL_TABLE

    public static final java.lang.String SYMBOL_TABLE

Property identifier: symbol table.

See Also:
  Constant Field Values

#### ERROR_REPORTER

    public static final java.lang.String ERROR_REPORTER

Property identifier: error reporter.

See Also:
  Constant Field Values

#### ENTITY_RESOLVER

    public static final java.lang.String ENTITY_RESOLVER

Property identifier: entity resolver.

See Also:
  Constant Field Values

#### XMLGRAMMAR_POOL

    public static final java.lang.String XMLGRAMMAR_POOL

Property identifier: grammar pool.

See Also:
  Constant Field Values

#### VALIDATION_MANAGER

    protected static final java.lang.String VALIDATION_MANAGER

See Also:
  Constant Field Values

#### ENTITY_MANAGER

    protected static final java.lang.String ENTITY_MANAGER

See Also:
  Constant Field Values

#### SCHEMA_LOCATION

    protected static final java.lang.String SCHEMA_LOCATION

Property identifier: schema location.

See Also:
  Constant Field Values

#### SCHEMA_NONS_LOCATION

    protected static final java.lang.String SCHEMA_NONS_LOCATION

Property identifier: no namespace schema location.

See Also:
  Constant Field Values

#### JAXP_SCHEMA_SOURCE

    protected static final java.lang.String JAXP_SCHEMA_SOURCE

Property identifier: JAXP schema source.

See Also:
  Constant Field Values

#### JAXP_SCHEMA_LANGUAGE

    protected static final java.lang.String JAXP_SCHEMA_LANGUAGE

Property identifier: JAXP schema language.

See Also:
  Constant Field Values

#### ROOT_TYPE_DEF

    protected static final java.lang.String ROOT_TYPE_DEF

Property identifier: root type definition.

See Also:
  Constant Field Values

#### ROOT_ELEMENT_DECL

    protected static final java.lang.String ROOT_ELEMENT_DECL

Property identifier: root element declaration.

See Also:
  Constant Field Values

#### SCHEMA_DV_FACTORY

    protected static final java.lang.String SCHEMA_DV_FACTORY

Property identifier: Schema DV Factory

See Also:
  Constant Field Values

#### ID_CONSTRAINT_NUM

    protected static final int ID_CONSTRAINT_NUM

See Also:
  Constant Field Values

#### fCurrentPSVI

    protected ElementPSVImpl fCurrentPSVI

current PSVI element info

#### fAugmentations

    protected final AugmentationsImpl fAugmentations

#### fDefaultValue

    protected org.apache.xerces.xni.XMLString fDefaultValue

#### fDynamicValidation

    protected boolean fDynamicValidation

#### fSchemaDynamicValidation

    protected boolean fSchemaDynamicValidation

#### fDoValidation

    protected boolean fDoValidation

#### fFullChecking

    protected boolean fFullChecking

#### fNormalizeData

    protected boolean fNormalizeData

#### fSchemaElementDefault

    protected boolean fSchemaElementDefault

#### fAugPSVI

    protected boolean fAugPSVI

#### fIdConstraint

    protected boolean fIdConstraint

#### fUseGrammarPoolOnly

    protected boolean fUseGrammarPoolOnly

#### fNamespaceGrowth

    protected boolean fNamespaceGrowth

#### fEntityRef

    protected boolean fEntityRef

#### fInCDATA

    protected boolean fInCDATA

#### fSymbolTable

    protected SymbolTable fSymbolTable

Symbol table.

#### fXSIErrorReporter

    protected final XMLSchemaValidator.XSIErrorReporter fXSIErrorReporter

Error reporter.

#### fEntityResolver

    protected org.apache.xerces.xni.parser.XMLEntityResolver fEntityResolver

Entity resolver

#### fValidationManager

    protected ValidationManager fValidationManager

#### fValidationState

    protected ConfigurableValidationState fValidationState

#### fGrammarPool

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

#### fExternalSchemas

    protected java.lang.String fExternalSchemas

#### fExternalNoNamespaceSchema

    protected java.lang.String fExternalNoNamespaceSchema

#### fJaxpSchemaSource

    protected java.lang.Object fJaxpSchemaSource

#### fXSDDescription

    protected final XSDDescription fXSDDescription

Schema Grammar Description passed, to give a chance to application to supply the Grammar

#### fLocationPairs

    protected final java.util.Hashtable fLocationPairs

#### fExpandedLocationPairs

    protected final java.util.Hashtable fExpandedLocationPairs

#### fUnparsedLocations

    protected final java.util.ArrayList fUnparsedLocations

#### fDocumentHandler

    protected org.apache.xerces.xni.XMLDocumentHandler fDocumentHandler

Document handler.

#### fDocumentSource

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

#### fMatcherStack

    protected XMLSchemaValidator.XPathMatcherStack fMatcherStack

Stack of active XPath matchers for identity constraints. All active XPath matchers are notified of startElement and endElement callbacks in order to perform their matches.

For each element with identity constraints, the selector of each identity constraint is activated. When the selector matches its XPath, then all the fields of the identity constraint are activated.

Note: Once the activation scope is left, the XPath matchers are automatically removed from the stack of active matchers and no longer receive callbacks.

#### fValueStoreCache

    protected XMLSchemaValidator.ValueStoreCache fValueStoreCache

Cache of value stores for identity constraint fields.

### Constructor Detail

#### XMLSchemaValidator

    public XMLSchemaValidator()

Default constructor.

### Method Detail

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

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

#### elementDefault

    public void elementDefault(java.lang.String data)

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

#### 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 startEntity call.

Note: This method will never be called for the document entity; it is only called for external general entities referenced in document content.

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

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.

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

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

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

#### startValueScopeFor

    public void startValueScopeFor(IdentityConstraint identityConstraint,
                                   int initialDepth)

Start the value scope for the specified identity constraint. This method is called when the selector matches in order to initialize the value store.

Specified by:
  `startValueScopeFor` in interface `FieldActivator`
Parameters:
  `identityConstraint` - The identity constraint.
  `initialDepth` - the depth at which the selector began matching

#### activateField

    public XPathMatcher activateField(Field field,
                                      int initialDepth)

Request to activate the specified field. This method returns the matcher for the field.

Specified by:
  `activateField` in interface `FieldActivator`
Parameters:
  `field` - The field to activate.
  `initialDepth` - the 0-indexed depth in the instance document at which the Selector began to match.

#### endValueScopeFor

    public void endValueScopeFor(IdentityConstraint identityConstraint,
                                 int initialDepth)

Ends the value scope for the specified identity constraint.

Specified by:
  `endValueScopeFor` in interface `FieldActivator`
Parameters:
  `identityConstraint` - The identity constraint.
  `initialDepth` - the 0-indexed depth where the Selector began to match.

#### getGlobalElementDecl

    public XSElementDecl getGlobalElementDecl(org.apache.xerces.xni.QName element)

Specified by:
  `getGlobalElementDecl` in interface `XSElementDeclHelper`