anchor.diff:      ;
       
   iriRefOrFunction
  -    : iriRef argList?
  +    : iriRef argList? -> ^(FUNCTION iriRef ^(ARGLIST argList)?)
       ;
   
   rdfLiteral
  
positive.code:     ;	
  
  constructTemplate
      : OPEN_CURLY_BRACE constructTriples? CLOSE_CURLY_BRACE -> constructTriples?
      ;
  
  constructTriples
      : triplesSameSubject ( DOT triplesSameSubject )* DOT? -> ^(CONSTRUCTTRIPLES triplesSameSubject+)
      ;
  
  triplesSameSubject
  
negative.code: PREDICATE;
  OBJECT;
  NOTEXISTS;
  FUNCTION;
  }
  
  @header {
  