is a container that holds any number of SpikeEventSeries to "label"/"tag" a SpikeEventSeries as waveforms of detected events, e.g., threshold crossings of raw AP-band voltage data in extracellular electrophysiology, which are often computed during spike sorting. However, according to the doc for SpikeEventSeries, there is no other use for SpikeEventSeries and there does not seem to be a need to have more than 1 SpikeEventSeries organized in a group. EventWaveform is also not documented on PyNWB or MatNWB, and is not used on DANDI (probably in large part because it is not documented).
Perhaps EventWaveform would be useful if a user wants to store the results of setting multiple thresholds, but 1) it requires a lot of disk space to store this, 2) it is uncommon to use even a single SpikeEventSeries in the first place, 3) it is not so bad to have multiple SpikeEventSeries in an ecephys ProcessingModule with different names, and 4) since NWB 2.0, this organization of multiple SpikeEventSeries into a group has not been requested or used.
Overall, I think EventWaveform does not have a strong use case in modern usage, so to remove cruft and maintenance costs, I propose we deprecate EventWaveform.
As discussed at the NWB meeting today. The
EventWaveform
neurodata typehttps://github.com/NeurodataWithoutBorders/nwb-schema/blob/dev/core/nwb.ecephys.yaml#L191-L200
is a container that holds any number of
SpikeEventSeries
to "label"/"tag" aSpikeEventSeries
as waveforms of detected events, e.g., threshold crossings of raw AP-band voltage data in extracellular electrophysiology, which are often computed during spike sorting. However, according to the doc forSpikeEventSeries
, there is no other use forSpikeEventSeries
and there does not seem to be a need to have more than 1SpikeEventSeries
organized in a group.EventWaveform
is also not documented on PyNWB or MatNWB, and is not used on DANDI (probably in large part because it is not documented).Perhaps
EventWaveform
would be useful if a user wants to store the results of setting multiple thresholds, but 1) it requires a lot of disk space to store this, 2) it is uncommon to use even a singleSpikeEventSeries
in the first place, 3) it is not so bad to have multipleSpikeEventSeries
in an ecephysProcessingModule
with different names, and 4) since NWB 2.0, this organization of multipleSpikeEventSeries
into a group has not been requested or used.Overall, I think
EventWaveform
does not have a strong use case in modern usage, so to remove cruft and maintenance costs, I propose we deprecateEventWaveform
.