From dee7a4c7d9d2ce541e3d7d7db340c4c51d643097 Mon Sep 17 00:00:00 2001 From: kempersc Date: Tue, 9 Dec 2025 22:38:33 +0100 Subject: [PATCH] geocode: add coordinates to 147 Swiss custodian files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Improved city name normalization to handle: - St. Gallen / St.Gallen -> Sankt Gallen - Canton suffixes (Buchs SG, Brugg AG) - Hyphenated districts (Bernex - Genève) - Postal codes with slashes (Ecublens/VD) - German prepositions (Hausen b. Brugg) - Created scripts/geocode_from_city_name.py for unified geocoding --- data/custodian/CH-AG-BA-L-SBB.yaml | 11 +- data/custodian/CH-AG-BAD-A-SB.yaml | 9 +- ...rporate_research_ltd_chcrca_4_library.yaml | 15 +- data/custodian/CH-AG-HBB-L-RCAB.yaml | 10 +- data/custodian/CH-AG-VP-L-LPLRIWEDEE.yaml | 11 +- data/custodian/CH-BE-B1-A-GUBA.yaml | 11 +- data/custodian/CH-BE-B2-U-SDSN.yaml | 11 +- data/custodian/CH-BE-B6-U-RDC.yaml | 9 +- ...prachigkeit_gesetzgebung_und_ressourc.yaml | 6 + data/custodian/CH-BE-B8-L-AZGRB.yaml | 6 + data/custodian/CH-BE-BER-U-EIMM.yaml | 6 + data/custodian/CH-BE-BIE-L-MB.yaml | 9 +- data/custodian/CH-BL-P1-A-HASSA.yaml | 12 +- data/custodian/CH-FR-RF-L-BG.yaml | 6 + data/custodian/CH-GE-B-G-L-BB.yaml | 6 + data/custodian/CH-GE-CG-L-BMC.yaml | 6 + data/custodian/CH-GE-CG-L-CUDEPLECB.yaml | 6 + data/custodian/CH-GE-CG-L-FIOTMB.yaml | 6 + data/custodian/CH-GE-CG-L-IBB.yaml | 6 + data/custodian/CH-GE-G-S-L-BLUGUACDEI.yaml | 6 + data/custodian/CH-GE-G1-L-FERGSD.yaml | 6 + data/custodian/CH-GE-G2-A-CŒEA.yaml | 6 + data/custodian/CH-GE-G2-L-OITCD.yaml | 6 + data/custodian/CH-GE-G3-A-ADEG.yaml | 6 + data/custodian/CH-GE-G3-L-BMVG.yaml | 6 + data/custodian/CH-GE-G3-L-CDETDELCB.yaml | 6 + data/custodian/CH-GE-G3-M-MDADH.yaml | 6 + data/custodian/CH-GE-G3-U-E.yaml | 6 + data/custodian/CH-GE-G4-L-BLUGUAM.yaml | 6 + data/custodian/CH-GE-G4-L-BLUGUCP.yaml | 6 + data/custodian/CH-GE-G4-L-BLUGUMP.yaml | 6 + data/custodian/CH-GE-G4-L-BSI.yaml | 6 + data/custodian/CH-GE-G4-L-BSISP.yaml | 6 + data/custodian/CH-GE-G4-L-IDHRIB.yaml | 6 + data/custodian/CH-GE-G4-L-MHRMB.yaml | 6 + data/custodian/CH-GE-G4-L-UGSPLPGB.yaml | 6 + data/custodian/CH-GE-G4-U-CPF.yaml | 6 + data/custodian/CH-GE-G8-A-EPGA.yaml | 6 + data/custodian/CH-GE-G8-U-SEMSDSD.yaml | 6 + data/custodian/CH-GE-PET-U-CDEPADMLAC.yaml | 18 +- data/custodian/CH-GE-PRE-L-BMPC.yaml | 6 + data/custodian/CH-GR-CUI-A-RSRRDA.yaml | 6 + data/custodian/CH-GR-DIS-L-BR.yaml | 6 + data/custodian/CH-GR-DIS-U-K.yaml | 6 + data/custodian/CH-GR-DOM-L-GD.yaml | 6 + data/custodian/CH-GR-DOM-U-ECAID.yaml | 6 + data/custodian/CH-GR-SG-A-BA.yaml | 6 + data/custodian/CH-GR-SM-U-NH.yaml | 6 + data/custodian/CH-GR-SSM-A-GS.yaml | 6 + data/custodian/CH-GR-SSM-L-BE.yaml | 6 + data/custodian/CH-LU-L7-A-HVZ.yaml | 6 + data/custodian/CH-SG-BS-L-BBS.yaml | 6 + data/custodian/CH-SG-BS-L-OOFBCB.yaml | 6 + data/custodian/CH-SG-KS-A-GK.yaml | 6 + data/custodian/CH-SG-OS-U-HSS.yaml | 6 + data/custodian/CH-SG-RAP-L-SRJ.yaml | 6 + ...schweizer_landschaftsarchitektur_asla.yaml | 6 + data/custodian/CH-SG-RS-A-ASLA.yaml | 6 + ...auen_geschlechter_und_sozialgeschicht.yaml | 6 + data/custodian/CH-SG-SG-A-AFGSO.yaml | 6 + ...rchiv_der_katholischen_administration.yaml | 6 + data/custodian/CH-SG-SG-A-AKA.yaml | 6 + data/custodian/CH-SG-SG-A-SKSG.yaml | 6 + data/custodian/CH-SG-SG-A-SSG.yaml | 6 + data/custodian/CH-SG-SG-A-USGH.yaml | 6 + data/custodian/CH-SG-SG-L-FAHFHB.yaml | 6 + data/custodian/CH-SG-SG-L-FFW.yaml | 6 + data/custodian/CH-SG-SG-L-IAAIHB.yaml | 6 + data/custodian/CH-SG-SG-L-IEWREHB.yaml | 6 + data/custodian/CH-SG-SG-L-IFFIHB.yaml | 6 + data/custodian/CH-SG-SG-L-IPIHB.yaml | 6 + data/custodian/CH-SG-SG-L-IRRIHB.yaml | 6 + ...wirtschaftspadagogik_iwp_hsg_biblioth.yaml | 6 + data/custodian/CH-SG-SG-L-IWIHB.yaml | 6 + data/custodian/CH-SG-SG-L-KHSGBK.yaml | 6 + data/custodian/CH-SG-SG-L-KS.yaml | 6 + data/custodian/CH-SG-SG-L-KSGZV.yaml | 6 + data/custodian/CH-SG-SG-L-KV.yaml | 6 + data/custodian/CH-SG-SG-L-PHSGMP.yaml | 6 + data/custodian/CH-SG-SG-L-SGZZSB.yaml | 6 + data/custodian/CH-SG-SG-L-SIAAWSHB.yaml | 9 +- data/custodian/CH-SG-SG-L-SIBFB.yaml | 6 + data/custodian/CH-SG-SG-L-SIKMKHB.yaml | 6 + data/custodian/CH-SG-SG-L-SSG.yaml | 6 + data/custodian/CH-SG-SG-L-SZBSF.yaml | 6 + data/custodian/CH-SG-SG-L-TSG.yaml | 6 + data/custodian/CH-SG-SG-L-USGHWRSIBI.yaml | 18 +- data/custodian/CH-SG-SG-M-HVSG.yaml | 6 + data/custodian/CH-SG-SG-M-KSG.yaml | 6 + ...ADSD-aero_data_services_dokumentation.yaml | 6 + data/custodian/CH-SG-SG-U-ADSD.yaml | 6 + data/custodian/CH-SG-SG-U-BB.yaml | 6 + data/custodian/CH-SG-SG-U-EMFESGB.yaml | 6 + data/custodian/CH-SG-SG-U-FVIA.yaml | 6 + data/custodian/CH-SG-SG-U-ISMPGI.yaml | 6 + data/custodian/CH-SG-SG-U-KB.yaml | 6 + data/custodian/CH-SG-SG-U-SBPSSSTAA.yaml | 6 + data/custodian/CH-SG-SG-U-SFSETMD.yaml | 9 +- data/custodian/CH-SG-SG-U-SSG.yaml | 6 + data/custodian/CH-SG-SG-U-ZPG.yaml | 6 + .../CH-SG-ST.-A-AD-archiv_dompfarrei.yaml | 6 + data/custodian/CH-SG-ST.-A-AD.yaml | 6 + data/custodian/CH-SG-ST.-L-IVUSGB.yaml | 6 + data/custodian/CH-SG-ST.-L-OOFBCSG.yaml | 6 + data/custodian/CH-SG-ST.-U-BSLSGBB.yaml | 6 + data/custodian/CH-SG-WS-A-SW.yaml | 6 + data/custodian/CH-SG-WS-L-SW.yaml | 6 + data/custodian/CH-SG-WS-L-ZZPRI.yaml | 6 + data/custodian/CH-SG-WS-U-KPKA.yaml | 6 + data/custodian/CH-SZ-PS-A-GFG.yaml | 6 + data/custodian/CH-TG-BT-A-ARKKPSMBT.yaml | 6 + ...AVB-archiv_volksschulgemeinde_burglen.yaml | 6 + data/custodian/CH-TG-ET-L-FARTABD.yaml | 6 + data/custodian/CH-TG-HBA-A-AKKPSJTH.yaml | 6 + data/custodian/CH-TG-RT-L-BAB.yaml | 6 + data/custodian/CH-TG-TT-U-EKT.yaml | 6 + data/custodian/CH-TI-LUG-U-TRDRSIR.yaml | 6 + data/custodian/CH-UR-AU-L-DAW.yaml | 6 + data/custodian/CH-VD-AM-A-ACDAM.yaml | 6 + data/custodian/CH-VD-CHA-A-ACV.yaml | 6 + data/custodian/CH-VD-CV-L-BCCV.yaml | 6 + data/custodian/CH-VD-ECU-A-ACDEV.yaml | 6 + data/custodian/CH-VD-GSM-L-GIHEGLLS.yaml | 6 + data/custodian/CH-VD-JOU-A-ACJM.yaml | 6 + data/custodian/CH-VD-L1-L-TFLB.yaml | 6 + data/custodian/CH-VD-L2-L-CCURMLB.yaml | 6 + data/custodian/CH-VD-L2-U-EHBSIC.yaml | 6 + data/custodian/CH-VD-LAU-L-BCULI.yaml | 6 + data/custodian/CH-VD-LAU-L-BCULU.yaml | 6 + data/custodian/CH-VD-SC-A-ACSLC.yaml | 6 + data/custodian/CH-VD-SV-L-CFNB.yaml | 6 + data/custodian/CH-VS-BLU-L-RGHEB.yaml | 6 + data/custodian/CH-VS-BRI-L-MWB.yaml | 6 + data/custodian/CH-VS-S1-L-CRDEPACCD.yaml | 6 + data/custodian/CH-VS-S2-A-ALES.yaml | 6 + data/custodian/CH-VS-S2-U-HSVWMHEDI.yaml | 6 + data/custodian/CH-VS-ST--L-BCSSG.yaml | 6 + data/custodian/CH-VS-VAL-L-BCSVDI.yaml | 6 + data/custodian/CH-ZH-BZ-L-LWLRIWEDEE.yaml | 6 + data/custodian/CH-ZH-EBZ-L-BE.yaml | 6 + data/custodian/CH-ZH-KZ-A-OAOK.yaml | 6 + data/custodian/CH-ZH-KZ-L-CGJIZB.yaml | 6 + data/custodian/CH-ZH-RZ-L-MSRAB.yaml | 6 + data/custodian/CH-ZH-US-L-BU.yaml | 6 + .../CH-ZH-UW-L-BU-bibliothek_uitikon.yaml | 6 + data/custodian/CH-ZH-WZ-L-BAB.yaml | 6 + data/custodian/CH-ZH-WZ-U-KZOM.yaml | 6 + scripts/geocode_from_city_name.py | 303 ++++++++++++++++++ 148 files changed, 1205 insertions(+), 58 deletions(-) create mode 100755 scripts/geocode_from_city_name.py diff --git a/data/custodian/CH-AG-BA-L-SBB.yaml b/data/custodian/CH-AG-BA-L-SBB.yaml index 733f1a26a5..160a77df69 100644 --- a/data/custodian/CH-AG-BA-L-SBB.yaml +++ b/data/custodian/CH-AG-BA-L-SBB.yaml @@ -135,13 +135,16 @@ location: postal_code: '5201' street_address: Laurstrasse 10 normalization_timestamp: '2025-12-09T13:21:15.087149+00:00' + latitude: 47.48096 + longitude: 8.20869 + geonames_id: 2661374 + geocoding_timestamp: '2025-12-09T21:28:33.985094+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Brugg google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Stadtbibliothek Brugg - rejection_reason: The source institution is 'Schweizerisches Bauernsekretariat ‒ Bibliothek' (Swiss Farmers' Secretariat - - Library). The candidate is 'Stadtbibliothek Brugg' (City Library Brugg). These are different institutions. While both - are libraries and located in the same city, Brugg, their names are distinct and refer to different governing bodies (a - national-level secretariat vs. the city). Therefore, it is not a match. + rejection_reason: The source institution is 'Schweizerisches Bauernsekretariat ‒ Bibliothek' (Swiss Farmers' Secretariat - Library). The candidate is 'Stadtbibliothek Brugg' (City Library Brugg). These are different institutions. While both are libraries and located in the same city, Brugg, their names are distinct and refer to different governing bodies (a national-level secretariat vs. the city). Therefore, it is not a match. timestamp: '2025-12-08T23:16:02.790916+00:00' youtube_status: NOT_FOUND youtube_search_query: Schweizerisches Bauernsekretariat ‒ Bibliothek official diff --git a/data/custodian/CH-AG-BAD-A-SB.yaml b/data/custodian/CH-AG-BAD-A-SB.yaml index cf2471191d..593075c594 100644 --- a/data/custodian/CH-AG-BAD-A-SB.yaml +++ b/data/custodian/CH-AG-BAD-A-SB.yaml @@ -135,11 +135,16 @@ location: postal_code: '5405' street_address: Im Langacker 16 normalization_timestamp: '2025-12-09T13:21:15.249661+00:00' + latitude: 47.45506 + longitude: 8.28474 + geonames_id: 2661043 + geocoding_timestamp: '2025-12-09T21:28:36.202147+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Dättwil google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Stadtarchiv Baden-Baden - rejection_reason: Source institution is in Baden-Dättwil, Switzerland, while the candidate is in Baden-Baden, Germany. The - country mismatch is a clear rejection criterion. + rejection_reason: Source institution is in Baden-Dättwil, Switzerland, while the candidate is in Baden-Baden, Germany. The country mismatch is a clear rejection criterion. timestamp: '2025-12-08T23:16:23.781286+00:00' youtube_status: NOT_FOUND youtube_search_query: Stadtarchiv Baden official diff --git a/data/custodian/CH-AG-DA-L-ACRLCL-abb_corporate_research_ltd_chcrca_4_library.yaml b/data/custodian/CH-AG-DA-L-ACRLCL-abb_corporate_research_ltd_chcrca_4_library.yaml index 0457b5894b..0a108f391c 100644 --- a/data/custodian/CH-AG-DA-L-ACRLCL-abb_corporate_research_ltd_chcrca_4_library.yaml +++ b/data/custodian/CH-AG-DA-L-ACRLCL-abb_corporate_research_ltd_chcrca_4_library.yaml @@ -120,17 +120,16 @@ location: region_code: AG country: CH normalization_timestamp: '2025-12-09T13:21:15.781564+00:00' + latitude: 47.45506 + longitude: 8.28474 + geonames_id: 2661043 + geocoding_timestamp: '2025-12-09T21:28:32.480214+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Dättwil google_maps_status: NO_MATCH google_maps_rejected: candidate_name: ABB Research Centre - rejection_reason: 'NAME MATCH: The candidate name ''ABB Research Centre'' is a strong partial match for the source institution''s - parent body. The source is ''Library'', a department within the ''ABB Corporate Research Centre'', while the candidate - is the centre itself. The candidate likely contains the library, but they are not the same named entity. LOCATION MATCH: - The candidate address ''Baden, Switzerland'' matches the source city ''Dättwil AG'' (Dättwil is a district of Baden). - TYPE MATCH: The candidate''s Google Place types are generic (''point_of_interest'', ''establishment'') and do not specifically - identify it as a ''library'', which is an expected type for this entity. ENTITY TYPE: The candidate represents the entire - research centre, not specifically the library department. Based on the name and type, it is not a direct match for the - ''Library'' entity.' + rejection_reason: 'NAME MATCH: The candidate name ''ABB Research Centre'' is a strong partial match for the source institution''s parent body. The source is ''Library'', a department within the ''ABB Corporate Research Centre'', while the candidate is the centre itself. The candidate likely contains the library, but they are not the same named entity. LOCATION MATCH: The candidate address ''Baden, Switzerland'' matches the source city ''Dättwil AG'' (Dättwil is a district of Baden). TYPE MATCH: The candidate''s Google Place types are generic (''point_of_interest'', ''establishment'') and do not specifically identify it as a ''library'', which is an expected type for this entity. ENTITY TYPE: The candidate represents the entire research centre, not specifically the library department. Based on the name and type, it is not a direct match for the ''Library'' entity.' timestamp: '2025-12-08T23:17:20.715304+00:00' youtube_status: NOT_FOUND youtube_search_query: ABB Corporate Research Ltd. CHCRCA. 4 ‒ Library official diff --git a/data/custodian/CH-AG-HBB-L-RCAB.yaml b/data/custodian/CH-AG-HBB-L-RCAB.yaml index 1a1dd14897..275f9f9241 100644 --- a/data/custodian/CH-AG-HBB-L-RCAB.yaml +++ b/data/custodian/CH-AG-HBB-L-RCAB.yaml @@ -126,12 +126,16 @@ location: region_code: AG country: CH normalization_timestamp: '2025-12-09T13:21:15.955998+00:00' + latitude: 47.69732 + longitude: 8.63493 + geonames_id: 2658761 + geocoding_timestamp: '2025-12-09T21:28:37.329953+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Schaffhausen google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Reichholdareal - rejection_reason: The Google Place 'Reichholdareal' does not match the institution 'Reichhold Chemie AG ‒ Bibliothek'. The - name refers to a real estate area, not a library. The Google Place types ('real_estate_agency') are a strong mismatch - for the expected library types. While the location matches, the entity itself is incorrect. + rejection_reason: The Google Place 'Reichholdareal' does not match the institution 'Reichhold Chemie AG ‒ Bibliothek'. The name refers to a real estate area, not a library. The Google Place types ('real_estate_agency') are a strong mismatch for the expected library types. While the location matches, the entity itself is incorrect. timestamp: '2025-12-08T23:17:41.954661+00:00' youtube_status: NOT_FOUND youtube_search_query: Reichhold Chemie AG ‒ Bibliothek official diff --git a/data/custodian/CH-AG-VP-L-LPLRIWEDEE.yaml b/data/custodian/CH-AG-VP-L-LPLRIWEDEE.yaml index 403ef78bc1..a4f04edd27 100644 --- a/data/custodian/CH-AG-VP-L-LPLRIWEDEE.yaml +++ b/data/custodian/CH-AG-VP-L-LPLRIWEDEE.yaml @@ -135,13 +135,16 @@ location: postal_code: '5232' street_address: Forschungsstrasse 111 normalization_timestamp: '2025-12-09T13:21:17.061022+00:00' + latitude: 47.52682 + longitude: 8.21486 + geonames_id: 2658120 + geocoding_timestamp: '2025-12-09T21:28:09.008782+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Villigen google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Paul Scherrer Institute - rejection_reason: 'REJECT. While the location matches perfectly, the names are for different entities. The source institution - is ''Lib4Ri: PSI'', a specific library. The Google candidate is ''Paul Scherrer Institute'' (PSI), the larger research - institution that *contains* the library. The Google Place type ''point_of_interest, establishment'' also lacks ''library'', - failing the type match criterion.' + rejection_reason: 'REJECT. While the location matches perfectly, the names are for different entities. The source institution is ''Lib4Ri: PSI'', a specific library. The Google candidate is ''Paul Scherrer Institute'' (PSI), the larger research institution that *contains* the library. The Google Place type ''point_of_interest, establishment'' also lacks ''library'', failing the type match criterion.' timestamp: '2025-12-08T23:19:34.522244+00:00' youtube_status: NOT_FOUND youtube_search_query: 'Lib4Ri: PSI ‒ Library for the Research Institutes within the ETH Domain: Eawag, Empa, PSI & WSL official' diff --git a/data/custodian/CH-BE-B1-A-GUBA.yaml b/data/custodian/CH-BE-B1-A-GUBA.yaml index 1ca7ae6e08..59918e1fa3 100644 --- a/data/custodian/CH-BE-B1-A-GUBA.yaml +++ b/data/custodian/CH-BE-B1-A-GUBA.yaml @@ -135,13 +135,16 @@ location: postal_code: '3000' street_address: Weltpoststrasse 20 normalization_timestamp: '2025-12-09T13:21:17.989138+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:03.375309+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Gewerkschaft Unia - Bern - rejection_reason: CONFIRMED REJECT. The Google Maps result 'Gewerkschaft Unia - Bern' refers to the main union office in - Bern, not the specific 'Bibliothek und Archiv' (Library and Archive). While it is the correct parent institution, the - names do not match the specific sub-entity being annotated. The Google Place types 'point_of_interest', 'establishment' - are too generic and do not confirm an archive function. + rejection_reason: CONFIRMED REJECT. The Google Maps result 'Gewerkschaft Unia - Bern' refers to the main union office in Bern, not the specific 'Bibliothek und Archiv' (Library and Archive). While it is the correct parent institution, the names do not match the specific sub-entity being annotated. The Google Place types 'point_of_interest', 'establishment' are too generic and do not confirm an archive function. timestamp: '2025-12-08T23:21:13.891352+00:00' youtube_status: NOT_FOUND youtube_search_query: Gewerkschaft Unia ‒ Bibliothek und Archiv official diff --git a/data/custodian/CH-BE-B2-U-SDSN.yaml b/data/custodian/CH-BE-B2-U-SDSN.yaml index 637494f655..5bfae6abdb 100644 --- a/data/custodian/CH-BE-B2-U-SDSN.yaml +++ b/data/custodian/CH-BE-B2-U-SDSN.yaml @@ -135,13 +135,16 @@ location: postal_code: '3001' street_address: Wankdorfallee 5 normalization_timestamp: '2025-12-09T13:21:18.104299+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:51.323461+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NO_MATCH google_maps_rejected: candidate_name: KEYSTONE-SDA-ATS AG - rejection_reason: Source name 'Schweizerische Depeschenagentur (sda)' matches candidate 'KEYSTONE-SDA-ATS AG'. Location - in Bern, Switzerland matches. However, the source institution is a news agency, and the candidate's Google Place types - ('point_of_interest', 'establishment') and website (www.keystone-sda.ch) confirm it is a news agency, not a heritage institution - (museum, library, archive, gallery). Type match and entity type criteria fail. + rejection_reason: Source name 'Schweizerische Depeschenagentur (sda)' matches candidate 'KEYSTONE-SDA-ATS AG'. Location in Bern, Switzerland matches. However, the source institution is a news agency, and the candidate's Google Place types ('point_of_interest', 'establishment') and website (www.keystone-sda.ch) confirm it is a news agency, not a heritage institution (museum, library, archive, gallery). Type match and entity type criteria fail. timestamp: '2025-12-08T23:21:25.451450+00:00' youtube_status: NOT_FOUND youtube_search_query: Schweizerische Depeschenagentur (sda) ‒ Nachrichtenagentur official diff --git a/data/custodian/CH-BE-B6-U-RDC.yaml b/data/custodian/CH-BE-B6-U-RDC.yaml index fba7a7dc6c..fe122ec536 100644 --- a/data/custodian/CH-BE-B6-U-RDC.yaml +++ b/data/custodian/CH-BE-B6-U-RDC.yaml @@ -135,11 +135,16 @@ location: postal_code: '3000' street_address: Hallwylstrasse 15 normalization_timestamp: '2025-12-09T13:21:18.236497+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:47.563906+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NO_MATCH google_maps_rejected: candidate_name: RISM Zentralredaktion - rejection_reason: 'REJECT: Major location mismatch. The source institution is in Bern, Switzerland, while the candidate - is in Frankfurt am Main, Germany.' + rejection_reason: 'REJECT: Major location mismatch. The source institution is in Bern, Switzerland, while the candidate is in Frankfurt am Main, Germany.' timestamp: '2025-12-08T23:21:35.895124+00:00' youtube_status: NOT_FOUND youtube_search_query: RISM Digital Center official diff --git a/data/custodian/CH-BE-B8-L-AZGRB-amt_fur_zweisprachigkeit_gesetzgebung_und_ressourc.yaml b/data/custodian/CH-BE-B8-L-AZGRB-amt_fur_zweisprachigkeit_gesetzgebung_und_ressourc.yaml index 765907a468..19de447d17 100644 --- a/data/custodian/CH-BE-B8-L-AZGRB-amt_fur_zweisprachigkeit_gesetzgebung_und_ressourc.yaml +++ b/data/custodian/CH-BE-B8-L-AZGRB-amt_fur_zweisprachigkeit_gesetzgebung_und_ressourc.yaml @@ -124,6 +124,12 @@ location: postal_code: '3000' street_address: Postgasse 68 normalization_timestamp: '2025-12-09T13:21:18.274311+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:43.315872+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NOT_FOUND google_maps_search_query: Amt für Zweisprachigkeit, Gesetzgebung und Ressourcen ‒ Bibliothek, Bern 8 google_maps_search_timestamp: '2025-12-08T23:21:37.158888+00:00' diff --git a/data/custodian/CH-BE-B8-L-AZGRB.yaml b/data/custodian/CH-BE-B8-L-AZGRB.yaml index 223910cf11..c70437de67 100644 --- a/data/custodian/CH-BE-B8-L-AZGRB.yaml +++ b/data/custodian/CH-BE-B8-L-AZGRB.yaml @@ -124,6 +124,12 @@ location: postal_code: '3000' street_address: Postgasse 68 normalization_timestamp: '2025-12-09T13:21:18.310480+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:53.368534+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NOT_FOUND google_maps_search_query: Amt für Zweisprachigkeit, Gesetzgebung und Ressourcen ‒ Bibliothek, Bern 8 google_maps_search_timestamp: '2025-12-08T23:21:38.399840+00:00' diff --git a/data/custodian/CH-BE-BER-U-EIMM.yaml b/data/custodian/CH-BE-BER-U-EIMM.yaml index 9324586a85..bf2708512f 100644 --- a/data/custodian/CH-BE-BER-U-EIMM.yaml +++ b/data/custodian/CH-BE-BER-U-EIMM.yaml @@ -135,6 +135,12 @@ location: postal_code: '3003' street_address: Lindenweg 50 normalization_timestamp: '2025-12-09T13:21:28.582893+00:00' + latitude: 46.94809 + longitude: 7.44744 + geonames_id: 2661552 + geocoding_timestamp: '2025-12-09T21:28:51.846826+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bern google_maps_status: NOT_FOUND google_maps_search_query: Eidgenössisches Institut für Metrologie METAS, Bern-Wabern google_maps_search_timestamp: '2025-12-09T05:11:58.539155+00:00' diff --git a/data/custodian/CH-BE-BIE-L-MB.yaml b/data/custodian/CH-BE-BIE-L-MB.yaml index cae6b43350..60e65e9d36 100644 --- a/data/custodian/CH-BE-BIE-L-MB.yaml +++ b/data/custodian/CH-BE-BIE-L-MB.yaml @@ -135,11 +135,16 @@ location: postal_code: '2501' street_address: Bahnhofstrasse 11 normalization_timestamp: '2025-12-09T13:21:29.996956+00:00' + latitude: 47.13713 + longitude: 7.24608 + geonames_id: 2661513 + geocoding_timestamp: '2025-12-09T21:28:51.628222+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Biel/Bienne google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Biel Music School - rejection_reason: The candidate 'Biel Music School' is identified by Google as a 'school', not a library. This does not - match the expected Google Place types or the GRP.HER.LIB ontology class. The institution is a music school. + rejection_reason: The candidate 'Biel Music School' is identified by Google as a 'school', not a library. This does not match the expected Google Place types or the GRP.HER.LIB ontology class. The institution is a music school. timestamp: '2025-12-09T06:49:50.098019+00:00' youtube_status: NOT_FOUND youtube_search_query: Musikschule Biel official diff --git a/data/custodian/CH-BL-P1-A-HASSA.yaml b/data/custodian/CH-BL-P1-A-HASSA.yaml index f5583d8180..d0f83c816b 100644 --- a/data/custodian/CH-BL-P1-A-HASSA.yaml +++ b/data/custodian/CH-BL-P1-A-HASSA.yaml @@ -130,14 +130,16 @@ location: postal_code: '4133' street_address: Rheinstrasse 52 normalization_timestamp: '2025-12-09T13:21:34.570657+00:00' + latitude: 47.52071 + longitude: 7.69356 + geonames_id: 2659147 + geocoding_timestamp: '2025-12-09T21:28:38.112799+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Pratteln google_maps_status: NO_MATCH google_maps_rejected: candidate_name: Schweizer Salinen AG - rejection_reason: The location is a very strong match, as both the source and candidate are in Pratteln and the address - corresponds to the Schweizer Salinen AG company. The names also have a clear relationship. However, there is a significant - type mismatch. The candidate's Google Place types ('wholesaler', 'food') indicate it is the main commercial company, not - its historical archive ('Historisches Archiv'). The type mismatch and the lack of specific archive-related Google Place - types are strong reasons for rejection. + rejection_reason: The location is a very strong match, as both the source and candidate are in Pratteln and the address corresponds to the Schweizer Salinen AG company. The names also have a clear relationship. However, there is a significant type mismatch. The candidate's Google Place types ('wholesaler', 'food') indicate it is the main commercial company, not its historical archive ('Historisches Archiv'). The type mismatch and the lack of specific archive-related Google Place types are strong reasons for rejection. timestamp: '2025-12-09T07:00:10.279966+00:00' youtube_status: NOT_FOUND youtube_search_query: Historisches Archiv Schweizer Salinen AG official diff --git a/data/custodian/CH-FR-RF-L-BG.yaml b/data/custodian/CH-FR-RF-L-BG.yaml index 139af7bde6..5d64b6b277 100644 --- a/data/custodian/CH-FR-RF-L-BG.yaml +++ b/data/custodian/CH-FR-RF-L-BG.yaml @@ -130,6 +130,12 @@ location: postal_code: '1680' street_address: Route d'Arruffens 17 normalization_timestamp: '2025-12-09T13:21:44.761383+00:00' + latitude: 46.69652 + longitude: 6.91898 + geonames_id: 2658982 + geocoding_timestamp: '2025-12-09T21:28:13.499255+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Romont youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de la Glâne official youtube_search_timestamp: '2025-12-09T09:08:59.185928+00:00' diff --git a/data/custodian/CH-GE-B-G-L-BB.yaml b/data/custodian/CH-GE-B-G-L-BB.yaml index 86790e13ef..8442bb5db2 100644 --- a/data/custodian/CH-GE-B-G-L-BB.yaml +++ b/data/custodian/CH-GE-B-G-L-BB.yaml @@ -124,6 +124,12 @@ location: postal_code: '1233' street_address: Rue de Bernex 311 normalization_timestamp: '2025-12-09T13:21:45.200091+00:00' + latitude: 46.1765 + longitude: 6.07544 + geonames_id: 2661547 + geocoding_timestamp: '2025-12-09T21:28:02.714302+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bernex youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de Bernex official youtube_search_timestamp: '2025-12-09T09:09:09.025932+00:00' diff --git a/data/custodian/CH-GE-CG-L-BMC.yaml b/data/custodian/CH-GE-CG-L-BMC.yaml index 535da31a94..ec20115c27 100644 --- a/data/custodian/CH-GE-CG-L-BMC.yaml +++ b/data/custodian/CH-GE-CG-L-BMC.yaml @@ -130,6 +130,12 @@ location: postal_code: '1227' street_address: Rue Jacques Dalphin 24 normalization_timestamp: '2025-12-09T13:21:45.471176+00:00' + latitude: 46.18096 + longitude: 6.13921 + geonames_id: 2661265 + geocoding_timestamp: '2025-12-09T21:28:41.683296+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Carouge youtube_status: NOT_FOUND youtube_search_query: Bibliothèque municipale de Carouge official youtube_search_timestamp: '2025-12-09T09:09:14.953779+00:00' diff --git a/data/custodian/CH-GE-CG-L-CUDEPLECB.yaml b/data/custodian/CH-GE-CG-L-CUDEPLECB.yaml index a4eb42c775..3e3345ef73 100644 --- a/data/custodian/CH-GE-CG-L-CUDEPLECB.yaml +++ b/data/custodian/CH-GE-CG-L-CUDEPLECB.yaml @@ -130,6 +130,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:45.508658+00:00' + latitude: 46.18096 + longitude: 6.13921 + geonames_id: 2661265 + geocoding_timestamp: '2025-12-09T21:28:44.006873+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Carouge youtube_status: NOT_FOUND youtube_search_query: Centre universitaire d'étude des problèmes de l'énergie (CUEPE) ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:15.604659+00:00' diff --git a/data/custodian/CH-GE-CG-L-FIOTMB.yaml b/data/custodian/CH-GE-CG-L-FIOTMB.yaml index 01b4fbc26e..fddde8af52 100644 --- a/data/custodian/CH-GE-CG-L-FIOTMB.yaml +++ b/data/custodian/CH-GE-CG-L-FIOTMB.yaml @@ -126,6 +126,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:45.547359+00:00' + latitude: 46.18096 + longitude: 6.13921 + geonames_id: 2661265 + geocoding_timestamp: '2025-12-09T21:28:55.305004+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Carouge youtube_status: NOT_FOUND youtube_search_query: Fédération internationale des organisations de travailleurs de la métallurgie ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:16.257161+00:00' diff --git a/data/custodian/CH-GE-CG-L-IBB.yaml b/data/custodian/CH-GE-CG-L-IBB.yaml index a75eb63029..7670f69c53 100644 --- a/data/custodian/CH-GE-CG-L-IBB.yaml +++ b/data/custodian/CH-GE-CG-L-IBB.yaml @@ -126,6 +126,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:45.582822+00:00' + latitude: 46.18096 + longitude: 6.13921 + geonames_id: 2661265 + geocoding_timestamp: '2025-12-09T21:28:54.536558+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Carouge youtube_status: NOT_FOUND youtube_search_query: Institut Battelle ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:16.921842+00:00' diff --git a/data/custodian/CH-GE-G-S-L-BLUGUACDEI.yaml b/data/custodian/CH-GE-G-S-L-BLUGUACDEI.yaml index 547b2b52b3..b266449d65 100644 --- a/data/custodian/CH-GE-G-S-L-BLUGUACDEI.yaml +++ b/data/custodian/CH-GE-G-S-L-BLUGUACDEI.yaml @@ -135,6 +135,12 @@ location: postal_code: '1205' street_address: Boulevard Carl-Vogt 66 normalization_timestamp: '2025-12-09T13:21:46.162438+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:54.937261+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de l'Université de Genève. Uni Arve. Centre de documentation en environnement (ISE) official youtube_search_timestamp: '2025-12-09T09:09:30.042306+00:00' diff --git a/data/custodian/CH-GE-G1-L-FERGSD.yaml b/data/custodian/CH-GE-G1-L-FERGSD.yaml index b20442ddaa..63f7b35447 100644 --- a/data/custodian/CH-GE-G1-L-FERGSD.yaml +++ b/data/custodian/CH-GE-G1-L-FERGSD.yaml @@ -130,6 +130,12 @@ location: postal_code: '1211' street_address: 98, rue de Saint-Jean normalization_timestamp: '2025-12-09T13:21:46.201286+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:23.644479+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Fédération des entreprises romandes Genève ‒ Service de documentation official youtube_search_timestamp: '2025-12-09T09:09:30.690746+00:00' diff --git a/data/custodian/CH-GE-G2-A-CŒEA.yaml b/data/custodian/CH-GE-G2-A-CŒEA.yaml index da0b1757e4..a6e46bfa26 100644 --- a/data/custodian/CH-GE-G2-A-CŒEA.yaml +++ b/data/custodian/CH-GE-G2-A-CŒEA.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: 150 route de Ferney normalization_timestamp: '2025-12-09T13:21:46.251955+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:30.194898+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Conseil œcuménique des Eglises ‒ Archives official youtube_search_timestamp: '2025-12-09T09:09:31.338849+00:00' diff --git a/data/custodian/CH-GE-G2-L-OITCD.yaml b/data/custodian/CH-GE-G2-L-OITCD.yaml index 341afbb2cb..3a8c3231b3 100644 --- a/data/custodian/CH-GE-G2-L-OITCD.yaml +++ b/data/custodian/CH-GE-G2-L-OITCD.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Route des Morillons 4 normalization_timestamp: '2025-12-09T13:21:46.297539+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:04.030142+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Organisation international du travail ‒ Centre de documentation official youtube_search_timestamp: '2025-12-09T09:09:31.985141+00:00' diff --git a/data/custodian/CH-GE-G3-A-ADEG.yaml b/data/custodian/CH-GE-G3-A-ADEG.yaml index 7ce1ed47e6..fe7b260c54 100644 --- a/data/custodian/CH-GE-G3-A-ADEG.yaml +++ b/data/custodian/CH-GE-G3-A-ADEG.yaml @@ -124,6 +124,12 @@ location: postal_code: '1211' street_address: Rue de l'Hôtel-de-Ville 1 normalization_timestamp: '2025-12-09T13:21:46.340697+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:43.117038+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Archives d'Etat de Genève official youtube_search_timestamp: '2025-12-09T09:09:32.636521+00:00' diff --git a/data/custodian/CH-GE-G3-L-BMVG.yaml b/data/custodian/CH-GE-G3-L-BMVG.yaml index ce3f885823..a9d4ca5599 100644 --- a/data/custodian/CH-GE-G3-L-BMVG.yaml +++ b/data/custodian/CH-GE-G3-L-BMVG.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Rue de la Tour de Boë 10 normalization_timestamp: '2025-12-09T13:21:46.379258+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:54.018659+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèques municipales de la Ville de Genève official youtube_search_timestamp: '2025-12-09T09:09:33.287801+00:00' diff --git a/data/custodian/CH-GE-G3-L-CDETDELCB.yaml b/data/custodian/CH-GE-G3-L-CDETDELCB.yaml index 93b6872f0d..f1317ca37d 100644 --- a/data/custodian/CH-GE-G3-L-CDETDELCB.yaml +++ b/data/custodian/CH-GE-G3-L-CDETDELCB.yaml @@ -134,6 +134,12 @@ location: postal_code: '1211' street_address: Boulevard du Pont-d'Arve 40 normalization_timestamp: '2025-12-09T13:21:46.418542+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:09.379732+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Centre d'étude, de technique et d'évaluation législatives (CETEL) Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:33.944329+00:00' diff --git a/data/custodian/CH-GE-G3-M-MDADH.yaml b/data/custodian/CH-GE-G3-M-MDADH.yaml index c0e6a7c136..82b2552b3e 100644 --- a/data/custodian/CH-GE-G3-M-MDADH.yaml +++ b/data/custodian/CH-GE-G3-M-MDADH.yaml @@ -130,6 +130,12 @@ location: postal_code: '1211' street_address: Rue Charles-Galland 2 normalization_timestamp: '2025-12-09T13:21:46.451842+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:08.203159+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Musée d'art et d'histoire official youtube_search_timestamp: '2025-12-09T09:09:34.600139+00:00' diff --git a/data/custodian/CH-GE-G3-U-E.yaml b/data/custodian/CH-GE-G3-U-E.yaml index 3464d9159e..e6b9a553ae 100644 --- a/data/custodian/CH-GE-G3-U-E.yaml +++ b/data/custodian/CH-GE-G3-U-E.yaml @@ -130,6 +130,12 @@ location: postal_code: '1211' street_address: Carrefour de Rive 1 normalization_timestamp: '2025-12-09T13:21:46.492816+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:07.113453+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: economiesuisse official youtube_search_timestamp: '2025-12-09T09:09:35.257256+00:00' diff --git a/data/custodian/CH-GE-G4-L-BLUGUAM.yaml b/data/custodian/CH-GE-G4-L-BLUGUAM.yaml index 9f51be3758..d2c825a471 100644 --- a/data/custodian/CH-GE-G4-L-BLUGUAM.yaml +++ b/data/custodian/CH-GE-G4-L-BLUGUAM.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Rue du Conseil-Général 7-9 normalization_timestamp: '2025-12-09T13:21:46.724076+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:55.906266+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de l'Université de Genève. Uni Arve. Mathématiques official youtube_search_timestamp: '2025-12-09T09:09:39.173975+00:00' diff --git a/data/custodian/CH-GE-G4-L-BLUGUCP.yaml b/data/custodian/CH-GE-G4-L-BLUGUCP.yaml index b59cddcb50..a46d33d08a 100644 --- a/data/custodian/CH-GE-G4-L-BLUGUCP.yaml +++ b/data/custodian/CH-GE-G4-L-BLUGUCP.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Rue Michel-Servet 1 normalization_timestamp: '2025-12-09T13:21:46.748739+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:20.415729+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de l'Université de Genève ‒ Uni CMU ‒ PEB official youtube_search_timestamp: '2025-12-09T09:09:39.828796+00:00' diff --git a/data/custodian/CH-GE-G4-L-BLUGUMP.yaml b/data/custodian/CH-GE-G4-L-BLUGUMP.yaml index 3649c681a8..f173d1db4d 100644 --- a/data/custodian/CH-GE-G4-L-BLUGUMP.yaml +++ b/data/custodian/CH-GE-G4-L-BLUGUMP.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Bd du Pont d'Arve 40 normalization_timestamp: '2025-12-09T13:21:46.788090+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:44.467592+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de l'Université de Genève. Uni Mail. PEB official youtube_search_timestamp: '2025-12-09T09:09:40.482571+00:00' diff --git a/data/custodian/CH-GE-G4-L-BSI.yaml b/data/custodian/CH-GE-G4-L-BSI.yaml index f3affc696f..48175ae437 100644 --- a/data/custodian/CH-GE-G4-L-BSI.yaml +++ b/data/custodian/CH-GE-G4-L-BSI.yaml @@ -126,6 +126,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:46.825643+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:11.490154+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de Sciences II official youtube_search_timestamp: '2025-12-09T09:09:41.134351+00:00' diff --git a/data/custodian/CH-GE-G4-L-BSISP.yaml b/data/custodian/CH-GE-G4-L-BSISP.yaml index b8b852f62a..a2da12e2d6 100644 --- a/data/custodian/CH-GE-G4-L-BSISP.yaml +++ b/data/custodian/CH-GE-G4-L-BSISP.yaml @@ -126,6 +126,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:46.863499+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:46.359749+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Bibliothèque de Sciences II ‒ Section de pharmacie official youtube_search_timestamp: '2025-12-09T09:09:41.776340+00:00' diff --git a/data/custodian/CH-GE-G4-L-IDHRIB.yaml b/data/custodian/CH-GE-G4-L-IDHRIB.yaml index 753f41324b..42581cf72a 100644 --- a/data/custodian/CH-GE-G4-L-IDHRIB.yaml +++ b/data/custodian/CH-GE-G4-L-IDHRIB.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: 22 boulevard des Philosophes normalization_timestamp: '2025-12-09T13:21:46.900729+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:07.790592+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Institut d'histoire de la Réformation (IHR) ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:42.445126+00:00' diff --git a/data/custodian/CH-GE-G4-L-MHRMB.yaml b/data/custodian/CH-GE-G4-L-MHRMB.yaml index bdf6b85044..85184f2e4b 100644 --- a/data/custodian/CH-GE-G4-L-MHRMB.yaml +++ b/data/custodian/CH-GE-G4-L-MHRMB.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: 22 boulevard des Philosophes normalization_timestamp: '2025-12-09T13:21:46.937847+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:21.892878+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Musée historique de la réformation (MHR) ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:43.106809+00:00' diff --git a/data/custodian/CH-GE-G4-L-UGSPLPGB.yaml b/data/custodian/CH-GE-G4-L-UGSPLPGB.yaml index a18f7e5b9d..2fdb28365b 100644 --- a/data/custodian/CH-GE-G4-L-UGSPLPGB.yaml +++ b/data/custodian/CH-GE-G4-L-UGSPLPGB.yaml @@ -126,6 +126,12 @@ location: region_code: GE country: CH normalization_timestamp: '2025-12-09T13:21:46.977281+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:50.400788+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Université de Genève ‒ Section de pharmacie ‒ Laboratoire de pharmacie galénique ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:09:43.763491+00:00' diff --git a/data/custodian/CH-GE-G4-U-CPF.yaml b/data/custodian/CH-GE-G4-U-CPF.yaml index 87ac5985b5..085713d2fb 100644 --- a/data/custodian/CH-GE-G4-U-CPF.yaml +++ b/data/custodian/CH-GE-G4-U-CPF.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: 40 bd du Pont d'Arve normalization_timestamp: '2025-12-09T13:21:47.022517+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:19.508172+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Commission du patrimoine facultaire official youtube_search_timestamp: '2025-12-09T09:09:44.408700+00:00' diff --git a/data/custodian/CH-GE-G8-A-EPGA.yaml b/data/custodian/CH-GE-G8-A-EPGA.yaml index bbf7fe9670..c5073713a0 100644 --- a/data/custodian/CH-GE-G8-A-EPGA.yaml +++ b/data/custodian/CH-GE-G8-A-EPGA.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Rue Gourgas 24 normalization_timestamp: '2025-12-09T13:21:47.065984+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:29:01.878239+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Eglise protestante de Genève ‒ Archives official youtube_search_timestamp: '2025-12-09T09:09:45.063735+00:00' diff --git a/data/custodian/CH-GE-G8-U-SEMSDSD.yaml b/data/custodian/CH-GE-G8-U-SEMSDSD.yaml index 16ab1e2d43..abb6d656a4 100644 --- a/data/custodian/CH-GE-G8-U-SEMSDSD.yaml +++ b/data/custodian/CH-GE-G8-U-SEMSDSD.yaml @@ -135,6 +135,12 @@ location: postal_code: '1211' street_address: Rue des Gazomètres 5 normalization_timestamp: '2025-12-09T13:21:47.116213+00:00' + latitude: 46.20222 + longitude: 6.14569 + geonames_id: 2660646 + geocoding_timestamp: '2025-12-09T21:28:58.350151+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Genève youtube_status: NOT_FOUND youtube_search_query: Service Ecole-Medias - Secteur Documentation (SEM Documentation) official youtube_search_timestamp: '2025-12-09T09:09:45.728507+00:00' diff --git a/data/custodian/CH-GE-PET-U-CDEPADMLAC.yaml b/data/custodian/CH-GE-PET-U-CDEPADMLAC.yaml index e49559df1a..d02af198a4 100644 --- a/data/custodian/CH-GE-PET-U-CDEPADMLAC.yaml +++ b/data/custodian/CH-GE-PET-U-CDEPADMLAC.yaml @@ -1,6 +1,5 @@ original_entry: - name: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ Centre - de documentation + name: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ Centre de documentation institution_type: UNKNOWN source: CH-Annotator (switzerland_isil_ch_annotator.yaml) identifiers: @@ -44,8 +43,7 @@ ghcid: valid_to: '2025-12-07T02:33:41.963940+00:00' custodian_name: claim_type: custodian_name - claim_value: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ - Centre de documentation + claim_value: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ Centre de documentation source_type: ch_annotator identifiers: - identifier_scheme: GHCID @@ -101,8 +99,7 @@ ch_annotator: verified_by: entity_claims: - claim_type: full_name - claim_value: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) - ‒ Centre de documentation + claim_value: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ Centre de documentation property_uri: skos:prefLabel provenance: namespace: glam @@ -133,7 +130,12 @@ location: postal_code: '1213' street_address: Avenue Louis-Bertrand 38 normalization_timestamp: '2025-12-09T13:21:52.645849+00:00' + latitude: 45.98748 + longitude: 7.17722 + geonames_id: 8533412 + geocoding_timestamp: '2025-12-09T21:28:58.287944+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Chez Petit (Liddes) youtube_status: NOT_FOUND -youtube_search_query: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) - ‒ Centre de documentation official +youtube_search_query: Centre d'enseignement professionnel et artisanal - Domaine de la mécanique et de l'automobile (CEPTA-DMA) ‒ Centre de documentation official youtube_search_timestamp: '2025-12-09T09:11:38.666544+00:00' diff --git a/data/custodian/CH-GE-PRE-L-BMPC.yaml b/data/custodian/CH-GE-PRE-L-BMPC.yaml index 60ccb96181..f256d05c04 100644 --- a/data/custodian/CH-GE-PRE-L-BMPC.yaml +++ b/data/custodian/CH-GE-PRE-L-BMPC.yaml @@ -135,6 +135,12 @@ location: postal_code: '1292' street_address: Chemin de la Fontaine 77 normalization_timestamp: '2025-12-09T13:21:52.768385+00:00' + latitude: 46.23549 + longitude: 6.13947 + geonames_id: 2659141 + geocoding_timestamp: '2025-12-09T21:28:57.232079+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Pregny youtube_status: NOT_FOUND youtube_search_query: Bibliothèque municipale de Pregny-Chambésy official youtube_search_timestamp: '2025-12-09T09:11:41.272691+00:00' diff --git a/data/custodian/CH-GR-CUI-A-RSRRDA.yaml b/data/custodian/CH-GR-CUI-A-RSRRDA.yaml index 73e0edae02..e033df38bc 100644 --- a/data/custodian/CH-GR-CUI-A-RSRRDA.yaml +++ b/data/custodian/CH-GR-CUI-A-RSRRDA.yaml @@ -135,6 +135,12 @@ location: postal_code: '7002' street_address: Via de Masans 2 normalization_timestamp: '2025-12-09T13:21:53.772382+00:00' + latitude: 46.84986 + longitude: 9.53287 + geonames_id: 2661169 + geocoding_timestamp: '2025-12-09T21:28:34.678270+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Chur youtube_status: NOT_FOUND youtube_search_query: Radiotelevisiun Svizra Rumantscha RTR ‒ documentaziun + archiv official youtube_search_timestamp: '2025-12-09T09:12:03.571294+00:00' diff --git a/data/custodian/CH-GR-DIS-L-BR.yaml b/data/custodian/CH-GR-DIS-L-BR.yaml index 6816246d5b..d0bc31020a 100644 --- a/data/custodian/CH-GR-DIS-L-BR.yaml +++ b/data/custodian/CH-GR-DIS-L-BR.yaml @@ -124,6 +124,12 @@ location: postal_code: '7180' street_address: Via Claustra 1 normalization_timestamp: '2025-12-09T13:21:53.961335+00:00' + latitude: 46.70341 + longitude: 8.8509 + geonames_id: 2661009 + geocoding_timestamp: '2025-12-09T21:29:00.469171+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Disentis youtube_status: NOT_FOUND youtube_search_query: Biblioteca Romontscha official youtube_search_timestamp: '2025-12-09T09:12:08.157625+00:00' diff --git a/data/custodian/CH-GR-DIS-U-K.yaml b/data/custodian/CH-GR-DIS-U-K.yaml index 89b07dfb9f..3a96d975eb 100644 --- a/data/custodian/CH-GR-DIS-U-K.yaml +++ b/data/custodian/CH-GR-DIS-U-K.yaml @@ -130,6 +130,12 @@ location: postal_code: '7180' street_address: Kloster normalization_timestamp: '2025-12-09T13:21:54.000544+00:00' + latitude: 46.70341 + longitude: 8.8509 + geonames_id: 2661009 + geocoding_timestamp: '2025-12-09T21:28:31.201522+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Disentis youtube_status: NOT_FOUND youtube_search_query: Klosterbibliothek official youtube_search_timestamp: '2025-12-09T09:12:08.806850+00:00' diff --git a/data/custodian/CH-GR-DOM-L-GD.yaml b/data/custodian/CH-GR-DOM-L-GD.yaml index b1d08b46b5..ed58a93164 100644 --- a/data/custodian/CH-GR-DOM-L-GD.yaml +++ b/data/custodian/CH-GR-DOM-L-GD.yaml @@ -135,6 +135,12 @@ location: postal_code: '7013' street_address: Tircal 14 normalization_timestamp: '2025-12-09T13:21:54.039424+00:00' + latitude: 46.83483 + longitude: 9.45075 + geonames_id: 2661001 + geocoding_timestamp: '2025-12-09T21:28:37.939821+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Domat youtube_status: NOT_FOUND youtube_search_query: Gemeindebibliothek Domat official youtube_search_timestamp: '2025-12-09T09:12:09.481086+00:00' diff --git a/data/custodian/CH-GR-DOM-U-ECAID.yaml b/data/custodian/CH-GR-DOM-U-ECAID.yaml index e32daa5908..3a324c59e3 100644 --- a/data/custodian/CH-GR-DOM-U-ECAID.yaml +++ b/data/custodian/CH-GR-DOM-U-ECAID.yaml @@ -128,6 +128,12 @@ location: country: CH postal_code: '7013' normalization_timestamp: '2025-12-09T13:21:54.077425+00:00' + latitude: 46.83483 + longitude: 9.45075 + geonames_id: 2661001 + geocoding_timestamp: '2025-12-09T21:28:12.507802+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Domat youtube_status: NOT_FOUND youtube_search_query: EMS-Chemie AG ‒ Information und Dokumentation official youtube_search_timestamp: '2025-12-09T09:12:10.133906+00:00' diff --git a/data/custodian/CH-GR-SG-A-BA.yaml b/data/custodian/CH-GR-SG-A-BA.yaml index b0b26cf256..21e4a16ec8 100644 --- a/data/custodian/CH-GR-SG-A-BA.yaml +++ b/data/custodian/CH-GR-SG-A-BA.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Klosterhof 6b normalization_timestamp: '2025-12-09T13:21:54.568618+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:47.800124+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Bischöfliches Archiv official youtube_search_timestamp: '2025-12-09T09:12:19.259507+00:00' diff --git a/data/custodian/CH-GR-SM-U-NH.yaml b/data/custodian/CH-GR-SM-U-NH.yaml index bb3a7a2664..1dcb553110 100644 --- a/data/custodian/CH-GR-SM-U-NH.yaml +++ b/data/custodian/CH-GR-SM-U-NH.yaml @@ -135,6 +135,12 @@ location: postal_code: '7514' street_address: Via da Marias 67 normalization_timestamp: '2025-12-09T13:21:54.686010+00:00' + latitude: 46.42886 + longitude: 9.76364 + geonames_id: 2658641 + geocoding_timestamp: '2025-12-09T21:28:46.873585+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sils-Segl Maria youtube_status: NOT_FOUND youtube_search_query: Nietzsche-Haus official youtube_search_timestamp: '2025-12-09T09:12:21.865290+00:00' diff --git a/data/custodian/CH-GR-SSM-A-GS.yaml b/data/custodian/CH-GR-SSM-A-GS.yaml index 7b215df384..56ae6ae1d0 100644 --- a/data/custodian/CH-GR-SSM-A-GS.yaml +++ b/data/custodian/CH-GR-SSM-A-GS.yaml @@ -130,6 +130,12 @@ location: postal_code: '7514' street_address: Via da Marias 93 normalization_timestamp: '2025-12-09T13:21:54.728655+00:00' + latitude: 46.70041 + longitude: 9.45404 + geonames_id: 2658590 + geocoding_timestamp: '2025-12-09T21:28:32.593170+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sils im Domleschg youtube_status: NOT_FOUND youtube_search_query: Gemeindearchiv Sils i. E. official youtube_search_timestamp: '2025-12-09T09:12:22.518807+00:00' diff --git a/data/custodian/CH-GR-SSM-L-BE.yaml b/data/custodian/CH-GR-SSM-L-BE.yaml index 7902339cd1..7551b0b415 100644 --- a/data/custodian/CH-GR-SSM-L-BE.yaml +++ b/data/custodian/CH-GR-SSM-L-BE.yaml @@ -124,6 +124,12 @@ location: postal_code: '7514' street_address: Via da Baselgia 46 normalization_timestamp: '2025-12-09T13:21:54.766773+00:00' + latitude: 46.70041 + longitude: 9.45404 + geonames_id: 2658590 + geocoding_timestamp: '2025-12-09T21:28:18.733606+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sils im Domleschg youtube_status: NOT_FOUND youtube_search_query: Biblioteca Engiadinaisa official youtube_search_timestamp: '2025-12-09T09:12:23.164795+00:00' diff --git a/data/custodian/CH-LU-L7-A-HVZ.yaml b/data/custodian/CH-LU-L7-A-HVZ.yaml index d12d3602ca..f7924a5823 100644 --- a/data/custodian/CH-LU-L7-A-HVZ.yaml +++ b/data/custodian/CH-LU-L7-A-HVZ.yaml @@ -130,6 +130,12 @@ location: postal_code: '6000' street_address: Schützenstrasse 9 normalization_timestamp: '2025-12-09T13:21:55.916209+00:00' + latitude: 47.05048 + longitude: 8.30635 + geonames_id: 2659811 + geocoding_timestamp: '2025-12-09T21:28:47.647348+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Luzern youtube_status: NOT_FOUND youtube_search_query: Historischer Verein Zentralschweiz official youtube_search_timestamp: '2025-12-09T09:12:48.707045+00:00' diff --git a/data/custodian/CH-SG-BS-L-BBS.yaml b/data/custodian/CH-SG-BS-L-BBS.yaml index ef2d1de9ea..f8ace19f5c 100644 --- a/data/custodian/CH-SG-BS-L-BBS.yaml +++ b/data/custodian/CH-SG-BS-L-BBS.yaml @@ -124,6 +124,12 @@ location: postal_code: '9470' street_address: Kirchgasse 2 normalization_timestamp: '2025-12-09T13:22:01.405871+00:00' + latitude: 47.16743 + longitude: 9.47794 + geonames_id: 2661349 + geocoding_timestamp: '2025-12-09T21:28:32.754644+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Buchs youtube_status: NOT_FOUND youtube_search_query: Bibliothek Buchs SG official youtube_search_timestamp: '2025-12-09T09:14:54.779597+00:00' diff --git a/data/custodian/CH-SG-BS-L-OOFBCB.yaml b/data/custodian/CH-SG-BS-L-OOFBCB.yaml index ac422b82dd..2faaeaf0f5 100644 --- a/data/custodian/CH-SG-BS-L-OOFBCB.yaml +++ b/data/custodian/CH-SG-BS-L-OOFBCB.yaml @@ -135,6 +135,12 @@ location: postal_code: '9471' street_address: Werdenbergstrasse 4 normalization_timestamp: '2025-12-09T13:22:01.443673+00:00' + latitude: 47.16743 + longitude: 9.47794 + geonames_id: 2661349 + geocoding_timestamp: '2025-12-09T21:28:03.920757+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Buchs youtube_status: NOT_FOUND youtube_search_query: OST Ostschweizer Fachhochschule ‒ Bibliothek Campus Buchs official youtube_search_timestamp: '2025-12-09T09:14:55.432766+00:00' diff --git a/data/custodian/CH-SG-KS-A-GK.yaml b/data/custodian/CH-SG-KS-A-GK.yaml index 042c0779e3..f7f842dafd 100644 --- a/data/custodian/CH-SG-KS-A-GK.yaml +++ b/data/custodian/CH-SG-KS-A-GK.yaml @@ -130,6 +130,12 @@ location: postal_code: '9533' street_address: Gähwilerstrasse 1 normalization_timestamp: '2025-12-09T13:22:01.853694+00:00' + latitude: 47.41159 + longitude: 9.0402 + geonames_id: 2660155 + geocoding_timestamp: '2025-12-09T21:28:41.356918+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Kirchberg youtube_status: NOT_FOUND youtube_search_query: Gemeindearchiv Kirchberg official youtube_search_timestamp: '2025-12-09T09:15:04.616084+00:00' diff --git a/data/custodian/CH-SG-OS-U-HSS.yaml b/data/custodian/CH-SG-OS-U-HSS.yaml index b253041f28..8451358070 100644 --- a/data/custodian/CH-SG-OS-U-HSS.yaml +++ b/data/custodian/CH-SG-OS-U-HSS.yaml @@ -130,6 +130,12 @@ location: postal_code: '9463' street_address: Buchenstrasse 4 normalization_timestamp: '2025-12-09T13:22:02.033394+00:00' + latitude: 47.32088 + longitude: 9.56808 + geonames_id: 2659357 + geocoding_timestamp: '2025-12-09T21:28:12.385016+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Oberriet youtube_status: NOT_FOUND youtube_search_query: Hedwig Scherrer-Stiftung official youtube_search_timestamp: '2025-12-09T09:15:07.885362+00:00' diff --git a/data/custodian/CH-SG-RAP-L-SRJ.yaml b/data/custodian/CH-SG-RAP-L-SRJ.yaml index b1692adaa4..ec1c1c210c 100644 --- a/data/custodian/CH-SG-RAP-L-SRJ.yaml +++ b/data/custodian/CH-SG-RAP-L-SRJ.yaml @@ -135,6 +135,12 @@ location: postal_code: '8640' street_address: Klaus-Gebert-Strasse 5 normalization_timestamp: '2025-12-09T13:22:02.122278+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:29:00.656992+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Stadtbibliothek Rapperswil-Jona official youtube_search_timestamp: '2025-12-09T09:15:09.834567+00:00' diff --git a/data/custodian/CH-SG-RS-A-ASLA-archiv_fur_schweizer_landschaftsarchitektur_asla.yaml b/data/custodian/CH-SG-RS-A-ASLA-archiv_fur_schweizer_landschaftsarchitektur_asla.yaml index afcfcaa051..86b8f906c7 100644 --- a/data/custodian/CH-SG-RS-A-ASLA-archiv_fur_schweizer_landschaftsarchitektur_asla.yaml +++ b/data/custodian/CH-SG-RS-A-ASLA-archiv_fur_schweizer_landschaftsarchitektur_asla.yaml @@ -124,6 +124,12 @@ location: postal_code: '8640' street_address: Oberseestrasse 10 normalization_timestamp: '2025-12-09T13:22:02.253087+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:29:01.735576+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Archiv für Schweizer Landschaftsarchitektur ASLA official youtube_search_timestamp: '2025-12-09T09:15:11.785783+00:00' diff --git a/data/custodian/CH-SG-RS-A-ASLA.yaml b/data/custodian/CH-SG-RS-A-ASLA.yaml index 5672de65d1..3448a144dc 100644 --- a/data/custodian/CH-SG-RS-A-ASLA.yaml +++ b/data/custodian/CH-SG-RS-A-ASLA.yaml @@ -124,6 +124,12 @@ location: postal_code: '8640' street_address: Oberseestrasse 10 normalization_timestamp: '2025-12-09T13:22:02.290174+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:28:21.167968+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Archiv für Schweizer Landschaftsarchitektur ASLA official youtube_search_timestamp: '2025-12-09T09:15:12.434482+00:00' diff --git a/data/custodian/CH-SG-SG-A-AFGSO-archiv_fur_frauen_geschlechter_und_sozialgeschicht.yaml b/data/custodian/CH-SG-SG-A-AFGSO-archiv_fur_frauen_geschlechter_und_sozialgeschicht.yaml index e06c95c677..f87765d53a 100644 --- a/data/custodian/CH-SG-SG-A-AFGSO-archiv_fur_frauen_geschlechter_und_sozialgeschicht.yaml +++ b/data/custodian/CH-SG-SG-A-AFGSO-archiv_fur_frauen_geschlechter_und_sozialgeschicht.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Florastrasse 6 normalization_timestamp: '2025-12-09T13:22:02.328985+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:41.404556+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv für Frauen-, Geschlechter- und Sozialgeschichte Ostschweiz official youtube_search_timestamp: '2025-12-09T09:15:13.079638+00:00' diff --git a/data/custodian/CH-SG-SG-A-AFGSO.yaml b/data/custodian/CH-SG-SG-A-AFGSO.yaml index e2cf713f36..3a1e4c3095 100644 --- a/data/custodian/CH-SG-SG-A-AFGSO.yaml +++ b/data/custodian/CH-SG-SG-A-AFGSO.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Florastrasse 6 normalization_timestamp: '2025-12-09T13:22:02.365263+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:29:02.895106+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv für Frauen-, Geschlechter- und Sozialgeschichte Ostschweiz official youtube_search_timestamp: '2025-12-09T09:15:13.731173+00:00' diff --git a/data/custodian/CH-SG-SG-A-AKA-archiv_der_katholischen_administration.yaml b/data/custodian/CH-SG-SG-A-AKA-archiv_der_katholischen_administration.yaml index 5bb2c7aba2..ff0a932f82 100644 --- a/data/custodian/CH-SG-SG-A-AKA-archiv_der_katholischen_administration.yaml +++ b/data/custodian/CH-SG-SG-A-AKA-archiv_der_katholischen_administration.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Klosterhof 6a normalization_timestamp: '2025-12-09T13:22:02.400851+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:29:01.176926+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv der Katholischen Administration official youtube_search_timestamp: '2025-12-09T09:15:14.378181+00:00' diff --git a/data/custodian/CH-SG-SG-A-AKA.yaml b/data/custodian/CH-SG-SG-A-AKA.yaml index 7c53e4335e..177eac9baa 100644 --- a/data/custodian/CH-SG-SG-A-AKA.yaml +++ b/data/custodian/CH-SG-SG-A-AKA.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Klosterhof 6a normalization_timestamp: '2025-12-09T13:22:02.467089+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:55.075525+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv der Katholischen Administration official youtube_search_timestamp: '2025-12-09T09:15:15.029140+00:00' diff --git a/data/custodian/CH-SG-SG-A-SKSG.yaml b/data/custodian/CH-SG-SG-A-SKSG.yaml index df04f08b85..94703d3882 100644 --- a/data/custodian/CH-SG-SG-A-SKSG.yaml +++ b/data/custodian/CH-SG-SG-A-SKSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9001' street_address: Regierungsgebäude normalization_timestamp: '2025-12-09T13:22:02.577718+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:22.755008+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Staatsarchiv des Kantons St.Gallen official youtube_search_timestamp: '2025-12-09T09:15:15.690330+00:00' diff --git a/data/custodian/CH-SG-SG-A-SSG.yaml b/data/custodian/CH-SG-SG-A-SSG.yaml index 2abd437ff6..bf223ceaf5 100644 --- a/data/custodian/CH-SG-SG-A-SSG.yaml +++ b/data/custodian/CH-SG-SG-A-SSG.yaml @@ -130,6 +130,12 @@ location: postal_code: '9001' street_address: Klosterhof 1 normalization_timestamp: '2025-12-09T13:22:02.617634+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:42.794940+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Stiftsarchiv St. Gallen official youtube_search_timestamp: '2025-12-09T09:15:16.351471+00:00' diff --git a/data/custodian/CH-SG-SG-A-USGH.yaml b/data/custodian/CH-SG-SG-A-USGH.yaml index abb4b4a107..37813b6706 100644 --- a/data/custodian/CH-SG-SG-A-USGH.yaml +++ b/data/custodian/CH-SG-SG-A-USGH.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 50 normalization_timestamp: '2025-12-09T13:22:02.652856+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:48.739456+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Universitätsarchiv St. Gallen (HSG) official youtube_search_timestamp: '2025-12-09T09:15:16.995408+00:00' diff --git a/data/custodian/CH-SG-SG-L-FAHFHB.yaml b/data/custodian/CH-SG-SG-L-FAHFHB.yaml index 7f717230e8..6e1391c2f0 100644 --- a/data/custodian/CH-SG-SG-L-FAHFHB.yaml +++ b/data/custodian/CH-SG-SG-L-FAHFHB.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Bodanstrasse 8 normalization_timestamp: '2025-12-09T13:22:02.686676+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:33.554104+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Forschungsinstitut für Absatz und Handel (FAH-HSG) ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:17.640745+00:00' diff --git a/data/custodian/CH-SG-SG-L-FFW.yaml b/data/custodian/CH-SG-SG-L-FFW.yaml index 7767d70390..8615ce22ad 100644 --- a/data/custodian/CH-SG-SG-L-FFW.yaml +++ b/data/custodian/CH-SG-SG-L-FFW.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Davidstr. 42 normalization_timestamp: '2025-12-09T13:22:02.722795+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:13.552425+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Frauenbibliothek und Fonothek Wyborada official youtube_search_timestamp: '2025-12-09T09:15:18.303459+00:00' diff --git a/data/custodian/CH-SG-SG-L-IAAIHB.yaml b/data/custodian/CH-SG-SG-L-IAAIHB.yaml index b37bbacb2c..6ac67fc2e3 100644 --- a/data/custodian/CH-SG-SG-L-IAAIHB.yaml +++ b/data/custodian/CH-SG-SG-L-IAAIHB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:02.759503+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:24.349209+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Agrarökonomie und Agrarrecht IAA-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:18.952795+00:00' diff --git a/data/custodian/CH-SG-SG-L-IEWREHB.yaml b/data/custodian/CH-SG-SG-L-IEWREHB.yaml index 12b0829a07..f30d5a5d8d 100644 --- a/data/custodian/CH-SG-SG-L-IEWREHB.yaml +++ b/data/custodian/CH-SG-SG-L-IEWREHB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:02.794948+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:29:02.278867+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Europarecht, Wirtschaftsrecht und Rechtsvergleichung EUR-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:19.595429+00:00' diff --git a/data/custodian/CH-SG-SG-L-IFFIHB.yaml b/data/custodian/CH-SG-SG-L-IFFIHB.yaml index 71b15dfbca..72c55dd601 100644 --- a/data/custodian/CH-SG-SG-L-IFFIHB.yaml +++ b/data/custodian/CH-SG-SG-L-IFFIHB.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Varnbüelstrasse 19 normalization_timestamp: '2025-12-09T13:22:02.834014+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:46.036449+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Finanzwissenschaft und Finanzrecht (IFF-HSG) ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:20.251883+00:00' diff --git a/data/custodian/CH-SG-SG-L-IPIHB.yaml b/data/custodian/CH-SG-SG-L-IPIHB.yaml index 4574d7b27b..9dd0709076 100644 --- a/data/custodian/CH-SG-SG-L-IPIHB.yaml +++ b/data/custodian/CH-SG-SG-L-IPIHB.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 45 normalization_timestamp: '2025-12-09T13:22:02.871647+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:01.776833+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Politikwissenschaft (IPW-HSG) ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:20.904244+00:00' diff --git a/data/custodian/CH-SG-SG-L-IRRIHB.yaml b/data/custodian/CH-SG-SG-L-IRRIHB.yaml index 0c0af5a19e..ac34973e60 100644 --- a/data/custodian/CH-SG-SG-L-IRRIHB.yaml +++ b/data/custodian/CH-SG-SG-L-IRRIHB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:02.907427+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:47.995490+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Rechtswissenschaft und Rechtspraxis IRP-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:21.557204+00:00' diff --git a/data/custodian/CH-SG-SG-L-IWIHB-institut_fur_wirtschaftspadagogik_iwp_hsg_biblioth.yaml b/data/custodian/CH-SG-SG-L-IWIHB-institut_fur_wirtschaftspadagogik_iwp_hsg_biblioth.yaml index 955db7de4d..243b6f475b 100644 --- a/data/custodian/CH-SG-SG-L-IWIHB-institut_fur_wirtschaftspadagogik_iwp_hsg_biblioth.yaml +++ b/data/custodian/CH-SG-SG-L-IWIHB-institut_fur_wirtschaftspadagogik_iwp_hsg_biblioth.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 40a normalization_timestamp: '2025-12-09T13:22:02.943191+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:39.427075+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Wirtschaftspädagogik IWP-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:22.203446+00:00' diff --git a/data/custodian/CH-SG-SG-L-IWIHB.yaml b/data/custodian/CH-SG-SG-L-IWIHB.yaml index 511e98ad9f..4a42e6a18f 100644 --- a/data/custodian/CH-SG-SG-L-IWIHB.yaml +++ b/data/custodian/CH-SG-SG-L-IWIHB.yaml @@ -130,6 +130,12 @@ location: postal_code: '9010' street_address: Guisanstrasse 11 normalization_timestamp: '2025-12-09T13:22:02.980223+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:42.521126+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Wirtschaftsethik (IWE-HSG) ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:22.857058+00:00' diff --git a/data/custodian/CH-SG-SG-L-KHSGBK.yaml b/data/custodian/CH-SG-SG-L-KHSGBK.yaml index 0a1051421f..6c4c277a78 100644 --- a/data/custodian/CH-SG-SG-L-KHSGBK.yaml +++ b/data/custodian/CH-SG-SG-L-KHSGBK.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Davidstrasse 40 normalization_timestamp: '2025-12-09T13:22:03.017468+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:49.768612+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kunst Halle St. Gallen ‒ Bibliothek und Künstlerdokumentation official youtube_search_timestamp: '2025-12-09T09:15:23.510104+00:00' diff --git a/data/custodian/CH-SG-SG-L-KS.yaml b/data/custodian/CH-SG-SG-L-KS.yaml index e177a3f84b..73e4250514 100644 --- a/data/custodian/CH-SG-SG-L-KS.yaml +++ b/data/custodian/CH-SG-SG-L-KS.yaml @@ -135,6 +135,12 @@ location: postal_code: '9014' street_address: Sitterltalstrasse 34 normalization_timestamp: '2025-12-09T13:22:03.055646+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:02.065778+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kunstbibliothek ‒ Sitterwerk official youtube_search_timestamp: '2025-12-09T09:15:24.161455+00:00' diff --git a/data/custodian/CH-SG-SG-L-KSGZV.yaml b/data/custodian/CH-SG-SG-L-KSGZV.yaml index 97cbc5451a..6def9efd70 100644 --- a/data/custodian/CH-SG-SG-L-KSGZV.yaml +++ b/data/custodian/CH-SG-SG-L-KSGZV.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:03.091819+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:33.646143+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kantonsbibliothek St. Gallen ‒ Zweigstelle Verwaltungsbibliothek official youtube_search_timestamp: '2025-12-09T09:15:24.817051+00:00' diff --git a/data/custodian/CH-SG-SG-L-KV.yaml b/data/custodian/CH-SG-SG-L-KV.yaml index 627b96a5fc..b48504ec75 100644 --- a/data/custodian/CH-SG-SG-L-KV.yaml +++ b/data/custodian/CH-SG-SG-L-KV.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Notkerstrasse 22 normalization_timestamp: '2025-12-09T13:22:03.130087+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:43.852556+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kantonsbibliothek Vadiana official youtube_search_timestamp: '2025-12-09T09:15:25.474030+00:00' diff --git a/data/custodian/CH-SG-SG-L-PHSGMP.yaml b/data/custodian/CH-SG-SG-L-PHSGMP.yaml index 24ff514e50..2ef971927e 100644 --- a/data/custodian/CH-SG-SG-L-PHSGMP.yaml +++ b/data/custodian/CH-SG-SG-L-PHSGMP.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Notkerstrasse 27 normalization_timestamp: '2025-12-09T13:22:03.170462+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:04.738913+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Pädagogische Hochschule St.Gallen - medienverbund.phsg official youtube_search_timestamp: '2025-12-09T09:15:26.134077+00:00' diff --git a/data/custodian/CH-SG-SG-L-SGZZSB.yaml b/data/custodian/CH-SG-SG-L-SGZZSB.yaml index a3d8b30a45..d78f3c1784 100644 --- a/data/custodian/CH-SG-SG-L-SGZZSB.yaml +++ b/data/custodian/CH-SG-SG-L-SGZZSB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:03.252954+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:58.454751+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: St. Galler Zentrum für Zukunftsforschung SGZZ ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:27.455995+00:00' diff --git a/data/custodian/CH-SG-SG-L-SIAAWSHB.yaml b/data/custodian/CH-SG-SG-L-SIAAWSHB.yaml index bc1c98ade0..3fdb8513d8 100644 --- a/data/custodian/CH-SG-SG-L-SIAAWSHB.yaml +++ b/data/custodian/CH-SG-SG-L-SIAAWSHB.yaml @@ -130,7 +130,12 @@ location: postal_code: '9000' street_address: Bodanstrasse 8 normalization_timestamp: '2025-12-09T13:22:03.287457+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:57.831056+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND -youtube_search_query: Schweizerisches Institut für Aussenwirtschaft und Angewandte Wirtschaftsforschung SIAW-HSG ‒ Bibliothek - official +youtube_search_query: Schweizerisches Institut für Aussenwirtschaft und Angewandte Wirtschaftsforschung SIAW-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:28.111268+00:00' diff --git a/data/custodian/CH-SG-SG-L-SIBFB.yaml b/data/custodian/CH-SG-SG-L-SIBFB.yaml index d51f61d7a0..8cedf62bd6 100644 --- a/data/custodian/CH-SG-SG-L-SIBFB.yaml +++ b/data/custodian/CH-SG-SG-L-SIBFB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:03.326003+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:10.408998+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Schweizerisches Institut für Banken und Finanzen ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:28.761486+00:00' diff --git a/data/custodian/CH-SG-SG-L-SIKMKHB.yaml b/data/custodian/CH-SG-SG-L-SIKMKHB.yaml index 3eb21b6013..2bcbe76fb8 100644 --- a/data/custodian/CH-SG-SG-L-SIKMKHB.yaml +++ b/data/custodian/CH-SG-SG-L-SIKMKHB.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 40a normalization_timestamp: '2025-12-09T13:22:03.365509+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:52.709223+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Schweizerisches Institut für Klein- und Mittelunternehmen KMU-HSG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:29.422762+00:00' diff --git a/data/custodian/CH-SG-SG-L-SSG.yaml b/data/custodian/CH-SG-SG-L-SSG.yaml index 9ee852add2..d5401cce74 100644 --- a/data/custodian/CH-SG-SG-L-SSG.yaml +++ b/data/custodian/CH-SG-SG-L-SSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Katharinengasse 11 normalization_timestamp: '2025-12-09T13:22:03.403918+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:59.139203+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Stadtbibliothek St. Gallen official youtube_search_timestamp: '2025-12-09T09:15:30.079255+00:00' diff --git a/data/custodian/CH-SG-SG-L-SZBSF.yaml b/data/custodian/CH-SG-SG-L-SZBSF.yaml index 129fe36588..1a3963a550 100644 --- a/data/custodian/CH-SG-SG-L-SZBSF.yaml +++ b/data/custodian/CH-SG-SG-L-SZBSF.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Schützengasse 4 normalization_timestamp: '2025-12-09T13:22:03.436534+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:29:00.613552+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Schweizerischer Zentralverein für das Blindenwesen SZBLIND ‒ Fachbibliothek official youtube_search_timestamp: '2025-12-09T09:15:30.738830+00:00' diff --git a/data/custodian/CH-SG-SG-L-TSG.yaml b/data/custodian/CH-SG-SG-L-TSG.yaml index b9ed48fb37..9a4dc1e58e 100644 --- a/data/custodian/CH-SG-SG-L-TSG.yaml +++ b/data/custodian/CH-SG-SG-L-TSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Vadianstrasse 2 normalization_timestamp: '2025-12-09T13:22:03.517618+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:11.341452+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Textilbibliothek St. Gallen official youtube_search_timestamp: '2025-12-09T09:15:31.390348+00:00' diff --git a/data/custodian/CH-SG-SG-L-USGHWRSIBI.yaml b/data/custodian/CH-SG-SG-L-USGHWRSIBI.yaml index 10fbfe928f..2b1231b92d 100644 --- a/data/custodian/CH-SG-SG-L-USGHWRSIBI.yaml +++ b/data/custodian/CH-SG-SG-L-USGHWRSIBI.yaml @@ -1,6 +1,5 @@ original_entry: - name: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen - und Informatik (HSG) ‒ Bibliothek + name: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen und Informatik (HSG) ‒ Bibliothek institution_type: LIBRARY source: CH-Annotator (switzerland_isil_ch_annotator.yaml) identifiers: @@ -48,8 +47,7 @@ ghcid: valid_to: '2025-12-07T01:49:41.598722+00:00' custodian_name: claim_type: custodian_name - claim_value: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen - und Informatik (HSG) ‒ Bibliothek + claim_value: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen und Informatik (HSG) ‒ Bibliothek source_type: ch_annotator identifiers: - identifier_scheme: GHCID @@ -106,8 +104,7 @@ ch_annotator: verified_by: entity_claims: - claim_type: full_name - claim_value: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen - und Informatik (HSG) ‒ Bibliothek + claim_value: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen und Informatik (HSG) ‒ Bibliothek property_uri: skos:prefLabel provenance: namespace: glam @@ -138,7 +135,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 50 normalization_timestamp: '2025-12-09T13:22:03.598871+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:28.999282+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND -youtube_search_query: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale - Beziehungen und Informatik (HSG) ‒ Bibliothek official +youtube_search_query: Universität St.Gallen – Hochschule für Wirtschafts-, Rechts- und Sozialwissenschaften, Internationale Beziehungen und Informatik (HSG) ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:32.035850+00:00' diff --git a/data/custodian/CH-SG-SG-M-HVSG.yaml b/data/custodian/CH-SG-SG-M-HVSG.yaml index 82b2d2fd91..17df0b0955 100644 --- a/data/custodian/CH-SG-SG-M-HVSG.yaml +++ b/data/custodian/CH-SG-SG-M-HVSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Museumsstrasse 50 normalization_timestamp: '2025-12-09T13:22:03.634593+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:31.878766+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Historisches und Völkerkundemuseum St.Gallen official youtube_search_timestamp: '2025-12-09T09:15:32.679724+00:00' diff --git a/data/custodian/CH-SG-SG-M-KSG.yaml b/data/custodian/CH-SG-SG-M-KSG.yaml index d745ce36e8..15a35dc0ee 100644 --- a/data/custodian/CH-SG-SG-M-KSG.yaml +++ b/data/custodian/CH-SG-SG-M-KSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Museumstrasse 32 normalization_timestamp: '2025-12-09T13:22:03.669970+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:58.572898+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kunstmuseum St. Gallen official youtube_search_timestamp: '2025-12-09T09:15:33.334677+00:00' diff --git a/data/custodian/CH-SG-SG-U-ADSD-aero_data_services_dokumentation.yaml b/data/custodian/CH-SG-SG-U-ADSD-aero_data_services_dokumentation.yaml index af56c7f15d..79de217f2a 100644 --- a/data/custodian/CH-SG-SG-U-ADSD-aero_data_services_dokumentation.yaml +++ b/data/custodian/CH-SG-SG-U-ADSD-aero_data_services_dokumentation.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Folchartstrasse 19 normalization_timestamp: '2025-12-09T13:22:03.706829+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:15.747130+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Aero Data Services ‒ Dokumentation official youtube_search_timestamp: '2025-12-09T09:15:33.982583+00:00' diff --git a/data/custodian/CH-SG-SG-U-ADSD.yaml b/data/custodian/CH-SG-SG-U-ADSD.yaml index 8a75622580..c3f08a953e 100644 --- a/data/custodian/CH-SG-SG-U-ADSD.yaml +++ b/data/custodian/CH-SG-SG-U-ADSD.yaml @@ -124,6 +124,12 @@ location: postal_code: '9000' street_address: Folchartstrasse 19 normalization_timestamp: '2025-12-09T13:22:03.741496+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:50.083176+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Aero Data Services ‒ Dokumentation official youtube_search_timestamp: '2025-12-09T09:15:34.631655+00:00' diff --git a/data/custodian/CH-SG-SG-U-BB.yaml b/data/custodian/CH-SG-SG-U-BB.yaml index 52a4a5e376..cbaeb9b811 100644 --- a/data/custodian/CH-SG-SG-U-BB.yaml +++ b/data/custodian/CH-SG-SG-U-BB.yaml @@ -135,6 +135,12 @@ location: postal_code: '9023' street_address: Kreuzackerstrasse 12 normalization_timestamp: '2025-12-09T13:22:03.773433+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:58.676233+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Bundesverwaltungsgericht ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:35.285517+00:00' diff --git a/data/custodian/CH-SG-SG-U-EMFESGB.yaml b/data/custodian/CH-SG-SG-U-EMFESGB.yaml index d1d327afe0..2b968a5c9e 100644 --- a/data/custodian/CH-SG-SG-U-EMFESGB.yaml +++ b/data/custodian/CH-SG-SG-U-EMFESGB.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:03.811049+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:40.630396+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Eidgenössische Materialprüfungs- und Forschungsanstalt EMPA St. Gallen ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:35.931038+00:00' diff --git a/data/custodian/CH-SG-SG-U-FVIA.yaml b/data/custodian/CH-SG-SG-U-FVIA.yaml index 93c6d14e18..a865ceb967 100644 --- a/data/custodian/CH-SG-SG-U-FVIA.yaml +++ b/data/custodian/CH-SG-SG-U-FVIA.yaml @@ -130,6 +130,12 @@ location: postal_code: '9001' street_address: Rechenstrasse 37 normalization_timestamp: '2025-12-09T13:22:03.842114+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:29:02.036116+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Forschungssekretariat ‒ Vifor (International) AG official youtube_search_timestamp: '2025-12-09T09:15:36.579406+00:00' diff --git a/data/custodian/CH-SG-SG-U-ISMPGI.yaml b/data/custodian/CH-SG-SG-U-ISMPGI.yaml index 16a4340541..6b45d1c8d8 100644 --- a/data/custodian/CH-SG-SG-U-ISMPGI.yaml +++ b/data/custodian/CH-SG-SG-U-ISMPGI.yaml @@ -130,6 +130,12 @@ location: postal_code: '9000' street_address: Dufourstrasse 40a normalization_timestamp: '2025-12-09T13:22:03.875567+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:59.975628+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Systemisches Management und Public Governance (IMP) official youtube_search_timestamp: '2025-12-09T09:15:37.233792+00:00' diff --git a/data/custodian/CH-SG-SG-U-KB.yaml b/data/custodian/CH-SG-SG-U-KB.yaml index d81b55a096..e210b0d140 100644 --- a/data/custodian/CH-SG-SG-U-KB.yaml +++ b/data/custodian/CH-SG-SG-U-KB.yaml @@ -130,6 +130,12 @@ location: postal_code: '9007' street_address: Rorschacher Strasse 95 normalization_timestamp: '2025-12-09T13:22:03.912717+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:34.484710+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Kantonsspital ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:37.902133+00:00' diff --git a/data/custodian/CH-SG-SG-U-SBPSSSTAA.yaml b/data/custodian/CH-SG-SG-U-SBPSSSTAA.yaml index 082b0725f0..5188004b66 100644 --- a/data/custodian/CH-SG-SG-U-SBPSSSTAA.yaml +++ b/data/custodian/CH-SG-SG-U-SBPSSSTAA.yaml @@ -135,6 +135,12 @@ location: postal_code: '9008' street_address: Kolumbanstrasse 2 normalization_timestamp: '2025-12-09T13:22:03.946021+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:51.003027+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Schweizer Berufsverband der Pflegefachpersonen (SBK) ‒ Sektion SG TG AR AI official youtube_search_timestamp: '2025-12-09T09:15:38.601179+00:00' diff --git a/data/custodian/CH-SG-SG-U-SFSETMD.yaml b/data/custodian/CH-SG-SG-U-SFSETMD.yaml index 0b9d12a962..5ba108599d 100644 --- a/data/custodian/CH-SG-SG-U-SFSETMD.yaml +++ b/data/custodian/CH-SG-SG-U-SFSETMD.yaml @@ -135,7 +135,12 @@ location: postal_code: '9000' street_address: Vadianstr. 42 normalization_timestamp: '2025-12-09T13:22:03.996314+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:58.191808+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND -youtube_search_query: SKAT - Fachstelle der Schweiz. Entwicklungszusammenarbeit für Technologie-Management ‒ Dokumentation - official +youtube_search_query: SKAT - Fachstelle der Schweiz. Entwicklungszusammenarbeit für Technologie-Management ‒ Dokumentation official youtube_search_timestamp: '2025-12-09T09:15:39.261972+00:00' diff --git a/data/custodian/CH-SG-SG-U-SSG.yaml b/data/custodian/CH-SG-SG-U-SSG.yaml index 1c0c162226..e3df13d353 100644 --- a/data/custodian/CH-SG-SG-U-SSG.yaml +++ b/data/custodian/CH-SG-SG-U-SSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Klosterhof 6 d normalization_timestamp: '2025-12-09T13:22:04.041910+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:46.986139+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Stiftsbibliothek St. Gallen official youtube_search_timestamp: '2025-12-09T09:15:39.914250+00:00' diff --git a/data/custodian/CH-SG-SG-U-ZPG.yaml b/data/custodian/CH-SG-SG-U-ZPG.yaml index 9869dcbbea..47a4017697 100644 --- a/data/custodian/CH-SG-SG-U-ZPG.yaml +++ b/data/custodian/CH-SG-SG-U-ZPG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9001' street_address: Unterstrasse 22 normalization_timestamp: '2025-12-09T13:22:04.089612+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:04.212863+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: ZEPRA Prävention und Gesundheitsförderung official youtube_search_timestamp: '2025-12-09T09:15:40.572941+00:00' diff --git a/data/custodian/CH-SG-ST.-A-AD-archiv_dompfarrei.yaml b/data/custodian/CH-SG-ST.-A-AD-archiv_dompfarrei.yaml index 6e3ff98468..b4f7684ae2 100644 --- a/data/custodian/CH-SG-ST.-A-AD-archiv_dompfarrei.yaml +++ b/data/custodian/CH-SG-ST.-A-AD-archiv_dompfarrei.yaml @@ -124,6 +124,12 @@ location: postal_code: '9001' street_address: Gallusstrasse 34 normalization_timestamp: '2025-12-09T13:22:04.118457+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:07.687096+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv Dompfarrei official youtube_search_timestamp: '2025-12-09T09:15:41.226290+00:00' diff --git a/data/custodian/CH-SG-ST.-A-AD.yaml b/data/custodian/CH-SG-ST.-A-AD.yaml index 01d3b74e0f..1efa6b9973 100644 --- a/data/custodian/CH-SG-ST.-A-AD.yaml +++ b/data/custodian/CH-SG-ST.-A-AD.yaml @@ -124,6 +124,12 @@ location: postal_code: '9001' street_address: Gallusstrasse 34 normalization_timestamp: '2025-12-09T13:22:04.146927+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:34.976522+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archiv Dompfarrei official youtube_search_timestamp: '2025-12-09T09:15:41.872982+00:00' diff --git a/data/custodian/CH-SG-ST.-L-IVUSGB.yaml b/data/custodian/CH-SG-ST.-L-IVUSGB.yaml index 03d8aabf43..a6aaafdac8 100644 --- a/data/custodian/CH-SG-ST.-L-IVUSGB.yaml +++ b/data/custodian/CH-SG-ST.-L-IVUSGB.yaml @@ -135,6 +135,12 @@ location: postal_code: '9000' street_address: Tannenstrasse 19 normalization_timestamp: '2025-12-09T13:22:04.175663+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:28.829663+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Institut für Versicherungswirtschaft der Universität St. Gallen ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:15:42.524985+00:00' diff --git a/data/custodian/CH-SG-ST.-L-OOFBCSG.yaml b/data/custodian/CH-SG-ST.-L-OOFBCSG.yaml index 78d4e3015c..1bb3b8c29a 100644 --- a/data/custodian/CH-SG-ST.-L-OOFBCSG.yaml +++ b/data/custodian/CH-SG-ST.-L-OOFBCSG.yaml @@ -135,6 +135,12 @@ location: postal_code: '9001' street_address: Rosenbergstrasse 59 normalization_timestamp: '2025-12-09T13:22:04.216895+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:31.988739+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: OST Ostschweizer Fachhochschule, Bibliothek Campus St.Gallen official youtube_search_timestamp: '2025-12-09T09:15:43.182087+00:00' diff --git a/data/custodian/CH-SG-ST.-U-BSLSGBB.yaml b/data/custodian/CH-SG-ST.-U-BSLSGBB.yaml index 49cbc49c57..1844fa3d8e 100644 --- a/data/custodian/CH-SG-ST.-U-BSLSGBB.yaml +++ b/data/custodian/CH-SG-ST.-U-BSLSGBB.yaml @@ -124,6 +124,12 @@ location: postal_code: '9001' street_address: Teufenerstrasse 1/3 normalization_timestamp: '2025-12-09T13:22:04.256571+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:13.264554+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Berufs-, Studien- und Laufbahnberatung St. Gallen und Berufsinformationszentrum BIZ official youtube_search_timestamp: '2025-12-09T09:15:43.833459+00:00' diff --git a/data/custodian/CH-SG-WS-A-SW.yaml b/data/custodian/CH-SG-WS-A-SW.yaml index 0532ae4602..ced1f774c0 100644 --- a/data/custodian/CH-SG-WS-A-SW.yaml +++ b/data/custodian/CH-SG-WS-A-SW.yaml @@ -130,6 +130,12 @@ location: postal_code: '9500' street_address: Marktgasse 73 normalization_timestamp: '2025-12-09T13:22:04.577772+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:28:54.768012+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Stadtarchiv Wil official youtube_search_timestamp: '2025-12-09T09:15:50.367637+00:00' diff --git a/data/custodian/CH-SG-WS-L-SW.yaml b/data/custodian/CH-SG-WS-L-SW.yaml index a5ec062272..ee900ecfe0 100644 --- a/data/custodian/CH-SG-WS-L-SW.yaml +++ b/data/custodian/CH-SG-WS-L-SW.yaml @@ -135,6 +135,12 @@ location: postal_code: '9500' street_address: Marktgasse 88 normalization_timestamp: '2025-12-09T13:22:04.613883+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:28:04.268235+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Stadtbibliothek Wil official youtube_search_timestamp: '2025-12-09T09:15:51.021057+00:00' diff --git a/data/custodian/CH-SG-WS-L-ZZPRI.yaml b/data/custodian/CH-SG-WS-L-ZZPRI.yaml index 5ea7bae9a0..86a12f7dec 100644 --- a/data/custodian/CH-SG-WS-L-ZZPRI.yaml +++ b/data/custodian/CH-SG-WS-L-ZZPRI.yaml @@ -126,6 +126,12 @@ location: region_code: SG country: CH normalization_timestamp: '2025-12-09T13:22:04.650090+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:29:02.993425+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: ZEPRA ‒ Zentrum für Prävention ‒ Regionale Informationsstelle official youtube_search_timestamp: '2025-12-09T09:15:51.679467+00:00' diff --git a/data/custodian/CH-SG-WS-U-KPKA.yaml b/data/custodian/CH-SG-WS-U-KPKA.yaml index 223a6e26fb..53eb911cb1 100644 --- a/data/custodian/CH-SG-WS-U-KPKA.yaml +++ b/data/custodian/CH-SG-WS-U-KPKA.yaml @@ -132,6 +132,12 @@ location: country: CH postal_code: '9500' normalization_timestamp: '2025-12-09T13:22:04.683748+00:00' + latitude: 47.22557 + longitude: 8.82228 + geonames_id: 2659099 + geocoding_timestamp: '2025-12-09T21:28:32.931370+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rapperswil youtube_status: NOT_FOUND youtube_search_query: Kantonale psychiatrische Klinik ‒ Ärztebibliothek official youtube_search_timestamp: '2025-12-09T09:15:52.334348+00:00' diff --git a/data/custodian/CH-SZ-PS-A-GFG.yaml b/data/custodian/CH-SZ-PS-A-GFG.yaml index 7d48f8095b..13cd1722bc 100644 --- a/data/custodian/CH-SZ-PS-A-GFG.yaml +++ b/data/custodian/CH-SZ-PS-A-GFG.yaml @@ -135,6 +135,12 @@ location: postal_code: '8808' street_address: Unterdorfstrasse 9 normalization_timestamp: '2025-12-09T13:22:06.962422+00:00' + latitude: 47.20109 + longitude: 8.77816 + geonames_id: 2659220 + geocoding_timestamp: '2025-12-09T21:28:54.346828+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Pfäffikon youtube_status: NOT_FOUND youtube_search_query: Gemeinde Freienbach ‒ Gemeindearchiv official youtube_search_timestamp: '2025-12-09T09:16:46.905870+00:00' diff --git a/data/custodian/CH-TG-BT-A-ARKKPSMBT.yaml b/data/custodian/CH-TG-BT-A-ARKKPSMBT.yaml index 7208cc7bea..e6900a4f25 100644 --- a/data/custodian/CH-TG-BT-A-ARKKPSMBT.yaml +++ b/data/custodian/CH-TG-BT-A-ARKKPSMBT.yaml @@ -124,6 +124,12 @@ location: postal_code: '8572' street_address: Hauptstrasse 37a normalization_timestamp: '2025-12-09T13:22:07.848111+00:00' + latitude: 47.57879 + longitude: 9.16635 + geonames_id: 2661557 + geocoding_timestamp: '2025-12-09T21:28:38.359683+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Berg youtube_status: NOT_FOUND youtube_search_query: Archiv römisch-katholische Kirchgemeinde und Pfarrei St. Mauritius Berg TG official youtube_search_timestamp: '2025-12-09T09:16:58.690470+00:00' diff --git a/data/custodian/CH-TG-BT-A-AVB-archiv_volksschulgemeinde_burglen.yaml b/data/custodian/CH-TG-BT-A-AVB-archiv_volksschulgemeinde_burglen.yaml index ff712507b2..4df3487efa 100644 --- a/data/custodian/CH-TG-BT-A-AVB-archiv_volksschulgemeinde_burglen.yaml +++ b/data/custodian/CH-TG-BT-A-AVB-archiv_volksschulgemeinde_burglen.yaml @@ -124,6 +124,12 @@ location: postal_code: '8575' street_address: Schulsekretariat normalization_timestamp: '2025-12-09T13:22:07.892222+00:00' + latitude: 47.54921 + longitude: 9.1495 + geonames_id: 2661315 + geocoding_timestamp: '2025-12-09T21:28:24.462876+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bürglen youtube_status: NOT_FOUND youtube_search_query: Archiv Volksschulgemeinde Bürglen official youtube_search_timestamp: '2025-12-09T09:16:59.337729+00:00' diff --git a/data/custodian/CH-TG-ET-L-FARTABD.yaml b/data/custodian/CH-TG-ET-L-FARTABD.yaml index 8fe6436b0c..0f9aa81d37 100644 --- a/data/custodian/CH-TG-ET-L-FARTABD.yaml +++ b/data/custodian/CH-TG-ET-L-FARTABD.yaml @@ -126,6 +126,12 @@ location: region_code: TG country: CH normalization_timestamp: '2025-12-09T13:22:08.549814+00:00' + latitude: 47.47903 + longitude: 8.90078 + geonames_id: 7669565 + geocoding_timestamp: '2025-12-09T21:28:19.058195+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Ettenhausen youtube_status: NOT_FOUND youtube_search_query: Forschungsanstalt Agroscope Reckenholz-Tänikon ART ‒ Bibliothek und Dokumentation official youtube_search_timestamp: '2025-12-09T09:17:13.086842+00:00' diff --git a/data/custodian/CH-TG-HBA-A-AKKPSJTH.yaml b/data/custodian/CH-TG-HBA-A-AKKPSJTH.yaml index 20edfec14d..703124ae53 100644 --- a/data/custodian/CH-TG-HBA-A-AKKPSJTH.yaml +++ b/data/custodian/CH-TG-HBA-A-AKKPSJTH.yaml @@ -124,6 +124,12 @@ location: postal_code: '8580' street_address: Hagenwil 31 normalization_timestamp: '2025-12-09T13:22:08.863726+00:00' + latitude: 47.53006 + longitude: 9.3078 + geonames_id: 7669622 + geocoding_timestamp: '2025-12-09T21:29:00.100214+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Hagenwil youtube_status: NOT_FOUND youtube_search_query: Archiv Katholische Kirchgemeinde und Pfarrei St. Johannes der Täufer Hagenwil official youtube_search_timestamp: '2025-12-09T09:17:20.272165+00:00' diff --git a/data/custodian/CH-TG-RT-L-BAB.yaml b/data/custodian/CH-TG-RT-L-BAB.yaml index fb8dba7020..d6b81facc4 100644 --- a/data/custodian/CH-TG-RT-L-BAB.yaml +++ b/data/custodian/CH-TG-RT-L-BAB.yaml @@ -126,6 +126,12 @@ location: region_code: TG country: CH normalization_timestamp: '2025-12-09T13:22:09.534638+00:00' + latitude: 47.49981 + longitude: 9.3958 + geonames_id: 2658993 + geocoding_timestamp: '2025-12-09T21:28:40.867666+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Roggwil youtube_status: NOT_FOUND youtube_search_query: Bioforce AG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:17:34.647543+00:00' diff --git a/data/custodian/CH-TG-TT-U-EKT.yaml b/data/custodian/CH-TG-TT-U-EKT.yaml index 8f5c173094..b643c99b04 100644 --- a/data/custodian/CH-TG-TT-U-EKT.yaml +++ b/data/custodian/CH-TG-TT-U-EKT.yaml @@ -135,6 +135,12 @@ location: postal_code: '8512' street_address: Pfarrhausweg 1 normalization_timestamp: '2025-12-09T13:22:10.161035+00:00' + latitude: 47.54594 + longitude: 8.96358 + geonames_id: 2658376 + geocoding_timestamp: '2025-12-09T21:28:28.442614+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Thundorf youtube_status: NOT_FOUND youtube_search_query: Evangelische Kirchgemeinde Thunbachtal official youtube_search_timestamp: '2025-12-09T09:17:48.977458+00:00' diff --git a/data/custodian/CH-TI-LUG-U-TRDRSIR.yaml b/data/custodian/CH-TI-LUG-U-TRDRSIR.yaml index 3911c7fb5e..78e400dc86 100644 --- a/data/custodian/CH-TI-LUG-U-TRDRSIR.yaml +++ b/data/custodian/CH-TI-LUG-U-TRDRSIR.yaml @@ -130,6 +130,12 @@ location: postal_code: '6903' street_address: Radiotelevisione Svizzera di lingua italiana (RSI) normalization_timestamp: '2025-12-09T13:22:11.760731+00:00' + latitude: 46.01008 + longitude: 8.96004 + geonames_id: 2659836 + geocoding_timestamp: '2025-12-09T21:28:44.286291+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lugano youtube_status: NOT_FOUND youtube_search_query: Teche RSI (D+A) Radiotelevisione svizzera italiana RSI official youtube_search_timestamp: '2025-12-09T09:18:22.378470+00:00' diff --git a/data/custodian/CH-UR-AU-L-DAW.yaml b/data/custodian/CH-UR-AU-L-DAW.yaml index e76827b23a..fb674621a7 100644 --- a/data/custodian/CH-UR-AU-L-DAW.yaml +++ b/data/custodian/CH-UR-AU-L-DAW.yaml @@ -126,6 +126,12 @@ location: region_code: UR country: CH normalization_timestamp: '2025-12-09T13:22:12.270028+00:00' + latitude: 46.88042 + longitude: 8.64441 + geonames_id: 2661780 + geocoding_timestamp: '2025-12-09T21:28:30.888249+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Altdorf youtube_status: NOT_FOUND youtube_search_query: Dätwyler AG ‒ Werkbibliothek official youtube_search_timestamp: '2025-12-09T09:18:34.226901+00:00' diff --git a/data/custodian/CH-VD-AM-A-ACDAM.yaml b/data/custodian/CH-VD-AM-A-ACDAM.yaml index 9916c27ff5..d3c385952a 100644 --- a/data/custodian/CH-VD-AM-A-ACDAM.yaml +++ b/data/custodian/CH-VD-AM-A-ACDAM.yaml @@ -124,6 +124,12 @@ location: postal_code: '1273' street_address: Rue du Village 22 normalization_timestamp: '2025-12-09T13:22:12.305547+00:00' + latitude: 46.45962 + longitude: 6.20813 + geonames_id: 2661703 + geocoding_timestamp: '2025-12-09T21:28:33.468343+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Arzier youtube_status: NOT_FOUND youtube_search_query: Archives communales d'Arzier-Le Muids official youtube_search_timestamp: '2025-12-09T09:18:34.874894+00:00' diff --git a/data/custodian/CH-VD-CHA-A-ACV.yaml b/data/custodian/CH-VD-CHA-A-ACV.yaml index fcfcb4c9f7..cc7ce32df0 100644 --- a/data/custodian/CH-VD-CHA-A-ACV.yaml +++ b/data/custodian/CH-VD-CHA-A-ACV.yaml @@ -124,6 +124,12 @@ location: postal_code: '1022' street_address: Mouline 32 normalization_timestamp: '2025-12-09T13:22:12.557745+00:00' + latitude: 46.53005 + longitude: 6.57068 + geonames_id: 2661197 + geocoding_timestamp: '2025-12-09T21:28:59.330399+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Chavannes youtube_status: NOT_FOUND youtube_search_query: Archives cantonales vaudoises official youtube_search_timestamp: '2025-12-09T09:18:39.455605+00:00' diff --git a/data/custodian/CH-VD-CV-L-BCCV.yaml b/data/custodian/CH-VD-CV-L-BCCV.yaml index e3135ef711..5994c6123a 100644 --- a/data/custodian/CH-VD-CV-L-BCCV.yaml +++ b/data/custodian/CH-VD-CV-L-BCCV.yaml @@ -124,6 +124,12 @@ location: postal_code: '1299' street_address: Rue du Grand Pré 25 normalization_timestamp: '2025-12-09T13:22:12.709498+00:00' + latitude: 46.35912 + longitude: 6.20581 + geonames_id: 2661082 + geocoding_timestamp: '2025-12-09T21:28:17.777688+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Crans-près-Céligny youtube_status: NOT_FOUND youtube_search_query: Bibliothèque communale de Crans VD official youtube_search_timestamp: '2025-12-09T09:18:42.713884+00:00' diff --git a/data/custodian/CH-VD-ECU-A-ACDEV.yaml b/data/custodian/CH-VD-ECU-A-ACDEV.yaml index a0527a39a9..52b599c899 100644 --- a/data/custodian/CH-VD-ECU-A-ACDEV.yaml +++ b/data/custodian/CH-VD-ECU-A-ACDEV.yaml @@ -124,6 +124,12 @@ location: postal_code: '1024' street_address: Route du Bois 27 normalization_timestamp: '2025-12-09T13:22:12.799680+00:00' + latitude: 46.52899 + longitude: 6.56261 + geonames_id: 6285791 + geocoding_timestamp: '2025-12-09T21:28:35.417714+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Ecublens youtube_status: NOT_FOUND youtube_search_query: Archives communales d'Ecublens (VD) official youtube_search_timestamp: '2025-12-09T09:18:44.680442+00:00' diff --git a/data/custodian/CH-VD-GSM-L-GIHEGLLS.yaml b/data/custodian/CH-VD-GSM-L-GIHEGLLS.yaml index 90f7724725..5ac7b03cf4 100644 --- a/data/custodian/CH-VD-GSM-L-GIHEGLLS.yaml +++ b/data/custodian/CH-VD-GSM-L-GIHEGLLS.yaml @@ -135,6 +135,12 @@ location: postal_code: '1823' street_address: Route de Glion 111 normalization_timestamp: '2025-12-09T13:22:13.271663+00:00' + latitude: 46.77413 + longitude: 9.20461 + geonames_id: 2660275 + geocoding_timestamp: '2025-12-09T21:28:21.416582+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Ilanz youtube_status: NOT_FOUND youtube_search_query: Glion Institute of Higher Education - Glion library learning space official youtube_search_timestamp: '2025-12-09T09:18:55.209960+00:00' diff --git a/data/custodian/CH-VD-JOU-A-ACJM.yaml b/data/custodian/CH-VD-JOU-A-ACJM.yaml index 02f7d3da88..4bffe722f4 100644 --- a/data/custodian/CH-VD-JOU-A-ACJM.yaml +++ b/data/custodian/CH-VD-JOU-A-ACJM.yaml @@ -124,6 +124,12 @@ location: postal_code: '1008' street_address: Ch. de Beau-Cèdre 1 normalization_timestamp: '2025-12-09T13:22:13.309851+00:00' + latitude: 46.54653 + longitude: 6.59584 + geonames_id: 7670227 + geocoding_timestamp: '2025-12-09T21:28:11.886462+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Jouxtens youtube_status: NOT_FOUND youtube_search_query: Archives communales de Jouxtens-Mézery official youtube_search_timestamp: '2025-12-09T09:18:55.858534+00:00' diff --git a/data/custodian/CH-VD-L1-L-TFLB.yaml b/data/custodian/CH-VD-L1-L-TFLB.yaml index 85b295b8d5..87ce60a6c0 100644 --- a/data/custodian/CH-VD-L1-L-TFLB.yaml +++ b/data/custodian/CH-VD-L1-L-TFLB.yaml @@ -130,6 +130,12 @@ location: postal_code: '1000' street_address: 29, avenue du Tribunal fédéral normalization_timestamp: '2025-12-09T13:22:13.351516+00:00' + latitude: 46.516 + longitude: 6.63282 + geonames_id: 2659994 + geocoding_timestamp: '2025-12-09T21:28:36.574714+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lausanne youtube_status: NOT_FOUND youtube_search_query: Tribunal fédéral Lausanne ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:18:56.512561+00:00' diff --git a/data/custodian/CH-VD-L2-L-CCURMLB.yaml b/data/custodian/CH-VD-L2-L-CCURMLB.yaml index adf332584b..bdf5abc164 100644 --- a/data/custodian/CH-VD-L2-L-CCURMLB.yaml +++ b/data/custodian/CH-VD-L2-L-CCURMLB.yaml @@ -135,6 +135,12 @@ location: postal_code: '1000' street_address: Ch. de la Vulliette 4 normalization_timestamp: '2025-12-09T13:22:13.400885+00:00' + latitude: 46.516 + longitude: 6.63282 + geonames_id: 2659994 + geocoding_timestamp: '2025-12-09T21:28:26.675066+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lausanne youtube_status: NOT_FOUND youtube_search_query: CURML - Centre universitaire romand de médecine légale ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:18:57.160352+00:00' diff --git a/data/custodian/CH-VD-L2-U-EHBSIC.yaml b/data/custodian/CH-VD-L2-U-EHBSIC.yaml index 1ceb0bd88e..43b11f4e9c 100644 --- a/data/custodian/CH-VD-L2-U-EHBSIC.yaml +++ b/data/custodian/CH-VD-L2-U-EHBSIC.yaml @@ -135,6 +135,12 @@ location: postal_code: '1000' street_address: Route de Cojonnex 18 normalization_timestamp: '2025-12-09T13:22:13.456596+00:00' + latitude: 46.516 + longitude: 6.63282 + geonames_id: 2659994 + geocoding_timestamp: '2025-12-09T21:28:52.553790+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lausanne youtube_status: NOT_FOUND youtube_search_query: EHL Hospitality Business School ‒ Information Center official youtube_search_timestamp: '2025-12-09T09:18:57.813505+00:00' diff --git a/data/custodian/CH-VD-LAU-L-BCULI.yaml b/data/custodian/CH-VD-LAU-L-BCULI.yaml index a5c895e0ec..d59062ffe6 100644 --- a/data/custodian/CH-VD-LAU-L-BCULI.yaml +++ b/data/custodian/CH-VD-LAU-L-BCULI.yaml @@ -122,6 +122,12 @@ location: country: CH postal_code: '1015' normalization_timestamp: '2025-12-09T13:22:13.983707+00:00' + latitude: 46.516 + longitude: 6.63282 + geonames_id: 2659994 + geocoding_timestamp: '2025-12-09T21:28:06.195523+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lausanne youtube_status: NOT_FOUND youtube_search_query: Bibliothèque cantonale et universitaire Lausanne ‒ Internef official youtube_search_timestamp: '2025-12-09T09:19:09.604080+00:00' diff --git a/data/custodian/CH-VD-LAU-L-BCULU.yaml b/data/custodian/CH-VD-LAU-L-BCULU.yaml index 4bae623d45..c86a4f74e0 100644 --- a/data/custodian/CH-VD-LAU-L-BCULU.yaml +++ b/data/custodian/CH-VD-LAU-L-BCULU.yaml @@ -122,6 +122,12 @@ location: country: CH postal_code: '1015' normalization_timestamp: '2025-12-09T13:22:14.073625+00:00' + latitude: 46.516 + longitude: 6.63282 + geonames_id: 2659994 + geocoding_timestamp: '2025-12-09T21:28:46.605955+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Lausanne youtube_status: NOT_FOUND youtube_search_query: Bibliothèque cantonale et universitaire Lausanne ‒ Unithèque official youtube_search_timestamp: '2025-12-09T09:19:11.594974+00:00' diff --git a/data/custodian/CH-VD-SC-A-ACSLC.yaml b/data/custodian/CH-VD-SC-A-ACSLC.yaml index 84fd9915b5..59902adb3c 100644 --- a/data/custodian/CH-VD-SC-A-ACSLC.yaml +++ b/data/custodian/CH-VD-SC-A-ACSLC.yaml @@ -124,6 +124,12 @@ location: postal_code: '1806' street_address: Route des Deux-Villages 23 normalization_timestamp: '2025-12-09T13:22:20.386789+00:00' + latitude: 47.42391 + longitude: 9.37477 + geonames_id: 2658822 + geocoding_timestamp: '2025-12-09T21:28:13.120134+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sankt Gallen youtube_status: NOT_FOUND youtube_search_query: Archives communales de Saint-Légier-la Chiésaz official youtube_search_timestamp: '2025-12-09T09:20:46.531808+00:00' diff --git a/data/custodian/CH-VD-SV-L-CFNB.yaml b/data/custodian/CH-VD-SV-L-CFNB.yaml index 8243987a5d..d9975fd517 100644 --- a/data/custodian/CH-VD-SV-L-CFNB.yaml +++ b/data/custodian/CH-VD-SV-L-CFNB.yaml @@ -126,6 +126,12 @@ location: region_code: VD country: CH normalization_timestamp: '2025-12-09T13:22:20.794767+00:00' + latitude: 46.51047 + longitude: 6.55897 + geonames_id: 2658860 + geocoding_timestamp: '2025-12-09T21:28:58.748594+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Saint-Sulpice youtube_status: NOT_FOUND youtube_search_query: Conservation de la faune et de la nature ‒ Bibliothèque official youtube_search_timestamp: '2025-12-09T09:20:47.178934+00:00' diff --git a/data/custodian/CH-VS-BLU-L-RGHEB.yaml b/data/custodian/CH-VS-BLU-L-RGHEB.yaml index bc104a3a54..ddd72cf020 100644 --- a/data/custodian/CH-VS-BLU-L-RGHEB.yaml +++ b/data/custodian/CH-VS-BLU-L-RGHEB.yaml @@ -130,6 +130,12 @@ location: postal_code: '3975' street_address: Rte des Moulinettes 2 normalization_timestamp: '2025-12-09T13:22:22.812143+00:00' + latitude: 46.30923 + longitude: 7.49594 + geonames_id: 8436502 + geocoding_timestamp: '2025-12-09T21:28:36.683309+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Bluche youtube_status: NOT_FOUND youtube_search_query: Les Roches Global Hospitality Education Bibliothèque official youtube_search_timestamp: '2025-12-09T09:21:05.683220+00:00' diff --git a/data/custodian/CH-VS-BRI-L-MWB.yaml b/data/custodian/CH-VS-BRI-L-MWB.yaml index b337bd0a6c..f010cf5bff 100644 --- a/data/custodian/CH-VS-BRI-L-MWB.yaml +++ b/data/custodian/CH-VS-BRI-L-MWB.yaml @@ -135,6 +135,12 @@ location: postal_code: '3900' street_address: Schlossstrasse 30 normalization_timestamp: '2025-12-09T13:22:23.103112+00:00' + latitude: 46.31667 + longitude: 7.98333 + geonames_id: 2661394 + geocoding_timestamp: '2025-12-09T21:28:40.263925+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Brig youtube_status: NOT_FOUND youtube_search_query: Mediathek Wallis ‒ Brig official youtube_search_timestamp: '2025-12-09T09:21:09.633825+00:00' diff --git a/data/custodian/CH-VS-S1-L-CRDEPACCD.yaml b/data/custodian/CH-VS-S1-L-CRDEPACCD.yaml index 7527b41fa5..57ce6a1e6f 100644 --- a/data/custodian/CH-VS-S1-L-CRDEPACCD.yaml +++ b/data/custodian/CH-VS-S1-L-CRDEPACCD.yaml @@ -130,6 +130,12 @@ location: postal_code: '1933' street_address: Rue Saint-Honoré 14 normalization_timestamp: '2025-12-09T13:22:24.546160+00:00' + latitude: 46.07752 + longitude: 7.15279 + geonames_id: 2658633 + geocoding_timestamp: '2025-12-09T21:28:13.721934+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sembrancher youtube_status: NOT_FOUND youtube_search_query: Le Centre Régional d'Etudes des Populations Alpines (CREPA) ‒ Centre de documentation official youtube_search_timestamp: '2025-12-09T09:21:40.713541+00:00' diff --git a/data/custodian/CH-VS-S2-A-ALES.yaml b/data/custodian/CH-VS-S2-A-ALES.yaml index 2c1c8bd5c1..0fa49433a4 100644 --- a/data/custodian/CH-VS-S2-A-ALES.yaml +++ b/data/custodian/CH-VS-S2-A-ALES.yaml @@ -124,6 +124,12 @@ location: postal_code: '1950' street_address: Rue de la Tour 12 normalization_timestamp: '2025-12-09T13:22:24.596247+00:00' + latitude: 46.22739 + longitude: 7.35559 + geonames_id: 2658576 + geocoding_timestamp: '2025-12-09T21:28:09.204021+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sitten youtube_status: NOT_FOUND youtube_search_query: Archives de l'Evêché de Sion official youtube_search_timestamp: '2025-12-09T09:21:41.372610+00:00' diff --git a/data/custodian/CH-VS-S2-U-HSVWMHEDI.yaml b/data/custodian/CH-VS-S2-U-HSVWMHEDI.yaml index 7a6c083243..11e21dfac5 100644 --- a/data/custodian/CH-VS-S2-U-HSVWMHEDI.yaml +++ b/data/custodian/CH-VS-S2-U-HSVWMHEDI.yaml @@ -139,6 +139,12 @@ location: postal_code: '1950' street_address: Route du Rawyl 47 normalization_timestamp: '2025-12-09T13:22:24.656450+00:00' + latitude: 46.22739 + longitude: 7.35559 + geonames_id: 2658576 + geocoding_timestamp: '2025-12-09T21:28:54.419535+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Sitten youtube_status: NOT_FOUND youtube_search_query: HES-SO Valais-Wallis Médiathèque Haute école d'ingénierie official youtube_search_timestamp: '2025-12-09T09:21:42.029026+00:00' diff --git a/data/custodian/CH-VS-ST--L-BCSSG.yaml b/data/custodian/CH-VS-ST--L-BCSSG.yaml index c4955b96d6..52589721b3 100644 --- a/data/custodian/CH-VS-ST--L-BCSSG.yaml +++ b/data/custodian/CH-VS-ST--L-BCSSG.yaml @@ -124,6 +124,12 @@ location: postal_code: '1898' street_address: Chemin des Rasses 4 normalization_timestamp: '2025-12-09T13:22:27.019697+00:00' + latitude: 46.39217 + longitude: 6.80594 + geonames_id: 2658872 + geocoding_timestamp: '2025-12-09T21:28:13.880345+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Saint-Gingolph youtube_status: NOT_FOUND youtube_search_query: Bibliothèque communale et scolaire de St-Gingolph official youtube_search_timestamp: '2025-12-09T09:22:06.287870+00:00' diff --git a/data/custodian/CH-VS-VAL-L-BCSVDI.yaml b/data/custodian/CH-VS-VAL-L-BCSVDI.yaml index 01b524daac..72502e8cb6 100644 --- a/data/custodian/CH-VS-VAL-L-BCSVDI.yaml +++ b/data/custodian/CH-VS-VAL-L-BCSVDI.yaml @@ -124,6 +124,12 @@ location: postal_code: '1873' street_address: Route de Proz 6 normalization_timestamp: '2025-12-09T13:22:27.269411+00:00' + latitude: 47.41499 + longitude: 8.59672 + geonames_id: 2658060 + geocoding_timestamp: '2025-12-09T21:28:31.341909+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Wallisellen youtube_status: NOT_FOUND youtube_search_query: Bibliothèque communale et scolaire Val d'Illiez official youtube_search_timestamp: '2025-12-09T09:22:11.538262+00:00' diff --git a/data/custodian/CH-ZH-BZ-L-LWLRIWEDEE.yaml b/data/custodian/CH-ZH-BZ-L-LWLRIWEDEE.yaml index d8ce9ec160..a65e1ae885 100644 --- a/data/custodian/CH-ZH-BZ-L-LWLRIWEDEE.yaml +++ b/data/custodian/CH-ZH-BZ-L-LWLRIWEDEE.yaml @@ -135,6 +135,12 @@ location: postal_code: '8903' street_address: Zürcherstrasse 111 normalization_timestamp: '2025-12-09T13:22:30.343731+00:00' + latitude: 47.35515 + longitude: 8.44256 + geonames_id: 2661496 + geocoding_timestamp: '2025-12-09T21:28:42.236834+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Birmensdorf youtube_status: NOT_FOUND youtube_search_query: 'Lib4RI: WSL ‒ Library for the Research Institutes within the ETH Domain: Eawag, Empa, PSI & WSL official' youtube_search_timestamp: '2025-12-09T09:23:05.005353+00:00' diff --git a/data/custodian/CH-ZH-EBZ-L-BE.yaml b/data/custodian/CH-ZH-EBZ-L-BE.yaml index 24fd9f1a2f..e4ca173fc7 100644 --- a/data/custodian/CH-ZH-EBZ-L-BE.yaml +++ b/data/custodian/CH-ZH-EBZ-L-BE.yaml @@ -124,6 +124,12 @@ location: postal_code: '8132' street_address: Dorfstrasse 4 normalization_timestamp: '2025-12-09T13:22:30.709858+00:00' + latitude: 47.29976 + longitude: 8.69032 + geonames_id: 2660942 + geocoding_timestamp: '2025-12-09T21:28:48.071451+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Egg youtube_status: NOT_FOUND youtube_search_query: Bibliothek Egg official youtube_search_timestamp: '2025-12-09T09:23:12.946521+00:00' diff --git a/data/custodian/CH-ZH-KZ-A-OAOK.yaml b/data/custodian/CH-ZH-KZ-A-OAOK.yaml index ddbb422222..1b1a7b9b90 100644 --- a/data/custodian/CH-ZH-KZ-A-OAOK.yaml +++ b/data/custodian/CH-ZH-KZ-A-OAOK.yaml @@ -135,6 +135,12 @@ location: postal_code: '8700' street_address: Tobelweg 1 normalization_timestamp: '2025-12-09T13:22:31.211118+00:00' + latitude: 47.31805 + longitude: 8.58401 + geonames_id: 2660089 + geocoding_timestamp: '2025-12-09T21:28:58.009371+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Küsnacht youtube_status: NOT_FOUND youtube_search_query: Ortsgeschichtliches Archiv ‒ Ortsmuseum Küsnacht official youtube_search_timestamp: '2025-12-09T09:23:24.107047+00:00' diff --git a/data/custodian/CH-ZH-KZ-L-CGJIZB.yaml b/data/custodian/CH-ZH-KZ-L-CGJIZB.yaml index de933b288d..1dfd557f2c 100644 --- a/data/custodian/CH-ZH-KZ-L-CGJIZB.yaml +++ b/data/custodian/CH-ZH-KZ-L-CGJIZB.yaml @@ -130,6 +130,12 @@ location: postal_code: '8700' street_address: Hornweg 28 normalization_timestamp: '2025-12-09T13:22:31.248472+00:00' + latitude: 47.31805 + longitude: 8.58401 + geonames_id: 2660089 + geocoding_timestamp: '2025-12-09T21:28:29.919406+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Küsnacht youtube_status: NOT_FOUND youtube_search_query: C.G. Jung-Institut Zürich ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:23:24.761915+00:00' diff --git a/data/custodian/CH-ZH-RZ-L-MSRAB.yaml b/data/custodian/CH-ZH-RZ-L-MSRAB.yaml index 195d42aadc..84ce008683 100644 --- a/data/custodian/CH-ZH-RZ-L-MSRAB.yaml +++ b/data/custodian/CH-ZH-RZ-L-MSRAB.yaml @@ -126,6 +126,12 @@ location: region_code: ZH country: CH normalization_timestamp: '2025-12-09T13:22:32.091196+00:00' + latitude: 47.25603 + longitude: 8.85552 + geonames_id: 2658909 + geocoding_timestamp: '2025-12-09T21:28:16.573967+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Rüti youtube_status: NOT_FOUND youtube_search_query: Maschinenfabrik Sulzer-Rüti AG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:23:41.767139+00:00' diff --git a/data/custodian/CH-ZH-US-L-BU.yaml b/data/custodian/CH-ZH-US-L-BU.yaml index 96d343a3a8..2c63a13c38 100644 --- a/data/custodian/CH-ZH-US-L-BU.yaml +++ b/data/custodian/CH-ZH-US-L-BU.yaml @@ -124,6 +124,12 @@ location: postal_code: '8707' street_address: Bergstrasse 105 normalization_timestamp: '2025-12-09T13:22:32.316313+00:00' + latitude: 47.26441 + longitude: 8.67925 + geonames_id: 2658276 + geocoding_timestamp: '2025-12-09T21:28:36.630469+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Uetikon youtube_status: NOT_FOUND youtube_search_query: Bibliothek Uetikon official youtube_search_timestamp: '2025-12-09T09:23:47.012368+00:00' diff --git a/data/custodian/CH-ZH-UW-L-BU-bibliothek_uitikon.yaml b/data/custodian/CH-ZH-UW-L-BU-bibliothek_uitikon.yaml index 37a7d1dd08..ba5ba41823 100644 --- a/data/custodian/CH-ZH-UW-L-BU-bibliothek_uitikon.yaml +++ b/data/custodian/CH-ZH-UW-L-BU-bibliothek_uitikon.yaml @@ -124,6 +124,12 @@ location: postal_code: '8142' street_address: Schwerzgruebstrasse 3 normalization_timestamp: '2025-12-09T13:22:32.489529+00:00' + latitude: 47.36911 + longitude: 8.45699 + geonames_id: 2658269 + geocoding_timestamp: '2025-12-09T21:28:05.001127+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Uitikon youtube_status: NOT_FOUND youtube_search_query: Bibliothek Uitikon official youtube_search_timestamp: '2025-12-09T09:23:50.948073+00:00' diff --git a/data/custodian/CH-ZH-WZ-L-BAB.yaml b/data/custodian/CH-ZH-WZ-L-BAB.yaml index e6ebb6b9c7..e8a28186a9 100644 --- a/data/custodian/CH-ZH-WZ-L-BAB.yaml +++ b/data/custodian/CH-ZH-WZ-L-BAB.yaml @@ -130,6 +130,12 @@ location: postal_code: '8636' street_address: Sagenrainstrasse 7 normalization_timestamp: '2025-12-09T13:22:33.802776+00:00' + latitude: 47.27595 + longitude: 8.91405 + geonames_id: 2658073 + geocoding_timestamp: '2025-12-09T21:28:57.379929+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Wald youtube_status: NOT_FOUND youtube_search_query: Bioengineering AG ‒ Bibliothek official youtube_search_timestamp: '2025-12-09T09:24:21.930952+00:00' diff --git a/data/custodian/CH-ZH-WZ-U-KZOM.yaml b/data/custodian/CH-ZH-WZ-U-KZOM.yaml index 9db6314049..480f64a067 100644 --- a/data/custodian/CH-ZH-WZ-U-KZOM.yaml +++ b/data/custodian/CH-ZH-WZ-U-KZOM.yaml @@ -135,6 +135,12 @@ location: postal_code: '8620' street_address: Bühlstrasse 36 normalization_timestamp: '2025-12-09T13:22:33.837836+00:00' + latitude: 47.3264 + longitude: 8.79779 + geonames_id: 2658010 + geocoding_timestamp: '2025-12-09T21:28:22.054438+00:00' + geocoding_method: CITY_NAME_LOOKUP + geonames_matched_name: Wetzikon youtube_status: NOT_FOUND youtube_search_query: Kantonsschule Zürcher Oberland ‒ Mediothek official youtube_search_timestamp: '2025-12-09T09:24:22.590780+00:00' diff --git a/scripts/geocode_from_city_name.py b/scripts/geocode_from_city_name.py new file mode 100755 index 0000000000..d832976834 --- /dev/null +++ b/scripts/geocode_from_city_name.py @@ -0,0 +1,303 @@ +#!/usr/bin/env python3 +""" +Geocode custodian files by looking up city names in GeoNames database. +Handles various city name formats and country-specific patterns. + +Usage: + python scripts/geocode_from_city_name.py --country CH + python scripts/geocode_from_city_name.py --country CZ + python scripts/geocode_from_city_name.py # All countries +""" + +import sqlite3 +import re +from pathlib import Path +from datetime import datetime, timezone +from ruamel.yaml import YAML + +GEONAMES_DB = Path("data/reference/geonames.db") +CUSTODIAN_DIR = Path("data/custodian") + +yaml = YAML() +yaml.preserve_quotes = True +yaml.width = 4096 + + +def normalize_city_name(city: str, country: str) -> list[str]: + """Generate candidate city names for lookup, ordered by priority.""" + candidates = [city] + + # Common patterns for all countries + # Remove " - Suisse", " - France", etc. + no_country = re.sub(r'\s*-\s*(Suisse|Schweiz|Switzerland|France|Deutschland|Germany)$', '', city, flags=re.I) + if no_country != city: + candidates.append(no_country) + + # Remove house numbers (common in CZ addresses) + cleaned = re.sub(r'\s+\d+$', '', city) + if cleaned != city: + candidates.append(cleaned) + + # Handle Swiss city names + if country == 'CH': + # "St. Gallen" and "St.Gallen" -> also try "Sankt Gallen" + if 'St.' in city or 'St-' in city: + candidates.append(city.replace('St.', 'Sankt ').replace('St-', 'Sankt-')) + candidates.append(city.replace('St.', 'Saint ').replace('St-', 'Saint-')) + # Remove space if it created double space + for i, c in enumerate(candidates): + candidates[i] = re.sub(r'\s+', ' ', c).strip() + + # Remove parenthetical suffixes (Sauverny) + no_parens = re.sub(r'\s*\([^)]*\)', '', city) + if no_parens != city: + candidates.append(no_parens.strip()) + + # "Bernex - Genève" -> try "Bernex" and "Genève" + if ' - ' in city: + parts = [p.strip() for p in city.split(' - ')] + candidates.extend(parts) + + # "Lausanne-Dorigny" -> try just "Lausanne" + if '-' in city: + parts = city.split('-') + candidates.extend([p.strip() for p in parts]) + + # "Buchs SG", "Brugg AG" -> try just "Buchs", "Brugg" + canton_suffix = re.match(r'^(.+)\s+(AG|AI|AR|BE|BL|BS|FR|GE|GL|GR|JU|LU|NE|NW|OW|SG|SH|SO|SZ|TG|TI|UR|VD|VS|ZG|ZH)$', city) + if canton_suffix: + candidates.append(canton_suffix.group(1).strip()) + + # "Dättwil AG" -> "Dättwil" + # "Villigen PSI" -> "Villigen" + no_suffix = re.sub(r'\s+[A-Z]{2,3}$', '', city) + if no_suffix != city: + candidates.append(no_suffix) + + # "Hausen b. Brugg" -> "Hausen" + no_bei = re.sub(r'\s+b\.\s+.*$', '', city) + if no_bei != city: + candidates.append(no_bei) + + # "Ecublens/VD" -> "Ecublens" + if '/' in city: + parts = city.split('/') + candidates.append(parts[0].strip()) + + # "Sils / Segl Maria" -> "Sils", "Segl Maria" + if ' / ' in city: + parts = [p.strip() for p in city.split(' / ')] + candidates.extend(parts) + + # "Glion sur Montreux" -> "Glion" + no_sur = re.sub(r'\s+sur\s+.*$', '', city, flags=re.I) + if no_sur != city: + candidates.append(no_sur) + + # Handle Czech city names with district suffixes + if country == 'CZ': + # "Břasy-Stupno" -> try just "Břasy" and "Stupno" + if '-' in city: + parts = city.split('-') + candidates.extend([p.strip() for p in parts]) + # Remove district numbers like "Praha 1" + no_district = re.sub(r'\s+\d+$', '', city) + if no_district != city: + candidates.append(no_district) + + # Handle Japanese compound names (fallback to just the town name) + if country == 'JP': + # "Waga Gun Nishiwaga Machi" -> try "Nishiwaga" + parts = city.split() + for i, part in enumerate(parts): + if part in ('Machi', 'Cho', 'Mura', 'Shi', 'Ku'): + if i > 0: + candidates.append(parts[i-1]) # Just the town name + # Also try "town + suffix" + candidates.append(f"{parts[i-1]} {part}") + # Try removing "Gun" district entirely + no_gun = re.sub(r'\w+\s+Gun\s+', '', city) + if no_gun != city: + candidates.append(no_gun) + + # Deduplicate while preserving order + seen = set() + result = [] + for c in candidates: + if c and c not in seen: + seen.add(c) + result.append(c) + + return result + + +def get_coords_for_city(conn: sqlite3.Connection, city_name: str, country_code: str) -> tuple[float, float, int, str] | None: + """Get lat/lon, geonames_id, and matched name for a city.""" + # First try exact match on name/ascii_name (fast) + cursor = conn.execute( + """SELECT latitude, longitude, geonames_id, name + FROM cities + WHERE country_code = ? + AND (name = ? OR ascii_name = ?) + AND feature_code IN ('PPL', 'PPLA', 'PPLA2', 'PPLA3', 'PPLA4', 'PPLC', 'PPLS', 'PPLG') + ORDER BY population DESC + LIMIT 1""", + (country_code, city_name, city_name) + ) + row = cursor.fetchone() + if row: + return row[0], row[1], row[2], row[3] + return None + + +def process_file(filepath: Path, conn: sqlite3.Connection) -> bool: + """Process a single custodian file. Returns True if updated.""" + with open(filepath, 'r', encoding='utf-8') as f: + data = yaml.load(f) + + if not data: + return False + + # Check if already has coordinates + location = data.get('location', {}) + if location.get('latitude') and location.get('longitude'): + return False + + # Get city and country from location block + city = location.get('city') + country = location.get('country') + + if not city or not country: + return False + + # Handle country as dict (from Wikidata enrichment) + if isinstance(country, dict): + # Extract country code from Wikidata country structure + country_label = country.get('label', '') + country_map = { + 'Switzerland': 'CH', 'Czech Republic': 'CZ', 'Czechia': 'CZ', + 'Japan': 'JP', 'Germany': 'DE', 'Austria': 'AT', 'Belgium': 'BE', + 'France': 'FR', 'Italy': 'IT', 'Netherlands': 'NL', 'Poland': 'PL' + } + country = country_map.get(country_label, None) + if not country: + return False + + # Generate candidate city names + candidates = normalize_city_name(city, country) + + # Try each candidate + for candidate in candidates: + result = get_coords_for_city(conn, candidate, country) + if result: + lat, lon, geonames_id, matched_name = result + + # Update location block + data['location']['latitude'] = lat + data['location']['longitude'] = lon + data['location']['geonames_id'] = geonames_id + data['location']['geocoding_timestamp'] = datetime.now(timezone.utc).isoformat() + data['location']['geocoding_method'] = 'CITY_NAME_LOOKUP' + if matched_name != city: + data['location']['geonames_matched_name'] = matched_name + + # Write back + with open(filepath, 'w', encoding='utf-8') as f: + yaml.dump(data, f) + + return True + + return False + + +def main(): + import argparse + parser = argparse.ArgumentParser(description='Geocode by city name lookup') + parser.add_argument('--country', type=str, help='Country code to process') + parser.add_argument('--dry-run', action='store_true', help='Show what would be done') + args = parser.parse_args() + + conn = sqlite3.connect(GEONAMES_DB) + + # Find files to process + if args.country: + pattern = f"{args.country}-*.yaml" + else: + pattern = "*.yaml" + + files = list(CUSTODIAN_DIR.glob(pattern)) + print(f"Found {len(files)} files matching {pattern}") + + updated = 0 + skipped = 0 + no_match = 0 + + for filepath in files: + if not filepath.is_file(): + continue + + try: + with open(filepath, 'r', encoding='utf-8') as f: + data = yaml.load(f) + + if not data: + continue + + location = data.get('location', {}) + if location.get('latitude'): + skipped += 1 + continue + + city = location.get('city') + country = location.get('country') + + if not city or not country: + no_match += 1 + continue + + # Handle country dict + if isinstance(country, dict): + country_label = country.get('label', '') + country_map = { + 'Switzerland': 'CH', 'Czech Republic': 'CZ', 'Czechia': 'CZ', + 'Japan': 'JP', 'Germany': 'DE', 'Austria': 'AT', 'Belgium': 'BE' + } + country = country_map.get(country_label, None) + if not country: + no_match += 1 + continue + + candidates = normalize_city_name(city, country) + + if args.dry_run: + found = False + for candidate in candidates: + result = get_coords_for_city(conn, candidate, country) + if result: + print(f"Would update: {filepath.name} ({city}) -> {result[3]} ({result[0]:.4f}, {result[1]:.4f})") + updated += 1 + found = True + break + if not found: + print(f" No match: {filepath.name} ({city}, {country}) tried: {candidates[:3]}") + no_match += 1 + else: + if process_file(filepath, conn): + print(f"Updated: {filepath.name}") + updated += 1 + else: + no_match += 1 + + except Exception as e: + print(f"Error: {filepath.name}: {e}") + + conn.close() + + print(f"\nSummary:") + print(f" Updated: {updated}") + print(f" Skipped (already has coords): {skipped}") + print(f" No match found: {no_match}") + + +if __name__ == "__main__": + main()