Class IdAbuseChecker

  • All Implemented Interfaces:
    ExpressionVisitorVoid, RELAXExpressionVisitorVoid

    public class IdAbuseChecker
    extends java.lang.Object
    implements RELAXExpressionVisitorVoid
    makes sure that ID/IDREF are not abused. RELAX has the following constraint over the use of ID/IDREF.

    First, ID and IDREF can be only used as attribute values. They cannot be used from type attribute of elementRules.

    Second, if <tag> clause declares directly or indirectly (by referencing attPool) one of its attribute as ID/IDREF type, it must satisfies either (or both) of the following statement.

    1. no other tag clause shares the same tag name.
    2. no other attribute of non-ID/IDREF types shares the same attribute name.