opengeospatial / ogcapi-features

An open standard for querying geospatial information on the web.
https://ogcapi.ogc.org/features
Other
338 stars 84 forks source link

Part 4: reduce server response size #738

Open benoitdm-oslandia opened 2 years ago

benoitdm-oslandia commented 2 years ago

For features with big geometry, what kind of mechanism do you suggest to apply to avoid the server sends the whole geometry when the user ask for {landingPageUri}/collections/{collectionId}/items? This is also the case when the user GET a single feature or PATCH a feature with only one property (says color) and receive in response the whole geometry WKT.

Is there some kind of Level Of Detail mechanism or a parameter on the request to specify the wanted properties in response?

cportele commented 2 years ago

These capabilities are on our roadmap (as two separate extensions):

Property selection

Geometry simplification

benoitdm-oslandia commented 2 years ago

@cportele Great proposals!

May I suggest to avoid negate word in var name as it tends to bring confusion: you could replace skipGeometry by addGeometry or enableGeometry.

I thinks we will implement these extensions in our next developments.

cportele commented 2 years ago

@benoitdm-oslandia

avoid negate word

Both options are not really optimal (skip=true fails "avoid negatives in names for standalone variables" and enable=false fails "always choose names that enable setting false by default"). Anyhow, from initial discussions it seems that most would prefer to treat the geometry property like any other property and include it in properties (or not).

Thank you for the feedback!

benoitdm-oslandia commented 2 years ago

@cportele you're right! It looks like a better solution to treat the geometry property like any other property!

Thanks!

benoitdm-oslandia commented 2 years ago

Hi @cportele,

I am rolling back my thoughts for the property selection, do you think it will be possible to have an excluded-properties parameter?

It can be useful when only a small sub set of properties needs to be avoided instead to list all displayable properties (as it can be a long list depending on the feature).

This property will be or-exclusive with the properties parameter.

cportele commented 4 months ago

Meeting 2024-06-03: One part of the request will be addressed by Part 6 ("parameter on the request to specify the wanted properties in response") the other by Part 7 ("Level Of Detail mechanism").

What is not yet included in the draft of Part 6 is the option to omit selected properties. For cases where features have a lot of properties and you just want to omit a few, it is easier to specify just the few to be omited. We will add a exclude-properties parameter. The properties and exclude-properties parameters will be mutually exclusive.