anchor.diff:      ;
   
   memberDeclaration
  -	:	includeDirective 
  -	|	taskDeclaration 
  -	|	taskDefinition
  -	;
  +    :   includeDirective
  +    |   taskDeclaration
  +    |   taskDefinition
  +    ;
   
   
   includeDirective
  
positive.code: exitTransitionDefinition
      :   identifierSourceNode Colon Identifier edge targetNode conditionClause? doClause? Semicolon
      ;
  	
  sourceNode
  	:	initSourceNode 
  	|	identifierSourceNode
  	;
  
  initSourceNode
  	:	InitKeyword
  	;
  
  identifierSourceNode
  	:	Identifier
  	;
  
  edge:	goToEdge
      |	modalEdge
      |	nonModalEdge
      ;
  
  goToEdge
      :	GoToEdgeKeyword
      ;
  
  modalEdge
      :	ModalEdgeKeyword
      ;
  
  nonModalEdge
      :	NonModalEdgeKeyword
      ;
  
  targetNode
      :	endTargetNode
      |	identifierTargetNode
      ;
  
  endTargetNode
  	:	EndKeyword
  	;
  
  identifierTargetNode
  	:	Identifier (OpenParen identifierOrStringList CloseParen)?
  	;
  
  conditionClause
      :	ifConditionClause
      |	elseIfConditionClause
      |	elseConditionClause
      ;
  
  ifConditionClause
  	:	IfKeyword identifierOrString
  	;
  
  elseIfConditionClause
  	:	elseConditionClause ifConditionClause
  	;
  
  elseConditionClause
  	:	ElseKeyword
  	;
  
  doClause
      :	DoKeyword identifierOrString
      ;
  
  trigger
  	:	signalTrigger
  	|	spontaneousTrigger
  	;
  
  spontaneousTrigger
  	:	SpontaneousKeyword 
  	|	SpontKeyword
  	;
  
  signalTrigger
      :	OnKeyword identifierOrStringList
      ;
  
  identifierOrStringList
      :	identifierOrString (Comma identifierOrString)*
      ;
  
  identifierOrString
      :	identifier 
  	|	stringLiteral
      ;
  
  identifier
  	:	Identifier
  	;
  
  stringLiteral
  	:	StringLiteral
  	;
  
  // ==================
  // Code Syntaxen
  
negative.code: codeBaseDeclaration
      :   OpenBracket BaseKeyword codeType (Colon codeType (Comma codeType)? )? CloseBracket
      ;
  
  codeDeclaration
      :   OpenBracket CodeKeyword StringLiteral* CloseBracket
      ;
  
  codeGenerateToDeclaration
      :   OpenBracket GeneratetoKeyword StringLiteral CloseBracket
      ;
  
  codeNotImplementedDeclaration
      :   OpenBracket NotimplementedKeyword CloseBracket
      ;
  
  codeAbstractMethodDeclaration
      :   OpenBracket AbstractmethodKeyword CloseBracket
      ;
  
  codeDoNotInjectDeclaration
      :   OpenBracket DonotinjectKeyword CloseBracket;
  
  //
  parameterList
      :   parameter (Comma parameter)*
      ;
  
  parameter
      :   codeType Identifier?
      ;
  
  codeType
  