Skip to content

Commit 47d46d3

Browse files
authored
update EDR parameter defs (#2279) (#2284)
1 parent 939d373 commit 47d46d3

3 files changed

Lines changed: 28 additions & 9 deletions

File tree

pygeoapi/api/collection.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -404,15 +404,15 @@ def gen_collection(api, request, dataset: str,
404404
if parameters:
405405
data['parameter_names'] = {}
406406
for key, value in parameters.items():
407+
p_label = value.get('title')
408+
p_description = value.get('description')
407409
data['parameter_names'][key] = {
408410
'id': key,
409411
'type': 'Parameter',
410-
'name': value['title'],
411412
'observedProperty': {
412413
'label': {
413-
'id': key,
414-
'en': value['title']
415-
},
414+
'en': p_label
415+
}
416416
},
417417
'unit': {
418418
'label': {
@@ -425,10 +425,12 @@ def gen_collection(api, request, dataset: str,
425425
}
426426
}
427427

428-
data['parameter_names'][key].update({
429-
'description': value['description']}
430-
if 'description' in value else {}
431-
)
428+
if p_description is not None:
429+
data['parameter_names'][key]['observedProperty'].update({
430+
'description': {
431+
'en': p_description
432+
}
433+
})
432434

433435
for qt in p.get_query_types():
434436
data_query = {

pygeoapi/templates/collections/collection.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ <h3>Parameters</h3>
9898
{% for parameter in data['parameter_names'].values() %}
9999
<tr>
100100
<td>{{ parameter['id'] }}</td>
101-
<td>{{ parameter['name'] }}</td>
101+
<td>{{ parameter['observedProperty']['label'].values()|first }}{% if parameter['observedProperty']['description'] %}<br/><i>{{ parameter['observedProperty']['description'].values()|first }}</i>{% endif %}</td>
102102
<td>{{ parameter['unit']['symbol']['value'] }}</td>
103103
</tr>
104104
{% endfor %}

tests/api/test_environmental_data_retrieval.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,23 @@
4141
from tests.util import mock_api_request
4242

4343

44+
def test_describe_collection_edr(config, api_):
45+
req = mock_api_request()
46+
rsp_headers, code, response = describe_collections(api_, req, 'icoads-sst')
47+
collection = json.loads(response)
48+
parameter_names = list(collection['parameter_names'].keys())
49+
parameter_names.sort()
50+
assert len(parameter_names) == 4
51+
assert parameter_names == ['AIRT', 'SST', 'UWND', 'VWND']
52+
53+
sst = collection['parameter_names']['SST']
54+
assert sst['id'] == 'SST'
55+
assert sst['type'] == 'Parameter'
56+
assert sst['observedProperty']['label']['en'] == 'SEA SURFACE TEMPERATURE'
57+
assert sst['unit']['label']['en'] == 'SEA SURFACE TEMPERATURE'
58+
assert sst['unit']['symbol']['value'] == 'Deg C'
59+
60+
4461
def test_get_collection_edr_query(config, api_):
4562
# edr resource
4663
req = mock_api_request()

0 commit comments

Comments
 (0)