Skip to content

Commit

Permalink
Merge branch 'dev' into item-assets
Browse files Browse the repository at this point in the history
  • Loading branch information
m-mohr authored Jul 15, 2024
2 parents 4a3cc6d + 950bed9 commit 8080efc
Show file tree
Hide file tree
Showing 5 changed files with 39 additions and 1 deletion.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- The `license` field additionally supports SPDX expressions and the value `other`.
- The `roles` field known from Assets and Providers is available in common metadata. ([#1267](https://github.com/radiantearth/stac-spec/issues/1267))
- The `item_assets` field in Collections are integrated from extension into the core Collection spec. ([#1275](https://github.com/radiantearth/stac-spec/issues/1275))
- Validation for absolute self link in item schema. ([#1281](https://github.com/radiantearth/stac-spec/issues/1281))
- Best practice: Link titles should exactly reflect the title of the corresponding entity ([#1168](https://github.com/radiantearth/stac-spec/issues/1168))

### Changed
Expand Down
4 changes: 4 additions & 0 deletions collection-spec/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,7 @@ a collection and be able to adapt it to most any data model.

Implementors are encouraged to do what makes sense for them, and to check out the [examples](../examples/) and
[other implementations](https://stacindex.org/catalogs) for current best practices.
> \[!NOTE]
> In cases where a set of Collections is grouped together (e.g. for providing search results),
> the [CollectionCollection](https://github.com/radiantearth/stac-api-spec/blob/main/fragments/collectioncollection/README.md)
> object has been defined in the STAC API specification.
9 changes: 9 additions & 0 deletions item-spec/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,12 @@ schemas validate additional fields defined in *[Common Metadata](common-metadata

**Common Metadata:** A set of commonly-used fields for STAC Items is listed in
*[common-metadata.md](common-metadata.md)*.

> \[!NOTE]
> In cases where a set of Items is grouped together (e.g. for providing search results),
> the [ItemCollection](https://github.com/radiantearth/stac-api-spec/blob/main/fragments/itemcollection/README.md)
> object has been defined in the STAC API specification.
>
> Similarly to the relationship between a GeoJSON Feature and a STAC Item,
> a STAC ItemCollection should be a valid GeoJSON [FeatureCollection](https://tools.ietf.org/html/rfc7946#section-3.3)
> to allow interoperability with existing tools that support GeoJSON.
11 changes: 10 additions & 1 deletion item-spec/item-spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,15 @@ As detailed above, Items contain properties, which are the main source of metada
extensions can add further property fields as well. Any property that can be specified for an Item can also be specified for
a specific asset. This can be used to override a property defined in the Item, or to specify fields for which there is no
single value for all assets.
If a property is defined in the Item Properties, it is the default value for all assets in the Item.
If a property is defined in a Collection on the top-level, it is the default value for all assets in the Collection.
Assets may override the properties inherited for specific assets (see example below).
Inheritance does not apply across multiple files, i.e. is restricted to a single Item or Collection.
Note that in some cases the inheritance may not lead to the expected results if other semantics have been defined for the property.
See the examples for `gsd` and `eo:bands` below.
It also applies to some other fields such as `created` or `updated`.
Inheritance may be undesirable in these cases, e.g. the `created` attribute of an item would describe when the metadata
was generated, whereas on an asset the `created` attribute would describe when the data file itself was created.

**It is important to note that the STAC API does not facilitate searching across Asset properties in this way, and this
should be used sparingly.** It is primarily used to define properties at the Asset level that may be used during use of
Expand Down Expand Up @@ -326,7 +335,7 @@ that talks about common use cases of additional fields for assets.
## Media Type for STAC Item

A STAC Item is a GeoJSON file ([RFC 7946](https://tools.ietf.org/html/rfc7946)), and thus should use the
[`application/geo+json`](https://tools.ietf.org/html/rfc7946#section-12) as the [Media Type](https://en.wikipedia.org/wiki/Media_type)
[`application/geo+json`](https://tools.ietf.org/html/rfc7946#section-12) as the [Media Type](https://en.wikipedia.org/wiki/Media_type)
(previously known as the MIME Type).

## Extensions
Expand Down
15 changes: 15 additions & 0 deletions item-spec/json-schema/item.json
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,21 @@
"title": "Link title",
"type": "string"
}
},
"$comment": "Link with relationship `self` must be absolute URI",
"if": {
"properties": {
"rel": {
"const": "self"
}
}
},
"then": {
"properties": {
"href": {
"format": "iri"
}
}
}
},
{
Expand Down

0 comments on commit 8080efc

Please sign in to comment.