Challenge Project

opendata.swiss: Automatisiertes Anreichern von Metadaten

Metadaten auf opendata.swiss sollen automatisiert angereichert werden, damit geographische/administrative Untereinheiten gefunden werden

17

⛶  Fullscreen ↓  Download 📂 Demo

📎 pres_Metadaten Gemeinden angereichert.pdf

Szenario: 0 Datensätze gefunden

Sam Schweizer fand opendata.swiss, das zentrale OGD Portal der Schweiz. Sie sucht auf der Seite nach Daten zu ihrem Wohn- und Arbeitsort und gibt im Suchfeld "Zollikofen" ein. Leider erhält sie auf Portal keinen Treffer. Zollikofen ist aber natürlich unter anderem in der Statistik der Schweizer Städte aufgeführt. Die Erklärung: Der Begriff "Zollikofen" ist in den indexierten Metadaten nicht vorhanden, obwohl das Attribut in den Daten vorhanden ist.

Ziel: Das bringt was

Die Metadaten auf opendata.swiss sollen automatisiert angereichert werden, so dass geographische bzw. administrative Untereinheiten (z.B. Gemeinden, Kantone, Geschäftsstellen) bei der Suche in den Datasets der Obereinheiten (z.B. Schweiz, Kantone, Bundesämter) gefunden werden. Mit mehr als 8600 offene Datasets von Bund, Kantonen und Gemeinden und monatlich zwischen 20'000-25'000 eindeutigen Zugriffe werden Eure Ideen Wahrgenommen: Verbesserungen des Portals sind also Verbesserungen für die Schweiz.

Fazit: Konkret und nachhaltig

Eure Ideen bringen konkrete Verbesserungen für die Menschen, die bereits heute nach Schweizer OGD suchen. In unserer Challenge könnt ihr zudem unsere API kennenlernen und euch auf zukünftige Anfragen vorbereiten.

Ressourcen

Organisation: Geschäftsstelle OGD beim Bundesamt für Statistik

 Title

 opendata.swiss

GovTech:

opendata.swiss: Automatisiertes Anreichern von Metadaten

Kontext

Projekt entstand am govtech-hackathon 2023. Die Challenge ist hier zu finden: https://hack.opendata.ch/project/947

Ziel

Die Metadaten auf opendata.swiss sollen automatisiert angereichert werden, damit geographische Untereinheiten (z.B. Gemeinden, Kantone) bei der Suche nach Datasets gefunden werden, obschon sie nicht in den Metadaten von https://www.opendata.swiss aufgeführt sind. Gewählter Ansatz: Brute Force. Parse the datasets and add tag, if a Gemeinde is mentioned.

Scope PoC

  • Auswahl von 300 Datasets
  • Beschränkung auf Datasets mit csv-Ressourcen.
  • Beschränkung auf downloadfiles < 5 MB

todo

  • Liste der download-Links mit den entsprechenden Package- und Ressourcen-IDs. > ./harvester
  • Harvesten der Datasets > onedrive.com/...
  • Liste aller Gemeindenamen > ./data
  • Parsen der Downloadfile nach den Gemeindenamen > ./parser
  • POST der gefundenen Gemeindanamen auf das entsprechende Dataset
  • Dokumentieren!

zusätzliche Infos:

To do (future):

  • Ausweiten auf weitere Parameter
  • Für die Einbindung von Geodaten. -> cp. https://davidoesch.github.io/geoservice_harvester_poc/
  • Produktivsetzung:
    • Automatisierung nach dem Harvesting (vorausgesetzt: Einwilligung der Datapublisher)
    • Service für Datapublisher, damti sie selber die Metadaten ergänzen.
    • ???
This content is a preview from an external site.
 

Event finished

updated sources and print filename (@gmacauda)

Edited (version 87)

24.03.2023 14:13 ~ pascal_hurni

Project

Repository updated

24.03.2023 14:12 ~ pascal_hurni

Edited (version 83)

24.03.2023 14:12 ~ pascal_hurni

Edited (version 80)

24.03.2023 14:12 ~ pascal_hurni

Edited (version 78)

24.03.2023 14:07 ~ pascal_hurni

Edited (version 76)

24.03.2023 14:01 ~ pascal_hurni

updated test_files.csv (Basel-Stadt) (@gmacauda)

go through all datasets (@HesterFrederiek)

Fix basel script (@Dirk Furrer)

Rename enrichmetadata.py to enrichmetadata/enrich_metadata.py (@hurni)

Add files via upload (@hurni)

Delete entich_metadata directory (@hurni)

Merge remote-tracking branch 'origin/main' (@HesterFrederiek)

add test_final.csv (@HesterFrederiek)

Add script to fetch base-stadt urls (@Dirk Furrer)

Update enrich_metadata.py (@hurni)

Update and rename enrichmetadata.py to entichmetadata/enrich_metadata.py (@hurni)

Add files via upload (@hurni)

Merge remote-tracking branch 'origin/main' (@HesterFrederiek)

remove comma at beginning/end (@HesterFrederiek)

Attempt at full text indexer

set axis=1 (@HesterFrederiek)

correct column name (@HesterFrederiek)

do first 100 files (@HesterFrederiek)

remove columns resource_id and filename before export (@HesterFrederiek)

Merge remote-tracking branch 'origin/main' (@HesterFrederiek)

read first 153 files (@HesterFrederiek)

removed line 290, converted to csv (@aresssera)

added datafiles < 1mb (@gmacauda)

add onbadlines='skip' for now (@HesterFrederiek)

add komma in string namesPresent (@HesterFrederiek)

changed get delimiter (@gmacauda)

Merge remote-tracking branch 'origin/main' (@HesterFrederiek)

add datafiles_path (@HesterFrederiek)

Update get_keywords.py (@aresssera)

added example files (@gmacauda)

add source (@HesterFrederiek)

Limit download to 160 files max

Challenge

Event started

 
Alle Teilnehmer*innen, Sponsor, Partner, Freiwilligen und Mitarbeiter*innen unseres Hackathons sind verpflichtet, dem Hack Code of Conduct zuzustimmen. Die Organisatoren werden diesen Kodex während der gesamten Veranstaltung durchsetzen. Wir erwarten die Zusammenarbeit aller Teilnehmer*innen, um eine sichere Umgebung für alle zu gewährleisten. Mehr Details befinden sich in die GovTech Hackathon Guidelines.

Tous les participant-es, sponsors, partenaires, bénévoles et collaborateurs/collaboratrices de notre hackathon sont tenus d'accepter le Hack Code of Conduct. Les organisateurs feront appliquer ce code tout au long de l'événement. Nous attendons de tous les participants qu'ils coopèrent afin de garantir un environnement sûr pour tous. Pour plus de détails, veuillez consulter les Guidelines du GovTech Hackathon.

Creative Commons LicenceDie Inhalte dieser Website stehen, sofern nicht anders angegeben, unter einer Creative Commons Attribution 4.0 International License | Le contenu de ce site web est, sauf indication contraire, sous licence Creative Commons Attribution 4.0 International.