diff --git a/docs/blueprints/all/uml_requirements/all_domain_model.txt b/docs/blueprints/all/uml_requirements/all_domain_model.txt
index de1850b19332347adde3e136d573148cdc69c522..16a58d96d8b6788602770b4443c6b239feebd210 100644
--- a/docs/blueprints/all/uml_requirements/all_domain_model.txt
+++ b/docs/blueprints/all/uml_requirements/all_domain_model.txt
@@ -224,7 +224,7 @@ interface AllFlat {
 	month_str: String
 	location: String
 	location_group: String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
@@ -256,7 +256,7 @@ entity WhoFlat {
     cumulative_cases: String
     new_deaths: String
     cumulative_deaths: String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
@@ -292,7 +292,7 @@ entity EcdcFlat {
     country_territory_code:  String
     continent_exp:  String
     cumulative_number_for_14_days_of_covid19_cases_per_100000:  String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
@@ -337,7 +337,7 @@ entity RkiVaccinationFlat {
     indikation_medizinisch_voll: Integer
     indikation_pflegeheim_voll: Integer
     date_reported: String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
@@ -379,7 +379,7 @@ entity RkiCasesFlat {
     anzahl_genesen: String
     ist_erkrankungsbeginn: String
     altersgruppe2: String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
@@ -462,7 +462,7 @@ entity OwidFlat {
     hospital_beds_per_thousand:  String
     life_expectancy:  String
     human_development_index:  String
-	{classifier} import_file()
+	{classifier} import_file_flat()
 	{classifier} get_years(): Integer[]
 	{classifier} get_days(): Date[]
 	{classifier} get_days_for_year(year: Integer): Date[]
diff --git a/docs/blueprints/all/uml_requirements/application_use_cases.png b/docs/blueprints/all/uml_requirements/application_use_cases.png
new file mode 100644
index 0000000000000000000000000000000000000000..2e9a084425bb45890c78a5af1da8ca53d8281de5
Binary files /dev/null and b/docs/blueprints/all/uml_requirements/application_use_cases.png differ
diff --git a/docs/blueprints/all/uml_requirements/application_use_cases.txt b/docs/blueprints/all/uml_requirements/application_use_cases.txt
index 3d622c370bdfae101f4d4b7858ce0a693bbb2440..abf8c99b932582abbee80b1124b434e95df58ae3 100644
--- a/docs/blueprints/all/uml_requirements/application_use_cases.txt
+++ b/docs/blueprints/all/uml_requirements/application_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.all.all_views_frontend {
+package covid19.blueprints.all.all_views_task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.all.all_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/app_application/uml_requirements/application_use_cases.png b/docs/blueprints/app_application/uml_requirements/application_use_cases.png
new file mode 100644
index 0000000000000000000000000000000000000000..04391f3c144b2eb0a71ec2f71590069c7ca03ae3
Binary files /dev/null and b/docs/blueprints/app_application/uml_requirements/application_use_cases.png differ
diff --git a/docs/blueprints/app_application/uml_requirements/application_use_cases.txt b/docs/blueprints/app_application/uml_requirements/application_use_cases.txt
index 1e29b31bc306885f67d3002fb2e39069107d5712..1110269614c9af14a144418b8a3a634df47559ce 100644
--- a/docs/blueprints/app_application/uml_requirements/application_use_cases.txt
+++ b/docs/blueprints/app_application/uml_requirements/application_use_cases.txt
@@ -12,10 +12,20 @@ package covid19.blueprints.app_user {
 	ou <|-- du
 }
 left to right direction
-package application_views_frontend {
-  usecase url_home as UC1
-  usecase url_root as UC2
+package covid19.blueprints.app_application.application_views_task {
+	usecase dump_database as UC50
+	usecase reimport_database as UC51
+	usecase drop_database as UC52
+	usecase create_database as UC53
+}
+package covid19.blueprints.app_application.application_views_frontend {
+	usecase page_root as UC1
+	usecase page_home as UC2
 }
 vu --> UC1
 vu --> UC2
+su --> UC50
+su --> UC51
+su --> UC52
+su --> UC53
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.png b/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.png
new file mode 100644
index 0000000000000000000000000000000000000000..9b600f960c67c9c99c30cc915233d947d498ae0f
Binary files /dev/null and b/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.png differ
diff --git a/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.txt b/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3515d05a0ba1e5996c16d0e1a3a758f9aff758e7
--- /dev/null
+++ b/docs/blueprints/ecdc/uml_requirements/ecdc_domain_model_import.txt
@@ -0,0 +1,123 @@
+@startuml
+
+interface AllImportFull {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+}
+
+interface AllImportIncrement {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface DataImport {
+    datum_reported: Date
+	location: String
+	location_group: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+entity EcdcImport {
+    id: Integer
+	date_rep:  String
+    date_rep_day:  String
+    date_rep_month:  String
+    date_rep_year:  String
+    cases:  String
+    deaths:  String
+    pop_data_2019:  String
+    countries_and_territories:  String
+    geo_id:  String
+    country_territory_code:  String
+    continent_exp:  String
+    cumulative_number_for_14_days_of_covid19_cases_per_100000:  String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface AllFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): AllFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): AllFlat[]
+}
+
+entity EcdcFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	date_rep:  String
+    date_rep_day:  String
+    date_rep_month:  String
+    date_rep_year:  String
+    cases:  String
+    deaths:  String
+    pop_data_2019:  String
+    countries_and_territories:  String
+    geo_id:  String
+    country_territory_code:  String
+    continent_exp:  String
+    cumulative_number_for_14_days_of_covid19_cases_per_100000:  String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): EcdcFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): EcdcFlat[]
+}
+
+AllImportFull <|-- DataImport
+AllImportIncrement <|-- DataImport
+DataImport <|-- AllFlat
+DataImport <|-- EcdcImport
+AllFlat <|-- EcdcFlat
+EcdcImport <|-- EcdcFlat
+@enduml
diff --git a/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.png b/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.png
index bb10ec6b464a32c53c8ed4567981d8ca8dc8d3d2..b8a9580c51b706b557fd24828554db37fe9282b5 100644
Binary files a/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.png and b/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.png differ
diff --git a/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.txt b/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.txt
index 7d11e614fd90ce4b82e85a241b43c377c44c454f..a4428512fff3f404650c65bd1d54ab3763eaaff6 100644
--- a/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.txt
+++ b/docs/blueprints/ecdc/uml_requirements/ecdc_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.ecdc.ecdc_views_frontend {
+package covid19.blueprints.ecdc.ecdc_views_task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.ecdc.ecdc_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/owid/uml_requirements/owid_domain_model_import.txt b/docs/blueprints/owid/uml_requirements/owid_domain_model_import.txt
new file mode 100644
index 0000000000000000000000000000000000000000..518c4687480af6e36c50233366c6cb3bf5392e3b
--- /dev/null
+++ b/docs/blueprints/owid/uml_requirements/owid_domain_model_import.txt
@@ -0,0 +1,217 @@
+@startuml
+
+interface AllImportFull {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+}
+
+interface AllImportIncrement {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface DataImport {
+    datum_reported: Date
+	location: String
+	location_group: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+entity OwidImport {
+    id: Integer
+	iso_code:  String
+    continent:  String
+    location:  String
+    date:  String
+    total_cases:  String
+    new_cases:  String
+    new_cases_smoothed:  String
+    total_deaths:  String
+    new_deaths:  String
+    new_deaths_smoothed:  String
+    total_cases_per_million:  String
+    new_cases_per_million:  String
+    new_cases_smoothed_per_million:  String
+    total_deaths_per_million:  String
+    new_deaths_per_million:  String
+    new_deaths_smoothed_per_million:  String
+    reproduction_rate:  String
+    icu_patients:  String
+    icu_patients_per_million:  String
+    hosp_patients:  String
+    hosp_patients_per_million:  String
+    weekly_icu_admissions:  String
+    weekly_icu_admissions_per_million:  String
+    weekly_hosp_admissions:  String
+    weekly_hosp_admissions_per_million:  String
+    new_tests:  String
+    total_tests:  String
+    total_tests_per_thousand:  String
+    new_tests_per_thousand:  String
+    new_tests_smoothed:  String
+    new_tests_smoothed_per_thousand:  String
+    positive_rate:  String
+    tests_per_case:  String
+    tests_units:  String
+    total_vaccinations:  String
+    people_vaccinated:  String
+    people_fully_vaccinated:  String
+    new_vaccinations:  String
+    new_vaccinations_smoothed:  String
+    total_vaccinations_per_hundred:  String
+    people_vaccinated_per_hundred:  String
+    people_fully_vaccinated_per_hundred:  String
+    new_vaccinations_smoothed_per_million:  String
+    stringency_index:  String
+    population:  String
+    population_density:  String
+    median_age:  String
+    aged_65_older:  String
+    aged_70_older:  String
+    gdp_per_capita:  String
+    extreme_poverty:  String
+    cardiovasc_death_rate:  String
+    diabetes_prevalence:  String
+    female_smokers:  String
+    male_smokers:  String
+    handwashing_facilities:  String
+    hospital_beds_per_thousand:  String
+    life_expectancy:  String
+    human_development_index:  String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface AllFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): AllFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): AllFlat[]
+}
+
+entity OwidFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	iso_code:  String
+    continent:  String
+    location:  String
+    date:  String
+    total_cases:  String
+    new_cases:  String
+    new_cases_smoothed:  String
+    total_deaths:  String
+    new_deaths:  String
+    new_deaths_smoothed:  String
+    total_cases_per_million:  String
+    new_cases_per_million:  String
+    new_cases_smoothed_per_million:  String
+    total_deaths_per_million:  String
+    new_deaths_per_million:  String
+    new_deaths_smoothed_per_million:  String
+    reproduction_rate:  String
+    icu_patients:  String
+    icu_patients_per_million:  String
+    hosp_patients:  String
+    hosp_patients_per_million:  String
+    weekly_icu_admissions:  String
+    weekly_icu_admissions_per_million:  String
+    weekly_hosp_admissions:  String
+    weekly_hosp_admissions_per_million:  String
+    new_tests:  String
+    total_tests:  String
+    total_tests_per_thousand:  String
+    new_tests_per_thousand:  String
+    new_tests_smoothed:  String
+    new_tests_smoothed_per_thousand:  String
+    positive_rate:  String
+    tests_per_case:  String
+    tests_units:  String
+    total_vaccinations:  String
+    people_vaccinated:  String
+    people_fully_vaccinated:  String
+    new_vaccinations:  String
+    new_vaccinations_smoothed:  String
+    total_vaccinations_per_hundred:  String
+    people_vaccinated_per_hundred:  String
+    people_fully_vaccinated_per_hundred:  String
+    new_vaccinations_smoothed_per_million:  String
+    stringency_index:  String
+    population:  String
+    population_density:  String
+    median_age:  String
+    aged_65_older:  String
+    aged_70_older:  String
+    gdp_per_capita:  String
+    extreme_poverty:  String
+    cardiovasc_death_rate:  String
+    diabetes_prevalence:  String
+    female_smokers:  String
+    male_smokers:  String
+    handwashing_facilities:  String
+    hospital_beds_per_thousand:  String
+    life_expectancy:  String
+    human_development_index:  String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): OwidFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): OwidFlat[]
+}
+
+AllImportFull <|-- DataImport
+AllImportIncrement <|-- DataImport
+DataImport <|-- AllFlat
+DataImport <|-- OwidImport
+AllFlat <|-- OwidFlat
+OwidImport <|-- OwidFlat
+@enduml
diff --git a/docs/blueprints/owid/uml_requirements/owid_use_cases.png b/docs/blueprints/owid/uml_requirements/owid_use_cases.png
index 88eaa7248bf845c06c2ecd465cca53188c4c0feb..bd1be64b57cfbe0d8da133521026c32a8a605a7e 100644
Binary files a/docs/blueprints/owid/uml_requirements/owid_use_cases.png and b/docs/blueprints/owid/uml_requirements/owid_use_cases.png differ
diff --git a/docs/blueprints/owid/uml_requirements/owid_use_cases.txt b/docs/blueprints/owid/uml_requirements/owid_use_cases.txt
index 0035830a81bb3aca0e1dd4d59161ffd935a7cb1a..df5c0c2445e8ecab05a39be47cb4cfd003d046bb 100644
--- a/docs/blueprints/owid/uml_requirements/owid_use_cases.txt
+++ b/docs/blueprints/owid/uml_requirements/owid_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.owid.owid_views_frontend {
+package covid19.blueprints.owid.owid_views_task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.owid.owid_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.png b/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.png
new file mode 100644
index 0000000000000000000000000000000000000000..b7c7b6d6f4005516e3ebed0bf856d9a1145167b0
Binary files /dev/null and b/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.png differ
diff --git a/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.txt b/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c9a42987db22412e2152ee798b9dae42854b51d0
--- /dev/null
+++ b/docs/blueprints/rki_cases/uml_requirements/rki_cases_domain_model_import.txt
@@ -0,0 +1,135 @@
+@startuml
+
+interface AllImportFull {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+}
+
+interface AllImportIncrement {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface DataImport {
+    datum_reported: Date
+	location: String
+	location_group: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+entity RkiCasesImport {
+	id: Integer
+    fid: String
+    id_bundesland: String
+    bundesland: String
+    landkreis: String
+    altersgruppe: String
+    geschlecht: String
+    anzahl_fall: String
+    anzahl_todesfall: String
+    meldedatum: String
+    id_landkreis: String
+    datenstand: String
+    neuer_fall: String
+    neuer_todesfall: String
+    ref_datum: String
+    neu_genesen: String
+    anzahl_genesen: String
+    ist_erkrankungsbeginn: String
+    altersgruppe2: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface AllFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): AllFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): AllFlat[]
+}
+
+entity RkiCasesFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+    fid: String
+    id_bundesland: String
+    bundesland: String
+    landkreis: String
+    altersgruppe: String
+    geschlecht: String
+    anzahl_fall: String
+    anzahl_todesfall: String
+    meldedatum: String
+    id_landkreis: String
+    datenstand: String
+    neuer_fall: String
+    neuer_todesfall: String
+    ref_datum: String
+    neu_genesen: String
+    anzahl_genesen: String
+    ist_erkrankungsbeginn: String
+    altersgruppe2: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): RkiCasesFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): RkiCasesFlat[]
+}
+
+AllImportFull <|-- DataImport
+AllImportIncrement <|-- DataImport
+DataImport <|-- AllFlat
+DataImport <|-- RkiCasesImport
+AllFlat <|-- RkiCasesFlat
+RkiCasesImport <|-- RkiCasesFlat
+@enduml
diff --git a/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.png b/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.png
index c4796d75d08cb21dd1acf8370f110c29028e7e41..c506f26f4bed2e0aba78c242285347d3e12c9ffe 100644
Binary files a/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.png and b/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.png differ
diff --git a/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.txt b/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.txt
index 0233d73b66a0eadf9b9ada0b3e823c974ea742a8..d02e64abc06038ad8254a0f802d5dabcfdbc34dd 100644
--- a/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.txt
+++ b/docs/blueprints/rki_cases/uml_requirements/rki_cases_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.rki_cases.rki_cases_views_frontend {
+package covid19.blueprints.rki_cases.rki_cases_views__task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.rki_cases.rki_cases_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.png b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.png
new file mode 100644
index 0000000000000000000000000000000000000000..4297290236c71487f139425026d40462aa4ce75e
Binary files /dev/null and b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.png differ
diff --git a/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.txt b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c9f916b76988b667a6c732bfc89fde0685df3e49
--- /dev/null
+++ b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_domain_model_import.txt
@@ -0,0 +1,140 @@
+@startuml
+
+interface AllImportFull {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+}
+
+interface AllImportIncrement {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface DataImport {
+    datum_reported: Date
+	location: String
+	location_group: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+entity RkiVaccinationImport {
+    id: Integer
+    dosen_kumulativ: Integer
+    dosen_differenz_zum_vortag: Integer
+    dosen_biontech_kumulativ: Integer
+    dosen_moderna_kumulativ: Integer
+    personen_erst_kumulativ: Integer
+    personen_voll_kumulativ: Integer
+    impf_quote_erst: Float
+    impf_quote_voll: Float
+    indikation_alter_dosen: Integer
+    indikation_beruf_dosen: Integer
+    indikation_medizinisch_dosen: Integer
+    indikation_pflegeheim_dosen: Integer
+    indikation_alter_erst: Integer
+    indikation_beruf_erst: Integer
+    indikation_medizinisch_erst: Integer
+    indikation_pflegeheim_erst: Integer
+    indikation_alter_voll: Integer
+    indikation_beruf_voll: Integer
+    indikation_medizinisch_voll: Integer
+    indikation_pflegeheim_voll: Integer
+    date_reported: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface AllFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): AllFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): AllFlat[]
+}
+
+entity RkiVaccinationFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+    dosen_kumulativ: Integer
+    dosen_differenz_zum_vortag: Integer
+    dosen_biontech_kumulativ: Integer
+    dosen_moderna_kumulativ: Integer
+    personen_erst_kumulativ: Integer
+    personen_voll_kumulativ: Integer
+    impf_quote_erst: Float
+    impf_quote_voll: Float
+    indikation_alter_dosen: Integer
+    indikation_beruf_dosen: Integer
+    indikation_medizinisch_dosen: Integer
+    indikation_pflegeheim_dosen: Integer
+    indikation_alter_erst: Integer
+    indikation_beruf_erst: Integer
+    indikation_medizinisch_erst: Integer
+    indikation_pflegeheim_erst: Integer
+    indikation_alter_voll: Integer
+    indikation_beruf_voll: Integer
+    indikation_medizinisch_voll: Integer
+    indikation_pflegeheim_voll: Integer
+    date_reported: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): RkiVaccinationFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): RkiVaccinationFlat[]
+}
+AllImportFull <|-- DataImport
+AllImportIncrement <|-- DataImport
+DataImport <|-- AllFlat
+DataImport <|-- RkiVaccinationImport
+AllFlat <|-- RkiVaccinationFlat
+RkiVaccinationImport <|-- RkiVaccinationFlat
+@enduml
diff --git a/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_use_cases.txt b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_use_cases.txt
index 70dead3fda9515c8d7bf98f88aea50eab34426b5..829d619e5107dadb50d6ac45a6af4512e02df851 100644
--- a/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_use_cases.txt
+++ b/docs/blueprints/rki_vaccination/uml_requirements/rki_vaccination_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.rki_vaccination.rki_vaccination_views_frontend {
+package covid19.blueprints.rki_vaccination.rki_vaccination_views_task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.who.who_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/blueprints/who/uml_requirements/who_domain_model_import.png b/docs/blueprints/who/uml_requirements/who_domain_model_import.png
new file mode 100644
index 0000000000000000000000000000000000000000..9411b62a0c28e977948f1a58a3800ef090d91216
Binary files /dev/null and b/docs/blueprints/who/uml_requirements/who_domain_model_import.png differ
diff --git a/docs/blueprints/who/uml_requirements/who_domain_model_import.txt b/docs/blueprints/who/uml_requirements/who_domain_model_import.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1f410b3d6c58b35916828e8dae8c65c11651fd1b
--- /dev/null
+++ b/docs/blueprints/who/uml_requirements/who_domain_model_import.txt
@@ -0,0 +1,115 @@
+@startuml
+
+interface AllImportFull {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+}
+
+interface AllImportIncrement {
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface DataImport {
+    datum_reported: Date
+	location: String
+	location_group: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+entity WhoImport {
+    id: Integer
+    date_reported: String
+    country_code: String
+    country: String
+    who_region: String
+    new_cases: String
+    cumulative_cases: String
+    new_deaths: String
+    cumulative_deaths: String
+	{classifier} download_file()
+	{classifier} import_file()
+	{classifier} full_update_dimension_tables()
+	{classifier} full_update_fact_table()
+	{classifier} full_update_star_schema()
+	{classifier} update_dimension_tables()
+	{classifier} update_fact_table()
+	{classifier} update_star_schema()
+}
+
+interface AllFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): AllFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): AllFlat[]
+}
+
+entity WhoFlat {
+    id: Integer
+    datum_reported: Date
+    year: Integer
+    month: Integer
+    day_of_month: Integer
+	day_of_year: Integer
+    day_of_week: Integer
+    week_of_year: Integer
+    year_week:  String
+    day_of_week_str: String
+	month_str: String
+	location: String
+	location_group: String
+    date_reported: String
+    country_code: String
+    country: String
+    who_region: String
+    new_cases: String
+    cumulative_cases: String
+    new_deaths: String
+    cumulative_deaths: String
+	{classifier} import_file_flat()
+	{classifier} get_years(): Integer[]
+	{classifier} get_days(): Date[]
+	{classifier} get_days_for_year(year: Integer): Date[]
+	{classifier} get_location_groups(): String[]
+	{classifier} get_locations_for_location_group(location_group: String): String[]
+	{classifier} get_data_for_location(location: String): WhoFlat[]
+	{classifier} get_data_for_day(datum_reported: Date): WhoFlat[]
+}
+
+AllImportFull <|-- DataImport
+AllImportIncrement <|-- DataImport
+DataImport <|-- AllFlat
+DataImport <|-- WhoImport
+AllFlat <|-- WhoFlat
+WhoImport <|-- WhoFlat
+@enduml
diff --git a/docs/blueprints/who/uml_requirements/who_use_cases.png b/docs/blueprints/who/uml_requirements/who_use_cases.png
index c9e11daababa14c9c26bbb70ce89c85d95e6fc05..aa35e0dcbf8d1b8f25724586c1756cd15e407e68 100644
Binary files a/docs/blueprints/who/uml_requirements/who_use_cases.png and b/docs/blueprints/who/uml_requirements/who_use_cases.png differ
diff --git a/docs/blueprints/who/uml_requirements/who_use_cases.txt b/docs/blueprints/who/uml_requirements/who_use_cases.txt
index 65414aac81ed5cf3a471697a5171da4cb06ef9a8..aefafe9e2bb0a9fcb5efdfbdc60899013de55bee 100644
--- a/docs/blueprints/who/uml_requirements/who_use_cases.txt
+++ b/docs/blueprints/who/uml_requirements/who_use_cases.txt
@@ -12,7 +12,7 @@ package covid19.blueprints.app_user {
 	au <|-- du
 }
 left to right direction
-package covid19.blueprints.who.who_views_frontend {
+package covid19.blueprints.who.who_views_task {
 	usecase download_file as UC1
 	usecase import_file as UC2
 	usecase full_update_dimension_tables as UC6
@@ -30,4 +30,24 @@ au --> UC5
 au --> UC6
 au --> UC7
 au --> UC8
+package covid19.blueprints.who.who_views_frontend {
+	usecase get_import as UC30
+	usecase get_flat as UC31
+	usecase get_years as UC40
+	usecase get_days as UC41
+	usecase get_days_for_year as UC42
+	usecase get_location_groups as UC43
+	usecase get_locations_for_location_group as UC44
+	usecase get_data_for_location as UC45
+	usecase get_data_for_day as UC46
+}
+vu --> UC30
+vu --> UC31
+vu --> UC40
+vu --> UC41
+vu --> UC42
+vu --> UC43
+vu --> UC44
+vu --> UC45
+vu --> UC46
 @enduml
\ No newline at end of file
diff --git a/docs/uml_plantuml/plantuml.1.2021.1.jar b/docs/jar_plantuml/plantuml.1.2021.1.jar
similarity index 100%
rename from docs/uml_plantuml/plantuml.1.2021.1.jar
rename to docs/jar_plantuml/plantuml.1.2021.1.jar