FileDocCategorySizeDatePackage
XSEmptyCM.javaAPI DocApache Xerces 3.0.14205Fri Sep 14 20:33:52 BST 2007org.apache.xerces.impl.xs.models

XSEmptyCM

public class XSEmptyCM extends Object implements XSCMValidator
XSEmptyCM is a derivative of the abstract content model base class that handles a content model with no children (elements). This model validated on the way in.
xerces.internal
author
Elena Litani, IBM
author
Lisa Martin, IBM
version
$Id: XSEmptyCM.java 573322 2007-09-06 16:48:47Z peterjm $

Fields Summary
private static final short
STATE_START
private static final Vector
EMPTY
Constructors Summary
Methods Summary
public booleancheckUniqueParticleAttribution(org.apache.xerces.impl.xs.SubstitutionGroupHandler subGroupHandler)
check whether this content violates UPA constraint.

param
subGroupHandler the substitution group handler
return
true if this content model contains other or list wildcard

        return false;
    
public booleanendContentModel(int[] currentState)
The method indicates the end of list of children

param
currentState Current state of the content model
return
true if the last state was a valid final state

        boolean isFinal =  false;
        int state = currentState[0];

        // restore content model state:

        // error
        if (state < 0) {
            return false;
        }


        return true;
    
public booleanisCompactedForUPA()

        return false;
    
public java.lang.ObjectoneTransition(org.apache.xerces.xni.QName elementName, int[] currentState, org.apache.xerces.impl.xs.SubstitutionGroupHandler subGroupHandler)
The method corresponds to one transaction in the content model.

param
elementName the qualified name of the element
param
currentState Current state
param
subGroupHandler the substitution group handler
return
element index corresponding to the element from the Schema grammar


        // error state
        if (currentState[0] < 0) {
            currentState[0] = XSCMValidator.SUBSEQUENT_ERROR;
            return null;
        }

        currentState[0] = XSCMValidator.FIRST_ERROR;
        return null;
    
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

return
Start state of the content model


    //
    // Data
    //

    //
    // XSCMValidator methods
    //

                                          
      
        return (new int[] {STATE_START});
    
public java.util.VectorwhatCanGoHere(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.

param
state the current state
return
a Vector whose entries are instances of either XSWildcardDecl or XSElementDecl.

        return EMPTY;