-
Notifications
You must be signed in to change notification settings - Fork 83
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
Paging and extent ... #572
Comments
I agree, it would make sense to at least discuss this in the GeoJSON and GML requirements classes. And I agree, too, about the extent being the extent of the complete response, not the page. That raises a question: I don't remember seeing a bbox included in GeoJSON FeatureCollection output from Features APIs. Do we know that clients are actually using this information, if it is provided? Depending on the backend and dataset size it may be considered too costly to compute the extent of the result set first. ldproxy allows to switch off computing numberMatched for that reason. |
@cportele CubeWerx client code does use that information but I am not aware of any other clients that might. |
I think the specification should state that the extent information, if present, shall be the extent of the full result set. This gives servers an out if determining the extent is too onerous, but allows clients to interpret the extent unambiguously if one is given. One use case for having this extent information is to prepare a plot window of the appropriate extent. You certainly don't want to have to force the client to pre-fetch all of the features to determine an appropriate plot window before rendering a single pixel. Having reliable extent information up front may also aid in certain optimizations. |
We are walking a fine line between records and features here. Not in disagreement with the points made here, just saying that the extent of all features could be considered as metadata. |
A number of output formats (e.g. GML, GeoJSON) allow extent information to be included in the response. Now consider that I execute a query that fetches 1M records 10K at a time. Should the extent specified on each page be the extent of the features on that page or the extent of the result set of the query?
My feeling is that it should be the extend of the result set and not the features on any particular page. That extent of the features on a page is fairly quick and easy to compute since the client has the information in hand so I would think that the extent of the result set is more useful.
In any case, it might be helpful to have a short informative discussion in the core or even a recommendation.
The text was updated successfully, but these errors were encountered: