Class OccurrenceExp
- java.lang.Object
-
- com.sun.msv.grammar.Expression
-
- com.sun.msv.grammar.OtherExp
-
- com.sun.msv.grammar.xmlschema.OccurrenceExp
-
- All Implemented Interfaces:
java.io.Serializable
public class OccurrenceExp extends OtherExp
Used to mark a occurrence constraint which cannot be easily represented by primitive expressions.This expression is just a marker, and the exp field of this instance still contains the precise expression of the occurrence constraint.
For example, if A is maxOccurs=5 and minOccurs=3, then the exp field of this instance will be:
A,A,A,(A,A?)?
, the maxOccurs field will be 5, the minOccurs field will be 3, and the itemExp field will hold a reference toA
.Note that MSV doesn't using this marker by itself. It is intended to help other applications that use the AGM of MSV.
Also note that this expression will not be used in the following cases to avoid excessive allocation of this expression:
- when maxOccurs=unbounded and minOccurs is 1 or 0
- when maxOccurs=1
Those cases can be expressed quite nicely with existing primitives So the client shouldn't find it difficuult to process them. I appreciate any feedback on this issue.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description Expression
itemExp
The unit of repetition.int
maxOccurs
Maximum occurence.int
minOccurs
Minimum occurence.private static long
serialVersionUID
-
Fields inherited from class com.sun.msv.grammar.Expression
anyString, epsilon, nullSet, verifierTag
-
-
Constructor Summary
Constructors Constructor Description OccurrenceExp(Expression preciseExp, int maxOccurs, int minOccurs, Expression itemExp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
toString()
Obtains a string representation suitable for quick debugging.-
Methods inherited from class com.sun.msv.grammar.OtherExp
calcEpsilonReducibility, calcHashCode, equals, printName, visit, visit, visit, visit
-
Methods inherited from class com.sun.msv.grammar.Expression
getExpandedExp, hashCode, hashCode, hashCode, isEpsilonReducible, peelOccurence, readResolve, visit, visit, visit, visit
-
-
-
-
Field Detail
-
maxOccurs
public final int maxOccurs
Maximum occurence. -1 to indicate "unbounded"
-
minOccurs
public final int minOccurs
Minimum occurence.
-
itemExp
public final Expression itemExp
The unit of repetition.
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
OccurrenceExp
public OccurrenceExp(Expression preciseExp, int maxOccurs, int minOccurs, Expression itemExp)
-
-