## org.apache.xerces.validators.common
Class XMLValidator

    java.lang.Object
      |
      +--org.apache.xerces.validators.common.XMLValidator

public final class XMLValidator
extends java.lang.Object
implements DefaultEntityHandler.EventHandler, XMLEntityHandler.CharDataHandler, XMLDocumentScanner.EventHandler, NamespacesScope.NamespacesHandler, FieldActivator

This class is the super all-in-one validator used by the parser.

Version:
  $Id: XMLValidator.java,v 1.186.2.8 2001/11/07 20:08:48 neilg Exp $

Inner Class Summary
`static interface` `XMLValidator.AttributeValidator` AttributeValidator.
`protected class` `XMLValidator.KeyRefValueStore` Key reference value store.
`protected class` `XMLValidator.KeyValueStore` Key value store.
`protected class` `XMLValidator.UniqueValueStore` Unique value store.
`protected class` `XMLValidator.ValueStoreBase` Value store implementation base class.
`protected class` `XMLValidator.ValueStoreCache` Value store cache.
`protected static class` `XMLValidator.XPathMatcherStack` Stack of XPath matchers for identity constraints.

Field Summary
`protected static boolean` `DEBUG_IDENTITY_CONSTRAINTS` Compile to true to debug identity constraints.
`protected static boolean` `DEBUG_VALUE_STORES` Compile to true to debug value stores.
`protected static java.lang.Object` `fgNullObject`
`protected XMLValidator.XPathMatcherStack` `fMatcherStack` Stack of active XPath matchers for identity constraints.
`protected SubstitutionGroupComparator` `fSGComparator`
`protected XMLValidator.ValueStoreCache` `fValueStoreCache` Cache of value stores for identity constraint fields.
`protected java.util.Hashtable` `UPACheckedGrammarURIs`

Constructor Summary
`XMLValidator(StringPool stringPool, XMLErrorReporter errorReporter, DefaultEntityHandler entityHandler, XMLDocumentScanner documentScanner)` Constructs an XML validator.

Method Summary
`XPathMatcher` `activateField(Field field)` Request to activate the specified field.
`boolean` `attribute(QName element, QName attrName, int attrValue)` Signal the scanning of an attribute associated to the previous start element tag.
`void` `callCharacters(int ch)` Call characters.
`void` `callComment(int comment)` Call comment.
`void` `callEndCDATA()` Call end CDATA section.
`void` `callEndDocument()` Call end document.
`void` `callEndElement(int readerId)` Call end element.
`void` `callProcessingInstruction(int target, int data)` Call processing instruction.
`void` `callStandaloneIsYes()` Signal standalone = "yes"
`void` `callStartCDATA()` Call start CDATA section.
`void` `callStartDocument()` Call start document.
`void` `callStartElement(QName element)` Call start element.
`void` `callTextDecl(int version, int encoding)` Call text declaration.
`void` `callXMLDecl(int version, int encoding, int standalone)` Call XML declaration.
`void` `element(QName element)` Signal the scanning of an element name in a start element tag.
`void` `endEntityReference(int entityName, int entityType, int entityContext)` End entity reference.
`void` `endNamespaceDeclScope(int prefix)` End a namespace declaration scope.
`void` `endValueScopeFor(IdentityConstraint identityConstraint)` Ends the value scope for the specified identity constraint.
`boolean` `externalEntityStandaloneCheck()` External entity standalone check.
`protected boolean` `getAttDefIsExternal(QName element, QName attribute)` Protected for use by AttributeValidator classes.
`int` `getContentSpecHandle(int elementIndex)` Returns the content spec handle for an element index.
`int` `getContentSpecType(int elementIndex)` Returns the content spec type for an element index.
`boolean` `getDynamicValidationEnabled()` Returns true if validation is dynamic.
`java.lang.String` `getExternalNoNamespaceSchema()`
`java.lang.String` `getExternalSchemas()`
`boolean` `getLoadDTDGrammar()` Returns fLoadDTDGrammar
`boolean` `getNamespacesEnabled()` Returns true if namespaces are enabled.
`boolean` `getNormalizeConents()`
`boolean` `getSchemaFullCheckingEnabled()` Returns true if full Schema checking is on.
`boolean` `getSchemaValidationEnabled()` Returns true if Schema support is on.
`boolean` `getValidating()` Return true if validating.
`boolean` `getValidationEnabled()` Returns true if validation is enabled.
`boolean` `getWarningOnDuplicateAttDef()` Returns true if duplicate attribute definitions signal a warning.
`boolean` `getWarningOnUndeclaredElements()` Returns true if undeclared elements signal a warning.
`void` `initHandlers(boolean sendCharDataAsCharArray, XMLDocumentHandler docHandler, XMLDocumentHandler.DTDHandler dtdHandler)` Set char data processing preference and handlers.
`void` `processCharacters(char[] chars, int offset, int length)` Process characters.
`void` `processCharacters(int data)` Process characters.
`void` `processWhitespace(char[] chars, int offset, int length)` Process whitespace.
`void` `processWhitespace(int data)` Process whitespace.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode)` Report a recoverable xml error.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode, int stringIndex1)` Report a recoverable xml error.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode, int stringIndex1, int stringIndex2)` Report a recoverable xml error.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode, java.lang.String string1)` Report a recoverable xml error.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode, java.lang.String string1, java.lang.String string2)` Report a recoverable xml error.
`protected void` `reportRecoverableXMLError(int majorCode, int minorCode, java.lang.String string1, java.lang.String string2, java.lang.String string3)` Report a recoverable xml error.
`void` `reset(StringPool stringPool)` Reset.
`void` `resetOrCopy(StringPool stringPool)` Reset or copy.
`void` `scanAttributeName(XMLEntityHandler.EntityReader entityReader, QName element, QName attribute)` Scans attribute name.
`void` `scanElementType(XMLEntityHandler.EntityReader entityReader, char fastchar, QName element)` Scans element type.
`boolean` `scanExpectedElementType(XMLEntityHandler.EntityReader entityReader, char fastchar, QName element)` Scans expected element type.
`void` `sendEndOfInputNotifications(int entityName, boolean moreToFollow)` Send end of input notification.
`void` `sendReaderChangeNotifications(XMLEntityHandler.EntityReader reader, int readerId)` Send reader change notifications.
`void` `setDynamicValidationEnabled(boolean flag)` Sets whether validation is dynamic.
`void` `setExternalNoNamespaceSchema(java.lang.Object value)`
`void` `setExternalSchemas(java.lang.Object value)`
`void` `setGrammarResolver(GrammarResolver grammarResolver)`
`void` `setLoadDTDGrammar(boolean loadDG)` Sets fLoadDTDGrammar when validation is off
`void` `setNamespacesEnabled(boolean flag)` Sets whether namespaces are enabled.
`void` `setNormalizeAttributeValues(boolean normalize)` Sets fNormalizeAttributeValues
`void` `setNormalizeContents(boolean normalize)` Sets fNormalizeContents
`void` `setRootElementType(QName rootElement)` Sets the root element.
`void` `setSchemaFullCheckingEnabled(boolean flag)` Sets whether full Schema error checking is on/off
`void` `setSchemaValidationEnabled(boolean flag)` Sets whether Schema support is on/off.
`void` `setValidationEnabled(boolean flag)` Turning on validation/dynamic turns on validation if it is off, and this is remembered.
`void` `setWarningOnDuplicateAttDef(boolean flag)` Sets whether duplicate attribute definitions signal a warning.
`void` `setWarningOnUndeclaredElements(boolean flag)` Sets whether undeclared elements signal a warning.
`void` `startEntityReference(int entityName, int entityType, int entityContext)` Start entity reference.
`void` `startNamespaceDeclScope(int prefix, int uri)` Start a new namespace declaration scope.
`void` `startValueScopeFor(IdentityConstraint identityConstraint)` Start the value scope for the specified identity constraint.
`protected int` `whatCanGoHere(int elementIndex, boolean fullyValid, InsertableElementsInfo info)` Returns information about which elements can be placed at a particular point in the passed element's content model.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DEBUG_IDENTITY_CONSTRAINTS

    protected static final boolean DEBUG_IDENTITY_CONSTRAINTS

  Compile to true to debug identity constraints.

### DEBUG_VALUE_STORES

    protected static final boolean DEBUG_VALUE_STORES

  Compile to true to debug value stores.

### fMatcherStack

    protected XMLValidator.XPathMatcherStack fMatcherStack

  Stack of active XPath matchers for identity constraints. All active XPath matchers are notified of startElement, characters 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 XMLValidator.ValueStoreCache fValueStoreCache

  Cache of value stores for identity constraint fields.

### fSGComparator

    protected SubstitutionGroupComparator fSGComparator

### UPACheckedGrammarURIs

    protected java.util.Hashtable UPACheckedGrammarURIs

### fgNullObject

    protected static java.lang.Object fgNullObject

Constructor Detail

### XMLValidator

    public XMLValidator(StringPool stringPool,
                        XMLErrorReporter errorReporter,
                        DefaultEntityHandler entityHandler,
                        XMLDocumentScanner documentScanner)

  Constructs an XML validator.

Method Detail

### setGrammarResolver

    public void setGrammarResolver(GrammarResolver grammarResolver)

### initHandlers

    public void initHandlers(boolean sendCharDataAsCharArray,
                             XMLDocumentHandler docHandler,
                             XMLDocumentHandler.DTDHandler dtdHandler)

  Set char data processing preference and handlers.

### resetOrCopy

    public void resetOrCopy(StringPool stringPool)
                     throws java.lang.Exception

  Reset or copy.

### reset

    public void reset(StringPool stringPool)
               throws java.lang.Exception

  Reset.

### setValidationEnabled

    public void setValidationEnabled(boolean flag)
                              throws java.lang.Exception

  Turning on validation/dynamic turns on validation if it is off, and this is remembered. Turning off validation DISABLES validation/dynamic if it is on. Turning off validation/dynamic DOES NOT turn off validation if it was explicitly turned on, only if it was turned on BECAUSE OF the call to turn validation/dynamic on. Turning on validation will REENABLE and turn validation/dynamic back on if it was disabled by a call that turned off validation while validation/dynamic was enabled.

### getValidationEnabled

    public boolean getValidationEnabled()

  Returns true if validation is enabled.

### setSchemaValidationEnabled

    public void setSchemaValidationEnabled(boolean flag)

  Sets whether Schema support is on/off.

### getSchemaValidationEnabled

    public boolean getSchemaValidationEnabled()

  Returns true if Schema support is on.

### setSchemaFullCheckingEnabled

    public void setSchemaFullCheckingEnabled(boolean flag)

  Sets whether full Schema error checking is on/off

### setExternalSchemas

    public void setExternalSchemas(java.lang.Object value)

### setExternalNoNamespaceSchema

    public void setExternalNoNamespaceSchema(java.lang.Object value)

### getExternalSchemas

    public java.lang.String getExternalSchemas()

### getExternalNoNamespaceSchema

    public java.lang.String getExternalNoNamespaceSchema()

### getSchemaFullCheckingEnabled

    public boolean getSchemaFullCheckingEnabled()

  Returns true if full Schema checking is on.

### setDynamicValidationEnabled

    public void setDynamicValidationEnabled(boolean flag)
                                     throws java.lang.Exception

  Sets whether validation is dynamic.

### getDynamicValidationEnabled

    public boolean getDynamicValidationEnabled()

  Returns true if validation is dynamic.

### setNormalizeAttributeValues

    public void setNormalizeAttributeValues(boolean normalize)

  Sets fNormalizeAttributeValues

### setLoadDTDGrammar

    public void setLoadDTDGrammar(boolean loadDG)

  Sets fLoadDTDGrammar when validation is off

### getLoadDTDGrammar

    public boolean getLoadDTDGrammar()

  Returns fLoadDTDGrammar

### setNamespacesEnabled

    public void setNamespacesEnabled(boolean flag)

  Sets whether namespaces are enabled.

### getNamespacesEnabled

    public boolean getNamespacesEnabled()

  Returns true if namespaces are enabled.

### setWarningOnDuplicateAttDef

    public void setWarningOnDuplicateAttDef(boolean flag)

  Sets whether duplicate attribute definitions signal a warning.

### getWarningOnDuplicateAttDef

    public boolean getWarningOnDuplicateAttDef()

  Returns true if duplicate attribute definitions signal a warning.

### setWarningOnUndeclaredElements

    public void setWarningOnUndeclaredElements(boolean flag)

  Sets whether undeclared elements signal a warning.

### getWarningOnUndeclaredElements

    public boolean getWarningOnUndeclaredElements()

  Returns true if undeclared elements signal a warning.

### setNormalizeContents

    public void setNormalizeContents(boolean normalize)

  Sets fNormalizeContents

### getNormalizeConents

    public boolean getNormalizeConents()

### startValueScopeFor

    public void startValueScopeFor(IdentityConstraint identityConstraint)
                            throws java.lang.Exception

  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.

### activateField

    public XPathMatcher activateField(Field field)
                               throws java.lang.Exception

  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.

### endValueScopeFor

    public void endValueScopeFor(IdentityConstraint identityConstraint)
                          throws java.lang.Exception

  Ends the value scope for the specified identity constraint.
  Specified by:
    endValueScopeFor in interface FieldActivator
  Parameters:
    `identityConstraint` - The identity constraint.

### startEntityReference

    public void startEntityReference(int entityName,
                                     int entityType,
                                     int entityContext)
                              throws java.lang.Exception

  Start entity reference.
  Specified by:
    startEntityReference in interface DefaultEntityHandler.EventHandler

### endEntityReference

    public void endEntityReference(int entityName,
                                   int entityType,
                                   int entityContext)
                            throws java.lang.Exception

  End entity reference.
  Specified by:
    endEntityReference in interface DefaultEntityHandler.EventHandler

### sendEndOfInputNotifications

    public void sendEndOfInputNotifications(int entityName,
                                            boolean moreToFollow)
                                     throws java.lang.Exception

  Send end of input notification.
  Specified by:
    sendEndOfInputNotifications in interface DefaultEntityHandler.EventHandler

### sendReaderChangeNotifications

    public void sendReaderChangeNotifications(XMLEntityHandler.EntityReader reader,
                                              int readerId)
                                       throws java.lang.Exception

  Send reader change notifications.
  Specified by:
    sendReaderChangeNotifications in interface DefaultEntityHandler.EventHandler

### externalEntityStandaloneCheck

    public boolean externalEntityStandaloneCheck()

  External entity standalone check.
  Specified by:
    externalEntityStandaloneCheck in interface DefaultEntityHandler.EventHandler

### getValidating

    public boolean getValidating()

  Return true if validating.
  Specified by:
    getValidating in interface DefaultEntityHandler.EventHandler

### processCharacters

    public void processCharacters(char[] chars,
                                  int offset,
                                  int length)
                           throws java.lang.Exception

  Process characters. Schema Normalization
  Specified by:
    processCharacters in interface XMLEntityHandler.CharDataHandler
  Tags copied from interface: XMLEntityHandler.CharDataHandler
  Parameters:
    `chars` - character buffer to be processed
    `offset` - offset in buffer where the data starts
    `length` - length of characters to be processed
  Throws:
    java.lang.Exception -

### processCharacters

    public void processCharacters(int data)
                           throws java.lang.Exception

  Process characters.
  Specified by:
    processCharacters in interface XMLEntityHandler.CharDataHandler
  Tags copied from interface: XMLEntityHandler.CharDataHandler
  Parameters:
    `stringHandle` - `StringPool` handle to the character data
  Throws:
    java.lang.Exception -

### processWhitespace

    public void processWhitespace(char[] chars,
                                  int offset,
                                  int length)
                           throws java.lang.Exception

  Process whitespace.
  Specified by:
    processWhitespace in interface XMLEntityHandler.CharDataHandler
  Tags copied from interface: XMLEntityHandler.CharDataHandler
  Parameters:
    `chars` - character buffer to be processed
    `offset` - offset in buffer where the data starts
    `length` - length of whitespace to be processed
  Throws:
    java.lang.Exception -

### processWhitespace

    public void processWhitespace(int data)
                           throws java.lang.Exception

  Process whitespace.
  Specified by:
    processWhitespace in interface XMLEntityHandler.CharDataHandler
  Tags copied from interface: XMLEntityHandler.CharDataHandler
  Parameters:
    `stringHandle` - `StringPool` handle to the whitespace
  Throws:
    java.lang.Exception -

### scanElementType

    public void scanElementType(XMLEntityHandler.EntityReader entityReader,
                                char fastchar,
                                QName element)
                         throws java.lang.Exception

  Scans element type.

### scanExpectedElementType

    public boolean scanExpectedElementType(XMLEntityHandler.EntityReader entityReader,
                                           char fastchar,
                                           QName element)
                                    throws java.lang.Exception

  Scans expected element type.

### scanAttributeName

    public void scanAttributeName(XMLEntityHandler.EntityReader entityReader,
                                  QName element,
                                  QName attribute)
                           throws java.lang.Exception

  Scans attribute name.

### callStartDocument

    public void callStartDocument()
                           throws java.lang.Exception

  Call start document.
  Specified by:
    callStartDocument in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Throws:
    java.lang.Exception -

### callEndDocument

    public void callEndDocument()
                         throws java.lang.Exception

  Call end document.
  Specified by:
    callEndDocument in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Throws:
    java.lang.Exception -

### callXMLDecl

    public void callXMLDecl(int version,
                            int encoding,
                            int standalone)
                     throws java.lang.Exception

  Call XML declaration.
  Specified by:
    callXMLDecl in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `version` - the handle in the string pool for the version number
    `encoding` - the handle in the string pool for the encoding
    `standalong` - the handle in the string pool for the standalone value
  Throws:
    java.lang.Exception -

### callStandaloneIsYes

    public void callStandaloneIsYes()
                             throws java.lang.Exception

  Description copied from interface: XMLDocumentScanner.EventHandler
  Signal standalone = "yes"
  Specified by:
    callStandaloneIsYes in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Throws:
    java.lang.Exception -

### callTextDecl

    public void callTextDecl(int version,
                             int encoding)
                      throws java.lang.Exception

  Call text declaration.
  Specified by:
    callTextDecl in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `version` - the handle in the string pool for the version number
    `encoding` - the handle in the string pool for the encoding
  Throws:
    java.lang.Exception -

### element

    public void element(QName element)
                 throws java.lang.Exception

  Signal the scanning of an element name in a start element tag.
  Specified by:
    element in interface XMLDocumentScanner.EventHandler
  Parameters:
    `element` - Element name scanned.

### attribute

    public boolean attribute(QName element,
                             QName attrName,
                             int attrValue)
                      throws java.lang.Exception

  Signal the scanning of an attribute associated to the previous start element tag.
  Specified by:
    attribute in interface XMLDocumentScanner.EventHandler
  Parameters:
    `element` - Element name scanned.
    `attrName` - Attribute name scanned.
    `attrValue` - The string pool index of the attribute value.

### callStartElement

    public void callStartElement(QName element)
                          throws java.lang.Exception

  Call start element.
  Specified by:
    callStartElement in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `element` - Element name scanned.
  Throws:
    java.lang.Exception -

### callEndElement

    public void callEndElement(int readerId)
                        throws java.lang.Exception

  Call end element.
  Specified by:
    callEndElement in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `readerId` - the Id of the reader being used to scan the end tag.
  Throws:
    java.lang.Exception -

### callStartCDATA

    public void callStartCDATA()
                        throws java.lang.Exception

  Call start CDATA section.
  Specified by:
    callStartCDATA in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Throws:
    java.lang.Exception -

### callEndCDATA

    public void callEndCDATA()
                      throws java.lang.Exception

  Call end CDATA section.
  Specified by:
    callEndCDATA in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Throws:
    java.lang.Exception -

### callCharacters

    public void callCharacters(int ch)
                        throws java.lang.Exception

  Call characters.
  Specified by:
    callCharacters in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `ch` - the handle in the string pool of the character data that was scanned
  Throws:
    java.lang.Exception -

### callProcessingInstruction

    public void callProcessingInstruction(int target,
                                          int data)
                                   throws java.lang.Exception

  Call processing instruction.
  Specified by:
    callProcessingInstruction in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `piTarget` - the handle in the string pool of the processing instruction targe
    `piData` - the handle in the string pool of the processing instruction data
  Throws:
    java.lang.Exception -

### callComment

    public void callComment(int comment)
                     throws java.lang.Exception

  Call comment.
  Specified by:
    callComment in interface XMLDocumentScanner.EventHandler
  Tags copied from interface: XMLDocumentScanner.EventHandler
  Parameters:
    `data` - the handle in the string pool of the comment text
  Throws:
    java.lang.Exception -

### startNamespaceDeclScope

    public void startNamespaceDeclScope(int prefix,
                                        int uri)
                                 throws java.lang.Exception

  Start a new namespace declaration scope.
  Specified by:
    startNamespaceDeclScope in interface NamespacesScope.NamespacesHandler
  Tags copied from interface: NamespacesScope.NamespacesHandler
  Parameters:
    `prefix` - the StringPool handle of the namespace prefix being declared
    `uri` - the StringPool handle of the namespace's URI
  Throws:
    java.lang.Exception -

### endNamespaceDeclScope

    public void endNamespaceDeclScope(int prefix)
                               throws java.lang.Exception

  End a namespace declaration scope.
  Specified by:
    endNamespaceDeclScope in interface NamespacesScope.NamespacesHandler
  Tags copied from interface: NamespacesScope.NamespacesHandler
  Parameters:
    `prefix` - the StringPool handle of the namespace prefix going out of scope
  Throws:
    java.lang.Exception -

### setRootElementType

    public void setRootElementType(QName rootElement)

  Sets the root element.

### getContentSpecType

    public int getContentSpecType(int elementIndex)

  Returns the content spec type for an element index.

### getContentSpecHandle

    public int getContentSpecHandle(int elementIndex)

  Returns the content spec handle for an element index.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode,
                                             int stringIndex1)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode,
                                             java.lang.String string1)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode,
                                             int stringIndex1,
                                             int stringIndex2)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode,
                                             java.lang.String string1,
                                             java.lang.String string2)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### reportRecoverableXMLError

    protected void reportRecoverableXMLError(int majorCode,
                                             int minorCode,
                                             java.lang.String string1,
                                             java.lang.String string2,
                                             java.lang.String string3)
                                      throws java.lang.Exception

  Report a recoverable xml error.

### whatCanGoHere

    protected int whatCanGoHere(int elementIndex,
                                boolean fullyValid,
                                InsertableElementsInfo info)
                         throws java.lang.Exception

  Returns information about which elements can be placed at a particular point in the passed element's content model.

  Note that the incoming content model to test must be valid at least up to the insertion point. If not, then -1 will be returned and the info object will not have been filled in.

  If, on return, the info.isValidEOC flag is set, then the 'insert after' elemement is a valid end of content, i.e. nothing needs to be inserted after it to make the parent element's content model valid.

  Parameters:
    `elementIndex` - The index within the `ElementDeclPool` of the element which is being querying.
    `fullyValid` - Only return elements that can be inserted and still maintain the validity of subsequent elements past the insertion point (if any). If the insertion point is at the end, and this is true, then only elements that can be legal final states will be returned.
    `info` - An object that contains the required input data for the method, and which will contain the output information if successful.
  Returns:
    The value -1 if fully valid, else the 0 based index of the child that first failed before the insertion point. If the value returned is equal to the number of children, then the specified children are valid but additional content is required to reach a valid ending state.
  Throws:
    java.lang.Exception - Thrown on error.
  See Also:
    `InsertableElementsInfo`

### getAttDefIsExternal

    protected boolean getAttDefIsExternal(QName element,
                                          QName attribute)

  Protected for use by AttributeValidator classes.

Copyright © 1999-2001 Apache XML Project. All Rights Reserved.