diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java
index 063ec2293c01b9ebadf8c0af9635c7c4be3eac83..6f525ebc2135da98e6850a04cbd9a9dbf018d976 100644
--- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java
+++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Material.java
@@ -32,12 +32,78 @@ public class Material extends MaterialIdentifier
 
     private Map<String, Material> materialProperties;
 
-    public Material(MaterialTypeIdentifier materialTypeIdentifier, String materialCode,
-            Map<String, String> properties, Map<String, Material> materialProperties)
+    private EntityRegistrationDetails registrationDetails;
+
+    public static final class MaterialInitializer
+    {
+        private MaterialTypeIdentifier materialTypeIdentifier;
+
+        private String materialCode;
+
+        private Map<String, String> properties;
+
+        private Map<String, Material> materialProperties;
+
+        private EntityRegistrationDetails registrationDetails;
+
+        public MaterialTypeIdentifier getMaterialTypeIdentifier()
+        {
+            return materialTypeIdentifier;
+        }
+
+        public void setMaterialTypeIdentifier(MaterialTypeIdentifier materialTypeIdentifier)
+        {
+            this.materialTypeIdentifier = materialTypeIdentifier;
+        }
+
+        public String getMaterialCode()
+        {
+            return materialCode;
+        }
+
+        public void setMaterialCode(String materialCode)
+        {
+            this.materialCode = materialCode;
+        }
+
+        public Map<String, String> getProperties()
+        {
+            return properties;
+        }
+
+        public void setProperties(Map<String, String> properties)
+        {
+            this.properties = properties;
+        }
+
+        public Map<String, Material> getMaterialProperties()
+        {
+            return materialProperties;
+        }
+
+        public void setMaterialProperties(Map<String, Material> materialProperties)
+        {
+            this.materialProperties = materialProperties;
+        }
+
+        public EntityRegistrationDetails getRegistrationDetails()
+        {
+            return registrationDetails;
+        }
+
+        public void setRegistrationDetails(EntityRegistrationDetails registrationDetails)
+        {
+            this.registrationDetails = registrationDetails;
+        }
+
+    }
+
+    public Material(MaterialInitializer initializer)
     {
-        super(materialTypeIdentifier, materialCode);
-        this.properties = new HashMap<String, String>(properties);
-        this.materialProperties = new HashMap<String, Material>(materialProperties);
+        super(initializer.getMaterialTypeIdentifier(), initializer.getMaterialCode());
+        this.properties = initializer.getProperties();
+        this.materialProperties = initializer.getMaterialProperties();
+        this.registrationDetails = initializer.getRegistrationDetails();
     }
 
     /**
@@ -53,6 +119,11 @@ public class Material extends MaterialIdentifier
         return Collections.unmodifiableMap(materialProperties);
     }
 
+    public EntityRegistrationDetails getRegistrationDetails()
+    {
+        return registrationDetails;
+    }
+
     //
     // JSON-RPC
     //
@@ -72,4 +143,8 @@ public class Material extends MaterialIdentifier
         this.materialProperties = materialProperties;
     }
 
+    private void setRegistrationDetails(EntityRegistrationDetails registrationDetails)
+    {
+        this.registrationDetails = registrationDetails;
+    }
 }
diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java
index 2d8d880e8702a44f178475fdc855b1ea8acc6bcb..bebebfcdd3889025121e12a24f0ff08b7f5186bc 100644
--- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java
+++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/MaterialTypeIdentifier.java
@@ -19,7 +19,7 @@ package ch.systemsx.cisd.openbis.generic.shared.api.v1.dto;
 import java.io.Serializable;
 
 /**
- * 
+ * duplicated from ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.MaterialTypeIdentifier
  *
  * @author jakubs
  */