Skip to content

Commit 9f866c0

Browse files
authored
Merge branch 'dev' into markdown
2 parents 6f57298 + 40dfb8b commit 9f866c0

File tree

8 files changed

+69
-25
lines changed

8 files changed

+69
-25
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
77

88
## [Unreleased]
99

10+
### Changed
11+
- The first extent in a Collection is always the overall extent, followed by more specific extents. ([#1064](https://github.com/radiantearth/stac-spec/issues/1064), [opengeospatial/ogcapi-features#520](https://github.com/opengeospatial/ogcapi-features/pull/520))
12+
1013
## [v1.0.0-rc.2] - 2021-03-30
1114

1215
### Changed
@@ -20,6 +23,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
2023

2124
### Fixed
2225

26+
- Examples
2327
- Collection Assets were specified as required (only in written text, not in JSON Schema), but that was incorrectly copied over from the former `collection-assets` extension. Collection Assets are not required.
2428
- Clarified that the values in summaries (both for ranges and sets of values) must follow the data type of the property they summarize. ([#1069](https://github.com/radiantearth/stac-spec/pull/1069))
2529

collection-spec/collection-spec.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,12 @@ The object describes the spatial extents of the Collection.
168168
| ------- | ------------ | -------------------------------------------------------------------- |
169169
| bbox | \[\[number]] | **REQUIRED.** Potential *spatial extents* covered by the Collection. |
170170

171-
**bbox**: Bounding Boxes of the assets represented by this Collection using either 2D or 3D geometries.
172-
Each outer array element can be a separate bounding box, but it is recommended to only use multiple bounding boxes
173-
if a union of them would then include a large uncovered area (e.g. the union of Germany and Chile).
171+
**bbox**: Each outer array element can be a separate spatial extent describing the bounding Boxes of the assets represented by this Collection using either 2D or 3D geometries.
172+
173+
The first bounding box always describes the overall spatial extent of the data. All subsequent bounding boxes can be
174+
used to provide a more precise description of the extent and identify clusters of data.
175+
Clients only interested in the overall spatial extent will only need to access the first item in each array.
176+
It is recommended to only use multiple bounding boxes if a union of them would then include a large uncovered area (e.g. the union of Germany and Chile).
174177

175178
The length of the inner array must be 2*n where n is the number of dimensions.
176179
The array contains all axes of the southwesterly most extent followed by all axes of the northeasterly most extent specified in
@@ -190,8 +193,12 @@ The object describes the temporal extents of the Collection.
190193
| -------- | ------------------ | --------------------------------------------------------------------- |
191194
| interval | \[\[string\|null]] | **REQUIRED.** Potential *temporal extents* covered by the Collection. |
192195

193-
**interval**: Each outer array element can be a separate temporal extent, but it is recommended to only use multiple temporal extents
194-
if a union of them would then include a large uncovered time span (e.g. only having data for the years 2000, 2010 and 2020).
196+
**interval**: Each outer array element can be a separate temporal extent.
197+
The first time interval always describes the overall temporal extent of the data. All subsequent time intervals
198+
can be used to provide a more precise description of the extent and identify clusters of data.
199+
Clients only interested in the overall extent will only need to access the first item in each array.
200+
It is recommended to only use multiple temporal extents if a union of them would then include a large
201+
uncovered time span (e.g. only having data for the years 2000, 2010 and 2020).
195202

196203
Each inner array consists of exactly two dates and times.
197204
Each date and time MUST be formatted according to [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6).

examples/catalog.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@
2121
"type": "application/json",
2222
"title": "Collection with no items (standalone)"
2323
},
24+
{
25+
"rel": "item",
26+
"href": "./collectionless-item.json",
27+
"type": "application/json",
28+
"title": "Collection with no items (standalone)"
29+
},
2430
{
2531
"rel": "self",
2632
"href": "https://raw.githubusercontent.com/radiantearth/stac-spec/v1.0.0-rc.2/examples/catalog.json",

examples/collectionless-item.json

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -71,22 +71,15 @@
7171
"cs:sat_id": "CS3",
7272
"cs:product_level": "LV1B"
7373
},
74-
"collection": "CS3",
7574
"links": [
76-
{
77-
"rel": "collection",
78-
"href": "./collection.json",
79-
"type": "application/json",
80-
"title": "Simple Example Collection"
81-
},
8275
{
8376
"rel": "root",
84-
"href": "./collection.json",
77+
"href": "./catalog.json",
8578
"type": "application/json"
8679
},
8780
{
88-
"rel": "root",
89-
"href": "./collection.json",
81+
"rel": "parent",
82+
"href": "./catalog.json",
9083
"type": "application/json"
9184
},
9285
{

examples/extensions-collection/proj-example/proj-example.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,11 @@
219219
"rel": "parent",
220220
"href": "../collection.json",
221221
"type": "application/json"
222+
},
223+
{
224+
"rel": "collection",
225+
"href": "../collection.json",
226+
"type": "application/json"
222227
}
223228
],
224229
"assets": {
@@ -242,7 +247,6 @@
242247
"eo:bands": [
243248
{
244249
"name": "B8",
245-
"common_name": "panchromatic",
246250
"center_wavelength": 0.59,
247251
"full_width_half_max": 0.18
248252
}

item-spec/item-spec.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ inherited from GeoJSON.
6363
| properties | [Properties Object](#properties-object) | **REQUIRED.** A dictionary of additional metadata for the Item. |
6464
| links | \[[Link Object](#link-object)] | **REQUIRED.** List of link objects to resources and related URLs. A link with the `rel` set to `self` is strongly recommended. |
6565
| assets | Map<string, [Asset Object](#asset-object)> | **REQUIRED.** Dictionary of asset objects that can be downloaded, each with a unique key. |
66-
| collection | string | The `id` of the STAC Collection this Item references to (see [`collection` relation type](#relation-types)). This field is *required* if such a relation type is present. This field provides an easy way for a user to search for any Items that belong in a specified Collection. Must be a non-empty string. |
66+
| collection | string | The `id` of the STAC Collection this Item references to (see [`collection` relation type](#relation-types)). This field is *required* if such a relation type is present and is *not allowed* otherwise. This field provides an easy way for a user to search for any Items that belong in a specified Collection. Must be a non-empty string. |
6767

6868
### Additional Field Information
6969

@@ -195,7 +195,7 @@ This happens where there is not a clear official option, or where STAC uses an o
195195
| self | STRONGLY RECOMMENDED. *Absolute* URL to the Item if it is available at a public URL. This is particularly useful when in a download package that includes metadata, so that the downstream user can know where the data has come from. |
196196
| root | URL to the root STAC Catalog or Collection. |
197197
| parent | URL to the parent STAC Catalog or Collection. |
198-
| collection | STRONGLY RECOMMENDED. URL to a Collection. *Absolute* URLs should be used whenever possible. The referenced Collection is STRONGLY RECOMMENDED to implement the same STAC version as the Item. |
198+
| collection | STRONGLY RECOMMENDED. URL to a Collection. *Absolute* URLs should be used whenever possible. The referenced Collection is STRONGLY RECOMMENDED to implement the same STAC version as the Item. A link with this `rel` type is *required* if the `collection` field in properties is present. |
199199
| derived_from | URL to a STAC Item that was used as input data in the creation of this Item. |
200200

201201
A more complete list of potential `rel` types and their meaning in STAC can be found in the [Using Relation

item-spec/json-schema/item.json

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -159,12 +159,42 @@
159159
]
160160
}
161161
]
162-
},
163-
"collection": {
164-
"title": "Collection ID",
165-
"description": "The ID of the STAC Collection this Item references to.",
166-
"type": "string",
167-
"minLength": 1
162+
}
163+
},
164+
"if": {
165+
"properties": {
166+
"links": {
167+
"contains": {
168+
"required": [
169+
"rel"
170+
],
171+
"properties": {
172+
"rel": {
173+
"const": "collection"
174+
}
175+
}
176+
}
177+
}
178+
}
179+
},
180+
"then": {
181+
"required": [
182+
"collection"
183+
],
184+
"properties": {
185+
"collection": {
186+
"title": "Collection ID",
187+
"description": "The ID of the STAC Collection this Item references to.",
188+
"type": "string",
189+
"minLength": 1
190+
}
191+
}
192+
},
193+
"else": {
194+
"properties": {
195+
"collection": {
196+
"not": {}
197+
}
168198
}
169199
}
170200
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,6 @@
2121
"remark-preset-lint-markdown-style-guide": "^3.0.0",
2222
"remark-preset-lint-recommended": "^4.0.0",
2323
"remark-validate-links": "^10.0.0",
24-
"stac-node-validator": "^0.4.6"
24+
"stac-node-validator": "^1.0.1"
2525
}
2626
}

0 commit comments

Comments
 (0)