Subway stations in Seoul
Posted by thbz on 3 April 2015 in French (Français). Last updated on 3 May 2017.I have been working on the bus and subway routes in Seoul lately, but there are still many discrepancies and missing tags. So I thought I might try to do some planning instead of always improvising, une fois n’est pas coutume. And I’ll practice my English, too, and learn more about Markdown.
The references:
The rules :
-
Work on subway lines 1 to 9. Whether other lines should be dealt the same way might be discussed later.
-
Every existing
railway=stationnode that corresponds to a subway station should also be tagged aspublic_transport=station,subway=yesand (if it’s only for lines 1 to 9)station=subway. Reciprocally, anypublic_transport=stationshould be tagged the same way if it corresponds to a subway station. -
Existing nodes should not be moved unless really necessary (i.e. do not apply the “This node should not be part of a railway track” rule for an existing
railway=stationnode, unless I am ready to really map apublic_transport=stop_arearelation for that station). -
Only one
railway=stationnode should exist for every subway station, unless it is used for very different networks (lines 1 to 9 will be considered as one single network, I may let severalrailway=stationnodes if they exist in multi-network stations such as 서울역, but I’m not sure about that). -
Every existing
public_transport=stop_positionnode in the subway network should be tagged assubway=yesand be located on arailway=railorrailway=subwayway. It should not be tagged asrailway=stationorstation=subway. -
All the
public_transport=stationnodes that belong to the same line should be members, with no role, of the relation(s) associated with that line. These relations may follow the new Public transport proposal (i.e one relation for each direction or branch) or not.
The planning:
## Subway stations
1. Select all railway=station and public_transport nodes in the Seoul Metropolitan area using the following Overpass request:
(
node[railway=station]({{bbox}});
way[railway=station]({{bbox}});
node[public_transport=station]({{bbox}});
way[public_transport=station]({{bbox}});
);
(._;>);
out meta;
-
Load these nodes into a JOSM calque (ça se dit comment, en anglais?). Also load in another calque the
railway=subwayandrailway=railways in the same area:( way[railway=rail]({{bbox}}); way[railway=subway]({{bbox}}); ); (._;>); out meta;and/or maybe load in another calque the relation that corresponds to each subway line:
relation[route=subway][name~"1"]({{bbox}}); (._;>); out meta; -
For each subway station:
- add the required tags for the corresponding station node;
- remove the duplicates if any;
-
add the node to the relation associated to the subway lines this station belongs to (do it for each subway line separately):
relation[route=subway][name~"1"]({{bbox}}); (._;>); out meta;
Stop positions
-
Load in JOSM the
public_transport=stop_positionnodes (maybe only if they are not too far from subway stations):( node[public_transport=stop_position]({{bbox}}); way[public_transport=stop_position]({{bbox}}); ); (._;>); out meta; -
Add
subway=yesfor those which are located in a subway station, and move them onto therailway=railorrailway=subwayway if necessary.
Later:
-
set
railway=subwayfor allrailway=railways associated to a subway line? -
create
public_transport=stop_arearelations for every station? At least for those with at least twopublic_transport=*nodes ? -
apply the following
railway_stationrule:Using the word “station” in the name=* if it is not part of the name printed on signs at the station, i.e. avoid name=Station Newton
-
make the subway map look pretty for http://www.openrailwaymap.org/ (I know, don’t map for the renderer. Anyways, if I can apply the rules and make the renderer happy, there’s no harm.)
Bon, personne n’a lu jusqu’ici, mais 괜찮아, c’est d’abord pour moi que j’ai pris ces notes…
Discussion
Comment from gileri on 3 April 2015 at 16:54
Very good post summarizing the tagging process for subways. Thank you !
(Et oui, au moins une personne a lu jusqu’au bout :)