BDOT10k mislabels 5 845 km² of the Baltic as a lake (source bug, not ours) #43
Labels
No labels
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#43
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?
Noticed while measuring #36. The mislabelling is in BDOT10k, not in our import — worth
saying up front, because the shape of it looks exactly like a botched union on our side.
What
map_water_bodies_<z>carries a 5 845 km² polygon named Morze Bałtyckie, classedlake. It is the largest "lake" in the database by a factor of 29 and it is a chunk of theBaltic.
conf/plmap.yaml'swater_bodiesquery isWHERE rodzaj <> 'woda morska'and mapseverything surviving to
river(woda płynąca) orlake. That is correct, and the sourceis what is wrong. In the
pl_ptwpstaging table, loaded natively from the countyGeoPackages with nothing of ours applied:
Sixteen rows say marine, one says standing water. The odd one out is teryt 3209
(powiat koszaliński), centroid 54.56 N 15.79 E, and it lies 426 m from Jezioro Jamno —
which is the lagoon just north of Koszalin that is very nearly touching the sea. So the
guess that the lake infected the sea with its lakeness is probably right, and it happened
upstream of us: one county's delivery has a slab of the Baltic attributed as woda
stojąca.
Why it matters a little
data-quality and attribute-correctness problem, not a rendering one.
km² of polygon in every
water_bodiestile along that coast.water_class— a label, amarine/inlandsplit, anarea statistic — gets it wrong. #40's bridging work reads this layer.
Options, in increasing order of dishonesty
reproduction.
water_bodiespolygons that touchthe country mask's seaward edge. Principled, and would catch the next one.
Morze Bałtyckie. One line, effective, and the kind of hard-coded patchthat
conf/semap.yaml's objekttypnr 2648 comment warns about: theINlist that drivesthe
WHEREis the same list theCASEbranches on precisely so an unmapped case dropsout visibly instead of being painted the wrong colour. A name check would be the
opposite of that.
Worth checking whether the same row also reaches
cover(which reads the samepl_ptwpstaging table, unioned per class per county) before picking one —
covermaps PTWP to itsown water classes by a different route and may or may not inherit the same error.