Public transport/Quality Assurance

From OpenStreetMap Wiki
Jump to: navigation, search
Available languages — Public transport/Quality Assurance
· Afrikaans · Alemannisch · aragonés · asturianu · azərbaycanca · Bahasa Indonesia · Bahasa Melayu · Bân-lâm-gú · Basa Jawa · Basa Sunda · Baso Minangkabau · bosanski · brezhoneg · català · čeština · corsu · dansk · Deutsch · eesti · English · español · Esperanto · estremeñu · euskara · français · Frysk · Gaeilge · Gàidhlig · galego · Hausa · hrvatski · Igbo · interlingua · Interlingue · isiXhosa · isiZulu · íslenska · italiano · Kiswahili · Kreyòl ayisyen · kréyòl gwadloupéyen · Kurdî · latviešu · Lëtzebuergesch · lietuvių · magyar · Malagasy · Malti · Nederlands · Nedersaksies · norsk bokmål · norsk nynorsk · occitan · Oromoo · oʻzbekcha/ўзбекча · Plattdüütsch · polski · português · română · shqip · slovenčina · slovenščina · Soomaaliga · suomi · svenska · Tagalog · Tiếng Việt · Türkçe · Vahcuengh · vèneto · Wolof · Yorùbá · Zazaki · српски / srpski · беларуская · български · қазақша · македонски · монгол · русский · тоҷикӣ · українська · Ελληνικά · Հայերեն · ქართული · नेपाली · मराठी · हिन्दी · भोजपुरी · অসমীয়া · বাংলা · ਪੰਜਾਬੀ · ગુજરાતી · ଓଡ଼ିଆ · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · සිංහල · བོད་ཡིག · ไทย · မြန်မာဘာသာ · ລາວ · ភាសាខ្មែរ · ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ‎ · አማርኛ · 한국어 · 日本語 · 中文(简体)‎ · 中文(繁體)‎ · 吴语 · 粵語 · ייִדיש · עברית · اردو · العربية · پښتو · سنڌي · فارسی · ދިވެހިބަސް

While transitioning from the old Public transport tagging schema to the newer Public_Transport some inconsistencies can appear.

Quality Assurance software

Next to doing your own QA, you can also use the view of existing QA tools

Osmose

Osmose has several analysers on public transport data


Overpass Queries

Highway=bus_stop without a public_transport=* tag

The first stage of transitioning from highway=bus_stop to Public_Transport is to apply either public_transport=stop_position or public_transport=platform to each highway=bus_stop

Overpass query

node({{bbox}})[highway=bus_stop][public_transport!~'platform|stop_position'];
out meta;

Overpass turbo

Stop_position or Platform not within a stop_area relation

After tagging stop_positions and platforms, each objects related to a stop should be grouped in a public_transport=stop_area relation.

Overpass query

node({{bbox}})[public_transport~'stop_position|platform ']->.a;
rel(bn.a)[type=public_transport];
node(r)->.b;
(.a; - .b;);
out meta;

Overpass turbo

Stop_position without platforms

In most cases a stop_position should have a platform not far from it

node({{bbox}})[public_transport=stop_position]->.a; // Find stop_positions
(
  node({{bbox}})[public_transport=platform];
  way({{bbox}})[public_transport=platform];
);// Find platforms
node(around:50.0)[public_transport=stop_position]; // Then look around for stop_positions from each platform
(.a; - ._;); // Intersection of the two sets, which give us stop_positions without platforms
out meta; // Needed for JOSM exports

Overpass Turbo

Platform without Stop_positions

(
  node({{bbox}})[public_transport=platform];
  way({{bbox}})[public_transport=platform];
)->.a; // Find platforms
node({{bbox}})[public_transport=stop_position]; // Find stop_positions
(
  node(around:50.0)[public_transport=platform];
  way(around:50.0)[public_transport=platform];
); // Then look around for platforms near stop_positions.
(.a; - ._;); // Intersection of the two sets, which give us platforms without stop_position
out meta; // Needed for JOSM exports

Overpass Turbo

Public transport objects without network=*

(
  node({{bbox}})[public_transport][network!~'.'];
  way({{bbox}})[public_transport][network!~'.'];
  rel({{bbox}})[public_transport][network!~'.'];
); 
out meta; // Needed for JOSM exports

Overpass Turbo