com.sun.msv.reader.trex

Class TREXSequencedStringChecker

public class TREXSequencedStringChecker extends Object implements ExpressionVisitor

makes sure that there is no sequenced string. "sequenced string" is something like this. <oneOrMore> <string> abc </string> </oneOrMore> Also, TREX prohibits sequence of typed strings and elements.

In this checker, we introduce a function "f" that takes a string and computes the string-sensitivity of the pattern.

"f" returns 3 bits of information. One is whether it contains elements. Another is whehter it contains text. And the last is whether it contains DataExp/ValueExp.

"f" is computed recursively through the pattern.

Author: Kohsuke KAWAGUCHI

Constructor Summary
TREXSequencedStringChecker(TREXBaseReader reader, boolean _rejectTextInInterleave)
Method Summary
ObjectonAnyString()
ObjectonAttribute(AttributeExp exp)
ObjectonChoice(ChoiceExp exp)
ObjectonConcur(ConcurExp exp)
ObjectonData(DataExp exp)
ObjectonElement(ElementExp exp)
ObjectonEpsilon()
ObjectonInterleave(InterleaveExp exp)
ObjectonList(ListExp exp)
ObjectonMixed(MixedExp exp)
ObjectonNullSet()
ObjectonOneOrMore(OneOrMoreExp exp)
ObjectonOther(OtherExp exp)
ObjectonRef(ReferenceExp exp)
ObjectonSequence(SequenceExp exp)
ObjectonValue(ValueExp exp)

Constructor Detail

TREXSequencedStringChecker

public TREXSequencedStringChecker(TREXBaseReader reader, boolean _rejectTextInInterleave)

Method Detail

onAnyString

public Object onAnyString()

onAttribute

public Object onAttribute(AttributeExp exp)

onChoice

public Object onChoice(ChoiceExp exp)

onConcur

public Object onConcur(ConcurExp exp)

onData

public Object onData(DataExp exp)

onElement

public Object onElement(ElementExp exp)

onEpsilon

public Object onEpsilon()

onInterleave

public Object onInterleave(InterleaveExp exp)

onList

public Object onList(ListExp exp)

onMixed

public Object onMixed(MixedExp exp)

onNullSet

public Object onNullSet()

onOneOrMore

public Object onOneOrMore(OneOrMoreExp exp)

onOther

public Object onOther(OtherExp exp)

onRef

public Object onRef(ReferenceExp exp)

onSequence

public Object onSequence(SequenceExp exp)

onValue

public Object onValue(ValueExp exp)