From 971fdd5d52cdd22c4daf13341277a88d5e1ee2e6 Mon Sep 17 00:00:00 2001 From: Justin Tran <116204472+JustAProjectacc@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:24:17 +0000 Subject: [PATCH] Clarify Index of confidence for second RDPA band on GeoMet-OGC-API issue-1331 --- msc_pygeoapi/provider/rdpa_rasterio.py | 40 ++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/msc_pygeoapi/provider/rdpa_rasterio.py b/msc_pygeoapi/provider/rdpa_rasterio.py index e5d33f26..326b08bc 100644 --- a/msc_pygeoapi/provider/rdpa_rasterio.py +++ b/msc_pygeoapi/provider/rdpa_rasterio.py @@ -116,6 +116,8 @@ def query(self, properties=[1], subsets={}, bbox=[], bands = properties LOGGER.debug(f'Bands: {bands}, subsets: {subsets}') + self.selected_bands = properties + args = { 'indexes': None } @@ -587,3 +589,41 @@ def verify_date_hour(self, date: datetime): ) LOGGER.error(err) raise ProviderQueryError(err, user_msg=err) + + def gen_covjson(self, metadata, data): + cj = super().gen_covjson(metadata, data) + + if self.selected_bands[0] == '2': + cj_id = cj['parameters']['APCP']['observedProperty']['id'] + + param_properties = { + 'CFIA': { + 'type': 'Parameter', + 'description': 'Index of confidence [-]', + 'unit': { + 'symbol': '[-]' + }, + 'observedProperty': { + 'id': cj_id, + 'label': { + 'en': 'Index of confidence [-]' + } + } + } + } + + cj['parameters'] = param_properties + cj['ranges'] = { + 'CFIA': cj['ranges']['APCP'] + } + + return cj + + def get_fields(self): + fields = super().get_fields() + + if '2' in fields.keys(): + fields['2']['title'] = 'Index of confidence [-]' + fields['2']['_meta']['GRIB_COMMENT'] = 'Index of confidence [-]' + fields['2']['_meta']['GRIB_ELEMENT'] = 'CFIA' + return fields