Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITask.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITask.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITask.java	(revision 1157)
@@ -50,3 +50,9 @@
      */
     public ITask clone();
+    
+    /**
+     *
+     */
+   public void accept(ITaskVisitor visitor);
+    
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITaskVisitor.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITaskVisitor.java	(revision 1157)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITaskVisitor.java	(revision 1157)
@@ -0,0 +1,52 @@
+//   Copyright 2012 Georg-August-Universität Göttingen, Germany
+//
+//   Licensed under the Apache License, Version 2.0 (the "License");
+//   you may not use this file except in compliance with the License.
+//   You may obtain a copy of the License at
+//
+//       http://www.apache.org/licenses/LICENSE-2.0
+//
+//   Unless required by applicable law or agreed to in writing, software
+//   distributed under the License is distributed on an "AS IS" BASIS,
+//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//   See the License for the specific language governing permissions and
+//   limitations under the License.
+
+package de.ugoe.cs.autoquest.tasktrees.treeifc;
+
+
+/**
+ * <p>
+ * TODO comment
+ * </p>
+ * 
+ * @author Alexander Deicke
+ */
+public interface ITaskVisitor {
+
+    /**
+    *
+    */
+    public void visit(IEventTask event);
+    
+    /**
+    *
+    */
+    public void visit(IIteration iteration);
+    
+    /**
+    *
+    */
+    public void visit(ISelection selection);
+    
+    /**
+    *
+    */
+    public void visit(ISequence sequence);
+
+    /**
+     *
+     */
+    public void visit(ITask task);
+    
+}
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/EventTask.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/EventTask.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/EventTask.java	(revision 1157)
@@ -18,4 +18,5 @@
 import de.ugoe.cs.autoquest.eventcore.IEventType;
 import de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -71,3 +72,11 @@
     }
 
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeifc.IEventTask#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.TaskVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        visitor.visit(this);
+    }
+
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Iteration.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Iteration.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Iteration.java	(revision 1157)
@@ -18,4 +18,5 @@
 import de.ugoe.cs.autoquest.tasktrees.treeifc.IOptional;
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -63,4 +64,12 @@
         return (Iteration) super.clone();
     }
+    
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeimpl.TaskTreeNode#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.NodeVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        visitor.visit(this);
+    }
 
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Optional.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Optional.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Optional.java	(revision 1157)
@@ -17,4 +17,5 @@
 import de.ugoe.cs.autoquest.tasktrees.treeifc.IOptional;
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -58,3 +59,13 @@
         return (Optional) super.clone();
     }
+
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeifc.ITemporalRelationship#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.TaskVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        // TODO Auto-generated method stub
+        System.out.println("TODO: implement ITemporalRelationship.accept ");
+        
+    }
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Selection.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Selection.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Selection.java	(revision 1157)
@@ -17,4 +17,5 @@
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ISelection;
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -74,3 +75,11 @@
     }
 
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeifc.ITemporalRelationship#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.TaskVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        visitor.visit(this);
+    }
+
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Sequence.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Sequence.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Sequence.java	(revision 1157)
@@ -16,4 +16,5 @@
 
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ISequence;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -46,4 +47,12 @@
         return (Sequence) super.clone();
     }
+    
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeimpl.TaskTreeNode#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.NodeVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        visitor.visit(this);
+    }
 
 }
Index: trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Task.java
===================================================================
--- trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Task.java	(revision 1156)
+++ trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/Task.java	(revision 1157)
@@ -16,4 +16,5 @@
 
 import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask;
+import de.ugoe.cs.autoquest.tasktrees.treeifc.ITaskVisitor;
 
 /**
@@ -145,3 +146,11 @@
     }
 
+    /* (non-Javadoc)
+     * @see de.ugoe.cs.autoquest.tasktrees.treeifc.ITask#accept(de.ugoe.cs.autoquest.tasktrees.treeifc.TaskVisitor)
+     */
+    @Override
+    public void accept(ITaskVisitor visitor) {
+        visitor.visit(this);
+    }
+
 }
