-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OME-XML equivalent data #27
Comments
Hey Lee! Good to hear from you. Short answer is capturing all the content of the OME-XML model in the Zarr (though likely in JSON rather than XML) is definitely on the roadmap. And it'd be wonderful to have your input & help. Don't know if you've seen it yet under the https://forum.image.sc/t/next-call-on-next-gen-bioimaging-data-tools-feb-23/48386/4 All the best, |
So this issue has come up again recently with the interest from the aicsimageio team (cc: @jacksonmaxfield) of starting to consume the The discussion talked through a number of options: 1.) Dump METADATA.xml file in root of zarr store. Pros: simple / currently implemented, Cons: Not a part of zarr data-model
2.) Add METADATA.xml to root .zattrs. Pros: simple / fits zarr's data-model, Cons: Increases the size of .zattrs, might not be desirable if not a common access pattern.
3.) Add customOME group to zarr root with XML in attrs. Pros: fit's zarr's data model, doesn't bloat root attrs. Cons: slightly more complicated, writes two files (OME/.zattrs, OME/.zgroup)
4a.) Add array to zarr root with XML. Pros: scales to handle large files, attributes can be added to the array Cons: encoding issues, writes two files (OME/.zattrs, OME/.zgroup)
4b.) Add array to a root zarr group. Pros: same plus other arrays can be in the same location, Cons: even one more file
(Thanks to @jacksonmaxfield and @manzt for driving the definition of the above.) Update: to be clear, likely whatever mechanism is chosen here will be used for other |
Wanted to chime in with my opinion copied over from zulip: Ranked choice of proposed options (most preferred to least preffered):
Haven't placed Option 5 as I assume we will likely discuss it in next zarr devs meeting. |
I have the same rankings as Jackson. With regard to Option 5, I kind of think the I'll try to jump on the next zarr dev call :) |
For the BIDS spec one thing that's being discussed is a hierarchy with inheritance. The root might have things that are in common, like the microscopy setup part of the OME-XML (or OME-JSON to be) and sample information. As you went up the tree, to volumes and such, those would get the details of the particular acquisition such as stage position, staining conditions. For BIDS, what we've discussed is it being up to the researcher at what level to put a particular piece of information and an inheritance rule for aggregating everything. Something like:
My votes for the above would be 4a, then 2. Offhand I'd expect the computational and space considerations of duplicating and parsing the metadata to be much less than computing on the data itself. It would be computationally inexpensive (but with possible synchronization issues) to download the JSON into a database and compute on it there. 4a has the flaw, though, of the same key in two places, inadvertently with different values. |
Copying an update from zarr-developers/zarr-specs#112 that the most likely interpretation of additional files will would enable under Option 1. |
Note: a related conversation is ongoing under "NCZarr - Netcdf Support for Zarr" (zarr-developers/zarr-specs#41), especially relevant regarding situations where we might want to join together two or more specs (here, OME & BIDS; there, xarray & NetCDF) |
This issue has been mentioned on Image.sc Forum. There might be relevant details there: https://forum.image.sc/t/issue-with-opening-zarr-inside-napari/56089/12 |
see also: #104 |
Hi all, first, thanks for starting this project - we are considering NGFF / Zarr 3.0 for large 3D multichannel datasets of light-sheet microscopy brain data.
I'm wondering if there is any plan to capture OME-XML data in the Zarr attribute hierarchy, in particular the microscopy data such as Instrument. I'd be happy to participate in the discussion and formulation of this extension.
--Lee
The text was updated successfully, but these errors were encountered: