-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add OGC Features API at /catalogs/{catalogId}/collections/{collectionId}/features #265
Conversation
…rate application such that it has its own docs and can function as a standalone OGC Features API
…lectionId} working
…tional (so it can render Sites, FoIs, and other non-Occurrence geo:Features we might have"
…s identifiers rather than iris.
Update profile to make props separately optional Add link headers to JSON responses
…d from OGC Features endpoints
…xigraph his supported. Remove BDR specific query. Optimise imports. Fix 4*tests
…-subapi # Conflicts: # ogcfeaturesapi.Dockerfile # prez/services/query_generation/cql.py # pyproject.toml
I'm reviewing this now... |
OGC Features compliance changes
Note: need to pin the version in pyproject.toml to 3.12.4
Looking at the ogctest results I can see that only the crs tests and apidefinition tests fail. Issue Browsing |
…rty selection to UNION queries.
using the updated test data / profile, the collections are now listed and viewable but there is still an issue accessing the individual features. i.e.
yields in addition, putting an invalid feature id like |
Thanks I'll check the tests covers those |
…OGC Features can be disabled/enabled. Enabled by default.
To give some direction for this. When requesting the details of ex:Feature1, In the debugger I can see that the item_graph in the ogc_features_object_function only has one triple declaring that the type of ex:Feature1 is a geo:Feature. I feel like this should have more info, so perhaps there is an issue with the query generation. also, the convert function for converting to geojson reduces this single triple down to an empty {} object so there is something not right there too. hope that helps. |
With the CRS one I'll create a separate issue (#267). In short, and Prez will likely support by proxy whichever CRSs the triplestore GeoSPARQL implementation supports, so we probably just need a way to discover that (might be hard) and then expose this info in the various places in the OGC Features API. If this is too hard, we could just create a config option to allow manual specification of different CRSs. It's currently specifying WGS84 as a temporary solution. I'd prefer not to mark it compliant until we've gone through the separate spec in detail. Not sure what is going on with the python versions. I'll remove scalene as a dev dependency. |
couldn't get pytest to run from the command line
…C Features, add geometries to SpacePrez data so it renders. Add links to display of a single feature.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
awesome looks good to me. nice work.
This PR implements the OGC Features API as a subapi within Prez. It has been implemented at: "/catalogs/{catalogId}/collections/{recordsCollectionId}"
The material changes are:
Most of the other changes are renaming things to prevent conflicts, and the addition of a set of CQL queries for testing.
NB the implementation is done as a mount of a separate FastAPI application NOT a FastAPI router. This is so that the Features API can be a "pure" OGC Features API and automatically include docs at a sensible location i.e. /features/docs, and make catering to the specific requirements of OGC Features easier.
The main "data" endpoints are listed below for clarity. A full list of endpoints including management (prefixes, curies), search etc. has been added to the main Readme.
Prez Core Endpoints:
OGC Features API Endpoints:
The OGC Features API Endpoints are based at the ROOT
/catalogs/{catalogId}/collections/{recordsCollectionId}/