You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Related Issue(s):**
- #461
**Description:**
- GET `/collections` collection search fields extension ex.
`/collections?fields=id,title`.
[#465](#465)
- Improved error messages for sorting on unsortable fields in collection
search, including guidance on how to make fields sortable.
[#465](#465)
- Added field alias for `temporal` to enable easier sorting by temporal
extent, alongside `extent.temporal.interval`.
[#465](#465)
**PR Checklist:**
- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
11
11
12
12
- Added `USE_DATETIME` environment variable to configure datetime search behavior in SFEOS. [#452](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/452)
13
13
- GET `/collections` collection search sort extension ex. `/collections?sortby=+id`. [#456](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/456)
14
+
- GET `/collections` collection search fields extension ex. `/collections?fields=id,title`. [#465](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/465)
15
+
- Improved error messages for sorting on unsortable fields in collection search, including guidance on how to make fields sortable. [#465](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/465)
16
+
- Added field alias for `temporal` to enable easier sorting by temporal extent, alongside `extent.temporal.interval`. [#465](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/465)
Copy file name to clipboardExpand all lines: README.md
+26-2Lines changed: 26 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,11 +36,10 @@ SFEOS (stac-fastapi-elasticsearch-opensearch) is a high-performance, scalable AP
36
36
-**Scale to millions of geospatial assets** with fast search performance through optimized spatial indexing and query capabilities
37
37
-**Support OGC-compliant filtering** including spatial operations (intersects, contains, etc.) and temporal queries
38
38
-**Perform geospatial aggregations** to analyze data distribution across space and time
39
+
-**Enhanced collection search capabilities** with support for sorting and field selection
39
40
40
41
This implementation builds on the STAC-FastAPI framework, providing a production-ready solution specifically optimized for Elasticsearch and OpenSearch databases. It's ideal for organizations managing large geospatial data catalogs who need efficient discovery and access capabilities through standardized APIs.
41
42
42
-
43
-
44
43
## Common Deployment Patterns
45
44
46
45
stac-fastapi-elasticsearch-opensearch can be deployed in several ways depending on your needs:
@@ -72,6 +71,7 @@ This project is built on the following technologies: STAC, stac-fastapi, FastAPI
- This helps reduce payload size when only certain fields are needed
128
+
129
+
These extensions make it easier to build user interfaces that display and navigate through collections efficiently.
130
+
131
+
> **Note**: Sorting is only available on fields that are indexed for sorting in Elasticsearch/OpenSearch. With the default mappings, you can sort on:
132
+
> -`id` (keyword field)
133
+
> -`extent.temporal.interval` (date field)
134
+
> -`temporal` (alias to extent.temporal.interval)
135
+
>
136
+
> Text fields like `title` and `description` are not sortable by default as they use text analysis for better search capabilities. Attempting to sort on these fields will result in a user-friendly error message explaining which fields are sortable and how to make additional fields sortable by updating the mappings.
137
+
>
138
+
> **Important**: Adding keyword fields to make text fields sortable can significantly increase the index size, especially for large text fields. Consider the storage implications when deciding which fields to make sortable.
139
+
116
140
## Package Structure
117
141
118
142
This project is organized into several packages, each with a specific purpose:
0 commit comments