diff --git a/datastore_server/build/build.xml b/datastore_server/build/build.xml
index 3cfcb13002bc77612d96e6e71b8a3cad7594edb2..4de1d69a7b08be27f47a22fb5d58d3b1f73b5811 100644
--- a/datastore_server/build/build.xml
+++ b/datastore_server/build/build.xml
@@ -38,6 +38,9 @@
                 <include name="**/*.class" />
                 <include name="${build.info.filename}" />
             </fileset>
+            <fileset dir="${sources}">
+                <include name="**/*.xml" />
+            </fileset>
             <fileset dir="${nativeroot}">
 	  					  <include name="**/unix.so"/>
 		  			</fileset>
diff --git a/datastore_server/resource/dependency-structure.ddf b/datastore_server/resource/dependency-structure.ddf
index f05d29b35835b6677fd0e3a906b402563029606d..3062517985b18847c94ad5cb162839306ab54653 100644
--- a/datastore_server/resource/dependency-structure.ddf
+++ b/datastore_server/resource/dependency-structure.ddf
@@ -4,15 +4,31 @@
 #show allResults
 
 {root} = ch.systemsx.cisd
+{openbis} = ${root}.openbis
+{dss} = ${openbis}.dss
 {etlserver} = ${root}.etlserver
 
 ######################################################################
 # Check dependencies to openbis
 
-{openbis} = ${root}.openbis
 [etlserver] = ${etlserver}.*
-[private_openbis] = ${openbis}.* excluding ${openbis}.generic.shared.dto.* ${openbis}.generic.shared.IETLLIMSService
+[dss] = ${dss}.*
+[private_openbis] = ${openbis}.* excluding [dss] ${openbis}.generic.shared.*
+
+check sets [dss] [etlserver]
+
+check [dss] [etlserver] independentOf [private_openbis]
+
+######################################################################
+# Check dependencies of etlserver to dss
+
+[dss.shared] = ${dss}.generic.shared.*
+[private_dss] = ${dss}.* excluding [dss.shared] ${dss}.generic.DataStoreServer 
+
+check sets [dss.shared] [private_dss]
+
+layer l1 = [dss.shared]
+layer l2 = [etlserver] [private_dss]
 
-check sets [etlserver]
+check layeringOf l1 l2
 
-check [etlserver] independentOf [private_openbis]
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/BDSStorageProcessor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/BDSStorageProcessor.java
index 031f801a49098e7df404c33863d99afb3637163e..bc53c0c20923ccd96708894599d699e109477230 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/BDSStorageProcessor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/BDSStorageProcessor.java
@@ -70,6 +70,7 @@ import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.common.utilities.ClassUtils;
 import ch.systemsx.cisd.etlserver.HCSImageCheckList.FullLocation;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.PersonPE;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataStrategyStore.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataStrategyStore.java
index 378e1a76604c16218a330f8b56fdb476f7213922..72e90f178e4b23d4c19c7ef70bd9678713e6077e 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataStrategyStore.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataStrategyStore.java
@@ -28,6 +28,7 @@ import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.GroupPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.PersonPE;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractor.java
index fea627bdb96230e99a3f15b4f165766c8b77d753..41aec42f962eb1e984a95ea42f15adbdb7fd5218 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractor.java
@@ -26,6 +26,7 @@ import ch.rinn.restrictions.Private;
 import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
 import ch.systemsx.cisd.common.utilities.PropertyUtils;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * Default implementation which assumes that the information can be extracted from the file name.
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultStorageProcessor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultStorageProcessor.java
index 356a50764a1325aa3224bac780b2cb4d3e934cf6..0e57861d32629d922989890c135b5b37b58b679f 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultStorageProcessor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DefaultStorageProcessor.java
@@ -21,6 +21,7 @@ import java.util.Properties;
 
 import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
 import ch.systemsx.cisd.common.mail.IMailClient;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat;
 
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataSetInfoExtractor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataSetInfoExtractor.java
index bbabefb64ba74aebf75550b10d985021ff9dd0c6..0c4a2980e2425518a69f2d26cccd0ca8f5100c8b 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataSetInfoExtractor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataSetInfoExtractor.java
@@ -20,6 +20,7 @@ import java.io.File;
 
 import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * A role to extract {@link DataSetInformation} from an incoming data set. Implementations of this
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStoreStrategy.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStoreStrategy.java
index 1ecea806c76109a02b96ec7efb960ccc59bed18e..485e447864e6fc5203d48f11698993597dcf080b 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStoreStrategy.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStoreStrategy.java
@@ -18,6 +18,7 @@ package ch.systemsx.cisd.etlserver;
 
 import java.io.File;
 
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 
 /**
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStrategyStore.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStrategyStore.java
index c88817c6ecb1fcda056d2983039b18edb4f91454..9abb175b4dadf39698337a54c885b8052cbf10cc 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStrategyStore.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IDataStrategyStore.java
@@ -18,6 +18,8 @@ package ch.systemsx.cisd.etlserver;
 
 import java.io.File;
 
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
+
 /**
  * The main purpose of this interface is to return a <code>IDataStoreStrategy</code> for a given
  * <code>DataSetInformation</code>.
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IHCSImageFileExtractor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IHCSImageFileExtractor.java
index c412b147adda93ec44c6bd695010764f34794f8e..38655ca0d068f403040239c8330ff096af991a50 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IHCSImageFileExtractor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IHCSImageFileExtractor.java
@@ -19,6 +19,7 @@ package ch.systemsx.cisd.etlserver;
 import java.util.Properties;
 
 import ch.systemsx.cisd.bds.storage.IDirectory;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * This role is supposed to be implemented by classes that can extract HCS image files from an
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IProcessor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IProcessor.java
index 662d1a5ca491cc1148750af23f7aa0bc8c058584..20c837f8db30791bb39b43e2418e1e514ff472be 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IProcessor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IProcessor.java
@@ -18,6 +18,7 @@ package ch.systemsx.cisd.etlserver;
 
 import java.io.File;
 
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ProcessingInstructionDTO;
 import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat;
 
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IStorageProcessor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IStorageProcessor.java
index 8d8dc3c4292dd9922f22ab621247746ba99466ba..74771af803ee006b2d3eb0268183af19fbe57cfa 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IStorageProcessor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IStorageProcessor.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.util.Properties;
 
 import ch.systemsx.cisd.common.mail.IMailClient;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat;
 
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategy.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategy.java
index 98dc811072e94135b1799941f59fb45658a5dcf8..6aa128ffd5cbdb008c8ce878ca8c286ee64b9a8a 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategy.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategy.java
@@ -19,6 +19,7 @@ package ch.systemsx.cisd.etlserver;
 import java.io.File;
 
 import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.ExperimentIdentifier;
 import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.SampleIdentifier;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/NamedDataStrategy.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/NamedDataStrategy.java
index 2fb39810001a638d4bc60a5c0f088f57fdcd10b4..a84902895d923c67c27509f48d683f7ab333166a 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/NamedDataStrategy.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/NamedDataStrategy.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.util.regex.Pattern;
 
 import ch.systemsx.cisd.common.filesystem.FileUtilities;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 
 /**
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/StandardProcessor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/StandardProcessor.java
index 20e5411820545ed320dc8593cf02a350026c8676..9a9c3942381c5660b352eb08d35f5decd8c6429c 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/StandardProcessor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/StandardProcessor.java
@@ -29,6 +29,7 @@ import ch.systemsx.cisd.common.exceptions.StopException;
 import ch.systemsx.cisd.common.filesystem.PathPrefixPrepender;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ProcessingInstructionDTO;
 import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat;
 
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandler.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandler.java
index fabecc77da3f824e5f9c793dc2d05e047038e703..15f623a61826f982eac9686157cac39ab7e94f23 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandler.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandler.java
@@ -54,6 +54,7 @@ import ch.systemsx.cisd.common.utilities.BeanUtils;
 import ch.systemsx.cisd.common.utilities.ISelfTestable;
 import ch.systemsx.cisd.common.utilities.OSUtilities;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractor.java
index 6112d16c551c923c3aa080767c2877fa91dea037..397dae971bc6db6b8939cccfa55a87e1147a84cd 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractor.java
@@ -41,10 +41,10 @@ import ch.systemsx.cisd.common.exceptions.StopException;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.etlserver.ChannelSetHelper;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.HCSImageFileExtractionResult;
 import ch.systemsx.cisd.etlserver.IHCSImageFileAccepter;
 import ch.systemsx.cisd.etlserver.IHCSImageFileExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * A <code>IHCSImageFileExtractor</code> implementation suitable for <i>3V</i>.
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/AbstractDataSetInfoExtractorFor3V.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/AbstractDataSetInfoExtractorFor3V.java
index 2b04add8cbd239be38a0976abceeaad4d28d214a..8bedbf972d0e2a56d6dcf501bf8e1b65d6b28565 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/AbstractDataSetInfoExtractorFor3V.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/AbstractDataSetInfoExtractorFor3V.java
@@ -27,9 +27,9 @@ import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
 import ch.systemsx.cisd.common.utilities.PropertyUtils;
 import ch.systemsx.cisd.etlserver.AbstractDataSetInfoExtractor;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.DataSetNameEntitiesProvider;
 import ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * @author Franz-Josef Elmer
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisition.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisition.java
index 283b58a2195f48da37af668c695e355edbb66ccd..263aa5033db5643037e4fc991e1c830ff94ef88a 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisition.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisition.java
@@ -19,8 +19,8 @@ package ch.systemsx.cisd.etlserver.threev;
 import java.util.Properties;
 
 import ch.rinn.restrictions.Private;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * Implementation which assumes that the information can be extracted from the file name. Following
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysis.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysis.java
index 211c053e7248b3cfa4148be3bcabae5292001f57..a3e5d52eeee71c8f38f552cb1ea5ce7cd6b92e7c 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysis.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysis.java
@@ -19,8 +19,8 @@ package ch.systemsx.cisd.etlserver.threev;
 import java.util.Properties;
 
 import ch.rinn.restrictions.Private;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * Implementation which assumes that the information can be extracted from the file name. Following
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/HCSImageFileExtractor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/HCSImageFileExtractor.java
index c250dfaebfe2b435bd43974aefbf2b97a58c87a6..f918fa47b20c47727e2296955b1baae86014a312 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/HCSImageFileExtractor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/threev/HCSImageFileExtractor.java
@@ -35,10 +35,10 @@ import ch.systemsx.cisd.common.exceptions.StopException;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.etlserver.ChannelSetHelper;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.HCSImageFileExtractionResult;
 import ch.systemsx.cisd.etlserver.IHCSImageFileAccepter;
 import ch.systemsx.cisd.etlserver.IHCSImageFileExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * A <code>IHCSImageFileExtractor</code> implementation suitable for <i>3V</i>.
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java
index 212be42508b1cb97b2b80c4d3c0ccfb9c7b211b4..571e0ab210632c45d41f2f6cbd197c76cc5872ee 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java
@@ -25,8 +25,8 @@ import ch.systemsx.cisd.common.exceptions.UserFailureException;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.common.spring.HttpInvokerUtils;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.IETLLIMSService;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java
index c2d17a03dc0478983993288902e627e344264acf..1b4a499e3d29d5105b8a3e064f9de41de89f8a85 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java
@@ -17,7 +17,7 @@
 package ch.systemsx.cisd.openbis.dss.generic.shared;
 
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.IETLLIMSService;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetInformation.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
similarity index 97%
rename from datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetInformation.java
rename to datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
index 1713d9768c9ab72215dadcb33a9e733ebc3b5a32..0bb54f9483dd44911b050664c30b40413dde2522 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetInformation.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package ch.systemsx.cisd.etlserver;
+package ch.systemsx.cisd.openbis.dss.generic.shared.dto;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -59,8 +59,7 @@ public final class DataSetInformation implements Serializable
     private String instanceCode;
 
     /**
-     * The group code (set by the {@link IDataSetInfoExtractor} or as specified in the
-     * <code>service.properties</code> file).
+     * The group code.
      */
     private String groupCode;
 
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/BDSStorageProcessorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/BDSStorageProcessorTest.java
index 93fed0375228e5295e79a705ea7637efa25ced9a..c576e14fb499fa44909e9ef85646ef725c3a8206 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/BDSStorageProcessorTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/BDSStorageProcessorTest.java
@@ -63,6 +63,7 @@ import ch.systemsx.cisd.common.filesystem.QueueingPathRemoverService;
 import ch.systemsx.cisd.common.logging.BufferedAppender;
 import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.common.types.BooleanOrUnknown;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataTypePE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.GroupPE;
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DataStrategyStoreTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DataStrategyStoreTest.java
index 997f0b3a238c1a1e679577ab188de1e8e7194f19..4ed9c5eb240baa309b249ee4530e47105abd4224 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DataStrategyStoreTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DataStrategyStoreTest.java
@@ -33,6 +33,7 @@ import ch.systemsx.cisd.common.filesystem.AbstractFileSystemTestCase;
 import ch.systemsx.cisd.common.logging.BufferedAppender;
 import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.GroupPE;
 import ch.systemsx.cisd.openbis.generic.shared.dto.InvalidationPE;
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractorTest.java
index 985e19f131aef4a9c2af726c5facce5e6734af5d..4a2d40113b1329f468b1db278879bf131be85694 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractorTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/DefaultDataSetInfoExtractorTest.java
@@ -27,6 +27,7 @@ import java.util.Properties;
 import org.testng.annotations.Test;
 
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * Test cases for the {@link DefaultDataSetInfoExtractor}.
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/EncapsulatedLimsServiceTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/EncapsulatedLimsServiceTest.java
index 4503fa002d5f69ac8422f11b8d54f24787b055fb..1a8ee430be51cc66e1e61637916dda07311409ee 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/EncapsulatedLimsServiceTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/EncapsulatedLimsServiceTest.java
@@ -25,6 +25,7 @@ import org.testng.annotations.Test;
 import ch.systemsx.cisd.common.exceptions.InvalidSessionException;
 import ch.systemsx.cisd.openbis.dss.generic.server.EncapsulatedOpenBISService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.IETLLIMSService;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ExternalData;
 import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.SampleIdentifier;
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategyTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategyTest.java
index 2e6aa25956a8648444b0968795b09a025f051f4e..a8e37b9a00305b062f9740207bd91774c59febb0 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategyTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/IdentifiedDataStrategyTest.java
@@ -30,6 +30,7 @@ import org.testng.annotations.Test;
 
 import ch.systemsx.cisd.common.exceptions.EnvironmentFailureException;
 import ch.systemsx.cisd.common.filesystem.AbstractFileSystemTestCase;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.ExperimentIdentifier;
 import ch.systemsx.cisd.openbis.generic.shared.dto.types.DataSetTypeCode;
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/StandardProcessorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/StandardProcessorTest.java
index a1ff51e182efe634b61553a256ac9f1f86a3a7d9..70df5170d03229ded3366be88085cb40eeebf047 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/StandardProcessorTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/StandardProcessorTest.java
@@ -34,6 +34,7 @@ import org.testng.annotations.Test;
 import ch.systemsx.cisd.common.exceptions.ConfigurationFailureException;
 import ch.systemsx.cisd.common.filesystem.AbstractFileSystemTestCase;
 import ch.systemsx.cisd.common.filesystem.PathPrefixPrepender;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.dto.ProcessingInstructionDTO;
 import ch.systemsx.cisd.openbis.generic.shared.dto.StorageFormat;
 
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
index 514d84255d56b720007caab52d1059455a3fe8ce..53342e341f8da058e98145a0c9a513120429ffcc 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
@@ -57,6 +57,7 @@ import ch.systemsx.cisd.common.test.LogMonitoringAppender;
 import ch.systemsx.cisd.common.utilities.OSUtilities;
 import ch.systemsx.cisd.openbis.dss.generic.server.EncapsulatedOpenBISService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.IETLLIMSService;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataSetType;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DatabaseInstancePE;
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractorTest.java
index 1c017bbdf2ca5a6f6215fffe1be743c26faacd81..d49fa03a760e1f0531a7b1edfa05772cffb0d70d 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractorTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/imsb/HCSImageFileExtractorTest.java
@@ -40,8 +40,8 @@ import ch.systemsx.cisd.bds.storage.IFile;
 import ch.systemsx.cisd.bds.storage.filesystem.NodeFactory;
 import ch.systemsx.cisd.common.filesystem.AbstractFileSystemTestCase;
 import ch.systemsx.cisd.common.logging.BufferedAppender;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.IHCSImageFileAccepter;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * Test cases for the {@link HCSImageFileExtractor}.
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisitionTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisitionTest.java
index bea0c12945e5ba15e9d4e3ff0f9d00fc7747a294..eaf462a0521a550a6249204412f87df753ccc3cd 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisitionTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForDataAcquisitionTest.java
@@ -27,8 +27,8 @@ import org.testng.annotations.Test;
 
 import ch.systemsx.cisd.common.exceptions.ConfigurationFailureException;
 import ch.systemsx.cisd.etlserver.CodeExtractortTestCase;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.IDataSetInfoExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * @author Franz-Josef Elmer
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysisTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysisTest.java
index 46ae5ddb907b037d55327429eb1c5a31d9b1c22a..fa73363021436d2aa3ea9b6a6544b8fa8bbba392 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysisTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/threev/DataSetInfoExtractorForImageAnalysisTest.java
@@ -26,8 +26,8 @@ import org.testng.annotations.Test;
 
 import ch.systemsx.cisd.common.exceptions.ConfigurationFailureException;
 import ch.systemsx.cisd.etlserver.CodeExtractortTestCase;
-import ch.systemsx.cisd.etlserver.DataSetInformation;
 import ch.systemsx.cisd.etlserver.IDataSetInfoExtractor;
+import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
  * @author Franz-Josef Elmer