anchor.diff:      ;
       	
   groupGraphPattern
  -    : OPEN_CURLY_BRACE (subSelect) CLOSE_CURLY_BRACE -> ^(GROUP_GRAPH_PATTERN subSelect)
  -    | OPEN_CURLY_BRACE (groupGraphPatternSub) CLOSE_CURLY_BRACE -> ^(GROUP_GRAPH_PATTERN groupGraphPatternSub)
  +    : OPEN_CURLY_BRACE subSelect CLOSE_CURLY_BRACE -> ^(GROUP_GRAPH_PATTERN subSelect)
  +    | OPEN_CURLY_BRACE groupGraphPatternSub CLOSE_CURLY_BRACE -> ^(GROUP_GRAPH_PATTERN groupGraphPatternSub)
       | OPEN_CURLY_BRACE CLOSE_CURLY_BRACE -> ^(GROUP_GRAPH_PATTERN GROUP_GRAPH_PATTERN)
       ;
       
  
positive.code:     ;
  
  unaryExpression
      : op=NEGATION primaryExpression -> ^(UNARY NEGATION primaryExpression)
      | op=PLUS primaryExpression -> ^(UNARY PLUS primaryExpression)
      | op=MINUS primaryExpression -> ^(UNARY MINUS primaryExpression)
      | primaryExpression -> ^(UNARY primaryExpression)
      ;
  
  
negative.code:     ;
      
  iriRefOrFunction
      : iriRef argList? -> ^(FUNCTION iriRef ^(ARG_LIST argList)?)
      ;
  
  rdfLiteral
  