SPIKE-3: Confirm v3.0 spatial and temporal validation behavior
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 200
- Avg merge
- 4h 56m
- Merged PRs (30d)
- 5
Description
**What:** DCAT-US v3.0 changed the structure of the `spatial` and `temporal` fields:
- `spatial` was a plain string in v1.1. In v3.0 it is a Location object with a `geometry` property containing WKT, GeoJSON, or GML.
- `temporal` was a slash-separated string in v1.1 (e.g., `2019-01/2020-12`). In v3.0 it is a PeriodOfTime object with `startDate` and optionally `endDate`.
If a v3.0 record containing the new structured types is harvested, it is not confirmed whether the current pipeline accepts, rejects, or silently mishandles them.
**Investigate and document:**
- Construct a minimal valid v3.0 record with a Location object `spatial` and a PeriodOfTime `temporal`. Submit it to the harvester in validation mode.
- Does it pass validation? If not, what errors are reported?
- Construct a v1.1 record with a plain string `spatial` and a slash-separated `temporal`. Submit to the same path. Does it still pass?
- Check whether `translate_spatial` and `translate_spatial_to_geojson` handle a Location object as input (dict with type/geometry keys) or only bare strings and GeoJSON
- Check what gets stored in the dataset table's `translated_spatial` column for each case
**Done When:**
- Test results documented for both v3.0 and v1.1 spatial/temporal structures
- Clear answer on whether v3.0 structured types currently pass or fail
- If they fail, follow-up implementation tickets written (see IMPL-2, IMPL-3)
Contributor guide
Assessment
This issue has not been assessed yet.