Station-Linien-Zuordnung

Hallo,

ich bin noch neu in der OSM Welt, und wollte eine Frage stellen, bevor ich versehentlich Sachen kaputt mache:

Ich arbeite in Kairo. Hier ist mir aufgefallen, dass die Metrolinien samt Stationen zwar verzeichnet sind, aber trotzdem erkennt etwa die ÖPNVKarte den Zusammenhang nicht (“Es sind keine Linien mit diesem Haltepunkt verknüpft.”). Wie genau kann ich denn diese Verknüpfung herstellen? Ein Beispiel für eine Station wäre hier: http://www.openstreetmap.org/browse/node/312555676

Kann mir da jemand einen Hinweis geben, oder alternativ die Verknüpfung im oben genannten Node einrichten und ich schaue dann wie es gemacht wird? Dann könnte ich es auf den restlichen ÖPNV in Kairo anwenden.

Vielen Dank.

Hallo,

ich finde es sehr spannend das du dich mit diesem Thema auseinandersetzt. Für die Erfolgskontrolle solltest du nicht gleich auf die ÖPNV karte setzen, denn diese ist mitunter etwas hinterher was die aktualisierung angeht. Der Datenbestand wird zwar Weltweit mittels Diffs eingespielt, aber gerade Rendering und vor allem die Datenbank zur Auswertung dieser Verknüpfungen sind teilweise Monate hinterher.

Eine Linie ist immer dann mit der Haltestelle verknüpft, wenn der Punkt welcher die Informationen trägt ich bin die Haltestelle (public_transport=platform) auch Bestandteil der Relation ist. Es gengüt also nicht nur die Strecken in diese Relation aufzunehmen, sondern auch die einzelnen Stationen und dann bitte in der richtigen Reihenfolge.

Die Relation dazu http://www.openstreetmap.org/browse/relation/421705 sieht eigentlich sehr gut aus.

Vielen Dank für eure Antworten. Mal sehen, ob ich das richtig verstanden habe: Es gibt “neuerdings” public_transport=platform, was verwendet werden würde, wenn ich neue Stationen erstellen würde oder für Stationen echte buildings mit allem drumherum mappe.

Zurzeit haben alle Stationen in Kairo bereits railway=station sowie die Relationen, die diese Station anfahren. Damit sind sie schon korrekt verknüpft (wenn ich fx99 richtig verstehe?). Also kann ich das so lassen und muss nicht zusätzlich überall public_transport=platform eintragen.

Ist die korrekte Reihenfolge der Relation die selbe, in der die Stationsnamen in der Relationsübersicht auftauchen? Wie kann ich in JOSM die Reihenfolge anpassen? Und gibt es eine bessere Möglichkeit zur Erfolgskontrolle, ob ich alles richtig gemacht habe, als ÖPNVKarte?

Und zuletzt noch eine davon unabhängige Frage: Man sieht ja manchmal name:en=…; name:en1=… Ist das die offizielle Art, mehrere Schreibweisen zu vermerken und suchbar zu machen? Das Arabische hat keine Vokale, deswegen gibt es häufig mehrere auch offiziell gleichzeitig verwendete westliche Schreibweisen (z.Bsp. Metrostation Thakanat/Sakanat), da bin ich unsicher, was ich da tun soll.

Vielen Dank!

Naja Stationsgebäude und andere Dinge sind mit den dafür üblichen Tags wie Building etc. zu taggen. Aber dort wo bisher railway=platform oder highway=busstop war soll in Zukunft vielleicht mal nur noch public_transport=platform treten. In diesem Schema gibt es dann auch die Unterscheidung zwischen Haltepunkt des Fahrzeugs und Zugangsstelle für den Fahrgast. Also Platform ist die Haltestellensäule oder der Bahnsteig wo der Fahrgast einsteigt und stop_position ist der Haltepunkt für das Fahrzeug. über die gleichen Namen dieser “platformen” wertet die ÖPNVKarte die Zugehörigkeiten zur Station aus.

Die Reihenfolge in der Realtion ist auch die Reihenfolge wie sie in der ÖPNVKarte angezeigt werden. Nach dem neuen Schema sollte für jede Richtung eine Relation angelegt werden, welche dann in der Masterrelation zusammengefasst werden. Damit kommst du dann auch zu den Hin- und Rückrichtungen.

Ja. Es wäre sogar falsch, public_transport=platform irgendwo auf dieser Linie einzutragen, da es lauter Punkte sind.

Wenn public_transport=platform an einem Punkt steht bedeutet es zusätzlich, dass es dort keine Infrastruktur gibt. Das kann man etwa bei Bushaltestellen brauchen, die nur aus einem Schild am Straßenrand bestehen. Wenn man dagegen OSM-Ways oder Flächen damit versieht, dann kann man public_transport=platform allgemein verwenden.

Zitat aus dem beschlossenen Proposal:
A public_transport=platform is used to tag a Way or Area where the passengers can wait for the vehicles. If there is no platform in the real world, one can place a Node at the pole.

Weide

Wenn Du nach dem beschlossenen Public Traffic Proposal
http://wiki.openstreetmap.org/wiki/Proposed_features/Public_Transport
arbeiten willst, dann müssen die Stationen in der Reihenfolge in der Relation stehen, in der sie in der Realität angefahren werden. Bei der Relation für den Hinweg hat man dann eine andere Reihenfolge als bei der für den Rückweg. Entsprechendes gilt für die Fahrwege.

Im Relationseditor des JOSM sind links neben der Liste der Bestandteile die beiden oberen Felder dafür gedacht.

Am Besten ist es, sich die Sachen im Relationseditor anzusehen. Leider sind derzeit weder die automatischen Prüfungen im JOSM noch die Prüfungen in OSMI in einem guten Zustand.

Weide

Ich habe nun versuchsweise um eine Metrostation herum probiert, die Gebäude einzuzeichnen und das alles entsprechend euren Hinweisen und public_transport zu taggen. Ich sehe aber noch nicht ganz durch. Ich brauche also weder eine public_transport=station noch den bisherigen railway=station node? Das public_transport=platform mit der entsprechenden Metrolinien-Relation reicht aus um als Bahnhof der Metrolinie angezeigt zu werden, wobei der Name der Haltestelle entweder vom public_transport=station oder =stop_area kommt, richtig?

Um dann Plattformen und Stationsgebäude in Bezug zueinander zu setzen, erstelle ich eine Relation public_transport=stop_area, die dann zum Beispiel El-Maadi heißt. Gehören auch die Gleise oder die Treppen, die beide Plattformen verbinden, dazu? Wenn im Bahnhofsgebäude ein Telefon ist, gehört das auch zur stop_area?

Ich habe die einzelnen Haltepunkte in den Relationen in die richtige Reihenfolge gebracht. Als ich das hochladen wollte, hat sich JOSM beschwert, dass die Rollen leer sind. Als ich bei den jetzigen railway=station dann die role=stop gesetzt habe, meinte er, das sei falsch. Wo liegt mein Fehler? Meine einzige public_transport=station habe ich als role=stop bezeichnet, aber das nur aus Verzweiflung. Ich kenne keine stop_position - oder reicht es auch, wenn ich nur die Plattform als role=platform setze, ohne einen Node mit stop_position, damit die Station in der Metrolinie auftaucht?

Und zuletzt nochmal die davon unabhängige Frage: Man sieht ja manchmal name:en=…; name:en1=… Ist das die offizielle Art, mehrere Schreibweisen zu vermerken und suchbar zu machen? Das Arabische hat keine Vokale, deswegen gibt es häufig mehrere auch offiziell gleichzeitig verwendete westliche Schreibweisen (z.Bsp. Metrostation Thakanat/Sakanat), da bin ich unsicher, was ich da tun soll.

Vielen Dank für eure Hilfe.

Hallo Arthur,

zur Station Maadi selbst:

Die beiden Bahnsteige bekommen public_transport=platform und railway=platform. Nichts anderes bekommt dort diese Tags. (Wenn es Punkte wären statt Flächen wie dort, dann müsste man leider das public_transport=platform weglassen).

Der Punkt auf den Schienen bekommt public_transport=stop_position. Nichts anderes bekommt dort dieses Tag.

Alle o.g. bekommen die Namen.

Eine stop_area-Relation kann man auch erstmal weglassen.

Dann brauchst Du eine neue Linienrelation für die entgegengesetzte Richtung. Am einfachsten kopierst Du dazu die jetzige Relation 421705.

Bei der jetzigen Relation 421705 kommen noch einige Tags hinzu:
from=Helwan
to=New El-Marg
name=Subway 1: Helwan=>New El-Marg

In der Kopie entsprechend umgekehrt.

Jede der beiden fängt mit der Haltestellenliste an und danach kommt die Liste der Gleise. Jeweils in der richtigen Reihenfolge, also bei der Kopie im Prinzip umgekehrt wie beim Original.

Die benutzten Punkte (die mit public_transport=stop_position) kommen mit der Rolle “stop” rein. Immer direkt nach dem stop kommt mit der Rolle “platform” der Bahnsteig dazu rein. Nicht gemapptes lässt man vorläufig weg. Weitere Objekte des Bahnhofs kommen nicht rein.

Auch die danach kommende Liste der Gleise ist gemäß Benutzung sortiert – also für die Kopie (Gegenrichtung) umgekehrt.

Zum krönenden Abschluss machst Du dann eine Master-Relation:
name=Subway 1
ref=1
type=route_master
route_master=subway

Diese Master-Relation bekommt als Elemente die beiden Varianten ohne eine Rolle. Wenn später noch weitere Varianten hinzukommen, z.B. weil manche U-Bahnen nicht bis zur Endstation fahren, dann macht man noch weitere Linienrelationen und gibt sie ebenfalls als Elemente an.

frohes Mappen
Weide

PS: Wenn ich Dir das Relationsgerüst machen soll, dann sag Bescheid.

Vielen Dank für die ausführliche Antwort. Du schreibst:

Ich dachte, das markiert den korrekt gemappten Punkt, wo der Zug tatsächlich zum Stehen kommt? Den weiß ich von keiner Station, und werde sie allerhöchstwahrscheinlich auch so bald nicht rausfinden. Soll ich also stop_position weglassen, oder bei sämtlichen Stationen überall dorthin setzen, wo jetzt railway=station steht?

Eine ganz generelle Frage noch: Muss ich irgendwie die Treppen in Maadi mit der Platform verbinden, oder das Stationsgebäude mit der Plattform oder der Straße davor? Oder kriegen das die Renderer selbst raus?

Und ich habe nun die beiden Relationen für Hin und Zurück erstellt, sowie eine Master-Relation. Aber ich habe nicht herausfinden können, wie ich in JOSM die beiden Richtungen zur Master-Relation hinzufügen kann. Wie geht das am besten?

  • neue leere Relation erzeugen
  • in der Liste der Relationen (rechte Spalte) Contex (rechte Maustaste) und dann “Relation auswählen”
    1. Relation mit “Relation zusätzlich auswählen”
  • in neue Relation einfügen
  • passende Tags setzen

feddich

Gruss
Walter

Bleiben die einzelnen Strecken (Gleise) mit ihren zwei Relationen (Hin und Zurück) so wie sie sind, oder muss ich jeweils die Relationen löschen und durch die Master-Relation ersetzen?

Nicht löschen!

Dann wären die Gleise und Haltestellen ja nirgendwo mehr erwähnt. Die Master-Relation hat die beiden Relationen als Elemente (Also nicht deren Elemente). Die Master-Relation ist nur das Verzeichnis der zur Linie gehörenden Relationen, da stehen keine Haltestellenangaben und keine Gleise drin.

Weide

Stimmt schon. Aber der Punkt auf den Gleisen ist m.E. gut genug, schließlich steht ein Stück Zug ja auch an der Stelle.

Wollte man das realistischer machen, dann müsste man eigentlich eine Linie von der Länge des Zuges eintragen – aber davon hat ja eigentlich niemand was und es ist im Moment auch nicht zulässig, da Linien anzugeben.

Weide

Stimmt, da hab ich nicht mitgedacht. Aber wird die Master-Relation irgendwo eingetragen, oder an welcher Stelle tritt sie auf?

Und wie steht es mit meiner vorletzten Frage:

Ich dachte, das markiert den korrekt gemappten Punkt, wo der Zug tatsächlich zum Stehen kommt? Den weiß ich von keiner Station, und werde sie allerhöchstwahrscheinlich auch so bald nicht rausfinden. Soll ich also stop_position weglassen, oder bei sämtlichen Stationen überall dorthin setzen, wo jetzt railway=station steht?

Die Renderer zeichnen es einfach ein. Aber bei den Routern ist es schwieriger und es gibt viele verschiedene Router. Die meisten Router verstehen nicht, was eine Fläche ist, weil sie auf Autos hin entwickelt wurden – als Fußgänger wird man da nie quer über den Marktplatz geschickt. Es geht immer am Rand entlang. Viele Mapper würden deshalb in Maadi einen kleinen Fußweg vom Fuß der Treppe zum Rand des Bahnsteigs und Fußwege vom oberen Ende der Treppen bis zu den Straßen machen. Das sieht zwar manchmal komisch aus, funktioniert aber. Aber zu dem Thema gibt es mit Sicherheit hier auch andere Meinungen.

Weide

wie ich bereits geschrieben habe: Eine Master-Relation ist einen neue Relation, die nach der von mir beschriebenen Weise in OSM eingetragen wird. Somit ist sie “irgendwo” eingetragen :wink:
Sie “tritt nicht auf” - sie wird von der einschlägigen Software verwendet, wenn sie “da ist”.

Gruß
Walter

Bei den Stationspunkten neben dem Gleis geht das nicht, denn die stop_position muss auf dem Gleis liegen. Diese Stations dürfen auch nicht in die Linienrelation. Ich würde sie entweder auf das Gleis schieben und im JOSM mit “j” ins Gleis einbauen oder neue Punkte mit public_transport=stop_position und railway=halt aufs Gleis setzen und diese in die Linien einbauen.

Bei denen, die auf dem Gleis liegen, würde ich public_transport=stop_position hinzufügen.

Die bekommen übrigens in der Linienrelation die Rolle “stop”. Keine Rolle haben nur die Fahrwege.

Damit wären die Haltestellen fertig.
Nein, nicht ganz. Die “Ain Helwan Station” ist doppelt.

Bei den Wegen fehlt noch ein Stück Gleis im Norden und sie müssten auch noch nach Durchfahrreihenfolge der jeweiligen Richtung sortiert werden.

Dann müsste eigentlich alles fertig sein.

frohes Mappen
Weide

Jetzt hast du ja den Punkt auf dem Weg gelöscht: http://www.openstreetmap.org/browse/node/312555676/history
Dann fehlt da aber was. Deine Begründung für die Löschung stimmt auch nicht:

Der Node mit allen Tags war richtig, du hättest noch ein public_transport=stop_position ergängen können. Nur die platforms reichen nicht.

So, jetzt müsste eigentlich alles fertig sein. Ich habe viel gelernt, vielen Dank für eure vielen und schnellen Hinweise.

Ohne jetzt die Feierstimmung kaputt machen zu wollen: Brauche ich das eigentlich? Klar werde ich mich nun daran machen, meine Heimat-Stationen nach public_transport ausführlich zu mappen. Aber einen Großteil der Stationen kenne ich nicht, viele sind unterirdisch, so dass ich eh nicht weiß, wo genau sie sind. Also lasse ich einfach alles so im alten railway-Schema, wie es ist, oder gibt es gute Gründe, dem Metronetz eine Generalüberholung zu verpassen (mit hundert simples Nodes für platform und stop_position)?

Auf jeden Fall nochmal vielen Dank, und euch auch frohes Mappen!