anchor.diff:      ;
   
   rollup_cube_clause
  -    : (ROLLUP | CUBE) '(' (','? grouping_sets_elements)+ ')'
  +    : (ROLLUP | CUBE) '(' grouping_sets_elements (',' grouping_sets_elements)* ')'
       ;
   
   grouping_sets_clause
  -    : GROUPING SETS '(' (','? grouping_sets_elements)+ ')'
  +    : GROUPING SETS '(' grouping_sets_elements (',' grouping_sets_elements)* ')'
       ;
   
   grouping_sets_elements
  
positive.code: // https://docs.oracle.com/database/121/SQLRF/statements_4008.htm#SQLRF56110
  unified_auditing
      : {isVersion12()}?
        AUDIT (POLICY policy_name ((BY | EXCEPT) (','? audit_user)+ )?
                                  (WHENEVER NOT? SUCCESSFUL)?
              | CONTEXT NAMESPACE oracle_namespace
                        ATTRIBUTES (','? attribute_name)+ (BY (','? audit_user)+)?
              )
        ';'
      ;
  
negative.code: xml_attributes_clause
      : XMLATTRIBUTES
       '(' (ENTITYESCAPING | NOENTITYESCAPING)? (SCHEMACHECK | NOSCHEMACHECK)?
       xml_multiuse_expression_element (',' xml_multiuse_expression_element)* ')'
      ;
  
  xml_namespaces_clause
  