Upgrading Transjakarta Networks to Public Transport V2 Schema
Posted by Reinhart Previano on 21 June 2019 in English.I am currently working to improve Transjakarta, one of Jakarta’s major BRT/Busway operators, to comply with Public Transport Version 2 schema in OpenStreetMap, though Version 3 is being purposed.
Before and After map of Transjakarta Corridor 9 route, between Pluit and Penjaringan bus stops
Legacy Tags that I’d like to keep for compatibility:
https://wiki.openstreetmap.org/wiki/Tag:amenity=bus_stopfor PTV1 compatibility on bus stationshttps://wiki.openstreetmap.org/wiki/Tag:corridorXX=yes: assigns which Transjakarta corridors are served, such ashttps://wiki.openstreetmap.org/wiki/Tag:corridor9=yesfor Corridor 9 andhttps://wiki.openstreetmap.org/wiki/Tag:corridor12=yesfor Corridor 12 (see Implementation Notes if you are a developer utilising this tag for queries)- HOTOSM InAWARE tags
https://wiki.openstreetmap.org/wiki/Tag:network=Transjakarta, now also reinforced withnetwork:wikidataandwikidatavalueshttps://wiki.openstreetmap.org/wiki/Tag:shelter=yeshttps://wiki.openstreetmap.org/wiki/Tag:shelter_tj=yes(see Implementation Notes if you are a developer utilising this tag for queries)
Things I REMOVED
https://wiki.openstreetmap.org/wiki/Tag:service=TransJakarta, since this is unacceptable by Osmose and other QA tools (see Implementation Notes if you are a developer utilizing this tag for queries)
New things that I added
https://wiki.openstreetmap.org/wiki/Tag:bus=yesto meet PTV2 requirements for bus- Route relation-specific additions:
- New route relations will be added for Corridor sub-routes (e.g. Corridor 1A, 9M, etc.), night services (e.g. M1 for Corridor 1; though I’ll consult with other OSM Public Transport implementations in other places)
- Duplicating roads since many Transjakarta networks operate on one-way roads
https://wiki.openstreetmap.org/wiki/Tag:network:wikidata=Q1671143for Transjakarta, then add Wikidata values for each route relation, e.g.https://wiki.openstreetmap.org/wiki/Tag:wikidata=Q12492249for Corridor 5https://wiki.openstreetmap.org/wiki/Tag:public_transport:version=2to enable JOSM and Osmose debugging
- Shelter/station-specific additions:
- Stations may now be represented as a Relation for those which have split platforms and/or multiple objects in OSM, such as in some Corridor 9 stations which are split by toll roads/expressways
- Transit-Oriented Development (TOD) areas are now represented as a separate Relation to connect multiple stations serving different networks
https://wiki.openstreetmap.org/wiki/Tag:covered=yes, since Transjakarta stations are fully covered (in conjunction tohttps://wiki.openstreetmap.org/wiki/Tag:shelter=yes)https://wiki.openstreetmap.org/wiki/Tag:departures_board=realtimesince all Transjakarta stations (except Metrotrans, Miktrotrans, and Royaltrans services) have a live bus timetable, which can also be accessible through API at http://api.jakarta.go.idhttps://wiki.openstreetmap.org/wiki/Tag:public_transport=stop_positionandhttps://wiki.openstreetmap.org/wiki/Tag:public_transport=platform, see PTV2 on OSM wiki for specific implementationhttps://wiki.openstreetmap.org/wiki/Tag:smoking=nodue to government laws, though not necessarily applied to all stops and stations across Jakartahttps://wiki.openstreetmap.org/wiki/Tag:wheelchair=yes/dedicated/partial/no(optional)
Implementation Notes (for apps and services)
- Please use the Route Relation instead of
https://wiki.openstreetmap.org/wiki/Tag:corridorXX=yesfor network queries. After checking on taginfo.openstreetmap.org most ofcorridorXXtags are only used in Indonesia. - Additionally, you may include hard-coded Relation IDs which belong to Transjakarta network.
- Please use
https://wiki.openstreetmap.org/wiki/Key:highwayand Transjakarta Route Relation IDs instead ofhttps://wiki.openstreetmap.org/wiki/Tag:service=TransJakartato query roads which belongs to Transjakarta, as some parts of the routes do NOT have a separate road (or Kassel Kerbs) - Please use Transjakarta Route Relation objects with
https://wiki.openstreetmap.org/wiki/Tag:role=platformorhttps://wiki.openstreetmap.org/wiki/Tag:role=stop_positioninstead ofshelter_tj, as some Transjakarta (especially Royaltrans and Metrotrans) networks do stop at regular bus stations.
Discussion
Comment from Warin61 on 21 June 2019 at 08:22
Hi, Thanks for your efforts with PTv2! Some comments on relation/9370447 - Transjakarta Corridor 8
Some of the stops don’t appear to be on the route. The circular bit of the rout in the south is not well done. Way: TransJakarta Busway Koridor 8 (428443864) needs to be split so Way: TransJakarta Busway Koridor 8 (512756020) can correctly connect to it.
Take a look at my diary entry @Warin61/diary/45106 for my thoughts on how to do it - the minimum requirements.
And use https://tools.geofabrik.de/osmi/?view=pubtrans_routes&lon=106.79500&lat=-6.19984&zoom=11&overlays=ptv2routes,ptv2routes_valid,ptv2_routes_invalid,ptv2_error,ptv2_error_ways,ptv2_error_nodes for a check on what you have done and if it works to some degree.
Comment from Reinhart Previano on 21 June 2019 at 09:36
As an update here are some changes I’ve made, starting from Corridor 9: + changeset/71257265 + changeset/71262712 + changeset/71262812 + changeset/71453713 + changeset/71454405 + changeset/71454422 + changeset/71454773 + changeset/71455101
Final touches will be made around Pluit and Penjaringan stations, before I continue to the next steps.