The Wiki documentation for barrier=kerb and kerb=* is incomplete and contradictory. Following on from the previous discussion, I’d like to improve them to better document how the tags are used and how the community agrees that they should be used.
I didn’t want to make major changes without giving people a chance to comment, so here is a summary. This is not a proposal for how things should be mapped, nor am I endorsing how things are currently mapped. (Personally I think it’s confusing that kerb= has so many different meanings.) I’m just trying to improve the documentation so data consumers can make informed decisions and new users can read the page to understand how kerbs are typically tagged.
barrier=kerb
(1) On a way along the length of the kerb, to map the kerb itself.
(2) On a node that is part of a highway, to map the location where someone travelling along the highway has to cross a kerb. This includes situations where the highway crosses a barrier=kerb
way, but very often the kerb is not mapped separately as a way. The current version of the Wiki page contradicts itself on this usage.
More information about the kerb can be added by adding the kerb=* key which serves as a rough indicator of the height of the kerb and how much of an obstacle it is. For mapping the exact height of the kerb, on ways height=* is commonly used, on nodes kerb:height=*.
There is agreement that barrier=kerb
should only be used on a node that is part of a highway if anyone travelling along the highway has to cross the kerb: therefore it should typically not be used on a highway=crossing
or by itself on a node that is part of a road. This would imply that it applies to cars travelling along the road, like some sort of traffic calming measure. Despite this, the use of barrier=kerb
on a road is not uncommon and it would (as of March 2023) lead to unexpected results if a data consumer was to assume that all of these slow cars down or present a significant barrier to cyclists travelling along the road.
kerb=*
- On a barrier=kerb way, at the actual location of the kerb, to indicate the type or approximate height of the kerb
- On a barrier=kerb node, at the actual location of the kerb, to indicate the type or approximate height of the kerb
- By itself, on a node that is part of a path, footway, service road or similar, at the actual location of the kerb, for example where the highway crosses a kerb (though the kerb itself is often not mapped separately as a way). When encountering such a case, it makes sense to add the missing “parent tag” barrier=kerb, for clarity (so it becomes an example of usage 2)
- By itself, on a node on a road (e.g. highway=primary/secondary/…), to mean that there is a kerb on each side of the way at this point. This should not be taken to mean that someone travelling along the road has to cross the kerb, therefore adding barrier=kerb here would be wrong.
- On something like a
highway=crossing
node or ahighway=bus_stop
node. In this use it is an additional tag providing more information, liketactile_paving=yes
. It indicates that there is a kerb somewhere near this node that someone visiting the node might want to know about, but the kerb is not necessarily at the exact location of the node and this tagging therefore does not imply abarrier=kerb
orwheelchair=no
.
Of these 5 different meanings, only no. 3 and 5 are currently documented in the Wiki.
I’m not proposing changes to the documentation of the different values for kerb=*, that’s another story.
Please let me know what you think.