Modellierung von Bus und Tramlinien sowie von Haltekanten, Wartebereiche und Haltestellen in OSM
Aktuell ist ein Grossteil der Linien von BERNMOBIL nach einem alten Schema (z.B highway=bus_stop) gemappt. Dieses alte Mappingschema kennt weiter keine route_master Relation, was die Modellierung und das spätere, getrennte Darstellen von einzelnen Linienfahrwegen verunmöglicht. Das neue schema (z.B public_transport=stop_position) schafft hier Abhilfe und behebt weitere Unzulänglichkeiten des alten Schemas. Die Spezifikation des neuen Schemas findet sich hier.
Das hier vorgestellte Mappingschema baut auf dem neuen Mappingschema auf und definiert die Nomenklatur der einzelnen Felder für die Linienfahrwege von BERNMOBIL. Weiter wird definiert welche Felder als Pflichtfeld aufgefasst werden (rot markiert) und welche optional sind. Das Kapitel unterscheidet zwischen dem Mapping von route_master, route, stop_position, platform und stop_area.
Im Normalfall hat jede Linie mindestens zwei Fahrwege (route). Einen Fahrweg pro Richtung. Je nachdem können Linien aber auch mehr als zwei Fahrwege haben, zum Beispiel dann wenn tageszeit-abhängig andere Haltestellen angefahren werden (z.B Eilkurse). Weiter können die Fahrwege im Fall einer Baustelle oder Veranstaltung ändern. So entsteht z.B ein zusätzlicher Linienfahrweg wenn in Bern der Bundesplatz gesperrt ist und die entsprechende Haltestelle nicht angefahren werden kann (Linie 10).
Alle diese Fahrwege (route) werden zu Gruppen (route_master) referenziert. Wobei ein route_master viele route‘s, eine route aber immer nur eine route_master haben kann. Diese route_master entsprechen somit dem fahrgastrelevanten Verständnis von Linien. Folgendes Mappingschema wird vorgeschlagen.
Fahrweg (route) für Buslinien (route=bus)
OSM Link auf Beispiel (route):
|
1358972 1358972 (Bus Linie 10)
|
Key
|
Value
|
Bemerkung
|
Beispiel
|
type |
route |
Definiert diese Relation als route |
route
|
route |
bus |
Definiert den Fahrzeugtyp der route |
bus
|
from |
<Startpunkt> |
Name der Starthaltestelle Nomenklatur siehe hier |
Köniz Schliern
|
to |
<Endpunkt> |
Name der Endhaltestelle Nomenklatur siehe hier |
Ostermundigen Rüti
|
via |
<wichtige Zwischenpunkte> |
Name der Haltestelle Nomenklatur siehe hier |
Hirschengraben
|
name |
<Fahrzeugtyp> <Referenz Nummer>: <Startpunkt> - <Zwischenpunkt> - <End-punkt> |
Name der Relation Nomenklatur siehe hier |
Bus 10: Köniz Schliern – Bern Bahnhof - Ostermundigen
|
description |
<Fahrzeugtyp> <Beschreibung> |
Beschreibt die Relation Nomenklatur siehe hier |
Stammlinie
|
opening_hours |
<Tageszeit zu der die route gefahren wird> |
Tageszeit zu der die route gefahren wird Nomenklatur siehe hier |
Mo-Sa 20:00-24:00; So 06:00-24:00
|
ref |
<Liniennummer> |
Name der Linie |
10
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Elemente der Relation route=bus
Beim Erstellen eines Linienfahrweges sollten die zugehörigen Wege entsprechend ihrer Reihenfolge in der Realität zur Relation hinzugefügt werden. Am Ende der Aufzählung werden dann die Haltestellen, eben-falls in der realen Reihenfolge aufgelistet.
Rolle
|
Referenziert auf
|
Bemerkung
|
Beispiel für Rolle
|
Beispiel für Referenziert auf
|
none |
way |
Nomenklatur siehe hier |
|
Bernstrasse (27 Punkte)
|
stop |
stop |
Kennzeichnet den Ort auf der Strasse zu der sich rechtwinklig dazu der Wartebereich (plat-form) der Haltestelle befindet (detaillierter unter 2.2.1)** |
stop |
Ostermundigen Rüti (46.956, 7.505)
|
stop_exit_only |
yes |
Kennzeichnet die Haltekante (respektive den Halt) mit einem Einsteigeverbot |
yes |
Ostermundigen Rüti (46.956, 7.505)
|
stop_entry_only |
yes |
Kennzeichnet die Haltekante (respektive den Halt) mit einem Aussteigeverbot |
yes |
Ostermundigen Rüti (46.956, 7.505)
|
platform |
platform |
Kennzeichnet den Wartebereich (platform) der Haltestelle |
platform |
Ostermundigen Rüti (46.956, 7.505)
|
Bemerkung: die von nounours77 vorgeschlagene Bezeichnung der Fahrtrichtung ("forward" falls mit dem weg, "backward" falls gegen den Weg) scheint nicht mehr nötig bzw. gewünscht zu sein. JOSM validator lässt es z.B. nicht zu. Laut https://wiki.openstreetmap.org/wiki/Proposed_features/Public_Transport soll keine forward/backward rolle mehr zugewiesen werden. --Nounours77 (talk) 08:54, 22 November 2014 (UTC)
Fahrweg (route) für Tramlinien (route=tram)
OSM Link auf Beispiel (route):
|
4089818 4089818 (Tram Linie 6)
|
Elemente der Relation route=tram
Beim Erstellen eines Linienfahrweges sollten die zugehörigen Wege entsprechend ihrer Reihenfolge in der Realität zur Relation hinzugefügt werden. Am Ende der Aufzählung werden dann die Haltestellen, ebenfalls in der realen Reihenfolge aufgelistet.
Rolle
|
Referenziert auf
|
Bemerkung
|
Beispiel für Rolle
|
Beispiel für Referenziert auf
|
none |
rail |
Nomenklatur siehe hier |
forward |
Gleise (14 Punkte)
|
stop |
|
Kennzeichnet den Ort auf der Strasse zu der sich rechtwinklig dazu der Wartebereich (plat-form) der Haltestelle befindet (detaillierter unter 2.2.1)** |
stop |
Bern, Bahnhof (46.937, 7.432)
|
stop_exit_only |
yes |
Kennzeichnet die Haltekante (respektive den Halt) mit einem Einsteigeverbot |
yes |
Ostermundigen Rüti (46.956, 7.505)
|
stop_entry_only |
yes |
Kennzeichnet die Haltekante (respektive den Halt) mit einem Aussteigeverbot |
yes |
Ostermundigen Rüti (46.956, 7.505)
|
platform |
platform |
Siehe hier |
platform |
Bern, Bahnhof (46.937, 7.432)
|
Zusätzlich ist beim Erstellen der Schienen (Rail) darauf zu achten, dass diese mit dem Tag oneway=yes (Schiene wird nur in der Richtung des Weges befahren) oder oneway=-1 (Schiene wird nur in der entgegen der Richtung des Weges befahren).
Key
|
Value
|
Bemerkung
|
Beispiel
|
type |
route_master |
Definiert diese Relation als route_master |
route_master
|
route_master |
bus |
Definiert das Transportgefäss der route_master |
bus
|
ref |
<Liniennummer> |
Nummer der Linie |
10
|
name |
<Fahrzeugtyp> <Liniennummer> |
Name der Linie Nomenklatur siehe hier |
Bus 10: Köniz Schliern – Ostermundigen
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Rolle
|
Referenziert auf
|
Bemerkung
|
Beispiel für Rolle
|
Beispiel für Referenziert auf
|
none |
route |
Hier werden alle route der route_master eingefügt und somit sämtliche Linienfahrwege einer Linie zusammengefasst |
|
Bus 10: Köniz Schliern – Bern Bahnhof - Ostermundigen
|
Key
|
Value
|
Bemerkung
|
Beispiel
|
type |
route_master |
Definiert diese Relation als route_master |
route_master
|
route_master |
tram |
Definiert das Transportgefäss der route_master |
tram
|
ref |
<Liniennummer> |
Nummer der Linie |
6
|
name |
<Fahrzeugtyp> <Liniennummer> |
Name der Linie |
Tram 6
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Rolle
|
Referenziert auf
|
Bemerkung
|
Beispiel für Rolle
|
Beispiel für Referenziert auf
|
none |
route |
Hier werden alle route der route_master eingefügt und somit sämtliche Linienfahrwege einer Linie zusammengefasst |
|
Tram 3: Bern Bahnhof - Weissenbühl
|
Haltekanten (oder Steige) und Wartebereiche werden in OSM nach dem neuen Schema folgendermassen gemappt. Das neue Schema kennt stop_position (node), platform (node or way, closed way or area) und stop_area (relation) als Werte für den Key public_transport. Die platform entspricht dem Wartebereich und kann mit einem Weg oder auch einer Fläche modelliert werden. Die (stop_position) ist ein Punkt „auf“ dem Weg oder Gleis des Linienfahrweges. Dieser Punkt soll nach Möglichkeit so gesetzt werden, dass er auf der Höhe der Bodenmarkierungen für Sehbehinderte Personen des Wartebereiches liegt. Wenn keine solche Markierung vorhanden oder bekannt ist, soll der Punkt mittig zum Wartebereich gesetzt werden. Die Relation mit dem Wert stop_area entspricht dem eigentlichen Verständnis von einer Haltestelle also einer Elternrelation aller Haltekanten mit dem gleichen uic_name und uic_ref.
Key
|
Value
|
Bemerkung
|
Beispiel
|
public_transport |
stop_position |
Definiert diesen Punkt als Haltepunkt |
stop_position
|
bus |
yes |
Verweist auf den Fahrzeugtyp.Es kann auch zu Situationen kommen in denen Trams und Busse die gleiche Haltestelle benutzen (z.B Zyt-glogge). In einem solchen Fall wird bus=yes und tram=yes getaggt |
yes
|
name |
<Name gemäss Fahrgastinformation vor Ort> |
Name der Haltestelle Nomenklatur siehe hier |
Ostring
|
uic_name |
<Name gemäss BAV> |
Name der Haltestelle gemäss BAV Nomenklatur siehe hier |
Bern, Ostring
|
uic_ref |
<Nummer gemäss BAV> |
Nummer der Haltestelle gemäss BAV Nomenklatur siehe hier |
8587480
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Key
|
Value
|
Bemerkung
|
Beispiel
|
public_transport |
stop_position |
Definiert diesen Punkt als Haltepunkt |
stop_position
|
tram |
yes |
Verweist auf den Fahrzeugtyp.Es kann auch zu Situationen kommen in denen Trams und Busse die gleiche Haltestelle benutzen (z.B Zyt-glogge). In einem solchen Fall wird bus=yes und tram=yes getaggt |
yes
|
name |
<Name gemäss Fahrgastinformation vor Ort> |
Name der Haltestelle Nomenklatur siehe hier |
Ostring
|
uic_name |
<Name gemäss BAV> |
Name der Haltestelle gemäss BAV Nomenklatur siehe hier |
Bern, Ostring
|
uic_ref |
<Nummer gemäss BAV> |
Nummer der Haltestelle gemäss BAV Nomenklatur siehe hier |
8587480
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Für die Modelierung von platform gilt nachfolgender Vorschlag. Das Mappen von platform ist aber nicht Teil des aktuellen Projekts. Entsprechend gibt es hier keine Pflichtfelder.
Für die Modelierung von stop_area gilt nachfolgender Vorschlag. Das Mappen von stop_area ist aber nicht Teil des aktuellen Projekts. Entsprechend gibt es hier keine Pflichtfelder.
Rolle
|
Referenziert auf
|
Bemerkung
|
Beispiel für Rolle
|
Beispiel für Referenziert auf
|
stop |
public_transport=stop_position |
Hier werden alle stop_point der stop_area eingefügt und somit sämtliche Haltekanten einer Haltestelle zusammengefasst |
stop |
Bern, Bahnhof Perron C
|
platform |
public_transport=platform |
Hier werden alle platform der stop_area eingefügt und somit sämtliche Wartebereiche einer Haltestelle zusammengefasst |
plattform |
Bern, Bahnhof Perron C
|
Modellierung von Strassen und Schienen
In diesem Abschnitt wird die Modellierung von Schienen und Straßen im Zusammenhang mit ÖV beschrieben.
Wichtigste Key/Value zum Modellieren von Schienen sind:
Key
|
Value
|
Bemerkung
|
Beispiel
|
railway |
tram |
Definiert das Way-Element als Schienen (MUST) |
tram
|
oneway |
yes |
Definiert, dass das Gleis nur in eine Richtung befahren werden kann (MUST, sofern 1 Spur pro Richtung vorhanden ist) |
yes
|
electrified |
contact_line |
Oberleitung vorhanden (nicetohave) |
contact_line
|
gauge |
<Spurbreite in mm> |
Definiert die Spurbreite in mm (nicetohave) |
1000 (für 1m)
|
voltage |
<Spannung des Fahrstromes in V> |
Definiert die Spannung des Fahrstromes (nicetohave) |
600 (für 600V)
|
maxspeed |
<max.Geschwindigkeit> |
Definiert die max.Geschwindigkeit (nicetohave) |
50 (für 50km/h)
|
operator |
<Name des Betreibers> |
Marketingbezeichnung (Marke), Markeninhaber ist BERNMOBIL AG (online Auszug HR Bern, via zefix.ch). BERNMOBIL wird immer „uppercase“ (versal) geschrieben |
BERNMOBIL
|
network |
<Verbund> |
Bezeichnung/Schreibweise gemäss Webseite Libero-Tarifverbund mit Angabe der Verbundpartner. Der Verbund ist nicht im HR eingetragen |
Libero
|
Wichtigste Key/Value zum Modellieren von Strassen im Zusammenhang Bussen/Trolley sind:
Key
|
Value
|
Bemerkung
|
Beispiel
|
highway |
primary, secondary, residential, service,... |
Definiert das Way-Element als entsprechende Highway-Typ. Bei reinen Busspuren ist highway=service zu setzten.(MUST)
Hinweis: Fahren Busse auf der Schiene (d.h. auf einer sep. ÖV-Spur), muss beim Schienenelement (railway=tram)psv=yes gesetzt werden. Bei den Übergangselementen zwischen der Strasse <--> Schiene muss highway=service und psv=yes gesetzt sein.
|
primary
|
psv |
yes/no |
Definiert, dass die Strasse vom Bus/Trolley befahren werden kann (MUST, wenn nur für Bus/Trolley vorbehalten)
Hinweis:psv=yes ist gegenüber bus=yes vorzuziehen, mit psv=yes wird nicht unterschieden zwischen Trolley und Bus.
|
yes
|
trolley_wire |
yes |
Trolley-Oberleitung vorhanden (nicetohave) |
yes
|
Abbiegeverbote oder Gebote:
Gelten Abbiegeverbote oder Gebote restriction=* nicht für den ÖV, muss der ÖV mit except=psv von der Regelung ausgeschlossen werden.