nwb-schema icon indicating copy to clipboard operation
nwb-schema copied to clipboard

Add CElegansSubject and species-specific Subject neurodata types

Open rly opened this issue 2 months ago • 0 comments

cc @dysprague @CodyCBakerPhD @bendichter

Some species have different requirements than others. For example, C Elegans sex is either XO or XX. @dysprague created the ndx-multichannel-volume extension that includes a CElegansSubject neurodata type with three fields: growth_stage_time, growth_stage, and cultivation_temp. growth_stage is required. This type is necessary because in the current Subject schema, if we were to add growth_stage it would have to be optional; we do not have a way to say formally that if species = "Caenorhabditis elegans", then growth_stage is required. It also helps tools like nwbinspector to do different best practices validation of sex and age based on species.

It feels strange to use the ndx-multichannel-volume extension just to use the CElegansSubject neurodata type, but that is workable. It would be better to have this type split off in its own extension or part of the core NWB schema.

Related: https://github.com/NeurodataWithoutBorders/nwbinspector/pull/353 https://github.com/dandi/dandi-schema/issues/171 https://github.com/NeurodataWithoutBorders/nwb-schema/issues/492

see especially @satra's comments on https://github.com/dandi/dandi-schema/issues/171#issuecomment-1494334484

For the C elegans subject, we could...

  1. extract CElegansSubject into its own extension and later consider integration into core
  2. propose integration of CElegansSubject into core as a NWB Enhancement Proposal
  3. integrate CElegansSubject into core without a NEP

I lean toward option 2. Thoughts? We can also consult the TAB.

Separately but relatedly, I can imagine humans, rodents, flies, and other animals having species-specific metadata as well. strain and genotype are not applicable to humans. age and date_of_birth are not really meaningful in flies and worms (I think). We saw someone wanting to store wean_time in rodents. Perhaps we should create species-specific Subject neurodata types.

rly avatar Apr 17 '24 04:04 rly