Daten zu OpenStreetMap beitragen ist einfach. Daten von OpenStreetMap zurück zu erhalten ist vergleichsweise kompliziert und aufwändig.[1] Bis jetzt.
overpass turbo
Das Tool overpass turbo erhebt seit etwa einem Jahr [2] den Anspruch, jedem Normal-Mapper eine einfache Möglichkeit zu bieten, direkt auf alle OpenStreetMap-Daten zuzugreifen und damit Visualisierungen, Auswertungen, Analysen, usw. zu erstellen.
Das Tool basiert grundsätzlich auf der sogenannten Overpass API, einer Datenbank speziell für OpenStreetMap, die es mit Hilfe einer speziellen Abfragesprache ermöglicht, OSM-Daten zu filtern.
Der Ablauf ist dabei immer der Folgende: Für ein spezielles Problem stellt man sich eine meist kurze Abfrage zusammen (diese definiert, welche Daten man erhalten möchte), lässt diese dann vom Overpass API Datenbankserver ausführen, und erhält schließlich die gewünschten OSM-Daten zurück. Diese Daten werden dann auf einer Karte visualisiert und stehen für eine eventuelle Weiterverarbeitungen als Export zur Verfügung.
Ein Beispiel: Man möchte die Positionen aller Trinkbrunnen wissen, um die nächste Fahrrad-Tour besser planen zu können. Die dazu passende Abfrage sieht in etwa folgendermaßen aus:
<query type="node">
<has-kv k="amenity" v="drinking_water" />
<bbox-query {{bbox}} />
</query>
<print />
Query Wizard
Leider ist das Erstellen solcher Abfragen immer noch etwas für IT-affine Menschen, denn nicht jeder Mapper kann sofort etwas mit der XML-Syntax anfangen. Außerdem muss man immer für jede Objektkategorie das entsprechende OSM-Tag und die Feinheiten der Overpass-Abfragesprache im Kopf haben. Noch dazu ist das Eintippen oft recht mühsam und aus eigener Erfahrung tendenziell etwas lästig.
Genau hier setzt der seit Kurzem verfügbare „Query Wizard“ – ein Assistent für Overpass-Abfragen – an. Er ermöglicht es ohne Vorkenntnis der Overpass Abfragesprache, für die meisten Problemstellungen die richtige Abfrage zu formulieren. Der Wizard erstellt aus einer kurzen, lesbaren Beschreibung des Problems die entsprechende Abfrage und führt diese direkt aus.
Um auf das vorangehende Beispiel zurückzukommen, genügt es jetzt einfach das entsprechende Tag für die Trinkbrunnen anzugeben:
amenity=drinking_water
Einfacher, oder?
Intelligenter Wizard
Was aber, wenn man gerade das Tag der gewünschten Objekte nicht weiß – „War der Schlüssel ‚amenity‘ oder ‚leisure‘ oder doch ‚tourism‘?“ Sicherlich helfen das OSM-Wiki oder Taginfo weiter, aber eigentlich sollte es doch genügen dem Wizard nur mitzuteilen, dass man eben an Trinkbrunnen interessiert ist:
Trinkbrunnen
Stimmt, das genügt. Der Assistent wandelt solche Begriffe dann selbstständig in die entsprechenden OSM-Tags um.
Das funktioniert, weil der Assistent eine Liste von Vorlagen – sogenannte Presets – kennt: Und zwar genau jene, die auch im iD-Editor zum Mappen verwendet werden können. Glücklicherweise sind diese Presets auch bereits in viele Sprachen übersetzt, somit funktioniert das auch automatisch in der jeweiligen Sprache des Benutzers.
Was kann er noch?
Der Assistent kann nicht nur einfache Abfragen für einzelne Tags oder Suchbegriffe ausführen. Es gibt auch noch eine Reihe von weiteren Filterkriterien (z. B. nach OSM-Datentyp, Bearbeitungsdatum, usw.) welche beliebig miteinander kombiniert werden können:
Restaurant and (cuisine=pizza or cuisine=italian)
Außerdem kann angegeben werden, in welchem Gebiet die Daten gesucht werden sollen. Standardmäßig wird nämlich im jeweils Aktuellen Kartenausschnitt gesucht, alternativ kann aber beispielsweise auch innerhalb einer bestimmten Stadt gesucht werden:
Museum in Wien
Die Möglichkeiten von overpass turbo hören hier natürlich noch lange nicht auf, jedoch ist hier kein Platz mehr um jedes einzelne Feature zu beschreiben. Ich hoffe aber, dass man bereits an diesem Punkt seiner Phantasie und Kreativität freien Lauf lassen kann, und sich viele tolle neue Anwendungen für die Daten von OpenStreetMap finden werden.
Fußnoten
[1] Bei OpenStreetMap mitzuarbeiten hat sicher viele Gründe. Einer der wichtigsten davon ist es wohl, die von einem selbst beigetragenen Daten in der Einen oder Anderen Form in einer Karte, einem Navigationsprogramm oder einer anderen Anwendung wiederzufinden. Was aber, wenn es für eine bestimmte Kategorie von Dingen noch keine solche Auswertung gibt? „Selbst programmieren”, hieß die Devise bisher in solchen Fällen. Leider lohnt sich der Aufwand aber nicht unbedingt immer, und außerdem ist nicht jeder ein Programmierer und damit überhaupt in der Lage so ein Projekt umzusetzen.
[2] Im vergangenen Jahr wurden ca. 200.000 Abfragen von täglich bis zu 250 Benutzern aus der ganzen Welt getätigt.