Bahnhöfe in OpenStreetMap

Bahnhöfe in OSM

Wir beschäftigten uns gerade mit der Deutschen Bahn, was uns dazu verleitet hat, den Datensatz von OSM genauer zu betrachten.

Erst mal haben wir alle railway=station und railway=halt in eine Datenbank reingeholt und uns die Ergebnisse angesehen. Ein kleines Extrakt:

name
------------------------------------------------------------ 
Alexanderplatz - regional trains, S 5, S7, S75, U 2, U8, U5
Bleckede-Waldfrieden Draisinenbahn Haltestelle
München Airport Center (MAC) / Zentralbereich
Norddeich-Mole-Bushaltestelle-Behinderten-WC
Österreichischer Platz (WGV Versicherungen)
Eckartshaldenweg (HDI-Gerling Versicherung)
Österreichischer Platz (WGV Versicherungen)
Eckartshaldenweg (HDI-Gerling Versicherung)
MPSB Mecklenburg-Pommersche Schmalspurbahn
Betriebsbahnhof Mechterstädt-Sättelstädt

Bei der Analyse fallen direkt einige Dinge auf:

  • Die Bahnlinien gehören nicht in das name-Tag. Da das Gebäude (Zeile 1) ohnehin falsch war, ist es direkt rausgeflogen.
  • “Draisinenbahn” ist ganz klar eine Touristenattraktion und keine “richtige” Bahnanlage. Hier tendiere ich die Haltestelle mit usage=tourism zu taggen, da tourism=attraction aussagen könnte, dass ein Bahnhof auch eine Touristenattraktion ist.
  • Etwas wie “Österreichischer Platz (WGV Versicherungen)” ist eigentlich eine U-Bahn-Haltestelle und kein “echter” Bahnhof.

Wir haben also durchaus Probleme, die Bahnhöfe der klassischen Bahn “Deutsche Bahn” von sonstiger Infrastruktur auseinanderzuhalten. Hier würde es ggf. helfen, wenn Bahnhöfe der Deutschen Bahn durchgängig ein operator-Tag hätten. Peter sagte aber bereits, dass das eins der Ziele der OpenRailwayMap-Initiative wäre.

Vollständigkeitsanalyse

Außerdem wollten wir gleich prüfen, wie vollständig die Daten in OSM sind. Da habe ich mir die Daten von OpenPlanB zur Hand genommen, die angeblich unter ODbL stehen, aber nicht wirklich von OpenStreetMap verwendet werden können, weil die Deutsche Bahn empört war, wie man nur ihre Daten denn hacken könnte! Kurzum: Die Datenbank ist proprietär.

Nebeneinander legen der Daten dürfte uns aber keiner verbieten, solange wir sie nicht in OSM reinimportieren.

OpenStreetMap hat in Deutschland 5579 Bahnhöfe und 3361 Haltepunkte (insgesamt 8940), der Datensatz von OpenPlanB listet 10409. Da aber seltsamerweise OpenPlanB auch einige ausländische Bahnhöfe enthält und bei OSM teilweise Bahnhöfe mehrere Elemente mit dem Tag railway=station haben, ist hier nicht ganz auszumachen, wie vollständig unsere Daten sind. Es scheint aber so, dass wir recht weit sind.

Ein weiteres Problem ist, dass die Bezeichnungen in OpenStreetMap sind nicht immer mit den offiziellen Bezeichnungen der Deutschen Bahn decken, weshalb ein reines Vergleichen von Zeichenketten nur die halbe Geschichte erzählt, weswegen ich auch nach ähnlichen Zeichenketten im Datenbestand gesucht habe. Es gibt 4503 Bahnhofsbezeichnungen, die sich in beiden Datenbeständen befinden, also etwa 43 % aller OpenPlanB-Bahnhöfe. Außerdem gibt es 1468 Bahnhöfe, deren Bezeichnungen zu 80 % anderen Bezeichnungen der DB gleichen. Aufsummiert haben wir also eine Namensdeckung von etwa 57 %.

Disused

Es gibt zahlreiche Bahnstrecken und Bahnhöfe, die längst nicht mehr in Verwendung sind, die auch als solche mit disused=yes getaggt sind. So weit, so gut. Dennoch werden diese Element ganz normal von OSM.org gerendert und gleichwertig mit den in Betrieb befindlichen angezeigt.

Konklusionen

Es sieht nicht ganz schlecht aus. In Anbetracht der Tatsache, dass es so viele Bahnnerds im OSM-Umfeld gibt, sollte eine Harmonisierung der Nomenklaturen (Bezeichnungen der Bahnhöfe, Auszeichnung der Bahnhöfe der Deutschen Bahn) sowie der Strukturen (nur ein railway=station bzw. railway=halt pro Bahnhof sowie eine klarere Abgrenzung von Tourismus und verlassener Infrastruktur) nicht allzu schwer fallen.

— thomersch