STAC ICD for PRIP v1.0 can be downloaded from this link.
STAC ICD for PRIP v1.1-RC1 includes corrections to address comments, and can be downloaded from this link (and the pdf version here)
Below table is available to collect the comments on version 1.0 of the document. Comments in green have led to somes changes in the document.
Id. | Author | Section/Page number | Title | Status (Open / Fixed / Closed) | Initial Comment | Discussion |
---|---|---|---|---|---|---|
1 | m-mohr | p. 7 | EOPF_SPECIFICATION | Fixed | Missing link, there's a <tbd> instead. | Link to EOPF STAC extension already listed in "Reference Documents and Resources". The "TBD" refers to EOPF specification. A Web link has been added for it. |
2 | CloudFerro | p. 21 | REQ-0050 | Fixed | timestamp precision should be defined to avoid differences between PRIP implementations | Proposal to keep the same precision as for CDSE (second or µs ?) REQ-0050 augmented in v1.1 (page 20) |
3 | CloudFerro | p. 25 | REQ-0085 | Closed | thumbnail size and resolution must be defined to create consistency between product types. if no thumbnail is generated by PS then this asset should be empty or removed. whatever is included in the products and does not fit the requirements should be listed as asset type (role) "preview" (overview) or similar. | See higher level document : STAC Requirements and Recommendations for EOF Services |
4 | CloudFerro | p. 25 | REQ-0090 | Closed | there are various media types within ZARR, so setting mime type of all objects to "application/vnd-zarr" may cause some strange behaviour of standard client libs | Zarr assets most of the time → one mime type only |
5 | CloudFerro | p. 28 | REQ-0207 | Fixed | it is not needed for PRIP to enable searching by any common attribute, limited subset will suffice. PRIP API is not for end-users and used only for systematic downloads | specify the set of queryables in tailored ICDs Added in v1.1 : add column "queryable" into "common attributes" table |
6. | CloudFerro | p. 29 | REQ-0305, REQ-0410 | Fixed | multipart uploads to object storage may affect the object checksum so in some cases it may be unreliable (TBC) with multipart upload single-part upload md5 != multipart-download md5 | It's up to client's implementation and should be adressed by "tailored ICD" Added in v1.1 (REQ-0410 & REQ-0305): Only single part upload supported in case of Zarr files |
7 | CloudFerro | p. 31 | REQ-0391 | Closed | no relation between accounts in central identity and s3 credentials make the management of access prone to errors and delays in provisioning of access. s3 credentials should be self-managed and reflect access roles (similar to CF S3 keys manager). | No known standard to include s3 credentials into IAM → out of scope of this ICD. It must be described by infrastructure provider. Should go into tailored ICDs |
8 | CloudFerro | p. 31 | REQ-0400 | Closed | regarding: " PRIP client point of view, retrieving an asset needs to: List all S3 objects sharing the prefix provided by the asset link, leveraging the ListObjectsV2 S3 operation "prefix listing is time consuming and might be expensive (and will raise the maintenance cost of the PRIP) for multiple requests and will affect timeliness. compressed product recommended. | Question already discussed with ESA, and submitted to its arbitration. Precision added in STAC-PRIP-API-REQ-0400 (use of .zmetadata file to discover the content) Final discussion: no needed changes for the moment (no checksum info in .zmetadata) |
9. | CloudFerro | STAC-PRIP-API-REQ-0210 | Closed | Access control to the STAC Catalogue is implemented at the (STAC ?) Collection level while CDSE manages it on the product_type level. How collection and product types will be joined ? | One collection corresponds to a unique product_type at PRIP level. | |
10. | CloudFerro | STAC-PRIP-API-REQ-0340 | Fixed | Quota Management expressed as n terra bytes per month <- what if a reprocessing campaign is published. Should every time the quota should be adjusted ? | Quota adjustement should be managed at operations level and arbitrated by ESA. Not to describe in the ICD Correction in 1.1 : Requirement on "Quota management" removed | |
11. | CloudFerro | Fixed | lack of requirement regarding the maximum allowable number of items returned from a STAC query | We propose to add an additional requirement on the maximum number of returned items as configurable, but not less than 100 items (lower limit). New requirement added in v1.1 : STAC-PRIP-API-REQ-0203 – STAC API limit parameter | ||
12. | CloudFerro | p. 22 | Closed | publication date - Timestamp of the availability of the current Item in the PRIP instance Catalogue. update date - If STAC Item properties have been updated, timestamp of the last update. Regarding the change of the modification date it is not clear if the LTA/CDSE should re-download the file. | Not to describe in the ICD For the moment, an existing product shouldn't be updated on PRIP | |
13 | CloudFerro | Open | File extension should be if the zipped/concatenated product is to be exposed. The file:size and file:checksum https://github.com/stac-extensions/file | Zarr item is provided in extended form (folders & sub-folders) → neither file extension nor checksum are relevant here Open point / to have discussion internally (ESA) : which concatenation format to require ? (zip or tar) no enforcing at prip level ? | ||
14 | CloudFerro | Section 3.4.3.4 | Downloading ZARR content | Closed | More info needed regarding "Note: It is assumed that the AWS CLI is configured with the expected S3 API endpoint and authentication credentials." | Should depend on the provider → not candidate for the ICD. rather provided in tailored ICD should S3 key for each downloading client (entity) Not ICD related |
15 | Cloudferro | Bulk download via a single zipped file without compressions. | Closed (related to 13) | Downloading multiple small zarr chunk files will generate huge overload regarding number of network requests and md5/checksums checks. | Maybe we could suggest to adapt chunks size for storage usage, in order to reduce the number of objects : better to have a concatenated file (see comment 13) | |
16 | DLR | 1.1, 2.1, 2.2, ff. | Abbreviations | Fixed | It is sufficient to explain abbreviations only once (e.g., STAC, PRIP, API). On the other hand, abbreviations must be explained at the first time they are mentioned in the text (e.g. EOF, EOPF, JSON). A list of abbreviations at the beginning of the document would also be helpful. | We will add a list of abbreviations at the beginning of the document. Table added in page 4 (v1.1) |
17 | DLR | 2.2/page 9 ff. | Small grammar corrections | Fixed | A PRIP instance manages product for a given Sentinel Mission. → A PRIP instance manages products for a given Sentinel mission. Compared to the formal PRIP ICD, current document does not currently address following PRIP functions: → Compared to the formal PRIP ICD, the current document does not address the following PRIP functions: The entire document should be thoroughly reviewed for grammar in general and uppercase and lowercase lettering more specifically. | Corrections included in v1.1 |
18 | DLR | STAC-PRIP-ITEM-REQ-0090 STAC Asset properties, page 25 | File extension .zarr in Local Folder path | Fixed | The example for the Local Folder path should include the .zarr file extension, since the <product_id> does not contain it. <product_id>.zarr/... | Corrections included in v1.1 |
19 | DLR | STAC-PRIP-ITEM-REQ-0100 STAC Asset href, page 26 | File extension .zarr in product path | Fixed | The <product_path> should include the .zarr file extension. <product_path>=<product_id>.zarr/<folder>/... | |
20 | DLR | STAC-PRIP-ITEM-REQ-0101 Bucket naming convention, page 26 | Example bucket names and path | Fixed | The bucket name in the text does not match the bucket name of the URLs in the table. Also, the URL of the 10m Band 2 of a S02MSIL2A product would be .../measurements/reflectance/r10m/b02. This also applies to various places in the Use case examples section, page 31 ff. | The bucket name in the table is : prip-sentinel-2-l2a Band 2 URL : Corrections included in v1.1 |
21 | DLR | 3.4.3.2/page 34 ff. | Assets and item_assets in examples | Fixed | Maybe leave out the assets and item_assets from the examples since they are not defined finally for the EOPF products? | It's about presenting the exemples : put ....... instead of asset products !! Need for Jolyon's arbitration Corrections included in v1.1:assets removed in examples |
22 | DLR | 3.4.3.3/page 36 | Example URL | Fixed | The example is referring to https://pgstac.demo.cloudferro.com/. Maybe use an anonymous URL like in the other examples. | Corrections included in v1.1 |
23 | DLR | 2.1/page 8 | On-demand processing | Fixed | The PRIP API specifies not only the access to newly published Sentinel data products, it also supports the on-demand processing of (user level) data products, as defined in the PRIP ICD ESA-EOPG-EOPGC-IF-3 section 2.1. "ODPRIP" is an extension of "PRIP" and its data structures and functions (section 4 of the PRIP ICD) should also be supported in the new STAC-based ICD. | The restricted scope of the document is described on page 9. It was agreed with Jolyon. Besides, is ODPRIP really used until now ? Discussion to have with Jolyon on how to implement processing API ? To make in a second step → put empty section (placeholder) in this version |
24 | Werum | STAC-PRIP-ITEM-REQ101 Bucket naming convention 3.3.3/page 26 | Bucket naming uniqueness | Fixed | Depending on the chosen cloud provider the naming of prip-<mission>-<productType> is not possible for multiple service providers. E.g. on several CloudFerro data centers and OVHcloud the bucket names need to be unique throughout the data center or across all data centers. (see https://docs.cloudferro.com/en/latest/s3/How-to-use-Object-Storage-on-CloudFerro-Cloud.html, https://help.ovhcloud.com/csm/en-ie-public-cloud-storage-s3-limitations?id=kb_article_view&sysparm_article=KB0047379) | To discuss during next STAC API Catchup (10 th February Change : prip-<provider>-<mission>-<productType> Corrections included in v1.1 (page 26) |
25 | Spacebel (YC) | §3.4.3.3 | Fixed | Two curl examples in this section should use Accept: application/geo+json instead of Accept: application/json. | Corrections included in v1.1 | |
26 | Spacebel (YC) | response on page 33 | Fixed | Example response contains two identical sections with http://www.opengis.net/def/rel/ogc/1.0/queryables. | Corrections included in v1.1 (pages 17 & 33) | |
27 | ADS | STAC-PRIP-API-REQ-0340 | Duplicate requirement identifier | Fixed | STAC-PRIP-API-REQ-0340 is defined two times for two distinct requirements | Corrections included in v1.1 (page 30) rename to STAC-PRIP-API-REQ-0345 – STAC compliance |
Add Comment