@@ -49,7 +49,7 @@ fostering wider adoption and enabling advanced use cases in downstream applicati
4949 </tbody >
5050</table >
5151
52- Table: Interoperability requirements for data providers
52+ Interoperability requirements for data providers
5353:::
5454
5555:::{.callout-tip title="File Format Recommendations"}
@@ -95,3 +95,218 @@ EarthCODE and EOEPCA, to ensure consistency across projects and promote the adop
9595- [ STAC Best Practices] ( https://github.com/radiantearth/stac-best-practices/blob/main/README.md )
9696- [ EOEPCA+ Datacube Access Best Practices] ( https://github.com/EOEPCA/datacube-access/blob/main/best_practices/stac_best_practices.md )
9797- [ ESA PRR Collection Specifications] ( https://eoresults.esa.int/prr_collection_specifications.html )
98+
99+ :::{#tbl-metadata}
100+ <table class =" requirements " >
101+ <thead >
102+ <tr>
103+ <th>ID</th>
104+ <th>Scenario</th>
105+ <th>Level</th>
106+ <th>Requirement</th>
107+ <th>Description</th>
108+ </tr>
109+ </thead >
110+ <tbody >
111+ <tr>
112+ <td colspan="5"><b>General</b></td>
113+ </tr>
114+ <tr>
115+ <td>METADATA-REC-01</td>
116+ <td></td>
117+ <td>Collection / Item</td>
118+ <td>The STAC collection and items should use STAC 1.1 or higher.</td>
119+ <td></td>
120+ </tr>
121+ <tr>
122+ <td>METADATA-REC-02</td>
123+ <td></td>
124+ <td>Collection</td>
125+ <td>The STAC collection must follow the [ESA PRR collection specifications](https://eoresults.esa.int/prr_collection_specifications.html).</td>
126+ <td>This guarantees the collection is compatible for upload and registration in the ESA Project Results Repository.</td>
127+ </tr>
128+ <tr>
129+ <td>METADATA-REC-03</td>
130+ <td></td>
131+ <td>Collection / Item</td>
132+ <td>Collections must be homogeneous: each item has the same assets and uses the same asset keys.</td>
133+ <td>Consistent and homogeneous definition of assets simplifies client-side handling and supports datacube generation.</td>
134+ </tr>
135+ <tr>
136+ <td>METADATA-REC-04</td>
137+ <td></td>
138+ <td>Item</td>
139+ <td>Each item must have at least one asset where the role is set to *data*.</td>
140+ <td>This allows for accurate identification of assets containing the data.</td>
141+ </tr>
142+ <tr>
143+ <td>METADATA-REC-05</td>
144+ <td></td>
145+ <td>Item</td>
146+ <td>
147+ Each asset must include:
148+ <ul>
149+ <li>type</li>
150+ <li>role</li>
151+ <li>title</li>
152+ <li>file:size</li>
153+ </ul>
154+ Optionally properties:
155+ <ul>
156+ <li>file:checksum</li>
157+ </ul>
158+ </td>
159+ <td>These properties help tools and platforms accurately import the dataset. Furthermore, the *file* properties allow
160+ the ESA PRR to perform extra quality checks.</td>
161+ </tr>
162+ <tr>
163+ <td>METADATA-REC-06</td>
164+ <td>Data Visualisation</td>
165+ <td>Item</td>
166+ <td>
167+ <p>In the case of categorical datasets,
168+ <a href="https://github.com/stac-extensions/classification">classification extension</a> is recommended to identify
169+ the different classes used in the asset. </p>
170+ <p>For additional visualization support, it is recommend setting the *title* and *color_hint* properties to allow
171+ external tools, such as the [APEx Geospatial Explorer](../instantiation/geospatial_explorer.md) to properly visualise
172+ the data.</p>
173+ </td>
174+ <td>The classification extension supports the proper interpretation of categorical data that is included in the
175+ collection, item or asset.</td>
176+ </tr>
177+ <tr>
178+ <td>METADATA-REC-07</td>
179+ <td>Data Visualisation</td>
180+ <td>Item / Asset</td>
181+ <td>
182+ <p>To support the visualization of the dataset, the
183+ <a href="https://github.com/stac-extensions/render">render extension</a> is recommended.</p>
184+ <p>The render extension allows the definition of the following properties:</p>
185+ <ul>
186+ <li>rescale: 2 dimensions array of delimited Min,Max range per band. If not provided, the data will not be rescaled.</li>
187+ <li>Colormap: that must be applied for a raster band</li>
188+ </ul>
189+ </td>
190+ <td>The render extension supplies rendering tools, like the [APEx Geospatial Explorer](../instantiation/geospatial_explorer.md),
191+ with key data to auto-configure visualization settings, including rescaling and colour maps.</td>
192+ </tr>
193+ <tr>
194+ <td colspan="5"><b>Datacube Formats (netCDF, ZARR, ...)</b></td>
195+ </tr>
196+ <tr>
197+ <td>METADATA-REC-08</td>
198+ <td>Data Processing</td>
199+ <td>Collection / Item</td>
200+ <td>
201+ <p>The <a href="https://github.com/stac-extensions/datacube"></a>datacube extension (v2.x) should be used to
202+ properly describe the datacube:</p>
203+ <ul>
204+ <li>For a single variable: only use *cube:dimensions*</li>
205+ <li>For multiple variables: *cube:variables* and *cube:dimensions*. Each variable should be a separate datacube,
206+ no attempt should be made to combine variables automatically.</li>
207+ </ul>
208+ </td>
209+ <td>
210+ <p>The extension enables correct data parsing into a datacube by the platform or tool.</p>
211+ <p>A variable can be bands in EO data or meteorological variables like rain or temperature in meteorological data
212+ sets.</p>
213+ </td>
214+ </tr>
215+ <tr>
216+ <td colspan="5"><b>Raster Formats (COG)</b></td>
217+ </tr>
218+ <tr>
219+ <td>METADATA-REC-09</td>
220+ <td>Data Processing,Data Visualisation</td>
221+ <td>Item</td>
222+ <td>
223+ <p>The <a href="https://github.com/stac-extensions/projection">projection extension</a> must be used to identify
224+ the CRS, raster bounds and shape.</p>
225+ <p>At minimum the following must be defined:</p>
226+ <ul>
227+ <li>*proj:code*</li>
228+ <li>*proj:bbox*</li>
229+ <li>*proj:shape*</li>
230+ </ul>
231+ </td>
232+ <td>
233+ <p>The projection extension ensures that any tools accessing the data can accurately determine key raster
234+ properties without the performance overhead of inspecting the raster file.</p>
235+ <p>If the goal is to visualise your data through the [APEx Geospatial Explorer](../instantiation/geospatial_explorer.md),
236+ please consider the projections that are currently supported, as defined in [EXPLORER-REQ-07](./geospatial_explorer.qmd).</p>
237+ </td>
238+ </tr>
239+ <tr>
240+ <td>METADATA-REC-10</td>
241+ <td>Data Processing,Data Visualisation</td>
242+ <td>Item</td>
243+ <td>To incorporate a time dimension, the item must define a *datetime*, *start_datetime* and *end_datetime* at the
244+ item level. Both properties contain a single value using ISO8601 time intervals.</td>
245+ <td>
246+ <p>These properties enable tools to accurately identify the data's temporal dimension, simplifying search and
247+ filtering within the STAC collection.</p>
248+ <p>For temporal dimensions, it is recommended to maintain the original level of granularity; data should not be
249+ aggregated from daily records to a single label unless specifically instructed by the user or noted in the metadata.
250+ When combining data and overlap exists, the user must indicate the methodology unless indicated in the metadata.</p>
251+ </td>
252+ </tr>
253+ <tr>
254+ <td>METADATA-REC-11</td>
255+ <td>Data Processing,Data Visualisation</td>
256+ <td>Item</td>
257+ <td>
258+ <p>The <a href="https://github.com/radiantearth/stac-best-practices/blob/main/best-practices-asset-and-link.md#bands">*bands*</a>
259+ array must be used to identify band information in the raster, keep the order as identified in the array.</p>
260+ <ul>
261+ <li>Use the *name* property, if provided. Alternatively, use *eo:common_name*. As a last resort, use the array
262+ indices.</li>
263+ <li>Ensure homogeneous data types across bands, choosing the most precise one.</li>
264+ </ul>
265+ </td>
266+ <td></td>
267+ </tr>
268+ <tr>
269+ <td>METADATA-REC-12</td>
270+ <td></td>
271+ <td>Item</td>
272+ <td>For other dimensions, the datacube extension must be provided.</td>
273+ <td></td>
274+ </tr>
275+ <tr>
276+ <td>METADATA-REC-13</td>
277+ <td>Data Processing,Data Visualisation</td>
278+ <td>Item</td>
279+ <td>
280+ <p>The <a href="https://github.com/stac-extensions/raster">raster extension</a> must be used to accurately specify
281+ the following attributes associated with the raster file: </p>
282+ <ul>
283+ <li>*raster:spatial_resolution* (if multiple resolutions are provided in the item, otherwise specify it in the
284+ Item)</li>
285+ <li>*raster:scale*</li>
286+ <li>*raster:offset*</li>
287+ <li>*raster:nodata value*</li>
288+ </ul>
289+ </td>
290+ <td>The raster extension offers valuable information about the dataset, eliminating the need to directly access or
291+ analyse the data itself. For instance, when visualising, details like scale and offset can help convert raw values
292+ into real-world figures.</td>
293+ </tr>
294+ <tr>
295+ <td colspan="5"><b>Statistical Data (FlatGeobuff, GeoJSON)</b></td>
296+ </tr>
297+ <tr>
298+ <td>METADATA-REC-14</td>
299+ <td>Data Visualisation</td>
300+ <td>Item</td>
301+ <td>It is recommended that STAC records for statistics include a *datetime* property that matches the time stamp of
302+ the source data that the statistics are derived from. The description should also make reference to the boundary
303+ datasets (e.g. NUTS) that the statistics represent.</td>
304+ <td>This information offers clear insights into the statistical data and its applications and also assists in integrating
305+ this data into the [APEx Geospatial Explorer](../instantiation/geospatial_explorer.md).
306+ </td>
307+ </tr>
308+ </tbody >
309+ </table >
310+
311+ Metadata Recommendations
312+ :::
0 commit comments