diff --git a/XmlSchemaClassGenerator/ModelBuilder.cs b/XmlSchemaClassGenerator/ModelBuilder.cs index 65fa0efe..5e54f86e 100644 --- a/XmlSchemaClassGenerator/ModelBuilder.cs +++ b/XmlSchemaClassGenerator/ModelBuilder.cs @@ -355,7 +355,8 @@ private TypeModel CreateTypeModel(XmlSchemaSimpleType simpleType, NamespaceModel if (simpleType.Content is XmlSchemaSimpleTypeRestriction typeRestriction) { var enumFacets = typeRestriction.Facets.OfType().ToList(); - var isEnum = (enumFacets.Count == typeRestriction.Facets.Count && enumFacets.Count != 0); + // If there's a pattern restriction mixed into the enumeration values, we'll generate a string to play it safe. + var isEnum = enumFacets.Count > 0 && !typeRestriction.Facets.OfType().Any(); if (isEnum) { // we got an enum