MovingPlatformDex framework (6th dex family)
Mike, 2026-06-27. Both the concept and the name are his. While building the IGRA
radiosonde_station Locationdex we found 100 of the 2,921 stations are not fixed: they are
weather balloons launched from moving platforms (77 Volunteer Observing Ships + 23 Soviet
"Severnyy Polyus" drifting ice stations), each launch from a different position as the platform
travels. A moving platform is not a place (its location is a path, not a point), so it does not
belong in the Locationdex. Mike's call: give it its own family. He validated "platform" as the
right word, on the meteorology/oceanography sense of an observing platform (any vehicle or
structure that carries instruments: a ship, buoy, aircraft, glider, drifting station), and named
the family MovingPlatformDex.
The sixth dex family, after Eventdex (slot = event), Yeardex (slot = year), Locationdex (slot = fixed place), CelestialObjectDex (slot = celestial object), and YearLocationdex (slot = place × period cell).
The one idea
A MovingPlatformDex slot is one moving measurement platform, and the slot carries the platform's track: the time-ordered sequence of positions where it took (or deployed) its measurements. Where a Locationdex slot pins to a single point, a MovingPlatform slot holds a path.
This is the terrestrial-mobile sibling of the CelestialObjectDex: both are "a persistent entity that accretes a series." A celestial object accretes a series of observations along its orbit; a moving platform accretes a series of measurements along its voyage. The difference from Locationdex is the location axis: fixed point (Locationdex) vs moving track (MovingPlatformDex).
What qualifies for MovingPlatformDex (vs Location / Event)
Ask: is this one persistent platform that carries instruments as it moves, with many measurements spread along a path?
- A research ship launching radiosondes as it sails → one platform, a voyage of launches. ✅
- A drifting ice station radiosonde program → one platform, a drift track of launches. ✅
- A fixed land radiosonde station → same spot every launch = a place → Locationdex, not here.
- A single one-off launch with no persistent platform identity → an Eventdex event, not here.
- Dense continuous roving sampling with no discrete platform identity (a car-mounted Geiger logger blanketing streets) → a later binned-geographic-cell treatment, not a platform slot.
The test is a named, persistent platform with a track of discrete measurement points. If the platform identity is real and the measurements are sparse points along its path, it is a MovingPlatform slot.
What a platform slot holds
- Platform identity (id, name, type: ship / drifting_ice_station / other_mobile) and provenance.
- The track: the ordered launch/measurement points (time + lat/lon), embedded in the slot the
same way the CelestialObjectDex
neokind embeds its array of close approaches. - A voyage summary: number of points, first/last time, geographic bounding box, start and end position, and total great-circle track length.
- The measured-record summary the source already provides (e.g. the roster's sounding count).
- Cross-references to any live feed that ingests the platform's measurements, never a duplicate.
The full vertical profiles / payloads themselves stay at the source (the platform slot catalogs the platform and its track, the same organize-not-process discipline as every dex family).
Multi-source cited slots (universal rule applies)
A platform slot may carry data from several sources, each datum cited, exactly as every other
family (feedback_organize_not_process). Same platform across sources = one slot.
Storage
A sixth sibling storehouse, data/platform_storehouse/<kind>/<slot_id>.json, beside
event_storehouse/, year_storehouse/, location_storehouse/, celestial_storehouse/, and
yearlocation_storehouse/. It reuses the shared event_storehouse write + disk-rebuilt-index
machinery via the base_dir argument, exactly as the other late families did. File-per-slot is
fine while a kind has few platforms (radiosonde = 100); a kind with very many platforms would move
to a spine-parquet like the big Eventdex/YearLocationdex kinds.
Measured-reality bright line
Binding, unchanged: a slot accretes measurements of what physically happened on the platform's
track, never a model's estimate (feedback_measured_reality_only). The recorded launch positions
and the soundings are measured; a modeled drift forecast or interpolated track would be out.
Frozen vs open
Frozen (2026-06-27, Mike):
- MovingPlatformDex exists as a first-class sixth family: the slot is one moving measurement platform, and the slot carries its track.
- A fixed platform is a Locationdex place, not a MovingPlatform. The split is point-vs-track.
- The measured-reality bright line and the multi-source cited-slot rule both bind.
Open (decided per kind, in each docs/scope-*.md freeze):
- Which platform network; the track source and slot-JSON shape; whether the full payload is referenced or partially carried; when (if ever) a kind turns on a spatial/track sweep.
Kinds
Shipped MovingPlatformDex kinds (1): mobile_radiosonde (100 platforms: 77 ships + 23 drifting
ice stations, NOAA IGRA — docs/scope-mobile-radiosonde-movingplatformdex.md). The mobile twin of
the fixed radiosonde_station Locationdex: same IGRA source, but these platforms move, so each slot
holds the voyage track of launch positions instead of one fixed point.
Future candidates the family anticipates: research aircraft, drifting ocean buoys, Argo floats, ocean gliders, and any other instrument-carrying platform whose location is a path.