London public transport tagging scheme/Examples

From OpenStreetMap Wiki
Jump to: navigation, search

A good way to find your way round he London public transport tagging scheme is by looking at some examples. You'll want to familiarise yourself with Overpass_turbo.

Viewing route_masters and routes for network=London Buses Underground / Overground / etc

Recommended Network tags:

London Underground
London Overground
Docklands Light Railway
London Buses
London River Services
National Rail
London Tramlink
Crossrail
TfL Rail

London Buses

Query by network=London Buses

This is very complete: route_masters and routes for most lines.

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name;true;" | ")][timeout:25];
{{sel=["network"~"London Buses"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

However, if extend this set, we see that sometimes network=TfL.

try it yourself in overpass-turbo
[out:csv(::type,::id,type,network,name;true;" | ")][timeout:25];
{{sel=["network"~"London Bus"]["type"~"route"]}}
(
  relation{{sel}};
);
(._ ; <<; >>;) -> .b;
(relation.b;);
out meta qt;

Query by relation type=network, name=London Buses

There is a relation with type=network relation 5732270 which has all route masters in it:

try it yourself in overpass-turbo
[out:csv(::type,::id,type,network,name;true;" | ")][timeout:25];
{{sel=[name="London Buses"]}}
(
  relation{{sel}};
);
out meta qt;

By recursing down from this relation, we find all bus routes:

try it yourself in overpass-turbo
[out:csv(::type,::id,type,network,name;true;" | ")][timeout:25];
{{sel=[name="London Buses"]}}
(
  relation{{sel}};
);
(._ ; <<; >>;) -> .b;
(relation.b;);
out meta qt;

London Underground

relation 7225135

The routes are all there. However, few routes have route masters.

List:

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"London Underground"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

View on map:

try it yourself in overpass-turbo
[out:json][timeout:25];
{{sel=["network"~"London Underground"]["type"~"route"]}}
(
  relation{{sel}};
);
out geom qt;

London Overground

relation 7225139

Presumably this finds all routes. However, few routes have route masters.

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"London Overground"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

Map:

try it yourself in overpass-turbo
[out:json][timeout:25];
{{sel=["network"~"London Overground"]["type"~"route"]}}
(
  relation{{sel}};
);
out geom qt;

Docklands Light Railway

relation 7225140

It seems that DLR is used, which should be replaced by Docklands Light Railway.

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"Docklands Light Railway"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;
try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"DLR"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

Show the output on a map indicates that it's probably complete:

try it yourself in overpass-turbo
[out:json][timeout:25];
{{sel=["network"~"DLR|Docklands"]["type"~"route"]}}
(
  relation{{sel}};
);
out geom;

However, it's not split into routes: https://en.wikipedia.org/wiki/Docklands_Light_Railway.

Crossrail

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"Crossrail"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

This doesn't look complete yet:

try it yourself in overpass-turbo
[out:json][timeout:25];
{{sel=["network"~"Crossrail"]["type"~"route"]}}
(
  relation{{sel}};
);
out geom;

https://en.wikipedia.org/wiki/Crossrail

These don't produce anything

TfL Rail

https://en.wikipedia.org/wiki/TfL_Rail

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"TfL Rail"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

London Tramlink

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"London Tramlink"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;

London River Services

try it yourself in overpass-turbo
[out:csv(::type,::id,network,type,name)][timeout:25];
{{sel=["network"~"London River Services"]["type"~"route"]}}
(
  relation{{sel}};
);
out meta qt;