update OACov content models (#809) (#813)

This commit is contained in:
Tom Kralidis
2021-11-11 08:35:58 -05:00
committed by GitHub
parent 8740b23e23
commit 91abdb9f8d
3 changed files with 27 additions and 23 deletions
+12 -10
View File
@@ -72,23 +72,23 @@ class RasterioProvider(BaseProvider):
"""
domainset = {
'type': 'DomainSetType',
'type': 'DomainSet',
'generalGrid': {
'type': 'GeneralGridCoverageType',
'type': 'GeneralGridCoverage',
'srsName': self._coverage_properties['bbox_crs'],
'axisLabels': [
self._coverage_properties['x_axis_label'],
self._coverage_properties['y_axis_label']
],
'axis': [{
'type': 'RegularAxisType',
'type': 'RegularAxis',
'axisLabel': self._coverage_properties['x_axis_label'],
'lowerBound': self._coverage_properties['bbox'][0],
'upperBound': self._coverage_properties['bbox'][2],
'uomLabel': self._coverage_properties['bbox_units'],
'resolution': self._coverage_properties['resx']
}, {
'type': 'RegularAxisType',
'type': 'RegularAxis',
'axisLabel': self._coverage_properties['y_axis_label'],
'lowerBound': self._coverage_properties['bbox'][1],
'upperBound': self._coverage_properties['bbox'][3],
@@ -96,16 +96,16 @@ class RasterioProvider(BaseProvider):
'resolution': self._coverage_properties['resy']
}],
'gridLimits': {
'type': 'GridLimitsType',
'type': 'GridLimits',
'srsName': 'http://www.opengis.net/def/crs/OGC/0/Index2D',
'axisLabels': ['i', 'j'],
'axis': [{
'type': 'IndexAxisType',
'type': 'IndexAxis',
'axisLabel': 'i',
'lowerBound': 0,
'upperBound': self._coverage_properties['width']
}, {
'type': 'IndexAxisType',
'type': 'IndexAxis',
'axisLabel': 'j',
'lowerBound': 0,
'upperBound': self._coverage_properties['height']
@@ -126,7 +126,7 @@ class RasterioProvider(BaseProvider):
"""
rangetype = {
'type': 'DataRecordType',
'type': 'DataRecord',
'field': []
}
@@ -143,9 +143,11 @@ class RasterioProvider(BaseProvider):
rangetype['field'].append({
'id': i,
'type': 'QuantityType',
'type': 'Quantity',
'name': name,
'definition': dtype,
'encodingInfo': {
'dataType': 'http://www.opengis.net/def/dataType/OGC/0/{}'.format(dtype) # noqa
},
'nodata': nodataval,
'uom': {
'id': 'http://www.opengis.net/def/uom/UCUM/{}'.format(
+13 -11
View File
@@ -83,9 +83,9 @@ class XarrayProvider(BaseProvider):
c_props = self._coverage_properties
domainset = {
'type': 'DomainSetType',
'type': 'DomainSet',
'generalGrid': {
'type': 'GeneralGridCoverageType',
'type': 'GeneralGridCoverage',
'srsName': c_props['bbox_crs'],
'axisLabels': [
c_props['x_axis_label'],
@@ -93,14 +93,14 @@ class XarrayProvider(BaseProvider):
c_props['time_axis_label']
],
'axis': [{
'type': 'RegularAxisType',
'type': 'RegularAxis',
'axisLabel': c_props['x_axis_label'],
'lowerBound': c_props['bbox'][0],
'upperBound': c_props['bbox'][2],
'uomLabel': c_props['bbox_units'],
'resolution': c_props['resx']
}, {
'type': 'RegularAxisType',
'type': 'RegularAxis',
'axisLabel': c_props['y_axis_label'],
'lowerBound': c_props['bbox'][1],
'upperBound': c_props['bbox'][3],
@@ -108,7 +108,7 @@ class XarrayProvider(BaseProvider):
'resolution': c_props['resy']
},
{
'type': 'RegularAxisType',
'type': 'RegularAxis',
'axisLabel': c_props['time_axis_label'],
'lowerBound': c_props['time_range'][0],
'upperBound': c_props['time_range'][1],
@@ -117,16 +117,16 @@ class XarrayProvider(BaseProvider):
}
],
'gridLimits': {
'type': 'GridLimitsType',
'type': 'GridLimits',
'srsName': 'http://www.opengis.net/def/crs/OGC/0/Index2D',
'axisLabels': ['i', 'j'],
'axis': [{
'type': 'IndexAxisType',
'type': 'IndexAxis',
'axisLabel': 'i',
'lowerBound': 0,
'upperBound': c_props['width']
}, {
'type': 'IndexAxisType',
'type': 'IndexAxis',
'axisLabel': 'j',
'lowerBound': 0,
'upperBound': c_props['height']
@@ -148,7 +148,7 @@ class XarrayProvider(BaseProvider):
"""
rangetype = {
'type': 'DataRecordType',
'type': 'DataRecord',
'field': []
}
@@ -164,9 +164,11 @@ class XarrayProvider(BaseProvider):
rangetype['field'].append({
'id': name,
'type': 'QuantityType',
'type': 'Quantity',
'name': var.attrs.get('long_name') or desc,
'definition': str(var.dtype),
'encodingInfo': {
'dataType': 'http://www.opengis.net/def/dataType/OGC/0/{}'.format(str(var.dtype)) # noqa
},
'nodata': 'null',
'uom': {
'id': 'http://www.opengis.net/def/uom/UCUM/{}'.format(
+2 -2
View File
@@ -957,7 +957,7 @@ def test_get_coverage_domainset(config, api_):
domainset = json.loads(response)
assert domainset['type'] == 'DomainSetType'
assert domainset['type'] == 'DomainSet'
assert domainset['generalGrid']['axisLabels'] == ['Long', 'Lat']
assert domainset['generalGrid']['gridLimits']['axisLabels'] == ['i', 'j']
assert domainset['generalGrid']['gridLimits']['axis'][0]['upperBound'] == 2400 # noqa
@@ -976,7 +976,7 @@ def test_get_collection_coverage_rangetype(config, api_):
rangetype = json.loads(response)
assert rangetype['type'] == 'DataRecordType'
assert rangetype['type'] == 'DataRecord'
assert len(rangetype['field']) == 1
assert rangetype['field'][0]['id'] == 1
assert rangetype['field'][0]['name'] == 'Temperature [C]'