Skip to content
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

Use API-EDR query patterns for some subsetting requirements #3

Open
chris-little opened this issue Apr 25, 2024 · 2 comments
Open

Use API-EDR query patterns for some subsetting requirements #3

chris-little opened this issue Apr 25, 2024 · 2 comments

Comments

@chris-little
Copy link

chris-little commented Apr 25, 2024

Assuming a GeoDataCube has similar attributes/properties to the W3C DataCube/QB vocabulary, slicing and trimming along various dimensions should be straightforward, using the Coverage approach, but for big GeoDataCubes, it may not be enough data reduction, especially to support multiple users scalably with reasonable response times, especially where the GeoDatCube cannot be easily, or even feasibly, replicated.

In such cases, the Point, Radius, Area, Cube, Trajectory and Corridor queries should be very useful. These queries also have vertical and temporal extents as well, and dimensions are not restricted to (x, y, z, t).

@jerstlouis
Copy link
Member

@chris-little With OGC API - Coverages - Part 2: Filtering, deriving and aggregating fields, most or all of the EDR queries could be expressed by a simple filter= extension using CQL2 e.g.,

filter=S_INTERSECTS(rec.cells, POLYGON((-109 64.39894807, -61.25 64.39894807,-61.25 76.7652818, -109 76.7652818, -109 64.39894807)))

See also the ER in section 5.1.2.6. Future work: geometry intersections, spatial joins, aggregation and convolution.

(related to #6 ).

It also of course still be possible for a GeoDataCube API implementation to also decide to additionally conform to OGC API - EDR as an additional data access mechanism.

@chris-little
Copy link
Author

@jerstlouis So what would a query such as filter=S_INTERSECTS(rec.cells, POLYGON((-109 64.39894807, -61.25 64.39894807,-61.25 76.7652818, -109 76.7652818, -109 64.39894807))) look like when requesting also specific vertical and temporal restrictions?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants