Index: /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/TaskBuilder.java
===================================================================
--- /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/TaskBuilder.java	(revision 1764)
+++ /trunk/autoquest-core-tasktrees/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeimpl/TaskBuilder.java	(revision 1765)
@@ -73,6 +73,6 @@
         {
             throw new IllegalArgumentException
-                ("the task of the child instance to be added does not belong to the children " +
-                 "of the task of the parent instance");
+                ("the task of the child instance (" + child.getTask() + ") is not a valid child " +
+                 "of the task of the parent instance (" + parentTask + ")");
         }
 
@@ -506,4 +506,17 @@
 
     /* (non-Javadoc)
+     * @see ITaskBuilder#discardTaskInstance(ITaskInstance)
+     */
+    @Override
+    public void discardTaskInstance(ITaskInstance taskInstance) {
+        if (!(taskInstance instanceof TaskInstance)) {
+            throw new IllegalArgumentException
+                ("illegal type of task instance provided: " + taskInstance.getClass());
+        }
+        
+        ((Task) ((TaskInstance) taskInstance).getTask()).removeInstance(taskInstance);
+    }
+
+    /* (non-Javadoc)
      * @see ITaskTreeBuilder#replaceChild(ISelection, ITaskTreeNode, ITaskTreeNode)
      */
