User talk:GhostEye

From OpenStreetMap Wiki
Jump to navigation Jump to search

Welcome to oneways

Hi and welcome here. I have noticed that as a pretty new user you have picked one of the more difficult problems of routing - oneway=reversible . Beware that it is very easy to get things wrong because there is all sorts of legacy definitions, workarounds and routers understanding only select tags/condition/combinations. For example up until very recently OsmAnd had not the slightest idea of neither oneway=reversible nor time conditional tags.

So any improvement has to come with great care to prevent breaking backward compatibility. For example, oneway=yes must be guaranteed to be just that because we can't change existing definitions. Routers are fully entitled to evaluate oneway=yes without considering any conditional expressions - this is the reason why oneway=reversible exists. Also it is perfectly fine to use oneway=reversible without any further details as those may not be known to the mapper or irregular and it has been defined this way long before the conditional syntax was fully implemented. If the router encounters oneway=reversible without any further specifications there is not much it can do but it is still better than a plain wrong oneway=yes.

Also notice that the examples you gave in Tag:oneway=reversible are very similar to the example I gave a few lines above that on the same pages with a slightly different syntax. It would be important to actually test the various examples with existing routers, have you tried this? RicoZ (talk) 20:46, 9 October 2019 (UTC)

Thanks for the feedback

Hello RicoZ. I appreciate the feedback on the oneway tagging. The updates I made to the reversible tagging with directional conditions doesn't create any errors in the JOSM validator. The updates were based on regional specific preferences for Santiago, Chile and pulled from ground imagery on Mapillary. This tagging scheme was built to best reflect the restrictions for the regions and not for a specific routing software; with the expectation that moving forward routers will be updated to include directionality for forward and backward tags. 10:38, 11 October 2019 (MST)

Routers will learn to interpret oneway:forward/backward and conditions but in my opinion oneway=yes + oneway:backward:conditional=* is a mapping error (contradicting tags) and routers can not and must not do anything useful with such combinations. Before using such methods please ask in the tagging mailing list for more opinions, especially as the alternative as oneway=reversible + oneway:backward:conditional=* exists which is already evaluated correctly by some routers today. RicoZ (talk) 17:20, 16 October 2019 (UTC)
Beware that the JOSM validator will not catch all thinkable problems, especially not such related to conditional expressions. It would be possible to submit a ticket to catch a few combinations which are very likely to be errors or cause errors in routers but I am not sure it is worth the effort as there are very many combinations that exist. RicoZ (talk) 21:17, 11 October 2019 (UTC)