Class 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 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.