General Transit Feed Specification/Mapping to OSM tags

From OpenStreetMap Wiki
Jump to navigation Jump to search


Reference: https://developers.google.com/transit/gtfs/reference/



stops.txt

Reference: https://developers.google.com/transit/gtfs/reference#stopstxt

GTFS key value Similar OSM key/value remarks
stop_id ID gtfs:id=*, gtfs_id=*, gtfs:stop_id=*, (stop_id=*+source:stop_id=gtfs) In Europe ref:IFOPT=* is the preferred key if the ID is identical.
stop_code Text gtfs_stop_code=*, ref=*
stop_name Text name=* gtfs:name=* can be used for the name in the data if it differs from name=*.
stop_desc Text description=*
stop_lat Latitude Object position, not always accurate
stop_lon Longitude Object position, not always accurate
zone_id ID
stop_url URL url=*, website=*
location_type 0 or empty (highway=bus_stop, railway=stop/railway=halt, railway=tram_stop) + public_transport=platform Stop (or Platform): public_transport=stop_position if it's on the line; station=subway / subway=yes / station=light_rail / ferry=yes if applicable
1 (amenity=bus_station, railway=station) + public_transport=station, Station: group child stations with public_transport=stop_area
2 Entrance/Exit
3 Generic Node
4 Boarding Area
parent_station ID public_transport=stop_area Parent object, for location_type=5 the platform
stop_timezone Timezone
wheelchair_boarding 0 or empty Use value from parent If no parent exists: No info available
1 wheelchair=yes
2 wheelchair=no
level_id ID
platform_code Text local_ref=*

routes.txt

Reference: https://developers.google.com/transit/gtfs/reference/routestxt

GTFS key value Similar OSM key/value remarks
route_id ID gtfs:route_id=* PTv2 routes need one of gtfs:shape_id=*, gtfs:trip_id:sample=* or gtfs:trip_id=* but gtfs:route_id=* does not harm
agency_id ID Useful to get the operator=* from agency.txt
route_short_name Text gtfs:name=* name=* has a different syntax
route_long_name Text gtfs:name=* name=* has a different syntax
route_desc Text description=*
route_type 0 (route=light_rail, route=tram) + (type=route, type=route_master)
1 route=subway + (type=route, type=route_master)
2 route=train + (type=route, type=route_master)
3 (route=bus, route=share_taxi) + (type=route, type=route_master) There is no difference made between bus and share_taxi, so far.
4 route=ferry
5 cable_tram=yes + route=tram + (type=route, type=route_master)
6 route=aerialway, aerialway=*
7 route=funicular + (type=route, type=route_master)
11 route=trolleybus + (type=route, type=route_master)
12 route=monorail + (type=route, type=route_master)
route_url URL url=*, website=*
route_color Color colour=*
route_text_color Color
route_sort_order 0-∞
continuous_pickup 0 Yes ; Role Role hail_and_ride for the member ways
1 or empty No
2 reservation=required + phone=* Yes, by phone call in advance.
3 Yes, by talking to the driver
continuous_drop_off 0 Yes ; Role Role hail_and_ride for the member ways
1 or empty No
2 reservation=required + phone=* Yes, by phone call in advance.
3 Yes, by talking to the driver

trips.txt

Reference: https://developers.google.com/transit/gtfs/reference/tripstxt

GTFS key value Similar OSM key/value remarks
route_id ID gtfs:route_id=* Not needed for PTv2 routes but does not harm.
service_id ID
trip_id ID (gtfs:trip_id:sample=*, gtfs:trip_id=*) + type=route + public_transport:version=2 Use gtfs:shape_id=* if possible. Use gtfs:trip_id=* only for a route relation with a single trip and only one service_id.
trip_headsign Text destination=* Sometimes direction=* is used but that does neither fit to the key nor to the definition of this field.
trip_short_name Text gtfs:name=*
direction_id Boolean Different travel directions
block_id ID
shape_id ID gtfs:shape_id=* + type=route + public_transport:version=2 The preferred ID for a PTv2 routes as it directly corresponds to the tagging system.
wheelchair_accessible 0 or empty No info available
1 wheelchair=yes
2 wheelchair=no
bikes_allowed 0 or empty No info available
1 bicycle=yes
2 bicycle=no