GEOFABRIK

Suche // Archiv

Das Buch

OpenStreetMap
Die freie Weltkarte nutzen und mitgestalten.
Von Frederik Ramm
und Jochen Topf.

Events

Karlsruhe Hack Weekend 29-30. Oktober 2016

Blog

(Gastbeitrag von Lukas Toggenburger, der den Address-View programmiert hat)

Letzthin wurde ich von User Stephan75 wegen der Auswertung von addr:place-Tags im OSM Inspector (http://tools.geofabrik.de/osmi/?view=addresses) angeschrieben. Für die Wochenaufgabe mit postalischen Adressen hat er sich gewünscht, solche Einträge auch angezeigt zu bekommen.

Seit der ersten Version werden im OSM Inspector Verbindungslinien von Adress-Einträgen (z.B. addr:street=Bahnhofstraße) zum nächstliegenden Punkt der zugehörigen Straße (highway=residential, name=Bahnhofstraße) eingezeichnet. Falls in der Region des Adress-Eintrags keine Straße mit entsprechendem Namen gefunden werden kann, wird das als potenzieller Fehler hervorgehoben. Das Tagging-System mit addr:place=… wird für diejenigen Fälle verwendet, wo sich die Adresse nicht auf eine sich in der Nähe befindliche Straße bezieht, sondern auf einen Weiler, eine Siedlung, etc. (place=…, name=…). Der anfangs erwähnten Anfrage von Stephan75 bin ich nachgekommen: Neu werden analog den Adressen mit addr:street=… auch für die Adressen mit addr:place=… Verbindungslinien bzw. Fehlermarkierungen eingezeichnet.

Zwei weitere Funktionen habe ich ebenfalls neu eingebaut: Zum einen werden Hausnummern (addr:housenumber=…) hervorgehoben, die nicht nur aus den Zeichen 0-9, a-z und A-Z bestehen. Zum andern habe ich mir gedacht, dass Adress-Einträge (addr:*=…) auf ungeschlossenen Linienzügen (ways) wohl meistens Tagging-Fehler sind (Ausnahme addr:interpolation=…). Solche Einträge werden nun ebenfalls hervorgehoben.

Hintergrund

Im Herbst 2013 schrieb ich als Projektarbeit für mein Masterstudium im Bereich ICT die Adress-Ansicht des OSM Inspectors um. Ziel war eine schnellere Verarbeitung und die Erweiterung des dargestellten Gebiets von Europa auf die gesamte Welt. Anstatt das Projekt nach dem Erhalt der Note auf sich beruhen zu lassen, habe ich immer wieder mal Änderungen vorgenommen, einsehbar unter https://github.com/ltog/osmi-addresses.

Die Software ist in C++11 geschrieben. Unter Verwendung von libosmium (https://github.com/osmcode/libosmium) werden Adress-relevante Inhalte aus OSM-Daten extrahiert und in .sqlite-Dateien geschrieben. Deren Inhalte wiederum werden mittels OSGeo MapServer ans Webinterface ausgeliefert. Auch die direkte Einbindung in JOSM über die WMS-Schnittstelle ist möglich, siehe https://wiki.openstreetmap.org/wiki/OSM_Inspector/WxS.

Kommentare und Pull-Requests nehme ich gerne entgegen.

Ein herzliches Dankeschön geht an die Firma Geotab Inc. (http://www.geotab.com), die das Hosting des Address View finanziert und an die Geofabrik, die den OSM Inspector betreibt. Danke auch ans Institut für Photonics und ICT (http://www.htwchur.ch/ipi), das die Arbeit betreut hat (und damals wie heute mein Arbeitgeber ist).

Meta