Norway pilot: Kartverket mask + CORINE cover (needs the geonorge: provider) #217
Labels
No labels
blocked
claude-wip
map-report
map:is
map:se
needs-review
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
art/ismap#217
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Gated on #210 (the catalogue). Mask plus cover for Norway.
What is different about Norway's pilot
(
041f1e6e-bdbc-4091-b48f-8a5990f3cc5b, CC BY 4.0) dissolved, or N50'sKommune.N50 also carries
TerritorialgrenseandGrunnlinje— offshore limits, which mustbe excluded (R14).
clms:provider, identity mapping (R116).NUTS0 is
NO. N50Arealdekkeis the finer national alternative and the laterupgrade — not the pilot.
geonorge:provider is the one piece of new importer code Norway needs, and it isa prerequisite for this pilot if the mask comes from Geonorge. See the separate provider
issue; if it is not ready, the pilot can be built on CORINE plus an interim mask, but say
so explicitly rather than quietly.
The scope decision this pilot must make explicitly
Svalbard and Jan Mayen. The Geonorge area codelist is mainland (15 fylke, 357 kommune,
plus
landsdekkende0000"Hele landet"), and Svalbard place names are a separateNorsk Polarinstitutt dataset — which argues for mainland-only. Iceland already set the
island-territory precedent. Whichever way it goes, write it into
docs/country-no.mdandinto the config comment, because a later reader will otherwise read the absence as a bug.
The three things the Greece pilot got wrong — do not repeat them
from the national boundary source and stop.
conf/world.yamlcarves Natural Earth withNatural Earth's own admin-0 polygons and reads only the
countrycode frommap_country_mask_0, never its geometry (R144). Do not extend the mask over water to"fix" grey background land at a coast — Greece burned two rounds on exactly that, and the
cause was in
conf/world.yamland applied to every country (#184, #186).tautologically true —
background_landis Natural Earth minus the carve — so it passesfor any mask at all, including an empty one. The carve's real checks are R144/R145/R146 on
conf/world.yaml; a country config does not need its own.table explicitly, even when the mask happens to be the same geometry, or the check
silently stops meaning anything the day that changes.
Deliverables
conf/<cc>/per R17:base.yaml,downloads.yaml,staging.yaml,acceptance.yaml,01-country_mask.yaml,02-cover.yaml(build order is lexical),country: <cc>(R16).import-<cc>target chainingimport-world(R107) and afetch-<cc>paththrough the importer's declared-downloads route (R10).
conf/fi/01-country_mask.yamlpattern), R34 (cover gapless against the land table,1% budget), R22 (coarse-tier vocabulary equals the level-1 rollup tier), R120 (no NULL
cover_class), and a decoded tile (importer tiles --check).make acceptancetally in the PR — not ad-hoc SQL (AGENTS.md).Verify against the live database before committing: partitions at every zoom, row counts,
NULLs in the columns that matter, a decoded tile.