From 05f1c1db8ea6545ed7b35b81d15437e1cdbbc91d Mon Sep 17 00:00:00 2001 From: amilan17 Date: Wed, 4 Mar 2026 14:42:14 +0100 Subject: [PATCH 01/10] add FT2026-1 amendments to standard section, includes PRs https://github.com/wmo-im/wcmp2/pull/291, https://github.com/wmo-im/wcmp2/pull/290, https://github.com/wmo-im/wcmp2/pull/286, https://github.com/wmo-im/wcmp2/pull/272, https://github.com/wmo-im/wcmp2/pull/270, --- standard/abstract_tests/core/ATS_test_links.adoc | 5 +++++ standard/recommendations/core/REC_contacts.adoc | 4 ++-- standard/recommendations/core/REC_pids.adoc | 2 +- standard/recommendations/core/REC_title.adoc | 6 ++++++ standard/sections/clause_3_references.adoc | 6 +++--- standard/sections/clause_7_normative_text.adoc | 7 ++++--- 6 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 standard/recommendations/core/REC_title.adoc diff --git a/standard/abstract_tests/core/ATS_test_links.adoc b/standard/abstract_tests/core/ATS_test_links.adoc index 73320a4d..21c1599c 100644 --- a/standard/abstract_tests/core/ATS_test_links.adoc +++ b/standard/abstract_tests/core/ATS_test_links.adoc @@ -42,5 +42,10 @@ For a link object describing archived (NOT real-time) data made available via We For a link object with access control (defined by the `+security+` object), check that the `+security+` property contains a `+description+` property with instructions on how to obtain access. -- +[.component,class=step] +-- +For a link object with a `+channel+` property defined starting with `+origin/a/wis2+` or `+cache/a/wis2+`, check that the fourth token of the `+channel+` property (split by `+/+`) is equal to the fourth token of the WCMP2 identfier (`id`) property (split by `+:+`). +-- + ===== ==== diff --git a/standard/recommendations/core/REC_contacts.adoc b/standard/recommendations/core/REC_contacts.adoc index 2a112cb2..318fcf21 100644 --- a/standard/recommendations/core/REC_contacts.adoc +++ b/standard/recommendations/core/REC_contacts.adoc @@ -3,6 +3,6 @@ |=== ^|*Recommendation {counter:rec-id}* |*/rec/core/contacts* ^|A|The contact role `+publisher+` SHOULD be used when specifying a dataset contact for citation or attribution. - +^|B |For addresses defined in the `+addresses+` array property, the `+country+` property SHOULD be included using a value from the ISO 3166-1 alpha-3 controlled vocabulary. |=== -//rec 8 +//rectbd diff --git a/standard/recommendations/core/REC_pids.adoc b/standard/recommendations/core/REC_pids.adoc index 82299519..1f3b3ee6 100644 --- a/standard/recommendations/core/REC_pids.adoc +++ b/standard/recommendations/core/REC_pids.adoc @@ -2,6 +2,6 @@ [width="90%",cols="2,6a"] |=== ^|*Recommendation {counter:rec-id}* |*/rec/core/pids* -^|A |A WCMP record SHOULD provide persistent identifier references via items in the `+properties.externalIds+` array property, where the value of `+scheme+` is based on an established persistent identifier scheme (such as `+https://doi.org+`, `+https://arks.org+` or `+https://handle.net+`), and the `+value+` property is the persistent identifier (for example, `https://dx.doi.org/10.14287/10000001`). +^|A |A WCMP record SHOULD provide persistent identifier references via items in the `+properties.externalIds+` array property, where the value of `+scheme+` is based on an established persistent identifier scheme (such as `+https://doi.org+`, `+https://arks.org+` or `+https://handle.net+`), and the `+value+` property is the persistent identifier (for example, `10.14287/10000001`). |=== //rec9 diff --git a/standard/recommendations/core/REC_title.adoc b/standard/recommendations/core/REC_title.adoc new file mode 100644 index 00000000..e69518ac --- /dev/null +++ b/standard/recommendations/core/REC_title.adoc @@ -0,0 +1,6 @@ +[[rec_core_title]] +[width="90%",cols="2,6a"] +|=== +^|*Recommendation {counter:rec-id}* |*/rec/core/title* +^|A |A WCMP record title SHOULD be provided in sentence case. +|=== diff --git a/standard/sections/clause_3_references.adoc b/standard/sections/clause_3_references.adoc index dbdfe7bf..07b11a4f 100644 --- a/standard/sections/clause_3_references.adoc +++ b/standard/sections/clause_3_references.adoc @@ -1,7 +1,7 @@ == References -* [[ogcapi-records]] OGC: OGC 20-004, OGC API - Records - Part 1: Core 1.0 (2025) footnote:[https://docs.ogc.org/is/20-004r1/20-004r1.html] -* [[ogcapi-features]] OGC: OGC 17-069r4, OGC API - Features - Part 1: Core 1.0 (2022) footnote:[https://docs.opengeospatial.org/is/17-069r4/17-069r4.html] +* [[ogcapi-records]] OGC: OGC 20-004, OGC API - Records - Part 1: Core 1.0 (2023) footnote:[https://docs.ogc.org/DRAFTS/20-004.html] +* [[ogcapi-features]] OGC: OGC 17-069r, OGC API - Features - Part 1: Core 1.0 (2022) footnote:[https://docs.opengeospatial.org/is/17-069r4/17-069r4.html] * [[rfc7946]] IETF: RFC-7946 The GeoJSON Format (2016) footnote:[https://datatracker.ietf.org/doc/html/rfc7946] * [[rfc8259]] IETF: RFC-8259 The JavaScript Object Notation (JSON) Data Interchange Format (2017) footnote:[https://datatracker.ietf.org/doc/html/rfc8259] * W3C/OGC: Spatial Data on the Web Best Practices, W3C Working Group Note (2017) footnote:[https://www.w3.org/TR/sdw-bp] @@ -13,4 +13,4 @@ * [[json-schema]] IETF: JSON Schema (2022) footnote:[https://json-schema.org] * [[wis2-topic-hierarchy]] WMO: WIS2 Topic Hierarchy (2022) footnote:[https://github.com/wmo-im/wis2-topic-hierarchy] * [[openapi]] OpenAPI Specification 3.1.0 (2022) footnote:[https://github.com/OAI/OpenAPI-Specification/blob/3.1.0/versions/3.1.0.md] -* [[wis2-guide]] Guide to the WMO Information System Volume II (2025) footnote:[https://wmo-im.github.io/wis2-guide/guide/wis2-guide-APPROVED.html] +* [[wis2-guide]] Draft guidance on technical specifications of WIS2 (2023) footnote:[https://wmo-im.github.io/wis2-guide/guide/wis2-guide-DRAFT.html] diff --git a/standard/sections/clause_7_normative_text.adoc b/standard/sections/clause_7_normative_text.adoc index d2f94b94..93312934 100644 --- a/standard/sections/clause_7_normative_text.adoc +++ b/standard/sections/clause_7_normative_text.adoc @@ -196,6 +196,7 @@ The `+title+` property is a human-readable name of the dataset. ---- include::../requirements/core/REQ_title.adoc[] +include::../recommendations/core/REC_title.adoc[] ==== 1.8 Properties / Description @@ -268,12 +269,12 @@ A WCMP metadata record can have one or more themes. }, { "id": "0-2-2", - "title": "u-component of Wind", + "title": "u-component of wind", "url": "http://codes.wmo.int/grib2/codeflag/4.2/0-2-2" }, { "id": "0-2-3", - "title": "v-component of Wind", + "title": "v-component of wind", "url": "http://codes.wmo.int/grib2/codeflag/4.2/0-2-3" } ], @@ -567,7 +568,7 @@ The `+contacts+` property is the information associated with one or more parties "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" }], "links": [{ "href": "https://example.org/about", From ba9fca07d345493125736a32a1c7b0b913734046 Mon Sep 17 00:00:00 2001 From: amilan17 Date: Wed, 4 Mar 2026 14:48:33 +0100 Subject: [PATCH 02/10] add FT2026-1 change for kpi related to issue #262 --- kpi/core/contacts.adoc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kpi/core/contacts.adoc b/kpi/core/contacts.adoc index b2aecd50..535441dd 100644 --- a/kpi/core/contacts.adoc +++ b/kpi/core/contacts.adoc @@ -27,6 +27,7 @@ The presence of a publisher role. * Include an email for the host * Include contact instructions for the host * Specify a contact with a publisher role +* Use ISO https://www.iso.org/iso-3166-country-codes.html[3166-1 alpha-3] codes to specify the `addresses.country` property. ===== Examples @@ -57,7 +58,7 @@ The presence of a publisher role. "deliveryPoint": "61 16-GIL YEOUIDAEBANG-RO DONGJAK-GU SEOUL", "city": "SEOUL", "postalCode": "07062", - "country": "Republic of Korea" + "country": "KOR" } ], "contactInstructions": "email", From 121343caf19df765fb49702bb65cc48f6e5495fe Mon Sep 17 00:00:00 2001 From: amilan17 Date: Wed, 4 Mar 2026 15:37:15 +0100 Subject: [PATCH 03/10] update examples for alignment between FT2026-1 and FT2025-2 --- .../ca-eccc-msc-gdc.global-discovery-catalogue.json | 2 +- examples/ca-eccc-msc.cmip5-tt.json | 8 ++++---- examples/ca-eccc-msc.daily-climate-observations.json | 6 +++--- examples/ca-eccc-msc.hydrometric-archive.json | 6 +++--- examples/ca-eccc-msc.hydrometric-realtime.json | 5 +++-- examples/ca-eccc-msc.nwp-gdps.json | 4 ++-- ...eccc-msc.surface-weather-observations-realtime.json | 10 +++++----- examples/cn-cma.nmic.prediction-forecast.json | 2 +- examples/cn-cma.nmic.surface-based-observations.json | 2 +- examples/de-dwd.global-cache.json | 2 +- examples/de-dwd.icon-eps-all.json | 2 +- .../de-dwd.surface-weather-observations-realtime.json | 4 ++-- examples/fr-meteofrance-global-broker.json | 4 ++-- examples/int-eumetsat-serviri-core.json | 4 ++-- examples/us-noaa-nws.gfs-10deg.json | 4 ++-- examples/us-noaa-nws.goes16-satellite-sst.json | 4 ++-- 16 files changed, 35 insertions(+), 34 deletions(-) diff --git a/examples/ca-eccc-msc-gdc.global-discovery-catalogue.json b/examples/ca-eccc-msc-gdc.global-discovery-catalogue.json index b11803c9..e392aa04 100644 --- a/examples/ca-eccc-msc-gdc.global-discovery-catalogue.json +++ b/examples/ca-eccc-msc-gdc.global-discovery-catalogue.json @@ -109,7 +109,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "links": [ diff --git a/examples/ca-eccc-msc.cmip5-tt.json b/examples/ca-eccc-msc.cmip5-tt.json index 19385657..eaa4a389 100644 --- a/examples/ca-eccc-msc.cmip5-tt.json +++ b/examples/ca-eccc-msc.cmip5-tt.json @@ -38,7 +38,7 @@ ] }, "properties": { - "title": "CMIP5 (Annual) - Projected average change in Air Temperature for 2081-2100 (50th percentile)", + "title": "CMIP5 (annual) - projected average change in air temperature for 2081-2100 (50th percentile)", "description": "Seasonal and annual multi-model ensembles of projected change (also known as anomalies) in mean temperature (\u00b0C) based on an ensemble of twenty-nine Coupled Model Intercomparison Project Phase 5 (CMIP5) global climate models are available for 1901-2100. Projected change in mean temperature (\u00b0C) is with respect to the reference period of 1986-2005. The 5th, 25th, 50th, 75th and 95th percentiles of the ensembles of projected change in mean temperature change are available for the historical time period, 1901-2005, and for emission scenarios, RCP2.6, RCP4.5 and RCP8.5, for 2006-2100. Twenty-year average changes in mean temperature (\u00b0C) for four time periods (2021-2040; 2041-2060; 2061-2080; 2081-2100), with respect to the reference period of 1986-2005, for RCP2.6, RCP4.5 and RCP8.5 are also available in a range of formats. The median projected change across the ensemble of CMIP5 climate models is provided. Note: Projections among climate models can vary because of differences in their underlying representation of earth system processes. Thus, the use of a multi-model ensemble approach has been demonstrated in recent scientific literature to likely provide better projected climate change information.", "themes": [ { @@ -106,7 +106,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "contactInstructions": "email", @@ -163,7 +163,7 @@ "href": "https://api.weather.gc.ca/collections/climate:cmip5:projected:annual:P20Y-Avg", "type": "application/json", "title": "OGC API endpoint" - } + } ], "linkTemplates": [ { @@ -171,7 +171,7 @@ "type": "text/html", "hreflang": "en", "title": "Raw data download (NetCDF files)", - "uriTemplate": "https://dd.weather.gc.ca/{yyyymmdd}/WXO-DD/climate/cmip5/netcdf/scenarios/RCP8.5/annual/avg_20years", + "uriTemplate": "https://dd.weather.gc.ca/{yyyymmdd}/WXO-DD/climate/cmip5/netcdf/scenarios/RCP8.5/annual/avg_20years", "variables": { "yyyymmdd": { "type": "string", diff --git a/examples/ca-eccc-msc.daily-climate-observations.json b/examples/ca-eccc-msc.daily-climate-observations.json index 884794cc..373a8902 100644 --- a/examples/ca-eccc-msc.daily-climate-observations.json +++ b/examples/ca-eccc-msc.daily-climate-observations.json @@ -39,7 +39,7 @@ "resolution": "P1D" }, "properties": { - "title": "Daily Climate Observations", + "title": "Daily climate observations", "description": "Daily climate observations are derived from two sources of data. The first are Daily Climate Stations producing one or two observations per day of temperature, precipitation. The second are hourly stations that typically produce more weather elements e.g. wind or snow on ground. Only a subset of the total stations is shown due to size limitations. The criteria for station selection are listed as below. The priorities for inclusion are as follows: (1) Station is currently operational, (2) Stations with long periods of record, (3) Stations that are co-located with the categories above and supplement the period of record.", "themes": [ { @@ -89,7 +89,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "contactInstructions": "email", @@ -146,7 +146,7 @@ "type": "application/geo+json", "title": "Data notifications" } - ], + ], "linkTemplates": [ { "rel": "archives", diff --git a/examples/ca-eccc-msc.hydrometric-archive.json b/examples/ca-eccc-msc.hydrometric-archive.json index 694f9652..998f3a3c 100644 --- a/examples/ca-eccc-msc.hydrometric-archive.json +++ b/examples/ca-eccc-msc.hydrometric-archive.json @@ -38,7 +38,7 @@ ] }, "properties": { - "title": "Historical Hydrometric Data", + "title": "Historical hydrometric data", "description": "Historical hydrometric data are standardized water resource data and information. They are collected, interpreted and disseminated by the Water Survey of Canada (WSC) in partnership with the provinces, territories and other agencies through the National Hydrometric Program. These data sets include daily mean, monthly mean, annual maximum and minimum daily mean and instantaneous peak water level and discharge information for over 2700 active and 5080 discontinued hydrometric monitoring stations across Canada.", "themes": [ { @@ -106,7 +106,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "contactInstructions": "email", @@ -143,7 +143,7 @@ "name": "SQLite3" }, { - "name": "Microsoft Access" + "name": "Microsoft Access" } ] } diff --git a/examples/ca-eccc-msc.hydrometric-realtime.json b/examples/ca-eccc-msc.hydrometric-realtime.json index ef8ee172..fa4e0ac9 100644 --- a/examples/ca-eccc-msc.hydrometric-realtime.json +++ b/examples/ca-eccc-msc.hydrometric-realtime.json @@ -106,7 +106,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "contactInstructions": "email", @@ -166,6 +166,7 @@ "description": "date in yyyymmdd format" } } - } + } + ] } diff --git a/examples/ca-eccc-msc.nwp-gdps.json b/examples/ca-eccc-msc.nwp-gdps.json index a16d26da..4b22adbb 100644 --- a/examples/ca-eccc-msc.nwp-gdps.json +++ b/examples/ca-eccc-msc.nwp-gdps.json @@ -97,7 +97,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "contactInstructions": "email", @@ -142,7 +142,7 @@ "type": "application/geo+json", "title": "Data notifications" } - ], + ], "linkTemplates": [ { "rel": "data", diff --git a/examples/ca-eccc-msc.surface-weather-observations-realtime.json b/examples/ca-eccc-msc.surface-weather-observations-realtime.json index 70e351d8..c3f4087d 100644 --- a/examples/ca-eccc-msc.surface-weather-observations-realtime.json +++ b/examples/ca-eccc-msc.surface-weather-observations-realtime.json @@ -38,7 +38,7 @@ ] }, "properties": { - "title": "Surface Weather Observations", + "title": "Surface weather observations", "description": "Surface Observations measured at the automatic and manual stations of the Environment and Climate Change Canada and partners networks, either for a single station, or for the stations of specific provinces and territories (last 30 days)", "themes": [ { @@ -103,7 +103,7 @@ "city": "Fredericton", "administrativeArea": "NB", "postalCode": "E3B 6Z4", - "country": "Canada" + "country": "CAN" } ], "links": [ @@ -142,8 +142,8 @@ "href": "mqtts://everyone:everyone@globalbroker.meteo.fr:8883", "channel": "origin/a/wis2/ca-eccc-msc/data/core/weather/surface-based-observations/synop", "type": "application/geo+json", - "title": "Data notifications", - "filters": { + "title": "Data notifications", + "filters": { "wigos_station_identifier": { "type": "string", "title": "WIGOS station identifier" @@ -175,7 +175,7 @@ "type": "string", "description": "date in yyyymmdd format" } - } + } } ] } diff --git a/examples/cn-cma.nmic.prediction-forecast.json b/examples/cn-cma.nmic.prediction-forecast.json index 2ae9b03e..c15ff94b 100644 --- a/examples/cn-cma.nmic.prediction-forecast.json +++ b/examples/cn-cma.nmic.prediction-forecast.json @@ -98,7 +98,7 @@ "city": "Beijing", "administrativeArea": "Beijing", "postalCode": "100081", - "country": "China" + "country": "CHN" } ], "links": [ diff --git a/examples/cn-cma.nmic.surface-based-observations.json b/examples/cn-cma.nmic.surface-based-observations.json index c6492c0d..c97af4d4 100644 --- a/examples/cn-cma.nmic.surface-based-observations.json +++ b/examples/cn-cma.nmic.surface-based-observations.json @@ -74,7 +74,7 @@ "city": "Beijing", "administrativeArea": "Beijing", "postalCode": "100081", - "country": "China" + "country": "CHN" } ], "links": [ diff --git a/examples/de-dwd.global-cache.json b/examples/de-dwd.global-cache.json index c21d0828..3313f069 100644 --- a/examples/de-dwd.global-cache.json +++ b/examples/de-dwd.global-cache.json @@ -122,7 +122,7 @@ ], "city": "Offenbach", "postalCode": "63067", - "country": "Germany" + "country": "DEU" } ], "links": [ diff --git a/examples/de-dwd.icon-eps-all.json b/examples/de-dwd.icon-eps-all.json index 5a8add25..d6f8f5e4 100644 --- a/examples/de-dwd.icon-eps-all.json +++ b/examples/de-dwd.icon-eps-all.json @@ -130,7 +130,7 @@ ], "city": "Offenbach", "postalCode": "63067", - "country": "Germany" + "country": "DEU" } ], "links": [ diff --git a/examples/de-dwd.surface-weather-observations-realtime.json b/examples/de-dwd.surface-weather-observations-realtime.json index 8812d696..fd2647e0 100644 --- a/examples/de-dwd.surface-weather-observations-realtime.json +++ b/examples/de-dwd.surface-weather-observations-realtime.json @@ -38,7 +38,7 @@ ] }, "properties": { - "title": "Surface Weather Observations", + "title": "Surface weather observations", "description": "Surface Observations measured at the automatic and manual stations of Deutscher Wetterdienst, the German Weather Service", "themes": [ { @@ -84,7 +84,7 @@ ], "city": "Offenbach", "postalCode": "63067", - "country": "Germany" + "country": "DEU" } ], "links": [ diff --git a/examples/fr-meteofrance-global-broker.json b/examples/fr-meteofrance-global-broker.json index 26b032a2..296459a1 100644 --- a/examples/fr-meteofrance-global-broker.json +++ b/examples/fr-meteofrance-global-broker.json @@ -36,7 +36,7 @@ "type": "service", "title": "Météo-France (Toulouse), Global Broker Service", "description": "Météo-France (Toulouse), Global Broker Service", - "themes": [ + "themes": [ { "concepts": [ { @@ -105,7 +105,7 @@ ], "city": "Toulouse", "postalCode": "31057", - "country": "France" + "country": "FRA" } ], "links": [ diff --git a/examples/int-eumetsat-serviri-core.json b/examples/int-eumetsat-serviri-core.json index 6a80387c..32f59d23 100644 --- a/examples/int-eumetsat-serviri-core.json +++ b/examples/int-eumetsat-serviri-core.json @@ -42,7 +42,7 @@ "created": "2023-12-15T14:00:00Z", "updated": "2023-12-21T14:00:00Z", "type": "dataset", - "title": "High Rate SEVIRI Level 1.5 Image Data - MSG - 0 degree", + "title": "High rate SEVIRI level 1.5 image data - MSG - 0 degree", "description": "Rectified (level 1.5) Meteosat SEVIRI image data. The data is transmitted as High Rate transmissions in 12 spectral channels. Level 1.5 image data corresponds to the geolocated and radiometrically pre-processed image data, ready for further processing, e.g. the extraction of meteorological products. Any spacecraft specific effects have been removed, and in particular, linearisation and equalisation of the image radiometry has been performed for all SEVIRI channels. The on-board blackbody data has been processed. Both radiometric and geometric quality control information is included. Images are made available with different timeliness according to their latency: quarter-hourly images if latency is more than 3 hours and hourly images if latency is less than 3 hours (for a total of 87 images per day). To enhance the perception for areas which are on the night side of the Earth a different mapping with increased contrast is applied for IR3.9 product. The greyscale mapping is based on the EBBT which allows to map the ranges 200 K to 300 K for the night and 250 K to 330 K for the day.", "status": { "id": "operational", @@ -78,7 +78,7 @@ ], "city": "Darmstadt", "postalCode": "64295", - "country": "Germany" + "country": "DEU" } ], "links": [ diff --git a/examples/us-noaa-nws.gfs-10deg.json b/examples/us-noaa-nws.gfs-10deg.json index 7d46380b..ca30d6e0 100644 --- a/examples/us-noaa-nws.gfs-10deg.json +++ b/examples/us-noaa-nws.gfs-10deg.json @@ -42,7 +42,7 @@ "updated": "2022-06-23T18:36:00Z", "wmo:dataPolicy": "core", "type": "dataset", - "title": "Global Forecast System 1 Degree Resolution", + "title": "Global Forecast System 1 degree resolution", "description": "The Global Forecast System is a weather forecast model produced by the National Centers for Environmental Prediction.", "keywords": [ "Geopotential Height", @@ -289,7 +289,7 @@ "city": "College Park", "state": "Maryland", "postalCode": "20740", - "country": "United States" + "country": "USA" } ], "links": [ diff --git a/examples/us-noaa-nws.goes16-satellite-sst.json b/examples/us-noaa-nws.goes16-satellite-sst.json index 89875360..333f2c38 100644 --- a/examples/us-noaa-nws.goes16-satellite-sst.json +++ b/examples/us-noaa-nws.goes16-satellite-sst.json @@ -42,7 +42,7 @@ "updated": "2024-03-13T12:00:00Z", "wmo:dataPolicy": "core", "type": "dataset", - "title": "Goes 16 Advanced Baseline Imager Level 2 Sea Surface Temperature", + "title": "GOES 16 advanced baseline imager level 2 sea surface temperature", "description": "Sea Surface Temperature for each cloud-free pixel over water. The Sea Surface Temperature algorithm employed on GOES 16 will use hybrid physical-regression retrieval in order to produce a more accurate product.", "keywords": [ "Sea Surface Temperature", @@ -131,7 +131,7 @@ "city": "College Park", "state": "Maryland", "postalCode": "20740", - "country": "United States" + "country": "USA" } ], "links": [ From 2e9d6655e324a39dc62a332f7c3779d4a3056b98 Mon Sep 17 00:00:00 2001 From: Anna Milan Date: Tue, 10 Mar 2026 12:18:57 +0100 Subject: [PATCH 04/10] Update examples/ca-eccc-msc.hydrometric-archive.json Co-authored-by: Tom Kralidis --- examples/ca-eccc-msc.hydrometric-archive.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/ca-eccc-msc.hydrometric-archive.json b/examples/ca-eccc-msc.hydrometric-archive.json index 998f3a3c..b62bd044 100644 --- a/examples/ca-eccc-msc.hydrometric-archive.json +++ b/examples/ca-eccc-msc.hydrometric-archive.json @@ -143,7 +143,7 @@ "name": "SQLite3" }, { - "name": "Microsoft Access" + "name": "Microsoft Access" } ] } From 6f7733fa11d55468ef380faf5896fa5d2d793a80 Mon Sep 17 00:00:00 2001 From: Anna Milan Date: Tue, 10 Mar 2026 12:19:06 +0100 Subject: [PATCH 05/10] Update examples/ca-eccc-msc.hydrometric-realtime.json Co-authored-by: Tom Kralidis --- examples/ca-eccc-msc.hydrometric-realtime.json | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/ca-eccc-msc.hydrometric-realtime.json b/examples/ca-eccc-msc.hydrometric-realtime.json index fa4e0ac9..72278fcf 100644 --- a/examples/ca-eccc-msc.hydrometric-realtime.json +++ b/examples/ca-eccc-msc.hydrometric-realtime.json @@ -167,6 +167,5 @@ } } } - ] } From 65def0a9b271bb625c936d10f1788d58003e9dac Mon Sep 17 00:00:00 2001 From: Anna Milan Date: Tue, 10 Mar 2026 12:19:17 +0100 Subject: [PATCH 06/10] Update examples/ca-eccc-msc.surface-weather-observations-realtime.json Co-authored-by: Tom Kralidis --- .../ca-eccc-msc.surface-weather-observations-realtime.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/ca-eccc-msc.surface-weather-observations-realtime.json b/examples/ca-eccc-msc.surface-weather-observations-realtime.json index c3f4087d..8fe7d90e 100644 --- a/examples/ca-eccc-msc.surface-weather-observations-realtime.json +++ b/examples/ca-eccc-msc.surface-weather-observations-realtime.json @@ -142,8 +142,8 @@ "href": "mqtts://everyone:everyone@globalbroker.meteo.fr:8883", "channel": "origin/a/wis2/ca-eccc-msc/data/core/weather/surface-based-observations/synop", "type": "application/geo+json", - "title": "Data notifications", - "filters": { + "title": "Data notifications", + "filters": { "wigos_station_identifier": { "type": "string", "title": "WIGOS station identifier" From c74981650220ed8c2b610831e45614f068352206 Mon Sep 17 00:00:00 2001 From: Anna Milan Date: Tue, 10 Mar 2026 12:19:24 +0100 Subject: [PATCH 07/10] Update examples/ca-eccc-msc.surface-weather-observations-realtime.json Co-authored-by: Tom Kralidis --- examples/ca-eccc-msc.surface-weather-observations-realtime.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/ca-eccc-msc.surface-weather-observations-realtime.json b/examples/ca-eccc-msc.surface-weather-observations-realtime.json index 8fe7d90e..1d8efad5 100644 --- a/examples/ca-eccc-msc.surface-weather-observations-realtime.json +++ b/examples/ca-eccc-msc.surface-weather-observations-realtime.json @@ -175,7 +175,7 @@ "type": "string", "description": "date in yyyymmdd format" } - } + } } ] } From 0971021e01e02f8b2059e656779989485260be99 Mon Sep 17 00:00:00 2001 From: Anna Milan Date: Tue, 10 Mar 2026 12:19:32 +0100 Subject: [PATCH 08/10] Update examples/fr-meteofrance-global-broker.json Co-authored-by: Tom Kralidis --- examples/fr-meteofrance-global-broker.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/fr-meteofrance-global-broker.json b/examples/fr-meteofrance-global-broker.json index 296459a1..dfafbd5c 100644 --- a/examples/fr-meteofrance-global-broker.json +++ b/examples/fr-meteofrance-global-broker.json @@ -36,7 +36,7 @@ "type": "service", "title": "Météo-France (Toulouse), Global Broker Service", "description": "Météo-France (Toulouse), Global Broker Service", - "themes": [ + "themes": [ { "concepts": [ { From e05f26f8a41564d1706fcc17a6710a8ede87dd21 Mon Sep 17 00:00:00 2001 From: Tom Kralidis Date: Tue, 10 Mar 2026 07:33:14 -0400 Subject: [PATCH 09/10] s/Features/Records/ (#293) --- standard/sections/clause_7_normative_text.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standard/sections/clause_7_normative_text.adoc b/standard/sections/clause_7_normative_text.adoc index 93312934..1cf78b27 100644 --- a/standard/sections/clause_7_normative_text.adoc +++ b/standard/sections/clause_7_normative_text.adoc @@ -2,7 +2,7 @@ Note: This section of this working draft document is the same as Appendix F in the https://library.wmo.int/idurl/4/68731[_Manual on the WMO Information System_] (WMO-No. 1060), Volume II as approved by EC-78. -WMO Core Metadata Profile (WCMP) is an extension of the OGC API – Features standard and shall be encoded in GeoJSON. The normative provisions in WCMP (version 2) are denoted by the base URI (``http://wis.wmo.int/spec/wcmp/2``) and requirements are denoted by partial URIs relative to this base. Property names, values and examples are represented with ``shaded text`` in this document. +WMO Core Metadata Profile (WCMP) is an extension of the OGC API – Records standard and shall be encoded in GeoJSON. The normative provisions in WCMP (version 2) are denoted by the base URI (``http://wis.wmo.int/spec/wcmp/2``) and requirements are denoted by partial URIs relative to this base. Property names, values and examples are represented with ``shaded text`` in this document. :sectnums!: === 1. Requirements Class "Core" From 03d320f86049c0149c3ed617b4350a4b903ccab2 Mon Sep 17 00:00:00 2001 From: amilan17 Date: Wed, 18 Mar 2026 14:49:12 +0100 Subject: [PATCH 10/10] repair references --- standard/sections/clause_3_references.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/standard/sections/clause_3_references.adoc b/standard/sections/clause_3_references.adoc index 07b11a4f..dbdfe7bf 100644 --- a/standard/sections/clause_3_references.adoc +++ b/standard/sections/clause_3_references.adoc @@ -1,7 +1,7 @@ == References -* [[ogcapi-records]] OGC: OGC 20-004, OGC API - Records - Part 1: Core 1.0 (2023) footnote:[https://docs.ogc.org/DRAFTS/20-004.html] -* [[ogcapi-features]] OGC: OGC 17-069r, OGC API - Features - Part 1: Core 1.0 (2022) footnote:[https://docs.opengeospatial.org/is/17-069r4/17-069r4.html] +* [[ogcapi-records]] OGC: OGC 20-004, OGC API - Records - Part 1: Core 1.0 (2025) footnote:[https://docs.ogc.org/is/20-004r1/20-004r1.html] +* [[ogcapi-features]] OGC: OGC 17-069r4, OGC API - Features - Part 1: Core 1.0 (2022) footnote:[https://docs.opengeospatial.org/is/17-069r4/17-069r4.html] * [[rfc7946]] IETF: RFC-7946 The GeoJSON Format (2016) footnote:[https://datatracker.ietf.org/doc/html/rfc7946] * [[rfc8259]] IETF: RFC-8259 The JavaScript Object Notation (JSON) Data Interchange Format (2017) footnote:[https://datatracker.ietf.org/doc/html/rfc8259] * W3C/OGC: Spatial Data on the Web Best Practices, W3C Working Group Note (2017) footnote:[https://www.w3.org/TR/sdw-bp] @@ -13,4 +13,4 @@ * [[json-schema]] IETF: JSON Schema (2022) footnote:[https://json-schema.org] * [[wis2-topic-hierarchy]] WMO: WIS2 Topic Hierarchy (2022) footnote:[https://github.com/wmo-im/wis2-topic-hierarchy] * [[openapi]] OpenAPI Specification 3.1.0 (2022) footnote:[https://github.com/OAI/OpenAPI-Specification/blob/3.1.0/versions/3.1.0.md] -* [[wis2-guide]] Draft guidance on technical specifications of WIS2 (2023) footnote:[https://wmo-im.github.io/wis2-guide/guide/wis2-guide-DRAFT.html] +* [[wis2-guide]] Guide to the WMO Information System Volume II (2025) footnote:[https://wmo-im.github.io/wis2-guide/guide/wis2-guide-APPROVED.html]