From 94dc76bf57a22aee244d70835587d30cca705ba5 Mon Sep 17 00:00:00 2001 From: Tom Kralidis Date: Wed, 25 Jan 2023 11:49:29 -0500 Subject: [PATCH] update GeoJSON provider property typing (#1116) --- pygeoapi/provider/geojson.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pygeoapi/provider/geojson.py b/pygeoapi/provider/geojson.py index 9b93fe2..d5fa4e4 100644 --- a/pygeoapi/provider/geojson.py +++ b/pygeoapi/provider/geojson.py @@ -81,8 +81,15 @@ class GeoJSONProvider(BaseProvider): if os.path.exists(self.data): with open(self.data) as src: data = json.loads(src.read()) - for f in data['features'][0]['properties'].keys(): - fields[f] = {'type': 'string'} + for key, value in data['features'][0]['properties'].items(): + if isinstance(value, float): + type_ = 'number' + elif isinstance(value, int): + type_ = 'integer' + else: + type_ = 'string' + + fields[key] = {'type': type_} else: LOGGER.warning(f'File {self.data} does not exist.') return fields