Skip to content

Commit 1e866ae

Browse files
committed
Align with OGC API - Records - Part 2: Collections
1 parent db59a9a commit 1e866ae

File tree

1 file changed

+41
-43
lines changed

1 file changed

+41
-43
lines changed

README.md

Lines changed: 41 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -2,96 +2,94 @@
22

33
- **OpenAPI specification:** [openapi.yaml](openapi.yaml) (todo)
44
- **Conformance URIs:**
5-
- <https://api.stacspec.org/v1.0.0-rc.1/collection-search>
65
- <https://api.stacspec.org/v1.0.0-rc.1/core>
6+
- <https://api.stacspec.org/v1.0.0-rc.1/collection-search>
7+
- <http://www.opengis.net/spec/ogcapi-common-2/1.0/req/simple-query>
78
- **[Maturity Classification](../README.md#maturity-classification):** Proposal
89
- **Dependencies**:
9-
- [STAC API - Collections](https://github.com/radiantearth/stac-api-spec/tree/main/ogcapi-features)
10-
- [STAC API - Core](https://github.com/radiantearth/stac-api-spec/blob/main/core)
10+
- [STAC API - Core](https://github.com/radiantearth/stac-api-spec/blob/main/core)
11+
- [STAC API - Collections](https://github.com/radiantearth/stac-api-spec/tree/main/ogcapi-features)
12+
- [OGC API - Common - Part 2: Geospatial Data](https://portal.ogc.org/files/99149)
13+
- [OGC API - Records - Part 2: Collections](https://github.com/opengeospatial/ogcapi-records/tree/master/extensions/collections)
1114

1215
A search endpoint provides the ability to query
1316
STAC [Collections](https://github.com/radiantearth/stac-spec/blob/master/collection-spec/README.md)
1417
objects across collections.
1518
It retrieves a group of Collection objects that match the provided parameters and provides them as
1619
the `GET /collections` endpoint does.
1720

18-
The Item Search endpoint intentionally defines only a limited group of operations. It is expected that
19-
most behavior will be defined in [Extensions](#extensions). These extensions can be composed by an implementer to
20-
cover only the set of functionality the implementer requires.
21-
22-
Implementing `GET /search/collections` is **required**, `POST /search/collections` is optional, but recommended.
23-
24-
## Link Relations
21+
The Collection Search endpoint by default doesn't provide any query parameters to filter and all
22+
additional behavior will be defined in [Extensions](#extensions). These extensions can be composed
23+
by an implementer to cover only the set of functionality the implementer requires.
2524

26-
This conformance class also requires implementation of the link relations in the STAC API - Core conformance class.
25+
This extension is based on *[OGC API - Common - Part 2: Geospatial Data](https://portal.ogc.org/files/99149#rc-simple-query-section)* and *[OGC API - Records - Part 2: Collections](https://github.com/opengeospatial/ogcapi-records/tree/master/extensions/collections)*
26+
and selectively implements a subset of their "requirements classes".
2727

28-
The following Link relations must exist in the Landing Page (root).
28+
All functionality is only defined for `GET /collections` in *OGC API - Records - Part 2: Collections*.
2929

30-
| **rel** | **href** | **Description** |
31-
| ------------------- | --------------------- | --------------------------- |
32-
| `collection-search` | `/search/collections` | URI for the Search endpoint |
30+
*Note:* STAC may add behavior for `POST /collections` in the future, but due to a potential conflict
31+
with the Transaction Extension, specific rules for content negotiation might be required.
3332

34-
This `collection-search` link relation must have a `type` of `application/json`. If no `method` attribute is
35-
specified, it is assumed to represent a GET request. If the server supports both GET and POST requests, two links should be included, one with a `method` of `GET` one with a `method` of `POST`.
33+
## Pagination
3634

37-
Other links with relation `collection-search` may be included that advertise other content types the server may respond
38-
with, but these other types are not part of the STAC API requirements.
35+
Pagination for collections works exactly as it defined for Collections in general.
36+
See [Collection Pagination](https://github.com/radiantearth/stac-api-spec/blob/main/ogcapi-features/README.md#collection-pagination)
37+
for details.
3938

4039
## Query Parameters and Fields
4140

4241
### Basics
4342

44-
A basic set of query parameters can be implemented based on
45-
[OGC API - Commons - Part 2](https://portal.ogc.org/files/99149#rc-simple-query-section):
43+
A basic set of query parameters MUST be implemented.
44+
These are aligned with the corresponding parameters in STAC API - Features:
4645
- `bbox`
4746
- `datetime`
4847
- `limit`
4948

50-
Conformance classes:
51-
- `http://www.opengis.net/spec/ogcapi-common-2/1.0/req/simple-query`
52-
- `https://api.stacspec.org/v1.0.0-rc.1/collection-search#simple`
49+
Requirement class in *OGC API - Common - Part 2: Geospatial Data*: [Simple Query](https://portal.ogc.org/files/99149#rc-simple-query-section)
5350

54-
These are basically the same as defined by OGC API - Features for Items.
51+
### Extensions
5552

56-
### Query (STACQL)
53+
#### Query (STACQL)
5754

5855
The query extension for STACQL support can be implemented, too. It works as it does for Items.
5956
See <https://github.com/stac-api-extensions/query> for details.
6057

61-
Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#query`
58+
- Requirement class in *OGC API - Records - Part 2: Collections*: n/a
59+
- Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#query`
6260

63-
### Filter (CQL)
61+
#### Filter (CQL)
6462

6563
The filter extension for CQL support can be implemented, too. It works as it does for Items.
6664
See <https://github.com/stac-api-extensions/filter> for details.
6765

68-
Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter`
66+
- Requirement class in *OGC API - Records - Part 2: Collections*: CQL Filter
67+
- Conformance classes:
68+
- `https://api.stacspec.org/v1.0.0-rc.1/collection-search#filter`
69+
- `http://www.opengis.net/spec/ogcapi-records-1/1.0/req/cql-filter`
6970

70-
### Pagination
71-
72-
Pagination works for Collections exactly as it works for Items.
73-
74-
Conformance class: None
75-
76-
### Sorting
71+
#### Sorting
7772

7873
The sort extension can be implemented, too. It works as it does for Items.
7974
See <https://github.com/stac-api-extensions/sort> for details.
8075

81-
Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#sort`
76+
- Requirement class in *OGC API - Records - Part 2: Collections*: Sorting
77+
- Conformance classes:
78+
- `https://api.stacspec.org/v1.0.0-rc.1/collection-search#sort`
79+
- `http://www.opengis.net/spec/ogcapi-records-1/1.0/req/sorting`
8280

83-
### Fields
81+
#### Fields
8482

8583
The fields extension can be implemented, too. It works as it does for Items.
8684
See <https://github.com/stac-api-extensions/fields> for details.
8785

88-
Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#fields`
86+
- Requirement class in *OGC API - Records - Part 2: Collections*: n/a
87+
- Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#fields`
8988

90-
### Context
89+
#### Context
9190

9291
The context extension can be implemented, too. It works as it does for Items.
9392
See <https://github.com/stac-api-extensions/context> for details.
9493

95-
Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#context`
96-
97-
These extensions provide additional functionality that enhances Item Search.
94+
- Requirement class in *OGC API - Records - Part 2: Collections*: n/a
95+
- Conformance class: `https://api.stacspec.org/v1.0.0-rc.1/collection-search#context`

0 commit comments

Comments
 (0)