MENTZ GmbH/Modellierungsvorschläge ÖPNV
The points below should provide support for the public transport modeling in OpenStreetMap. The topics are presenting a collection of information, which was taken from OSM-Wiki. The aim is to reflect the guidelines for modeling real features. We are thankful for any annotations and comments: MENTZ Kontakt
Access to our other topics:
Route lines 
Route lines are captured with relations, which are containing all used traffic routes and reached stops. There are two types of relations to capture route lines:
- The relation type
type=routedescribes a "line version". In this case it's about a vehicle, which is operating on a route with a certain line number. Different relations are set up for round trips as well as for alternate traffic routes. - The relation type
type=route_mastergroups the line version to one "line".
Line versions
Tags
| Key | Value | Description |
|---|---|---|
| type | route |
General tag for a line version |
| route | train |
Classifies the line as a train route |
light_rail |
Classifies the line as a light rail route | |
subway |
Classifies the line as a subway route | |
tram |
Classifies the line as a tram route | |
bus |
Classifies the line as a bus route | |
ferry |
Classifies the line as a ferry route. Modeling also possible without relations | |
| ref | The number of the line | |
| from | Text | The beginning stop of the line |
| to | Text | The ending stop of the line |
| operator | Text | The operator of the line |
| network | Text | The network, in which the line is integrated |
| name | Text | Name of the line. Mostly used for an easier differentiation of several line versions. Usually contains a line number and a rough route |
Members
The relation has the following members:
- The stops should be sorted in the order, in which they are used. For each stop the following should be added:
- A stop position (
public_transport=stop_position). It usually gets the rolestop. For stops where only entries are possible, the rolestop_entry_onlyis used. For stops where only exits are possible, this rolestop_exit_onlyand for stops on demand the rolestop_on_demandis used. - A platform (
public_transport=platform). It usually gets the roleplatform. For platforms where only entries are possible, the roleplatform_entry_onlyis used. For platforms where only exits are possible this roleplatform_exit_onlyand for platforms on demand the roleplatform_on_demandis used.
- A stop position (
- The traffic routes (streets or rails) should be sorted in the order, in which they are used by the vehicle. They don't get any role.
Lines
Tags
| Key | Value | Description |
|---|---|---|
| type | route_master |
General tag for a line version |
route_master=* |
train |
Classifies the line as a train route |
light_rail |
Classifies the line as a light rail route | |
subway |
Classifies the line as a subway route | |
tram |
Classifies the line as a tram route | |
bus |
Classifies the line as a bus route | |
ferry |
Classifies the line as a ferry route. Modeling also possible without relations | |
| ref | The number of the line | |
| operator | Text | The operator of the line |
| network | Text | The network, in which the line is integrated |
| name | Text | Name of the line. Mostly used for an easier differentiation of several line versions. Usually contains a line number and a rough route |
Members
The route-master-relation contains all line versions (type=route) of a line.
Stop points (public transport) 
A stop point is a point on a street or rail, where vehicles of the public transport stop. The point gets the tag public_transport=stop_position. The stop point should be placed in the middle of the street/ rail. In addition to that it gets at least one more attribute, where the public transport type ist specified.
| Key | Value | Description | Model |
|---|---|---|---|
public_transport=* |
stop_position |
Stop position |
|
| ref | Reference number or letter | ||
| train | yes/no | Stop position for train | |
| subway | yes/no | Stop position for subway | |
| tram | yes/no | Stop position for tram | |
| bus | yes/no | Stop position for bus | |
light_rail=* |
yes/no | Stop position for light rail | |
| wheelchair | yes/no | Indicating, if the stopping vehicles are wheelchair accessible | |
wheelchair:bus=* |
yes/no | Suggestion: Indicating, if the stopping busses are wheelchair accessible. This information is relevant on stops where trams and busses stop at the same position. Analog: wheelchair:train=* wheelchair:tram=* wheelchair:subway=*
| |
| description | Description, e.g. name of the stop | ||
| name | Station name | The name of the stop position, e.g. Köln-West
| |
| operator | Operator | The operator of the stop position | |
| network | Network name | The network, of which the stop position is part of | |
uic_ref=* |
Station number | A unique number for station, given by the UIC | |
uic_name=* |
Station name | An international valid station name, given by the UIC |
Platforms (public transport) 
| Key | Value | Description | Model | Image |
|---|---|---|---|---|
public_transport=* |
platform |
| ||
| tram | yes/no | Platform for tram | ||
| bus | yes/no | Platform for bus | ||
light_rail=* |
yes/no | Platform for light rail | ||
| train | yes/no | Platform for train | ||
| subway | yes/no | Platform for subway | ||
| area | yes | Relevant for areas | ||
| name | Name | If the platform has an own name. Rail numbers are captured with ref=*
| ||
| description | Description | e. g.: "Odeonsplatz U3 U6 Bahnsteig" | ||
| ref | Number of the tracks. When there are more tracks next to the platform, then they are seperated with a semicolon, e. g. ref=1;2 | |||
| wheelchair | yes/no/limited | Indicating, if the platform is wheelchair accessible | ||
wheelchair:maxwidth=* |
integer | Suggestion. The width of the smallest edge on the platfom. Relevant for wheelchair users. The value is specified in meters. |
Transport
With the Bike + Ride option, the user gets a suitable B&R recommended. Mostly they are placed around the stations. Bike and Ride Plätze in München
-
Park and Ride
| Main key | Value | Combination | Element | Description | Node symbols | Image |
|---|---|---|---|---|---|---|
bike_ride=yes
|
amenity= bicycle_parking | Bicycle parking as point or area | ![]() | |||
park_ride=yes
|
amenity= parking | Parking spaces for cars | ![]() |
| Key | Value | Element | Description | Image |
|---|---|---|---|---|
| amenity | parking_entrance | Marking the parking entrance | ![]() | |
| amenity | parking_space | Marking a single parking space (suitable for one vehicle) inside a parking area, or group of them | ||
| amenity | taxi | A taxi rank is a place, where taxies are waiting for passengers. They are mostly located near airports, hotels, railway stations, bus stations or shopping malls. A point node indicates the position, from which the first taxi is departing or where a call box is located.
The taxi post with a telephone is marked as the taxi entrance. An alternative is to create an area, where the taxis are waiting. |
![]() |







