[Tagging] "Feature Proposal - RFC - bicycle=use_cycleway

Robert Whittaker (OSM lists) robert.whittaker+osm at gmail.com
Wed Nov 13 09:20:25 UTC 2013

On 12 November 2013 18:16, Pee Wee <piewie32 at gmail.com> wrote:
> Together with user Masimaster I've made a proposal for a new tag to improve
> bicycle routing. I think (and hope) the wiki is clear enough but I’ll say a
> few words about this new tag.
> The tag is introduced to separate 2 kinds of roads where you are not
> supposed to ride your bike.

I'm afraid I'm not convinced by the proposal at
https://wiki.openstreetmap.org/wiki/Bicycle_use_cycleway .

First of all, the proposal is not clear on exactly when this tag is to
be applied, in some places you say it's to be used when there is a
parallel "compulsory" cycleway, and elsewhere it says "official". Then
use of "allowed / wise" also introduces ambiguity as to whether the
tag is intended only for routes where most cycling is banned on the
road, or just when cyclists would generally choose not to. This needs
to be clarified.

(In the UK for example, we often have cycle tracks running parallel to
the road. There is also an official government document called the
"Highway Code", which includes the clause for cyclists: "Use cycle
routes, advanced stop lines, cycle boxes and toucan crossings unless
at the time it is unsafe to do so. Use of these facilities is not
compulsory and will depend on your experience and skills, but they can
make your journey safer." It's not entirely clear from your proposal
whether or not the proposal means all UK roads with parallel cycle
routes should be tagged with bicycle=use_cycleway. I would presume
not, but I think the proposal as written is open to interpretation.)

Secondly, you mention the case of special types of bicycle eg
tricycles. I would argue that if such vehicles routinely have a
different legal status with respect to access rights in a particular
country, then they should be given a more specific access tag key to
over-ride any access tags set for bicycle. This is how we handle other
access issues where certain types of vehicle are an exception. (For
example, on a service road only open to buses and taxis, we would set
vehicle=no, psv=yes. Here we should use something like bicycle=no,

Finally, I think that it is not a good idea to introduce an access tag
value where the precise effect is going to vary by country and have
different meanings to different people. IMO the access tags should be
used to express absolute states as well as possible, rather than being
subject to different interpretations in different places. Routers etc
shouldn't need to know about different national laws and conventions
to interpret the main tag. (This is why, for example, we tag national
speed limits with a numerical maxspeed=* tag, and then provide a
supplementary maxspeed:type=* tag to explain how that numerical value
is derived. Or why in the UK, we tag access rights such as foot=yes in
addition to the legal origin of those rights e.g.

So I would suggest that on any roads where cycling is generally
disallowed, we continue to use bicycle=no as the standard tagging. If
certain sub-types of bicycle are allowed, then an additional access
tag can be added to override bicycle=no for those cases. To express
the legal origin of the restriction, and provide the information to
routers that want it, I'd suggest adding tag along the lines of
bicycle:restriction_type=DE:use_cycleway where the value comes from a
country code and a table of values that list the various legal
statuses that may exist in each country. This has the advantages of
(a) using a backwards compatible bicycle=* value (b) allowing
users/routers that don’t want to be bothered with the details of
different restrictions to give a reasonable result that will be right
in most cases, (c) providing a standard way to record the precise
legal status of the route, (d) allowing routers that do want to be
bothered with the details to implement them on a country- and
law-specific basis. None of these advantages are present in the
original proposal.

If there are cases where it is less clear cut that cycling is
generally forbidden, then maybe a more generic tag of
bicycle=restricted might be better as the main tag, again in
conjunction with a separate tag to identify the precise restriction
that applies. (Yes this will mean the main bicycle=* tag needs to be
interpreted by routers, but at least it gives them a single generic
tag for "you probably can't cycle here, but you need to check for
details" which they can use to warn end-users if the router doesn't
want to work out the precise details themselves.)


Robert Whittaker

More information about the Tagging mailing list