OpenStreetMap

Whether we should tag streets indicating whether it has an associated footway/cycleway is a discussion that comes up again and again on OpenStreetMap forums. Currently there's an ongoing discussion on the mailing list for Denmark discussing whether or not the cycleways in Copenhagen should be represented as cycleway=lane tags on the streets or as separate highway=cycleway ways alongside the street.

Rather than discuss that specific issue I think it's worth stepping back and thinking about it makes sense to represent the sort of complex map data we're likely to get in the future where we want to accurately represent highways, pedestrian areas, intersections and other things like that.

Right now most intersections in OSM look like this:

OpenStreetMap intersection without footways/cycleways

These ways may or may not have an associated pedestrian pavement.

Here's the same intersection with added pedestrian ways & crossings:

OpenStreetMap intersection with separate footways

No tags on the way (within reason) are going to intuitively represent where I should cross the street without making separate ways. It's also easy to add to the map where e.g. a button I can press to activate the pedestrian crossing is.

And this is what I think OSM should look like in The Future:

OpenStreetMap intersection with separate footways/cycleways and areas representing the ways

Here we have an intersection with pedestrian ways alongside the road & areas for both the road and the pedestrian areas (if this was accurate enough you could automatically drive an RC car with OSM data). There's a cycleway on the street that has been mapped separately, although not as an area because I was lazy when making this example.

Someone who doesn't want to do intelligent routing can just ignore all these fancy areas and just use highway=* ways which aren't areas. This is the case with rivers/riverbanks at the moment where we support both:

But would anyone be crazy enough to map everything as areas? Yes, this is how traditional GIS databases have been maintained for decades, here's an example of an intersection from Reykjavík, Iceland in LUKR:

How an intersection looks like in a non-free GIS system (for Reykjavík, Iceland)

Discussion

Comment from andrewpmk on 17 November 2009 at 15:46

I've been mapping sidewalks separately as ways in Toronto too (still many, many more sidewalks to be done though). Haven't got around to mapping them as areas yet though (would need more accurate aerial imagery to do this, such as the Nearmap aerial imagery in Australia). I'd be careful using the crosswalk tag for pedestrian crossings as I normally reserve this for pedestrian crossings with flashing lights activated by the pedestrian (which are very common here).

Comment from Harry Wood on 17 November 2009 at 16:00

Thinking about pedestrian routing is just one of many level-of-detail type questions, all of them pointing in the direction of "map everything as an area", as the ultimate solution to all problems representing reality.

It's insane though. You realise that don't you? :-)

Comment from Ævar Arnfjörð Bjarmason on 17 November 2009 at 16:25

Not as insane as some things we'll probably end up doing, like having full 3d polygon support :)

We'll probably see this soon enough with some GIS import or some diligent tracing of aerial imagery though.

Some users continue to advocate that sidewalks and other things associated with streets shouldn't be mapped separately at all and should be represented as tags on the street. That's fine to some degree but I wanted to point out that we can't get away with that forever if we want a detailed street-level map.

Comment from Fabi2 on 17 November 2009 at 17:47

I try to map what is there: If it is a cycle lane on the street, then it's OK to add the tags to the street. But in general i think it is better to represent every objekt seperatly, so there is no guessing which tags belongs to what, even for complex tagging.

The people who say, that the footway belongs to the street, should put the footway and street in a relation or add a name-tag to the footway.

Comment from seav on 18 November 2009 at 05:57

I've thought about this too (mapping streets as areas), but until we get very precise GPS (down to the 10-centimeter level?) or highly-accurately-orthorectified and very-high-resolution aerial imagery, I think this sort of nano-mapping will be several years off.

But I certainly want a short-term solution to mapping routable sidewalks, especially sidewalks without any separation from the street.

Comment from Jean-Marc Liotier on 18 November 2009 at 17:29

Everything as an area - or as a volume - makes ultimate sense. But how are we going to get data at that resolution ?

Comment from Ævar Arnfjörð Bjarmason on 19 November 2009 at 17:42

seav/Jean-Marc Liotier: We already have aerial imagery accurate enough for this sort of thing. We're also likely to do a GIS import at some point where the GIS database has this sort of detail.

Comment from PerroVerd on 26 November 2009 at 09:39

Same discussion in the spanish list about one complicated intersection. As we are improving the map, especially in cities, we realise that its difficult to use the simple ways schema to reflect what its on the ground.

Comment from seav on 26 November 2009 at 09:55

But NearMap isn't good enough. The accuracy estimates say that the NearMap photos are accurate to about 1-3 meters. If you have a 1-meter-wide sidewalk, that's a huge amount of error.

Comment from Ævar Arnfjörð Bjarmason on 26 November 2009 at 18:32

seav: NearMap has an absolute accuracy of 1-3 meters but the relative accuracy of its imagery looks to be <5-10 cm. If you map imagery with such high relative accuracy accurately you can always drag the entire data by 1-3 later to give it the absolute accuracy you need.

Comment from Ævar Arnfjörð Bjarmason on 26 November 2009 at 18:34

seav: ... around 5-10 cm. If you have that amount of relative accuracy you trace it and drag the entire data by 1-3 meters later as you get more accurate rectification points later.

Comment from Waldo000000 on 28 November 2009 at 23:55

Nice entry, Ævar. Are there documented methods (e.g. wiki pages) for tagging entities that are represented as an area and a way? E.g. would the road name go on the area or way? Is a relation required to relate the area and the way?

Comment from Ævar Arnfjörð Bjarmason on 29 November 2009 at 03:16

Waldo000000: Not currently though, though perhaps something like that might result from the discussion currently ongoing on talk@ about this blog post of mine.

Comment from Waldo000000 on 29 November 2009 at 03:42

Ævar: Hope so :)

Log in to leave a comment