Skip to content
Marco edited this page Feb 10, 2015 · 7 revisions

This page is very beta. Just some personal notes to describe how Miccolis can be mapped onto GTFS. This page will be deleted or merged into the official documentation.

How public transport data are stored on OpenStreetMap

Here we describe the convention we followed for mapping public transport data on OpenStreetMap.

OSM and GTFS

Routes = master relations = bus lines

Master relations correspond to routes

  • route_id = master.id
  • route_short_name = master.tags.ref
  • route_long_name = master.tags.name
  • route_type is always equal to 3
  • route_color (optional). Matera routes do not have colors. We are going to choose some random colors for each line.

Link to the builder

Master relations have some member relations. The common case is when a route has two directions.

shapes = relations member of a master relation = geographical shape of a route

OSM member relations are just a ordered list of gps points, i.e. the shape of a route.

A shape is what the name says: the physical form of a route, e.g. bus number 3. A route can have more shapes depending on time (summer vs winter, monday vs sunday, school day vs other days, 8am vs 12pm). We specify this information using trips and services file.

trips + services = bus line variants, two way directions

We use trips and services file to describe variants for a route. Trips file defines a sequence of stops (e.g. one of the actual physical routes a particular bus line can follow) [1] while calendar/calendar_dates specify when service starts and ends, the days of the week, the days of the year when service is available.

[1] the sequence of stop is represented as a one2many relation with stop_times (mandatory) or as a one2many relation shapes (optional).

The simplest case is to represent opposite directions.

A service is a cartesian product of a subset of these attributes

  • winter/summer times,
  • working/non working days.
  • school days

For example, if a trip can change depending on winter/summer or working/nonworking or school/non school, we need 6 services.

Trips are physical about a route.

  • directions in two-way routes
  • variants
  • morning trips/evening trips

calendar_dates are exceptions to the above rules. For example, special holidays.