diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/EntityTypeBO.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/EntityTypeBO.java
index 99afd2245682e08abc5e2e0c5e00ce4337f6d447..4f63068c47c2e4f7f72d26498570bd29233fa3f4 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/EntityTypeBO.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/business/bo/EntityTypeBO.java
@@ -82,7 +82,8 @@ public final class EntityTypeBO extends AbstractBusinessObject implements IEntit
         {
             ScriptPE script = getScriptDAO()
                     .tryFindByName(entityType.getValidationScript().getName());
-            if (script != null)
+
+            if (script != null && entityType.isEntityKind(script.getEntityKind()))
             {
                 return script;
             } else
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DataSetType.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DataSetType.java
index ee56ae512fe510cfb2f07472fab670ebd558d7b5..200766895567cea3c4f0b8901851d678ed57c6c9 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DataSetType.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DataSetType.java
@@ -97,4 +97,10 @@ public class DataSetType extends EntityType
         this.deletionDisallow = deletionDisallow;
     }
 
+    @Override
+    public boolean isEntityKind(EntityKind kind)
+    {
+        return kind == null || kind == EntityKind.DATA_SET;
+    }
+
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/EntityType.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/EntityType.java
index c12df20ed3dffb93ccf8daddf67694217d2f5d8e..2609af62355b0b464888f3696d52c1b558c7b725 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/EntityType.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/EntityType.java
@@ -68,4 +68,9 @@ abstract public class EntityType extends BasicEntityType
             });
         return etpts;
     }
+
+    /**
+     * return true if this entity type is of given kind, or if the kind is null
+     */
+    public abstract boolean isEntityKind(EntityKind kind);
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/ExperimentType.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/ExperimentType.java
index c68a1875a58182d251b6f678818a21e4af3d34d8..4d89353e1deccb47d616a08641617b3a731c6ebc 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/ExperimentType.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/ExperimentType.java
@@ -40,4 +40,10 @@ public class ExperimentType extends EntityType
     {
         this.experimentTypePropertyTypes = experimentTypePropertyTypes;
     }
+
+    @Override
+    public boolean isEntityKind(EntityKind kind)
+    {
+        return kind == null || kind == EntityKind.EXPERIMENT;
+    }
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/MaterialType.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/MaterialType.java
index 8b35fafe8d05242d1fae9f5e0c38f53c7d693a0b..5b25f8389e675cf9f44023b1802ddae51f5a5eba 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/MaterialType.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/MaterialType.java
@@ -53,4 +53,10 @@ public class MaterialType extends EntityType
         this.materialTypePropertyTypes = materialTypePropertyTypes;
     }
 
+    @Override
+    public boolean isEntityKind(EntityKind kind)
+    {
+        return kind == null || kind == EntityKind.MATERIAL;
+    }
+
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/SampleType.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/SampleType.java
index a87cf3e25766d137735995f5a87894edc074d054..414df51e5acebc1fbf3c12047929a0337958300c 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/SampleType.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/SampleType.java
@@ -260,4 +260,10 @@ public final class SampleType extends EntityType implements Serializable
                 allPropertyTypes));
     }
 
+    @Override
+    public boolean isEntityKind(EntityKind kind)
+    {
+        return kind == null || kind == EntityKind.SAMPLE;
+    }
+
 }