Package org.apache.xerces.impl.xs.models
Interface XSCMValidator
-
public interface XSCMValidatorNote: State of the content model is stored in the validatorINTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: XSCMValidator.java 806363 2009-08-20 21:18:48Z mrglavas $
- Author:
- Sandy Gao, IBM, Elena Litani, IBM
-
-
Field Summary
Fields Modifier and Type Field Description static shortFIRST_ERRORstatic shortSUBSEQUENT_ERROR
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleancheckUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)check whether this content violates UPA constraint.booleanendContentModel(int[] state)The method indicates the end of list of childrenjava.lang.StringgetTermName(int termId)Returns the name of the term (element or wildcard) for the given identifier.booleanisCompactedForUPA()Checks if this content model has had its min/maxOccurs values reduced for purposes of speeding up UPA.int[]occurenceInfo(int[] state)Returns an array containing information about the current repeating term ornullif no occurrence counting was being performed at the current state.java.lang.ObjectoneTransition(org.apache.xerces.xni.QName elementName, int[] state, SubstitutionGroupHandler subGroupHandler)The method corresponds to one transaction in the content model.int[]startContentModel()This methods to be called on entering a first element whose type has this content model.java.util.VectorwhatCanGoHere(int[] state)Check which elements are valid to appear at this point.
-
-
-
Field Detail
-
FIRST_ERROR
static final short FIRST_ERROR
- See Also:
- Constant Field Values
-
SUBSEQUENT_ERROR
static final short SUBSEQUENT_ERROR
- See Also:
- Constant Field Values
-
-
Method Detail
-
startContentModel
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- Returns:
- Start state of the content model
-
oneTransition
java.lang.Object oneTransition(org.apache.xerces.xni.QName elementName, int[] state, SubstitutionGroupHandler subGroupHandler)The method corresponds to one transaction in the content model.- Parameters:
elementName-state- Current state- Returns:
- element decl or wildcard decl that corresponds to the element from the Schema grammar
-
endContentModel
boolean endContentModel(int[] state)
The method indicates the end of list of children- Parameters:
state- Current state of the content model- Returns:
- true if the last state was a valid final state
-
checkUniqueParticleAttribution
boolean checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler) throws XMLSchemaException
check whether this content violates UPA constraint.- Parameters:
subGroupHandler- the substitution group handler- Returns:
- true if this content model contains other or list wildcard
- Throws:
XMLSchemaException
-
whatCanGoHere
java.util.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.- Parameters:
state- the current state- Returns:
- a Vector whose entries are instances of either XSWildcardDecl or XSElementDecl.
-
occurenceInfo
int[] occurenceInfo(int[] state)
Returns an array containing information about the current repeating term or
nullif no occurrence counting was being performed at the current state.If an array is returned it will have a length == 4 and will contain:
- a[0] :: min occurs
- a[1] :: max occurs
- a[2] :: current value of the counter
- a[3] :: identifier for the repeating term
- Parameters:
state- the current state- Returns:
- an array containing information about the current repeating term
-
getTermName
java.lang.String getTermName(int termId)
Returns the name of the term (element or wildcard) for the given identifier.- Parameters:
termId- identifier for the element declaration or wildcard- Returns:
- the name of the element declaration or wildcard
-
isCompactedForUPA
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- Returns:
- a boolean that says whether this content has been compacted for UPA
-
-