Skip to content

Enhance documentation for STAC integration and Zarr asset access#130

Open
emmanuelmathot wants to merge 2 commits intomainfrom
zarr-store
Open

Enhance documentation for STAC integration and Zarr asset access#130
emmanuelmathot wants to merge 2 commits intomainfrom
zarr-store

Conversation

@emmanuelmathot
Copy link
Contributor

Update architecture and examples to clarify how STAC assets relate to Zarr stores, emphasizing direct access to Zarr groups and the importance of consolidated metadata. Include guidance on URL resolution and the role of the rel: store link.

Fixes #124

@m-mohr
Copy link

m-mohr commented Mar 10, 2026

Maybe add @ahocevar to the reviewers as the OpenLayers GeoZarr source options were the initial starting point for the reverse parsing.

Copy link
Collaborator

@ahocevar ahocevar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added two comments to improve confusing parts of this documentation.

This is also to be seen in the context of openlayers/openlayers#17378, which suggests removing the group option of the OpenLayers GeoZarr source, in favor of providing a url that points to the multiscales root.


```
✅ s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements/reflectance/r10m
❌ s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements.zarr/reflectance
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is confusing, because s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements/reflectance/r10m does not have consolidated metadata. I'd suggest changing to

Suggested change
s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements.zarr/reflectance
s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements/reflectance
❌ s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements.zarr/reflectance

Zarr is a **key/value store protocol**, not a file format. Crucially for clients, this means that **any Zarr group path is itself a valid store entry point**. A URL like:

```
s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements/reflectance/r10m
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is confusing in the context of multiscales. Clients that support multiscales should receive asset urls with the available multiscales below them:

s3://bucket/S2A_MSIL2A_20251008T100041.zarr/measurements/reflectance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document how to parse the URL with groups.

3 participants