anchor.diff:              | (inlist_constraint)=> inlist_constraint
               | constraint
               | not_constraint
  +// see NOTE above
   //            | bioseg_constraint
   //            | int4range_constraint
       ;
  
positive.code:     SUBQUERY_CONSTRAINT;
      INLIST_CONSTRAINT;
      ORDER_DESC;
  //    BIOSEG_CONSTRAINT;
  //    INT4RANGE_CONSTRAINT;
  }
  
  start_rule: sql ;
  
  
negative.code:         { #not_constraint = #([NOT_CONSTRAINT, "NOT_CONSTRAINT"], #not_constraint); }
      ;
  
  // see NOTE above
  //bioseg_constraint: "bioseg_create"! OPEN_PAREN! abstract_value COMMA! abstract_value CLOSE_PAREN! (OVERLAP | INSIDE | SURROUND) "bioseg_create"! OPEN_PAREN! abstract_value COMMA! abstract_value CLOSE_PAREN!
  //        { #bioseg_constraint = #([BIOSEG_CONSTRAINT, "BIOSEG_CONSTRAINT"], #bioseg_constraint); }
  //    ;
  
  // see NOTE above
  //int4range_constraint: "int4range"! OPEN_PAREN! abstract_value COMMA! abstract_value CLOSE_PAREN! (OVERLAP | INSIDE | SURROUND) "int4range"! OPEN_PAREN! abstract_value COMMA! abstract_value CLOSE_PAREN!
  //        { #int4range_constraint = #([INT4RANGE_CONSTRAINT, "INT4RANGE_CONSTRAINT"], #int4range_constraint); }
  //    ;
  