anchor.diff:  
   // Rule #358 <NATIONAL_CHAR_STRING_LIT> - subtoken typecast in <REGULAR_ID>, it also incorporates <character_representation>
   //  Lowercase 'n' is a usual addition to the standard
  +
   NATIONAL_CHAR_STRING_LIT: 'N' '\'' (~('\'' | '\r' | '\n' ) | '\'' '\'' | NEWLINE)* '\'';
   
   //  Rule #040 <BIT_STRING_LIT> - subtoken typecast in <REGULAR_ID>
   //  Lowercase 'b' is a usual addition to the standard
  +
   BIT_STRING_LIT: 'B' ('\'' [01]* '\'')+;
   
   //  Rule #284 <HEX_STRING_LIT> - subtoken typecast in <REGULAR_ID>
   //  Lowercase 'x' is a usual addition to the standard
  +
   HEX_STRING_LIT: 'X' ('\'' [A-F0-9]* '\'')+;
  -DOUBLE_PERIOD: '..';
  -PERIOD:        '.';
  +DOUBLE_PERIOD:  '..';
  +PERIOD:         '.';
   
   //{ Rule #238 <EXACT_NUM_LIT>
   //  This rule is a bit tricky - it resolves the ambiguity with <PERIOD> 
  
positive.code:     | QUESTION_MARK // not in SQL, not in Oracle, not in OCI, use this for JDBC
      ;
  
  COLON: ':';
  SEMICOLON: ';';
  LESS_THAN_OR_EQUALS_OP: '<=';
  LESS_THAN_OP: '<';
  GREATER_THAN_OR_EQUALS_OP: '>=';
  NOT_EQUAL_OP: '!='| '<>'| '^='| '~=';
  CARRET_OPERATOR_PART: '^';
  TILDE_OPERATOR_PART: '~';
  EXCLAMATION_OPERATOR_PART: '!';
  GREATER_THAN_OP: '>';
  
  fragment
  QUESTION_MARK: '?';
  
  // protected UNDERSCORE : '_' SEPARATOR ; // subtoken typecast within <INTRODUCER>
  CONCATENATION_OP: '||';
  VERTICAL_BAR: '|';
  EQUALS_OP: '=';
  
  // Rule #532 <SQL_EMBDD_LANGUAGE_CHAR> was split into single rules:
  
negative.code:     | '@@' ( ~('\r' | '\n') )* (NEWLINE|EOF)
      ;
  
  fragment
  NEWLINE: '\r'? '\n';
      
  