Opened 8 years ago

Last modified 6 years ago

#15107 closed enhancement

[Patch] Check runways,aerodromes for missing tags in validator — at Version 5

Reported by: maxerickson@… Owned by: team
Priority: normal Milestone: 19.09
Component: Core validator Version:
Keywords: runway aerodrome Cc: Klumbumbus

Description (last modified by Klumbumbus)

They aren't well adapted for global use but the simple rules I use locally flag many easy improvements:

*[aeroway=aerodrome][!faa]{
  group: tr("Airport Tagging");
  throwWarning: tr("Airport without faa code.");
}

*[aeroway=helipad][!faa]{
  group: tr("Airport Tagging");
  throwWarning: tr("Helipad without faa code.");
}

*[aeroway=aerodrome][!icao][faa!~/\d/],
*[aeroway=aerodrome][!iata][faa!~/\d/]{
  group: tr("Airport Tagging");
  throwWarning: tr("Airport without {0} code.", "{1.key}");
}

*[aeroway=runway][!ref],
*[aeroway=runway][!surface]{
  group: tr("Airport Tagging");
  throwWarning: tr("Runway missing {0}.", "{1.key}");
}

The [faa!~/\d/] selector suppresses the warnings for small US airports, where the FAA usually assigns an identifier that contains a number.

osmwiki:Tag:aeroway=aerodrome
osmwiki:Tag:aeroway=helipad

Change History (5)

comment:1 by Don-vip, 8 years ago

Description: modified (diff)
Keywords: runway aerodrome added
Summary: Check runways,aerodromes for missing tags in validator[Patch] Check runways,aerodromes for missing tags in validator

comment:2 by naoliv, 8 years ago

Include [inside("US")] in the faa tests;

Globally icao could be verified if it's /^[A-Z]{4}$/ and iata for /^[A-Z]{3}$/, but overpass isn't helping right now to count how many objects have a wrong icao or iata code (I will update it later)

comment:3 by Klumbumbus, 8 years ago

Cc: Klumbumbus added

comment:4 by naoliv, 8 years ago

Wrong icao count: 501 objects http://overpass-turbo.eu/s/qLP (most in USA)
Wrong iata count: 111 objects¹ (most in USA too)

¹ overpass site isn't creating a short link, but just use:

[out:json][timeout:9000];
(
  node["iata"]["iata"!~"^[A-Z]{3}$"];
  way["iata"]["iata"!~"^[A-Z]{3}$"];
  relation["iata"]["iata"!~"^[A-Z]{3}$"];
);
out count;

Maybe create an external validation rule for deeper aeroway analysis?
For example, we could validate if icao starts with a proper character https://upload.wikimedia.org/wikipedia/commons/3/3b/ICAO-countries.png

We could see if icao/iata are being used only with aeroway=aerodrome (and not together with the runway), etc

comment:5 by Klumbumbus, 8 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.