diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/xls/importer/helper/SampleImportHelper.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/xls/importer/helper/SampleImportHelper.java
index 79b7bfac0708676c37602cf2e436e6036b793742..98b3e9897529c3b0742ccd1ba7a5bcc2007b7671 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/xls/importer/helper/SampleImportHelper.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/xls/importer/helper/SampleImportHelper.java
@@ -276,53 +276,75 @@ public class SampleImportHelper extends BasicImportHelper
 
         // Start - Special case -> Remove parents / children & Special case -> Sample Variables
         Sample originSample = delayedExecutor.getSample(sampleId, fetchOptions);
-        Set<SampleIdentifier> parentIds = new HashSet<>();
-        if (parents != null && !parents.isEmpty())
+
+        if (parents == null || parents.isEmpty())
         {
-            for (String parent : parents.split("\n"))
+            // Skip empty values to avoid deleting by mistake
+        } else
+        {
+            Set<SampleIdentifier> parentIds = new HashSet<>();
+            if (parents.equals("--DELETE--") || parents.equals("__DELETE__"))
             {
-                if (parent.startsWith(VARIABLE_PREFIX))
-                {
-                    update.getParentIds().add(new IdentifierVariable(parent));
-                } else
+                // Delete missing = all
+            } else // Delete missing
+            {
+                for (String parent : parents.split("\n"))
                 {
-                    SampleIdentifier parentId = new SampleIdentifier(parent);
-                    update.getParentIds().add(parentId);
-                    parentIds.add(parentId);
+                    if (parent.startsWith(VARIABLE_PREFIX))
+                    {
+                        update.getParentIds().add(new IdentifierVariable(parent));
+                    } else
+                    {
+                        SampleIdentifier parentId = new SampleIdentifier(parent);
+                        update.getParentIds().add(parentId);
+                        parentIds.add(parentId);
+                    }
                 }
             }
-        }
-        for (Sample parent : originSample.getParents())
-        {
-            if (!parentIds.contains(parent.getIdentifier()))
+
+            for (Sample parent : originSample.getParents())
             {
-                update.getParentIds().remove(parent.getIdentifier());
+                if (!parentIds.contains(parent.getIdentifier()))
+                {
+                    update.getParentIds().remove(parent.getIdentifier());
+                }
             }
         }
 
-        Set<SampleIdentifier> childrenIds = new HashSet<>();
-        if (children != null && !children.isEmpty())
+        if (children == null || children.isEmpty())
         {
-            for (String child : children.split("\n"))
+            // Skip empty values to avoid deleting by mistake
+        } else
+        {
+            Set<SampleIdentifier> childrenIds = new HashSet<>();
+            if (children.equals("--DELETE--") || children.equals("__DELETE__"))
             {
-                if (child.startsWith(VARIABLE_PREFIX))
-                {
-                    update.getChildIds().add(new IdentifierVariable(child));
-                } else
+                // Delete missing = all
+            } else // Delete missing
+            {
+                for (String child : children.split("\n"))
                 {
-                    SampleIdentifier childId = new SampleIdentifier(child);
-                    update.getChildIds().add(childId);
-                    childrenIds.add(childId);
+                    if (child.startsWith(VARIABLE_PREFIX))
+                    {
+                        update.getChildIds().add(new IdentifierVariable(child));
+                    } else
+                    {
+                        SampleIdentifier childId = new SampleIdentifier(child);
+                        update.getChildIds().add(childId);
+                        childrenIds.add(childId);
+                    }
                 }
             }
-        }
-        for (Sample child : originSample.getChildren())
-        {
-            if (!childrenIds.contains(child.getIdentifier()))
+
+            for (Sample child : originSample.getChildren())
             {
-                update.getChildIds().remove(child.getIdentifier());
+                if (!childrenIds.contains(child.getIdentifier()))
+                {
+                    update.getChildIds().remove(child.getIdentifier());
+                }
             }
         }
+
         // End - Special case -> Remove parents / children & Special case -> Sample Variables
 
         for (String key : header.keySet())