Handbuch zur Overpass API

Verwendung
Räumliche Datenauswahl
Objekte Finden
Objekte Zählen
Daten Analysieren
Anhang

OpenStreetMap und die Overpass API

Wie funktioniert die Bewegung OpenStreetMap? Wo befindet sich darin die Overpass API?

Was ist OpenStreetMap?

OpenStreetMap ist zunächst einmal eine Datenbank weltweiter Geodaten. Dabei handelt es sich um Geobasisdaten, z.B. Straßen, Eisenbahnlinien, Gewässer sollen vollständig vorhanden sein, und auch Geschäfte und Restaurants mit Namen und Öffnungszeiten sind hochwillkommen.

Generell wird in OpenStreetMap alles eingetragen, das vor Ort beobachtbar ist. Eine Straße hat ein Straßenschild, ein Restaurant hat ein Schild über der Tür hängen. Bei einem Fluss oder einer Eisenbahnstrecke lassen sich die Bezeichnungen meist indirekt aus Hinweisschildern ablesen.

Sehr vereinzelte Ausnahmen vom Sichtbarkeitserfordernis gibt es. Die einzige uneingeschränkt akzeptierte Ausnahme sind Staats-, Landes- und Gemeindegrenzen.

Nicht eingetragen werden personenbezogene Daten: Es ist in OpenStreetMap unzulässig, z.B. Klingelschilder abzuschreiben und in OpenStreetMap einzutragen.

Dies erlaubt, zusammen mit der freien Datenlizenz, die OpenStreetMap-Daten in komplett herunterzuladen und weiterzuverarbeiten. Damit lassen sich im Prinzip Fragen beantworten wie

  1. Wo liegt Stadt X, Fluss Y, Restaurant Z?
  2. Was liegt in der Nähe von X oder in X?
  3. Wie komme ich zu Fuß, mit dem Fahrrad oder per PKW von Punkt X nach Punkt Y?

Ebenso lässt sich damit auf viele verschiedene Weisen eine Weltkarte zeichnen. Um die grundsätzliche Eignung der Daten beurteilen zu können, ist über eine Beispielkarte hinaus auch ein Beispielwerkzeug zum Geocoding implementiert. Es heißt Nominatim, beantwortet Frage (1) von oben, und es kann zusätzlich auch zu einer Koordinate eine Adresse angeben, sogenanntes Reverse Geocoding. Ebenso sind über die Haupt-Website openstreetmap.org auch Werkzeuge für sogenanntes Routing verfügbar. Diese beantworten, wie man von Punkt X nach Punkt Y kommt.

Allerdings sind es sehr viele Daten, und es werden in jeder Minute Änderungen durch Mapper in den Daten eingetragen. Die Daten en-bloc herunterzuladen und zu verarbeiten ist daher für sehr viele Fragestellungen unpraktikabel. Um zumindest im Prinzip jedem unabhängig von OpenStreetMap die Datenverarbeitung zu ermöglichen, gibt es zusätzlich zum Gesamtdatenbestand auch jede Minute eine Datei mit den Updates.

Was ist die Overpass API?

Die Overpass API hält diese Daten vor, spielt die Updates ein und stellt die Daten zum Durchsuchen zur Verfügung. Einerseits gibt es öffentliche Instanzen, an die die Abfrage geschickt werden kann. Andererseits ist Overpass API auch freie Software, so dass jedermann eine eigene Instanz betreiben kann.

Zum ersten Kennenlernen bietet sich das Frontend Overpass Turbo an. Dort werden die Daten auch gleich auf einer Karte angezeigt. Als Beispiel suchen wir nach allem, was den Namen Sylt hat: Dazu wird der Abfragetext

nwr[name="Sylt"];
out center;

in den Textbereich links eingetragen und per Klick auf Ausführen die Abfrage an die Overpass API gesendet. Die Abfragesprache ist mächtig, aber auch umfangreich, und es ist Gegenstand dieses gesamten Handbuchs die Abfragesprache zu erläutern.

Tatsächlich ist die Overpass API aber vor allem darauf ausgelegt, auf Abfragen anderer Software über das Internet zu antworten. Das ist auch der Grund für den Namensbestandteil API. Für viele beliebte Beispielprogramme wird daher die direkte Anbindung im Kapitel Verwendung erläutert.


weiter: OpenStreetMap-Datenmodell