1. ndx-photometry

Version alpha Jun 15, 2021

1.1. Format Overview

1.1.1. ndx-photometry

  • Description: extension for fiber photometry data

  • Name: ndx-photometry

  • Version: 0.1.0

  • Authors:
    • Akshay Jaggi

  • Contacts:
  • Schema:
    • namespace: core

    • neurodata_types: [‘TimeSeries’, ‘NWBDataInterface’, ‘NWBContainer’, ‘RoiResponseSeries’, ‘LabMetaData’]

    • namespace: hdmf-common

    • neurodata_types: [‘DynamicTable’, ‘DynamicTableRegion’, ‘VectorData’, ‘VectorIndex’, ‘Data’, ‘ElementIdentifiers’]

    • source: ndx-photometry.extensions.yaml

1.2. Type Specifications

1.2.1. ndx-photometry.extensions.yaml

1.2.1.1. FibersTable

Overview: Extends DynamicTable to hold various Fibers

FibersTable extends DynamicTable and includes all elements of DynamicTable with the following additions or changes.

  • Extends: DynamicTable

  • Primitive Type: Group

  • Name: fibers

  • Inherits from: DynamicTable, Container

  • Source filename: ndx-photometry.extensions.yaml

  • Source Specification: see Section 1.3.2.1

FibersTable
Table 1.1 Datasets, Links, and Attributes contained in <FibersTable>

Id

Type

Description

fibers

Group

Top level Group for fibers

  • Neurodata Type: FibersTable

  • Extends: DynamicTable

  • Name: fibers

.location

Dataset

location of fiber

  • Extends: VectorData

  • Data Type: text

  • Shape: [None]

  • Name: location

.excitation_source

Dataset

references rows of ExcitationSourcesTable

  • Extends: DynamicTableRegion

  • Data Type: int

  • Shape: [None]

  • Name: excitation_source

.photodetector

Dataset

references rows of PhotodetectorsTable

  • Extends: DynamicTableRegion

  • Data Type: int

  • Shape: [None]

  • Name: photodetector

.fluorophores

Dataset

references rows of FluorophoresTable

  • Extends: DynamicTableRegion

  • Shape: [None]

  • Name: fluorophores

.notes

Dataset

description of fiber

  • Extends: VectorData

  • Data Type: text

  • Shape: [None]

  • Name: notes

.fiber_model_number

Dataset

fiber model number

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Shape: [None]

  • Name: fiber_model_number

.dichroic_model_number

Dataset

dichroic model number

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Shape: [None]

  • Name: dichroic_model_number

1.2.1.2. PhotodetectorsTable

Overview: Extends DynamicTable to hold various Photodetectors

PhotodetectorsTable extends DynamicTable and includes all elements of DynamicTable with the following additions or changes.

  • Extends: DynamicTable

  • Primitive Type: Group

  • Name: photodetectors

  • Inherits from: DynamicTable, Container

  • Source filename: ndx-photometry.extensions.yaml

  • Source Specification: see Section 1.3.2.2

PhotodetectorsTable
Table 1.2 Datasets, Links, and Attributes contained in <PhotodetectorsTable>

Id

Type

Description

photodetectors

Group

Top level Group for photodetectors

.peak_wavelength

Dataset

peak wavelength of photodetector

  • Extends: VectorData

  • Data Type: float

  • Shape: [None]

  • Name: peak_wavelength

..unit

Attribute

wavelength unit

  • Data Type: text

  • Value: nanometers

  • Name: unit

.type

Dataset

“PMT” or “photodiode”

  • Extends: VectorData

  • Data Type: text

  • Shape: [None]

  • Name: type

.gain

Dataset

gain on the photodetector

  • Extends: VectorData

  • Data Type: float

  • Shape: [None]

  • Name: gain

.model_number

Dataset

model number of the photodetector

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Shape: [None]

  • Name: model_number

1.2.1.3. ExcitationSourcesTable

Overview: Extends DynamicTable to hold various Excitation Sources

ExcitationSourcesTable extends DynamicTable and includes all elements of DynamicTable with the following additions or changes.

  • Extends: DynamicTable

  • Primitive Type: Group

  • Name: excitation_sources

  • Inherits from: DynamicTable, Container

  • Source filename: ndx-photometry.extensions.yaml

  • Source Specification: see Section 1.3.2.3

ExcitationSourcesTable
Table 1.3 Datasets, Links, and Attributes contained in <ExcitationSourcesTable>

Id

Type

Description

excitation_sources

Group

Top level Group for excitation_sources

.peak_wavelength

Dataset

peak wavelength of the excitation source

  • Extends: VectorData

  • Data Type: float

  • Shape: [None]

  • Name: peak_wavelength

..unit

Attribute

wavelength unit

  • Data Type: text

  • Value: nanometers

  • Name: unit

.source_type

Dataset

“LED” or “laser”

  • Extends: VectorData

  • Data Type: text

  • Shape: [None]

  • Name: source_type

.commanded_voltage

Dataset

references CommandedVoltageSeries

  • Extends: VectorData

  • Data Type: object reference to CommandedVoltageSeries

  • Shape: [None]

  • Name: commanded_voltage

.output

Dataset

excitation output, references TimeSeries

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: float

  • Shape: [None]

  • Name: output

.model_number

Dataset

model number of the excitation source

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Shape: [None]

  • Name: model_number

1.2.1.4. CommandedVoltageSeries

Overview: Extends TimeSeries to hold a Commanded Voltage

CommandedVoltageSeries extends TimeSeries and includes all elements of TimeSeries with the following additions or changes.

CommandedVoltageSeries
Table 1.4 Datasets, Links, and Attributes contained in <CommandedVoltageSeries>

Id

Type

Description

<CommandedVoltageSeries>

Group

Top level Group for <CommandedVoltageSeries>

.data

Dataset

voltages (length number timesteps) in unit volts

  • Data Type: float

  • Shape: [None]

  • Name: data

..unit

Attribute

data unit

  • Data Type: text

  • Value: volts

  • Name: unit

.frequency

Dataset

voltage frequency in unit hertz

  • Data Type: float

  • Name: frequency

..unit

Attribute

frequency unit

  • Data Type: text

  • Value: hertz

  • Name: unit

.power

Dataset

voltage power in unit volts

  • Data Type: float

  • Name: power

..unit

Attribute

power unit

  • Data Type: text

  • Value: volts

  • Name: unit

1.2.1.5. DeconvolvedRoiResponseSeries

Overview: Extends RoiResponseSeries to hold deconvolved data

DeconvolvedRoiResponseSeries extends RoiResponseSeries and includes all elements of RoiResponseSeries with the following additions or changes.

DeconvolvedRoiResponseSeries
Table 1.5 Datasets, Links, and Attributes contained in <DeconvolvedRoiResponseSeries>

Id

Type

Description

<DeconvolvedRoiResponseSeries>

Group

Top level Group for <DeconvolvedRoiResponseSeries>

.deconvolution_filter

Dataset

description of deconvolution filter used

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Name: deconvolution_filter

.downsampling_filter

Dataset

description of downsampling filter used

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Name: downsampling_filter

.raw

Link

ref to roi response series

Table 1.6 Groups contained in <DeconvolvedRoiResponseSeries>

Id

Type

Description

<DeconvolvedRoiResponseSeries>

Group

Top level Group for <DeconvolvedRoiResponseSeries>

.raw

Link

ref to roi response series

1.2.1.6. MultiCommandedVoltage

Overview: holds CommandedVoltageSeries objects

MultiCommandedVoltage extends NWBDataInterface and includes all elements of NWBDataInterface with the following additions or changes.

Table 1.7 Groups contained in <MultiCommandedVoltage>

Id

Type

Description

commanded_voltages

Group

Top level Group for commanded_voltages

.<CommandedVoltageSeries>

Group

commanded voltage series

1.2.1.6.1. Groups: <CommandedVoltageSeries>

commanded voltage series

1.2.1.7. FiberPhotometry

Overview: all Fiber Photometry metadata

FiberPhotometry extends LabMetaData and includes all elements of LabMetaData with the following additions or changes.

FiberPhotometry
Table 1.8 Groups contained in <FiberPhotometry>

Id

Type

Description

fiber_photometry

Group

Top level Group for fiber_photometry

.fibers

Group

table of fibers used

.excitation_sources

Group

table of excitation sources used

.photodetectors

Group

table of photodetectors used

.fluorophores

Group

table of fluorophores used

.commanded_voltages

Group

multiple commanded voltage container

1.2.1.7.1. Groups: fibers

table of fibers used

1.2.1.7.2. Groups: excitation_sources

table of excitation sources used

1.2.1.7.3. Groups: photodetectors

table of photodetectors used

1.2.1.7.4. Groups: fluorophores

table of fluorophores used

1.2.1.7.5. Groups: commanded_voltages

multiple commanded voltage container

1.2.1.8. FluorophoresTable

Overview: Extends DynamicTable to hold various Fluorophores

FluorophoresTable extends DynamicTable and includes all elements of DynamicTable with the following additions or changes.

  • Extends: DynamicTable

  • Primitive Type: Group

  • Name: fluorophores

  • Inherits from: DynamicTable, Container

  • Source filename: ndx-photometry.extensions.yaml

  • Source Specification: see Section 1.3.2.8

FluorophoresTable
Table 1.9 Datasets, Links, and Attributes contained in <FluorophoresTable>

Id

Type

Description

fluorophores

Group

Top level Group for fluorophores

.label

Dataset

name of fluorophore

  • Extends: VectorData

  • Data Type: text

  • Shape: [None]

  • Name: label

.location

Dataset

injection brain region name

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: text

  • Shape: [None]

  • Name: location

.coordinates

Dataset

injection taxonomical coordinates in (AP, ML, Z) in mm relative to Bregma

  • Extends: VectorData

  • Quantity: 0 or 1

  • Data Type: float

  • Shape: [None, 3]

  • Name: coordinates

1.3. Schema Sources

Source Specification: see Section 1.3.1

1.3.1. ndx-photometry

Description: see Section 1.1.1

YAML Specification:

 1author:
 2- Akshay Jaggi
 3contact:
 4- akshay.x.jaggi@gmail.com
 5doc: extension for fiber photometry data
 6name: ndx-photometry
 7schema:
 8- namespace: core
 9  neurodata_types:
10  - TimeSeries
11  - NWBDataInterface
12  - NWBContainer
13  - RoiResponseSeries
14  - LabMetaData
15- namespace: hdmf-common
16  neurodata_types:
17  - DynamicTable
18  - DynamicTableRegion
19  - VectorData
20  - VectorIndex
21  - Data
22  - ElementIdentifiers
23- source: ndx-photometry.extensions.yaml
24version: 0.1.0

1.3.2. ndx-photometry.extensions.yaml

1.3.2.1. FibersTable

Extends: DynamicTable

Description: see Section 1.2.1.1

YAML Specification:

 1datasets:
 2- doc: location of fiber
 3  dtype: text
 4  name: location
 5  neurodata_type_inc: VectorData
 6  shape:
 7  - null
 8- doc: references rows of ExcitationSourcesTable
 9  dtype: int
10  name: excitation_source
11  neurodata_type_inc: DynamicTableRegion
12  shape:
13  - null
14- doc: references rows of PhotodetectorsTable
15  dtype: int
16  name: photodetector
17  neurodata_type_inc: DynamicTableRegion
18  shape:
19  - null
20- doc: references rows of FluorophoresTable
21  name: fluorophores
22  neurodata_type_inc: DynamicTableRegion
23  shape:
24  - null
25- doc: description of fiber
26  dtype: text
27  name: notes
28  neurodata_type_inc: VectorData
29  shape:
30  - null
31- doc: fiber model number
32  dtype: text
33  name: fiber_model_number
34  neurodata_type_inc: VectorData
35  quantity: '?'
36  shape:
37  - null
38- doc: dichroic model number
39  dtype: text
40  name: dichroic_model_number
41  neurodata_type_inc: VectorData
42  quantity: '?'
43  shape:
44  - null
45doc: Extends DynamicTable to hold various Fibers
46name: fibers
47neurodata_type_def: FibersTable
48neurodata_type_inc: DynamicTable

1.3.2.2. PhotodetectorsTable

Extends: DynamicTable

Description: see Section 1.2.1.2

YAML Specification:

 1datasets:
 2- attributes:
 3  - doc: wavelength unit
 4    dtype: text
 5    name: unit
 6    value: nanometers
 7  doc: peak wavelength of photodetector
 8  dtype: float
 9  name: peak_wavelength
10  neurodata_type_inc: VectorData
11  shape:
12  - null
13- doc: '"PMT" or "photodiode"'
14  dtype: text
15  name: type
16  neurodata_type_inc: VectorData
17  shape:
18  - null
19- doc: gain on the photodetector
20  dtype: float
21  name: gain
22  neurodata_type_inc: VectorData
23  shape:
24  - null
25- doc: model number of the photodetector
26  dtype: text
27  name: model_number
28  neurodata_type_inc: VectorData
29  quantity: '?'
30  shape:
31  - null
32doc: Extends DynamicTable to hold various Photodetectors
33name: photodetectors
34neurodata_type_def: PhotodetectorsTable
35neurodata_type_inc: DynamicTable

1.3.2.3. ExcitationSourcesTable

Extends: DynamicTable

Description: see Section 1.2.1.3

YAML Specification:

 1datasets:
 2- attributes:
 3  - doc: wavelength unit
 4    dtype: text
 5    name: unit
 6    value: nanometers
 7  doc: peak wavelength of the excitation source
 8  dtype: float
 9  name: peak_wavelength
10  neurodata_type_inc: VectorData
11  shape:
12  - null
13- doc: '"LED" or "laser"'
14  dtype: text
15  name: source_type
16  neurodata_type_inc: VectorData
17  shape:
18  - null
19- doc: references CommandedVoltageSeries
20  dtype:
21    reftype: object
22    target_type: CommandedVoltageSeries
23  name: commanded_voltage
24  neurodata_type_inc: VectorData
25  shape:
26  - null
27- doc: excitation output, references TimeSeries
28  dtype: float
29  name: output
30  neurodata_type_inc: VectorData
31  quantity: '?'
32  shape:
33  - null
34- doc: model number of the excitation source
35  dtype: text
36  name: model_number
37  neurodata_type_inc: VectorData
38  quantity: '?'
39  shape:
40  - null
41doc: Extends DynamicTable to hold various Excitation Sources
42name: excitation_sources
43neurodata_type_def: ExcitationSourcesTable
44neurodata_type_inc: DynamicTable

1.3.2.4. CommandedVoltageSeries

Extends: TimeSeries

Description: see Section 1.2.1.4

YAML Specification:

 1datasets:
 2- attributes:
 3  - doc: data unit
 4    dtype: text
 5    name: unit
 6    value: volts
 7  doc: voltages (length number timesteps) in unit volts
 8  dtype: float
 9  name: data
10  shape:
11  - null
12- attributes:
13  - doc: frequency unit
14    dtype: text
15    name: unit
16    value: hertz
17  doc: voltage frequency in unit hertz
18  dtype: float
19  name: frequency
20- attributes:
21  - doc: power unit
22    dtype: text
23    name: unit
24    value: volts
25  doc: voltage power in unit volts
26  dtype: float
27  name: power
28doc: Extends TimeSeries to hold a Commanded Voltage
29neurodata_type_def: CommandedVoltageSeries
30neurodata_type_inc: TimeSeries

1.3.2.5. DeconvolvedRoiResponseSeries

Extends: RoiResponseSeries

Description: see Section 1.2.1.5

YAML Specification:

 1datasets:
 2- doc: description of deconvolution filter used
 3  dtype: text
 4  name: deconvolution_filter
 5  neurodata_type_inc: VectorData
 6  quantity: '?'
 7- doc: description of downsampling filter used
 8  dtype: text
 9  name: downsampling_filter
10  neurodata_type_inc: VectorData
11  quantity: '?'
12doc: Extends RoiResponseSeries to hold deconvolved data
13links:
14- doc: ref to roi response series
15  name: raw
16  target_type: RoiResponseSeries
17neurodata_type_def: DeconvolvedRoiResponseSeries
18neurodata_type_inc: RoiResponseSeries

1.3.2.6. MultiCommandedVoltage

Extends: NWBDataInterface

Description: see Section 1.2.1.6

YAML Specification:

1doc: holds CommandedVoltageSeries objects
2groups:
3- doc: commanded voltage series
4  neurodata_type_inc: CommandedVoltageSeries
5  quantity: '*'
6name: commanded_voltages
7neurodata_type_def: MultiCommandedVoltage
8neurodata_type_inc: NWBDataInterface

1.3.2.7. FiberPhotometry

Extends: LabMetaData

Description: see Section 1.2.1.7

YAML Specification:

 1doc: all Fiber Photometry metadata
 2groups:
 3- doc: table of fibers used
 4  name: fibers
 5  neurodata_type_inc: FibersTable
 6- doc: table of excitation sources used
 7  name: excitation_sources
 8  neurodata_type_inc: ExcitationSourcesTable
 9- doc: table of photodetectors used
10  name: photodetectors
11  neurodata_type_inc: PhotodetectorsTable
12- doc: table of fluorophores used
13  name: fluorophores
14  neurodata_type_inc: FluorophoresTable
15- doc: multiple commanded voltage container
16  name: commanded_voltages
17  neurodata_type_inc: MultiCommandedVoltage
18name: fiber_photometry
19neurodata_type_def: FiberPhotometry
20neurodata_type_inc: LabMetaData

1.3.2.8. FluorophoresTable

Extends: DynamicTable

Description: see Section 1.2.1.8

YAML Specification:

 1datasets:
 2- doc: name of fluorophore
 3  dtype: text
 4  name: label
 5  neurodata_type_inc: VectorData
 6  shape:
 7  - null
 8- doc: injection brain region name
 9  dtype: text
10  name: location
11  neurodata_type_inc: VectorData
12  quantity: '?'
13  shape:
14  - null
15- doc: injection taxonomical coordinates in (AP, ML, Z) in mm relative to Bregma
16  dtype: float
17  name: coordinates
18  neurodata_type_inc: VectorData
19  quantity: '?'
20  shape:
21  - null
22  - 3
23doc: Extends DynamicTable to hold various Fluorophores
24name: fluorophores
25neurodata_type_def: FluorophoresTable
26neurodata_type_inc: DynamicTable