Index: /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraint.cs
===================================================================
--- /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraint.cs	(revision 16899)
+++ /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraint.cs	(revision 16900)
@@ -58,4 +58,18 @@
     }
 
+    private string target;
+
+    [Storable]
+    public string Target {
+      get => target;
+      set {
+        if (target != value) {
+          target = value;
+          UpdateExpression();
+          OnChanged();
+        }
+      }
+    }
+
     public bool IsDerivation {
       get => numberOfDerivation > 0;
@@ -131,8 +145,9 @@
     private IntervalConstraint(StorableConstructorFlag _) : base(_) { }
 
-    public IntervalConstraint(string expression, string variable, int numberOfDerivation, Interval interval, bool inclusiveLowerBound,
+    public IntervalConstraint(string expression, string variable, string target, int numberOfDerivation, Interval interval, bool inclusiveLowerBound,
       bool inclusiveUpperBound, bool enabled) : base(){
       this.expression = expression;
       this.variable = variable;
+      this.target = target;
       this.numberOfDerivation = numberOfDerivation;
       this.interval = interval;
@@ -149,9 +164,10 @@
       : base(original, cloner) {
       this.Expression = original.Expression;
+      this.Variable = original.Variable;
+      this.Target = original.Target;
+      this.NumberOfDerivation = original.NumberOfDerivation;
       this.Interval = original.Interval;
       this.InclusiveLowerBound = original.InclusiveLowerBound;
       this.InclusiveUpperBound = original.InclusiveUpperBound;
-      this.Variable = original.Variable;
-      this.NumberOfDerivation = original.NumberOfDerivation;
       this.enabled = original.enabled;
     }
@@ -181,5 +197,5 @@
 
       if (!IsDerivation) {
-        expression = string.Format("{0} in {1}{2} .. {3}{4}",
+        expression = string.Format("Target:{0} in {1}{2} .. {3}{4}",
           Variable,
           (InclusiveLowerBound) ? "[" : "]",
@@ -190,6 +206,7 @@
         return;
       } 
-      expression = string.Format("\u2202{5}Target/\u2202{0}{5} in {1}{2} .. {3}{4}",
+      expression = string.Format("\u2202{6}{1}/\u2202{0}{6} in {2}{3} .. {4}{5}",
         Variable,
+        Target,
         (InclusiveLowerBound) ? "[" : "]",
         Interval.LowerBound,
Index: /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraintsParser.cs
===================================================================
--- /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraintsParser.cs	(revision 16899)
+++ /branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Interval/IntervalConstraintsParser.cs	(revision 16900)
@@ -51,5 +51,5 @@
               var upperBound = ParseIntervalBounds(match.Groups[6].Value);
               var expression = "Target:" + match.Groups[0].Value;
-              var definition = "Target " + match.Groups[1].Value.Trim();
+              var parsedTarget = match.Groups[1].Value.Trim();
               var variable = match.Groups[1].Value.Trim();
               var inclLowerBound = match.Groups[3].Value.Trim() == "[";
@@ -59,5 +59,5 @@
               var interval = new Interval(lowerBound, upperBound);
 
-              var constraint = new IntervalConstraint(expression, variable, numberOfDerivation, interval, inclLowerBound, inclUpperBound, true);
+              var constraint = new IntervalConstraint(expression, variable, parsedTarget, numberOfDerivation, interval, inclLowerBound, inclUpperBound, true);
 
               yield return constraint;
@@ -96,6 +96,5 @@
               var upperBound = ParseIntervalBounds(match.Groups[11].Value);
               var expression = match.Groups[0].Value;
-              var definition = match.Groups[1].Value + match.Groups[2].Value + match.Groups[3].Value +
-                                      match.Groups[4].Value + match.Groups[5].Value + match.Groups[6].Value + match.Groups[7].Value;
+              var parsedTarget = match.Groups[3].Value.Trim();
               var isDerivation = true;
               var inclLowerBound = match.Groups[8].Value.Trim() == "[";
@@ -105,5 +104,5 @@
               var interval = new Interval(lowerBound, upperBound);
 
-              var constraint = new IntervalConstraint(expression, variable, numberOfDerivation, interval, inclLowerBound, inclUpperBound, true);
+              var constraint = new IntervalConstraint(expression, variable, parsedTarget, numberOfDerivation, interval, inclLowerBound, inclUpperBound, true);
 
               yield return constraint;
