![]() |
VOOZH | about |
| Public_Transport | |
|---|---|
| Proposal status: | Approved (active) |
| Proposed by: | Teddych |
| Tagging: | public_transport=stop_position;platform;station;stop_area
|
| Applies to: | π node π way π area π relation |
| Definition: | This proposal covers a complete view on the public transport and extends the existing and well known tags with more exact and clearly defined new tags. Most of the proposed tags are already widely used and are a de facto standard in several cities in Central Europe. |
| Rendered as: | Identical to railway=halt, railway=tram_stop, highway=bus_stop and highway=platform
|
| Draft started: | 2010-11-29 |
| RFC start: | 2010-12-05 |
| Vote start: | 2011-03-31 |
| Vote end: | 2011-04-20 |
This proposal is an advancement of Oxomoa's Public Transport Schema (English translation).
This proposal covers a complete view on the public transport and extends the existing and well known tags with more exact and clearly defined new tags. Most of the proposed tags are already widely used. With some differences between the cities described in several wiki pages, the new tags are a de facto standard in several cities in Central Europe.
railway=tram_stop / railway=halt (node on the way) and highway=bus_stop (node beside the way).public_transport=stop_position).public_transport=platform).type=public_transport/public_transport=stop_area) (optional).Stops are physically represented by poles, shelters, timetables, platforms, bus bays and/or zigzag lines on the street. At the stop passengers are waiting for the transportation vehicle (train/subway/monorail/tram/bus/trolleybus/aerialway/ferry) and can board and leave them when they have stopped.
The stop position is the place where the vehicle usually stops on the rails or on the street.
The stop position is tagged as a π node
on the way, even when the bus stops in a bus bay. The stop position is tagged with the following attributes:
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| public_transport | stop_position |
Defines this point as a stop position of the vehicle. | mandatory |
| train | yes / no | If at this stop position stop trains. | recommended if yes, else optional |
| subway | yes / no | If at this stop position stop subways. | recommended if yes, else optional |
| monorail | yes / no | If at this stop position stop monorails. | recommended if yes, else optional |
| tram | yes / no | If at this stop position stop trams. | recommended if yes, else optional |
| bus | yes / no | If at this stop position stop buses. | recommended if yes, else optional |
| trolleybus | yes / no | If at this stop position stop trolley-buses. | recommended if yes, else optional |
| aerialway | yes / no | If at this stop position stop aerialways. | recommended if yes, else optional |
| ferry | yes / no | If at this stop position stop ferries. | recommended if yes, else optional |
| name | Individual name | The name by which the stop position is known. | recommended if no public_transport=stop_area exists, else optional
|
| ref | Reference | The reference by which the stop position is known. | recommended if no public_transport=stop_area exists, else optional
|
| uic_ref | UIC reference | The UIC reference by which the stop position is known. | recommended if no public_transport=stop_area exists, else optional
|
| uic_name | UIC name | The UIC name by which the stop position is known. | recommended if no public_transport=stop_area exists, else optional
|
| operator | Operator | Name of the company that operates the stop position | recommended if no public_transport=stop_area exists, else optional
|
| network | Local / regional network | Name of the network the stop position belongs to | recommended if no public_transport=stop_area exists, else optional
|
The platform is the place where passengers are waiting for the vehicles.
The platform is tagged as π way
or π area
where the passengers can wait for the vehicles. If there is no platform in the real world, one can place a π node
at the pole with public_transport=platform.
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| public_transport | platform |
Defines this way or area as a platform where passengers are waiting for the vehicle. If there is no platform in the real world, one can place a node at the pole. | mandatory |
| area | yes / no | If the platform is an area. | recommended if yes, else optional |
| name | Individual name | The name by which the platform is known. | recommended if no public_transport=stop_area exists, else optional
|
| ref | Reference | The reference by which the platform is known. | recommended if no public_transport=stop_area exists or differs, else optional
|
| uic_ref | UIC reference | The UIC reference by which the platform is known. | recommended if no public_transport=stop_area exists, else optional
|
| uic_name | UIC name | The UIC name by which the platform is known. | recommended if no public_transport=stop_area exists, else optional
|
| operator | Operator | Name of the company that operates the platform. | recommended if no public_transport=stop_area exists, else optional
|
| network | Local / regional network | Name of the network the stop position belongs to | recommended if no public_transport=stop_area exists, else optional
|
| shelter | yes / no | If there is a shelter that is not tagged separately with amenity=shelter. |
recommended if yes, else optional |
| bench | yes / no | If there is a bench that is not tagged separately with amenity=bench. |
recommended if yes, else optional |
| covered | yes / no | For platforms under the surface. This does not replace a correct layer key. | recommended if yes, but not needed if there is a specific structure (other than a general landuse classification) on a higher layer covering the whole platform. |
A station is an area dedicated to and particularly designed for passenger access to Public Transport, considerably bigger than a pair of bus stops or tram stops.
These are typical properties of a station (not all of them need to be present):
The station itself is mapped as an π area
, usually covering the outline described above, including amenities located inside the dedicated area. If the station is completely (or most of it) inside a station building, the building is the outline. If the station is not fully or mostly covered by a building, any existing buildings should be mapped at their place inside the station outline.
If a station outline is not known, the station can be mapped as a π node
, leaving the details to others.
Please note that more than one station can be member of one and the same stop area. Conversely, it can happen that one station belongs to more than one stop area - if the station contains stop areas (or parts of these) with different attributes, such as different networks.
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| public_transport | station |
Defines the station as such. | mandatory |
| name | Individual name | The name by which the station is known. | recommended |
| area | yes / no | If the station outline is an area and not a building. | required if yes, else optional |
| building | yes / no | If the station outline happens to be the main outline of the station building. | required if yes, else optional |
| operator | Operator | Name of the company that operates the station building/area. | optional |
| network | Local / regional network | Name of the network the station belongs to | optional |
| covered | yes / no | For stations under the surface. This does not replace a correct layer key. | recommended if yes, but not needed if there is a specific structure (other than a general landuse classification) on a higher layer covering the whole station. |
The stop area is a relation that contains all elements of a train/subway/monorail/tram/bus/trolleybus/aerialway/ferry stop.
The stop area is the logical combination of the stop position(s) and the platform(s) and is tagged as a π relation
. The relation can also contain other elements like public_transport=station, amenity=shelter or amenity=bench. Alternatively they may be captured by appending the proper tags shelter=yes or bench=yes to the public_transport=platform-primitive.
Usually a stop area has one unique UIC reference and one unique name.
If only one node exists (e.g. only one node public_transport=platform representing the pole), it is recommended to forgo the stop area relation. Instead, put the information usually stored in the relation into the node attributes.
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| type | public_transport |
Defines this relation as a public transport relation. | mandatory |
| public_transport | stop_area |
Defines this relation as a stop area. | mandatory |
| name | Individual name | The name by which the stop is known. | recommended |
| name:<qualifier> | Operator's or network's name | The name by which the stop is known by a specific operator or network. | recommended if the stop is known under different names by different operators or networks |
| ref | Reference | The reference by which the stop is known. | recommended |
| ref:<qualifier> | Operator's or network's reference | The reference by which the stop is known by a specific operator or network. | recommended if the stop is known under different references by different operators or networks |
| uic_ref | UIC reference | The UIC reference by which the stop is known. | recommended if available |
| uic_name | UIC name | The UIC name by which the stop is known. | recommended if available |
| operator | Operator | Name of the company that operates the stop. | recommended if available |
| network | Local / regional network | Name of the network the stop belongs to. | recommended if available |
Members of this relation are:
| Role | Refers to | Comment | Recommendation |
|---|---|---|---|
| stop | public_transport=stop_position |
position(s), where the vehicle stops | recommended if available |
| platform | public_transport=platform |
the platform(s) | recommended if available |
| none | public_transport=station |
the station building/area | recommended if it belongs to the stop area |
| none | amenity=* |
examples: shelter, bench, bicycle_parking, taxi | recommended if available |
A route/service is represented by vehicles that always run the same way with the same reference number.
Each direction or variant of a route is represented by a separate relation.
Each direction of a route should be tagged as a separate π relation
. If a route has several variants (e.g. different way at weekend), these variants should also be in separate relations.
The roles alternate, forward and backward should not be used any more.
Each direction/variant relation contains all available stop_positions, platforms and ways.
Each stop is included with two elements (if available): first the stop_position tagged with role stop and immediately followed by the corresponding platform tagged with role platform. The stops (stop_positions and platforms) should be inserted beginning with the initial stop_position/platform and ending with the terminal stop_position/platform.
If a stop is only for exiting or entering the vehicle (common for nightly services) the roles stop and platform should be replaced with stop_exit_only or stop_entry_only and platform_exit_only or platform_entry_only.
Inserting the stop_position is important to know where the vehicle stops. Inserting the platforms is needed for correct pedestrian routing.
After all the stops all the used ways should be inserted into the relation with an empty role. The ways should be inserted beginning with the way at the initial stop position and ending with the way at the terminal stop position.
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| type | route |
Defines the relation as route. | mandatory |
| route | train / subway / monorail / tram / bus / trolleybus / aerialway / ferry |
Defines the route as train, subway, monorail, tram, bus, trolleybus, aerialway or ferry route. | mandatory |
| from | Initial stop | Initial stop where the variant starts. | recommended |
| to | Terminal stop | Terminal stop where the variant ends. | recommended |
| via | Important via stop(s) | If there are several variants of a line here should be inserted an important and well known stop to clarify via where the route goes. | recommended if several variants in one direction of a route exists |
| name | <vehicle type> <reference number>: <initial stop> => <terminal stop> | Prose description of route variant. <Vehicle type> should be identical to route=*. Example: Bus 201: Uitikon Waldegg, Bahnhof => Uitikon, WΓ€ngi |
recommended |
| ref | Reference | The reference number by which the service is known. | recommended if no route_master=* exists, else optional
|
| ref:<qualifier> | Operator's or network's reference | The reference by which the service is known by a specific operator or network. | recommended if the service changes the reference number when crossing the network's border and no route_master=* exists
|
| operator | Operator | Name of the company that operates the service. | recommended if no route_master=* exists, else optional
|
| network | Local / regional network | Name of the network the route belongs to. | recommended if no route_master=* exists, else optional
|
| colour | Colour | Route/Service colour (HTML named colour or web colour in hexadecimal format). | recommended if no route_master=* exists, else optional
|
Members of this relation are
| Role | Refers to | Comment | Recommendation |
|---|---|---|---|
| stop / stop_exit_only / stop_entry_only | public_transport=stop_position |
stop positions ordered in sequence from=* .. to=* followed by the corresponding platform (if available) |
recommended if available |
| platform / platform_exit_only / platform_entry_only | public_transport=platform |
platforms and/or poles orderedin sequence from=* .. to=* headed by the corresponding stop position |
recommended if available |
| none | all π way s used by the vehicle |
in sequence from=* .. to=* representating the route of the vehicle |
mandatory |
The route master is a relation that contains all the direction and variant routes and the information that belongs to the whole service.
A master-π relation
contains all the important information that belongs to the service. All the variants/directions are members of this master relation.
| Key | Value | Comment | Recommendation |
|---|---|---|---|
| type | route_master |
Defines the relation as route_master. | mandatory |
| route_master | train / subway / monorail / tram / bus / trolleybus / aerialway / ferry |
Defines the route_master as train, subway, monorail, tram, bus, trolleybus, aerialway or ferry route_master. | mandatory |
| ref | Reference | The reference number by which the service is known. | recommended |
| ref:<qualifier> | Operator's or network's reference | The reference by which the service is known by a specific operator or network. | recommended if the service changes the reference number when crossing the network's border |
| name | <Vehicle type> <Reference number> | Short prose description of route master. <Vehicle type> should be identical to route=*. Example: Bus 201 |
recommended |
| operator | Operator | Name of the company that operates the service. | recommended if available |
| network | Local / regional network | Name of the network the route belongs to. | recommended if available |
| colour | Colour | Route/Service colour (HTML named colour or web colour in hexadecimal format). | recommended if available |
Members of this relation are
| Role | Refers to | Comment | Recommendation |
|---|---|---|---|
| none | all route variant/direction π relation s |
mandatory |
All the examples presented here are full featured examples. In practice after the first visit of an area one can only map the stop_position (sitting in the bus) or the platform (walking through). So it is common only to map one node per visit, hoping another mapper or will do further work.
Because the proposed tags do not get rendered at the moment, in these examples the well known tags are also added to the proposed tags. When and if this proposal gets approved and rendered, these duplicate tags will be removed.
The proposed tags can and do coexist with the well known tags. The usage of the new tags is recommended but not mandatory.
This proposal covers several already existing and well known tags related to public transport. These well known tags still have their eligibility and can and do coexist with the well known tags. The usage of the new tags is recommended but not mandatory.
How the well known tags can be mapped/reused with the new public transport schema is described below:
| Existing Tag | Interpreted as | Comment |
|---|---|---|
highway=bus_stop beside a way/street where buses are allowed |
public_transport=platform |
This covers the pole/shelter of a bus stop and can be on a footway or sidewalk. |
highway=bus_stop on a way/street where buses are allowed |
public_transport=stop_position + bus=yes |
This covers the stop position of a bus. |
amenity=bus_station tagged as node beside a way/street |
public_transport=platform |
This covers the pole/shelter of a bus stop. |
amenity=bus_station tagged as node on a way/street |
public_transport=stop_position + bus=yes |
This covers the stop position of a bus. |
amenity=bus_station tagged as area |
public_transport=station + area=yes |
This covers the area of a bus station. |
amenity=bus_station tagged as building |
public_transport=station + building=yes |
This covers a bus station building. |
highway=platform |
public_transport=platform |
This covers the platform of a bus stop. |
railway=tram_stop on the rails |
public_transport=stop_position + tram=yes |
This covers the stop position of a tram. |
railway=halt on the rails |
public_transport=stop_position + train=yes |
This covers the stop position of a train. |
railway=platform |
public_transport=platform |
This covers the platform of a tram/train stop. |
railway=station tagged as area |
public_transport=station + area=yes |
This covers the area of the station. |
railway=station tagged as building |
public_transport=station + building=yes |
This covers a building of a train station. |
building=train_station |
public_transport=station + building=yes |
This covers a building of a train station. |
A stop position can be mapped as an icon depending of the vehicle type that is stopping at the position (e.g. highway=bus_stop) or as a blue or red point.
If the stop position is not part of a stop area then the name should get rendered too. If there is a stop area relation, the name of the stop area should get rendered instead once per stop area.
Should be rendered identical to railway=platform/highway=platform. Additionally also a node should get rendered.
If the platform is not part of a stop area then the name should get rendered too. If there is a stop area relation, the name of the stop area should get rendered instead once per stop area.
If the station is a building, it should get rendered as a building. If it is an area, it can get rendered with a similar but different colour then the background.
For simple maps the name of the stop area should get rendered instead of the names of the underlaying nodes/ways. Special public transport maps can also draw the area where the stop area is located.
Voting ended at 2011-04-20.
highway=platform and highway=bus_stop by public_transport=platform. How do I know if the platform is for a bus or a tramway ? And in the daily language, people go to a 'bus stop' not to a 'platform'. Sounds that it is a proposal done by and for professionals, not for the average public of OSM contributors. And the wiki said until know that the 'stop' was about the area for passengers (user point of view), not the 'stop' for the bus itself (operator point of view). You change this fundamental definition and it will confuse a lot since many mappers tag as public transport users, not as operators.amenity=bus_station by public_transport=station + area=yes. This is an overuse of the current tag area=*. Once you have a polygon, you don't need a tag area=yes in most of the current OSM tags (basically it is just required for highways because we don't know if a closed highway is a loop or a surface).train=yes on your public_transport=stop_position. If the node is on the railway, we know it is a train, not a bus !highway=bus_stop by public_transport=platform. It's only true for those how tagged the bus-stop for passangers, not for those who tagged the node on the highway. Both co-existed in the past with the same tag and you ignore it in this paragraph.bin=yes/no and ref_name=* (replacement for uic_name=*, which would be ref_name:uic=* if needed) are still missing here. --Fabi2 20:45, 31 March 2011 (BST)area=yes shouldn't be used and with his 4th point. --Uboot 18:14, 4 April 2011 (BST)Voting ended at 2011-04-20. Result is: 83 approve the proposal, 6 oppose the proposal and 3 don't like the proposal. This proposal has been approved.