Repository: urlaubsverwaltung/urlaubsverwaltung
Pull request #4959 (2024-10-25 19:02:06)

public holidays: use public holidays from jollyday and not the custom…
… made xml files

... for that we needed to add christmas and new years eve directly.

<!--

Thanks for contributing to the Urlaubsverwaltung.
Please review the following notes before submitting you pull request.

Please look for other issues or pull requests which already work on this topic. Is somebody already on it? Do you need to synchronize?

# Security Vulnerabilities

🛑 STOP! 🛑 If your contribution fixes a security vulnerability, please do not submit it.
Instead, please open a report of a security vulnerability via
[Report a security vulnerability](https://github.com/urlaubsverwaltung/urlaubsverwaltung/security/advisories/new)


# Describing Your Changes

If, having reviewed the notes above, you're ready to submit your pull request, please
provide a brief description of the proposed changes.

If they:
 🐞 fix a bug, please describe the broken behaviour and how the changes fix it.
    Please label with 'type: bug' and 'status: new'
    
 🎁 make an enhancement, please describe the new functionality and why you believe it's useful.
    Please label with 'type: enhancement' and 'status: new'
 
If your pull request relates to any existing issues,
please reference them by using the issue number prefixed with #.

-->


sonarcloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [100.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarCloud](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959)


sonarcloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [100.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarCloud](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959)


sonarcloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [100.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarQube Cloud](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959)


sonarcloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [100.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarQube Cloud](https://sonarcloud.io/dashboard?id=urlaubsverwaltung_urlaubsverwaltung&pullRequest=4959)



Patch:
diff --git a/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfiguration.java b/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfiguration.java
index b7679c40b..50f741c60 100644
--- a/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfiguration.java
+++ b/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfiguration.java
@@ -5,10 +5,11 @@ import de.focus_shift.jollyday.core.ManagerParameters;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
-import java.net.URL;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.function.Function;
+
+import static java.util.stream.Collectors.toMap;
 
 @Configuration
 class PublicHolidayConfiguration {
@@ -17,12 +18,8 @@ class PublicHolidayConfiguration {
 
     @Bean
     Map<String, HolidayManager> holidayManagerMap() {
-        final Map<String, HolidayManager> countryMap = new HashMap<>();
-        COUNTRIES.forEach(country -> {
-            final ClassLoader cl = Thread.currentThread().getContextClassLoader();
-            final URL url = cl.getResource("Holidays_" + country + ".xml");
-            countryMap.put(country, HolidayManager.getInstance(ManagerParameters.create(url)));
-        });
-        return countryMap;
+        return COUNTRIES.stream()
+            .map(country -> HolidayManager.getInstance(ManagerParameters.create(country)))
+            .collect(toMap(holidayManager -> holidayManager.getManagerParameter().getDisplayName(), Function.identity()));
     }
 }
diff --git a/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImpl.java b/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImpl.java
index 9016447bc..1f12380ee 100644
--- a/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImpl.java
+++ b/src/main/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImpl.java
@@ -5,18 +5,21 @@ import de.focus_shift.jollyday.core.HolidayManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.i18n.LocaleContextHolder;
 import org.springframework.stereotype.Service;
+import org.synyx.urlaubsverwaltung.absence.DateRange;
 import org.synyx.urlaubsverwaltung.period.DayLength;
 import org.synyx.urlaubsverwaltung.settings.SettingsService;
 import org.synyx.urlaubsverwaltung.workingtime.FederalState;
 import org.synyx.urlaubsverwaltung.workingtime.WorkingTimeSettings;
 
 import java.time.LocalDate;
+import java.time.Month;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
 
+import static de.focus_shift.jollyday.core.HolidayType.PUBLIC_HOLIDAY;
 import static org.synyx.urlaubsverwaltung.period.DayLength.FULL;
 import static org.synyx.urlaubsverwaltung.period.DayLength.ZERO;
 import static org.synyx.urlaubsverwaltung.util.DateUtil.isChristmasEve;
@@ -36,6 +39,10 @@ public class PublicHolidaysServiceImpl implements PublicHolidaysService {
 
     @Override
     public boolean isPublicHoliday(LocalDate date, FederalState federalState) {
+        if (isChristmasEve(date) || isNewYearsEve(date)) {
+            return true;
+        }
+
         return getHolidayManager(federalState)
             .map(holidayManager -> holidayManager.isHoliday(date, federalState.getCodes()))
             .orElse(false);
@@ -80,9 +87,27 @@ public class PublicHolidaysServiceImpl implements PublicHolidaysService {
     }
 
     private Set<Holiday> getHolidays(final LocalDate from, final LocalDate to, FederalState federalState) {
-        return getHolidayManager(federalState)
-            .map(holidayManager -> holidayManager.getHolidays(from, to, federalState.getCodes()))
+
+        final Set<Holiday> holidays = getHolidayManager(federalState)
+            .map(holidayManager -> holidayManager.getHolidays(from, to, PUBLIC_HOLIDAY, federalState.getCodes()))
             .orElseGet(Set::of);
+
+        final DateRange requestRange = new DateRange(from, to);
+
+        int year = from.getYear();
+        while (year <= to.getYear()) {
+            final LocalDate christmas = LocalDate.of(year, Month.DECEMBER, 24);
+            if (requestRange.isOverlapping(new DateRange(christmas, christmas))) {
+                holidays.add(new Holiday(christmas, "CHRISTMAS_EVE", PUBLIC_HOLIDAY));
+            }
+            final LocalDate newYear = LocalDate.of(year, Month.DECEMBER, 31);
+            if (requestRange.isOverlapping(new DateRange(newYear, newYear))) {
+                holidays.add(new Holiday(newYear, "NEW_YEARS_EVE", PUBLIC_HOLIDAY));
+            }
+            year++;
+        }
+
+        return holidays;
     }
 
     private Optional<HolidayManager> getHolidayManager(FederalState federalState) {
diff --git a/src/main/resources/Holidays_at.xml b/src/main/resources/Holidays_at.xml
deleted file mode 100644
index e2ec741d7..000000000
--- a/src/main/resources/Holidays_at.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="at" description="Austria"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="OCTOBER" day="26" descriptionPropertiesKey="NATIONAL_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="ASCENSION_DAY" descriptionPropertiesKey="christian.ASCENSION_DAY"/>
-    <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-  </Holidays>
-
-  <SubConfigurations hierarchy="1" description="Burgenland">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="11" descriptionPropertiesKey="MARTINS_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="2" description="Kärnten">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="JOSEFS_DAY"/>
-      <Fixed month="OCTOBER" day="10" descriptionPropertiesKey="PLEBISCITE"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="3" description="Niederösterreich">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="15" descriptionPropertiesKey="LEOPOLD"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="4" description="Oberösterreich">
-    <Holidays>
-      <Fixed month="MAY" day="4" descriptionPropertiesKey="FLORIAN"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="5" description="Salzburg">
-    <Holidays>
-      <Fixed month="SEPTEMBER" day="24" descriptionPropertiesKey="RUPERT"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="6" description="Steiermark">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="JOSEFS_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="7" description="Tirol">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="JOSEFS_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="8" description="Vorarlberg">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="JOSEFS_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="9" description="Wien">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="15" descriptionPropertiesKey="LEOPOLD"/>
-    </Holidays>
-  </SubConfigurations>
-</Configuration>
diff --git a/src/main/resources/Holidays_be.xml b/src/main/resources/Holidays_be.xml
deleted file mode 100644
index be4f39623..000000000
--- a/src/main/resources/Holidays_be.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Configuration hierarchy="be" description="Belgium"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="JULY" day="21" descriptionPropertiesKey="NATIONAL_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="NOVEMBER" day="11" descriptionPropertiesKey="ARMISTICE"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="ASCENSION_DAY" descriptionPropertiesKey="christian.ASCENSION_DAY"/>
-    <ChristianHoliday type="PENTECOST" descriptionPropertiesKey="christian.PENTECOST"/>
-    <ChristianHoliday type="PENTECOST_MONDAY" descriptionPropertiesKey="christian.PENTECOST_MONDAY"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_ch.xml b/src/main/resources/Holidays_ch.xml
deleted file mode 100644
index fd7df70a7..000000000
--- a/src/main/resources/Holidays_ch.xml
+++ /dev/null
@@ -1,315 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="ch" description="Switzerland"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="AUGUST" day="1" descriptionPropertiesKey="NATIONAL_DAY"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="ASCENSION_DAY" descriptionPropertiesKey="christian.ASCENSION_DAY"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-  </Holidays>
-
-  <SubConfigurations hierarchy="ag" description="Aargau">
-    <Holidays>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ai" description="Appenzell Innerrhoden">
-    <Holidays>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ar" description="Appenzell Ausserrhoden">
-    <Holidays>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="be" description="Bern">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="bl" description="Basel-Landschaft">
-    <Holidays>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="bs" description="Basel-Stadt">
-    <Holidays>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="fr" description="Freiburg">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ge" description="Genf">
-    <Holidays>
-      <RelativeToWeekdayInMonth weekday="THURSDAY" when="AFTER" descriptionPropertiesKey="GENEVAN_FAST">
-        <FixedWeekday which="FIRST" weekday="SUNDAY" month="SEPTEMBER"/>
-      </RelativeToWeekdayInMonth>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="gl" description="Glarus">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="gr" description="Graubünden">
-    <Holidays>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ju" description="Jura">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="lu" description="Luzern">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ne" description="Neuenburg">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="nw" description="Nidwalden">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ow" description="Obwalden">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sg" description="St.Gallen">
-    <Holidays>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sh" description="Schaffhausen">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="so" description="Solothurn">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sz" description="Schwyz">
-    <Holidays>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="tg" description="Thurgau">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ti" description="Tessin">
-    <Holidays>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ur" description="Uri">
-    <Holidays>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="vd" description="Waadt">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <RelativeToWeekdayInMonth weekday="MONDAY" when="AFTER"
-                                descriptionPropertiesKey="FEDERAL_DAY_THANKSGIVING_MON">
-        <FixedWeekday which="THIRD" weekday="SUNDAY" month="SEPTEMBER"/>
-      </RelativeToWeekdayInMonth>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="vs" description="Wallis">
-    <Holidays>
-      <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="zg" description="Zug">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="zh" description="Zürich">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="ST_BERCHTHOLD"/>
-      <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-      <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-</Configuration>
diff --git a/src/main/resources/Holidays_de.xml b/src/main/resources/Holidays_de.xml
deleted file mode 100644
index 45c63c6b1..000000000
--- a/src/main/resources/Holidays_de.xml
+++ /dev/null
@@ -1,248 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="de" description="Germany"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="JUNE" day="17" validFrom="1954" validTo="1990" descriptionPropertiesKey="UNIFICATION"/>
-    <Fixed month="OCTOBER" day="3" validFrom="1990" descriptionPropertiesKey="UNIFICATION_GERMANY"/>
-    <Fixed month="OCTOBER" day="31" validFrom="2017" validTo="2017" descriptionPropertiesKey="REFORMATION_DAY"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="FIRST_CHRISTMAS_DAY"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="SECOND_CHRISTMAS_DAY"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-
-    <RelativeToFixed validFrom="1934" validTo="1938" descriptionPropertiesKey="REPENTANCE_PRAYER">
-      <Weekday>WEDNESDAY</Weekday>
-      <When>BEFORE</When>
-      <Date month="NOVEMBER" day="23"/>
-    </RelativeToFixed>
-    <RelativeToFixed validFrom="1990" validTo="1994" descriptionPropertiesKey="REPENTANCE_PRAYER">
-      <Weekday>WEDNESDAY</Weekday>
-      <When>BEFORE</When>
-      <Date month="NOVEMBER" day="23"/>
-    </RelativeToFixed>
-
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="ASCENSION_DAY" descriptionPropertiesKey="christian.ASCENSION_DAY"/>
-    <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-  </Holidays>
-
-  <SubConfigurations hierarchy="be" description="Berlin">
-    <Holidays>
-      <Fixed month="MARCH" day="8" descriptionPropertiesKey="INTERNATIONAL_WOMAN" validFrom="2019"/>
-      <Fixed month="MAY" day="8" descriptionPropertiesKey="LIBERATION" validFrom="2020" validTo="2020"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="bb" description="Brandenburg">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY"/>
-      <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-      <ChristianHoliday type="PENTECOST" descriptionPropertiesKey="christian.PENTECOST"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="bw" description="Baden-Württemberg">
-    <Holidays>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="by" description="Bavaria">
-    <Holidays>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-
-      <RelativeToFixed validFrom="1981" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-    <SubConfigurations hierarchy="mu" description="Munich">
-      <Holidays>
-        <Fixed day="15" month="AUGUST" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-    <SubConfigurations hierarchy="ag" description="Augsburg">
-      <Holidays>
-        <Fixed day="8" month="AUGUST" descriptionPropertiesKey="PEACE"/>
-        <Fixed day="15" month="AUGUST" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-    <SubConfigurations hierarchy="wu" description="Würzburg">
-      <Holidays>
-        <Fixed day="15" month="AUGUST" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-    <SubConfigurations hierarchy="re" description="Regensburg">
-      <Holidays>
-        <Fixed day="15" month="AUGUST" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-    <SubConfigurations hierarchy="in" description="Ingolstadt">
-      <Holidays>
-        <Fixed day="15" month="AUGUST" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="he" description="Hessen">
-    <Holidays>
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-      <ChristianHoliday type="PENTECOST" descriptionPropertiesKey="christian.PENTECOST"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="mv" description="Mecklenburg-Vorpommern">
-    <Holidays>
-      <Fixed month="MARCH" day="8" descriptionPropertiesKey="INTERNATIONAL_WOMAN" validFrom="2023"/>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="nw" description="North Rhine-Westphalia">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="rp" description="Rhineland-Palatinate">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sl" description="Saarland">
-    <Holidays>
-      <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-      <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sn" description="Saxony">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY"/>
-
-      <RelativeToFixed validFrom="1995" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="st" description="Saxony-Anhalt">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY"/>
-      <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="th" description="Thuringia">
-    <Holidays>
-      <Fixed month="SEPTEMBER" day="20" descriptionPropertiesKey="CHILDRENS_DAY" validFrom="2019"/>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sh" description="Schleswig-Holstein">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY" validFrom="2018"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="hh" description="Hamburg">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY" validFrom="2018"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="hb" description="Bremen">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY" validFrom="2018"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ni" description="Lower-Saxony">
-    <Holidays>
-      <Fixed month="OCTOBER" day="31" descriptionPropertiesKey="REFORMATION_DAY" validFrom="2018"/>
-
-      <RelativeToFixed validFrom="1945" validTo="1989" descriptionPropertiesKey="REPENTANCE_PRAYER">
-        <Weekday>WEDNESDAY</Weekday>
-        <When>BEFORE</When>
-        <Date month="NOVEMBER" day="23"/>
-      </RelativeToFixed>
-    </Holidays>
-  </SubConfigurations>
-</Configuration>
diff --git a/src/main/resources/Holidays_es.xml b/src/main/resources/Holidays_es.xml
deleted file mode 100644
index 34b111a37..000000000
--- a/src/main/resources/Holidays_es.xml
+++ /dev/null
@@ -1,300 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Configuration hierarchy="es" description="Spain"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-
-  <Holidays>
-    <Fixed month="JANUARY" day="1" validFrom="1967" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY">
-      <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-    </Fixed>
-    <Fixed month="OCTOBER" day="12" descriptionPropertiesKey="NATIONAL_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="DECEMBER" day="6" validFrom="1978" descriptionPropertiesKey="CONSTITUTION_DAY"/>
-    <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" validTo="2021" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="25" validFrom="2023" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-  </Holidays>
-
-  <Sources>
-    <Source>https://en.wikipedia.org/wiki/Public_holidays_in_Spain</Source>
-  </Sources>
-
-  <SubConfigurations hierarchy="an" description="Andalusia">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" validFrom="2023" validTo="2023" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="FEBRUARY" day="28" descriptionPropertiesKey="REGIONAL"/> <!--Day of Andalucía-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ar" description="Aragon">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" validFrom="2023" validTo="2023" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2014" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="APRIL" day="23" descriptionPropertiesKey="REGIONAL"> <!--Day of Aragón-->
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="as" description="Principality of Asturias">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" validFrom="2023" validTo="2023" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="SEPTEMBER" day="8" descriptionPropertiesKey="REGIONAL"/> <!--Day of Asturias-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="cn" description="Canary Islands">
-    <Holidays>
-      <Fixed month="MAY" day="30" descriptionPropertiesKey="REGIONAL"/> <!--Day of the Canary Islands-->
-      <Fixed month="JULY" day="25" validFrom="2017" validTo="2017" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="cb" description="Cantabria">
-    <Holidays>
-      <Fixed month="JULY" day="28" descriptionPropertiesKey="REGIONAL"/> <!--Day of the Cantabrian Institutions-->
-      <Fixed month="SEPTEMBER" day="15" descriptionPropertiesKey="APARECIDA"/>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="cl" description="Castile and León">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" validFrom="2023" validTo="2023" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2014" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="APRIL" day="23" validTo="2022" descriptionPropertiesKey="REGIONAL"/> <!--Castile and León Day-->
-      <Fixed month="APRIL" day="23" validFrom="2024" descriptionPropertiesKey="REGIONAL"/> <!--Castile and León Day-->
-      <Fixed month="JULY" day="25" validFrom="2017" validTo="2017" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="JULY" day="25" validFrom="2023" validTo="2023" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="cm" description="Castile-La Mancha">
-    <Holidays>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2015" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2020" validTo="2020" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MAY" day="31" descriptionPropertiesKey="REGIONAL"/> <!--Day of Castilla-La Mancha-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ct" description="Catalonia">
-    <Holidays>
-      <Fixed month="JUNE" day="24" descriptionPropertiesKey="ST_JOHN"/>
-      <Fixed month="SEPTEMBER" day="11" descriptionPropertiesKey="REGIONAL"/> <!--National Day of Catalonia-->
-      <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="BOXING_DAY"/>
-      <ChristianHoliday type="WHIT_MONDAY" validFrom="2022" validTo="2022"
-                        descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-
-    <SubConfigurations hierarchy="bcn" description="Barcelona">
-      <Holidays>
-        <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-      </Holidays>
-    </SubConfigurations>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ce" description="Ceuta">
-    <Holidays>
-      <Fixed month="SEPTEMBER" day="2" descriptionPropertiesKey="REGIONAL"/>
-      <IslamicHoliday type="ID_UL_ADHA" validFrom="2010" descriptionPropertiesKey="islamic.ID_UL_ADHA"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ex" description="Extremadura">
-    <Holidays>
-      <Fixed month="FEBRUARY" day="2" validFrom="2023" validTo="2023"
-             descriptionPropertiesKey="CARNIVAL"/> <!--Carnival Tuesday-->
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2014" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2017" validTo="2017" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2021" validTo="2021" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="SEPTEMBER" day="8" descriptionPropertiesKey="REGIONAL"/> <!--Day of Extremadura-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ga" description="Galicia">
-    <Holidays>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2014" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2018" validTo="2021" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MAY" day="17" descriptionPropertiesKey="GALICIAN_LITERATURE"/>
-      <Fixed month="JULY" day="25" validFrom="2017" validTo="2020" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="JULY" day="25" validFrom="2022" validTo="2027" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ib" description="Balearic Island">
-    <Holidays>
-      <Fixed month="MARCH" day="1" descriptionPropertiesKey="REGIONAL"/> <!--Day of the Balearic Islands-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ri" description="La Rioja">
-    <Holidays>
-      <Fixed month="JUNE" day="9" descriptionPropertiesKey="REGIONAL"/> <!--Day of La Rioja-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="md" description="Community of Madrid">
-    <Holidays>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2015" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2017" validTo="2017" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2021" validTo="2021" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2023" validTo="2023" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MAY" day="2" descriptionPropertiesKey="REGIONAL"><!--Rename to day of madrid-->
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="JULY" day="25" validFrom="2017" validTo="2017" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="JULY" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-
-    <SubConfigurations hierarchy="mad" description="Madrid city">
-      <Holidays>
-        <Fixed month="MAY" day="15" descriptionPropertiesKey="SAINT_ISIDORE"/>
-        <Fixed month="NOVEMBER" day="9" descriptionPropertiesKey="ALMUDENA_DAY"/>
-      </Holidays>
-    </SubConfigurations>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ml" description="Melilla">
-    <Holidays>
-      <IslamicHoliday type="ID_UL_ADHA" validFrom="2010" descriptionPropertiesKey="islamic.ID_UL_ADHA"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="mc" description="Region of Murcia">
-    <Holidays>
-      <Fixed month="JANUARY" day="2" validFrom="2023" validTo="2023" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="JUNE" day="9" descriptionPropertiesKey="REGIONAL"/> <!--Day of Murcia-->
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="nc" description="Chartered Community of Navarre">
-    <Holidays>
-      <Fixed month="DECEMBER" day="25" validFrom="2022" validTo="2022" descriptionPropertiesKey="CHRISTMAS">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="JULY" day="25" validFrom="2023" validTo="2023" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="pv" description="Basque Country">
-    <Holidays>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2016" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2018" validTo="2021" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="JULY" day="25" validFrom="2017" validTo="2017" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="JULY" day="25" validFrom="2019" validTo="2020" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="JULY" day="25" validFrom="2022" validTo="2027" descriptionPropertiesKey="SANTIAGO_APOSTOL"/>
-      <Fixed month="OCTOBER" day="25" validFrom="2011" descriptionPropertiesKey="NATIONAL_DAY"/>
-      <ChristianHoliday type="MAUNDY_THURSDAY" descriptionPropertiesKey="christian.MAUNDY_THURSDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="vc" description="Valencia Community">
-    <Holidays>
-      <Fixed month="MARCH" day="19" validFrom="2000" validTo="2016" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="MARCH" day="19" validFrom="2018" validTo="2022" descriptionPropertiesKey="ST_JOSEPH">
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="OCTOBER" day="9" descriptionPropertiesKey="REGIONAL"/> <!--Day of the Valencian Community-->
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-</Configuration>
diff --git a/src/main/resources/Holidays_gb.xml b/src/main/resources/Holidays_gb.xml
deleted file mode 100644
index 0fefb6277..000000000
--- a/src/main/resources/Holidays_gb.xml
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="gb" description="United Kingdom"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="BOXING_DAY">
-      <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-      <MovingCondition substitute="SUNDAY" with="NEXT" weekday="TUESDAY"/>
-    </Fixed>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS">
-      <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-      <MovingCondition substitute="SUNDAY" with="NEXT" weekday="TUESDAY"/>
-    </Fixed>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-
-    <!-- The 2020 bank holiday was moved from the 4th to the 8th of May -->
-    <Fixed month="MAY" day="8" validFrom="2020" validTo="2020" descriptionPropertiesKey="EARLY_MAY_BANK_HOLIDAY"/>
-    <!-- The 2022 spring bank holiday was moved from the 4th of May to the second of June -->
-    <Fixed month="JUNE" day="2" validFrom="2022" validTo="2022" descriptionPropertiesKey="SPRING_BANK_HOLIDAY"/>
-    <Fixed month="JUNE" day="3" validFrom="2022" validTo="2022" descriptionPropertiesKey="QUEENS_PLATINUM_JUBILEE"/>
-    <Fixed month="SEPTEMBER" day="19" validFrom="2022" validTo="2022" descriptionPropertiesKey="QUEENS_STATE_FUNERAL"/>
-    <Fixed month="MAY" day="8" validFrom="2023" validTo="2023" descriptionPropertiesKey="KINGS_CORONATION"/>
-
-    <FixedWeekday which="FIRST" weekday="MONDAY" month="MAY" validFrom="1900" validTo="2019"
-                  descriptionPropertiesKey="EARLY_MAY_BANK_HOLIDAY"/>
-    <FixedWeekday which="SECOND" weekday="FRIDAY" month="MAY" validFrom="2020" validTo="2020"
-                  descriptionPropertiesKey="EARLY_MAY_BANK_HOLIDAY"/>
-    <FixedWeekday which="FIRST" weekday="MONDAY" month="MAY" validFrom="2021"
-                  descriptionPropertiesKey="EARLY_MAY_BANK_HOLIDAY"/>
-
-    <FixedWeekday which="LAST" weekday="MONDAY" month="MAY" validTo="2021"
-                  descriptionPropertiesKey="SPRING_BANK_HOLIDAY"/>
-    <FixedWeekday which="LAST" weekday="MONDAY" month="MAY" validFrom="2023"
-                  descriptionPropertiesKey="SPRING_BANK_HOLIDAY"/>
-
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-  </Holidays>
-
-  <SubConfigurations hierarchy="al" description="Alderney">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="en" description="England">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <FixedWeekday which="LAST" weekday="MONDAY" month="AUGUST" descriptionPropertiesKey="SUMMER_BANK_HOLIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="gu" description="Guernsey">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="MAY" day="9" descriptionPropertiesKey="LIBERATION"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="im" description="Isle of Man">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="JULY" day="5" descriptionPropertiesKey="TYNWALD"/>
-      <FixedWeekday which="SECOND" weekday="FRIDAY" month="JUNE" descriptionPropertiesKey="TOURIST_TROPHY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="je" description="Jersey">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="MAY" day="9" descriptionPropertiesKey="LIBERATION"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="ni" description="Northern Ireland">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-      <Fixed month="MARCH" day="17" descriptionPropertiesKey="ST_PATRICK">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="JULY" day="12" descriptionPropertiesKey="BATTLE_BOYNE">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <FixedWeekday which="LAST" weekday="MONDAY" month="AUGUST" descriptionPropertiesKey="SUMMER_BANK_HOLIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="sc" description="Scotland">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="TUESDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="TUESDAY"/>
-      </Fixed>
-      <Fixed month="JANUARY" day="2" descriptionPropertiesKey="NEW_YEAR">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <Fixed month="NOVEMBER" day="30" descriptionPropertiesKey="ST_ANDREW"/>
-      <FixedWeekday which="FIRST" weekday="MONDAY" month="AUGUST" descriptionPropertiesKey="SUMMER_BANK_HOLIDAY"/>
-    </Holidays>
-  </SubConfigurations>
-
-  <SubConfigurations hierarchy="wa" description="Wales">
-    <Holidays>
-      <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR">
-        <MovingCondition substitute="SATURDAY" with="NEXT" weekday="MONDAY"/>
-        <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-      </Fixed>
-      <FixedWeekday which="LAST" weekday="MONDAY" month="AUGUST" descriptionPropertiesKey="SUMMER_BANK_HOLIDAY"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-</Configuration>
diff --git a/src/main/resources/Holidays_gr.xml b/src/main/resources/Holidays_gr.xml
deleted file mode 100644
index a97775572..000000000
--- a/src/main/resources/Holidays_gr.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="gr" description="Greece"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="THEOPHANY"/>
-    <Fixed month="JANUARY" day="30" descriptionPropertiesKey="THREE_HIERARCHS"/>
-    <Fixed month="MARCH" day="25" descriptionPropertiesKey="ANNUNCIATION"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="OCTOBER" day="28" descriptionPropertiesKey="OCHI"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER" chronology="JULIAN"/>
-    <ChristianHoliday type="CLEAN_MONDAY" descriptionPropertiesKey="christian.CLEAN_MONDAY" chronology="JULIAN"/>
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY" chronology="JULIAN"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY" chronology="JULIAN"/>
-    <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY" chronology="JULIAN"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_hr.xml b/src/main/resources/Holidays_hr.xml
deleted file mode 100644
index 4be1622d4..000000000
--- a/src/main/resources/Holidays_hr.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="hr" description="Croatia"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="MAY" day="30" descriptionPropertiesKey="NATIONAL_DAY" validFrom="2020"/>
-    <Fixed month="JUNE" day="22" descriptionPropertiesKey="ANTI_FASCIST"/>
-    <Fixed month="JUNE" day="25" descriptionPropertiesKey="STATEHOOD" validFrom="2002" validTo="2019"/>
-    <Fixed month="AUGUST" day="5" descriptionPropertiesKey="VICTORY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_MARY"/>
-    <Fixed month="OCTOBER" day="8" descriptionPropertiesKey="INDEPENDENCE_DAY" validFrom="2002" validTo="2019"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="NOVEMBER" day="18" descriptionPropertiesKey="REMEMBRANCE" validFrom="2020"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_it.xml b/src/main/resources/Holidays_it.xml
deleted file mode 100644
index a4bc161f6..000000000
--- a/src/main/resources/Holidays_it.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="it" description="Italy"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" validFrom="1967" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    <Fixed month="APRIL" day="25" descriptionPropertiesKey="LIBERATION"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="JUNE" day="2" descriptionPropertiesKey="REPUBLIC_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" validFrom="1642" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-  </Holidays>
-
-  <SubConfigurations hierarchy="32" description="Südtirol">
-    <Holidays>
-      <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-    </Holidays>
-  </SubConfigurations>
-</Configuration>
diff --git a/src/main/resources/Holidays_lt.xml b/src/main/resources/Holidays_lt.xml
deleted file mode 100644
index e1e1fa76d..000000000
--- a/src/main/resources/Holidays_lt.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Configuration hierarchy="lt" description="Lithuania"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="FEBRUARY" day="16" descriptionPropertiesKey="UNIFICATION"/>
-    <Fixed month="MARCH" day="11" descriptionPropertiesKey="INDEPENDENCE_DAY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="JUNE" day="24" descriptionPropertiesKey="JOHANNIS_DAY"/>
-    <Fixed month="JULY" day="6" descriptionPropertiesKey="STATEHOOD"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="NOVEMBER" day="2" descriptionPropertiesKey="ALL_SOULS" validFrom="2020"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS_EVE"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_mt.xml b/src/main/resources/Holidays_mt.xml
deleted file mode 100644
index 7f211312c..000000000
--- a/src/main/resources/Holidays_mt.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="mt" description="Malta"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="FEBRUARY" day="10" descriptionPropertiesKey="SAINT_PAUL_SHIPWRECK"/>
-    <Fixed month="MARCH" day="19" descriptionPropertiesKey="ST_JOSEPH"/>
-    <Fixed month="MARCH" day="31" descriptionPropertiesKey="FREEDOM_DEMOCRACY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="JUNE" day="7" descriptionPropertiesKey="SETTE_GIUGNO"/>
-    <Fixed month="JUNE" day="29" descriptionPropertiesKey="ST_PETER_PAUL"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_MARY"/>
-    <Fixed month="SEPTEMBER" day="8" descriptionPropertiesKey="VICTORY"/>
-    <Fixed month="SEPTEMBER" day="21" descriptionPropertiesKey="INDEPENDENCE_DAY"/>
-    <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-    <Fixed month="DECEMBER" day="13" descriptionPropertiesKey="REPUBLIC_DAY"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_nl.xml b/src/main/resources/Holidays_nl.xml
deleted file mode 100644
index fb5227f50..000000000
--- a/src/main/resources/Holidays_nl.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Configuration hierarchy="nl" description="Netherlands"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" validFrom="1967" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="APRIL" day="27" validFrom="2014" descriptionPropertiesKey="KINGS_DAY">
-      <MovingCondition substitute="SUNDAY" with="PREVIOUS" weekday="SATURDAY"/>
-    </Fixed>
-    <Fixed month="AUGUST" day="31" validFrom="1885" validTo="1947" descriptionPropertiesKey="QUEENS_BIRTHDAY"/>
-    <Fixed month="APRIL" day="30" validFrom="1948" validTo="1979" descriptionPropertiesKey="QUEENS_BIRTHDAY">
-      <MovingCondition substitute="SUNDAY" with="NEXT" weekday="MONDAY"/>
-    </Fixed>
-    <Fixed month="APRIL" day="30" validFrom="1980" validTo="2013" descriptionPropertiesKey="QUEENS_BIRTHDAY">
-      <MovingCondition substitute="SUNDAY" with="PREVIOUS" weekday="SATURDAY"/>
-    </Fixed>
-    <Fixed month="MAY" day="5" validFrom="1945" validTo="1989" descriptionPropertiesKey="LIBERATION" every="FIVE_YEARS"/>
-    <Fixed month="MAY" day="5" validFrom="1990" descriptionPropertiesKey="LIBERATION"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" validFrom="1642" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="ASCENSION_DAY" descriptionPropertiesKey="christian.ASCENSION_DAY"/>
-    <ChristianHoliday type="PENTECOST" descriptionPropertiesKey="christian.PENTECOST"/>
-    <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
-  </Holidays>
-</Configuration>
diff --git a/src/main/resources/Holidays_pl.xml b/src/main/resources/Holidays_pl.xml
deleted file mode 100644
index 59ec08429..000000000
--- a/src/main/resources/Holidays_pl.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Configuration hierarchy="pl" description="Poland"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/>
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/>
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/>
-    <Fixed month="MAY" day="3" descriptionPropertiesKey="CONSTITUTION_DAY"/>
-    <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
-    <Fixed month="NOVEMBER" day="11" descriptionPropertiesKey="INDEPENDENCE_DAY"/>
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE" localizedType="OBSERVANCE"/>
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/>
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/>
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE" localizedType="OBSERVANCE"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
-    <ChristianHoliday type="PENTECOST" descriptionPropertiesKey="christian.PENTECOST"/>
-    <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-  </Holidays>
-</Configuration>


Test patch:
diff --git a/src/test/java/org/synyx/urlaubsverwaltung/application/application/CalculationServiceTest.java b/src/test/java/org/synyx/urlaubsverwaltung/application/application/CalculationServiceTest.java
index 23cdf2076..639c92011 100644
--- a/src/test/java/org/synyx/urlaubsverwaltung/application/application/CalculationServiceTest.java
+++ b/src/test/java/org/synyx/urlaubsverwaltung/application/application/CalculationServiceTest.java
@@ -1,7 +1,7 @@
 package org.synyx.urlaubsverwaltung.application.application;
 
+import de.focus_shift.jollyday.core.HolidayCalendar;
 import de.focus_shift.jollyday.core.HolidayManager;
-import de.focus_shift.jollyday.core.ManagerParameter;
 import de.focus_shift.jollyday.core.ManagerParameters;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -25,7 +25,6 @@ import org.synyx.urlaubsverwaltung.workingtime.WorkingTime;
 import org.synyx.urlaubsverwaltung.workingtime.WorkingTimeService;
 
 import java.math.BigDecimal;
-import java.net.URL;
 import java.time.LocalDate;
 import java.time.Year;
 import java.util.List;
@@ -1168,9 +1167,6 @@ class CalculationServiceTest {
     }
 
     private HolidayManager getHolidayManager() {
-        final ClassLoader cl = Thread.currentThread().getContextClassLoader();
-        final URL url = cl.getResource("Holidays_de.xml");
-        final ManagerParameter managerParameter = ManagerParameters.create(url);
-        return HolidayManager.getInstance(managerParameter);
+        return HolidayManager.getInstance(ManagerParameters.create(HolidayCalendar.GERMANY));
     }
 }
diff --git a/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfigurationTest.java b/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfigurationTest.java
new file mode 100644
index 000000000..0f903adb4
--- /dev/null
+++ b/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidayConfigurationTest.java
@@ -0,0 +1,19 @@
+package org.synyx.urlaubsverwaltung.publicholiday;
+
+import de.focus_shift.jollyday.core.HolidayManager;
+import org.junit.jupiter.api.Test;
+
+import java.util.Map;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+class PublicHolidayConfigurationTest {
+
+    @Test
+    void ensureThatHolidaysManagerMapContainsAllKeys() {
+        final Map<String, HolidayManager> holidayManagers = new PublicHolidayConfiguration().holidayManagerMap();
+        assertThat(holidayManagers)
+                .hasSize(13)
+                .containsKeys("de", "at", "ch", "gb", "gr", "mt", "it", "hr", "es", "nl", "lt", "be", "pl");
+    }
+}
diff --git a/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImplTest.java b/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImplTest.java
index 622ab4923..e77281536 100644
--- a/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImplTest.java
+++ b/src/test/java/org/synyx/urlaubsverwaltung/publicholiday/PublicHolidaysServiceImplTest.java
@@ -1,5 +1,6 @@
 package org.synyx.urlaubsverwaltung.publicholiday;
 
+import de.focus_shift.jollyday.core.HolidayCalendar;
 import de.focus_shift.jollyday.core.HolidayManager;
 import de.focus_shift.jollyday.core.ManagerParameters;
 import org.junit.jupiter.api.BeforeEach;
@@ -14,7 +15,6 @@ import org.synyx.urlaubsverwaltung.settings.Settings;
 import org.synyx.urlaubsverwaltung.settings.SettingsService;
 
 import java.math.BigDecimal;
-import java.net.URL;
 import java.time.LocalDate;
 import java.time.Month;
 import java.util.List;
@@ -26,6 +26,7 @@ import static java.math.BigDecimal.ZERO;
 import static java.time.LocalDate.of;
 import static java.time.Month.AUGUST;
 import static java.time.Month.DECEMBER;
+import static java.time.Month.JANUARY;
 import static java.time.Month.MAY;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.mockito.Mockito.when;
@@ -182,9 +183,33 @@ class PublicHolidaysServiceImplTest {
             .containsExactly(DayLength.NOON);
     }
 
+    @Test
+    void ensureGetPublicHolidaysReturnsChristmasForMultipleYears() {
+
+        when(settingsService.getSettings()).thenReturn(new Settings());
+
+        final List<PublicHoliday> publicHolidays = sut.getPublicHolidays(of(2020, JANUARY, 1), of(2023, DECEMBER, 31), GERMANY_BADEN_WUERTTEMBERG);
+
+        assertThat(publicHolidays).contains(
+            new PublicHoliday(LocalDate.of(2020, DECEMBER, 24), null, null),
+            new PublicHoliday(LocalDate.of(2021, DECEMBER, 24), null, null),
+            new PublicHoliday(LocalDate.of(2023, DECEMBER, 24), null, null));
+    }
+
+    @Test
+    void ensureGetPublicHolidaysReturnsNewYearsEveForMultipleYears() {
+
+        when(settingsService.getSettings()).thenReturn(new Settings());
+
+        final List<PublicHoliday> publicHolidays = sut.getPublicHolidays(of(2020, JANUARY, 1), of(2023, DECEMBER, 31), GERMANY_BADEN_WUERTTEMBERG);
+
+        assertThat(publicHolidays).contains(
+            new PublicHoliday(LocalDate.of(2020, DECEMBER, 31), null, null),
+            new PublicHoliday(LocalDate.of(2021, DECEMBER, 31), null, null),
+            new PublicHoliday(LocalDate.of(2023, DECEMBER, 31), null, null));
+    }
+
     private HolidayManager getHolidayManager() {
-        final ClassLoader cl = Thread.currentThread().getContextClassLoader();
-        final URL url = cl.getResource("Holidays_de.xml");
-        return HolidayManager.getInstance(ManagerParameters.create(url));
+        return HolidayManager.getInstance(ManagerParameters.create(HolidayCalendar.GERMANY));
     }
 }
diff --git a/src/test/java/org/synyx/urlaubsverwaltung/workingtime/WorkDaysCountServiceTest.java b/src/test/java/org/synyx/urlaubsverwaltung/workingtime/WorkDaysCountServiceTest.java
index de99bb52b..c3bfa6010 100644
--- a/src/test/java/org/synyx/urlaubsverwaltung/workingtime/WorkDaysCountServiceTest.java
+++ b/src/test/java/org/synyx/urlaubsverwaltung/workingtime/WorkDaysCountServiceTest.java
@@ -1,5 +1,6 @@
 package org.synyx.urlaubsverwaltung.workingtime;
 
+import de.focus_shift.jollyday.core.HolidayCalendar;
 import de.focus_shift.jollyday.core.HolidayManager;
 import de.focus_shift.jollyday.core.ManagerParameters;
 import org.junit.jupiter.api.BeforeEach;
@@ -14,7 +15,6 @@ import org.synyx.urlaubsverwaltung.settings.Settings;
 import org.synyx.urlaubsverwaltung.settings.SettingsService;
 
 import java.math.BigDecimal;
-import java.net.URL;
 import java.time.DayOfWeek;
 import java.time.LocalDate;
 import java.util.List;
@@ -417,9 +417,7 @@ class WorkDaysCountServiceTest {
 
 
     private HolidayManager getHolidayManager() {
-        final ClassLoader cl = Thread.currentThread().getContextClassLoader();
-        final URL url = cl.getResource("Holidays_de.xml");
-        return HolidayManager.getInstance(ManagerParameters.create(url));
+        return HolidayManager.getInstance(ManagerParameters.create(HolidayCalendar.GERMANY));
     }
 
     public static WorkingTime createWorkingTime(Person person, LocalDate validFrom, DayOfWeek... daysOfWeek) {
diff --git a/src/test/resources/Holidays_custom.xml b/src/test/resources/Holidays_custom.xml
deleted file mode 100644
index c6222d9a9..000000000
--- a/src/test/resources/Holidays_custom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration hierarchy="custom" description="custom"
-               xmlns="https://focus_shift.de/jollyday/schema/holiday"
-               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-               xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd">
-  <Holidays>
-    <Fixed month="JANUARY" day="1" descriptionPropertiesKey="NEW_YEAR"/> <!-- Neujahr -->
-    <Fixed month="JANUARY" day="6" descriptionPropertiesKey="EPIPHANY"/> <!-- Hl. 3 Koenige -->
-    <Fixed month="MAY" day="1" descriptionPropertiesKey="LABOUR_DAY"/> <!-- Tag der Arbeit -->
-    <Fixed month="OCTOBER" day="3" validFrom="1990"
-           descriptionPropertiesKey="UNIFICATION"/> <!-- Tag der dt. Einheit -->
-    <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/> <!-- Allerheiligen -->
-    <Fixed month="DECEMBER" day="25" descriptionPropertiesKey="CHRISTMAS"/> <!-- 1. Weihnachtstag -->
-    <Fixed month="DECEMBER" day="26" descriptionPropertiesKey="STEPHENS"/> <!-- 2. Weihnachtstag -->
-    <Fixed month="DECEMBER" day="24" descriptionPropertiesKey="CHRISTMAS_EVE"/>  <!--Heiligabend-->
-    <Fixed month="DECEMBER" day="31" descriptionPropertiesKey="NEW_YEARS_EVE"/>  <!--Silvester-->
-    <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
-    <ChristianHoliday type="EASTER" descriptionPropertiesKey="christian.EASTER"/>
-    <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/> <!-- Karfreitag -->
-    <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/> <!-- Ostermontag -->
-    <ChristianHoliday type="ASCENSION_DAY"
-                      descriptionPropertiesKey="christian.ASCENSION_DAY"/> <!-- Christi Himmelfahrt -->
-    <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/> <!-- Pfingstmontag -->
-  </Holidays>
-
-</Configuration>