Problem
IntracellularRecordingsTable is an AlignedDynamicTable with three required category sub-tables (electrodes, stimuli,responses). It does not have any column requirements.
However, the colnames attribute is required from the hdmf-schemas DynamicTable.
https://github.com/hdmf-dev/hdmf-common-schema/blob/497bde378749d2e56a30a05d6851885f58e78f75/common/table.yaml#L116-L127
MatNWB currently enforces required attributes, and can therefore not export an NWB file without adding a custom column to the IntracellularRecordingsTable (if colnames is empty, nwbExport fails).
PyNWB allows exporting IntracellularRecordingsTable without any extra columns.
There are some options:
- colnames should have
required: False in DynamicTable
- colnames in
IntracellularRecordingsTable can can be overridden to have required: False
- patch MatNWB to allow empty
colnames if a table does not have any real column.
This is a schema inconsistency, so I lean towards 1 or 2.
@rly @oruebel
Problem
IntracellularRecordingsTableis anAlignedDynamicTablewith three required category sub-tables (electrodes,stimuli,responses). It does not have any column requirements.However, the
colnamesattribute is required from the hdmf-schemasDynamicTable.https://github.com/hdmf-dev/hdmf-common-schema/blob/497bde378749d2e56a30a05d6851885f58e78f75/common/table.yaml#L116-L127
MatNWB currently enforces required attributes, and can therefore not export an NWB file without adding a custom column to the IntracellularRecordingsTable (if
colnamesis empty,nwbExportfails).PyNWB allows exporting
IntracellularRecordingsTablewithout any extra columns.There are some options:
required: Falsein DynamicTableIntracellularRecordingsTablecan can be overridden to haverequired: Falsecolnamesif a table does not have any real column.This is a schema inconsistency, so I lean towards 1 or 2.
@rly @oruebel