com.sun.msv.reader.trex.ng
Class RestrictionChecker

java.lang.Object
  extended by com.sun.msv.reader.trex.ng.RestrictionChecker

public class RestrictionChecker
extends Object

Checks RELAX NG contextual restrictions defined in the section 7.

ExpressionWalker is used to walk the content model thoroughly. Depending on the current context, different walkers are used so that we can detect contextual restrictions properly.

For each ElementExp and AttributeExp, its name class is checked to detect the constraint set out in the section 7.1.6. Also, a set is used to avoid redundant checks.

Author:
Kohsuke KAWAGUCHI

Constructor Summary
RestrictionChecker(RELAXNGReader _reader)
           
 
Method Summary
 void check()
          Traverses the grammar and performs the contextual check.
 void checkNameClass(NameClass nc)
          Checks the contextual restriction on a name class.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RestrictionChecker

public RestrictionChecker(RELAXNGReader _reader)
Method Detail

check

public void check()
Traverses the grammar and performs the contextual check.


checkNameClass

public void checkNameClass(NameClass nc)
Checks the contextual restriction on a name class.

If an error is found, it is reported through GrammarReader.