Abstrakt finde ich gut, denn du triffst das Problem damit besser.
In Sachen Lage- und Geometriegenauigkeit stimmt deine Reihenfolge. Wenn wir abstrakt bleiben darfst du aber nicht nur einen einzelnen Aspekt beachten. Es gibt aber noch ander Kriterien, da sieht es ggf. anders aus. Ich sehe folgende Kriterien:
-
Korrektheit der Informationen
-
Aufwand, den man betreiben muss, um Realität korrekt abzubilden
-
Wie kommen die häufigsten Anwendungsfälle mit den Daten zurecht
Für mich ist die Reihenfolge der drei Anstriche genau umgekehrt, wobei aber die Anwendbarkeit c) stark von der Korrektheit a) abhängt, aber nicht immer.
Zur Korrektheit in a) gehören neben Lagegenauigkeit auch die Information, ob man von der einen Fläche zur anderen wechseln kann. Diese Information ist beim Getrenntmapping von klassischen Bürgersteigen schlichtweg falsch, weswegen ich das als Fehler sehe, den man i. d. R. ausbessern und damit einen Mehrwert schaffen sollte.
Die geometrische Lage kann man dagegen über width und placement auch bei c) einigermaßen abbilden, wenn auch nicht perfekt. Es bleibt eine Ungenauigkeit, da eine ungeteilte Kante nur eine Breitenangabe haben kann und man wegen b) Kanten nicht zu oft teilen sollte.
Wenn man nur die Lagegenauigkeit als Kriterium nimmt, dann müssten wir Fahrspuren einer Straße immer alle als einzelne Linie mappen. Das wir das nicht machen hat Gründe. Diese Gründe liegen genauso bei “Geh- und Fahrspuren” vor, die anstatt durch einen Strich nur durch eine i. d. R. leicht übewindbare Kante getrennt sind.
Ein Argument für getrenntmapping ist, dass diese Kante für zwar für Fußgänger querbar ist, aber nur schlecht für Rollstühle. Allerdings ist eine durchgezogene weiße Linie für Fahrzeuge auch nicht (legal) überquerbar, für Fußgänger dagegen schon.
“Daraus” m. E. nicht, aber im Fazit stimme ich mit dir überein, Redundanzen sind irgendwie blöd.
Woher soll er wissen, ob die Fußwege in der Nähe der Bürgersteig dieser Straße ist? Im Zweifel routet er den kürzeren Weg an der Straße statt über die Fußwege, die aufgrund ihrer Verschwenkungen länger sind.
Mit sidewalk=seperate kann der Router selber steuern, wie das Ergebnis aussehen soll. Will er Fußgänger über jede Zacke der seperaten Gehwege führen, so kann er die Straßenkante ausschließen.
Will er aber lieber abstrakter routen um Verwirrungen zu vermeiden, so kann er absichtlich die Straßenkante bevorzugen. Durch sidewalk=seperate weiß er ja, dass diese Straße Gehwege hat. Aufgrund des Seperatemappens kennt er dessen Eigenschaften jedoch nicht.
(Edit: inhaltsverstellender Fehler beseitigt: “Bürgersteig” statt “Bordstein”)