Validate (.ome).zarr against ngff schema using ome-zarr-models-py
- Dominant language
- Python
- Stars
- 28
- Forks
- 37
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 9
Description
A part inspired from
- #1281
and current problem of presumably having LOTS of non-compliant zarrs in the archive:
- https://github.com/dandisets/000108/issues/14
For any .zarr we encounter we should
- check if it is actually an OME .zarr. I think we can do that by looking for `.omero` top level key in .zattrs
- NB if that is the best way was asked:
- https://github.com/ome/ngff/issues/228
For any OME .zarr (be either detected through above or having `.ome.zarr` extension), validate that zarr against the specified version (if no version -- validation error)
```shell
❯ jq '.omero.version' .zattrs
"0.4"
```
of schema as provided on https://github.com/ome/ngff under `{schema_version}/schemas/` folder in `.schema` json files and issue corresponding validation errors to the users trying to upload non-compliant OME .ngffs.
TODO:
- [ ] check with https://github.com/ome/ngff and https://github.com/ome-zarr-models/ome-zarr-models-py folks on either may be it is worth just converting their models from jsonschemas into linkml? please check on those pydantic models functioning of pydantic2linkml .
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.