[Tagging] Clarification on the role link in route relations
Minh Nguyen
minh at nguyen.cincinnati.oh.us
Sat Jan 8 21:02:15 UTC 2022
The wiki page for route relations lists an optional role "link" for
highway=*_link ways leading to and from the route. [1] Under what
circumstances should this role be used? Should we deprecate it?
The "link" role was originally documented in 2009. [2] At the same time,
the highway=motorway_link documentation was edited to state that all
link roads should be members of route relations as "link" members. [3] I
can't find any discussion about the changes. The requirement to add link
roads to route relations was removed the following year [4], but the
role remained documented on the route relation page.
Since then, there have been occasional references to this role [5][6],
but it seems to have gone mostly unnoticed. It goes unmentioned in other
parts of the wiki that describe route relations. As of writing, the
"link" role is used on 26,157 route relation member ways (0.06% of all
route relation member ways). [7] This is a high enough number that it
can't be dismissed as a mere tagging mistake, yet it falls far short of
the 766,473 highway=motorway_link ways, let alone other highway=*_link
ways. [8]
Is there a particular route type, region, route network, or scenario in
which the "link" role is more appropriate? Or is this is just a
misunderstanding based on the residual description on the route relation
page? Perhaps some mappers have misunderstood that this role is required
in order for a router to announce "Take on the ramp toward ABC 123",
even though that's what the destination:ref key and destination_sign
relation type are for.
At the current usage level, data consumers probably would be unable to
depend on the "link" role for any practical purpose. There just isn't
nearly enough coverage of it. Routers such as Valhalla are already
capable of automatically determining connecting routes anyways.
Meanwhile, the inclusion of "link" members causes problems for any
editor, QA tool, or data consumer that lacks support for this role when
determining the linear progression of a route. For example, iD has a
known issue incorrectly ordering members of a nonlinear route relation
when splitting one of its ways. [9] Renderers such as OsmAnd and
openstreetmap-americana understand route relations but don't understand
the "link" role, so they end up showing redundant route shields that can
easily confuse the user. [10]
I think we should qualify the documentation for the "link" role so that
mappers don't misunderstand its purpose and feel obligated to use them
for optimizing router guidance instructions. Perhaps we should even
deprecate the role, since it seems redundant to the "connection" role
for recreational route relations. [11]
(There's also a note on the German E54 route relation [12] justifying a
slightly different usage, apparently for keeping the route connected,
but the "link" roles were removed last year. [13])
[1]
https://wiki.openstreetmap.org/wiki/Special:PermanentLink/2207268#Members
[2] https://wiki.openstreetmap.org/wiki/Special:Diff/270172
[3] https://wiki.openstreetmap.org/wiki/Special:Diff/270169
[4]
https://wiki.openstreetmap.org/wiki/Talk:Tag:highway%3Dmotorway_link#.22Link_roads_should_be_members_of_all_related_route_relations.21.22
[5] https://lists.openstreetmap.org/pipermail/tagging/2010-June/002512.html
[6] https://lists.openstreetmap.org/pipermail/tagging/2010-June/002512.html
[7] https://taginfo.openstreetmap.org/relations/route#roles
[8] https://taginfo.openstreetmap.org/tags/highway=motorway_link
[9] https://github.com/openstreetmap/iD/issues/8578
[10] https://github.com/ZeLonewolf/openstreetmap-americana/issues/79
[11]
https://wiki.openstreetmap.org/wiki/Special:PermanentLink/2185644#Tagging
[12] https://www.openstreetmap.org/relation/6244657
[13] https://www.openstreetmap.org/changeset/87072348
--
minh at nguyen.cincinnati.oh.us
More information about the Tagging
mailing list