[Talk-transit] Help: Bus Stop Data Extraction for Bus Routing Service
roland.olbricht at gmx.de
Tue Feb 9 13:28:46 GMT 2010
> We would like to extract public transport data for public transit routing
> service in Sweden.
This will be a difficult, maybe impossible task at the moment. Public
transport data are a complicated matter. Most important for you might be that
there is no timetable information in the OSM database. Thus, without a data
source for the timetable information, it is not useful for public transport
*routing*. Buses running only a few times a week or only on school days can't
be discriminated from regular services running every few minutes.
Also, there is not even a standard for a public transport data model for bus
services in OSM. The best possible approach known to me is
But there might be a quasi-standard for Sweden differing from this one,
depending on your local community. Please provide some IDs of example
relations of the data.
I'll try to answer to you based on the data model commonly used in Germany
(e.g. Wuppertal) or France (e.g. Grenoble).
> What is the difference between the stop nodes within a relation and the
> nodes tagged as “bus_stop” in highways which are also contained in a
> Do the stop nodes within a relation merely refer to the passenger waiting
> point, whereas, stops in highway contained in a relation represent the
> vehicle stopping points?
In general, the node tagged as "highway=bus_stop" indicates the position of
the road sign or shelter and is off the street. If I find such nodes on the
street, I move them to their proper position. For the vehicle stop, the node
on the street might be tagged as "public_transport=stop_position" but they
rarely exist (almost 500,000 bus stops in the database versus 9000 stop
positions) or aren't even defined (stop positions in my area depend on the
vehicle design, not the served line). The stop areas are introduced to group
all the bus stops having the same name.
A relation can carry one or all directions of a bus line. In the former case,
I recommend to keep both the itinerary (the way the bus physically takes) and
the bus stops, usually nodes of type "highway=bus_stop", in the order in which
they are served. In the latter case, you often find a big mess on both the
itinerary and the bus stops which are left from former times (API 0.5) when
there was no defined order on the elements of relations.
More information about the Talk-transit