[OSM-HH] Überarbeitung Bahnstrecken in und um Hamburg

Ingo Lange info at nimmbus.de
Mo Aug 25 22:54:34 CEST 2008


Hallo,

beim letzten Mapper-Treffen hatte ich schon kurz mit einigen von euch darüber
gesprochen, dass die Bahnstrecken (Fernbahn, S-Bahn, U-Bahn) in und um Hamburg
dringend einer Vereinheitlichung bedürfen, um die Daten für eine
weitere Verwendung nutzbar zu machen. Ich habe mir deshalb ein paar Gedanken
gemacht, wie die Strecken und Bahnhöfe sinnvoll in OSM eingetragen werden
könnten, und stelle sie hier zur Diskussion. Wenn wir uns hier in der
Mailing-Liste soweit einig sind, werde ich die Punkte zusammenfassen und im Wiki
veröffentlichen. Die entsprechende Überarbeitung des Streckennetzes im Hamburger
Raum würde ich dann auch systematisch selbst übernehmen, so dass hier ein
gewisser Abschluss erreicht werden kann.

Da die Ausführungen etwas länglich geworden sind, hier vorweg je zwei konkrete
Beispiele für Strecken und Bahnhöfe gemäß der unten vorgeschlagenen Regeln:

Beispiel für eine S-Bahn-Strecke:

railway = light_rail
name    = S2, S21
lines   = S2;S21
network = HVV

Beispiel für eine Hochbahn-Strecke:

railway = subway
bridge  = viaduct
layer   = 1
name    = U3
lines   = U3
network = HVV

Beispiele für Bahnhöfe:

railway          = station
name             = Rothenburgsort
uic_name         = Hamburg-Rothenburgsort
uic_ref          = 8005191
hvv:psv_type     = S
hvv:barrier_free = no

railway          = station
name             = Sternschanze
uic_name         = Hamburg Sternschanze
uic_ref          = 8070146
hvv:psv_type     = U;S
hvv:barrier_free = dependent
hvv:barrier_free_psv_types = S

Und jetzt ausführlich:

Strecken (Eisenbahn/S-Bahn/U-Bahn)
==================================

Zweigleisige Strecken werden nur als ein Weg gezeichnet (analog einer
normalen Straße). Bei baulicher Trennung, z. B. ein Gleis auf Überführung,
das andere durch Tunnel, wird die Strecke per "Weiche" in zwei Wege
aufgeteilt und anschließend wieder vereinigt. Bahnsteige gelten nicht als
bauliche Trennung.

S-Bahn als "railway = light_rail". Auch wenn die S-Bahnen in Deutschland echte,
vollwertige Eisenbahnen sind, wird zumindest die Hamburger und Berliner S-Bahn
in der Bevölkerung als eigenes System empfunden, das kleiner, schneller,
häufiger, eben "leichter" ist als die große Bahn. Dies ist in Hamburg und
Berlin bereits so getaggt. Weiteres Argument: Die S-Bahn-Gleise in Hamburg
und Berlin können vielfach nicht von normalen Eisenbahnfahrzeugen
befahren werden (Tunnel zu niedrig, Bahnsteige zu hoch).

S-Bahn Neugraben - Stade als "railway = rail", denn hier fahren Metronom
und S-Bahn auf denselben Gleisen und gemäß den OSM-Map Features gewinnt
der stärkere.

AKN als "railway = rail". Vollwertige Eisenbahn, auf einigen Strecken sogar
Güterverkehr. Auf der Strecke Eidelstedt - Hauptbahnhof gewinnt allerdings nicht
die stärke AKN-"rail" gegen die S-Bahn-"light_rail", weil die AKN hier
nur zeitweise im Abendverkehr auf den S-Bahn-Gleisen fährt und eine
eher untergeordnete Rolle spielt.

U-Bahn als "railway = subway" wie vorgesehen.

Viadukte als "bridge = viaduct" (Brücken überbrücken etwas bestimmtes,
Viadukte führen längere Zeit oben). Eine Brücke zwischen zwei
Viaduktabschnitten kann möglich sein.

Abstellanlagen als "service = yard". Nicht im Linienverkehr genutzte
Streckenabschnitte (z. B. Verbindungskurven) als "service = spur". Große,
oft fächerförmige Abstellanlagen und Rangierbahnhöfe können durch wenige,
exemplarische Gleise angedeutet werden.

Bei nicht höhengleichen Kreuzungen, auch im Untergrund, auf richtige
Layer achten. Sollte es im Tunnel Brücken geben, sollte man evtl. auf
das bridge-Tag verzichten, falls die Renderer das falsch darstellen.

Liniennummern als "name = *" auf dem Weg, z. B. "name = S2, S21". Dieser
Text wird normalerweise gerendert und sollte für Menschen "schön" aussehen.
Zusätzlich könnte man unter "lines = *" die Linien maschinenlesbar eintragen:
"lines = S2;S21".

Strecken im HVV bekommen das Tag "network = HVV".

Einen Betreiber (operator-Tag) anzugeben ist oft schwierig, da in
Deutschland Netz und Betrieb getrennt sein können, z. B. fahren auf der
Strecke nach Elmshorn sowohl die DB Regio AG als auch die
Nord-Ostsee-Bahn GmbH, während die Strecke selbst der DB Netz AG gehört. Auf
der S-Bahn-Strecke Eidelstedt - Hauptbahnhof, die ebenfalls der DB Netz AG
gehört, fährt neben der S-Bahn Hamburg GmbH auch die AKN Eisenbahn AG.
Worauf sollte sich das operator-Tag beziehen? Braucht man es überhaupt?

Bahnhöfe/Haltestellen
=====================

Alle Haltestellen bei der U- und S-Bahn werden als "railway = station"
eingetragen. Die Kennung "railway = halt" ist laut OSM-Map Features für
wesentlich kleinere Haltepunkte vorgesehen (teilweise ohne Bahnsteig, Halt nur
bei Bedarf). Das gibt es vielleicht auf der Wendlandbahn (10 Züge pro Tag),
aber nicht im U- und S-Bahn-Netz.

Als Haltestellen-Punkt wird immer ein Punkt des Weges genommen, er wird
nicht neben dem Weg oder als losgelöster Punkt auf dem Weg platziert. Der
Name wird als "name = *" ohne Begriffe wie "Bahnhof" eingetragen. Auch
ohne "U" oder "S", denn die sind nicht Teil des Namens (weder an den
Schildern noch sonstwo, nur die Bushaltestellen haben ein U oder S vor
dem Bahnhofsnamen).

Im Fernbahnbereich wird der offzielle DB-Name genommen inkl. Zusätze, also
z. B.

Hamburg Hbf
Hamburg-Wandsbek
Hamburg Dammtor
Buchholz (Nordheide)

Fehlende Leerzeichen sollten eingefügt werden, also "Buchholz (Nordheide)" statt
"Buchholz(Nordheide)". Der ganz korrekte Name könnte evtl. unter "uic_name = *"
eingetragen werden.

Bei U- und S-Bahn wird der kürzere HVV-Name genommen, also z. B.

Hauptbahnhof
Bergedorf
Dammtor
Wedel

Unter "uic_ref = *" wird, soweit bekannt, die internationale Bahnhofsnummer
eingetragen, unter "uic_name = *" evtl. der abweichende DB-Name.

Besteht ein Bahnhofskomplex aus mehreren Haltestellen auf unterschiedlichen
Wegen, die sich nicht in einem Punkt kreuzen, so bekommt jeder Weg eine
eigene "railway = station" plus Namen (z. B. Ohlsdorf) [bisher keine
befriedigende Lösung vorhanden]. Ansonsten bekommt der Kreuzungspunkt
das station-Tag (z. B. Lübecker Straße).

Bei großen, mehrgleisigen Bahnhöfen wie Hauptbahnhof oder Altona, bekommt ein 
Gleis exemplarisch das station-Tag (aber jedes Verkehrssystem ein eigenes)
[bisher keine befriedigende Lösung vorhanden].

Wenn möglich, wird der station-Punkt dort gesetzt, wo sich der Zugang befindet
(z. B. am Bahnsteigende). Bei mehreren Zugängen dazwischen.

Die Bahnsteige werden nicht gemappt, da zurzeit keine geeigneten Tags dafür
vorgesehen sind (Fußgängerzonen, Servicewege, Fußwege usw. sind unbefriedigende,
uneinheitliche Notlösungen, die mehr verwirren als nützen). Reell wäre ein
Bahnsteig-Tag am Weg selbst auf dem entsprechenden Abschnitt (z. B.
"plattform = left/right/middle/outlying"), das existiert aber (noch) nicht.

In den Map Features wird noch die Möglichkeit angegeben, das Bahnhofsgebäude
als "building = train_station" zu mappen. Zählt man auch die Bahnsteige samt
Gleisen zum Bahnhofsgebäude, wäre dies eine schöne Möglichkeit, die Lage der
immerhin bis zu 200 m langen Bahnsteige im Straßenbild darzustellen, evtl.
noch ergänzt durch "railway = subway_entrance"-Punkte an den Eingängen. Man
muss vermutlich nur mit dem layer-Tag aufpassen, dass die Gleise nicht unter
dem Gebäude verschwinden. Allerdings dürfte dies nur für oberirdische Bahnhöfe
tauglich sein, bei unterirdischen hätte man sonst in der Karte wohl Gebäude
mitten auf der Straße und Ähnliches.

Fußwege müssen nicht als Zuwege zum Schienenverkehr mit dem station-Punkt oder
dem railway-Weg verknüpft werden. Routing-Programme müssen dies auf andere Weise
finden. Sonst müsste man ja auch sämtliche Gebäude und POIs mittels Fußwegen
an das Straßennetz anbinden. Verkehrlich sinnvolle Wegeverbindungen durch das
Bahnhofsgebäude hindurch sollten natürlich gemappt werden.

Weitere Vorschläge
==================

Um speziell in Hamburg bzw. im HVV die Art von Bahnhof zu unterscheiden,
könnte ein zusätzliches, lokales Tag das oder die Verkehrsmittel angeben, die
dort halten, z. B.

hvv:psv_type = U       bei einer U-Bahn-Haltestelle
hvv:psv_type = S       bei einer S-Bahn-Haltestelle (entsprechend auch A und R)
hvv:psv_type = U;S     bei kombinierter U- und S-Bahn-Haltestelle

(psv = übliche Abkürzung in OSM für public service vehicle)

Außerdem wären Informationen über Zugänge und Barrierefreiheit nützlich:

hvv:barrier_free = yes/no/unkown/dependent

Für die meisten Bahnhöfe reicht yes/no, aber es gibt zahlreiche Spezialfälle, wo
Barrierefreiheit nur für bestimmte Verkehrsmittel (z. B. Ohlsdorf), Linien
(z. B. Blankenese), Richtungen (z. B. Billwerder-Moorfleet) vorliegt. Deshalb
der Wert dependent, der durch weitere Tags genauer spezifiziert werden
müsste, z. B. durch

hvv:barrier_free_psv_types = U (oder S oder U;S usw.)
hvv:barrier_free_lines = S1
hvv:barrier_free_directions = 1 (Richtung des Wegs) oder -1 (andere Richtung)

Damit müsste man 99,9 % aller Fälle erschlagen können.

Das Präfix "hvv:" bei der Barrierefreiheit schlage ich vor, weil es durchaus
unterschiedliche Definitionen daür gibt. So sind z. B. die Bahnhöfe der AKN zum
größten Teil behindertenfreundlich ausgerüstet, aber man kommt als
Rollstuhlfahrer nicht ohne Hilfe in den Zug. Wer sich nicht auf andere
Fahrgäste verlassen möchte, muss vor der Fahrt telefonisch ein spezielles
Mobilitätsteam anfordern. Die AKN-Bahnhöfe werden vom HVV deshalb nicht als
barrierefrei gekennzeichnet, obwohl sie baulich entsprechend ausgerüstet sind.
Wer Barrierefreiheit anders definieren möchte, kann den Bahnhof zusätzlich mit
einem anderen Tag versehen, z. B. "akn:barrier_free = *".

Soweit meine Ideen. Ich bin gespannt auf eure Kritik und Vorschläge.

Beste Grüße

Ingo Lange