Vào lúc 00:02 2022-11-01, easbar.m...@posteo.net đã viết:
Thanks, Minh. Yes, there is no way to indicate an order of precedence between relations. But I also do not understand yet why this should be needed. It would be sufficient to have one relation per 'turn', i.e. for any combination of members with role from/via/to there would be one relation. And for a given transportation mode we could check the restriction value for this transportation mode for each turn. An order of precedence would only be needed if there were multiple (restriction) relations using the same from/via/to members, but I don't see why this would be necessary?

Of course there could still be contradicting relations, like an 'only_left_turn' relation paired with an 'only_right_turn' relation (and different to-members according to these directions). But that has nothing to do with the transportation modes.

So do you think there should or there should not be mixed restriction relations?

Regarding https://www.openstreetmap.org/relation/10650926:

```
restriction=no_right_turn
except=bus;bicycle
except:network=Q1140138;Q7407040
```

This would be a 'conditional except' and for it seems like another indication that the 'except' tag should be replaced by the conditional restriction tag? This would be more in line with what we do for 'access', maybe something like:

```
restriction=no_right_turn
restriction:bus=unrestricted
restriction:bicycle=unrestricted
restriction:conditional=unrestricted @ network=Q1140138;Q7407040
```

I do like this idea for its elegance. I goofed up above, intending to add both except:network and except:network:wikidata, but you get the gist. Perhaps "unrestricted" could be simplified to just "none" for consistency with maxweight:*=none, which has been suggested for representing some weight restriction exceptions signposted in the U.S. [1]

This restriction:*=unrestricted idea would probably need to be paired with except=* usage for some time, just in case. Turn restrictions are so critical to routing that we should be very careful about introducing a new representation for exceptions. Back when 2013 when the type=restriction:* and day/hour_on/off syntaxes were deprecated, there wasn't any appreciable usage of turn restrictions for routing yet, but now there are a lot of users who rely on turn restrictions, especially in complex environments like the ones we're discussing.

[1] https://wiki.openstreetmap.org/wiki/Special:PermanentLink/2428787#United_States

--
m...@nguyen.cincinnati.oh.us



_______________________________________________
Tagging mailing list
Tagging@openstreetmap.org
https://lists.openstreetmap.org/listinfo/tagging

Reply via email to