diff --git a/screening/source/java/OpenBISScreeningML.java b/screening/source/java/OpenBISScreeningML.java
index c7b2a1211939c10bcf46426e0e9d823c50c013c2..ebc52ae0d4f45c67885db515aa7ecbb8a59a8fec 100644
--- a/screening/source/java/OpenBISScreeningML.java
+++ b/screening/source/java/OpenBISScreeningML.java
@@ -1298,7 +1298,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1347,7 +1347,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1408,7 +1408,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1455,7 +1455,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1497,7 +1497,7 @@ public class OpenBISScreeningML
         }
         result[0] =
                 new Object[featureCodes.size()][wellPositions.size()][dataSetCodes.size()];
-        result[1] = new Object[wellPositions.size()][dataSetCodes.size()][13];
+        result[1] = new Object[wellPositions.size()][dataSetCodes.size()][14];
         for (FeatureVectorWithDescription vector : featureVectors)
         {
             WellPosition wellPosition = vector.getWellPosition();
@@ -1546,7 +1546,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1593,7 +1593,7 @@ public class OpenBISScreeningML
      *         dimension is location annotations in the following order: <code>{plate well
      *         description, plate augmented code, plate perm id, plate space code, plate code, row,
      *         column, experiment augmented code, experiment perm id, experiment space code,
-     *         experiment project code, experiment code, data set code}</code> 
+     *         experiment project code, experiment code, data set code, data set type}</code> 
      *         <li>feature codes: 2. dimension is feature codes in alphabetical order. 3. and 4.
      *         dimension are meaningless (i.e. they have length one) 
      *         </ol>
@@ -1632,7 +1632,7 @@ public class OpenBISScreeningML
         int numberOfDataSets = dataSets.size();
         result[0] =
                 new Object[featureCodes.size()][wellPositions.size()][numberOfDataSets];
-        result[1] = new Object[wellPositions.size()][numberOfDataSets][13];
+        result[1] = new Object[wellPositions.size()][numberOfDataSets][14];
         for (int dataSetIndex = 0; dataSetIndex < numberOfDataSets; dataSetIndex++)
         {
             FeatureVectorDataset dataSet = dataSets.get(dataSetIndex);
@@ -1719,7 +1719,7 @@ public class OpenBISScreeningML
                             dataSetRef.getExperimentIdentifier().getSpaceCode(),
                             dataSetRef.getExperimentIdentifier().getProjectCode(),
                             dataSetRef.getExperimentIdentifier().getExperimentCode(),
-                            dataSetRef.getDatasetCode(), };
+                            dataSetRef.getDatasetCode(), dataSetRef.getDataSetType() };
         System.arraycopy(annotations, 0, result[1][wellIndex][dataSetIndex], 0, annotations.length);
     }
     
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
index e818d7c3666a3630eab35ef3f2f582afc807de72..a2934019b4e35b977568da3fb3cdc88205eb67d6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
@@ -639,7 +639,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     private FeatureVectorDatasetWellReference createFVDatasetReference(
             FeatureVectorDatasetReference fvdr, WellPosition wellPosition)
     {
-        return new FeatureVectorDatasetWellReference(fvdr.getDatasetCode(),
+        return new FeatureVectorDatasetWellReference(fvdr.getDatasetCode(), fvdr.getDataSetType(), 
                 fvdr.getDatastoreServerUrl(), fvdr.getPlate(), fvdr.getExperimentIdentifier(),
                 fvdr.getPlateGeometry(), fvdr.getRegistrationDate(), fvdr.getParentImageDataset(),
                 fvdr.getProperties(), wellPosition);
@@ -1053,7 +1053,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         // PlateImageReference should really implement IImageDatasetIdentifier, however it doesn't,
         // so we need to convert to ImageDatasetReference here.
         final IImageDatasetIdentifier imageDatasetId =
-                new ImageDatasetReference(imageReference.getDatasetCode(),
+                new ImageDatasetReference(imageReference.getDatasetCode(), null,
                         imageReference.getDatastoreServerUrl(), null, null, null, null, null, null);
         final ImageDatasetMetadata imageMetadata = listImageMetadata(imageDatasetId);
         final ImageSize size =
@@ -1149,7 +1149,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         // PlateImageReference should really implement IImageDatasetIdentifier, however it doesn't,
         // so we need to convert to ImageDatasetReference here.
         final IImageDatasetIdentifier imageDatasetId =
-                new ImageDatasetReference(imageReference.getDatasetCode(),
+                new ImageDatasetReference(imageReference.getDatasetCode(), null,
                         imageReference.getDatastoreServerUrl(), null, null, null, null, null, null);
         final ImageDatasetMetadata imageMetadata = listImageMetadata(imageDatasetId);
         final WellImages images =
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoader.java
index f85d22098463b21f23403d6eb4719d1344180fea..c1a65e51143ec16dc6b33906a739fa49bfc17e40 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoader.java
@@ -23,6 +23,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataStore;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData;
 import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
@@ -147,9 +148,11 @@ class FeatureVectorDatasetLoader extends HCSImageDatasetLoader
         DataStore dataStore = externalData.getDataStore();
         // there should be no more parents than one, we ensure about that earlier
         ExternalData parentDataset = tryGetOneParent(externalData);
+        DataSetType dataSetType = externalData.getDataSetType();
+        String dataSetTypeCodeOrNull = dataSetType == null ? null : dataSetType.getCode();
         if (parentDataset == null)
         {
-            return new FeatureVectorDatasetReference(externalData.getCode(),
+            return new FeatureVectorDatasetReference(externalData.getCode(), dataSetTypeCodeOrNull, 
                     getDataStoreUrlFromDataStore(dataStore), createPlateIdentifier(externalData),
                     createExperimentIdentifier(externalData), extractPlateGeometry(externalData),
                     externalData.getRegistrationDate(), null, extractProperties(externalData));
@@ -158,7 +161,7 @@ class FeatureVectorDatasetLoader extends HCSImageDatasetLoader
             // Note: this only works reliably because this class sets the parents of the feature
             // vector data sets itself and sets it to a list with exactly one entry!
             // (see loadFeatureVectorDatasets() above)
-            return new FeatureVectorDatasetReference(externalData.getCode(),
+            return new FeatureVectorDatasetReference(externalData.getCode(), dataSetTypeCodeOrNull,
                     getDataStoreUrlFromDataStore(dataStore), createPlateIdentifier(parentDataset),
                     createExperimentIdentifier(externalData), extractPlateGeometry(parentDataset),
                     externalData.getRegistrationDate(), tryAsImageDataset(parentDataset),
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoader.java
index 232fffca2dc77d9c2bb85aa1ae3c4bb45316a9f6..cce3af27fe874d8ec388951ae0337e4adba63f58 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoader.java
@@ -25,6 +25,7 @@ import java.util.Map.Entry;
 import java.util.Set;
 
 import ch.systemsx.cisd.openbis.generic.server.business.bo.datasetlister.IDatasetLister;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataStore;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData;
 import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
@@ -240,7 +241,9 @@ class HCSImageDatasetLoader extends PlateDatasetLoader
             return null;
         }
         DataStore dataStore = externalData.getDataStore();
-        return new ImageDatasetReference(externalData.getCode(),
+        DataSetType dataSetType = externalData.getDataSetType();
+        String dataSetTypeCodeOrNull = dataSetType == null ? null : dataSetType.getCode();
+        return new ImageDatasetReference(externalData.getCode(), dataSetTypeCodeOrNull,
                 getDataStoreUrlFromDataStore(dataStore), createPlateIdentifier(externalData),
                 createExperimentIdentifier(externalData), extractPlateGeometry(externalData),
                 externalData.getRegistrationDate(), extractProperties(externalData),
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetReference.java
index 1e50be7748c800f92e8bc96bf29d45d739a37775..585f262d81f7e473a67de0b06a684f03b7c432fb 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetReference.java
@@ -26,6 +26,8 @@ public class DatasetReference extends DatasetIdentifier implements Serializable
 
     private Map<String, String> properties = Collections.<String, String> emptyMap();
 
+    private final String dataSetType;
+
     @Deprecated
     public DatasetReference(String datasetCode, String datastoreServerUrl, PlateIdentifier plate)
     {
@@ -39,11 +41,21 @@ public class DatasetReference extends DatasetIdentifier implements Serializable
         this(datasetCode, datastoreServerUrl, plate, null, plateGeometry, registrationDate, null);
     }
 
+    @Deprecated
     public DatasetReference(String datasetCode, String datastoreServerUrl,
             PlateIdentifier plateWithExperiment, ExperimentIdentifier experiment,
             Geometry plateGeometry, Date registrationDate, Map<String, String> propertiesOrNull)
+    {
+        this(datasetCode, null, datastoreServerUrl, plateWithExperiment, experiment, plateGeometry,
+                registrationDate, propertiesOrNull);
+    }
+    
+    public DatasetReference(String datasetCode, String dataSetTypeOrNull, String datastoreServerUrl,
+            PlateIdentifier plateWithExperiment, ExperimentIdentifier experiment,
+            Geometry plateGeometry, Date registrationDate, Map<String, String> propertiesOrNull)
     {
         super(datasetCode, datastoreServerUrl);
+        this.dataSetType = dataSetTypeOrNull;
         this.plate = plateWithExperiment;
         this.experimentIdentifier = (experiment == null) ? createFakeExperiment(plate) : experiment;
         this.plateGeometry = plateGeometry;
@@ -60,6 +72,16 @@ public class DatasetReference extends DatasetIdentifier implements Serializable
                 "?");
     }
 
+    /**
+     * Returns data set type.
+     * 
+     * @since 1.7
+     */
+    public String getDataSetType()
+    {
+        return dataSetType;
+    }
+
     /**
      * Returns the plate geometry.
      */
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetReference.java
index 0166838d80308db9d4e5a1db9c0aebe97a1b3b4e..2859b6abe103abe7cdbe2a49af6423e6bd8ab5a5 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetReference.java
@@ -40,14 +40,25 @@ public class FeatureVectorDatasetReference extends DatasetReference implements
         this.imageDatasetIdentifierOrNull = imageDatasetIdentifier;
     }
 
+    @Deprecated
     public FeatureVectorDatasetReference(String datasetCode, String datastoreServerUrl,
             PlateIdentifier plate, ExperimentIdentifier experimentIdentifier,
             Geometry plateGeometry, Date registrationDate,
             IImageDatasetIdentifier imageDatasetIdentifierOrNull,
             Map<String, String> propertiesOrNull)
     {
-        super(datasetCode, datastoreServerUrl, plate, experimentIdentifier, plateGeometry,
-                registrationDate, propertiesOrNull);
+        this(datasetCode, null, datastoreServerUrl, plate, experimentIdentifier, plateGeometry,
+                registrationDate, imageDatasetIdentifierOrNull, propertiesOrNull);
+    }
+
+    public FeatureVectorDatasetReference(String datasetCode, String dataSetTypeOrNull,
+            String datastoreServerUrl, PlateIdentifier plate,
+            ExperimentIdentifier experimentIdentifier, Geometry plateGeometry,
+            Date registrationDate, IImageDatasetIdentifier imageDatasetIdentifierOrNull,
+            Map<String, String> propertiesOrNull)
+    {
+        super(datasetCode, dataSetTypeOrNull, datastoreServerUrl, plate, experimentIdentifier,
+                plateGeometry, registrationDate, propertiesOrNull);
         this.imageDatasetIdentifierOrNull = imageDatasetIdentifierOrNull;
     }
 
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetWellReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetWellReference.java
index a72b2948a672b96bc21d79bce6be4599e7c04178..6019623a85c7cabbe3bc31580686fed287964985 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetWellReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDatasetWellReference.java
@@ -43,19 +43,31 @@ public class FeatureVectorDatasetWellReference extends FeatureVectorDatasetRefer
     public FeatureVectorDatasetWellReference(FeatureVectorDatasetReference fvdr,
             WellPosition wellPosition)
     {
-        this(fvdr.getDatasetCode(), fvdr.getDatastoreServerUrl(), fvdr.getPlate(), fvdr
-                .getExperimentIdentifier(), fvdr.getPlateGeometry(), fvdr.getRegistrationDate(),
-                fvdr.getParentImageDataset(), fvdr.getProperties(), wellPosition);
+        this(fvdr.getDatasetCode(), fvdr.getDataSetType(), fvdr.getDatastoreServerUrl(), fvdr
+                .getPlate(), fvdr.getExperimentIdentifier(), fvdr.getPlateGeometry(), fvdr
+                .getRegistrationDate(), fvdr.getParentImageDataset(), fvdr.getProperties(),
+                wellPosition);
     }
 
+    @Deprecated
     public FeatureVectorDatasetWellReference(String datasetCode, String datastoreServerUrl,
             PlateIdentifier plate, ExperimentIdentifier experimentIdentifier,
             Geometry plateGeometry, Date registrationDate,
             IImageDatasetIdentifier imageDatasetIdentifier, Map<String, String> propertiesOrNull,
             WellPosition wellPosition)
     {
-        super(datasetCode, datastoreServerUrl, plate, experimentIdentifier, plateGeometry,
-                registrationDate, imageDatasetIdentifier, propertiesOrNull);
+        this(datasetCode, null, datastoreServerUrl, plate, experimentIdentifier, plateGeometry,
+                registrationDate, imageDatasetIdentifier, propertiesOrNull, wellPosition);
+    }
+    
+    public FeatureVectorDatasetWellReference(String datasetCode, String dataSetTypeOrNull,
+            String datastoreServerUrl, PlateIdentifier plate,
+            ExperimentIdentifier experimentIdentifier, Geometry plateGeometry,
+            Date registrationDate, IImageDatasetIdentifier imageDatasetIdentifier,
+            Map<String, String> propertiesOrNull, WellPosition wellPosition)
+    {
+        super(datasetCode, dataSetTypeOrNull, datastoreServerUrl, plate, experimentIdentifier,
+                plateGeometry, registrationDate, imageDatasetIdentifier, propertiesOrNull);
         this.wellPosition = wellPosition;
     }
 
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
index b683e0b35db64a78abf6a8941850b0cd1480c729..424349154044f3716b51087c777f65a213c39e77 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
@@ -42,6 +42,9 @@ public class FeatureVectorWithDescription extends FeatureVector implements IFeat
         return featureNames;
     }
     
+    /**
+     * @since 1.7
+     */
     public List<String> getFeatureCodes()
     {
         return featureNames;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageDatasetReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageDatasetReference.java
index a6311acb17e0fc9c9888ef5b234c6f933945c24d..f3897f5bc4da1b12c3d883ee0b0107385696eb7a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageDatasetReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageDatasetReference.java
@@ -54,12 +54,22 @@ public class ImageDatasetReference extends DatasetReference implements IImageDat
                 registrationDate, propertiesOrNull, null);
     }
 
+    @Deprecated
     public ImageDatasetReference(String datasetCode, String datastoreServerUrl,
             PlateIdentifier plate, ExperimentIdentifier experimentIdentifier,
             Geometry plateGemoetry, Date registrationDate, Map<String, String> propertiesOrNull,
             ImageDatasetReference parentImageSetsetReference)
     {
-        super(datasetCode, datastoreServerUrl, plate, experimentIdentifier, plateGemoetry,
+        this(datasetCode, null, datastoreServerUrl, plate, experimentIdentifier, plateGemoetry,
+                registrationDate, propertiesOrNull, parentImageSetsetReference);
+    }
+    
+    public ImageDatasetReference(String datasetCode, String dataSetTypeOrNull, String datastoreServerUrl,
+            PlateIdentifier plate, ExperimentIdentifier experimentIdentifier,
+            Geometry plateGemoetry, Date registrationDate, Map<String, String> propertiesOrNull,
+            ImageDatasetReference parentImageSetsetReference)
+    {
+        super(datasetCode, dataSetTypeOrNull, datastoreServerUrl, plate, experimentIdentifier, plateGemoetry,
                 registrationDate, propertiesOrNull);
         this.parentImageDatasetReference = parentImageSetsetReference;
     }
diff --git a/screening/sourceTest/java/OpenBISScreeningMLTest.java b/screening/sourceTest/java/OpenBISScreeningMLTest.java
index 955e7725b603e48fdd40aa98c1a71717fa4f76d9..651a5074fc26b3cde6a0cd10ced5bd8985293930 100644
--- a/screening/sourceTest/java/OpenBISScreeningMLTest.java
+++ b/screening/sourceTest/java/OpenBISScreeningMLTest.java
@@ -346,7 +346,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                 {
                     one(openbis).loadFeaturesForPlateWells(gene, null);
                     FeatureVectorDatasetReference fds1 =
-                            new FeatureVectorDatasetReference("ds1", "", p1,
+                            new FeatureVectorDatasetReference("ds1", "MY-TYPE", "", p1,
                                     ExperimentIdentifier.createFromAugmentedCode("/S/P/E"),
                                     Geometry.createFromCartesianDimensions(3, 2), new Date(4711),
                                     null, null);
@@ -357,7 +357,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                                     new double[]
                                         { 1.5, 42 });
                     FeatureVectorDatasetReference fds2 =
-                        new FeatureVectorDatasetReference("ds2", "", p2,
+                        new FeatureVectorDatasetReference("ds2", "MY-TYPE", "", p2,
                                 ExperimentIdentifier.createFromAugmentedCode("/S/P/E"),
                                 Geometry.createFromCartesianDimensions(3, 2), new Date(4711),
                                 null, null);
@@ -387,10 +387,10 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
         assertEquals(Double.NaN, matrix[0][2][1][1]);
         assertEquals(3, matrix[0].length);
         assertEquals(
-                "[PLATE-2:B7, /S/PLATE-2, s-2, S, PLATE-2, 2, 7, /S/P/E, null, S, P, E, ds2]",
+                "[PLATE-2:B7, /S/PLATE-2, s-2, S, PLATE-2, 2, 7, /S/P/E, null, S, P, E, ds2, MY-TYPE]",
                 Arrays.asList(matrix[1][0][1]).toString());
         assertEquals(
-                "[PLATE-1:C4, /S/PLATE-1, s-1, S, PLATE-1, 3, 4, /S/P/E, null, S, P, E, ds1]",
+                "[PLATE-1:C4, /S/PLATE-1, s-1, S, PLATE-1, 3, 4, /S/P/E, null, S, P, E, ds1, MY-TYPE]",
                 Arrays.asList(matrix[1][1][0]).toString());
         assertEquals(2, matrix[1].length);
         assertEquals("F1", matrix[2][0][0][0]);
@@ -430,7 +430,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                     one(openbis).loadFeaturesForPlates(Arrays.asList(PLATE_1),
                             Arrays.asList("F1", "F2", "F3"));
                     FeatureVectorDatasetReference ref =
-                            new FeatureVectorDatasetReference("ds1", "", PLATE_1,
+                            new FeatureVectorDatasetReference("ds1", "MY-TYPE", "", PLATE_1,
                                     ExperimentIdentifier.createFromAugmentedCode("/S/P/E"),
                                     Geometry.createFromCartesianDimensions(3, 2), new Date(4711),
                                     null, null);
@@ -453,10 +453,10 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
         assertPlateFeatures("[42.5, 42.0]", matrix[0][1]);
         assertEquals(2, matrix[0].length);
         assertEquals(
-                "[PLATE-1:A3, /S/PLATE-1, null, S, PLATE-1, 1, 3, /S/P/E, null, S, P, E, ds1]",
+                "[PLATE-1:A3, /S/PLATE-1, null, S, PLATE-1, 1, 3, /S/P/E, null, S, P, E, ds1, MY-TYPE]",
                 Arrays.asList(matrix[1][0][0]).toString());
         assertEquals(
-                "[PLATE-1:B1, /S/PLATE-1, null, S, PLATE-1, 2, 1, /S/P/E, null, S, P, E, ds1]",
+                "[PLATE-1:B1, /S/PLATE-1, null, S, PLATE-1, 2, 1, /S/P/E, null, S, P, E, ds1, MY-TYPE]",
                 Arrays.asList(matrix[1][1][0]).toString());
         assertEquals(2, matrix[1].length);
         assertEquals("F1", matrix[2][0][0][0]);
@@ -631,8 +631,8 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                     Plate plate = new Plate("PLATE-1", "S", "s-1", eId1);
                     exactly(2).of(openbis).listRawImageDatasets(Arrays.asList(plate));
                     ImageDatasetReference ds1Ref =
-                            new ImageDatasetReference("ds1", "", plate, eId1, null, null, null,
-                                    null);
+                            new ImageDatasetReference("ds1", "MY-TYPE", "", plate, eId1, null,
+                                    null, null, null);
                     List<ImageDatasetReference> imageRefs = Arrays.asList(ds1Ref);
                     will(returnValue(imageRefs));