## org.apache.xerces.impl.xs.models
Class XSAllCM

    java.lang.Object
      |
      +--org.apache.xerces.impl.xs.models.XSAllCM

All Implemented Interfaces:
  XSCMValidator

public class XSAllCM
extends java.lang.Object
implements XSCMValidator

XSAllCM implements XSCMValidator and handles <all>

Version:
  $Id: XSAllCM.java,v 1.8 2003/03/11 15:48:33 sandygao Exp $
Author:
  Pavani Mukthipudi, Sun Microsystems Inc.

Fields inherited from interface org.apache.xerces.impl.xs.models.XSCMValidator
`FIRST_ERROR, SUBSEQUENT_ERROR`

Constructor Summary
`XSAllCM(boolean hasOptionalContent, int size)`

Method Summary
`void` `addElement(XSElementDecl element, boolean isOptional)`
`boolean` `checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)` check whether this content violates UPA constraint.
`boolean` `endContentModel(int[] currentState)` The method indicates the end of list of children
`java.lang.Object` `oneTransition(org.apache.xerces.xni.QName elementName, int[] currentState, SubstitutionGroupHandler subGroupHandler)` The method corresponds to one transition in the content model.
`int[]` `startContentModel()` This methods to be called on entering a first element whose type has this content model.
`java.util.Vector` `whatCanGoHere(int[] state)` Check which elements are valid to appear at this point.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### XSAllCM

    public XSAllCM(boolean hasOptionalContent,
                   int size)

Method Detail

### addElement

    public void addElement(XSElementDecl element,
                           boolean isOptional)

### startContentModel

    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
  Specified by:
    `startContentModel` in interface `XSCMValidator`
  Returns:
    Start state of the content model

### oneTransition

    public java.lang.Object oneTransition(org.apache.xerces.xni.QName elementName,
                                          int[] currentState,
                                          SubstitutionGroupHandler subGroupHandler)

  The method corresponds to one transition in the content model.
  Specified by:
    `oneTransition` in interface `XSCMValidator`
  Parameters:
    `elementName` -
    `state` - Current state
  Returns:
    an element decl object

### endContentModel

    public boolean endContentModel(int[] currentState)

  The method indicates the end of list of children
  Specified by:
    `endContentModel` in interface `XSCMValidator`
  Parameters:
    `state` - Current state of the content model
  Returns:
    true if the last state was a valid final state

### checkUniqueParticleAttribution

    public boolean checkUniqueParticleAttribution(SubstitutionGroupHandler subGroupHandler)
                                           throws XMLSchemaException

  check whether this content violates UPA constraint.
  Specified by:
    `checkUniqueParticleAttribution` in interface `XSCMValidator`
  Parameters:
    `errors` - to hold the UPA errors
  Returns:
    true if this content model contains other or list wildcard

### whatCanGoHere

    public 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.
  Specified by:
    `whatCanGoHere` in interface `XSCMValidator`
  Parameters:
    `state` - the current state
  Returns:
    a Vector whose entries are instances of either XSWildcardDecl or XSElementDecl.

Copyright © 1999-2003 Apache XML Project. All Rights Reserved.