public class XSDFACM extends Object implements XSCMValidator
FIRST_ERROR, SUBSEQUENT_ERROR| Constructor and Description |
|---|
XSDFACM(CMNode syntaxTree,
int leafCount)
Constructs a DFA content model.
|
| Modifier and Type | Method and Description |
|---|---|
ArrayList |
checkMinMaxBounds()
Used by constant space algorithm for a{n,m} for n > 1 and
m <= unbounded.
|
boolean |
checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)
check whether this content violates UPA constraint.
|
boolean |
endContentModel(int[] state)
The method indicates the end of list of children
|
boolean |
isFinalState(int state)
check whether the given state is one of the final states
|
Object |
oneTransition(QName curElem,
int[] state,
SubstitutionGroupHandler subGroupHandler)
one transition only
|
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.
|
public XSDFACM(CMNode syntaxTree, int leafCount)
syntaxTree - The syntax tree of the content model.leafCount - The number of leaves.RuntimeException - Thrown if DFA can't be built.public boolean isFinalState(int state)
state - the state to checkpublic Object oneTransition(QName curElem, int[] state, SubstitutionGroupHandler subGroupHandler)
oneTransition in interface XSCMValidatorcurElem - The current element's QNamestate - stack to store the previous statesubGroupHandler - the substitution group handlerRuntimeException - thrown on errorpublic int[] startContentModel()
XSCMValidatorstartContentModel in interface XSCMValidatorpublic boolean endContentModel(int[] state)
XSCMValidatorendContentModel in interface XSCMValidatorstate - Current state of the content modelpublic boolean checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler) throws XMLSchemaException
checkUniqueParticleAttribution in interface XSCMValidatorsubGroupHandler - the substitution group handlerXMLSchemaExceptionpublic Vector whatCanGoHere(int[] state)
whatCanGoHere in interface XSCMValidatorstate - the current statepublic ArrayList checkMinMaxBounds()
null if validation of bounds is
successful. Returns a list of strings with error info
if not. Even entries in list returned are error codes
(used to look up properties) and odd entries are parameters
to be passed when formatting error message. Each parameter
is associated with the error code that preceeds it in
the list.checkMinMaxBounds in interface XSCMValidatorCopyright © 2018–2021 mhoffrogge. All rights reserved.