com.sun.msv.reader.xmlschema
Class ElementDeclState

java.lang.Object
  extended by com.sun.msv.reader.State
      extended by com.sun.msv.reader.SimpleState
          extended by com.sun.msv.reader.ExpressionState
              extended by com.sun.msv.reader.ExpressionWithChildState
                  extended by com.sun.msv.reader.xmlschema.ElementDeclState
All Implemented Interfaces:
ExpressionOwner, ContentHandler

public class ElementDeclState
extends ExpressionWithChildState

used to parse <element > element without ref attribute. this state uses ExpressionWithChildState to collect content model of this element declaration.

Author:
Kohsuke KAWAGUCHI

Field Summary
protected  Vector<IdentityConstraint> idcs
          identity constraints found in this element.
 
Fields inherited from class com.sun.msv.reader.ExpressionWithChildState
exp
 
Fields inherited from class com.sun.msv.reader.State
baseURI, location, parentState, reader, startTag
 
Constructor Summary
ElementDeclState()
           
 
Method Summary
protected  Expression annealDeclaration(ElementDeclExp exp)
          This method is called after this class finishes augmenting ElementDeclExp.
protected  Expression annealExpression(Expression contentType)
          performs final wrap-up and returns a fully created Expression object that represents this element.
protected  Expression castExpression(Expression halfCastedExpression, Expression newChildExpression)
          combines half-made expression and newly found child expression into the expression.
protected  State createChildState(StartTagInfo tag)
          creates appropriate child state object for this element
protected  Expression defaultExpression()
          computes default expression.
protected  Expression initialExpression()
          sets initial pattern
 boolean isGlobal()
          Returns true if this element declaration is a global element declaration.
protected  void onIdentityConstraint(IdentityConstraint idc)
          this method is called when an identity constraint declaration is found.
protected  Expression resolveTypeRef(String typeQName)
          If this element declaration has @type, then this method is called to resolve it.
 
Methods inherited from class com.sun.msv.reader.ExpressionWithChildState
makeExpression, onEndChild, startSelf
 
Methods inherited from class com.sun.msv.reader.ExpressionState
endSelf
 
Methods inherited from class com.sun.msv.reader.SimpleState
endDocument, endElement, isGrammarElement, startElement
 
Methods inherited from class com.sun.msv.reader.State
_assert, callInterceptExpression, characters, endPrefixMapping, getBaseURI, getLocation, getParentState, getStartTag, ignorableWhitespace, init, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

idcs

protected final Vector<IdentityConstraint> idcs
identity constraints found in this element.

Constructor Detail

ElementDeclState

public ElementDeclState()
Method Detail

createChildState

protected State createChildState(StartTagInfo tag)
Description copied from class: SimpleState
creates appropriate child state object for this element

Overrides:
createChildState in class ExpressionWithChildState

initialExpression

protected Expression initialExpression()
Description copied from class: ExpressionWithChildState
sets initial pattern

Overrides:
initialExpression in class ExpressionWithChildState

resolveTypeRef

protected Expression resolveTypeRef(String typeQName)
If this element declaration has @type, then this method is called to resolve it. Since the type refered to may not be processed yet, a late binding is needed here.


castExpression

protected Expression castExpression(Expression halfCastedExpression,
                                    Expression newChildExpression)
Description copied from class: ExpressionWithChildState
combines half-made expression and newly found child expression into the expression.

Say this container has three child expression exp1,exp2, and exp3. Then, the expression of this state will be made by the following method invocations.

   annealExpression(
     castExpression(
       castExpression(
         castExpression(null,exp1), exp2), exp3 ) )
 

Specified by:
castExpression in class ExpressionWithChildState

defaultExpression

protected Expression defaultExpression()
Description copied from class: ExpressionWithChildState
computes default expression. this method is called before annealExpression when no child expression is given during parsing. return null to signal an error.

Overrides:
defaultExpression in class ExpressionWithChildState

annealExpression

protected Expression annealExpression(Expression contentType)
Description copied from class: ExpressionWithChildState
performs final wrap-up and returns a fully created Expression object that represents this element.

Overrides:
annealExpression in class ExpressionWithChildState

annealDeclaration

protected Expression annealDeclaration(ElementDeclExp exp)
This method is called after this class finishes augmenting ElementDeclExp. Derived classes can override this method and modify an ElementDeclExp further.


isGlobal

public boolean isGlobal()
Returns true if this element declaration is a global element declaration.


onIdentityConstraint

protected void onIdentityConstraint(IdentityConstraint idc)
this method is called when an identity constraint declaration is found.



MSV