Index: /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/temporalrelation/utils/TaskTraversal.java
===================================================================
--- /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/temporalrelation/utils/TaskTraversal.java	(revision 1848)
+++ /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/temporalrelation/utils/TaskTraversal.java	(revision 1849)
@@ -19,5 +19,4 @@
 import java.util.LinkedList;
 import java.util.List;
-import java.util.Set;
 
 import de.ugoe.cs.autoquest.tasktrees.treeifc.DefaultTaskTraversingVisitor;
@@ -43,10 +42,12 @@
     /** */
     private TaskPath[] traversalPathArray = null;
-
+    
+    /** */
+    private ITask task = null;
+    
     /**
      *
      */
     public static TaskTraversal getTraversal(ITask                task,
-                                             final Set<ITask>     untraversedTasks,
                                              final List<TaskPath> untraversedPaths)
     {
@@ -68,7 +69,5 @@
                 currentPath.add(relationship, currentIndex[0]);
                 
-                if (pathIsInList(currentPath, untraversedPaths) ||
-                    untraversedTasks.contains(relationship))
-                {
+                if (pathIsInList(currentPath, untraversedPaths)) {
                     result.add(new TaskPath(currentPath));
                 }
@@ -90,5 +89,5 @@
             @Override
             public void visit(ISelection relationship) {
-                // selections are never traversed as a traversal can have different orders for
+                // selections are never traversed as a traversal can have different orders
                 // for semantically identical selections
                 currentPath.add(relationship, currentIndex[0]);
@@ -107,7 +106,5 @@
                 currentPath.add(relationship, currentIndex[0]);
                 
-                if (pathIsInList(currentPath, untraversedPaths) ||
-                    untraversedTasks.contains(relationship))
-                {
+                if (pathIsInList(currentPath, untraversedPaths)) {
                     result.add(new TaskPath(currentPath));
                 }
@@ -176,4 +173,11 @@
      *
      */
+    public ITask getTask() {
+        return task;
+    }
+
+    /**
+     *
+     */
     public ITask get(int i) {
         return traversalPathArray[i].getLast();
@@ -219,4 +223,5 @@
         traversalPathArray = traversalPaths.toArray(new TaskPath[traversalPaths.size()]);
         traversalPaths = null;
+        task = traversalPathArray[0].getTask(0);
     }
 
