im April letzten Jahres ist das neue ÖPNV-Konzept mit einer sehr großen Mehrheit beschlossen worden. Es sieht unter anderem vor:
Ob die Haltestellen mit der Mitgliedschaft in einer Vielzahl von Relationen wohl glücklich werden?
Ich hab die aus dem Gebiet des VRS einmal befragt und die mit einer zukünftigen Mitgliedschaft in 50(!) oder mehr Relationen zusammengestellt.
Die erste Zahl ist die Anzahl der Linien, die eine Haltestelle berühren, die zweite ist die Zahl der Linienvarianten.
Lin. Var.
5 50 Altenahr Altenahr Bahnhof / Kreissparkasse
9 64 Bad Breisig Bad Breisig Bahnhof
8 60 Bad Breisig Bad Breisig Kirche / Kreissparkasse
12 61 Bad Münstereifel Bad Münstereifel Bahnhof
20 130 Bad Neuenahr-Ahrweiler Ahrtor / Feuerwache
21 192 Bad Neuenahr-Ahrweiler Ahrweiler Bahnhof / Amtsgericht
7 71 Bad Neuenahr-Ahrweiler Apollinarisbrunnen
15 64 Bad Neuenahr-Ahrweiler Bachem Schulzentrum
22 187 Bad Neuenahr-Ahrweiler Bad Neuenahr Bahnhof
16 119 Bad Neuenahr-Ahrweiler Bad Neuenahr Mitte
9 58 Bad Neuenahr-Ahrweiler Both
5 65 Bad Neuenahr-Ahrweiler Heimersheim Bahnhof
12 90 Bad Neuenahr-Ahrweiler Hemmessen Kapelle
12 89 Bad Neuenahr-Ahrweiler Hemmesser Straße
7 59 Bad Neuenahr-Ahrweiler Heppingen
18 109 Bad Neuenahr-Ahrweiler Hochstraße
18 110 Bad Neuenahr-Ahrweiler Kurpark
18 82 Bad Neuenahr-Ahrweiler Landgrafenstraße
13 102 Bad Neuenahr-Ahrweiler Landmühle
18 110 Bad Neuenahr-Ahrweiler Maria Hilf Krankenhaus
20 160 Bad Neuenahr-Ahrweiler Niedertor
18 113 Bad Neuenahr-Ahrweiler Peter-Jörres-Gymnasium
16 89 Bad Neuenahr-Ahrweiler Ramersbacher Straße
7 64 Bad Neuenahr-Ahrweiler Ramersbach Mitte
16 83 Bad Neuenahr-Ahrweiler Schwimmbad / Twin
11 74 Bergheim Am Knüchelsdamm
13 104 Bergheim Bergheim Bahnhof
11 84 Bergheim Bergheim Rathaus
5 53 Bergheim Graf-Otto-Straße
5 58 Bergheim Kenten
8 77 Bergheim Quadrath-Ichendorf Bahnhof
7 65 Bergheim von-Roon-Straße
7 66 Bergheim Zieverich
11 77 Bergisch Gladbach Bensberg
23 123 Bergisch Gladbach Bergisch Gladbach Markt
33 182 Bergisch Gladbach Bergisch Gladbach (S)
10 58 Bergisch Gladbach Forum
18 85 Bonn Bad Godesberg Bahnhof
12 61 Bonn Bad Godesberg Bahnhof / Rheinallee
13 66 Bonn Bad Godesberg Stadthalle
25 71 Bonn Bertha-von-Suttner-Platz / Beethovenhaus
46 197 Bonn Bonn Hauptbahnhof
12 60 Bonn Duisdorf Bahnhof
20 60 Bonn Konrad-Adenauer-Platz
11 70 Bonn Mehlem Bahnhof
7 53 Brohl-Lützing Brohl Bahnhof
12 69 Brühl Brühl Mitte
6 64 Burgbrohl Burgbrohl West
8 75 Burgbrohl Josefsplatz
6 76 Burgbrohl Weiler Mitte / Bahnhof
6 76 Burgbrohl Weiler West
17 78 Dormagen Dormagen Bahnhof
13 51 Dormagen Haberlandstraße
10 82 Düren Düren Bahnhof
3 67 Düren Kaiserplatz
3 58 Düren Kreishaus
3 58 Düren Sankt Angela Schule
5 50 Düren Stadtcenter
11 55 Euskirchen Emil-Fischer-Straße
26 154 Euskirchen Euskirchen Bahnhof
12 57 Euskirchen Euskirchen Rathaus
11 59 Frechen Frechen Rathaus
9 76 Frechen Königsdorf Bahnhof
9 60 Grafschaft Kreuzerfeld
8 57 Grafschaft Ringen Mitte
7 54 Grafschaft Tongrube
3 56 Gummersbach Derschlag Busbahnhof
7 59 Gummersbach Dieringhausen Bahnhof
16 186 Gummersbach Gummersbach Bahnhof
9 86 Gummersbach Gummersbach Rathaus
4 50 Gummersbach IHK
15 74 Hennef (Sieg) Hennef Bahnhof
12 51 Kall Kall Bahnhof
10 91 Kempenich Alter Bahnhof
8 57 Kerpen Buir Bahnhof
13 126 Kerpen Horrem Bahnhof
8 67 Kerpen Sindorf (S)
24 177 Köln Bahnhof Deutz / Messe LANXESS arena
10 53 Köln Bahnhof Ehrenfeld
12 63 Köln Bahnhof Lövenich
11 86 Köln Bahnhof Mülheim
11 50 Köln Bahnhof Porz
5 53 Köln Barbarossaplatz
10 57 Köln Breslauer Platz / Hauptbahnhof
20 186 Köln Dom / Hauptbahnhof
7 68 Köln Ebertplatz
19 134 Köln Hansaring
11 54 Köln Heumarkt
13 73 Köln Mülheim Wiener Platz
10 81 Köln Neumarkt
7 57 Köln Trimbornstraße
14 76 Köln Wahn S-Bahn
7 50 Köln Weiden Zentrum (Einkaufszentrum)
5 52 Königsfeld Königsfeld Mitte
9 66 Langenfeld (Rheinland) Langenfeld (S)
8 60 Leichlingen (Rheinland) Leichlingen Bahnhof
9 74 Leichlingen (Rheinland) Leichlingen Busbahnhof
7 58 Leverkusen Am Frankenberg
8 51 Leverkusen Bayerwerk S-Bahn
7 61 Leverkusen Berliner Platz
8 63 Leverkusen Gerhart-Hauptmann-Straße
10 80 Leverkusen Goethestraße
12 53 Leverkusen Konrad-Adenauer-Platz
21 118 Leverkusen Leverkusen Mitte Bahnhof
9 59 Leverkusen Neustadtstraße
17 114 Leverkusen Opladen Busbahnhof
8 50 Leverkusen Pützdelle
14 75 Leverkusen Rathaus-Galerie
10 81 Leverkusen Schillerstraße
9 61 Leverkusen Wilhelmstraße
7 57 Leverkusen Wupperbrücke
8 52 Lindlar Frielingsdorf Busbahnhof
11 71 Lindlar Lindlar Busbahnhof
11 83 Lohmar Donrath Kreuzung
7 59 Lohmar Jabachhalle
12 51 Lohmar Lohmar Schulzentrum
11 65 Lohmar Lohmar Stadthaus
6 69 Marienheide Marienheide Bahnhof
29 94 Mechernich Mechernich Bahnhof
23 64 Mechernich Stiftsweg
9 52 Meckenheim Meckenheim Bahnhof
8 51 Monheim am Rhein Monheim Busbahnhof
6 53 Morsbach Morsbach Busbahnhof
11 109 Niederzissen Niederzissen Bahnhof
12 123 Niederzissen West / Schiele
10 60 Nümbrecht Otto-Kaufmann-Straße
7 52 Oberzissen Oberzissen Bahnhof
3 54 Remagen Bandorf Abzweig
9 79 Remagen Batterieweg
3 54 Remagen Calmuth
3 51 Remagen Fischerhaus
7 76 Remagen Gerard-Carll-Straße
5 70 Remagen Krankenhaus Abzweig
7 91 Remagen Kreissparkasse
7 55 Remagen Kripp Fähre
9 84 Remagen Kripp Mitte
9 84 Remagen Kripp Nord
6 70 Remagen Lederfabrik
3 54 Remagen Nordeinfahrt
3 53 Remagen Oberwinter B9
6 65 Remagen Oberwinter Bahnhof
3 55 Remagen Oberwinter Grundschule
10 131 Remagen Remagen Bahnhof
9 95 Remagen Remagen Realschule Plus
9 87 Remagen RheinAhrCampus Remagen
9 84 Remagen Rosenstraße
9 87 Remagen Schwimmbad
3 53 Remagen Unkelbach Mitte
3 54 Remagen Unkelbachtal
13 62 Rheinbach Rheinbach Bahnhof
16 50 Siegburg Heinrichstraße
26 107 Siegburg Siegburg Bahnhof
6 73 Sinzig Ahrbrücke
11 92 Sinzig Helenensaal
10 94 Sinzig Im Herrental
11 92 Sinzig Rheinstraße
13 130 Sinzig Sinzig Bahnhof
7 63 Sinzig Sinzig Förderschule
9 100 Sinzig Sinzig Kreuz
7 65 Sinzig Sinzig Schulzentrum
4 50 Spessart Kempenicher Straße
13 108 Troisdorf Troisdorf Bahnhof
7 52 Troisdorf Ursulaplatz
9 94 Waldbröl Boxberg
12 106 Waldbröl Kreissparkasse
17 81 Waldbröl Walberfeldstraße
17 146 Waldbröl Waldbröl Busbahnhof
7 61 Waldorf Waldorf Mitte
14 62 Wermelskirchen Wermelskirchen Busbahnhof
12 93 Wipperfürth Wipperfürth Busbahnhof
8 52 Zülpich Frankengraben
Natürlich sind die Wege von und zu einer Haltestelle in ebensovielen Relationen enthalten.
Gewünscht? Wahrscheinlich nicht wirklich. Aber besonders schrecklich finde ich es auch nicht. Und manche Vorteile kann man eben nur so nutzen. Ich meine, Alternativen hat man lange genug diskutiert und sich für dieses Konzept entschieden. Und wie du sagst, mit großer Mehrheit. Scheint mir auch mehr ein städtisches Problem zu sein, hier bei uns gibt’s im ganzen Landkreis kaum ein Dutzend Linien, an den meisten Haltestellen hält also nur eine oder zwei davon. Entsprechend weniger Varianten gibt es. Trotzdem kann man sich natürlich fragen, ob wirklich jede einzelne Variante gemappt werden muss. Aber das ist eben Geschmackssache.
Naja, “beschlossen” ist vielleicht etwas uebertrieben. Es gab eine unverbindliche Abstimmung und die Mehrheit der Abstimmenden war dafuer. Ob die sich das wirklich zu Ende ueberlegt haben, weiss man nicht; alle haben gleiches “Stimmrecht”, egal, ob sie sich den Vorschlag ueberhaupt durchgelesen und die Konsequenzen ueberlegt haben oder ob sie nur dachte “Oepnv find ich gut!”.
Im konkreten Fall sollte man vielleicht ueberlegen, ob man explizite Linienvarianten (Bus 52 und Bus 52E) auch explizit mappt, aber heimliche Linienvarianten (der Bus um 13.00 haelt zusaetzlich an der Schule) nicht. Ansonsten wird das echt unpraktikabel - man stelle sich zum Beispiel vor, dass man ein bislang als einfachen Way gemapptes Strassenstueck, das tatsaechlich aber eine bauliche Trennung zwishen den Fahrtrichtungen besitzt, nun in zwei Teile aufteilen will, und man muss nun 50 Relationen umsortieren…
sehe ich genauso. die verschiedenen physischen routen abbilden, aber irgendwelche teleskoplinien nicht. in so einem fall einfach die längste strecke mappen. der rest sollte im idealfall dann eh über die fahrplan-api des jeweiligen anbieters ablaufen und die teilt einem dann eh mit wo stehengeblieben wird und wo nicht.
Lin. Var.
1 6 Much Amtsknechtswahn
1 6 Much Bennrath
2 9 Much Bitzen
2 9 Much Bövingen
1 5 Much Eckhausen
1 4 Much Eigen
1 6 Much Feld
1 4 Much Gerlinghausen
1 9 Much Gerlinghausen Abzweig
1 4 Much Gibbinghausen
2 9 Much Gippenstein
1 4 Much Heinenbusch Abzweig
1 3 Much Herchenrath
1 6 Much Herrenteich
1 4 Much Hetzenholz Abzweig
1 4 Much Hevinghausen
1 3 Much Hillesheim
2 9 Much Industriegebiet
1 6 Much Köbach Abzweig
2 9 Much Krahm
1 6 Much Kranüchel
1 6 Much Kreuzkapelle
1 6 Much Leverath
1 6 Much Loßkittel
2 9 Much Marienfeld Kirche
2 9 Much Marienfeld Post
2 9 Much Markelsbach
4 10 Much Much Kirche
6 16 Much Much Post
6 20 Much Much Rathaus
4 12 Much Much Schulzentrum
1 9 Much Neverdorf
1 5 Much Niederhof
1 5 Much Niedermiebach
1 5 Much Niederwahn
1 6 Much Oberhausen Abzweig
2 9 Much Oberheimbach Abzweig
1 5 Much Oberwahn
2 9 Much Scheid
2 9 Much Schwimmbad
1 6 Much Senschenhöhe
1 4 Much Siefen Abzweig
1 4 Much Tillinghausen Abzweig
1 6 Much Wahnbachtalstraße
1 5 Much Wellerscheid
2 9 Much Wersch
1 6 Much Wohlfahrt
Much kann man nicht wirklich als internationale Metropole ansehen.
Der Entwurf hat mir im großen und ganzen gefallen.
Mir wären halt Rollen “start” und “terminal” und meinethalben “via” für Start und Zielhaltestelle und ein Variantenbeschreibende Zwischenhaltestelle lieber als from und to und via Tags mit informellem Text als Wert – aber da schließt das eine das andere ja nicht aus.
Das Handling von Varianten allerdings halte ich für Irrsinn.
Wenn ich jetzt hier lese, dass das Konzept bereits aufgeweicht wird, dann brauche ich mich ja nicht zu wundern, dass 8 Monate nach diesem Beschluss ich in meiner Region kein Beispiel für Variantenkartierung gefunden habe, obwohl die meisten Buslinien Varianten haben…
Da bleibt man wohl am besten fürs Erste bei einer Rolle je Richtung.
bitte bedenkt auch, dass dieses Konzept den großen Vorteil hat, dass
“Nicht-OSM-ÖPNV-Profis” Linien mappen können. Ich habe früher einen
nennenwerten Teil meiner OSM-Zeit damit zugebracht, “forward”- und
“backward”-Rollen zu korrigieren. Jeder der eine Straße gesplittet hat,
musste die Relationen per Hand korrigieren. Das ist im neuen Konzept durch
die schlichte Reihenfolge der Ways ersetzt worden und im Normalfall können
jetzt an ÖPNV weniger interessierte an den Straßen arbeiten, ohne die
ÖPNV-Linien kaputt zu machen.
Eine schwerwiegende Schwäche des neuen Konzeptes ist es, dass die
Variantenrelationen mit type=route arbeiten. Wir haben dadurch zwei
verschiedene Bedeutungen für die leere Role bei Ways, die nur anhand
der Mitgliedschaft dieser Relation in einer route_master-Relation sicher
unterscheidbar sind. Andere Unterscheidungsmerkmale sind inzwischen
aufgeweicht worden. Es ist immer schlecht, wenn die Interpretationsregeln
eines Datenbankeintrages durch einen anderen Datenbankeintrag festgelegt
werden.
Eine Lösung des Problems der Datenaufblähung wäre die Nutzung von Segmenten.
Allerdings würde ich es dabei bevorzugen wenn klar wäre, dass diese NICHT
isoliert interpretierbar wären. Also etwa:
type=segment
KEINE weiteren Tags (außer “note” und Konsorten)
Nutzung: Roles “include” oder “include_reverted”. Die Bedeutung ist exakt
dieselbe, als würden die Einträge der genannten Relation in ihrer Reihenfolge
bzw. genau umgekehrt dort stehen. Das würde nicht nur diese langsam wirklich
Ausmaße annehmende Datenaufblähung beseitigen, sondern die schlimmen Fälle
auch viel übersichtlicher machen.
Ob diese Segmente die Lösung sind, wage ich zu bezweifeln. Denn im Prinzip sind diese nichts anderes als längere Ways. Außerdem macht sie die Auswertung für das Rendering nur noch schwieriger. Schon der Wegfall von forward und backward wurde bisher von keiner Anwendung wirklich vollständig gelöst.
Ja, die Segmente bringen nur was für die Übersichtlichkeit, also nur für den
Mapper. (Und sie tun was gegen die Datenaufblähung)
Ja. Richtig rendern kann man das Ganze nur, wenn die Master-Routen
einbezogen werden. Das es jetzt überhaupt irgendwelche brauchbaren
Darstellungen gibt, liegt nach meinem Eindruck nur am “Mapping for the
Renderers” durch die Tagwiederholungen der Master-Route-Tags in den Varianten,
aber bei “forward” und “backward” reicht das nicht.
Wenn das nicht machbar ist, dann ist das Konzept unbrauchbar. Da
möchte ich aber meinen Hauptpunkt nochmal in Erinnerung rufen. Otto
Normalmapper muss eine Straße splitten können, ohne die Routen kaputt zu
machen und ohne sich in die ÖPNV-Konzepte einarbeiten zu müssen. Und
Otto Normalmapper muss auch mit ein wenig Einarbeitung eine Buslinie
korrigieren und ergänzen können.
Also ganz ehrlich. Ich verstehe deine Einwände ein wenig. Aber so ganz stehen lassen möchte ich sie nicht.
Im Josm wird bei einer gespliteten Straße in der Relation die Rolle einfach kopiert. Bei Änderung der Wegrichtung wird aus Forward einfach backward, wenn der Nutzer zustimmt. Er macht also eigentlich nur etwas kaputt, wenn er die Änderungen ablehnt oder Wege verbindet. Damit macht er aber auch nach dem neuen Schema deine ÖPNV Route kaputt, wenn jetzt Wege hinzukommen, welche eigentlich nicht durch das Verkehrsmittel befahren werden. Warum soll das also einfacher sein?
Das Problem mit dem Forward Backward war eigentlich die unterschiedliche Auslegung. Die einen sagen, das ist die Richtung in welcher der Weg befahren wird, während die anderen sagen, der Weg wird bei Forward in der Hinrichtung und bei Backward in der Rückrichtung benutzt. Das muss natürlich zu Konflikten führen. Ist aber eigentlich kein Fehler des Schemas.
Routensegmente machen den Datenoverhead meiner Meinung nach nur minimal kleiner, bewirken aber genau das von dir angesprochene Problem, dass ohne Einarbeitung keine ÖV Routen zu erfassen sind. Denn dann genügt es nicht Wege in der richtigen Reihenfolge einer Relation hinzuzufügen, sondern man braucht eine Relation als Segment muss diese Segmente dann mit der richtigen Rolle in der richtigen Reihenfolge in die Routenrelation bringen und obendrauf als Sahnehäubchen noch eine Masterelation anlegen. Das ist dann wirklich einfacher?
Ich hatte vor langer Zeit mal vorgeschlagen, grundsätzlich je Richtung eine Relation anzulegen, die aber alle Varianten enthält. Die ist sowohl für Otto Normalmapper einfach zu erfassen als auch trivial zu rendern.
In einem zweiten Schritt sollten die Varianten durch Einträge in den Roles markiert werden. Ändert für die Renderer nichts und übersteht Splits unbeschädigt. Ist zwar kniffligere, dafür aber weniger Arbeit als die Grunderfassung. Schrittweises Verfeinern halt.
Ich habe das entsprechende Experiment aber abgebrochen, weil die ÖPNV-Map damals Member mit “unkonventionellen” Roles ignoriert hat und die so behandelten Linien von der Karte verschwinden lies, und auch weil das Konzept als nicht auf Gefallen stieß.
Vielleicht hätte ich nicht so schnell aufgeben sollen :-/
Nunja, es war eher so, dass Teddych alles in sein proposal reingenommen hat, was auf den Maillinglisten als angeblich notwendig verlangt wurde. Die Diskussionen auf der transport-Liste waren nämlich schon ziemlich ins Unsachliche abgeglitten.
Das alte Schema von Oxomoa war dagegen eher das Werk eines einzelnen, was aber nach mehrjähriger Erfahrung eine Reihe von Schwachstellen hatte.
Der Einwand ist m.E. auch berechtigt, dass ein effektiver Präprozessor manche Dinge wesentlich schneller hinbekommt als ein Mapper mit Hunderten von Linienvarianten, Stoppositionen und Haltestellenmasten. Nur ist Oxomoa nicht soweit gekommen, und hernach hat auch noch keiner ernsthaft an einem ÖPNV-Router gearbeitet.
Deshalb favorisiere ich eine Relation je Richtung mit allen Varianten und Haltestellenmasten, anhand der ein Präprozessor sich die Route auf Basis der fahrplanmäßigen Haltestellenreihenfolge selber erzeugt.
Es ist einfacher, weil auch der “ÖPNV-Laie” sofort die Probleme sieht, wenn er die Variante anklickt. Bezüglich des JOSM muss ich Dir aber recht geben, da hat sich soviel getan, dass meine Bemerkungen daneben waren. (Es gibt noch ein paar Probleme, wenn zuwenig von der Relation geladen wurde. Aber vielleicht sind die inzwischen auch weg.)
Ja, ich meinte aber das neue Schema. Der Versuch, beim PT-Schema die Master-Relation zu ignorieren und die Varianten wie Routen des alten Schemas zu behandeln, geht bezüglich “forward” und “backward” total in die Hose und bei den Tags funktioniert es auch nur, solange überflüssigerweise (aus Schema-Sicht) Tags aus der Masterrelation in die einzelnen Varianten kopiert werden.
Nein, ich sehe es ein. Vergessen wir es.
Wenn man jeweils nur eine Relation für Hin- und Rückweg nimmt und versucht die
Varianten durch Roles zu beschreiben, dann geht das m.E. nur in einfachen
Fällen. Nehmen wir die genutzten Varianten eines Hinweges:
1.: A->B->D->E->G
2.: A->C->D->F->G
Wie gibt man das mit Roles so an, dass
A->C->D->E->G
ausgeschlossen ist?
Kann man angeben, welcher Text bei welcher Variante auf dem Bus steht?
Kann man die Haltestellen den Varianten zuordnen, auch wenn es nur eine andere Haltestelle desselben Namens ist?
Ist das dann ein Router, der die Varianten erst anhand von Daten der Verkehrsunternehmen ermitteln kann und im Endeffekt als Konkurrenz zu deren Auskunftssystemen arbeitet?
Also ich halte die Zielinformation Am Fahrzeug für Relation für sehr schwierig. Denn inzwischen fahren viele Verkehrsunternehmen mit elektronisch gesteuerten Anzeigen. Diese können die Zielinformation während der Fahrt ändern und einige Unternehmen machen davon Gebrauch. Schon alleine bei Linienübergängen und Rundlinien ist dies sehr sinnvoll.
Abgesehen davon werden die bereits abgefahrenen Vias nicht mehr angezeigt.
Was den Präprozess für Linienvarianten angeht, so halte ich das für keinen sinnvollen Weg. Denn Fahrplandaten gibt es noch nicht opensource. Auch würden sicher einige elektronischen Auskunftssysteme rebelieren wenn dort täglich der Linienverlauf abgefragt würde. Ganz abgesehen von den Flecken der Erde die schon froh sind, wenn an einigen Haltestellen die dort fahrenden Linien ausgezeichnet sind. Von Fahrplänen wollen wir gar nicht träumen.
Es ging mir aber eher darum, ob die Varianten in OSM erfasst werden oder ob nur Daten zu Varianten in OSM erfasst werden, die erst zusammen mit den Fahrplandaten Varianten ergeben. Letztere Vorstellung gefällt mir nicht.