diff --git a/DDCond/src/plugins/ConditionsRepositoryParser.cpp b/DDCond/src/plugins/ConditionsRepositoryParser.cpp
index cefca3880b3d99c0d1a2b7cd0894bf8bc26c5b9b..772b96ba00f2ca7cf9cdf8c7eba7fbaf3308be37 100644
--- a/DDCond/src/plugins/ConditionsRepositoryParser.cpp
+++ b/DDCond/src/plugins/ConditionsRepositoryParser.cpp
@@ -210,7 +210,7 @@ namespace DD4hep {
   template <> void Converter<iov_type>::operator()(xml_h element) const {
     xml_dim_t e   = element;
     string    nam = e.nameStr();
-    size_t    id  = e.id() > 0 ? e.id() : INT_MAX;
+    size_t    id  = e.id() >= 0 ? e.id() : INT_MAX;
     ConversionArg* arg  = _param<ConversionArg>();
     printout(s_parseLevel,"XMLConditions","++ Registering IOV type: [%d]: %s",int(id),nam.c_str());
     const IOVType* iov_type = arg->manager.registerIOVType(id,nam).second;