anchor.diff:      ;
   
   graphTerm
  -    : iriRef | rdfLiteral | numericLiteral | booleanLiteral | blankNode | nil
  +    : iri | rdfLiteral | numericLiteral | booleanLiteral | blankNode | nil
       ;
       
   nil
  
positive.code:     ;
  
  pathMod
      : (ASTERISK | QUESTION_MARK | PLUS | OPEN_CURLY_BRACE (integer (COMMA (CLOSE_CURLY_BRACE | integer CLOSE_CURLY_BRACE) | CLOSE_CURLY_BRACE) | COMMA integer CLOSE_CURLY_BRACE))
      ;
  
  pathPrimary
      : iriRef | A | NEGATION pathNegatedPropertySet | OPEN_BRACE path CLOSE_BRACE
      ;
  
  pathNegatedPropertySet
  
negative.code:     : var
      ;
      	
  objectListPath
      : objectPath (COMMA objectPath)*
      ;
  
  objectPath
      : graphNodePath
      ;
  
  path
      : pathAlternative
      ; 
  
  pathAlternative
      : pathSequence (PIPE pathSequence)*
      ;
      
  pathSequence
  