Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
Hi Tobias, Am Mittwoch, 17. Oktober 2012, 01:56:05 schrieb Tobias Knerr: > As for examples, I hope the following two will help: > > Example 1: > > type = restriction > restriction:conditional = no_right_turn @ 08:00-18:00 That sounds like the following might be correct as well (k!): type = restriction restriction:conditional = no_right_turn @ (08:00-18:00); only_right_turn @ (18:00-08:00) > restriction = only_straight_on > restriction:psv = none > > Basically, use "Conditional restrictions" syntax on the restriction key > in the same manner as it would be applied to, say, maxspeed or access. > > A drawback of this approach is the need to invent a value for "no > restriction" - I've called it "none" for the example above. Okay, then the following does actually make sense: type=restriction restriction=none (probably default) restriction:psv=no_right_turn Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
On 17.10.2012 01:43, Eckhart Wörner wrote: > Am Mittwoch, 17. Oktober 2012, 01:31:00 schrieb Tobias Knerr: >> This trap would not exist with restriction:hgv=*, >> restriction:conditional=* and so on, because there you would not rely on >> an implicit default. > > I agree, this might be a trap, however, this can be easily caught by editors > like JOSM ("value of applies:conditional will be ignored since there are only > 'yes' values"). > Also, I am not fully understanding what the value of restriction:conditional > would be in your type of tagging. Maybe some complete example with all tags > present? You are right about the possibility to catch this in editors, of course. As for examples, I hope the following two will help: Example 1: type = restriction restriction:conditional = no_right_turn @ 08:00-18:00 Example 2: restriction = only_straight_on restriction:psv = none Basically, use "Conditional restrictions" syntax on the restriction key in the same manner as it would be applied to, say, maxspeed or access. A drawback of this approach is the need to invent a value for "no restriction" - I've called it "none" for the example above. Tobias ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
Hi Tobias, Am Mittwoch, 17. Oktober 2012, 01:31:00 schrieb Tobias Knerr: > This trap would not exist with restriction:hgv=*, > restriction:conditional=* and so on, because there you would not rely on > an implicit default. I agree, this might be a trap, however, this can be easily caught by editors like JOSM ("value of applies:conditional will be ignored since there are only 'yes' values"). Also, I am not fully understanding what the value of restriction:conditional would be in your type of tagging. Maybe some complete example with all tags present? Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
On 17.10.2012 00:38, Eckhart Wörner wrote: > >> restriction = no_u_turn >> applies = no (to switch it off for all transportation modes) >> applies:hgv = yes (to switch it back on for HGVs) > > yeah, that's the idea. The implied default would be something like > "applies=yes, applies:foot=no" so that by default, turn restrictions apply to > everyone but pedestrians. It's not a bad solution. With the implied 'yes', I expect you would repeatedly see errors like this, though: restriction = no_... applies:conditional = yes @ 08:00-18:00 This trap would not exist with restriction:hgv=*, restriction:conditional=* and so on, because there you would not rely on an implicit default. Tobias ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
On 16 October 2012 23:38, Eckhart Wörner wrote: > Hi Rob, > > (Putting tagging ML back in To since this might be of interest to other > people as well, I hope you don't mind.) > > > On topic: In your suggestion you proposed "applies = *". What would you > do > > with the following: > > > > * day_on, etc... > > * restriction:hgv, etc > > * except > > > > Would you suggest deprecating them? Thus a restriction that applies to > only > > hgv's becomes: > > > > restriction = no_u_turn > > applies = no (to switch it off for all transportation modes) > > applies:hgv = yes (to switch it back on for HGVs) > > yeah, that's the idea. The implied default would be something like > "applies=yes, applies:foot=no" so that by default, turn restrictions apply > to everyone but pedestrians. > > The big advantage of using "applies" is that from a language POV it is > immediately clear what is meant, and that the syntax will be *exactly* the > same as in Conditional Restrictions. > > day_on, … should definitely get deprecated, those tags are an unholy mess: > people mess up off and on; people interpret them them as both "from day A > time B to day C time D" and "from time B to time D each day between day A > and day C". > except can probably stay, it can easily be translated (except=bus > translates to applies:bus = no) > restriction:hgv should get deprecated / reverted, someone recently sneaked > this into the wiki page without any discussion. > > Eckhart > Hi, No problem with you moving this back online (I wanted to check that I wasn't putting words in your mouth first). Thanks for the clarification. I spotted you had reverted some recent changes (thanks) but wasn't aware that restriction:hgv was also a recent addition. I think deprecating these would be step in the right direction and removes many of the concerns I had with using a new tag (namely you end up with "applies" type data within both "restriction:hgv = " and "applies="/"condition="/whatever the new tag is called). I suggest we write up a wiki page proposing the changes. That way we can better track the discussion :-) Rob p.s The talk page for Turn Restrictions is stupidly long. Will take a while to work through it to see if there are any helpful tips in there! ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
Hi Rob, (Putting tagging ML back in To since this might be of interest to other people as well, I hope you don't mind.) > On topic: In your suggesttion you proposed "applies = *". What would you do > with the following: > > * day_on, etc... > * restriction:hgv, etc > * except > > Would you suggest deprecating them? Thus a restriction that applies to only > hgv's becomes: > > restriction = no_u_turn > applies = no (to switch it off for all transportation modes) > applies:hgv = yes (to switch it back on for HGVs) yeah, that's the idea. The implied default would be something like "applies=yes, applies:foot=no" so that by default, turn restrictions apply to everyone but pedestrians. The big advantage of using "applies" is that from a language POV it is immediately clear what is meant, and that the syntax will be *exactly* the same as in Conditional Restrictions. day_on, … should definitely get deprecated, those tags are an unholy mess: people mess up off and on; people interpret them them as both "from day A time B to day C time D" and "from time B to time D each day between day A and day C". except can probably stay, it can easily be translated (except=bus translates to applies:bus = no) restriction:hgv should get deprecated / reverted, someone recently sneaked this into the wiki page without any discussion. Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
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. Agreed. > 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: http://www.openstreetmap.org/browse/relation/338059 http://www.openstreetmap.org/browse/relation/1735851 (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. Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
I'm still not convinced that you need to introduce a new tag (be that "applies" or "condition"). 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... 3. ...and that is exactly what a Request For Change (RFC) is for. It is as the name suggests a communication with your users : "Hey guys, we want to change this to make it better. What do you think? Great, can you update your systems so that you are ready for the new tags" 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. _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)*". Regards, Rob p.s. Any change to day on, day off, hour on, hour off, will also break the existing scheme (but is in my opinion worthwhile). p.p.s. All my previous examples are fictional. More real world photos fully appreciated. ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted – turn restrictions ahead?
I don't think we need to make it complicated. The Conditional Restrictions syntax is a bit overkill here. The restriction type is already known (type=restriction), so is the value (restriction=no_left_turn). What is left is just the condition (plus eventually a transport mode). I already mentioned the following proposal on the talk page http://wiki.openstreetmap.org/wiki/Talk:Relation:restriction#Conditional_restrictions : * condition= * condition:= ( uses the condition values from Conditional Restrictions) The need for the transportation mode variant will like be small as restriction:=* should already cover this. In my opinion there are no reasons to make it more complicated than that. It is backward compatible and easy to understand by mappers. It would deprecate "hour_on", "hour_off" etc. I believe it may be better to keep "except" but I would like to see real-world examples of conditional exceptions before adapting a Conditional Restrictions like syntax for that key (is your example 3 real?). Ole / polderrunner On 16/10/2012 17:45, Rob Nickerson wrote: Hi Eckhart, Your right, voting has come to an end for the Conditional Restrictions proposal, which was approved. A statement was not made on this list as Ole and I are working on how best to write the feature page so that some of the concerns raised (about complexity / difficulty to understand) are reduced as much as possible. Like Martin, I'm not hugely convinced about the need for complicated turn restrictions (most of the restrictions will be on the road and the detail on the turn sign will simply be advanced warning for the driver). Having said that, you have provided a few examples so I have looked into it: 1. Currently we tag a no left turn restriction using "restriction = no_left_turn". 2. If we want this to apply only to HGVs then the key is changed so that it become "restriction:hgv =no_left_turn". To draw the comparison with "Conditional Restrictions" the above tags cover of , and the tag value. There is no need to specify as this is already captured in the relation (from, via, to). Therefore the only part left to add is the condition. At the moment there are 2 ways to do this 3. Using "except = *" (where * is a vehicle type). e.g. except = bicycle 4. Using day on, day off, hour on, hour off In summary we already have both "applies" type tags (1, 2 and 4) and "except" type tags (3, and the inverse of 4!). My gut instinct is that adding an "applies = *" tag would further complicate the issue. In conclusion I would be in favour of adding the conditions directly to the restriction or except tag (depending on how the road sign is written). Yes this breaks backward compatibility but there are a lot less turn restrictions in OSM than the other restrictions and if the conditions are not met then the restrictions does not apply so it shouldn't really be tagged anyway! == Some Examples == * Example 1: "no u-turn" restriction for HGVs longer than 6 metres: * restriction:hgv = no_u_turn @ (length > 6) * Example 2: no right turn Monday to Friday 8am to 4 pm: * restriction = no_right_turn @ (Mo-Fi 08:00-16:00) * Example 3: no left turn except PSV's on Monday to Friday 8am to 4 pm: * restriction = no_left_turn * except = psv @ (Mo-Fi 08:00-16:00) This then depreciates the need for day on, etc... tags which I'm not a fan of - I think it is better to tag what is on the sign e.g. (Mo-Fr 08:00-19:00). Happy to hear your thoughts. Rob p.s. I think it would be nice to see a few more real world examples if anyone has any photographs (or can remember the conditions). p.p.s It would be nice to know how many routing software apps are using these turn restriction relations. ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted - turn restrictions ahead?
> To draw the comparison with "Conditional Restrictions" the above tags > cover of , and the tag value. > There is no need to specify as this is already captured in > the relation (from, via, to). I am not sure you can say this. It should work where the junction angles are close to 90 degrees, but for a shallow "Y" junction things might need a hint as to whether it is a curve to the right with a junction to the left, or a curve to the left with a junction to the right... Colin - - - Hi Colin, Sorry, we're talking about 2 different things. I was making the comparison with Conditional Restrictions which includes direction (forward or backward). These values are not needed. Can I suggest that if you with to discuss such values as no_slight_right_turn (or whatever), then you start a new thread. It may also be worth looking back through the original proposal for turn restrictions to see if any comments were made then. Cheers, Rob ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted – turn restrictions ahead?
On 16/10/2012 17:45, Rob Nickerson wrote: Hi Eckhart, Your right, voting has come to an end for the Conditional Restrictions proposal, which was approved. A statement was not made on this list as Ole and I are working on how best to write the feature page so that some of the concerns raised (about complexity / difficulty to understand) are reduced as much as possible. Like Martin, I'm not hugely convinced about the need for complicated turn restrictions (most of the restrictions will be on the road and the detail on the turn sign will simply be advanced warning for the driver). Having said that, you have provided a few examples so I have looked into it: 1. Currently we tag a no left turn restriction using "restriction = no_left_turn". 2. If we want this to apply only to HGVs then the key is changed so that it become "restriction:hgv =no_left_turn". To draw the comparison with "Conditional Restrictions" the above tags cover of , and the tag value. There is no need to specify as this is already captured in the relation (from, via, to). I am not sure you can say this. It should work where the junction angles are close to 90 degrees, but for a shallow "Y" junction things might need a hint as to whether it is a curve to the right with a junction to the left, or a curve to the left with a junction to the right. The type of restriction should reflect the road signs. At a T-junction, a mandatory left turn could be considered different to a no right turn, even if they are effectively the same thing. This cannot be derived from the geometry alone. Colin ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
[Tagging] Conditional restrictions accepted – turn restrictions ahead?
Hi Eckhart, Your right, voting has come to an end for the Conditional Restrictions proposal, which was approved. A statement was not made on this list as Ole and I are working on how best to write the feature page so that some of the concerns raised (about complexity / difficulty to understand) are reduced as much as possible. Like Martin, I'm not hugely convinced about the need for complicated turn restrictions (most of the restrictions will be on the road and the detail on the turn sign will simply be advanced warning for the driver). Having said that, you have provided a few examples so I have looked into it: 1. Currently we tag a no left turn restriction using "restriction = no_left_turn". 2. If we want this to apply only to HGVs then the key is changed so that it become "restriction:hgv =no_left_turn". To draw the comparison with "Conditional Restrictions" the above tags cover of , and the tag value. There is no need to specify as this is already captured in the relation (from, via, to). Therefore the only part left to add is the condition. At the moment there are 2 ways to do this 3. Using "except = *" (where * is a vehicle type). e.g. except = bicycle 4. Using day on, day off, hour on, hour off In summary we already have both "applies" type tags (1, 2 and 4) and "except" type tags (3, and the inverse of 4!). My gut instinct is that adding an "applies = *" tag would further complicate the issue. In conclusion I would be in favour of adding the conditions directly to the restriction or except tag (depending on how the road sign is written). Yes this breaks backward compatibility but there are a lot less turn restrictions in OSM than the other restrictions and if the conditions are not met then the restrictions does not apply so it shouldn't really be tagged anyway! == Some Examples == * Example 1: "no u-turn" restriction for HGVs longer than 6 metres: * restriction:hgv = no_u_turn @ (length > 6) * Example 2: no right turn Monday to Friday 8am to 4 pm: * restriction = no_right_turn @ (Mo-Fi 08:00-16:00) * Example 3: no left turn except PSV's on Monday to Friday 8am to 4 pm: * restriction = no_left_turn * except = psv @ (Mo-Fi 08:00-16:00) This then depreciates the need for day on, etc... tags which I'm not a fan of - I think it is better to tag what is on the sign e.g. (Mo-Fr 08:00-19:00). Happy to hear your thoughts. Rob p.s. I think it would be nice to see a few more real world examples if anyone has any photographs (or can remember the conditions). p.p.s It would be nice to know how many routing software apps are using these turn restriction relations. ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted – turn restrictions ahead?
Hi Martin, Am Dienstag, 16. Oktober 2012, 02:18:30 schrieb Martin Koppenhoefer: > > apparently Conditional Restrictions has become an approved feature, even > > though nobody mentioned it here. While I still believe that this is a > > sub-optimal solution (and still nobody has passed the test I created > > earlier in the discussion, even though a lot of people tried), I have now > > abandoned the Extended Conditions proposal. > > > > I guess the next step is to adopt conditional restrictions for turn > > restrictions, to achieve some consistency. > > > are you sure that we need this? In real life I only met these in cases > where they would have already been implicit in OSM (i.e. in addition > to the signs limiting access to a road there was a turn_restriction > sign to advert the driver in advance but this wasn't restricting more > than what the road access permissions already did). Just for the start: • there are some "no left turn" restrictions in Munich that only apply during rush hour (i.e. specified intervals on a sign) to improve traffic flow, with day_on… not being sufficient • there are some "no u-turn" restrictions in Augsburg that only apply to vehicles longer than 6 metres • there has been a "no right turn" restriction near Neusäß that only applied during night time and holidays (got removed a few years ago) to calm down a residential road None of these are representable implicitly or with what we have right now, and those are just a few random examples off the top of my head; I have seen a lot more of them. Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
Re: [Tagging] Conditional restrictions accepted – turn restrictions ahead?
2012/10/15 Eckhart Wörner : > Hi everybody, > > apparently Conditional Restrictions has become an approved feature, even > though nobody mentioned it here. While I still believe that this is a > sub-optimal solution (and still nobody has passed the test I created earlier > in the discussion, even though a lot of people tried), I have now abandoned > the Extended Conditions proposal. > > I guess the next step is to adopt conditional restrictions for turn > restrictions, to achieve some consistency. are you sure that we need this? In real life I only met these in cases where they would have already been implicit in OSM (i.e. in addition to the signs limiting access to a road there was a turn_restriction sign to advert the driver in advance but this wasn't restricting more than what the road access permissions already did). cheers, Martin ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging
[Tagging] Conditional restrictions accepted – turn restrictions ahead?
Hi everybody, apparently Conditional Restrictions has become an approved feature, even though nobody mentioned it here. While I still believe that this is a sub-optimal solution (and still nobody has passed the test I created earlier in the discussion, even though a lot of people tried), I have now abandoned the Extended Conditions proposal. I guess the next step is to adopt conditional restrictions for turn restrictions, to achieve some consistency. One possibility would be "applies" as basekey, and then conditional restriction tagging like applies:bus=no applies:hgv:conditional = no @ (length>12) (the implied default being applies=no, applies:vehicle=yes) Any volunteers? :-) Eckhart ___ Tagging mailing list Tagging@openstreetmap.org http://lists.openstreetmap.org/listinfo/tagging