Index: /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkFolderLoader.java
===================================================================
--- /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkFolderLoader.java	(revision 119)
+++ /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkFolderLoader.java	(revision 119)
@@ -0,0 +1,34 @@
+// Copyright 2016 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.cpdp.loader;
+
+/**
+ * Implements the {@link AbstractFolderLoader} for the RELINK data set.
+ * 
+ * @author Steffen Herbold
+ */
+public class RelinkFolderLoader extends AbstractFolderLoader {
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see de.ugoe.cs.cpdp.loader.AbstractFolderLoader#getSingleLoader()
+     */
+    @Override
+    protected SingleVersionLoader getSingleLoader() {
+        return new RelinkLoader();
+    }
+
+}
Index: /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkLoader.java
===================================================================
--- /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkLoader.java	(revision 119)
+++ /trunk/CrossPare/src/de/ugoe/cs/cpdp/loader/RelinkLoader.java	(revision 119)
@@ -0,0 +1,87 @@
+package de.ugoe.cs.cpdp.loader;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.Set;
+
+import weka.core.Instances;
+
+public class RelinkLoader implements SingleVersionLoader {
+
+    @Override
+    public Instances load(File file) {
+        BufferedReader reader;
+        Instances tmpData;
+        try {
+            reader = new BufferedReader(new FileReader(file));
+            tmpData = new Instances(reader);
+            reader.close();
+        }
+        catch (IOException e) {
+            throw new RuntimeException("error reading file: " + file.getName(), e);
+        }
+
+        Set<String> attrNames = new HashSet<>();
+        attrNames.add("AvgCyclomatic");
+        attrNames.add("AvgCyclomaticModified");
+        attrNames.add("AvgCyclomaticStrict");
+        attrNames.add("AvgEssential");
+        attrNames.add("AvgLine");
+        attrNames.add("AvgLineBlank");
+        attrNames.add("AvgLineCode");
+        attrNames.add("AvgLineComment");
+        attrNames.add("CountClassBase");
+        attrNames.add("CountClassCoupled");
+        attrNames.add("CountClassDerived");
+        attrNames.add("CountDeclClassMethod");
+        attrNames.add("CountDeclClassVariable");
+        attrNames.add("CountDeclInstanceMethod");
+        attrNames.add("CountDeclInstanceVariable");
+        attrNames.add("CountDeclMethod");
+        attrNames.add("CountDeclMethodAll");
+        attrNames.add("CountDeclMethodPrivate");
+        attrNames.add("CountDeclMethodProtected");
+        attrNames.add("CountDeclMethodPublic");
+        attrNames.add("CountLine");
+        attrNames.add("CountLineBlank");
+        attrNames.add("CountLineCode");
+        attrNames.add("CountLineCodeDecl");
+        attrNames.add("CountLineCodeExe");
+        attrNames.add("CountLineComment");
+        attrNames.add("CountSemicolon");
+        attrNames.add("CountStmt");
+        attrNames.add("CountStmtDecl");
+        attrNames.add("CountStmtExe");
+        attrNames.add("MaxCyclomatic");
+        attrNames.add("MaxCyclomaticModified");
+        attrNames.add("MaxCyclomaticStrict");
+        attrNames.add("MaxInheritanceTree");
+        attrNames.add("PercentLackOfCohesion");
+        attrNames.add("RatioCommentToCode");
+        attrNames.add("SumCyclomatic");
+        attrNames.add("SumCyclomaticModified");
+        attrNames.add("SumCyclomaticStrict");
+        attrNames.add("SumEssential");
+        attrNames.add("isDefective");
+        
+        for( int j=tmpData.numAttributes()-1; j>=0 ; j-- ) {
+            if( !attrNames.contains(tmpData.attribute(j).name()) ) {
+                tmpData.deleteAttributeAt(j);
+            }
+        }
+        
+        // setting class attribute
+        tmpData.setClassIndex(tmpData.numAttributes() - 1);
+
+        return tmpData;
+    }
+
+    @Override
+    public boolean filenameFilter(String file) {
+        return file.endsWith(".arff");
+    }
+
+}
