Interface XSCMValidator
-
-
Field Summary
Fields Modifier and Type Field Description static short
FIRST_ERROR
static short
SUBSEQUENT_ERROR
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)
check whether this content violates UPA constraint.boolean
endContentModel(int[] state)
The method indicates the end of list of childrenString
getTermName(int termId)
Returns the name of the term (element or wildcard) for the given identifier.boolean
isCompactedForUPA()
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 ornull
if no occurrence counting was being performed at the current state.Object
oneTransition(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.Vector
whatCanGoHere(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
Object oneTransition(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
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
null
if 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
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
-
-