Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/HeuristicLab.JsonInterface.App.csproj
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/HeuristicLab.JsonInterface.App.csproj	(revision 17828)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/HeuristicLab.JsonInterface.App.csproj	(revision 17834)
@@ -102,9 +102,4 @@
       <Private>False</Private>
     </ProjectReference>
-    <ProjectReference Include="..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj">
-      <Project>{06D4A186-9319-48A0-BADE-A2058D462EEA}</Project>
-      <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name>
-      <Private>False</Private>
-    </ProjectReference>
     <ProjectReference Include="..\HeuristicLab.JsonInterface\HeuristicLab.JsonInterface.csproj">
       <Project>{0e3aab5e-f152-44e0-a054-4d9a83ecee08}</Project>
@@ -125,19 +120,4 @@
       <Project>{94186a6a-5176-4402-ae83-886557b53cca}</Project>
       <Name>HeuristicLab.PluginInfrastructure-3.3</Name>
-      <Private>False</Private>
-    </ProjectReference>
-    <ProjectReference Include="..\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4.csproj">
-      <Project>{5AC82412-911B-4FA2-A013-EDC5E3F3FCC2}</Project>
-      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic.Regression-3.4</Name>
-      <Private>False</Private>
-    </ProjectReference>
-    <ProjectReference Include="..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj">
-      <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project>
-      <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name>
-      <Private>False</Private>
-    </ProjectReference>
-    <ProjectReference Include="..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj">
-      <Project>{DF87C13E-A889-46FF-8153-66DCAA8C5674}</Project>
-      <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name>
       <Private>False</Private>
     </ProjectReference>
Index: branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/Runner.cs
===================================================================
--- branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/Runner.cs	(revision 17828)
+++ branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface.App/Runner.cs	(revision 17834)
@@ -3,12 +3,7 @@
 using System.IO;
 using System.Linq;
-using System.Text;
 using System.Threading;
 using System.Threading.Tasks;
 using HeuristicLab.Optimization;
-using HeuristicLab.ParallelEngine;
-using HeuristicLab.Problems.DataAnalysis.Symbolic;
-using HeuristicLab.Problems.DataAnalysis.Symbolic.Regression;
-using HeuristicLab.SequentialEngine;
 using Newtonsoft.Json.Linq;
 
@@ -42,7 +37,13 @@
       File.WriteAllText(file, FetchResults(optimizer, configuredResultItem));
 
-    private static string FetchResults(IOptimizer optimizer, IEnumerable<IResultJsonItem> configuredResultItem) {
+    private static IEnumerable<IResultFormatter> ResultFormatter { get; } =
+      PluginInfrastructure.ApplicationManager.Manager.GetInstances<IResultFormatter>();
+
+    private static IResultFormatter GetResultFormatter(string fullName) =>
+      ResultFormatter?.Where(x => x.GetType().FullName == fullName).Last();
+
+    private static string FetchResults(IOptimizer optimizer, IEnumerable<IResultJsonItem> configuredResultItems) {
       JArray arr = new JArray();
-      IEnumerable<string> configuredResults = configuredResultItem.Select(x => x.Name);
+      IEnumerable<string> configuredResults = configuredResultItems.Select(x => x.Name);
 
       foreach (var run in optimizer.Runs) {
@@ -51,21 +52,13 @@
         obj.Add("Run", JToken.FromObject(run.ToString()));
 
-        // add empty values for configured results
-        var emptyToken = JToken.FromObject("");
-        foreach (var cr in configuredResults) {
-          obj.Add(cr, emptyToken);
-        }
+        // zip and filter the results with the ResultJsonItems
+        var filteredResults = configuredResultItems.Zip(
+          run.Results.Where(x => configuredResultItems.Any(y => y.Name == x.Key)), 
+          (x, y) => new { Item = x, Value = y.Value });
 
-        // change empty values with calculated values
-        var formatter = new SymbolicDataAnalysisExpressionMATLABFormatter();
-        foreach (var res in run.Results) {
-          if(obj.ContainsKey(res.Key)) {
-            if (res.Value is ISymbolicRegressionSolution solution) {
-              var formattedModel = formatter.Format(solution.Model.SymbolicExpressionTree);
-              obj[res.Key] = JToken.FromObject(formattedModel);
-            } else {
-              obj[res.Key] = JToken.FromObject(res.Value.ToString());
-            }
-          }
+        // add results to the JObject
+        foreach(var result in filteredResults) {
+          var formatter = GetResultFormatter(result.Item.ResultFormatterType);
+          obj.Add(result.Item.Name, formatter.Format(result.Value));
         }
       }
