From c822012aad75b975b89986077757853f9538e250 Mon Sep 17 00:00:00 2001 From: Sarah Hoffmann Date: Sat, 26 Jan 2019 13:34:28 +0100 Subject: [PATCH] ignore admin boundary ways for countries and states Countries and states are mapped world-wide as relations by now. Fixes #543 and #1291. --- sql/functions.sql | 3 +++ test/bdd/db/import/placex.feature | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/sql/functions.sql b/sql/functions.sql index e45062a8..89c1f936 100644 --- a/sql/functions.sql +++ b/sql/functions.sql @@ -853,6 +853,9 @@ BEGIN END IF; ELSEIF NEW.class = 'boundary' AND NOT is_area THEN return NULL; + ELSEIF NEW.class = 'boundary' AND NEW.type = 'administrative' + AND NEW.admin_level <= 4 AND NEW.osm_type = 'W' THEN + return NULL; ELSEIF NEW.class = 'railway' AND NEW.type in ('rail') THEN return NULL; ELSEIF NEW.osm_type = 'N' AND NEW.class = 'highway' THEN diff --git a/test/bdd/db/import/placex.feature b/test/bdd/db/import/placex.feature index cc3569b0..0284736b 100644 --- a/test/bdd/db/import/placex.feature +++ b/test/bdd/db/import/placex.feature @@ -293,3 +293,22 @@ Feature: Import into placex | R6 | 4 | 0 | | W3 | 30 | 30 | + Scenario: boundary ways for countries and states are ignored + Given the named places + | osm | class | type | admin | geometry | + | W4 | boundary | administrative | 2 | poly-area:0.1 | + | R4 | boundary | administrative | 2 | poly-area:0.1 | + | W5 | boundary | administrative | 3 | poly-area:0.1 | + | R5 | boundary | administrative | 3 | poly-area:0.1 | + | W6 | boundary | administrative | 4 | poly-area:0.1 | + | R6 | boundary | administrative | 4 | poly-area:0.1 | + | W7 | boundary | administrative | 5 | poly-area:0.1 | + | R7 | boundary | administrative | 5 | poly-area:0.1 | + When importing + Then placex contains exactly + | object | + | R4 | + | R5 | + | R6 | + | W7 | + | R7 | -- 2.45.1