com.sun.msv.grammar.xmlschema

Class ElementDeclExp.XSElementExp

Enclosing Class:
ElementDeclExp
Implemented Interfaces:
NameClassAndExpression, Serializable

public class ElementDeclExp.XSElementExp
extends ElementExp

XML Schema version of ElementExp.
Author:
Kohsuke KAWAGUCHI
See Also:
Serialized Form

Field Summary

SimpleNameClass
elementName
Vector
identityConstraints
identity constraints associated to this declaration.
ElementDeclExp
parent

Fields inherited from class com.sun.msv.grammar.ElementExp

contentModel, ignoreUndeclaredAttributes

Fields inherited from class com.sun.msv.grammar.Expression

anyString, epsilon, nullSet, verifierTag

Constructor Summary

XSElementExp(SimpleNameClass elementName, Expression contentModel)

Method Summary

NameClass
getNameClass()
obtains a constraint over tag name.

Methods inherited from class com.sun.msv.grammar.ElementExp

equals, getContentModel, getNameClass, visit, visit, visit, visit

Methods inherited from class com.sun.msv.grammar.Expression

equals, getExpandedExp, hashCode, isEpsilonReducible, peelOccurence, visit, visit, visit, visit, visit, visit, visit, visit

Field Details

elementName

public final SimpleNameClass elementName

identityConstraints

public final Vector identityConstraints

parent

public final ElementDeclExp parent

Constructor Details

XSElementExp

public XSElementExp(SimpleNameClass elementName,
                    Expression contentModel)

Method Details

getNameClass

public final NameClass getNameClass()
obtains a constraint over tag name. ElementExp is cannot be shared because NameClass has to be mutable to absorb the difference of RELAX and TREX. In case of TREX, name class will be determined when parsing ElementExp itself. Thus effectively it's immutable. In case of RELAX, name class will be determined when its corresponding Clause object is parsed.
Specified by:
getNameClass in interface NameClassAndExpression
Overrides:
getNameClass in interface ElementExp