[OSM-dev] Super-relations or not

Peter Budny peterb at gatech.edu
Fri Oct 29 02:45:36 BST 2010

Frederik Ramm <frederik at remote.org> writes:

> Hi,
> Peter Budny wrote:
>> 1) The common way, up to now, for storing routes that alternate between
>> single- and dual-carriageway has been to leave the single-carriageway
>> parts without a role, or with the role "north/south".  This makes
>> the order of the members of the relation meaningless, since you
>> can't traverse the ways end-to-end in the specified order.
> There is no requirement for the order to have meaning; it is just a
> tool the server offers you, and you can use it or not.
> The way I view route relations, it is less about traversal and more
> about simply stating that a certain way belongs to a certain
> route. The route relation doesn't lose its usefulness if a little bit
> in the middle is missing.
> I would simply group all bits together in the route relation,
> including the dual carriageway pieces, and not worry about roles
> etc. - this can all be deducted from the oneway tags.

That doesn't work; there are cases where it's ambiguous.  If you look at
[1], US-278 runs along North Avenue (bottom) and Ponce de Leon Avenue
(top), connected by Monroe Drive (left) and Piedmont Avenue (right).

The problem is that North Ave and Ponce de Leon are both oneway=no,
while Monroe and Piedmont are oneway=yes.  So unless you run a routing
algorithm over the relation, you can't figure out just from the oneway
tags that US-278 westbound doesn't include North Avenue (which you would
otherwise assume from it being oneway=no).

On top of that, TIGER data in the US didn't have oneway information, so
lots of oneway roads here are still not tagged as such.  (We can create
the route relations because there's metadata from the import, and
Wikipedia pages, that tell us where the road goes... but knowing if a
road is oneway often requires local knowledge.)

Super-relations are always unambiguous, and are easier to process.

[1] http://maps.google.com/?ie=UTF8&ll=33.771926,-84.382652&spn=0.001561,0.002645&z=19

>> This could be solved by adding the single-carriageway sections twice
>> (once with "north" and once with "south")
> Please no.

Agreed on this point.

>> If anyone has a compelling argument against super-relations, or for
>> single relations, I'd like to hear it.  Supporting both seems really
>> pointless
> No, supporting them both is quite probably the best way forward. You
> can start with doing a simple relation, and when you find that there's
> something more complex to it you can still use a super-relation.

We don't support *either* very well right now, and you want to support
Peter Budny  \
Georgia Tech  \
CS PhD student \

More information about the dev mailing list