diff --git a/src/xercesc/validators/schema/TraverseSchema.cpp b/src/xercesc/validators/schema/TraverseSchema.cpp
index 8e3be830a577e8b077af672008ab65293b3e2624..98c07a88e36fddfd7d26b3bc8471e6da45f79aaa 100644
--- a/src/xercesc/validators/schema/TraverseSchema.cpp
+++ b/src/xercesc/validators/schema/TraverseSchema.cpp
@@ -5359,6 +5359,8 @@ TraverseSchema::isSubstitutionGroupValid(const DOMElement* const elem,
                 return true;
         }
     }
+    else if(validator==0 && typeInfo==0) // no checking
+        return true;
 
     if (toEmit) {
         if (subsRestricted) {