This tier implements the Continuous Query requirements class of OGC API –
Moving Features – Part 4. The class is declared at GET /conformance:
http://www.opengis.net/spec/ogcapi-movingfeatures-4/1.0/conf/cquery
| Requirement | Status | Where |
|---|---|---|
Req 1 cquery_link — the cquery link object carries rel, queryId, href, channel, status, type |
met | cqueryLink (stream.go); asserted by TestCqueryLinkShape |
Req 2 window — a query carries a window; the result carries [windowStart, windowEnd] |
met | postQuery window parsing; the meos engine emits the bounds; TestWindowResultShape |
Req 3 window_tumbling — fixed-duration, non-overlapping windows |
met | runAggregate TUMBLING (stream_engine_meos.go) |
Req 4 window_hopping — fixed-duration, overlapping windows |
met | runHopping (stream_engine_meos.go); TestMeosHoppingWindow |
Req 5 window_count — windows over a record count |
met | runAggregate COUNT; TestMeosWindowAggregate |
TemporalProperty — met for all scalar types, computed through MEOS:
TReal/TInt:COUNT, SUM, AVG, MIN, MAX(temporal_num_instants,tfloat_min_value/tfloat_max_value,tnumber_avg_value, value sum).TText:COUNT, COUNT_DISTINCT(ttext_values).TBoolean:COUNT, ANY, ALL, COUNT_TRUE, COUNT_FALSE(tbool_values).
The TemporalPrimitiveGeometry operations of Table 7 (LENGTH, AREA, TO_TRAJ, …)
are not yet exposed.
- Lifecycle states
running,stopped,failedare reported by thecquerystatus(registeredis transient — a query entersrunningon submission). - Results are delivered over Server-Sent Events, one of the channel bindings Part 4 allows; the Kafka and WebSocket result bindings are not yet exposed.
- Live ingestion: a query with
"live": truesources pushed records. Producers push over HTTP (…/ingest) or MQTT (MFAPI_MQTT_BROKER, topicmfapi/<cid>/<fid>/<pname>) — the EDR Pub/Sub source over a real broker. A Kafka source feeds the same hub the same way.
Lifted scalar transforms over a streaming tfloat (ln, exp, ×, +, …), a
geometry position stream (…/tgsequence/queries) for an animated map, and the
Flink streaming engine behind the same StreamEngine seam are additions, not
Part 4 requirements.