diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/identifier/SampleIdentifierFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/identifier/SampleIdentifierFactory.java
index a917607265cc3853cc790beb7ca491907ce409a5..0ca1f0edf2eceeebc3c71bf60ec8c799a8e0dd6b 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/identifier/SampleIdentifierFactory.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/identifier/SampleIdentifierFactory.java
@@ -23,6 +23,7 @@ import org.apache.commons.lang.StringUtils;
 
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSample;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
 import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.DatabaseInstanceIdentifier.Constants;
 
 /**
@@ -43,6 +44,11 @@ public final class SampleIdentifierFactory extends AbstractIdentifierFactory
         return new SampleIdentifierFactory(textToParse).createIdentifier(null);
     }
 
+    public static final SampleIdentifier parse(final Sample sample) throws UserFailureException
+    {
+        return new SampleIdentifierFactory(sample.getIdentifier()).createIdentifier(null);
+    }
+
     public static final SampleIdentifier parse(final NewSample sample) throws UserFailureException
     {
         SampleIdentifierFactory factory = new SampleIdentifierFactory(sample.getIdentifier());