Rule
An on-demand raster exposes a period control only when its Channel declares a validated period_selection capability. annual-range-v1 defines a bounded consecutive year range, whether the provider can return one cumulative result, and a valid default period.
The current selection is viewer-local and keyed by Layer plus Channel. It does not mutate Layer style, Channel metadata, palettes, or the published map.
Request boundary
The browser sends one semantic period_id: an exact declared year or all. It never sends provider query names or arbitrary start/end values. The tile proxy validates access to the bound Layer, Channel, and period, then translates that identifier into the provider-specific request. Cache identity includes the period automatically through the tile URL. When an encoded provider tile keeps all periods in one immutable image, Channel may additionally declare a validated value_filter; the renderer masks the selected raw pixel channel locally while the proxy still authorizes the semantic period.
all is shown only when the provider itself declares a meaningful cumulative result. GeoLama does not merge or sum raster pixels in the browser. A local exact-period mask is allowed only when its pixel channel and year mapping are provider-declared and validated; arbitrary client expressions are not accepted. A cumulative-only dataset without exact periods does not receive a misleading year selector.
Administration
Channel settings may narrow the published range, enable or disable cumulative all, and choose a valid default only for an adapter that already declares the capability. Provider-specific database validation retains the immutable physical bounds, so administration cannot claim unavailable years or enable the contract for an incompatible proxy.
Checklist
the default period.
document the pixel channel, and test the exact-period mask visually.
- Declare physical provider bounds separately from the editable published range.
- Validate the capability in the client render contract and the database.
- Validate
period_idagain in the authorized tile proxy. - Keep exact periods and cumulative results scientifically distinct in labels.
- Verify local persistence, invalid preference cleanup, cache separation, and
- For encoded time-series tiles, verify exact and cumulative upstream bytes,