5.3. đ Ăbung - Metadaten gruppieren & auswerten#
Nachdem wir im vorherigen Abschnitt gelernt haben, wie sich offene DatensĂ€tze mit Hilfe von SPARQL gezielt durchsuchen und filtern lassen, werden wir SPARQL in dieser Ăbung nutzen, um Metadaten zu gruppieren und quantitativ auszuwerten.
Story
Um besser einschĂ€tzen zu können, welche Datenquellen fĂŒr seine Analyse relevant sind, genĂŒgt es Dr. Amir Weber nicht, nur einzelne DatensĂ€tze zu finden. Es interessiert ihn auch, welche Institutionen regelmĂ€Ăig entsprechende Daten bereitstellen und in welchen Formaten diese verfĂŒgbar sind. Dies kann Aufschluss darĂŒber geben, wie verlĂ€sslich und zugĂ€nglich bestimmte Datenquellen sind.
Wir analysieren, in welchen Datenformaten diese Informationen angeboten werden, um Dr. Weber bei der technischen EinschĂ€tzung der Weiterverwendbarkeit zu unterstĂŒtzen.
Diese aggregierten Informationen geben ihm wertvolle Hinweise auf die DatenqualitĂ€t, Veröffentlichungsfrequenz und technische Nutzbarkeit â und legen damit die Grundlage fĂŒr fundierte Entscheidungen im weiteren Verlauf seiner Analyse.
5.3.1. Daten gruppieren#
Im ersten Schritt lassen wir uns anzeigen, welche Datenbereitsteller die meisten DatensĂ€tze mit dem Begriff âBaumkatasterâ im Titel veröffentlicht haben. Durch diese Gruppierung erhĂ€lt Dr. Weber einen schnellen Ăberblick darĂŒber, welche Institutionen oder Verwaltungseinheiten in den letzten Jahren besonders aktiv im Bereich der baumbezogenen offenen Daten waren â ein wichtiger Hinweis auf mögliche Hauptquellen fĂŒr seine weitere Recherche.
ErklÀrung des Codes
PREFIX
Zu den bekannten Prefixes kommt nun rdfs dazu, um das RDF Schema, also allgemeine Begriffsdefinitionen einzuschlieĂen.
SELECT
Der COUNT Befehl bei SPARQL wird verwendet, um die Anzahl der Ergebnisse zu zĂ€hlen, die eine bestimmte Bedingung erfĂŒllen. Der AS Befehl folgt dem COUNT und dient dazu, das Ergebnis der ZĂ€hlung einer Variablen zuzuweisen, die dann im Ergebnis verwendet werden kann. DISTINCT gibt an, dass nur eindeutige (âdistinctâ) Werte der Variable ?datasetTitle gezĂ€hlt werden sollen. AS ?uniqueDatasetTitleCount weist das Ergebnis der ZĂ€hlung der Variable ?uniqueDatasetTitleCount zu.
Diese Variable kann dann im Ergebnis verwendet werden, um die Anzahl der eindeutigen Titel ?datasetTitle fĂŒr jede contributorID anzuzeigen.
WHERE
Wir suchen nach DatensĂ€tzen die nach dcat als Datensatz bezeichnet sind (?datasetURI a dcat:Dataset), einen Titel nach dct (dct:title ?datasetTitle) und einen Datenbereitsteller nach dcatde (dcatde:contributorID ?contributorID) aufweisen und ein nach dct definiertes Ănderungsdatum haben (dct:modified ?modified).
FILTER
Die Bedingung (LANG(?datasetTitle) = "" || LANG(?datasetTitle) = "de") wird verwendet, um sicherzustellen, dass nur Titel (?datasetTitle) ausgewĂ€hlt werden, die entweder keine Sprachinformation haben (ââ) oder explizit als Deutsch (âdeâ) gekennzeichnet sind. Dies ist wichtig, da nicht alle Datenbereitsteller Information ĂŒber die Sprache des Datensatzes einschlieĂen. Die Suche nach DatensĂ€tzen mit deutscher Sprachinformation mag ĂŒberflĂŒssig wirken, denn das Wort âBaumkatasterâ ist bereits ein deutsches Wort. Trotzdem wollen wir diese Funktion an dieser Stelle hervorheben, weil wir spĂ€ter davon Gebrauch machen werden.
Mit GROUP BY ?contributorID werden die Ergebnisse nach dem Datenbereitsteller sortiert.
Code
Output
ErklÀrung des Ergebnisses
Wir bekommen eine Liste ausgegeben, die anzeigt welche Datenbereitsteller wie viele DatensÀtze eingestellt haben.
AuffÀllig ist, dass ganz verschiedene Institutionen und Verwaltungsebenen offene Daten bereitstellen. Hinter http://dcat-ap.de/def/contributors/mobilithek verbirgt sich beispielsweise die Mobilithek des Bundesverkehrsministeriums und neben BundeslÀndern finden sich auch kommunale Datenbereitsteller.
5.3.2. Dateiformate#
Story
Im Anschluss interessiert sich Dr. Weber dafĂŒr, in welchen Formaten die Baumkataster-Daten vorliegen, da dies direkte Auswirkungen auf deren Wiederverwendbarkeit hat. WĂ€hrend offene Formate wie CSV, GeoJSON oder XML eine einfache Analyse ermöglichen, können proprietĂ€re oder unstrukturierte Formate die Verarbeitung erschweren.
Daher erweitern wir unsere SPARQL-Abfrage, um fĂŒr jeden Datenbereitsteller zu ermitteln, wie viele unterschiedliche Datenformate dieser im Zusammenhang mit Baumkataster-Daten anbietet. Diese Auswertung hilft Dr. Weber dabei einzuschĂ€tzen, bei welchen Anbietern er mit einem breiten und technisch zugĂ€nglichen Angebot rechnen kann â ein entscheidender Aspekt fĂŒr seine geplante Analyse des Baumbestands.
ErklÀrung des Codes
Statt der Titel, zÀhlen wir nun mit dem Befehl SELECT ?contributorID (COUNT(DISTINCT ?format) AS ?formatCount) die verschiedenen Formate, die mit den DatensÀtzen verbunden sind.
Mit dem WHERE-Befehl suchen wir nach DatensÀtzen (dcat:Dataset), die die folgenden Eigenschaften haben:
dct:title: einen Titel.dcatde:contributorID: eine ID des Datenbereitstellers.dct:modified: ein Datum der letzten Ănderung. sowie mitOPTIONALnach dem Katalog des Datensatzes, wenn er vorhanden ist.
Dazu filtern wir mit FILTER, dass der Titel entweder keine Sprachangabe hat oder in Deutsch vorliegt, das Wort âbaumkatasterâ enthĂ€lt (unabhĂ€ngig von GroĂ- oder Kleinschreibung) und dass der Datensatz innerhalb des Zeitraums von 2015 bis 2025 veröffentlicht wurde.
?datasetURI dcat:distribution ?distribution. und ?distribution dct:format ?format. geben zudem an, dass der Datensatz eine Distribution und diese ein bestimmtes Format haben muss.
Mit GROUP BY ?contributorID werden die Ergebnisse nach dem Datenbereitsteller sortiert.
Code
Output
ErklÀrung des Ergebnisses
Wir erhalten eine einfache Liste mit zwei Spalten: den Datenbereitstellern und der Summe von Formaten der eingestellten DatensĂ€tze. Das bedeutet, dass ein bestimmter Bereitsteller mit der Summe seiner eingestellten Dateien beispielsweise auf 21 verschiedene Dateiformate kommt. Das heiĂt allerdings nicht, dass alle DatensĂ€tze in jeweils jedem Format vorhanden sind. Ablesbar ist aus dieser Zusammenstellung lediglich ein gewisses MaĂ an FlexibilitĂ€t.
5.3.3. Eingrenzung der Abfrage#
Story
Nachdem Dr. Weber nun einen Ăberblick darĂŒber erhalten hat, welche Datenbereitsteller aktiv sind und viele Dateiformate anbieten, möchte er sich fĂŒr einen konkreten Datensatz entscheiden, um seine Analyse zu starten. Dabei ist es ihm wichtig, den regionalen Bezug zum Raum Berlin-Brandenburg zu wahren, da seine bisherigen Untersuchungen vor allem auf diese Region fokussiert waren.
Er entscheidet sich daher, gezielt nach DatensĂ€tzen zu suchen, die von der Plattform âOpen Data Brandenburgâ bereitgestellt werden und das Stichwort âBaumkatasterâ im Titel fĂŒhren. Durch diese gezielte EinschrĂ€nkung kann Dr. Weber sicherstellen, dass die Daten sowohl thematisch relevant als auch geographisch passend sind â und damit eine geeignete Grundlage fĂŒr die weitere Analyse des Baumbestands in der Region darstellen.
Um direkt auf die Daten zugreifen zu können, erweitern wir die Abfrage um die Zugriffs-URL (accessURL). Diese verweist auf die konkrete Stelle, an der der Datensatz heruntergeladen oder weiterverarbeitet werden kann â ein praktischer Schritt, der es Dr. Weber ermöglicht, ohne Umwege mit der Analyse zu beginnen.
ErklÀrung des Codes
An den PREFIXes Àndern wir nichts.
SELECT
Wir wollen uns eine Tabelle anzeigen lassen, die vier Spalten hat: den URI (?datasetURI), den Titel (?datasetTitle), die Beschreibung (?datasetDescription) und die Download-URL (?accessURL) jedes Datensatzes.
WHERE
Wir suchen neben bekannten Elementen zusÀtzlich nach einem bestimmten Datenbereitsteller - nÀmlich Open Data Brandenburg (dcatde:contributorID <http://dcat-ap.de/def/contributors/openDataBrandenburg>), einer Beschreibung des Datensatzes (dct:description ?datasetDescription) und einer Distribution (dcat:distribution ?distribution), die als Zugriffs-URL definiert ist (?distribution dcat:accessURL ?accessURL).
Die FILTER sind bekannt und die Ordnung erfolgt nach Titel (ORDER BY ?datasetTitle).
Code
Output
ErklÀrung des Ergebnisses
Wir erhalten die Tabelle mit vier Spalten: dem URI des Datensatzes, dem Titel des Datensatzes, der Beschreibung des Datensatzes und einer URL unter der der Datensatz zu finden sien sollte.
Story
Dr. Weber möchte nun einen bestimmten Datensatz genauer unter die Lupe nehmen. Allerdings stellt er bei der ĂberprĂŒfung fest, dass sich der betreffende Datensatz nicht direkt herunterladen lĂ€sst oder die bereitgestellte URL nicht wie erwartet funktioniert.
Das zeigt: Auch wenn Metadaten vielversprechende Informationen liefern, ist es in der Praxis oft notwendig, die tatsĂ€chliche VerfĂŒgbarkeit und ZugĂ€nglichkeit der Daten manuell zu prĂŒfen. Dr. Weber wird seine Suche daher fortsetzen mĂŒssen â eventuell mit einer breiteren geografischen Eingrenzung oder indem er nach anderen relevanten Begriffen sucht.
Dr. Weber blickt nun in Richtung Nordrhein-Westfalen (NRW). Bereits bei der vorherigen Auswertung zur DatenverfĂŒgbarkeit war ihm aufgefallen, dass NRW eine besonders hohe Anzahl an relevanten DatensĂ€tzen bereitstellt â und das in verschiedenen Formaten und mit stabiler Zugriffbarkeit.
Die gute technische Performance und die Vielzahl veröffentlichter Inhalte lassen darauf schlieĂen, dass das Land NRW ein fortschrittliches Open-Data-Angebot betreibt, das möglicherweise besser fĂŒr eine umfassende Analyse geeignet ist. Aus diesem Grund richtet Dr. Weber nun gezielt seine Suche auf DatensĂ€tze, die durch Open Data NRW bereitgestellt werden und thematisch zu seiner Untersuchung rund um Baumkataster und Baumpflanzungen passen.
EinfĂŒhrung in den Code
Wir Àndern bei dieser Abfrage nur die Suche nach einem bestimmten Datenbereitsteller - nÀmlich Open Data NRW (dcatde:contributorID <http://dcat-ap.de/def/contributors/openNRW>)
Code
Output
ErklÀrung des Ergebnisses
Wir bekommen eine Liste ausgegeben, die uns Baumkataster-DatensÀtze aus NRW mit URI, Titel, Beschreibung und Zugangs-URL anbietet. Bei dieser Suche finden sich Zugangs-URL, die einen direkten Datenabruf ermöglichen.
Fund eines geeigneten Datensatzes
Nach intensiver Recherche entscheidet sich Dr. Weber schlieĂlich fĂŒr den Datensatz Baumkataster Köln 2017. Dieser bietet eine umfassende Beschreibung des stĂ€dtischen Baumbestands und enthĂ€lt nicht nur geografische Informationen, sondern auch detaillierte Angaben zur Baumart, zum Alter, zur Kronenbreite, zur Stammdicke sowie zur Wuchshöhe der BĂ€ume.
Besonders positiv fĂ€llt Dr. Weber die gute ZugĂ€nglichkeit des Datensatzes auf - die enthaltenen Informationen sind klar strukturiert, verstĂ€ndlich dokumentiert und stehen in einem gĂ€ngigen Format zur VerfĂŒgung. Dadurch lĂ€sst sich der Datensatz problemlos in bestehende Analyseumgebungen integrieren â ein wichtiger Vorteil fĂŒr die praktische Weiterverarbeitung. Auch wenn der Datensatz noch nicht den vollstĂ€ndigen Baumbestand der Stadt Köln abbildet, bietet er bereits jetzt eine solide Datenbasis fĂŒr eine fundierte Analyse.
Damit verfĂŒgt Dr. Weber ĂŒber eine valide Grundlage, um erste Auswertungen zur Baumverteilung und -struktur in einer GroĂstadt vorzunehmen und mögliche Modellregionen fĂŒr seine Untersuchung zu identifizieren.
Was Sie mitnehmen sollten
Die tatsĂ€chliche ZugĂ€nglichkeit muss oft manuell geprĂŒft werden.