From 91198dc5fd1d2ed501d8a5410dd04df4ee85b0e7 Mon Sep 17 00:00:00 2001
From: thomaswoehlke <thomas.woehlke@gmail.com>
Date: Mon, 10 May 2021 19:29:02 +0200
Subject: [PATCH] working on: 0.0.34 Release

---
 ...domain_model.txt => all_domain_model.puml} |   1 +
 ...el_impl.txt => all_domain_model_impl.puml} |   1 +
 ...mport.txt => all_domain_model_import.puml} |   1 +
 .../all/uml/all_domain_model_star_schema.puml | 432 ++++++++++++++++++
 .../all/uml/all_domain_model_star_schema.txt  | 201 --------
 .../{all_use_cases.txt => all_use_cases.puml} |   1 +
 ...cases_impl.txt => all_use_cases_impl.puml} |   1 -
 ..._model.txt => app_admin_domain_model.puml} |   0
 ...l.txt => app_admin_domain_model_impl.puml} |   0
 ....txt => app_application_domain_model.puml} |   0
 ...=> app_application_domain_model_impl.puml} |   0
 ...ses.txt => app_application_use_cases.puml} |   0
 ...xt => app_application_use_cases_impl.puml} |   0
 ...omain_model.txt => user_domain_model.puml} |   0
 ...l_impl.txt => user_domain_model_impl.puml} |   0
 ...user_use_cases.txt => user_use_cases.puml} |   0
 ...ases_impl.txt => user_use_cases_impl.puml} |   0
 ...omain_model.txt => ecdc_domain_model.puml} |   1 +
 ...l_impl.txt => ecdc_domain_model_impl.puml} |   1 +
 ...port.txt => ecdc_domain_model_import.puml} |   1 +
 ...xt => ecdc_domain_model_star_schmema.puml} |   1 +
 ...ecdc_use_cases.txt => ecdc_use_cases.puml} |   1 +
 ...ases_impl.txt => ecdc_use_cases_impl.puml} |   1 +
 ...omain_model.txt => owid_domain_model.puml} |   1 +
 ...l_impl.txt => owid_domain_model_impl.puml} |   2 +
 ...port.txt => owid_domain_model_import.puml} |   1 +
 ...txt => owid_domain_model_star_schema.puml} |   1 +
 ...owid_use_cases.txt => owid_use_cases.puml} |   2 +
 ...ases_impl.txt => owid_use_cases_impl.puml} |   0
 .../owid/use_cases__visual_data/.gitignore    |   1 +
 .../owid_use_cases_visual_data_1.png          | Bin
 .../owid_use_cases_visual_data_2.png          | Bin
 .../owid_use_cases_visual_data_3.png          | Bin
 .../owid_use_cases_visual_data_4.png          | Bin
 .../owid_use_cases_visual_data_5.png          | Bin
 ....txt => owid_use_cases_visual_data_1.puml} |   0
 ....txt => owid_use_cases_visual_data_2.puml} |   0
 ....txt => owid_use_cases_visual_data_3.puml} |   0
 ....txt => owid_use_cases_visual_data_4.puml} |   0
 ....txt => owid_use_cases_visual_data_5.puml} |   0
 ...schema.txt => rki_cases_domain_model.puml} |   1 +
 ...l.txt => rki_cases_domain_model_impl.puml} |   1 +
 ...txt => rki_cases_domain_model_import.puml} |   1 +
 ...> rki_cases_domain_model_star_schema.puml} |   2 +
 ...use_cases.txt => rki_cases_use_cases.puml} |   0
 ...impl.txt => rki_cases_use_cases_impl.puml} |   0
 ....txt => rki_vaccination_domain_model.puml} |   2 +
 ...=> rki_vaccination_domain_model_impl.puml} |   2 +
 ... rki_vaccination_domain_model_import.puml} |   1 +
 ...vaccination_domain_model_star_schema.puml} |   2 +
 ...ses.txt => rki_vaccination_use_cases.puml} |   2 +
 ...xt => rki_vaccination_use_cases_impl.puml} |   0
 ..._star_schema.txt => who_domain_model.puml} |   1 +
 ...el_impl.txt => who_domain_model_impl.puml} |   1 +
 ...mport.txt => who_domain_model_import.puml} |   2 +-
 ....txt => who_domain_model_star_schema.puml} |   1 +
 .../{who_use_cases.txt => who_use_cases.puml} |   1 +
 ...cases_impl.txt => who_use_cases_impl.puml} |   0
 58 files changed, 469 insertions(+), 203 deletions(-)
 rename docs/blueprints/all/uml/{all_domain_model.txt => all_domain_model.puml} (99%)
 rename docs/blueprints/all/uml/{all_domain_model_impl.txt => all_domain_model_impl.puml} (99%)
 rename docs/blueprints/all/uml/{all_domain_model_import.txt => all_domain_model_import.puml} (99%)
 create mode 100644 docs/blueprints/all/uml/all_domain_model_star_schema.puml
 delete mode 100644 docs/blueprints/all/uml/all_domain_model_star_schema.txt
 rename docs/blueprints/all/uml/{all_use_cases.txt => all_use_cases.puml} (98%)
 rename docs/blueprints/all/uml/{all_use_cases_impl.txt => all_use_cases_impl.puml} (99%)
 rename docs/blueprints/app_application/uml/{app_admin_domain_model.txt => app_admin_domain_model.puml} (100%)
 rename docs/blueprints/app_application/uml/{app_admin_domain_model_impl.txt => app_admin_domain_model_impl.puml} (100%)
 rename docs/blueprints/app_application/uml/{app_application_domain_model.txt => app_application_domain_model.puml} (100%)
 rename docs/blueprints/app_application/uml/{app_application_domain_model_impl.txt => app_application_domain_model_impl.puml} (100%)
 rename docs/blueprints/app_application/uml/{app_application_use_cases.txt => app_application_use_cases.puml} (100%)
 rename docs/blueprints/app_application/uml/{app_application_use_cases_impl.txt => app_application_use_cases_impl.puml} (100%)
 rename docs/blueprints/app_user/uml/{user_domain_model.txt => user_domain_model.puml} (100%)
 rename docs/blueprints/app_user/uml/{user_domain_model_impl.txt => user_domain_model_impl.puml} (100%)
 rename docs/blueprints/app_user/uml/{user_use_cases.txt => user_use_cases.puml} (100%)
 rename docs/blueprints/app_user/uml/{user_use_cases_impl.txt => user_use_cases_impl.puml} (100%)
 rename docs/blueprints/ecdc/uml/{ecdc_domain_model.txt => ecdc_domain_model.puml} (99%)
 rename docs/blueprints/ecdc/uml/{ecdc_domain_model_impl.txt => ecdc_domain_model_impl.puml} (99%)
 rename docs/blueprints/ecdc/uml/{ecdc_domain_model_import.txt => ecdc_domain_model_import.puml} (99%)
 rename docs/blueprints/ecdc/uml/{ecdc_domain_model_star_schmema.txt => ecdc_domain_model_star_schmema.puml} (99%)
 rename docs/blueprints/ecdc/uml/{ecdc_use_cases.txt => ecdc_use_cases.puml} (98%)
 rename docs/blueprints/ecdc/uml/{ecdc_use_cases_impl.txt => ecdc_use_cases_impl.puml} (96%)
 rename docs/blueprints/owid/uml/{owid_domain_model.txt => owid_domain_model.puml} (99%)
 rename docs/blueprints/owid/uml/{owid_domain_model_impl.txt => owid_domain_model_impl.puml} (99%)
 rename docs/blueprints/owid/uml/{owid_domain_model_import.txt => owid_domain_model_import.puml} (99%)
 rename docs/blueprints/owid/uml/{owid_domain_model_star_schema.txt => owid_domain_model_star_schema.puml} (99%)
 rename docs/blueprints/owid/uml/{owid_use_cases.txt => owid_use_cases.puml} (98%)
 rename docs/blueprints/owid/uml/{owid_use_cases_impl.txt => owid_use_cases_impl.puml} (100%)
 create mode 100644 docs/blueprints/owid/use_cases__visual_data/.gitignore
 rename docs/blueprints/owid/use_cases__visual_data/{ => img}/owid_use_cases_visual_data_1.png (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{ => img}/owid_use_cases_visual_data_2.png (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{ => img}/owid_use_cases_visual_data_3.png (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{ => img}/owid_use_cases_visual_data_4.png (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{ => img}/owid_use_cases_visual_data_5.png (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{owid_use_cases_visual_data_1.txt => owid_use_cases_visual_data_1.puml} (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{owid_use_cases_visual_data_2.txt => owid_use_cases_visual_data_2.puml} (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{owid_use_cases_visual_data_3.txt => owid_use_cases_visual_data_3.puml} (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{owid_use_cases_visual_data_4.txt => owid_use_cases_visual_data_4.puml} (100%)
 rename docs/blueprints/owid/use_cases__visual_data/{owid_use_cases_visual_data_5.txt => owid_use_cases_visual_data_5.puml} (100%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_domain_model_star_schema.txt => rki_cases_domain_model.puml} (99%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_domain_model_impl.txt => rki_cases_domain_model_impl.puml} (99%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_domain_model_import.txt => rki_cases_domain_model_import.puml} (99%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_domain_model.txt => rki_cases_domain_model_star_schema.puml} (99%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_use_cases.txt => rki_cases_use_cases.puml} (100%)
 rename docs/blueprints/rki_cases/uml/{rki_cases_use_cases_impl.txt => rki_cases_use_cases_impl.puml} (100%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_domain_model_star_schema.txt => rki_vaccination_domain_model.puml} (99%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_domain_model_impl.txt => rki_vaccination_domain_model_impl.puml} (99%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_domain_model_import.txt => rki_vaccination_domain_model_import.puml} (99%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_domain_model.txt => rki_vaccination_domain_model_star_schema.puml} (99%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_use_cases.txt => rki_vaccination_use_cases.puml} (98%)
 rename docs/blueprints/rki_vaccination/uml/{rki_vaccination_use_cases_impl.txt => rki_vaccination_use_cases_impl.puml} (100%)
 rename docs/blueprints/who/uml/{who_domain_model_star_schema.txt => who_domain_model.puml} (99%)
 rename docs/blueprints/who/uml/{who_domain_model_impl.txt => who_domain_model_impl.puml} (99%)
 rename docs/blueprints/who/uml/{who_domain_model_import.txt => who_domain_model_import.puml} (99%)
 rename docs/blueprints/who/uml/{who_domain_model.txt => who_domain_model_star_schema.puml} (99%)
 rename docs/blueprints/who/uml/{who_use_cases.txt => who_use_cases.puml} (98%)
 rename docs/blueprints/who/uml/{who_use_cases_impl.txt => who_use_cases_impl.puml} (100%)

diff --git a/docs/blueprints/all/uml/all_domain_model.txt b/docs/blueprints/all/uml/all_domain_model.puml
similarity index 99%
rename from docs/blueprints/all/uml/all_domain_model.txt
rename to docs/blueprints/all/uml/all_domain_model.puml
index 244b3efe..aa71ef0a 100644
--- a/docs/blueprints/all/uml/all_domain_model.txt
+++ b/docs/blueprints/all/uml/all_domain_model.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.all {
 	entity AllDateReported {
 	    id: Integer
diff --git a/docs/blueprints/all/uml/all_domain_model_impl.txt b/docs/blueprints/all/uml/all_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/all/uml/all_domain_model_impl.txt
rename to docs/blueprints/all/uml/all_domain_model_impl.puml
index 437d0943..1820237e 100644
--- a/docs/blueprints/all/uml/all_domain_model_impl.txt
+++ b/docs/blueprints/all/uml/all_domain_model_impl.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.all {
 entity ApplicationDateReported {
     id: Integer
diff --git a/docs/blueprints/all/uml/all_domain_model_import.txt b/docs/blueprints/all/uml/all_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/all/uml/all_domain_model_import.txt
rename to docs/blueprints/all/uml/all_domain_model_import.puml
index 4d53522d..5d930344 100644
--- a/docs/blueprints/all/uml/all_domain_model_import.txt
+++ b/docs/blueprints/all/uml/all_domain_model_import.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/all/uml/all_domain_model_star_schema.puml b/docs/blueprints/all/uml/all_domain_model_star_schema.puml
new file mode 100644
index 00000000..d31a3c83
--- /dev/null
+++ b/docs/blueprints/all/uml/all_domain_model_star_schema.puml
@@ -0,0 +1,432 @@
+@startuml
+left to right direction
+package covid19.blueprints.all {
+	entity AllDateReported {
+	    id: Integer
+		date_reported:  String
+	    year_week:  String
+	    datum: Date
+	    year: Integer
+	    month: Integer
+	    day_of_month: Integer
+	    day_of_week: Integer
+	    week_of_year: Integer
+		get_name_for_weekday()
+		{classifier} get_names_for_weekday()
+		{classifier} get_datum_parts(my_date_rep: String)
+		{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
+		{classifier} create_new_object_factory(my_date_rep: String)
+	}
+	entity AllLocationGroup {
+	    id: Integer
+	    location_group:  String
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity AllLocation {
+	    id: Integer
+	    location:  String
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity AllData {
+	    id: Integer
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity RkiDateReported {
+	    id: Integer
+		date_reported: String
+	    year_week: String
+	    datum: Date
+	    year: Integer
+	    month: Integer
+	    day_of_month: Integer
+	    day_of_week: Integer
+	    week_of_year: Integer
+		get_name_for_weekday()
+		{classifier} get_names_for_weekday()
+		{classifier} get_datum_parts(my_date_rep: String)
+		{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
+		{classifier} create_new_object_factory(my_date_rep: String)
+	}
+	class ApplicationPage << (T,#FF7700) Transient >> {
+		title: String
+		subtitle: String
+		subtitle_info: String
+	}
+	class ApplicationServiceConfig << (T,#FF7700) Transient >> {
+		limit_nr: Integer
+	    data_path: String
+	    slug: String
+	    category: String
+	    sub_category: String
+	    tablename: String
+	    cvsfile_name: String
+	    url_src: String
+	    cvsfile_path: String
+	    msg_job: String
+	    msg_ok: String
+	    msg_error: String
+		create_config_for_who()
+		create_config_for_rki_vaccination()
+		create_config_for_owid()
+		create_config_for_ecdc()
+		create_config_for_rki_bundeslaender()
+		create_config_for_rki_landkreise()
+	}
+	class ApplicationServiceDownload << (S,red) Service >> {
+		-log_error()
+		-log_success()
+		-prepare_download()
+		-download_with_wget()
+		-download_with_subprocess_and_os_native_wget()
+		download_file()
+	}
+}
+package . {
+	class database << (S,#FF7700) Singleton >> {
+		{static} int port
+		{static} bool run_run_with_debug
+		{static} int ITEMS_PER_PAGE
+		app: Flask
+		db: SQLAlchemy
+		admin: Admin
+		app_cors: CORS
+		app_bootstrap: Bootstrap
+		create_app()
+		create_db(my_app)
+		create_db_test(my_app)
+		create_celery(my_app)
+		create_admin(my_app)
+	}
+	class application_workers << (B,orchid) Boundary >> {
+		run_mq(my_app, my_celery)
+		run_app(my_app)
+	}
+	class application_views << (B,orchid) Boundary >> {
+		url_home()
+		url_root()
+	}
+}
+package covid19.blueprints.all {
+	class application_services << (P,yellow) Proxy >> {
+
+	}
+}
+package covid19.blueprints.app_application {
+	class ApplicationService << (S,red) Service >> {
+
+	}
+	class AdminService << (S,red) Service >> {
+
+	}
+}
+package covid19.blueprints.who {
+	entity WhoDateReported {
+	    id: Integer
+		date_reported: String
+	    year_week: String
+	    datum: Date
+	    year: Integer
+	    month: Integer
+	    day_of_month: Integer
+	    day_of_week: Integer
+	    week_of_year: Integer
+	    {classifier} create_new_object_factory(my_date_rep)
+	}
+	entity WhoCountryRegion {
+	    id: Integer
+	    region: String
+	}
+	entity WhoCountry {
+	    id: Integer
+		country_code: String
+	    country: String
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} get_germany()
+	    {classifier} find_by_country_code_and_country_and_who_region_id(i_country_code, i_country, my_region)
+	    {classifier} find_by_country_code(i_country_code)
+	    {classifier} find_by_country(i_country)
+	    {classifier} get_by_country_code(i_country_code)
+	    {classifier} get_by_country(i_country)
+	    {classifier} get_who_countries_for_region(region, page)
+	}
+	entity WhoData {
+	    id: Integer
+		cases_new: Integer
+	    cases_cumulative: Integer
+	    deaths_new: Integer
+	    deaths_cumulative: Integer
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_one_or_none_by_date_and_country(my_date_reported, my_country)
+	    {classifier} get_data_for_country(who_country, page)
+	    {classifier} get_data_for_day(date_reported, page)
+	    {classifier} get_data_for_day_order_by_cases_new(date_reported, page)
+	    {classifier} get_data_for_day_order_by_cases_cumulative(date_reported, page)
+	    {classifier} get_data_for_day_order_by_deaths_new(date_reported, page)
+	    {classifier} get_data_for_day_order_by_deaths_cumulative(date_reported, page)
+	    {classifier} get_data_for_country_order_by_cases_new(who_country, page)
+	    {classifier} get_data_for_country_order_by_cases_cumulative(who_country, page)
+	    {classifier} get_data_for_country_order_by_deaths_new(who_country, page)
+	    {classifier} get_data_for_country_order_by_deaths_cumulative(who_country, page)
+	}
+
+	class WhoService << (S,red) Service >> {
+
+	}
+}
+package covid19.blueprints.ecdc {
+
+	entity EcdcDateReported {
+	    id: Integer
+		date_reported: String
+	    year_week: String
+	    datum: Date
+	    year: Integer
+	    month: Integer
+	    day_of_month: Integer
+	    day_of_week: Integer
+	    week_of_year: Integer
+		get_name_for_weekday()
+		{classifier} get_names_for_weekday()
+		{classifier} get_datum_parts(my_date_rep: String)
+		{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
+		{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
+		{classifier} create_new_object_factory(my_date_rep: String)
+	}
+	entity EcdcContinent {
+	    id: Integer
+	    dateiname: String
+	    parent_dir: String
+	    get_absolute_path()
+	    get_relative_path()
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	    {classifier} get_workflow_for_id(workflow_id: Integer)
+	}
+	entity EcdcCountry {
+	    id: Integer
+	    dateiname: String
+	    parent_dir: String
+	    title: String
+	    lektion_nr: Integer
+	    verified: Boolean
+	    get_absolute_path()
+	    get_relative_path()
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	    {classifier} get_lektionen_for_workflow(workflow: Workflow)
+	    {classifier} get_lektion_for_id(lektion_id: Integer)
+	    {classifier} get_folien_for_lektion_id(lektion_id: Integer)
+	    {classifier} get_all_verified()
+	}
+	entity EcdcData {
+	    id: Integer
+	    dateiname: String
+	    parent_dir: String
+	    title: String
+	    lektion_nr: Integer
+	    foliensatz_nr_in_lektion: Integer
+	    get_absolute_path()
+	    get_relative_path()
+	    {classifier} get_foliensaetze_for_lektion(lektion: Lektion)
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+
+	class EcdcService << (S,red) Service >> {
+
+	}
+}
+package covid19.blueprints.rki_vaccination {
+	class RkiVaccinationService << (S,red) Service >> {
+
+	}
+}
+package covid19.blueprints.rki_cases {
+	class RkiBundeslaenderService << (S,red) Service >> {
+
+	}
+	class RkiLandkreiseService << (S,red) Service >> {
+
+	}
+}
+package covid19.blueprints.owid {
+
+	entity OwidDateReported {
+	    id: Integer
+		date_reported:  String
+	    year_week:  String
+	    datum: Date
+	    year: Integer
+	    month: Integer
+	    day_of_month: Integer
+	    day_of_week: Integer
+	    week_of_year: Integer
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity OwidContinent {
+	    id: Integer
+	    continent:  String
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity OwidCountry {
+	    id: Integer
+		iso_code:  String
+	    location:  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} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+	entity OwidData {
+	    id: Integer
+	    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
+	    {classifier} remove_all()
+	    {classifier} get_all_as_page(page: Integer)
+	    {classifier} get_all()
+	    {classifier} get_all_as_dict()
+	    {classifier} get_by_id(other_id: Integer)
+	    {classifier} find_by_id(other_id: Integer)
+	}
+
+	class OwidService << (S,red) Service >> {
+
+	}
+}
+ApplicationDateReported <|-- RkiDateReported
+ApplicationServiceDownload "*" --> "1"  ApplicationServiceConfig: cfg
+application_workers "1" --> "1" application_services: application_services
+application_views "1" --> "1" application_services: application_services
+application_views "*" --> "1" ApplicationPage: page_info
+application_services "*" --> "1" ApplicationService: application_service
+application_services "*" --> "1" AdminService: admin_service
+application_services "*" --> "1" WhoService: who_service
+application_services "*" --> "1" EcdcService: ecdc_service
+application_services "*" --> "1" RkiVaccinationService: rki_vaccination_service
+application_services "*" --> "1" RkiBundeslaenderService: rki_service_bundeslaender
+application_services "*" --> "1" RkiLandkreiseService: rki_service_landkreise
+application_services "*" --> "1" OwidService: owid_service
+ApplicationService "*" --> "1" database
+ApplicationServiceDownload "*" --> "1" database
+AdminService "*" --> "1" database
+WhoService "*" --> "1" database
+EcdcService "*" --> "1" database
+RkiBundeslaenderService "*" --> "1" database
+RkiLandkreiseService "*" --> "1" database
+RkiVaccinationService "*" --> "1" database
+OwidService "*" --> "1" database
+ApplicationService : SQLAlchemy database
+ApplicationServiceDownload : SQLAlchemy database
+AdminService : SQLAlchemy database
+WhoService : SQLAlchemy database
+EcdcService : SQLAlchemy database
+RkiBundeslaenderService : SQLAlchemy database
+RkiLandkreiseService : SQLAlchemy database
+RkiVaccinationService : SQLAlchemy database
+OwidService : SQLAlchemy database
+@enduml
diff --git a/docs/blueprints/all/uml/all_domain_model_star_schema.txt b/docs/blueprints/all/uml/all_domain_model_star_schema.txt
deleted file mode 100644
index 244b3efe..00000000
--- a/docs/blueprints/all/uml/all_domain_model_star_schema.txt
+++ /dev/null
@@ -1,201 +0,0 @@
-@startuml
-package covid19.blueprints.all {
-	entity AllDateReported {
-	    id: Integer
-		date_reported:  String
-	    year_week:  String
-	    datum: Date
-	    year: Integer
-	    month: Integer
-	    day_of_month: Integer
-	    day_of_week: Integer
-	    week_of_year: Integer
-		get_name_for_weekday()
-		{classifier} get_names_for_weekday()
-		{classifier} get_datum_parts(my_date_rep: String)
-		{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
-		{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
-		{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
-		{classifier} create_new_object_factory(my_date_rep: String)
-	}
-	entity AllLocationGroup {
-	    id: Integer
-	    location_group:  String
-	    {classifier} remove_all()
-	    {classifier} get_all_as_page(page: Integer)
-	    {classifier} get_all()
-	    {classifier} get_all_as_dict()
-	    {classifier} get_by_id(other_id: Integer)
-	    {classifier} find_by_id(other_id: Integer)
-	}
-	entity AllLocation {
-	    id: Integer
-	    location:  String
-	    {classifier} remove_all()
-	    {classifier} get_all_as_page(page: Integer)
-	    {classifier} get_all()
-	    {classifier} get_all_as_dict()
-	    {classifier} get_by_id(other_id: Integer)
-	    {classifier} find_by_id(other_id: Integer)
-	}
-	entity AllData {
-	    id: Integer
-	    {classifier} remove_all()
-	    {classifier} get_all_as_page(page: Integer)
-	    {classifier} get_all()
-	    {classifier} get_all_as_dict()
-	    {classifier} get_by_id(other_id: Integer)
-	    {classifier} find_by_id(other_id: Integer)
-	}
-	entity RkiDateReported {
-	    id: Integer
-		date_reported: String
-	    year_week: String
-	    datum: Date
-	    year: Integer
-	    month: Integer
-	    day_of_month: Integer
-	    day_of_week: Integer
-	    week_of_year: Integer
-		get_name_for_weekday()
-		{classifier} get_names_for_weekday()
-		{classifier} get_datum_parts(my_date_rep: String)
-		{classifier} get_datum(my_year: Integer, my_month: Integer, my_day: Integer)
-		{classifier} get_datum_as_str(my_year: Integer, my_month: Integer, my_day: Integer)
-		{classifier} my_year_week(my_iso_year: Integer, week_number: Integer)
-		{classifier} create_new_object_factory(my_date_rep: String)
-	}
-	class ApplicationPage << (T,#FF7700) Transient >> {
-		title: String
-		subtitle: String
-		subtitle_info: String
-	}
-	class ApplicationServiceConfig << (T,#FF7700) Transient >> {
-		limit_nr: Integer
-	    data_path: String
-	    slug: String
-	    category: String
-	    sub_category: String
-	    tablename: String
-	    cvsfile_name: String
-	    url_src: String
-	    cvsfile_path: String
-	    msg_job: String
-	    msg_ok: String
-	    msg_error: String
-		create_config_for_who()
-		create_config_for_rki_vaccination()
-		create_config_for_owid()
-		create_config_for_ecdc()
-		create_config_for_rki_bundeslaender()
-		create_config_for_rki_landkreise()
-	}
-	class ApplicationServiceDownload << (S,red) Service >> {
-		-log_error()
-		-log_success()
-		-prepare_download()
-		-download_with_wget()
-		-download_with_subprocess_and_os_native_wget()
-		download_file()
-	}
-}
-package . {
-	class database << (S,#FF7700) Singleton >> {
-		{static} int port
-		{static} bool run_run_with_debug
-		{static} int ITEMS_PER_PAGE
-		app: Flask
-		db: SQLAlchemy
-		admin: Admin
-		app_cors: CORS
-		app_bootstrap: Bootstrap
-		create_app()
-		create_db(my_app)
-		create_db_test(my_app)
-		create_celery(my_app)
-		create_admin(my_app)
-	}
-	class application_workers << (B,orchid) Boundary >> {
-		run_mq(my_app, my_celery)
-		run_app(my_app)
-	}
-	class application_views << (B,orchid) Boundary >> {
-		url_home()
-		url_root()
-	}
-}
-package covid19.blueprints.all {
-	class application_services << (P,yellow) Proxy >> {
-
-	}
-}
-package covid19.blueprints.app_application {
-	class ApplicationService << (S,red) Service >> {
-
-	}
-	class AdminService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.who {
-	class WhoService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.ecdc {
-	class EcdcService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.rki_vaccination {
-	class RkiVaccinationService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.rki_cases {
-	class RkiBundeslaenderService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.rki_cases {
-	class RkiLandkreiseService << (S,red) Service >> {
-
-	}
-}
-package covid19.blueprints.owid {
-	class OwidService << (S,red) Service >> {
-
-	}
-}
-ApplicationDateReported <|-- RkiDateReported
-ApplicationServiceDownload "*" --> "1"  ApplicationServiceConfig: cfg
-application_workers "1" --> "1" application_services: application_services
-application_views "1" --> "1" application_services: application_services
-application_views "*" --> "1" ApplicationPage: page_info
-application_services "*" --> "1" ApplicationService: application_service
-application_services "*" --> "1" AdminService: admin_service
-application_services "*" --> "1" WhoService: who_service
-application_services "*" --> "1" EcdcService: ecdc_service
-application_services "*" --> "1" RkiVaccinationService: rki_vaccination_service
-application_services "*" --> "1" RkiBundeslaenderService: rki_service_bundeslaender
-application_services "*" --> "1" RkiLandkreiseService: rki_service_landkreise
-application_services "*" --> "1" OwidService: owid_service
-ApplicationService "*" --> "1" database
-ApplicationServiceDownload "*" --> "1" database
-AdminService "*" --> "1" database
-WhoService "*" --> "1" database
-EcdcService "*" --> "1" database
-RkiBundeslaenderService "*" --> "1" database
-RkiLandkreiseService "*" --> "1" database
-RkiVaccinationService "*" --> "1" database
-OwidService "*" --> "1" database
-ApplicationService : SQLAlchemy database
-ApplicationServiceDownload : SQLAlchemy database
-AdminService : SQLAlchemy database
-WhoService : SQLAlchemy database
-EcdcService : SQLAlchemy database
-RkiBundeslaenderService : SQLAlchemy database
-RkiLandkreiseService : SQLAlchemy database
-RkiVaccinationService : SQLAlchemy database
-OwidService : SQLAlchemy database
-@enduml
diff --git a/docs/blueprints/all/uml/all_use_cases.txt b/docs/blueprints/all/uml/all_use_cases.puml
similarity index 98%
rename from docs/blueprints/all/uml/all_use_cases.txt
rename to docs/blueprints/all/uml/all_use_cases.puml
index a48d05f0..66cd4829 100644
--- a/docs/blueprints/all/uml/all_use_cases.txt
+++ b/docs/blueprints/all/uml/all_use_cases.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/all/uml/all_use_cases_impl.txt b/docs/blueprints/all/uml/all_use_cases_impl.puml
similarity index 99%
rename from docs/blueprints/all/uml/all_use_cases_impl.txt
rename to docs/blueprints/all/uml/all_use_cases_impl.puml
index d025b646..638e1442 100644
--- a/docs/blueprints/all/uml/all_use_cases_impl.txt
+++ b/docs/blueprints/all/uml/all_use_cases_impl.puml
@@ -1,5 +1,4 @@
 @startuml
-
 left to right direction
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
diff --git a/docs/blueprints/app_application/uml/app_admin_domain_model.txt b/docs/blueprints/app_application/uml/app_admin_domain_model.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_admin_domain_model.txt
rename to docs/blueprints/app_application/uml/app_admin_domain_model.puml
diff --git a/docs/blueprints/app_application/uml/app_admin_domain_model_impl.txt b/docs/blueprints/app_application/uml/app_admin_domain_model_impl.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_admin_domain_model_impl.txt
rename to docs/blueprints/app_application/uml/app_admin_domain_model_impl.puml
diff --git a/docs/blueprints/app_application/uml/app_application_domain_model.txt b/docs/blueprints/app_application/uml/app_application_domain_model.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_application_domain_model.txt
rename to docs/blueprints/app_application/uml/app_application_domain_model.puml
diff --git a/docs/blueprints/app_application/uml/app_application_domain_model_impl.txt b/docs/blueprints/app_application/uml/app_application_domain_model_impl.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_application_domain_model_impl.txt
rename to docs/blueprints/app_application/uml/app_application_domain_model_impl.puml
diff --git a/docs/blueprints/app_application/uml/app_application_use_cases.txt b/docs/blueprints/app_application/uml/app_application_use_cases.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_application_use_cases.txt
rename to docs/blueprints/app_application/uml/app_application_use_cases.puml
diff --git a/docs/blueprints/app_application/uml/app_application_use_cases_impl.txt b/docs/blueprints/app_application/uml/app_application_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/app_application/uml/app_application_use_cases_impl.txt
rename to docs/blueprints/app_application/uml/app_application_use_cases_impl.puml
diff --git a/docs/blueprints/app_user/uml/user_domain_model.txt b/docs/blueprints/app_user/uml/user_domain_model.puml
similarity index 100%
rename from docs/blueprints/app_user/uml/user_domain_model.txt
rename to docs/blueprints/app_user/uml/user_domain_model.puml
diff --git a/docs/blueprints/app_user/uml/user_domain_model_impl.txt b/docs/blueprints/app_user/uml/user_domain_model_impl.puml
similarity index 100%
rename from docs/blueprints/app_user/uml/user_domain_model_impl.txt
rename to docs/blueprints/app_user/uml/user_domain_model_impl.puml
diff --git a/docs/blueprints/app_user/uml/user_use_cases.txt b/docs/blueprints/app_user/uml/user_use_cases.puml
similarity index 100%
rename from docs/blueprints/app_user/uml/user_use_cases.txt
rename to docs/blueprints/app_user/uml/user_use_cases.puml
diff --git a/docs/blueprints/app_user/uml/user_use_cases_impl.txt b/docs/blueprints/app_user/uml/user_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/app_user/uml/user_use_cases_impl.txt
rename to docs/blueprints/app_user/uml/user_use_cases_impl.puml
diff --git a/docs/blueprints/ecdc/uml/ecdc_domain_model.txt b/docs/blueprints/ecdc/uml/ecdc_domain_model.puml
similarity index 99%
rename from docs/blueprints/ecdc/uml/ecdc_domain_model.txt
rename to docs/blueprints/ecdc/uml/ecdc_domain_model.puml
index 6ed013f5..8e31aec5 100644
--- a/docs/blueprints/ecdc/uml/ecdc_domain_model.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_domain_model.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/ecdc/uml/ecdc_domain_model_impl.txt b/docs/blueprints/ecdc/uml/ecdc_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/ecdc/uml/ecdc_domain_model_impl.txt
rename to docs/blueprints/ecdc/uml/ecdc_domain_model_impl.puml
index 78278088..658a4974 100644
--- a/docs/blueprints/ecdc/uml/ecdc_domain_model_impl.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_domain_model_impl.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/ecdc/uml/ecdc_domain_model_import.txt b/docs/blueprints/ecdc/uml/ecdc_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/ecdc/uml/ecdc_domain_model_import.txt
rename to docs/blueprints/ecdc/uml/ecdc_domain_model_import.puml
index 6fd12eaf..9277e4b1 100644
--- a/docs/blueprints/ecdc/uml/ecdc_domain_model_import.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_domain_model_import.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.txt b/docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.puml
similarity index 99%
rename from docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.txt
rename to docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.puml
index 6ed013f5..8e31aec5 100644
--- a/docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_domain_model_star_schmema.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/ecdc/uml/ecdc_use_cases.txt b/docs/blueprints/ecdc/uml/ecdc_use_cases.puml
similarity index 98%
rename from docs/blueprints/ecdc/uml/ecdc_use_cases.txt
rename to docs/blueprints/ecdc/uml/ecdc_use_cases.puml
index ab70072b..21ecadc3 100644
--- a/docs/blueprints/ecdc/uml/ecdc_use_cases.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_use_cases.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/ecdc/uml/ecdc_use_cases_impl.txt b/docs/blueprints/ecdc/uml/ecdc_use_cases_impl.puml
similarity index 96%
rename from docs/blueprints/ecdc/uml/ecdc_use_cases_impl.txt
rename to docs/blueprints/ecdc/uml/ecdc_use_cases_impl.puml
index 19f01cf8..0ad522ae 100644
--- a/docs/blueprints/ecdc/uml/ecdc_use_cases_impl.txt
+++ b/docs/blueprints/ecdc/uml/ecdc_use_cases_impl.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/owid/uml/owid_domain_model.txt b/docs/blueprints/owid/uml/owid_domain_model.puml
similarity index 99%
rename from docs/blueprints/owid/uml/owid_domain_model.txt
rename to docs/blueprints/owid/uml/owid_domain_model.puml
index 17b21165..3f5cdccc 100644
--- a/docs/blueprints/owid/uml/owid_domain_model.txt
+++ b/docs/blueprints/owid/uml/owid_domain_model.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/owid/uml/owid_domain_model_impl.txt b/docs/blueprints/owid/uml/owid_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/owid/uml/owid_domain_model_impl.txt
rename to docs/blueprints/owid/uml/owid_domain_model_impl.puml
index 8836cb52..14f4af3f 100644
--- a/docs/blueprints/owid/uml/owid_domain_model_impl.txt
+++ b/docs/blueprints/owid/uml/owid_domain_model_impl.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 entity OwidImport {
     id: Integer
 	iso_code:  String
diff --git a/docs/blueprints/owid/uml/owid_domain_model_import.txt b/docs/blueprints/owid/uml/owid_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/owid/uml/owid_domain_model_import.txt
rename to docs/blueprints/owid/uml/owid_domain_model_import.puml
index 3348b663..bf44bc8a 100644
--- a/docs/blueprints/owid/uml/owid_domain_model_import.txt
+++ b/docs/blueprints/owid/uml/owid_domain_model_import.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/owid/uml/owid_domain_model_star_schema.txt b/docs/blueprints/owid/uml/owid_domain_model_star_schema.puml
similarity index 99%
rename from docs/blueprints/owid/uml/owid_domain_model_star_schema.txt
rename to docs/blueprints/owid/uml/owid_domain_model_star_schema.puml
index 17b21165..3f5cdccc 100644
--- a/docs/blueprints/owid/uml/owid_domain_model_star_schema.txt
+++ b/docs/blueprints/owid/uml/owid_domain_model_star_schema.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/owid/uml/owid_use_cases.txt b/docs/blueprints/owid/uml/owid_use_cases.puml
similarity index 98%
rename from docs/blueprints/owid/uml/owid_use_cases.txt
rename to docs/blueprints/owid/uml/owid_use_cases.puml
index dac3f9e0..fe75f0a7 100644
--- a/docs/blueprints/owid/uml/owid_use_cases.txt
+++ b/docs/blueprints/owid/uml/owid_use_cases.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/owid/uml/owid_use_cases_impl.txt b/docs/blueprints/owid/uml/owid_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/owid/uml/owid_use_cases_impl.txt
rename to docs/blueprints/owid/uml/owid_use_cases_impl.puml
diff --git a/docs/blueprints/owid/use_cases__visual_data/.gitignore b/docs/blueprints/owid/use_cases__visual_data/.gitignore
new file mode 100644
index 00000000..b44ef384
--- /dev/null
+++ b/docs/blueprints/owid/use_cases__visual_data/.gitignore
@@ -0,0 +1 @@
+/*.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.png b/docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_1.png
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.png
rename to docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_1.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.png b/docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_2.png
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.png
rename to docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_2.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.png b/docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_3.png
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.png
rename to docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_3.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.png b/docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_4.png
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.png
rename to docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_4.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.png b/docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_5.png
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.png
rename to docs/blueprints/owid/use_cases__visual_data/img/owid_use_cases_visual_data_5.png
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.txt b/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.puml
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.txt
rename to docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_1.puml
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.txt b/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.puml
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.txt
rename to docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_2.puml
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.txt b/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.puml
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.txt
rename to docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_3.puml
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.txt b/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.puml
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.txt
rename to docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_4.puml
diff --git a/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.txt b/docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.puml
similarity index 100%
rename from docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.txt
rename to docs/blueprints/owid/use_cases__visual_data/owid_use_cases_visual_data_5.puml
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.txt b/docs/blueprints/rki_cases/uml/rki_cases_domain_model.puml
similarity index 99%
rename from docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_domain_model.puml
index e2717e6b..c7251fc2 100644
--- a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.txt
+++ b/docs/blueprints/rki_cases/uml/rki_cases_domain_model.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.all {
 
 	interface ApplicationDateReported {
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.txt b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.puml
index c8b9faa4..c33ece0f 100644
--- a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.txt
+++ b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_impl.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.txt b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.puml
index 2bdda23e..fc93a1b5 100644
--- a/docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.txt
+++ b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_import.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 package covid19.blueprints.all {
 
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_domain_model.txt b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.puml
similarity index 99%
rename from docs/blueprints/rki_cases/uml/rki_cases_domain_model.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.puml
index e2717e6b..db5743be 100644
--- a/docs/blueprints/rki_cases/uml/rki_cases_domain_model.txt
+++ b/docs/blueprints/rki_cases/uml/rki_cases_domain_model_star_schema.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 package covid19.blueprints.all {
 
 	interface ApplicationDateReported {
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_use_cases.txt b/docs/blueprints/rki_cases/uml/rki_cases_use_cases.puml
similarity index 100%
rename from docs/blueprints/rki_cases/uml/rki_cases_use_cases.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_use_cases.puml
diff --git a/docs/blueprints/rki_cases/uml/rki_cases_use_cases_impl.txt b/docs/blueprints/rki_cases/uml/rki_cases_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/rki_cases/uml/rki_cases_use_cases_impl.txt
rename to docs/blueprints/rki_cases/uml/rki_cases_use_cases_impl.puml
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.puml
similarity index 99%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.puml
index 476ae285..1286b52d 100644
--- a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.txt
+++ b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 package covid19.blueprints.all {
 
 	entity ApplicationDateReported {
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.puml
index dfd7064b..a9174023 100644
--- a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.txt
+++ b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_impl.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 entity RkiVaccinationDateReported {
     id: Integer
 	date_reported:  String
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.puml
index c9f916b7..5bb53954 100644
--- a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.txt
+++ b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_import.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 
 interface AllImportFull {
 	{classifier} download_file()
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.puml
similarity index 99%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.puml
index 476ae285..1286b52d 100644
--- a/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model.txt
+++ b/docs/blueprints/rki_vaccination/uml/rki_vaccination_domain_model_star_schema.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 package covid19.blueprints.all {
 
 	entity ApplicationDateReported {
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.puml
similarity index 98%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.puml
index eb94020a..0826022b 100644
--- a/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.txt
+++ b/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases.puml
@@ -1,4 +1,6 @@
 @startuml
+left to right direction
+
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases_impl.txt b/docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases_impl.txt
rename to docs/blueprints/rki_vaccination/uml/rki_vaccination_use_cases_impl.puml
diff --git a/docs/blueprints/who/uml/who_domain_model_star_schema.txt b/docs/blueprints/who/uml/who_domain_model.puml
similarity index 99%
rename from docs/blueprints/who/uml/who_domain_model_star_schema.txt
rename to docs/blueprints/who/uml/who_domain_model.puml
index 5e9c82df..5cd027b2 100644
--- a/docs/blueprints/who/uml/who_domain_model_star_schema.txt
+++ b/docs/blueprints/who/uml/who_domain_model.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.all {
 	entity ApplicationDateReported {
 	    id: Integer
diff --git a/docs/blueprints/who/uml/who_domain_model_impl.txt b/docs/blueprints/who/uml/who_domain_model_impl.puml
similarity index 99%
rename from docs/blueprints/who/uml/who_domain_model_impl.txt
rename to docs/blueprints/who/uml/who_domain_model_impl.puml
index 059e1058..f0c12146 100644
--- a/docs/blueprints/who/uml/who_domain_model_impl.txt
+++ b/docs/blueprints/who/uml/who_domain_model_impl.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 entity ApplicationDateReported {
     id: Integer
 	date_reported:  String
diff --git a/docs/blueprints/who/uml/who_domain_model_import.txt b/docs/blueprints/who/uml/who_domain_model_import.puml
similarity index 99%
rename from docs/blueprints/who/uml/who_domain_model_import.txt
rename to docs/blueprints/who/uml/who_domain_model_import.puml
index 3f132ec9..205191f2 100644
--- a/docs/blueprints/who/uml/who_domain_model_import.txt
+++ b/docs/blueprints/who/uml/who_domain_model_import.puml
@@ -1,5 +1,5 @@
 @startuml
-
+left to right direction
 package covid19.blueprints.all {
 
 	interface AllImportFull {
diff --git a/docs/blueprints/who/uml/who_domain_model.txt b/docs/blueprints/who/uml/who_domain_model_star_schema.puml
similarity index 99%
rename from docs/blueprints/who/uml/who_domain_model.txt
rename to docs/blueprints/who/uml/who_domain_model_star_schema.puml
index 5e9c82df..5cd027b2 100644
--- a/docs/blueprints/who/uml/who_domain_model.txt
+++ b/docs/blueprints/who/uml/who_domain_model_star_schema.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.all {
 	entity ApplicationDateReported {
 	    id: Integer
diff --git a/docs/blueprints/who/uml/who_use_cases.txt b/docs/blueprints/who/uml/who_use_cases.puml
similarity index 98%
rename from docs/blueprints/who/uml/who_use_cases.txt
rename to docs/blueprints/who/uml/who_use_cases.puml
index 851a577a..152bb5e2 100644
--- a/docs/blueprints/who/uml/who_use_cases.txt
+++ b/docs/blueprints/who/uml/who_use_cases.puml
@@ -1,4 +1,5 @@
 @startuml
+left to right direction
 package covid19.blueprints.app_user {
 	actor AnonymousVisitor as vu
 	actor AppManager as au
diff --git a/docs/blueprints/who/uml/who_use_cases_impl.txt b/docs/blueprints/who/uml/who_use_cases_impl.puml
similarity index 100%
rename from docs/blueprints/who/uml/who_use_cases_impl.txt
rename to docs/blueprints/who/uml/who_use_cases_impl.puml
-- 
GitLab