org.apache.xerces.impl.xs.models
Interface XSCMValidator
- XSAllCM, XSDFACM, XSEmptyCM
public interface XSCMValidator
Note: State of the content model is stored in the validator
$Id: XSCMValidator.java 573322 2007-09-06 16:48:47Z peterjm $- Sandy Gao, IBM
- Elena Litani, IBM
FIRST_ERROR
public static final short FIRST_ERROR
SUBSEQUENT_ERROR
public static final short SUBSEQUENT_ERROR
checkUniqueParticleAttribution
public boolean checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)
throws XMLSchemaException
check whether this content violates UPA constraint.
subGroupHandler
- the substitution group handler
- true if this content model contains other or list wildcard
endContentModel
public boolean endContentModel(int[] state)
The method indicates the end of list of children
state
- Current state of the content model
- true if the last state was a valid final state
isCompactedForUPA
public boolean isCompactedForUPA()
Checks if this content model has had its min/maxOccurs values reduced for
purposes of speeding up UPA. If so, this content model should not be used
for any purpose other than checking unique particle attribution
- a boolean that says whether this content has been compacted for UPA
oneTransition
public Object oneTransition(org.apache.xerces.xni.QName elementName,
int[] state,
SubstitutionGroupHandler subGroupHandler)
The method corresponds to one transaction in the content model.
elementName
- state
- Current state
- element decl or wildcard decl that
corresponds to the element from the Schema grammar
startContentModel
public int[] startContentModel()
This methods to be called on entering a first element whose type
has this content model. It will return the initial state of the content model
- Start state of the content model
whatCanGoHere
public Vector whatCanGoHere(int[] state)
Check which elements are valid to appear at this point. This method also
works if the state is in error, in which case it returns what should
have been seen.
state
- the current state
- a Vector whose entries are instances of
either XSWildcardDecl or XSElementDecl.
Copyright B) 1999-2007 The Apache Software Foundation. All Rights Reserved.