com.sun.msv.grammar
Class ElementExp
java.lang.Object
|
+--com.sun.msv.grammar.Expression
|
+--com.sun.msv.grammar.ElementExp
- All Implemented Interfaces:
- NameClassAndExpression, Serializable
- Direct Known Subclasses:
- AnyOtherElementExp, ElementDeclExp.XSElementExp, ElementPattern, ElementRule, ExternalElementExp
- public abstract class ElementExp
- extends Expression
- implements NameClassAndExpression
Element declaration.
For RELAX, this is a base implementation of 'elementRule' declaration.
For TREX, this is a base implementation of 'element' pattern.
Each grammar must/can provide only one concrete implementation.
Therefore, they cannot override visit method.
This class can be extended.
- Author:
- Kohsuke KAWAGUCHI
- See Also:
- Serialized Form
contentModel
public Expression contentModel
- content model of this element declaration.
ignoreUndeclaredAttributes
public boolean ignoreUndeclaredAttributes
- a flag that indicates undeclared attributes should be ignored.
ElementExp
public ElementExp(Expression contentModel,
boolean ignoreUndeclaredAttributes)
getContentModel
public final Expression getContentModel()
- Specified by:
getContentModel
in interface NameClassAndExpression
getNameClass
public abstract 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
equals
public final boolean equals(Object o)
- Overrides:
equals
in class Expression
visit
public final Object visit(ExpressionVisitor visitor)
- Overrides:
visit
in class Expression
visit
public final Expression visit(ExpressionVisitorExpression visitor)
- Overrides:
visit
in class Expression
visit
public final boolean visit(ExpressionVisitorBoolean visitor)
- Overrides:
visit
in class Expression
visit
public final void visit(ExpressionVisitorVoid visitor)
- Overrides:
visit
in class Expression