Mal einen Vorschlag auf die Schnelle, möglicherweise ist er großer Mist.
Den Gegnern der Radwegbenamsung geht es darum, dass es nicht mehrere parallele highway-Objekte gleichen Namens in der Datenbank geben soll, wo real nur ein einziger, nach Verkehrsarten gegliederter Verkehrsweg vorhanden ist. Außerdem machen die zusätzlichen Namenseinträge das Rendering unnötig unübersichtlich (dafür sind sie ja nutzlos), aber für den Renderer mappen wir ja eh nicht.
Den Befürwortern geht es darum, dass der Router auch dann während der Wegführung die Anweisung „Nach 150 Metern rechts ab in die Wilhelmstraße“ sagen kann, wenn das Routing sich nicht auf dem residential, sondern auf dem straßenbegleitenden path/cycleway bewegt. Das ist ein nachvollziehbarer Wunsch.
Es geht also darum, den straßenbegleitenden Weg dem höheren Highway, den er begleitet, namenstechnisch zuzuordnen. Dann sind Datenbank und Rendering aufgeräumt, weil der Radweg keinen Extra-Namen hat, aber der Router kann, wenn er am Weg selbst kein name-Tag findet, an der zugeordneten Straße fündig werden.
Relationen wären dafür geeignet, aber wenn’s noch eine einfachere Lösung gäbe? Relationen sind fehlerträchtig und erhöhen den Lernaufwand bei Anfängern enorm.
Wie wäre es denn (offene Frage, womöglich ist es scheiße), dafür das gute alte „is_in“ wiederzubeleben? Taggingtechnisch hätte das nur zur Folge, dass anstelle name=Wilhelmstraße an den Radweg is_in=Wilhelmstraße getaggt wird. Mehr muss nicht sein. In die Editor-Vorlagen lässt sich das leicht einbauen. Der wegführende Router müsste dann andererseits nur dort, wo er kein name=* findet, auch noch nach is_in suchen. Sollte auch mit einer Codezeile zu machen sein – die damit referenzierte Straße braucht er gar nicht mehr, ihm reicht ja der Name aus dem is_in-Tag:
$name = tag_auslesen("name");
if ($name == "") { $name = tag_auslesen("is_in") }
Machbar oder Mist?
–ks