[Tagging] Conditional restrictions accepted - turn restrictions ahead?

Eckhart Wörner ewoerner at kde.org
Tue Oct 16 21:19:26 GMT 2012

Hi Rob,

Am Dienstag, 16. Oktober 2012, 21:42:56 schrieb Rob Nickerson:
> 1. Although it is difficult to calculate how many turn restrictions have
> some form of "condition", the numbers can't be that many in comparison to
> normal restrictions that apply at all times. Adding the condition data to
> the "restriction=*" tag therefore will not break the majority of
> restrictions (they stay unchanged). Similarly adding the information in a
> new tag will not break the majority of restrictions.


> 2. For those restrictions that do have conditional details, if:
>   a) you add the details in "restriction = " you break the current tagging
> and routing software will not know how to interpret it. The routing then
> does not include the turn restriction (i.e. no restriction when you want
> one), or if
>   b) you add the condition to a new tag then the routing software does not
> see it (i.e. you have a restriction when you don't want one).
> Both cases need the routing software to be updated...

There is one difference for routers which do not know about conditions: (a) lets them calculate illegal routes, while (b) lets them calculate non-optimal routes.
Since there are a lot of routers which still fail at certain restrictions, I guess we have to take those routers into account. I therefore definitely prefer (b).

> As you see all proposed ideas will need the end users to change something.
> And, in fact, as we currently don't have a way of including conditions, we
> may already have incorrect turn restriction in OSM.

We definitely have them. Here are some from a quick search:
(for more, just search through note/fixme tags)

> _Conclusion_: Whatever we do should keep the tagging as simple and easy to
> understand as possible. As we already have some "applies" type information
> in "restriction:hgv = no-u_turn", my gut instinct is to include all the
> "applies" type info in this tag. Hence the example "*restriction:hgv =
> no_u_turn @ (length > 6)*".

This would be (a) from above.


More information about the Tagging mailing list