Phase 3.1: GeoJSON Handler Extensions\n\nStatus: COMPLETED — Commit a30f5bf\n\n### Delivered\n\n- src/ogc-api/csapi/formats/geojson.ts (~310 lines) with 6 public exports:\n - isCSAPIFeature(feature) — SOSA vocabulary recognition\n - getCSAPIResourceType(feature) — classifies into System / Deployment / Procedure / SamplingFeature\n - parseValidTime(value) — converts OGC timePeriod array [\"ISO\", \"now\"] and object formats to TimeInterval\n - isValidUri(value) — RFC 3986 scheme validation\n - validateCSAPIFeature(feature) — inline validation (required props, URI validity, type-specific constraints)\n - extractCSAPIFeature(feature) — validates + converts raw JSON to typed CSAPI resource\n\n- src/ogc-api/csapi/formats/geojson.spec.ts — 65 tests, all passing\n\n### Coverage\n- All 4 Part 1 GeoJSON resource types: System (5 subtypes), Deployment, Procedure (4 subtypes), SamplingFeature\n- Both SOSA compact CURIE (sosa:Sensor) and full URI (http://www.w3.org/ns/sosa/Sensor) forms\n- System > Deployment > Procedure > SamplingFeature classification priority\n- Deployment validTime requirement, Procedure geometry: null constraint\n\n### Note\nSamplingFeature recognition covers SOSA vocabulary (sosa:SamplingFeature, sosa:Sample). The OGC spec examples use OGC-OM vocabulary URIs for sampling feature featureType values — extending recognition to those vocabularies can be addressed in a future enhancement." Reactions are currently unavailable
Phase 3.1: GeoJSON Handler Extensions\n\nStatus: COMPLETED — Commit
a30f5bf\n\n### Delivered\n\n-src/ogc-api/csapi/formats/geojson.ts(~310 lines) with 6 public exports:\n -isCSAPIFeature(feature)— SOSA vocabulary recognition\n -getCSAPIResourceType(feature)— classifies into System / Deployment / Procedure / SamplingFeature\n -parseValidTime(value)— converts OGC timePeriod array[\"ISO\", \"now\"]and object formats toTimeInterval\n -isValidUri(value)— RFC 3986 scheme validation\n -validateCSAPIFeature(feature)— inline validation (required props, URI validity, type-specific constraints)\n -extractCSAPIFeature(feature)— validates + converts raw JSON to typed CSAPI resource\n\n-src/ogc-api/csapi/formats/geojson.spec.ts— 65 tests, all passing\n\n### Coverage\n- All 4 Part 1 GeoJSON resource types: System (5 subtypes), Deployment, Procedure (4 subtypes), SamplingFeature\n- Both SOSA compact CURIE (sosa:Sensor) and full URI (http://www.w3.org/ns/sosa/Sensor) forms\n- System > Deployment > Procedure > SamplingFeature classification priority\n- DeploymentvalidTimerequirement, Proceduregeometry: nullconstraint\n\n### Note\nSamplingFeature recognition covers SOSA vocabulary (sosa:SamplingFeature,sosa:Sample). The OGC spec examples use OGC-OM vocabulary URIs for sampling feature featureType values — extending recognition to those vocabularies can be addressed in a future enhancement."