[Tagging] Formally informal sidewalks

Tobias Knerr osm at tobias-knerr.de
Sun Jul 16 09:51:53 UTC 2017

On 15.07.2017 19:06, Nick Bolten wrote:
> It can't properly describe
> crossings, since they've been condensed into a node, but important
> information like length, the curbs at each side (direction of
> traversal + curb type both matter), APS directionality, etc, are all
> essentially linear features.

You can tag the curbs at each side of a crossing using left/right tags,
and you can find out the length by looking at the road's width (or
estimate it from the number of lanes). It's not perfect, but at least
there are good enough ways to deal with this.

The same cannot be said for the problems caused by sidewalks mapped as
separate ways. Drawing a sidewalk way next to the road produces just
that: Two ways with no machine-readable semantic relationship to each other.

>From personal experience: I'm rendering sidewalks in a 3D renderer. It
works pretty well with lane-like sidewalk tagging, but separate ways
prevent pretty much everything I would like to do with them: I can't
draw the kerbs, because I cannot easily determine whether I'm on the
left or the right of the street. I can't make sure that the sidewalk is
at comparable elevation to the road on hilly terrain. And the sidewalk
and road will always have random gaps or overlap each other, because
they are never really accurately drawn.

Other applications have similar problems: Want to make sidewalks into a
part of the road's line style? You can't – instead you end up drawing
them as separate lines, which looks ok at detailed zooms, but stops
working as you zoom out. Want to show routing instructions such as
"follow the right sidewalk of Foobar Road"? Doesn't work, because we
don't know which road this sidewalk is the sidewalk of. Want your
pedestrian router to cross smaller roads anywhere, which is an integral
part of how pedestrians typically navigate street networks? Again, you
can't – you need to hope the mapper has drawn "virtual crossings" at
semi-regular intervals (or even at all).

Yes, separate sidewalk geometries allow for nice details like telephone
poles on a sidewalk. But they lose information that's a lot more
fundamental: The semantic connection with the road.

> If the curb is raised, every time a driveway
> or alley intersects the sidewalk, the curb changes to lowered or flush.
That's only a problem if you map this lowering of the kerb as a property
of the highway way. I believe it may be feasible to map this as the
property of the junction and crossing nodes instead.

Plus, drawing separate ways only seems easier because you are omitting
essential information, as described above. If you actually were to
express the relationship between the sidewalk and the road with a
relation for each section of sidewalk, it would very quickly stop being

> Hope this makes some sense... it feels a bit ranty.

Yeah, I know the feeling. In fact, I couldn't resist the urge to write a
rant of my own in response. ;)

More information about the Tagging mailing list