[OSM-dev] Proposal: Make relations ordered
richard at systemeD.net
Mon Mar 17 12:49:13 GMT 2008
Frederik Ramm wrote:
> In this case, the idea was that the intersection is theoretically
> unrestricted, you just want a way to describe the route the bus takes.
> Turn restrictions don't help you there. - One example people were
> mentioning is bus stops; they want to make the bus stops members of the
> relation, and they want to be able to print them out in the correct
> sequence. What they can do, today, is have the membes in the roles
> "stop01" to "stop99" and achieve ordering through that.
In 99.9% of cases that's unnecessary. If you have a bus route with
stops A, B and C:
then it's blindingly obvious that the bus in the A-C direction calls
in the order A,B,C, unless someone has been taking the bus name "The
Oakham Hopper" way too literally.
(For those not aware of the Oakham Hopper:
So you just have the rare ribbon case:
There are any number of ways you could model this without needing
ordering, whether you call it a turn restriction or not. Have a tag,
or role, on B saying "between stops A and C". Have a turn
restriction-like relation on B with scope limited to the bus route.
Or, my preferred solution, just say "sod it" because it doesn't matter
in practice. Really it doesn't. If it's a bus, there is really no
point in trying to assess bus routes without bus timetables, and the
timetable will make it perfectly clear what order the stops are in. If
it's a bike route, what I do at "+" depends entirely whether I'm
feeling too knackered to go round the loop - I can see from the map
that a loop is available.
Surely one of the unwritten guiding principles of OSM is "don't make
things complicated just to cater for a few edge cases"?
(Anyway, I should stop arguing about relations and actually finish all
the supporting code in Potlatch that'll enable me to deploy Dave's
excellent relations stuff.)
More information about the dev