Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This PR introduces the SensorThings API EDR provider to pygeoapi core ported from https://github.com/cgs-earth/pygeoapi-plugins. The EDR provider is an implementation of the feature provider on the ObservedProperty entity. Using deep selection filters we are able to construct the necessary .
In the documentation I am not entirely sure how to relate query types and query arguments - each EDR Query Type has its own set of query arguments.
Related Issue / discussion
Additional information
L408-409 in
pygeoapi/provider/sensorthings_edr.py
note a TODO to recursively expand observations. This can be really expensive if query params aren't filtering the size of the response. Until EDR with limit as a query param is ready to be implemented, the default number returned by the SensorThings server is more than enough. Note that certain queries can be pretty taxing on the SensorThings endpoint especially without proper indexes created.Some views of queries:
![image](https://private-user-images.githubusercontent.com/40066515/410708090-f56e2a26-2771-4847-a949-bc852bd4bb52.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzOTg3OTgsIm5iZiI6MTczOTM5ODQ5OCwicGF0aCI6Ii80MDA2NjUxNS80MTA3MDgwOTAtZjU2ZTJhMjYtMjc3MS00ODQ3LWE5NDktYmM4NTJiZDRiYjUyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDIyMTQ1OFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTcwYTI5OWUxNzM3ZGU5ZjQzMTc1NDNiN2UyOWJjYjdlNDE3ZTFkYzYyYjIwOGZjYmRiNDA5NDcwY2YwN2Q3ZjMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.jpM3251r2qo5AJ3pTsIZXANQ9veCHda4NpWn03OrR90)
![image](https://private-user-images.githubusercontent.com/40066515/410708776-bbe592e6-cbb2-4c82-bb35-d5fafdd938f3.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzOTg3OTgsIm5iZiI6MTczOTM5ODQ5OCwicGF0aCI6Ii80MDA2NjUxNS80MTA3MDg3NzYtYmJlNTkyZTYtY2JiMi00YzgyLWJiMzUtZDVmYWZkZDkzOGYzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDIyMTQ1OFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU5MWFhZDliMTVjZTMyNWMxMTljNDRkZGYyZjllNmFlZmEyMDMwYWUwZmNhYjkwM2YyMWMxZDc3ZWUyODJkYjYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.pOVtaPe5KtGJ7JmBUJ7acMHyhOF5akDmnh210upM2mo)
![image](https://private-user-images.githubusercontent.com/40066515/410714022-98174931-c594-4285-a589-fa694c957ef7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzOTg3OTgsIm5iZiI6MTczOTM5ODQ5OCwicGF0aCI6Ii80MDA2NjUxNS80MTA3MTQwMjItOTgxNzQ5MzEtYzU5NC00Mjg1LWE1ODktZmE2OTRjOTU3ZWY3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDIyMTQ1OFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWNlOGU4NGNlZDQ1ZDI0M2E0YmU4Y2RjNWUwMWJhZTcyNTNkZjc5MDg2MDFmZDUzOTRmOGRhOTdhMDFkZGNhNDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ba-IZa9tiY2Ntap5kcO7DgEHm1v7HGxEKbDV1CLOmtU)
Cube/Area:
Locations:
![image](https://private-user-images.githubusercontent.com/40066515/410708185-4dde6f85-0248-4ed9-b1b3-1b9544c280e6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzOTg3OTgsIm5iZiI6MTczOTM5ODQ5OCwicGF0aCI6Ii80MDA2NjUxNS80MTA3MDgxODUtNGRkZTZmODUtMDI0OC00ZWQ5LWIxYjMtMWI5NTQ0YzI4MGU2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDIyMTQ1OFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVjZmI3YzNmZWI3NjZjNjEyZmE4ZjQ2N2EyOGZlYWM4ZWI2OGE4NzdhY2RjYTQyNDQyMDZiZGU1Mzg4MmJmN2QmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.YYiseqL0VbLQN7eIsKSqyBkA_CEytnwFtkbRbxAQsUQ)
![image](https://private-user-images.githubusercontent.com/40066515/410708282-1d213faa-82a6-4004-9b07-2504ad7f91dc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkzOTg3OTgsIm5iZiI6MTczOTM5ODQ5OCwicGF0aCI6Ii80MDA2NjUxNS80MTA3MDgyODItMWQyMTNmYWEtODJhNi00MDA0LTliMDctMjUwNGFkN2Y5MWRjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEyVDIyMTQ1OFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTIwZGU5YjY5ZjE3ODBjMzA5MWU5ZTE2MGExNTRmMGViN2EyOTUwNDdiMGQxZTRjNzNlNTMxZDFkOWNlYmVhOGImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.y1FmqmDZC5seYAtGBNeEIV1-8lxoVKwWHdRjzqLMgpQ)
Dependency policy (RFC2)
Updates to public demo
Contributions and licensing
(as per https://github.com/geopython/pygeoapi/blob/master/CONTRIBUTING.md#contributions-and-licensing)