Open yarikoptic opened 5 years ago
but the exception (KeyError: "'electrode_name' already exists as attributes in membrane_potential...
) had no hint on that
aha -- nwb-schema talks about /specifications/<namespace-name>/<version>/...
,
from glancing over that docs/storage/source/storage_hdf5.rst it is not 100% clear to me if that is a feature of NWB:N specifically or NWB in general, and when was it introduced?
Also the https://github.com/NeurodataWithoutBorders/pynwb/blob/dev/README.rst starts with "It provides a high-level API for efficiently working with Neurodata stored in the NWB format." - it seems not to limit to version of NWB 2.0 or above. If NWB prior 2.0 are not supposed to be supported, it should be clarified in the README.rst IMHO.
Unfortunately I am still learning NWB ecosystem so cannot really propose any definitive solution/PR here without guidance ;)
@yarikoptic can we take this over to slack? I'm happy to help you sort these issues out and open this file in pynwb. It looks like this file is in 2.0 after all, so not relevant to this issue.
@yarikoptic can we take this over to slack? I'm happy to help you sort these issues out and open this file in pynwb. It looks like this file is in 2.0 after all, so not relevant to this issue.
and we did (in jitsi), summary: me
nwb_version
field at the top level (so it could be used to decide to throw an informative exception, and @bendichter promising to propose a PR for this, while I add it to extracted metadata on dandi-cli side)
I think I have ran into the now closed https://github.com/NeurodataWithoutBorders/pynwb/issues/1051 while trying to read an example file from exp2nwb: https://github.com/NeurodataWithoutBorders/exp2nwb/blob/master/example/Example.nwb?raw=true
If that is the best way to determine that the file is NWB 1.0 not 2.0, please consider catching it around
h5tools.py", line 246, in read
and reraising a dedicated/descriptive exception. If there is a better way (I hope) then please add it that sensing even before even trying to load an incompatible .nwb file.