diff --git a/settings/import-address.style b/settings/import-address.style index 16f2e929..a2708086 100644 --- a/settings/import-address.style +++ b/settings/import-address.style @@ -5,7 +5,7 @@ "no" : "skip" } }, -{ "keys" : ["wikipedia", "wikipedia:*", "wikidata"], +{ "keys" : ["wikipedia", "wikipedia:*", "wikidata", "area"], "values" : { "" : "extra" } diff --git a/settings/import-full.style b/settings/import-full.style index c57c2c3a..86600901 100644 --- a/settings/import-full.style +++ b/settings/import-full.style @@ -237,7 +237,8 @@ "population", "description", "image", "attribution", "fax", "email", "url", "website", "phone", "real_ale", "smoking", "food", "camera", "brewery", "locality", "wikipedia", - "wikipedia:*", "access:*", "contact:*", "drink:*", "toll:*"], + "wikipedia:*", "access:*", "contact:*", "drink:*", "toll:*", + "area"], "values" : { "" : "extra" } diff --git a/settings/import-street.style b/settings/import-street.style index d2f0ae65..7f0c03b9 100644 --- a/settings/import-street.style +++ b/settings/import-street.style @@ -1,5 +1,5 @@ [ -{ "keys" : ["wikipedia", "wikipedia:*", "wikidata"], +{ "keys" : ["wikipedia", "wikipedia:*", "wikidata", "area"], "values" : { "" : "extra" } diff --git a/sql/functions/placex_triggers.sql b/sql/functions/placex_triggers.sql index 0bfefbb0..fa1a1f40 100644 --- a/sql/functions/placex_triggers.sql +++ b/sql/functions/placex_triggers.sql @@ -417,7 +417,12 @@ BEGIN NEW.name := hstore('ref', NEW.address->'postcode'); - ELSEIF NEW.class = 'boundary' AND NOT is_area THEN + ELSEIF NEW.class = 'highway' AND is_area AND NEW.name is null + AND NEW.extratags ? 'area' AND NEW.extratags->'area' = 'yes' + THEN + RETURN NULL; + 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'