@@ -79,18 +79,26 @@ This default is so that the entity returned is a valid STAC Item.
7979Implementations may choose to include other properties, e.g., ` properties.created ` , but the number
8080of default properties attributes should be kept to a minimum.
81812 . If only ` include ` is specified, these attributes should be the only attributes included.
82- 3 . If only ` exclude ` is specified, these attributes should be subtracted from the full item.
83- This may result in an entity that is not a valid STAC Item.
82+ If additional fields are provided beyond those in the ` include ` list, the number and size of
83+ these attributes should be kept to a minimum.
84+ 3 . If only ` exclude ` is specified, these attributes fields should not be
85+ included in the response Item object, but every other fields available for the
86+ Item should be included.`
84874 . If ` exclude ` is specified and ` include ` is null or an empty
8588array, then the ` exclude ` attributes should be excluded from the default set.
86- This may result in an entity that is not a valid STAC Item.
87- 5 . If a key is in ` exclude ` , and a sub-key is in ` include ` , the sub-key should be included, but no other fields
88- in the key should be included. For example, if ` properties ` is excluded and ` properties.datetime ` is included, then ` datetime `
89- should be the only attribute in ` properties ` .
90- 6 . If a key is in ` include ` , and a sub-key is in ` exclude ` , the key should be included, and the sub-key should be excluded.
91- For example, if ` properties ` is included and ` properties.datetime ` is excluded, then ` datetime `
92- should not be in ` properties ` .
93- 7 . If the same attribute is present in both ` include ` and ` exclude ` , it should be included.
89+ 5 . For nested attributes (e.g. ` properites.datetime ` ), the most specific path
90+ should be honored first, and ` include ` should be preferred over ` exclude ` . For
91+ example:
92+ 1. If a field is in ` exclude ` , and a nested attribute of that field is in
93+ ` include ` , the nested attribute should be included, but no other nested
94+ attributes in the field should be included. For example, if ` properties ` is
95+ excluded and ` properties.datetime ` is included, then ` datetime `
96+ should be the only nested attribute in ` properties ` .
97+ 2. If a field is in ` include ` , and a nested attribute is in ` exclude ` , the field
98+ should be included, and the nested attribute should be excluded. For example,
99+ if ` properties ` is included and ` properties.datetime ` is excluded, then
100+ ` datetime ` should not be in ` properties ` .
101+ 6 . If the same field is present in both ` include ` and ` exclude ` , it should be included.
94102
95103## Examples
96104
138146}
139147```
140148
141- Exclude ` geometry ` from the full item. This ** must ** return an entity that is not a valid GeoJSON Feature or a valid STAC Item.
149+ Exclude ` geometry ` from the full item. This will return an entity that is not a valid GeoJSON Feature or a valid STAC Item.
142150
143151Query Parameters
144152
159167```
160168
161169Return the ` id ` , ` type ` , ` geometry ` , and the Properties attribute ` eo:cloud_cover ` .
162- This might not return a valid STAC Item, since not all required Item attributes are included.
170+ This is not guaranteed not return a valid STAC Item, since not all required Item
171+ attributes are included, but an implementor may choose to return a valid STAC
172+ item anyways.
163173
164174Query Parameters
165175
0 commit comments