|
56 | 56 | DEPLOY_GROUP_UID = "urn:os4csapi:deployment:awx-stations:v1" |
57 | 57 |
|
58 | 58 | DS_OUTPUT_NAME = "metarObs" |
| 59 | +PUBLISH_INTERVAL_SECONDS = 300 |
59 | 60 |
|
60 | 61 | # ── AviationWeather.gov Official URLs ──────────────────────────────────── |
61 | 62 | AWX_HOME = "https://aviationweather.gov/" |
@@ -319,13 +320,29 @@ def _system_sml(station: dict) -> dict: |
319 | 320 | }, |
320 | 321 | ], |
321 | 322 | "documents": docs, |
322 | | - # NOTE: characteristics/capabilities are part of OGC SensorML JSON encoding |
323 | | - # but the strict csapi-go-v2 server does not accept them on the |
324 | | - # SystemSensorMLFeature struct (see empirical probe 2026-05-09). |
325 | | - # Field-elevation, station_type, operator, and update_interval information |
326 | | - # is preserved in identifiers/classifiers/position above. char_items |
327 | | - # (operator, station_type, faa_id, field_elevation) are intentionally not |
328 | | - # serialised here; restore once upstream adds these fields back. |
| 323 | + "capabilities": [ |
| 324 | + { |
| 325 | + "definition": "http://www.w3.org/ns/ssn/systems/SystemCapability", |
| 326 | + "label": "Publisher Capabilities", |
| 327 | + "capabilities": [ |
| 328 | + { |
| 329 | + "type": "Quantity", |
| 330 | + "name": "publish_interval", |
| 331 | + "definition": "http://qudt.org/vocab/quantitykind/Period", |
| 332 | + "label": "Publish Interval", |
| 333 | + "uom": {"code": "s"}, |
| 334 | + "value": PUBLISH_INTERVAL_SECONDS, |
| 335 | + }, |
| 336 | + { |
| 337 | + "type": "Text", |
| 338 | + "name": "source_query_mode", |
| 339 | + "definition": "http://sensorml.com/ont/swe/property/ReportingFrequency", |
| 340 | + "label": "Source Query Mode", |
| 341 | + "value": "Latest AviationWeather.gov METAR observations polled in a multi-station API request", |
| 342 | + }, |
| 343 | + ], |
| 344 | + }, |
| 345 | + ], |
329 | 346 | "position": { |
330 | 347 | "type": "Point", |
331 | 348 | "coordinates": [station["lon"], station["lat"]], |
|
0 commit comments