FileDocCategorySizeDatePackage
XSEmptyCM.javaAPI DocJava SE 5 API5808Fri Aug 26 14:55:52 BST 2005com.sun.org.apache.xerces.internal.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 chilren (elements). This model validated on the way in.
author
Elena Litani, Lisa Martin
author
IBM
version
$Id: XSEmptyCM.java,v 1.6 2003/03/11 15:48:33 sandygao Exp $

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

param
errors to hold the UPA errors
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
state 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 java.lang.ObjectoneTransition(com.sun.org.apache.xerces.internal.xni.QName elementName, int[] currentState, com.sun.org.apache.xerces.internal.impl.xs.SubstitutionGroupHandler subGroupHandler)
The method corresponds to one transaction in the content model.

param
elementName
param
state Current state
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;