anchor.diff:      | SNAPSHOT
       | SOURCE
       | SPATIAL_WINDOW_MAX_CELLS
  +    | STATE
       | STATIC
       | STATS_STREAM
       | STDEV
  
positive.code:     ;
  
  function_call
      : ranking_windowed_function
      | aggregate_windowed_function
      | analytic_windowed_function
      | scalar_function_name '(' expression_list? ')'
      // https://msdn.microsoft.com/en-us/library/ms173784.aspx
      | BINARY_CHECKSUM '(' '*' ')'
      // https://msdn.microsoft.com/en-us/library/hh231076.aspx
      // https://msdn.microsoft.com/en-us/library/ms187928.aspx
      | CAST '(' expression AS data_type ')'
      | CONVERT '(' convert_data_type=data_type ','convert_expression=expression (',' style=expression)? ')'
      // https://msdn.microsoft.com/en-us/library/ms189788.aspx
      | CHECKSUM '(' '*' ')'
      // https://msdn.microsoft.com/en-us/library/ms190349.aspx
      | COALESCE '(' expression_list ')'
      // https://msdn.microsoft.com/en-us/library/ms188751.aspx
      | CURRENT_TIMESTAMP
      // https://msdn.microsoft.com/en-us/library/ms176050.aspx
      | CURRENT_USER
      // https://msdn.microsoft.com/en-us/library/ms186819.aspx
      | DATEADD '(' ID ',' expression ',' expression ')'
      // https://msdn.microsoft.com/en-us/library/ms189794.aspx
      | DATEDIFF '(' ID ',' expression ',' expression ')'
      // https://msdn.microsoft.com/en-us/library/ms174395.aspx
      | DATENAME '(' ID ',' expression ')'
      // https://msdn.microsoft.com/en-us/library/ms174420.aspx
      | DATEPART '(' ID ',' expression ')'
      // https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql
      | GETDATE '(' ')'
      // https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql
      | GETUTCDATE '(' ')'
      // https://msdn.microsoft.com/en-us/library/ms189838.aspx
      | IDENTITY '(' data_type (',' seed=DECIMAL)? (',' increment=DECIMAL)? ')'
      // https://msdn.microsoft.com/en-us/library/bb839514.aspx
      | MIN_ACTIVE_ROWVERSION
      // https://msdn.microsoft.com/en-us/library/ms177562.aspx
      | NULLIF '(' expression ',' expression ')'
      // https://msdn.microsoft.com/fr-fr/library/ms188043.aspx
      | STUFF '(' expression ',' DECIMAL ',' DECIMAL ',' expression ')'
      // https://msdn.microsoft.com/en-us/library/ms177587.aspx
      | SESSION_USER
      // https://msdn.microsoft.com/en-us/library/ms179930.aspx
      | SYSTEM_USER
      // https://msdn.microsoft.com/en-us/library/ms184325.aspx
      | ISNULL '(' expression ',' expression ')'
      // https://docs.microsoft.com/en-us/sql/t-sql/xml/xml-data-type-methods
      | xml_data_type_methods
      ;
  
  xml_data_type_methods
  
negative.code:     | ROWGUID
      | ROWS
      | ROW_NUMBER
      | SAFETY
      | SAMPLE
      | SIZE
      | SCHEMABINDING
  