]> git.openstreetmap.org Git - nominatim.git/commitdiff
disallow linking for postcode areas
authorSarah Hoffmann <lonvia@denofr.de>
Tue, 17 Nov 2020 09:53:26 +0000 (10:53 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Tue, 17 Nov 2020 09:53:26 +0000 (10:53 +0100)
sql/functions/placex_triggers.sql
test/bdd/db/import/linking.feature

index c9095fbea94c3157932ff589642cdac7e0ecc2dc..7d6352b4eda6ea2bdd7fe0dfc6475ba710065f42 100644 (file)
@@ -138,6 +138,7 @@ DECLARE
 BEGIN
   IF bnd.rank_search >= 26 or bnd.rank_address = 0
      or ST_GeometryType(bnd.geometry) NOT IN ('ST_Polygon','ST_MultiPolygon')
 BEGIN
   IF bnd.rank_search >= 26 or bnd.rank_address = 0
      or ST_GeometryType(bnd.geometry) NOT IN ('ST_Polygon','ST_MultiPolygon')
+     or bnd.type IN ('postcode', 'postal_code')
   THEN
     RETURN NULL;
   END IF;
   THEN
     RETURN NULL;
   END IF;
index fa96e5b31e94b12ba1b0399e05b8d4d4e864b756..1e0d131a385abf896ca098ab429e0af5ea44b5d3 100644 (file)
@@ -14,7 +14,22 @@ Feature: Linking of places
          | R13     | - |
          | N256    | - |
 
          | R13     | - |
          | N256    | - |
 
-    Scenario: Waterways are linked when in waterway relations
+    Scenario: Postcode areas cannot be linked
+        Given the grid
+         | 1 |   | 2 |
+         |   | 9 |   |
+         | 4 |   | 3 |
+        And the named places
+         | osm | class    | type        | addr+postcode  | extra+wikidata | geometry    |
+         | R13 | boundary | postal_code | 123            | Q87493         | (1,2,3,4,1) |
+         | N25 | place    | suburb      | 123            | Q87493         | 9 |
+        When importing
+        Then placex contains
+         | object | linked_place_id |
+         | R13    | - |
+         | N25    | - |
+
+     Scenario: Waterways are linked when in waterway relations
         Given the scene split-road
         And the places
          | osm | class    | type  | name  | geometry |
         Given the scene split-road
         And the places
          | osm | class    | type  | name  | geometry |