diff --git a/alfa-xdomea/src/main/java/de/ozgcloud/alfa/export/BehoerdenschluesselPropertiesValidator.java b/alfa-xdomea/src/main/java/de/ozgcloud/alfa/export/BehoerdenschluesselPropertiesValidator.java
index c49e01a14477e99f1a8c72676a99a4416d96dd2b..54568a6f8c7c537f9da3053ef8a402ee6a9a65e0 100644
--- a/alfa-xdomea/src/main/java/de/ozgcloud/alfa/export/BehoerdenschluesselPropertiesValidator.java
+++ b/alfa-xdomea/src/main/java/de/ozgcloud/alfa/export/BehoerdenschluesselPropertiesValidator.java
@@ -1,5 +1,8 @@
 package de.ozgcloud.alfa.export;
 
+import java.util.Optional;
+import java.util.function.Supplier;
+
 import org.springframework.validation.Errors;
 import org.springframework.validation.Validator;
 
@@ -12,24 +15,33 @@ public class BehoerdenschluesselPropertiesValidator implements Validator {
 
 	@Override
 	public void validate(Object target, Errors errors) {
-		var props = getBehoerdenschluesselProperties((XdomeaProperties) target);
-		if (props.getBehoerdenschluessel().isEmpty()) {
-			return;
+		var properties = getBehoerdenschluesselProperties((XdomeaProperties) target);
+		if (properties.getBehoerdenschluessel().isPresent()) {
+			validateProperties(properties, errors);
 		}
+	}
+
+	BehoerdenschluesselProperties getBehoerdenschluesselProperties(XdomeaProperties xdomeaProperties) {
+		return new BehoerdenschluesselProperties(xdomeaProperties);
+	}
+
+	private void validateProperties(BehoerdenschluesselProperties props, Errors errors) {
 		try {
-			if (props.getBehoerdenschluesselUri().isEmpty()) {
-				errors.rejectValue("behoerdenschluesselUri", "ozgcloud.xdomea.behoerdenschluessel-uri.empty", "behoerdenschluessel-uri must be set");
-			}
-			if (props.getBehoerdenschluesselVersion().isEmpty()) {
-				errors.rejectValue("behoerdenschluesselVersion", "ozgcloud.xdomea.behoerdenschluessel-version.empty",
-						"behoerdenschluessel-version must be set");
-			}
+			validateNotEmpty(props, errors);
 		} catch (AmbiguousCodelistePatternException e) {
 			errors.reject("ozgcloud.xdomea.codeliste.pattern.ambiguous", e.getMessage());
 		}
 	}
 
-	BehoerdenschluesselProperties getBehoerdenschluesselProperties(XdomeaProperties xdomeaProperties) {
-		return new BehoerdenschluesselProperties(xdomeaProperties);
+	private void validateNotEmpty(BehoerdenschluesselProperties props, Errors errors) {
+		validateNotEmpty(props::getBehoerdenschluesselUri, "behoerdenschluesselUri", "behoerdenschluessel-uri", errors);
+		validateNotEmpty(props::getBehoerdenschluesselVersion, "behoerdenschluesselVersion", "behoerdenschluessel-version", errors);
+	}
+
+	private <T> void validateNotEmpty(Supplier<Optional<T>> propertyAccessor, String fieldName, String propertyName, Errors errors) {
+		var propertyValue = propertyAccessor.get();
+		if (propertyValue.isEmpty()) {
+			errors.rejectValue(fieldName, String.format("ozgcloud.xdomea.%s.empty", propertyName), String.format("%s must be set", propertyName));
+		}
 	}
 }