anchor.diff:  simpleExpr
       : NULL
       | (dateValue) => dateValue
  -    | (intervalValue) => intervalValue
       | ('[') => arrayLiteral
       | ('{') => objectLiteral
       | qnameOrFunction
  
positive.code: FOR: 'FOR';
  DATE: 'DATE';
  TIME: 'TIME';
  INTERVAL: 'INTERVAL';
  YEAR: 'YEAR';
  MONTH: 'MONTH';
  DAY: 'DAY';
  
negative.code:     : ALIAS | ANALYZER | BERNOULLI | BLOB | CATALOGS | CHAR_FILTERS | CLUSTERED
      | COLUMNS | COPY | CURRENT | DATE | DAY | DISTRIBUTED | DUPLICATE | DYNAMIC | EXPLAIN
      | EXTENDS | FOLLOWING | FORMAT | FULLTEXT | FUNCTIONS | GEO_POINT | GLOBAL
      | GRAPHVIZ | HOUR | IGNORED | KEY | KILL | LOGICAL | MATERIALIZED | MINUTE
      | MONTH | OFF | ONLY | OVER | PARTITION | PARTITIONED | PARTITIONS | PLAIN
      | PRECEDING | RANGE | REFRESH | ROW | ROWS | SCHEMAS | SECOND
      | SHARDS | SHOW | STRICT | SYSTEM | TABLES | TABLESAMPLE | TEXT | TIME
  