CBS neighbourhood statistics: is it worth wiring in? #194

Merged
viberfox-agent merged 1 commit from docs/192-cbs-statistics-not-taken into main 2026-08-29 20:58:21 +00:00
Collaborator

Closes #192

Merged by the autopilot (docs/direction.md) after every Actions job passed on the branch head.

Closes #192 Merged by the autopilot (docs/direction.md) after every Actions job passed on the branch head.
The frontier row asked "how many people are actually there". The service was
checked read-only against the live PDOK WFS on 2026-08-29 and the answer is no,
on the same grounds Kadaster parcels and NWB lost: the interface is fine, the
licence is CC0, and there is no picture in it.

The measurement is the argument. Over the same Groningen box the other two
checks used, `buurten` is 257,021 bytes of which 27,582 is geometry — 696
coordinate pairs across 22 heavily generalised administrative outlines. The
other 89% is a table: 244 attributes per feature, 30% of the values suppressed
as `-99997`.

**Value 6, ship the smallest thing a machine can judge**, decides it. A
statistics table moves no count, no placement, no settle time, no draw call and
no byte the shot harness can gate on. There is nothing here for `--expect` to
assert, which by that value means it is the wrong ticket rather than a small one.

**Value 1, measured beats plausible**, decides the strongest counter-case — that
a measured density could ground an invented one. Each of the three candidate
consumers already reads something finer or something else entirely. Window
occupancy is per building from the BAG's use bits, against a buurt average.
The car and walker pools are fixed and sized for "is this street alive", and at
~850 cars/km² are already denser than the 1,971 registered cars/km² CBS measures
in Binnenstad-Noord, so a measured figure could only place fewer. And CBS counts
where people live and which vehicles are registered, not who is on the pavement
or what is moving — reading a street-presence number out of a residence count is
an inference wearing a measurement's clothes, which is what value 1 exists to
stop.

Rebased onto the NDW result, which landed the same day: real vehicle flow was
checked and rejected too, so the ambient traffic pool stays generated. That does
not promote this source. The two fail differently — NDW has no city-street
coverage, CBS has no flow at all — and neither failure makes the other's number
usable, which the note now says instead of deferring to an open row.

Recorded per value 7: the note carries the licence evidence read off
GetCapabilities, the volume table, the paging duplicate, and a pointers section
separating what was verified from what was not — including the counter-argument
that CBS is still the only source for residents in a specific block, and the
unmeasured number that would reopen it. It also points at the `place_labels`
population figure already in every vector tile and read by nothing, which is the
cheaper answer to the same question and belongs to its own ticket.

Refs #192
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jeroen/cartopolis!194
No description provided.