feat: add temporal Mol explorer
This commit is contained in:
@@ -1393,3 +1393,53 @@ GET /api/v1/exports/{export_id}/download
|
||||
```
|
||||
|
||||
PDF/report-designer functionality can be added after core GeoAI workflows work.
|
||||
|
||||
## Temporal datasets and area evolution
|
||||
|
||||
Temporal metadata describes the source observation, not API run history. A
|
||||
snapshot is a normal persisted dataset grouped by `temporal_series_key` and
|
||||
ordered by `observed_at`. Optional validity uses `valid_from` and `valid_to`;
|
||||
`temporal_granularity` is `snapshot`, `day`, `month`, `year` or `period`.
|
||||
|
||||
Dataset upload accepts those temporal fields plus `source_version`. When a
|
||||
dataset declares `source_metadata.selection_aggregation`, the vector bbox
|
||||
selection response also contains a `summary` with metric label/value/unit,
|
||||
aggregation method, feature count, estimate status and an optional warning.
|
||||
Supported PostGIS aggregations are feature count, intersection area,
|
||||
intersection length, numeric sum and area-weighted numeric sum. Area and length
|
||||
are measured after transformation to EPSG:31370.
|
||||
|
||||
### PATCH `/api/v1/projects/{project_id}/datasets/{dataset_id}/temporal`
|
||||
|
||||
Updates the temporal provenance of an existing dataset. Series key and
|
||||
observation date are required together. It does not alter features or
|
||||
manufacture a historical observation.
|
||||
|
||||
### GET `/api/v1/projects/{project_id}/datasets/{dataset_id}/versions`
|
||||
|
||||
Lists immutable storage/provenance versions. Uploads and derived datasets
|
||||
create version 1 in the same persistence transaction.
|
||||
|
||||
### GET `/api/v1/projects/{project_id}/temporal/series`
|
||||
|
||||
Returns dated project series in the canonical envelope. Each item contains its
|
||||
source/layer identity, first and last observations and ordered datasets.
|
||||
|
||||
### POST `/api/v1/projects/{project_id}/temporal/compare`
|
||||
|
||||
```json
|
||||
{
|
||||
"earlier_dataset_id": "uuid",
|
||||
"later_dataset_id": "uuid",
|
||||
"bbox": {"west": 5.0, "south": 51.0, "east": 5.2, "north": 51.2},
|
||||
"preview_limit": 500
|
||||
}
|
||||
```
|
||||
|
||||
Both datasets must belong to the project and the same temporal series, with
|
||||
the earlier observation preceding the later one. The response contains source
|
||||
snapshot references, selection bbox, earlier/later metric values,
|
||||
absolute/percentage change, estimate status, warnings and GeoJSON evidence.
|
||||
Added/removed/modified object changes are calculated only when source
|
||||
provenance declares stable feature identities; otherwise
|
||||
`object_changes.available=false` and no object history is inferred.
|
||||
|
||||
Reference in New Issue
Block a user