$oCmd->addParams('--output', 'gazetteer');
$oCmd->addParams('--hstore');
$oCmd->addParams('--number-processes', 1);
+ $oCmd->addParams('--with-forward-dependencies', 'false');
+ $oCmd->addParams('--log-progress', 'true');
$oCmd->addParams('--cache', $this->iCacheMemory);
$oCmd->addParams('--port', $this->aDSNInfo['port']);
-- Instead simply use the containing area with the largest rank.
FOR location IN
SELECT place_id FROM placex
- WHERE bbox @ geometry AND _ST_Covers(geometry, ST_Centroid(bbox))
+ WHERE bbox && geometry AND _ST_Covers(geometry, ST_Centroid(bbox))
AND rank_address between 5 and 25
ORDER BY rank_address desc
LOOP
-- contains the bbox, only use addressable features
FOR location IN
SELECT place_id FROM placex
- WHERE bbox @ geometry AND _ST_Covers(geometry, ST_Centroid(bbox))
+ WHERE bbox && geometry AND _ST_Covers(geometry, ST_Centroid(bbox))
AND rank_address between 5 and 25
ORDER BY rank_address desc
LOOP
WHERE make_standard_name(name->'name') = bnd_name
AND placex.class = 'place' AND placex.type = bnd.extratags->'place'
AND placex.osm_type = 'N'
+ AND placex.linked_place_id is null
AND placex.rank_search < 26 -- needed to select the right index
AND _st_covers(bnd.geometry, placex.geometry)
LOOP
WHERE placex.class = 'place' AND placex.osm_type = 'N'
AND placex.extratags ? 'wikidata' -- needed to select right index
AND placex.extratags->'wikidata' = bnd.extratags->'wikidata'
+ AND placex.linked_place_id is null
AND placex.rank_search < 26
AND _st_covers(bnd.geometry, placex.geometry)
ORDER BY make_standard_name(name->'name') = bnd_name desc
false, placex.postcode)).address_rank)
OR (bnd.rank_address = 0 and placex.rank_search = bnd.rank_search))
AND placex.osm_type = 'N'
+ AND placex.linked_place_id is null
AND placex.rank_search < 26 -- needed to select the right index
AND _st_covers(bnd.geometry, placex.geometry)
LOOP
And placex contains
| object | centroid |
| R13 | in geometry |
+
+ Scenario: Place nodes can only be linked once
+ Given the named places
+ | osm | class | type | extra+wikidata | geometry |
+ | N2 | place | city | Q1234 | 0 0 |
+ And the named places
+ | osm | class | type | extra+wikidata | admin | geometry |
+ | R1 | boundary | administrative | Q1234 | 8 | poly-area:0.1 |
+ | R2 | boundary | administrative | Q1234 | 9 | poly-area:0.01 |
+ When importing
+ Then placex contains
+ | object | linked_place_id |
+ | N2 | R1 |
+ And placex contains
+ | object | extratags |
+ | R1 | 'linked_place' : 'city', 'wikidata': 'Q1234' |
+ | R2 | 'wikidata': 'Q1234' |
+
->addParams('--latlong')
->addParams('--append')
->addParams('--slim')
+ ->addParams('--with-forward-dependencies', 'false')
+ ->addParams('--log-progress', 'true')
->addParams('--number-processes', 1)
->addParams('--cache', $iCacheMemory)
->addParams('--output', 'gazetteer')