wtf and a third commit, i gotta figure out what thats about

This commit is contained in:
sneakers-the-rat 2024-07-29 16:22:29 -07:00
parent 011902d2cb
commit 04b08f10fc
Signed by untrusted user who does not match committer: jonny
GPG key ID: 6DCB96EF1E4D232D
129 changed files with 3215 additions and 5174 deletions

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -33,7 +32,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -73,7 +71,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -85,7 +82,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -96,7 +92,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -115,49 +110,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -166,9 +161,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -179,7 +174,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -239,7 +233,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -267,7 +260,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -293,7 +285,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -303,7 +294,7 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
tree_root: true

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,15 +25,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -49,11 +48,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -65,26 +68,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -99,15 +89,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -124,12 +113,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -140,23 +129,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -164,36 +151,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -202,37 +181,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -294,7 +272,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -310,9 +287,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -321,28 +298,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -356,39 +332,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -399,43 +374,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,55 +22,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
@ -79,7 +86,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
@ -88,31 +94,19 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: false
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch.
multivalued: false
range: int32
required: false
multivalued: false
timeseries:
name: timeseries
description: the TimeSeries that this index applies to.
multivalued: false
range: TimeSeries
required: false
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index
multivalued: false

View file

@ -30,7 +30,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -48,36 +47,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -85,9 +84,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -164,9 +163,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -184,9 +183,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -204,9 +203,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -226,7 +225,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -269,129 +267,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
nwb_container:
name: nwb_container
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: NWBContainer
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -405,21 +402,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -444,7 +441,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -464,60 +460,59 @@ classes:
name:
name: name
ifabsent: string(subject)
identifier: true
range: string
required: true
equals_string: subject
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
NWBFile__general__extracellular_ephys:
name: NWBFile__general__extracellular_ephys
description: Metadata related to extracellular electrophysiology.
@ -525,22 +520,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -549,72 +543,116 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
imp:
name: imp
description: Impedance of the channel.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference used for this electrode.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -622,7 +660,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -631,18 +668,18 @@ classes:
description: Description of filtering used. Includes filtering type and parameters,
frequency fall-off, etc. If this changes between TimeSeries, filter description
should be stored as a text attribute for each TimeSeries.
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: The table which groups different PatchClampSeries together.
multivalued: false
range: SweepTable
required: false
multivalued: false

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -139,27 +135,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -168,15 +163,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -185,7 +179,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -208,57 +201,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -267,7 +259,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -288,7 +279,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -307,7 +297,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -326,7 +315,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -346,7 +334,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -366,7 +353,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -386,7 +372,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -406,7 +391,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -426,15 +410,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -443,7 +426,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -464,53 +446,52 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -519,35 +500,31 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -31,7 +30,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -42,7 +40,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -58,15 +55,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames.
multivalued: false
range: numeric
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -82,12 +78,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -95,18 +91,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -118,7 +114,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -154,7 +149,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -169,21 +163,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -196,9 +189,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -216,9 +209,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -232,16 +225,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the frame in the referenced ImageSeries.
multivalued: false
array:
dimensions:
- alias: num_times
range: int32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,28 +138,27 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -172,7 +167,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -199,20 +193,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -220,24 +216,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -247,31 +244,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -279,29 +282,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -315,9 +328,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -329,18 +342,6 @@ classes:
- alias: num_samples
- alias: num_electrodes
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -349,7 +350,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -361,39 +361,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -33,7 +32,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -73,7 +71,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -85,7 +82,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -96,7 +92,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -115,49 +110,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -166,9 +161,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -179,7 +174,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -239,7 +233,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -267,7 +260,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -293,7 +285,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -303,7 +294,7 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
tree_root: true

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,15 +25,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -49,11 +48,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -65,26 +68,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -99,15 +89,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -124,12 +113,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -140,23 +129,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -164,36 +151,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -202,37 +181,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -294,7 +272,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -310,9 +287,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -321,28 +298,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -356,39 +332,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -399,43 +374,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,55 +22,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
@ -79,7 +86,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
@ -88,31 +94,19 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: false
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch.
multivalued: false
range: int32
required: false
multivalued: false
timeseries:
name: timeseries
description: the TimeSeries that this index applies to.
multivalued: false
range: TimeSeries
required: false
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index
multivalued: false

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -284,129 +281,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -420,21 +416,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -459,7 +455,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -478,22 +473,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -502,72 +496,116 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
imp:
name: imp
description: Impedance of the channel.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference used for this electrode.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -575,7 +613,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -584,21 +621,21 @@ classes:
description: Description of filtering used. Includes filtering type and parameters,
frequency fall-off, etc. If this changes between TimeSeries, filter description
should be stored as a text attribute for each TimeSeries.
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: The table which groups different PatchClampSeries together.
multivalued: false
range: SweepTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -606,7 +643,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -617,57 +653,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -139,27 +135,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -168,15 +163,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -185,7 +179,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -208,57 +201,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -267,7 +259,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -288,7 +279,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -307,7 +297,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -326,7 +315,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -346,7 +334,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -366,7 +353,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -386,7 +372,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -406,7 +391,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -426,15 +410,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -443,7 +426,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -464,53 +446,52 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -519,35 +500,31 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -31,7 +30,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -42,7 +40,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -58,15 +55,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames.
multivalued: false
range: numeric
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -82,12 +78,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -95,18 +91,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -118,7 +114,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -154,7 +149,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -169,21 +163,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -196,9 +189,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -216,9 +209,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -232,16 +225,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the frame in the referenced ImageSeries.
multivalued: false
array:
dimensions:
- alias: num_times
range: int32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,28 +138,27 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -172,7 +167,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -199,20 +193,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -220,24 +216,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -247,31 +244,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -279,29 +282,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -315,9 +328,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -329,18 +342,6 @@ classes:
- alias: num_samples
- alias: num_electrodes
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -349,7 +350,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -361,39 +361,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -154,56 +143,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -213,18 +197,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -235,40 +219,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -279,34 +250,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -327,21 +297,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -365,20 +334,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -33,7 +32,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -73,7 +71,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -85,7 +82,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -96,7 +92,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -115,49 +110,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -166,9 +161,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -179,7 +174,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -239,7 +233,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -267,7 +260,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -293,7 +285,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -303,7 +294,7 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
tree_root: true

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,15 +25,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -49,11 +48,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -65,26 +68,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -99,15 +89,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -124,12 +113,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -140,23 +129,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -164,36 +151,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -202,37 +181,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -294,7 +272,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -310,9 +287,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -321,28 +298,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -356,39 +332,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -399,43 +374,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,55 +22,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
@ -79,7 +86,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
@ -88,31 +94,19 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: false
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch.
multivalued: false
range: int32
required: false
multivalued: false
timeseries:
name: timeseries
description: the TimeSeries that this index applies to.
multivalued: false
range: TimeSeries
required: false
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index
multivalued: false

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -284,129 +281,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -420,21 +416,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -459,7 +455,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -478,22 +473,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -502,72 +496,116 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
imp:
name: imp
description: Impedance of the channel.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference used for this electrode.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -575,7 +613,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -584,21 +621,21 @@ classes:
description: Description of filtering used. Includes filtering type and parameters,
frequency fall-off, etc. If this changes between TimeSeries, filter description
should be stored as a text attribute for each TimeSeries.
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: The table which groups different PatchClampSeries together.
multivalued: false
range: SweepTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -606,7 +643,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -617,57 +653,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -139,27 +135,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -168,15 +163,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -185,7 +179,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -208,57 +201,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -267,7 +259,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -288,7 +279,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -307,7 +297,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -326,7 +315,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -346,7 +334,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -366,7 +353,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -386,7 +372,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -406,7 +391,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -426,15 +410,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -443,7 +426,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -464,53 +446,52 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -519,35 +500,31 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index

View file

@ -20,7 +20,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -31,7 +30,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -42,7 +40,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -58,15 +55,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames.
multivalued: false
range: numeric
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -82,12 +78,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -95,18 +91,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -118,7 +114,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -154,7 +149,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -169,21 +163,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -196,9 +189,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -216,9 +209,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -232,16 +225,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the frame in the referenced ImageSeries.
multivalued: false
array:
dimensions:
- alias: num_times
range: int32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,28 +138,27 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -172,7 +167,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -199,20 +193,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -220,24 +216,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -247,31 +244,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -279,29 +282,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -315,9 +328,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -329,18 +342,6 @@ classes:
- alias: num_samples
- alias: num_electrodes
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -349,7 +350,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -361,39 +361,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -154,56 +143,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -213,18 +197,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -235,40 +219,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -279,34 +250,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -327,21 +297,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -365,20 +334,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -34,7 +33,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -74,7 +72,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -86,7 +83,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -97,7 +93,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -116,49 +111,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -167,9 +162,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -180,7 +175,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -252,7 +246,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -280,7 +273,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -306,7 +298,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -316,7 +307,7 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
tree_root: true

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,7 +25,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
filtering:
@ -41,9 +40,9 @@ classes:
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -59,11 +58,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -75,26 +78,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -109,15 +99,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -134,12 +123,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -150,23 +139,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -174,36 +161,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -212,37 +191,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -304,7 +282,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -320,9 +297,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -331,28 +308,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -366,39 +342,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -409,43 +384,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,55 +22,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
@ -79,7 +86,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
@ -88,31 +94,19 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: false
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch.
multivalued: false
range: int32
required: false
multivalued: false
timeseries:
name: timeseries
description: the TimeSeries that this index applies to.
multivalued: false
range: TimeSeries
required: false
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index
multivalued: false

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -284,129 +281,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -420,21 +416,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -459,7 +455,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -478,22 +473,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -502,73 +496,117 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
imp:
name: imp
description: Impedance of the channel, in ohms.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering, including the filter name
and frequency cutoffs.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference used for this electrode.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -576,7 +614,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -585,21 +622,21 @@ classes:
description: Description of filtering used. Includes filtering type and parameters,
frequency fall-off, etc. If this changes between TimeSeries, filter description
should be stored as a text attribute for each TimeSeries.
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: The table which groups different PatchClampSeries together.
multivalued: false
range: SweepTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -607,7 +644,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -618,63 +654,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
strain:
name: strain
description: Strain of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -139,7 +135,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -150,21 +145,21 @@ classes:
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -173,15 +168,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -190,7 +184,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -213,57 +206,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -272,7 +264,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -293,7 +284,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -312,7 +302,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -331,7 +320,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -351,7 +339,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -371,7 +358,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -391,7 +377,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -411,7 +396,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -431,15 +415,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -448,7 +431,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -469,53 +451,52 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -524,35 +505,31 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -32,7 +31,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -43,7 +41,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -59,15 +56,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames.
multivalued: false
range: numeric
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -83,12 +79,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -96,18 +92,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -119,7 +115,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -155,7 +150,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -170,21 +164,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -197,9 +190,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -217,9 +210,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -233,16 +226,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the frame in the referenced ImageSeries.
multivalued: false
array:
dimensions:
- alias: num_times
range: int32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,35 +138,38 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
source_channels:
name: source_channels
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
multivalued: false
range: DecompositionSeries__source_channels
range: DynamicTableRegion
required: false
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -179,7 +178,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -197,19 +195,6 @@ classes:
- alias: num_channels
- alias: num_bands
range: numeric
DecompositionSeries__source_channels:
name: DecompositionSeries__source_channels
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(source_channels)
identifier: true
range: string
required: true
equals_string: source_channels
DecompositionSeries__bands:
name: DecompositionSeries__bands
description: Table for describing the bands that this series was generated from.
@ -219,20 +204,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -240,24 +227,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -267,31 +255,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -299,29 +293,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -335,9 +339,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -373,40 +377,36 @@ classes:
order of the waveforms within a given unit x spike event should be in the
same order as the electrodes referenced in the 'electrodes' column of this
table. The number of samples for each waveform must be the same.
multivalued: false
array:
dimensions:
- alias: num_waveforms
- alias: num_samples
range: numeric
required: false
multivalued: false
waveforms_index:
name: waveforms_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index
range: VectorIndex
required: false
multivalued: false
waveforms_index_index:
name: waveforms_index_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -415,7 +415,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -427,65 +426,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
Units__waveforms_index:
name: Units__waveforms_index
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index)
identifier: true
range: string
required: true
equals_string: waveforms_index
Units__waveforms_index_index:
name: Units__waveforms_index_index
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index_index)
identifier: true
range: string
required: true
equals_string: waveforms_index_index

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -154,56 +143,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -213,18 +197,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -235,40 +219,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -279,34 +250,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -327,21 +297,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -365,20 +334,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -35,7 +34,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
idx_start:
@ -43,22 +41,22 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: true
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch
multivalued: false
range: int32
required: true
multivalued: false
timeseries:
name: timeseries
description: The TimeSeries that this index applies to
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true
Image:
name: Image
@ -69,7 +67,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -109,7 +106,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -121,7 +117,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -132,7 +127,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -151,49 +145,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -202,9 +196,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -215,7 +209,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -287,7 +280,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -315,7 +307,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -341,7 +332,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -351,7 +341,7 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
tree_root: true

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,7 +25,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
filtering:
@ -41,9 +40,9 @@ classes:
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -59,11 +58,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -75,26 +78,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -109,15 +99,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -134,12 +123,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -150,23 +139,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -174,36 +161,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -212,37 +191,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -304,7 +282,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -320,9 +297,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -331,28 +308,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -366,39 +342,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -409,43 +384,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,55 +22,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
@ -79,7 +86,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
@ -88,31 +94,19 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: false
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch.
multivalued: false
range: int32
required: false
multivalued: false
timeseries:
name: timeseries
description: the TimeSeries that this index applies to.
multivalued: false
range: TimeSeries
required: false
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index
multivalued: false

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -284,129 +281,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -420,21 +416,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -459,7 +455,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -478,22 +473,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -502,73 +496,117 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
imp:
name: imp
description: Impedance of the channel, in ohms.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering, including the filter name
and frequency cutoffs.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference used for this electrode.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -576,7 +614,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -586,24 +623,24 @@ classes:
of filtering used. Includes filtering type and parameters, frequency fall-off,
etc. If this changes between TimeSeries, filter description should be stored
as a text attribute for each TimeSeries.'
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: '[DEPRECATED] Table used to group different PatchClampSeries.
SweepTable is being replaced by IntracellularRecordingsTable and SimultaneousRecordingsTable
tabels. Additional SequentialRecordingsTable, RepetitionsTable and ExperimentalConditions
tables provide enhanced support for experiment metadata.'
multivalued: false
range: SweepTable
required: false
multivalued: false
intracellular_recordings:
name: intracellular_recordings
description: A table to group together a stimulus and response from a single
@ -618,42 +655,42 @@ classes:
PatchClampSeries. However, the use of AD/DA channels that are not associated
to an electrode is also common in intracellular electrophysiology, in which
case other TimeSeries may be used.
multivalued: false
range: IntracellularRecordingsTable
required: false
multivalued: false
simultaneous_recordings:
name: simultaneous_recordings
description: A table for grouping different intracellular recordings from
the IntracellularRecordingsTable table together that were recorded simultaneously
from different electrodes
multivalued: false
range: SimultaneousRecordingsTable
required: false
multivalued: false
sequential_recordings:
name: sequential_recordings
description: A table for grouping different sequential recordings from the
SimultaneousRecordingsTable table together. This is typically used to group
together sequential recordings where the a sequence of stimuli of the same
type with varying parameters have been presented in a sequence.
multivalued: false
range: SequentialRecordingsTable
required: false
multivalued: false
repetitions:
name: repetitions
description: A table for grouping different sequential intracellular recordings
together. With each SequentialRecording typically representing a particular
type of stimulus, the RepetitionsTable table is typically used to group
sets of stimuli applied in sequence.
multivalued: false
range: RepetitionsTable
required: false
multivalued: false
experimental_conditions:
name: experimental_conditions
description: A table for grouping different intracellular recording repetitions
together that belong to the same experimental experimental_conditions.
multivalued: false
range: ExperimentalConditionsTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -661,7 +698,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -672,63 +708,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
strain:
name: strain
description: Strain of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -139,7 +135,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -150,21 +145,21 @@ classes:
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -173,15 +168,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -190,7 +184,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -213,57 +206,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -272,7 +264,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -293,7 +284,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -312,7 +302,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -331,7 +320,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -351,7 +339,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -371,7 +358,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -391,7 +377,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -411,7 +396,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -431,15 +415,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -448,7 +431,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -469,53 +451,52 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -527,38 +508,34 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index
IntracellularElectrodesTable:
name: IntracellularElectrodesTable
description: Table for storing intracellular electrode related metadata.
@ -566,7 +543,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -576,8 +552,9 @@ classes:
electrode:
name: electrode
description: Column for storing the reference to the intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: true
multivalued: true
tree_root: true
IntracellularStimuliTable:
name: IntracellularStimuliTable
@ -586,7 +563,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -595,25 +571,16 @@ classes:
range: text
stimulus:
name: stimulus
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded stimulus for the
recording (rows).
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularStimuliTable__stimulus
required: true
tree_root: true
IntracellularStimuliTable__stimulus:
name: IntracellularStimuliTable__stimulus
description: Column storing the reference to the recorded stimulus for the recording
(rows).
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
IntracellularResponsesTable:
name: IntracellularResponsesTable
description: Table for storing intracellular response related metadata.
@ -621,7 +588,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -630,25 +596,16 @@ classes:
range: text
response:
name: response
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded response for the
recording (rows)
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularResponsesTable__response
required: true
tree_root: true
IntracellularResponsesTable__response:
name: IntracellularResponsesTable__response
description: Column storing the reference to the recorded response for the recording
(rows)
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(response)
identifier: true
range: string
required: true
equals_string: response
IntracellularRecordingsTable:
name: IntracellularRecordingsTable
description: A table to group together a stimulus and response from a single electrode
@ -667,7 +624,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_recordings)
identifier: true
range: string
required: true
equals_string: intracellular_recordings
@ -679,21 +635,21 @@ classes:
electrodes:
name: electrodes
description: Table for storing intracellular electrode related metadata.
multivalued: false
range: IntracellularElectrodesTable
required: true
multivalued: false
stimuli:
name: stimuli
description: Table for storing intracellular stimulus related metadata.
multivalued: false
range: IntracellularStimuliTable
required: true
multivalued: false
responses:
name: responses
description: Table for storing intracellular response related metadata.
multivalued: false
range: IntracellularResponsesTable
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable:
name: SimultaneousRecordingsTable
@ -705,7 +661,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -713,15 +668,19 @@ classes:
name: recordings
description: A reference to one or more rows in the IntracellularRecordingsTable
table.
multivalued: false
range: SimultaneousRecordingsTable__recordings
required: true
multivalued: false
recordings_index:
name: recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the recordings column.
multivalued: false
range: SimultaneousRecordingsTable__recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable__recordings:
name: SimultaneousRecordingsTable__recordings
@ -732,7 +691,6 @@ classes:
name:
name: name
ifabsent: string(recordings)
identifier: true
range: string
required: true
equals_string: recordings
@ -742,18 +700,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: IntracellularRecordingsTable
SimultaneousRecordingsTable__recordings_index:
name: SimultaneousRecordingsTable__recordings_index
description: Index dataset for the recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(recordings_index)
identifier: true
range: string
required: true
equals_string: recordings_index
SequentialRecordingsTable:
name: SequentialRecordingsTable
description: A table for grouping different sequential recordings from the SimultaneousRecordingsTable
@ -765,7 +711,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -773,20 +718,28 @@ classes:
name: simultaneous_recordings
description: A reference to one or more rows in the SimultaneousRecordingsTable
table.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings
required: true
multivalued: false
simultaneous_recordings_index:
name: simultaneous_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the simultaneous_recordings column.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings_index
range: VectorIndex
required: true
multivalued: false
stimulus_type:
name: stimulus_type
description: The type of stimulus used for the sequential recording.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
tree_root: true
SequentialRecordingsTable__simultaneous_recordings:
name: SequentialRecordingsTable__simultaneous_recordings
@ -797,7 +750,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -807,18 +759,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SimultaneousRecordingsTable
SequentialRecordingsTable__simultaneous_recordings_index:
name: SequentialRecordingsTable__simultaneous_recordings_index
description: Index dataset for the simultaneous_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(simultaneous_recordings_index)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings_index
RepetitionsTable:
name: RepetitionsTable
description: A table for grouping different sequential intracellular recordings
@ -830,7 +770,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -838,15 +777,19 @@ classes:
name: sequential_recordings
description: A reference to one or more rows in the SequentialRecordingsTable
table.
multivalued: false
range: RepetitionsTable__sequential_recordings
required: true
multivalued: false
sequential_recordings_index:
name: sequential_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the sequential_recordings column.
multivalued: false
range: RepetitionsTable__sequential_recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
RepetitionsTable__sequential_recordings:
name: RepetitionsTable__sequential_recordings
@ -857,7 +800,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -867,18 +809,6 @@ classes:
region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SequentialRecordingsTable
RepetitionsTable__sequential_recordings_index:
name: RepetitionsTable__sequential_recordings_index
description: Index dataset for the sequential_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(sequential_recordings_index)
identifier: true
range: string
required: true
equals_string: sequential_recordings_index
ExperimentalConditionsTable:
name: ExperimentalConditionsTable
description: A table for grouping different intracellular recording repetitions
@ -888,22 +818,25 @@ classes:
name:
name: name
ifabsent: string(experimental_conditions)
identifier: true
range: string
required: true
equals_string: experimental_conditions
repetitions:
name: repetitions
description: A reference to one or more rows in the RepetitionsTable table.
multivalued: false
range: ExperimentalConditionsTable__repetitions
required: true
multivalued: false
repetitions_index:
name: repetitions_index
annotations:
named:
tag: named
value: true
description: Index dataset for the repetitions column.
multivalued: false
range: ExperimentalConditionsTable__repetitions_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
ExperimentalConditionsTable__repetitions:
name: ExperimentalConditionsTable__repetitions
@ -913,7 +846,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -923,15 +855,3 @@ classes:
applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: RepetitionsTable
ExperimentalConditionsTable__repetitions_index:
name: ExperimentalConditionsTable__repetitions_index
description: Index dataset for the repetitions column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(repetitions_index)
identifier: true
range: string
required: true
equals_string: repetitions_index

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -32,7 +31,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -43,7 +41,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -59,16 +56,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames. If data are stored
in an external file, this should be an empty 3D array.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -84,12 +80,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -97,18 +93,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -120,7 +116,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -156,7 +151,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -171,21 +165,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -198,9 +191,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -218,9 +211,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -234,16 +227,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the frame in the referenced ImageSeries.
multivalued: false
array:
dimensions:
- alias: num_times
range: int32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,35 +138,38 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
source_channels:
name: source_channels
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
multivalued: false
range: DecompositionSeries__source_channels
range: DynamicTableRegion
required: false
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -179,7 +178,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -197,19 +195,6 @@ classes:
- alias: num_channels
- alias: num_bands
range: numeric
DecompositionSeries__source_channels:
name: DecompositionSeries__source_channels
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(source_channels)
identifier: true
range: string
required: true
equals_string: source_channels
DecompositionSeries__bands:
name: DecompositionSeries__bands
description: Table for describing the bands that this series was generated from.
@ -219,20 +204,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -240,24 +227,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -267,31 +255,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -299,29 +293,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -335,9 +339,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -373,40 +377,36 @@ classes:
order of the waveforms within a given unit x spike event should be in the
same order as the electrodes referenced in the 'electrodes' column of this
table. The number of samples for each waveform must be the same.
multivalued: false
array:
dimensions:
- alias: num_waveforms
- alias: num_samples
range: numeric
required: false
multivalued: false
waveforms_index:
name: waveforms_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index
range: VectorIndex
required: false
multivalued: false
waveforms_index_index:
name: waveforms_index_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -415,7 +415,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -427,65 +426,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
Units__waveforms_index:
name: Units__waveforms_index
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index)
identifier: true
range: string
required: true
equals_string: waveforms_index
Units__waveforms_index_index:
name: Units__waveforms_index_index
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index_index)
identifier: true
range: string
required: true
equals_string: waveforms_index_index

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -154,56 +143,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -213,18 +197,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -235,40 +219,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -279,34 +250,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -327,21 +297,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -365,20 +334,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -35,7 +34,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
idx_start:
@ -43,22 +41,22 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: true
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch
multivalued: false
range: int32
required: true
multivalued: false
timeseries:
name: timeseries
description: The TimeSeries that this index applies to
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true
Image:
name: Image
@ -69,7 +67,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -108,15 +105,8 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image:
name: image
description: Ordered dataset of references to Image objects.
multivalued: true
range: Image
required: true
tree_root: true
NWBContainer:
name: NWBContainer
@ -126,7 +116,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -138,7 +127,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -149,7 +137,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -168,49 +155,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -219,9 +206,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -232,7 +219,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -312,7 +298,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -340,7 +325,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -368,7 +352,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -378,30 +361,20 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
order_of_images:
name: order_of_images
annotations:
named:
tag: named
value: true
description: Ordered dataset of references to Image objects stored in the
parent group. Each Image object in the Images group should be stored once
and only once, so the dataset should have the same length as the number
of images.
multivalued: false
range: Images__order_of_images
range: ImageReferences
required: false
multivalued: false
tree_root: true
Images__order_of_images:
name: Images__order_of_images
description: Ordered dataset of references to Image objects stored in the parent
group. Each Image object in the Images group should be stored once and only
once, so the dataset should have the same length as the number of images.
is_a: ImageReferences
attributes:
name:
name: name
ifabsent: string(order_of_images)
identifier: true
range: string
required: true
equals_string: order_of_images

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,7 +25,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
filtering:
@ -41,9 +40,9 @@ classes:
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -59,11 +58,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -75,26 +78,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -109,15 +99,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -134,12 +123,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -150,23 +139,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -174,36 +161,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -212,37 +191,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -304,7 +282,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -320,9 +297,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -331,28 +308,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -366,39 +342,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -409,43 +384,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,76 +22,63 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
annotations:
named:
tag: named
value: true
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
range: TimeSeriesReferenceVectorData
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -285,129 +282,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -421,21 +417,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -460,7 +456,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -479,22 +474,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -503,75 +497,119 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
imp:
name: imp
description: Impedance of the channel, in ohms.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering, including the filter name
and frequency cutoffs.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference electrode and/or reference scheme
used for this electrode, e.g., "stainless steel skull screw" or "online
common average referencing".
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -579,7 +617,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -589,24 +626,24 @@ classes:
of filtering used. Includes filtering type and parameters, frequency fall-off,
etc. If this changes between TimeSeries, filter description should be stored
as a text attribute for each TimeSeries.'
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: '[DEPRECATED] Table used to group different PatchClampSeries.
SweepTable is being replaced by IntracellularRecordingsTable and SimultaneousRecordingsTable
tabels. Additional SequentialRecordingsTable, RepetitionsTable and ExperimentalConditions
tables provide enhanced support for experiment metadata.'
multivalued: false
range: SweepTable
required: false
multivalued: false
intracellular_recordings:
name: intracellular_recordings
description: A table to group together a stimulus and response from a single
@ -621,42 +658,42 @@ classes:
PatchClampSeries. However, the use of AD/DA channels that are not associated
to an electrode is also common in intracellular electrophysiology, in which
case other TimeSeries may be used.
multivalued: false
range: IntracellularRecordingsTable
required: false
multivalued: false
simultaneous_recordings:
name: simultaneous_recordings
description: A table for grouping different intracellular recordings from
the IntracellularRecordingsTable table together that were recorded simultaneously
from different electrodes
multivalued: false
range: SimultaneousRecordingsTable
required: false
multivalued: false
sequential_recordings:
name: sequential_recordings
description: A table for grouping different sequential recordings from the
SimultaneousRecordingsTable table together. This is typically used to group
together sequential recordings where the a sequence of stimuli of the same
type with varying parameters have been presented in a sequence.
multivalued: false
range: SequentialRecordingsTable
required: false
multivalued: false
repetitions:
name: repetitions
description: A table for grouping different sequential intracellular recordings
together. With each SequentialRecording typically representing a particular
type of stimulus, the RepetitionsTable table is typically used to group
sets of stimuli applied in sequence.
multivalued: false
range: RepetitionsTable
required: false
multivalued: false
experimental_conditions:
name: experimental_conditions
description: A table for grouping different intracellular recording repetitions
together that belong to the same experimental experimental_conditions.
multivalued: false
range: ExperimentalConditionsTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -664,7 +701,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -675,63 +711,62 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: text
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
strain:
name: strain
description: Strain of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -140,7 +136,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -151,21 +146,21 @@ classes:
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -174,15 +169,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -191,7 +185,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -215,57 +208,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -274,7 +266,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -296,7 +287,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -315,7 +305,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -334,7 +323,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -354,7 +342,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -374,7 +361,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -394,7 +380,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -414,7 +399,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -434,15 +418,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -451,7 +434,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -473,59 +455,58 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
cell_id:
name: cell_id
description: unique ID of the cell
multivalued: false
range: text
required: false
multivalued: false
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -537,38 +518,34 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index
IntracellularElectrodesTable:
name: IntracellularElectrodesTable
description: Table for storing intracellular electrode related metadata.
@ -576,7 +553,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -586,8 +562,9 @@ classes:
electrode:
name: electrode
description: Column for storing the reference to the intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: true
multivalued: true
tree_root: true
IntracellularStimuliTable:
name: IntracellularStimuliTable
@ -596,7 +573,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -605,25 +581,16 @@ classes:
range: text
stimulus:
name: stimulus
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded stimulus for the
recording (rows).
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularStimuliTable__stimulus
required: true
tree_root: true
IntracellularStimuliTable__stimulus:
name: IntracellularStimuliTable__stimulus
description: Column storing the reference to the recorded stimulus for the recording
(rows).
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
IntracellularResponsesTable:
name: IntracellularResponsesTable
description: Table for storing intracellular response related metadata.
@ -631,7 +598,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -640,25 +606,16 @@ classes:
range: text
response:
name: response
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded response for the
recording (rows)
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularResponsesTable__response
required: true
tree_root: true
IntracellularResponsesTable__response:
name: IntracellularResponsesTable__response
description: Column storing the reference to the recorded response for the recording
(rows)
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(response)
identifier: true
range: string
required: true
equals_string: response
IntracellularRecordingsTable:
name: IntracellularRecordingsTable
description: A table to group together a stimulus and response from a single electrode
@ -677,7 +634,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_recordings)
identifier: true
range: string
required: true
equals_string: intracellular_recordings
@ -689,21 +645,21 @@ classes:
electrodes:
name: electrodes
description: Table for storing intracellular electrode related metadata.
multivalued: false
range: IntracellularElectrodesTable
required: true
multivalued: false
stimuli:
name: stimuli
description: Table for storing intracellular stimulus related metadata.
multivalued: false
range: IntracellularStimuliTable
required: true
multivalued: false
responses:
name: responses
description: Table for storing intracellular response related metadata.
multivalued: false
range: IntracellularResponsesTable
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable:
name: SimultaneousRecordingsTable
@ -715,7 +671,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -723,15 +678,19 @@ classes:
name: recordings
description: A reference to one or more rows in the IntracellularRecordingsTable
table.
multivalued: false
range: SimultaneousRecordingsTable__recordings
required: true
multivalued: false
recordings_index:
name: recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the recordings column.
multivalued: false
range: SimultaneousRecordingsTable__recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable__recordings:
name: SimultaneousRecordingsTable__recordings
@ -742,7 +701,6 @@ classes:
name:
name: name
ifabsent: string(recordings)
identifier: true
range: string
required: true
equals_string: recordings
@ -752,18 +710,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: IntracellularRecordingsTable
SimultaneousRecordingsTable__recordings_index:
name: SimultaneousRecordingsTable__recordings_index
description: Index dataset for the recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(recordings_index)
identifier: true
range: string
required: true
equals_string: recordings_index
SequentialRecordingsTable:
name: SequentialRecordingsTable
description: A table for grouping different sequential recordings from the SimultaneousRecordingsTable
@ -775,7 +721,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -783,20 +728,28 @@ classes:
name: simultaneous_recordings
description: A reference to one or more rows in the SimultaneousRecordingsTable
table.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings
required: true
multivalued: false
simultaneous_recordings_index:
name: simultaneous_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the simultaneous_recordings column.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings_index
range: VectorIndex
required: true
multivalued: false
stimulus_type:
name: stimulus_type
description: The type of stimulus used for the sequential recording.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
tree_root: true
SequentialRecordingsTable__simultaneous_recordings:
name: SequentialRecordingsTable__simultaneous_recordings
@ -807,7 +760,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -817,18 +769,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SimultaneousRecordingsTable
SequentialRecordingsTable__simultaneous_recordings_index:
name: SequentialRecordingsTable__simultaneous_recordings_index
description: Index dataset for the simultaneous_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(simultaneous_recordings_index)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings_index
RepetitionsTable:
name: RepetitionsTable
description: A table for grouping different sequential intracellular recordings
@ -840,7 +780,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -848,15 +787,19 @@ classes:
name: sequential_recordings
description: A reference to one or more rows in the SequentialRecordingsTable
table.
multivalued: false
range: RepetitionsTable__sequential_recordings
required: true
multivalued: false
sequential_recordings_index:
name: sequential_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the sequential_recordings column.
multivalued: false
range: RepetitionsTable__sequential_recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
RepetitionsTable__sequential_recordings:
name: RepetitionsTable__sequential_recordings
@ -867,7 +810,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -877,18 +819,6 @@ classes:
region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SequentialRecordingsTable
RepetitionsTable__sequential_recordings_index:
name: RepetitionsTable__sequential_recordings_index
description: Index dataset for the sequential_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(sequential_recordings_index)
identifier: true
range: string
required: true
equals_string: sequential_recordings_index
ExperimentalConditionsTable:
name: ExperimentalConditionsTable
description: A table for grouping different intracellular recording repetitions
@ -898,22 +828,25 @@ classes:
name:
name: name
ifabsent: string(experimental_conditions)
identifier: true
range: string
required: true
equals_string: experimental_conditions
repetitions:
name: repetitions
description: A reference to one or more rows in the RepetitionsTable table.
multivalued: false
range: ExperimentalConditionsTable__repetitions
required: true
multivalued: false
repetitions_index:
name: repetitions_index
annotations:
named:
tag: named
value: true
description: Index dataset for the repetitions column.
multivalued: false
range: ExperimentalConditionsTable__repetitions_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
ExperimentalConditionsTable__repetitions:
name: ExperimentalConditionsTable__repetitions
@ -923,7 +856,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -933,15 +865,3 @@ classes:
applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: RepetitionsTable
ExperimentalConditionsTable__repetitions_index:
name: ExperimentalConditionsTable__repetitions_index
description: Index dataset for the repetitions column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(repetitions_index)
identifier: true
range: string
required: true
equals_string: repetitions_index

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -32,7 +31,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -43,7 +41,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -59,16 +56,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames. If data are stored
in an external file, this should be an empty 3D array.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -84,12 +80,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -97,18 +93,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -120,7 +116,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -156,7 +151,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -171,21 +165,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -198,9 +191,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -218,9 +211,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -235,17 +228,16 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the image (using zero-indexing) in the linked Images
object.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,35 +138,38 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
source_channels:
name: source_channels
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
multivalued: false
range: DecompositionSeries__source_channels
range: DynamicTableRegion
required: false
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -179,7 +178,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -197,19 +195,6 @@ classes:
- alias: num_channels
- alias: num_bands
range: numeric
DecompositionSeries__source_channels:
name: DecompositionSeries__source_channels
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(source_channels)
identifier: true
range: string
required: true
equals_string: source_channels
DecompositionSeries__bands:
name: DecompositionSeries__bands
description: Table for describing the bands that this series was generated from.
@ -219,20 +204,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -240,24 +227,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -267,31 +255,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -299,29 +293,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -335,9 +339,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -373,40 +377,36 @@ classes:
order of the waveforms within a given unit x spike event should be in the
same order as the electrodes referenced in the 'electrodes' column of this
table. The number of samples for each waveform must be the same.
multivalued: false
array:
dimensions:
- alias: num_waveforms
- alias: num_samples
range: numeric
required: false
multivalued: false
waveforms_index:
name: waveforms_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index
range: VectorIndex
required: false
multivalued: false
waveforms_index_index:
name: waveforms_index_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit.
@ -415,7 +415,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -427,65 +426,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
Units__waveforms_index:
name: Units__waveforms_index
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index)
identifier: true
range: string
required: true
equals_string: waveforms_index
Units__waveforms_index_index:
name: Units__waveforms_index_index
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index_index)
identifier: true
range: string
required: true
equals_string: waveforms_index_index

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -39,9 +38,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -60,15 +59,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -79,25 +77,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -154,56 +143,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -213,18 +197,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -235,40 +219,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -279,34 +250,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -327,21 +297,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -365,20 +334,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -35,7 +34,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
idx_start:
@ -43,22 +41,22 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: true
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch
multivalued: false
range: int32
required: true
multivalued: false
timeseries:
name: timeseries
description: The TimeSeries that this index applies to
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true
Image:
name: Image
@ -69,7 +67,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -108,15 +105,8 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image:
name: image
description: Ordered dataset of references to Image objects.
multivalued: true
range: Image
required: true
tree_root: true
NWBContainer:
name: NWBContainer
@ -126,7 +116,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -138,7 +127,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -149,7 +137,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -168,49 +155,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -219,9 +206,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -232,7 +219,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -312,7 +298,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -340,7 +325,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -368,7 +352,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -378,30 +361,20 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
order_of_images:
name: order_of_images
annotations:
named:
tag: named
value: true
description: Ordered dataset of references to Image objects stored in the
parent group. Each Image object in the Images group should be stored once
and only once, so the dataset should have the same length as the number
of images.
multivalued: false
range: Images__order_of_images
range: ImageReferences
required: false
multivalued: false
tree_root: true
Images__order_of_images:
name: Images__order_of_images
description: Ordered dataset of references to Image objects stored in the parent
group. Each Image object in the Images group should be stored once and only
once, so the dataset should have the same length as the number of images.
is_a: ImageReferences
attributes:
name:
name: name
ifabsent: string(order_of_images)
identifier: true
range: string
required: true
equals_string: order_of_images

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,7 +25,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
filtering:
@ -41,9 +40,9 @@ classes:
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -59,11 +58,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -75,26 +78,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -109,15 +99,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -134,12 +123,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -150,23 +139,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -174,36 +161,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -212,37 +191,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -304,7 +282,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -320,9 +297,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -331,28 +308,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -366,39 +342,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -409,43 +384,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,76 +22,63 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
annotations:
named:
tag: named
value: true
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
range: TimeSeriesReferenceVectorData
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -285,129 +282,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -421,21 +417,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -460,7 +456,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -479,22 +474,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -503,75 +497,119 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
imp:
name: imp
description: Impedance of the channel, in ohms.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering, including the filter name
and frequency cutoffs.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference electrode and/or reference scheme
used for this electrode, e.g., "stainless steel skull screw" or "online
common average referencing".
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -579,7 +617,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -589,24 +626,24 @@ classes:
of filtering used. Includes filtering type and parameters, frequency fall-off,
etc. If this changes between TimeSeries, filter description should be stored
as a text attribute for each TimeSeries.'
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: '[DEPRECATED] Table used to group different PatchClampSeries.
SweepTable is being replaced by IntracellularRecordingsTable and SimultaneousRecordingsTable
tabels. Additional SequentialRecordingsTable, RepetitionsTable and ExperimentalConditions
tables provide enhanced support for experiment metadata.'
multivalued: false
range: SweepTable
required: false
multivalued: false
intracellular_recordings:
name: intracellular_recordings
description: A table to group together a stimulus and response from a single
@ -621,42 +658,42 @@ classes:
PatchClampSeries. However, the use of AD/DA channels that are not associated
to an electrode is also common in intracellular electrophysiology, in which
case other TimeSeries may be used.
multivalued: false
range: IntracellularRecordingsTable
required: false
multivalued: false
simultaneous_recordings:
name: simultaneous_recordings
description: A table for grouping different intracellular recordings from
the IntracellularRecordingsTable table together that were recorded simultaneously
from different electrodes
multivalued: false
range: SimultaneousRecordingsTable
required: false
multivalued: false
sequential_recordings:
name: sequential_recordings
description: A table for grouping different sequential recordings from the
SimultaneousRecordingsTable table together. This is typically used to group
together sequential recordings where the a sequence of stimuli of the same
type with varying parameters have been presented in a sequence.
multivalued: false
range: SequentialRecordingsTable
required: false
multivalued: false
repetitions:
name: repetitions
description: A table for grouping different sequential intracellular recordings
together. With each SequentialRecording typically representing a particular
type of stimulus, the RepetitionsTable table is typically used to group
sets of stimuli applied in sequence.
multivalued: false
range: RepetitionsTable
required: false
multivalued: false
experimental_conditions:
name: experimental_conditions
description: A table for grouping different intracellular recording repetitions
together that belong to the same experimental experimental_conditions.
multivalued: false
range: ExperimentalConditionsTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -664,7 +701,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -675,65 +711,64 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: Subject__age
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
strain:
name: strain
description: Strain of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
Subject__age:
name: Subject__age
@ -742,7 +777,6 @@ classes:
name:
name: name
ifabsent: string(age)
identifier: true
range: string
required: true
equals_string: age

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -140,7 +136,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -151,21 +146,21 @@ classes:
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -174,15 +169,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -191,7 +185,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -215,57 +208,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -274,7 +266,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -296,7 +287,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -315,7 +305,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -334,7 +323,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -354,7 +342,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -374,7 +361,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -394,7 +380,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -414,7 +399,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -434,15 +418,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -451,7 +434,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -473,59 +455,58 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
cell_id:
name: cell_id
description: unique ID of the cell
multivalued: false
range: text
required: false
multivalued: false
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -537,38 +518,34 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index
IntracellularElectrodesTable:
name: IntracellularElectrodesTable
description: Table for storing intracellular electrode related metadata.
@ -576,7 +553,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -586,8 +562,9 @@ classes:
electrode:
name: electrode
description: Column for storing the reference to the intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: true
multivalued: true
tree_root: true
IntracellularStimuliTable:
name: IntracellularStimuliTable
@ -596,7 +573,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -605,25 +581,16 @@ classes:
range: text
stimulus:
name: stimulus
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded stimulus for the
recording (rows).
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularStimuliTable__stimulus
required: true
tree_root: true
IntracellularStimuliTable__stimulus:
name: IntracellularStimuliTable__stimulus
description: Column storing the reference to the recorded stimulus for the recording
(rows).
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
IntracellularResponsesTable:
name: IntracellularResponsesTable
description: Table for storing intracellular response related metadata.
@ -631,7 +598,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -640,25 +606,16 @@ classes:
range: text
response:
name: response
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded response for the
recording (rows)
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularResponsesTable__response
required: true
tree_root: true
IntracellularResponsesTable__response:
name: IntracellularResponsesTable__response
description: Column storing the reference to the recorded response for the recording
(rows)
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(response)
identifier: true
range: string
required: true
equals_string: response
IntracellularRecordingsTable:
name: IntracellularRecordingsTable
description: A table to group together a stimulus and response from a single electrode
@ -677,7 +634,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_recordings)
identifier: true
range: string
required: true
equals_string: intracellular_recordings
@ -689,21 +645,21 @@ classes:
electrodes:
name: electrodes
description: Table for storing intracellular electrode related metadata.
multivalued: false
range: IntracellularElectrodesTable
required: true
multivalued: false
stimuli:
name: stimuli
description: Table for storing intracellular stimulus related metadata.
multivalued: false
range: IntracellularStimuliTable
required: true
multivalued: false
responses:
name: responses
description: Table for storing intracellular response related metadata.
multivalued: false
range: IntracellularResponsesTable
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable:
name: SimultaneousRecordingsTable
@ -715,7 +671,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -723,15 +678,19 @@ classes:
name: recordings
description: A reference to one or more rows in the IntracellularRecordingsTable
table.
multivalued: false
range: SimultaneousRecordingsTable__recordings
required: true
multivalued: false
recordings_index:
name: recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the recordings column.
multivalued: false
range: SimultaneousRecordingsTable__recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable__recordings:
name: SimultaneousRecordingsTable__recordings
@ -742,7 +701,6 @@ classes:
name:
name: name
ifabsent: string(recordings)
identifier: true
range: string
required: true
equals_string: recordings
@ -752,18 +710,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: IntracellularRecordingsTable
SimultaneousRecordingsTable__recordings_index:
name: SimultaneousRecordingsTable__recordings_index
description: Index dataset for the recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(recordings_index)
identifier: true
range: string
required: true
equals_string: recordings_index
SequentialRecordingsTable:
name: SequentialRecordingsTable
description: A table for grouping different sequential recordings from the SimultaneousRecordingsTable
@ -775,7 +721,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -783,20 +728,28 @@ classes:
name: simultaneous_recordings
description: A reference to one or more rows in the SimultaneousRecordingsTable
table.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings
required: true
multivalued: false
simultaneous_recordings_index:
name: simultaneous_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the simultaneous_recordings column.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings_index
range: VectorIndex
required: true
multivalued: false
stimulus_type:
name: stimulus_type
description: The type of stimulus used for the sequential recording.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
tree_root: true
SequentialRecordingsTable__simultaneous_recordings:
name: SequentialRecordingsTable__simultaneous_recordings
@ -807,7 +760,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -817,18 +769,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SimultaneousRecordingsTable
SequentialRecordingsTable__simultaneous_recordings_index:
name: SequentialRecordingsTable__simultaneous_recordings_index
description: Index dataset for the simultaneous_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(simultaneous_recordings_index)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings_index
RepetitionsTable:
name: RepetitionsTable
description: A table for grouping different sequential intracellular recordings
@ -840,7 +780,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -848,15 +787,19 @@ classes:
name: sequential_recordings
description: A reference to one or more rows in the SequentialRecordingsTable
table.
multivalued: false
range: RepetitionsTable__sequential_recordings
required: true
multivalued: false
sequential_recordings_index:
name: sequential_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the sequential_recordings column.
multivalued: false
range: RepetitionsTable__sequential_recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
RepetitionsTable__sequential_recordings:
name: RepetitionsTable__sequential_recordings
@ -867,7 +810,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -877,18 +819,6 @@ classes:
region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SequentialRecordingsTable
RepetitionsTable__sequential_recordings_index:
name: RepetitionsTable__sequential_recordings_index
description: Index dataset for the sequential_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(sequential_recordings_index)
identifier: true
range: string
required: true
equals_string: sequential_recordings_index
ExperimentalConditionsTable:
name: ExperimentalConditionsTable
description: A table for grouping different intracellular recording repetitions
@ -898,22 +828,25 @@ classes:
name:
name: name
ifabsent: string(experimental_conditions)
identifier: true
range: string
required: true
equals_string: experimental_conditions
repetitions:
name: repetitions
description: A reference to one or more rows in the RepetitionsTable table.
multivalued: false
range: ExperimentalConditionsTable__repetitions
required: true
multivalued: false
repetitions_index:
name: repetitions_index
annotations:
named:
tag: named
value: true
description: Index dataset for the repetitions column.
multivalued: false
range: ExperimentalConditionsTable__repetitions_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
ExperimentalConditionsTable__repetitions:
name: ExperimentalConditionsTable__repetitions
@ -923,7 +856,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -933,15 +865,3 @@ classes:
applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: RepetitionsTable
ExperimentalConditionsTable__repetitions_index:
name: ExperimentalConditionsTable__repetitions_index
description: Index dataset for the repetitions column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(repetitions_index)
identifier: true
range: string
required: true
equals_string: repetitions_index

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -32,7 +31,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -43,7 +41,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -59,16 +56,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames. If data are stored
in an external file, this should be an empty 3D array.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -84,12 +80,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -97,18 +93,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -120,7 +116,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -156,7 +151,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -171,21 +165,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -198,9 +191,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -218,9 +211,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -235,17 +228,16 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the image (using zero-indexing) in the linked Images
object.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

View file

@ -30,33 +30,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Values of each feature at each time.
multivalued: false
range: AbstractFeatureSeries__data
required: true
multivalued: false
feature_units:
name: feature_units
description: Units of each feature.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: false
multivalued: false
features:
name: features
description: Description of the features represented in TimeSeries::data.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
tree_root: true
AbstractFeatureSeries__data:
name: AbstractFeatureSeries__data
@ -65,7 +64,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -96,18 +94,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Annotations made during an experiment.
multivalued: false
array:
dimensions:
- alias: num_times
range: text
required: true
multivalued: false
tree_root: true
IntervalSeries:
name: IntervalSeries
@ -122,18 +119,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Use values >0 if interval started, <0 if interval ended.
multivalued: false
array:
dimensions:
- alias: num_times
range: int8
required: true
multivalued: false
tree_root: true
DecompositionSeries:
name: DecompositionSeries
@ -142,35 +138,38 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Data decomposed into frequency bands.
multivalued: false
range: DecompositionSeries__data
required: true
multivalued: false
metric:
name: metric
description: The metric used, e.g. phase, amplitude, power.
multivalued: false
range: text
required: true
multivalued: false
source_channels:
name: source_channels
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
multivalued: false
range: DecompositionSeries__source_channels
range: DynamicTableRegion
required: false
multivalued: false
bands:
name: bands
description: Table for describing the bands that this series was generated
from. There should be one row in this table for each band.
multivalued: false
range: DecompositionSeries__bands
required: true
multivalued: false
tree_root: true
DecompositionSeries__data:
name: DecompositionSeries__data
@ -179,7 +178,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -197,19 +195,6 @@ classes:
- alias: num_channels
- alias: num_bands
range: numeric
DecompositionSeries__source_channels:
name: DecompositionSeries__source_channels
description: DynamicTableRegion pointer to the channels that this decomposition
series was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(source_channels)
identifier: true
range: string
required: true
equals_string: source_channels
DecompositionSeries__bands:
name: DecompositionSeries__bands
description: Table for describing the bands that this series was generated from.
@ -219,20 +204,22 @@ classes:
name:
name: name
ifabsent: string(bands)
identifier: true
range: string
required: true
equals_string: bands
band_name:
name: band_name
description: Name of the band, e.g. theta.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
band_limits:
name: band_limits
description: Low and high limit of each band in Hz. If it is a Gaussian filter,
use 2 SD on either side of the center.
multivalued: false
array:
dimensions:
- alias: num_bands
@ -240,24 +227,25 @@ classes:
exact_cardinality: 2
range: float32
required: true
multivalued: false
band_mean:
name: band_mean
description: The mean Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
band_stdev:
name: band_stdev
description: The standard deviation of Gaussian filters, in Hz.
multivalued: false
array:
dimensions:
- alias: num_bands
range: float32
required: true
multivalued: false
Units:
name: Units
description: Data about spiking units. Event times of observed units (e.g. cell,
@ -267,31 +255,37 @@ classes:
name:
name: name
ifabsent: string(Units)
identifier: true
range: string
required: true
spike_times_index:
name: spike_times_index
annotations:
named:
tag: named
value: true
description: Index into the spike_times dataset.
multivalued: false
range: Units__spike_times_index
range: VectorIndex
required: false
multivalued: false
spike_times:
name: spike_times
description: Spike times for each unit in seconds.
multivalued: false
range: Units__spike_times
required: false
multivalued: false
obs_intervals_index:
name: obs_intervals_index
annotations:
named:
tag: named
value: true
description: Index into the obs_intervals dataset.
multivalued: false
range: Units__obs_intervals_index
range: VectorIndex
required: false
multivalued: false
obs_intervals:
name: obs_intervals
description: Observation intervals for each unit.
multivalued: false
array:
dimensions:
- alias: num_intervals
@ -299,29 +293,39 @@ classes:
exact_cardinality: 2
range: float64
required: false
multivalued: false
electrodes_index:
name: electrodes_index
annotations:
named:
tag: named
value: true
description: Index into electrodes.
multivalued: false
range: Units__electrodes_index
range: VectorIndex
required: false
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
multivalued: false
range: Units__electrodes
range: DynamicTableRegion
required: false
multivalued: false
electrode_group:
name: electrode_group
description: Electrode group that each spike unit came from.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
waveform_mean:
name: waveform_mean
description: Spike waveform mean for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -335,9 +339,9 @@ classes:
waveform_sd:
name: waveform_sd
description: Spike waveform standard deviation for each spike unit.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -373,40 +377,36 @@ classes:
order of the waveforms within a given unit x spike event should be in the
same order as the electrodes referenced in the 'electrodes' column of this
table. The number of samples for each waveform must be the same.
multivalued: false
array:
dimensions:
- alias: num_waveforms
- alias: num_samples
range: numeric
required: false
multivalued: false
waveforms_index:
name: waveforms_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index
range: VectorIndex
required: false
multivalued: false
waveforms_index_index:
name: waveforms_index_index
annotations:
named:
tag: named
value: true
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
multivalued: false
range: Units__waveforms_index_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
Units__spike_times_index:
name: Units__spike_times_index
description: Index into the spike_times dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(spike_times_index)
identifier: true
range: string
required: true
equals_string: spike_times_index
Units__spike_times:
name: Units__spike_times
description: Spike times for each unit in seconds.
@ -415,7 +415,6 @@ classes:
name:
name: name
ifabsent: string(spike_times)
identifier: true
range: string
required: true
equals_string: spike_times
@ -427,65 +426,3 @@ classes:
if the acquisition time series was smoothed/interpolated and it is possible
for the spike time to be between samples.
range: float64
Units__obs_intervals_index:
name: Units__obs_intervals_index
description: Index into the obs_intervals dataset.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(obs_intervals_index)
identifier: true
range: string
required: true
equals_string: obs_intervals_index
Units__electrodes_index:
name: Units__electrodes_index
description: Index into electrodes.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(electrodes_index)
identifier: true
range: string
required: true
equals_string: electrodes_index
Units__electrodes:
name: Units__electrodes
description: Electrode that each spike unit came from, specified using a DynamicTableRegion.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
Units__waveforms_index:
name: Units__waveforms_index
description: Index into the waveforms dataset. One value for every spike event.
See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index)
identifier: true
range: string
required: true
equals_string: waveforms_index
Units__waveforms_index_index:
name: Units__waveforms_index_index
description: Index into the waveforms_index dataset. One value for every unit
(row in the table). See 'waveforms' for more detail.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(waveforms_index_index)
identifier: true
range: string
required: true
equals_string: waveforms_index_index

View file

@ -21,18 +21,17 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Applied power for optogenetic stimulus, in watts.
multivalued: false
array:
dimensions:
- alias: num_times
range: numeric
required: true
multivalued: false
tree_root: true
OptogeneticStimulusSite:
name: OptogeneticStimulusSite
@ -41,27 +40,26 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description of stimulation site.
multivalued: false
range: text
required: true
multivalued: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
multivalued: false
location:
name: location
description: Location of the stimulation site. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
multivalued: false
tree_root: true

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -60,7 +59,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
pmt_gain:
@ -76,9 +74,9 @@ classes:
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -97,15 +95,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -116,25 +113,16 @@ classes:
- alias: num_rois
rois:
name: rois
annotations:
named:
tag: named
value: true
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
range: DynamicTableRegion
required: true
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
RoiResponseSeries__rois:
name: RoiResponseSeries__rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(rois)
identifier: true
range: string
required: true
equals_string: rois
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
@ -191,56 +179,51 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: AnyType
range: PlaneSegmentation__image_mask
required: false
any_of:
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- array:
dimensions:
- alias: num_roi
- alias: num_x
- alias: num_y
- alias: num_z
multivalued: false
pixel_mask_index:
name: pixel_mask_index
annotations:
named:
tag: named
value: true
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
range: VectorIndex
required: false
multivalued: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__pixel_mask
required: false
multivalued: false
voxel_mask_index:
name: voxel_mask_index
annotations:
named:
tag: named
value: true
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
range: VectorIndex
required: false
multivalued: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: false
range: PlaneSegmentation__voxel_mask
required: false
multivalued: false
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
@ -250,18 +233,18 @@ classes:
any_of:
- range: ImageSeries
tree_root: true
PlaneSegmentation__pixel_mask_index:
name: PlaneSegmentation__pixel_mask_index
description: Index into pixel_mask.
is_a: VectorIndex
PlaneSegmentation__image_mask:
name: PlaneSegmentation__image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
is_a: VectorData
attributes:
name:
name: name
ifabsent: string(pixel_mask_index)
identifier: true
ifabsent: string(image_mask)
range: string
required: true
equals_string: pixel_mask_index
equals_string: image_mask
PlaneSegmentation__pixel_mask:
name: PlaneSegmentation__pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for the
@ -272,40 +255,27 @@ classes:
name:
name: name
ifabsent: string(pixel_mask)
identifier: true
range: string
required: true
equals_string: pixel_mask
x:
name: x
description: Pixel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Pixel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the pixel.
multivalued: false
range: float32
required: false
PlaneSegmentation__voxel_mask_index:
name: PlaneSegmentation__voxel_mask_index
description: Index into voxel_mask.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(voxel_mask_index)
identifier: true
range: string
required: true
equals_string: voxel_mask_index
multivalued: false
PlaneSegmentation__voxel_mask:
name: PlaneSegmentation__voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for the
@ -316,34 +286,33 @@ classes:
name:
name: name
ifabsent: string(voxel_mask)
identifier: true
range: string
required: true
equals_string: voxel_mask
x:
name: x
description: Voxel x-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
y:
name: y
description: Voxel y-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
z:
name: z
description: Voxel z-coordinate.
multivalued: false
range: uint32
required: false
multivalued: false
weight:
name: weight
description: Weight of the voxel.
multivalued: false
range: float32
required: false
multivalued: false
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
@ -364,21 +333,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
multivalued: false
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
MotionCorrection:
name: MotionCorrection
@ -402,20 +370,19 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
multivalued: false
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true

View file

@ -29,68 +29,67 @@ classes:
name:
name: name
ifabsent: string(ImagingRetinotopy)
identifier: true
range: string
required: true
axis_1_phase_map:
name: axis_1_phase_map
description: Phase response to stimulus on the first measured axis.
multivalued: false
range: ImagingRetinotopy__axis_1_phase_map
required: true
multivalued: false
axis_1_power_map:
name: axis_1_power_map
description: Power response on the first measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_1_power_map
required: false
multivalued: false
axis_2_phase_map:
name: axis_2_phase_map
description: Phase response to stimulus on the second measured axis.
multivalued: false
range: ImagingRetinotopy__axis_2_phase_map
required: true
multivalued: false
axis_2_power_map:
name: axis_2_power_map
description: Power response on the second measured axis. Response is scaled
so 0.0 is no power in the response and 1.0 is maximum relative power.
multivalued: false
range: ImagingRetinotopy__axis_2_power_map
required: false
multivalued: false
axis_descriptions:
name: axis_descriptions
description: Two-element array describing the contents of the two response
axis fields. Description should be something like ['altitude', 'azimuth']
or '['radius', 'theta'].
multivalued: false
array:
dimensions:
- alias: axis_1_axis_2
exact_cardinality: 2
range: text
required: true
multivalued: false
focal_depth_image:
name: focal_depth_image
description: 'Gray-scale image taken with same settings/parameters (e.g.,
focal depth, wavelength) as data collection. Array format: [rows][columns].'
multivalued: false
range: ImagingRetinotopy__focal_depth_image
required: false
multivalued: false
sign_map:
name: sign_map
description: Sine of the angle between the direction of the gradient in axis_1
and axis_2.
multivalued: false
range: ImagingRetinotopy__sign_map
required: false
multivalued: false
vasculature_image:
name: vasculature_image
description: 'Gray-scale anatomical image of cortical surface. Array structure:
[rows][columns]'
multivalued: false
range: ImagingRetinotopy__vasculature_image
required: true
multivalued: false
tree_root: true
ImagingRetinotopy__axis_1_phase_map:
name: ImagingRetinotopy__axis_1_phase_map
@ -99,7 +98,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_phase_map)
identifier: true
range: string
required: true
equals_string: axis_1_phase_map
@ -131,7 +129,6 @@ classes:
name:
name: name
ifabsent: string(axis_1_power_map)
identifier: true
range: string
required: true
equals_string: axis_1_power_map
@ -162,7 +159,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_phase_map)
identifier: true
range: string
required: true
equals_string: axis_2_phase_map
@ -194,7 +190,6 @@ classes:
name:
name: name
ifabsent: string(axis_2_power_map)
identifier: true
range: string
required: true
equals_string: axis_2_power_map
@ -226,7 +221,6 @@ classes:
name:
name: name
ifabsent: string(focal_depth_image)
identifier: true
range: string
required: true
equals_string: focal_depth_image
@ -267,7 +261,6 @@ classes:
name:
name: name
ifabsent: string(sign_map)
identifier: true
range: string
required: true
equals_string: sign_map
@ -295,7 +288,6 @@ classes:
name:
name: name
ifabsent: string(vasculature_image)
identifier: true
range: string
required: true
equals_string: vasculature_image

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -35,7 +34,6 @@ classes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
idx_start:
@ -43,22 +41,22 @@ classes:
description: Start index into the TimeSeries 'data' and 'timestamp' datasets
of the referenced TimeSeries. The first dimension of those arrays is always
time.
multivalued: false
range: int32
required: true
multivalued: false
count:
name: count
description: Number of data samples available in this time series, during
this epoch
multivalued: false
range: int32
required: true
multivalued: false
timeseries:
name: timeseries
description: The TimeSeries that this index applies to
multivalued: false
range: TimeSeries
required: true
multivalued: false
tree_root: true
Image:
name: Image
@ -69,7 +67,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
resolution:
@ -108,15 +105,8 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
image:
name: image
description: Ordered dataset of references to Image objects.
multivalued: true
range: Image
required: true
tree_root: true
NWBContainer:
name: NWBContainer
@ -126,7 +116,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -138,7 +127,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -149,7 +137,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -168,49 +155,49 @@ classes:
dimension should always represent time. This can also be used to store binary
data (e.g., image frames). This can also be a link to data stored in an
external file.
multivalued: false
range: TimeSeries__data
required: true
multivalued: false
starting_time:
name: starting_time
description: Timestamp of the first sample in seconds. When timestamps are
uniformly spaced, the timestamp of the first sample can be specified and
all subsequent ones calculated from the sampling rate attribute.
multivalued: false
range: TimeSeries__starting_time
required: false
multivalued: false
timestamps:
name: timestamps
description: Timestamps for samples stored in data, in seconds, relative to
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: false
multivalued: false
control:
name: control
description: Numerical labels that apply to each time point in data for the
purpose of querying and slicing data by these values. If present, the length
of this array should be the same size as the first dimension of data.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint8
required: false
multivalued: false
control_description:
name: control_description
description: Description of each control value. Must be present if control
is present. If present, control_description[0] should describe time points
where control == 0.
multivalued: false
array:
dimensions:
- alias: num_control_values
range: text
required: false
multivalued: false
sync:
name: sync
description: Lab-specific time and sync information as provided directly from
@ -219,9 +206,9 @@ classes:
This group will usually only be populated in TimeSeries that are stored
external to the NWB file, in files storing raw data. Once timestamp data
is calculated, the contents of 'sync' are mostly for archival purposes.
multivalued: false
range: TimeSeries__sync
required: false
multivalued: false
tree_root: true
TimeSeries__data:
name: TimeSeries__data
@ -232,7 +219,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -312,7 +298,6 @@ classes:
name:
name: name
ifabsent: string(starting_time)
identifier: true
range: string
required: true
equals_string: starting_time
@ -340,7 +325,6 @@ classes:
name:
name: name
ifabsent: string(sync)
identifier: true
range: string
required: true
equals_string: sync
@ -368,7 +352,6 @@ classes:
name:
name: name
ifabsent: string(Images)
identifier: true
range: string
required: true
description:
@ -378,30 +361,20 @@ classes:
image:
name: image
description: Images stored in this collection.
multivalued: true
range: Image
required: true
multivalued: true
order_of_images:
name: order_of_images
annotations:
named:
tag: named
value: true
description: Ordered dataset of references to Image objects stored in the
parent group. Each Image object in the Images group should be stored once
and only once, so the dataset should have the same length as the number
of images.
multivalued: false
range: Images__order_of_images
range: ImageReferences
required: false
multivalued: false
tree_root: true
Images__order_of_images:
name: Images__order_of_images
description: Ordered dataset of references to Image objects stored in the parent
group. Each Image object in the Images group should be stored once and only
once, so the dataset should have the same length as the number of images.
is_a: ImageReferences
attributes:
name:
name: name
ifabsent: string(order_of_images)
identifier: true
range: string
required: true
equals_string: order_of_images

View file

@ -29,22 +29,21 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: 1-D or 2-D array storing position or direction relative to some
reference frame.
multivalued: false
range: SpatialSeries__data
required: true
multivalued: false
reference_frame:
name: reference_frame
description: Description defining what exactly 'straight-ahead' means.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SpatialSeries__data:
name: SpatialSeries__data
@ -54,7 +53,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:

View file

@ -25,7 +25,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
filtering:
@ -41,9 +40,9 @@ classes:
data:
name: data
description: Recorded voltage data.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -59,11 +58,15 @@ classes:
- alias: num_samples
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
multivalued: false
range: ElectricalSeries__electrodes
range: DynamicTableRegion
required: true
multivalued: false
channel_conversion:
name: channel_conversion
description: Channel-specific conversion factor. Multiply the data in the
@ -75,26 +78,13 @@ classes:
as native values generated by data acquisition systems. If this dataset
is not present, then there is no channel-specific conversion factor, i.e.
it is 1 for all channels.
multivalued: false
array:
dimensions:
- alias: num_channels
range: float32
required: false
multivalued: false
tree_root: true
ElectricalSeries__electrodes:
name: ElectricalSeries__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
SpikeEventSeries:
name: SpikeEventSeries
description: 'Stores snapshots/snippets of recorded spike events (i.e., threshold
@ -109,15 +99,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Spike waveforms.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -134,12 +123,12 @@ classes:
the common experiment master-clock stored in NWBFile.timestamps_reference_time.
Timestamps are required for the events. Unlike for TimeSeries, timestamps
are required for SpikeEventSeries and are thus re-specified here.
multivalued: false
array:
dimensions:
- alias: num_times
range: float64
required: true
multivalued: false
tree_root: true
FeatureExtraction:
name: FeatureExtraction
@ -150,23 +139,21 @@ classes:
name:
name: name
ifabsent: string(FeatureExtraction)
identifier: true
range: string
required: true
description:
name: description
description: Description of features (eg, ''PC1'') for each of the extracted
features.
multivalued: false
array:
dimensions:
- alias: num_features
range: text
required: true
multivalued: false
features:
name: features
description: Multi-dimensional array of features extracted from each event.
multivalued: false
array:
dimensions:
- alias: num_events
@ -174,36 +161,28 @@ classes:
- alias: num_features
range: float32
required: true
multivalued: false
times:
name: times
description: Times of events that features correspond to (can be a link).
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
electrodes:
name: electrodes
annotations:
named:
tag: named
value: true
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
range: DynamicTableRegion
required: true
multivalued: false
range: FeatureExtraction__electrodes
required: true
tree_root: true
FeatureExtraction__electrodes:
name: FeatureExtraction__electrodes
description: DynamicTableRegion pointer to the electrodes that this time series
was generated from.
is_a: DynamicTableRegion
attributes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
EventDetection:
name: EventDetection
description: Detected spike events from voltage trace(s).
@ -212,37 +191,36 @@ classes:
name:
name: name
ifabsent: string(EventDetection)
identifier: true
range: string
required: true
detection_method:
name: detection_method
description: Description of how events were detected, such as voltage threshold,
or dV/dT threshold, as well as relevant values.
multivalued: false
range: text
required: true
multivalued: false
source_idx:
name: source_idx
description: Indices (zero-based) into source ElectricalSeries::data array
corresponding to time of event. ''description'' should define what is meant
by time of event (e.g., .25 ms before action potential peak, zero-crossing
time, etc). The index points to each event from the raw data.
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
times:
name: times
description: Timestamps of events, in seconds.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true
EventWaveform:
name: EventWaveform
@ -304,7 +282,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -320,9 +297,9 @@ classes:
position:
name: position
description: stereotaxic or common framework coordinates
multivalued: false
range: ElectrodeGroup__position
required: false
multivalued: false
tree_root: true
ElectrodeGroup__position:
name: ElectrodeGroup__position
@ -331,28 +308,27 @@ classes:
name:
name: name
ifabsent: string(position)
identifier: true
range: string
required: true
equals_string: position
x:
name: x
description: x coordinate
multivalued: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate
multivalued: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate
multivalued: false
range: float32
required: false
multivalued: false
ClusterWaveforms:
name: ClusterWaveforms
description: DEPRECATED The mean waveform shape, including standard deviation,
@ -366,39 +342,38 @@ classes:
name:
name: name
ifabsent: string(ClusterWaveforms)
identifier: true
range: string
required: true
waveform_filtering:
name: waveform_filtering
description: Filtering applied to data before generating mean/sd
multivalued: false
range: text
required: true
multivalued: false
waveform_mean:
name: waveform_mean
description: The mean waveform for each cluster, using the same indices for
each wave as cluster numbers in the associated Clustering module (i.e, cluster
3 is in array slot [3]). Waveforms corresponding to gaps in cluster sequence
should be empty (e.g., zero- filled)
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
waveform_sd:
name: waveform_sd
description: Stdev of waveforms for each cluster, using the same indices as
in mean
multivalued: false
array:
dimensions:
- alias: num_clusters
- alias: num_samples
range: float32
required: true
multivalued: false
tree_root: true
Clustering:
name: Clustering
@ -409,43 +384,42 @@ classes:
name:
name: name
ifabsent: string(Clustering)
identifier: true
range: string
required: true
description:
name: description
description: Description of clusters or clustering, (e.g. cluster 0 is noise,
clusters curated using Klusters, etc)
multivalued: false
range: text
required: true
multivalued: false
num:
name: num
description: Cluster number of each event
multivalued: false
array:
dimensions:
- alias: num_events
range: int32
required: true
multivalued: false
peak_over_rms:
name: peak_over_rms
description: Maximum ratio of waveform peak to RMS on any channel in the cluster
(provides a basic clustering metric).
multivalued: false
array:
dimensions:
- alias: num_clusters
range: float32
required: true
multivalued: false
times:
name: times
description: Times of clustered events, in seconds. This may be a link to
times field in associated FeatureExtraction module.
multivalued: false
array:
dimensions:
- alias: num_events
range: float64
required: true
multivalued: false
tree_root: true

View file

@ -22,76 +22,63 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
start_time:
name: start_time
description: Start time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
stop_time:
name: stop_time
description: Stop time of epoch, in seconds.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: true
multivalued: false
tags:
name: tags
description: User-defined tags that identify or categorize events.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
tags_index:
name: tags_index
annotations:
named:
tag: named
value: true
description: Index for tags.
multivalued: false
range: TimeIntervals__tags_index
range: VectorIndex
required: false
multivalued: false
timeseries:
name: timeseries
annotations:
named:
tag: named
value: true
description: An index into a TimeSeries object.
multivalued: false
range: TimeIntervals__timeseries
range: TimeSeriesReferenceVectorData
required: false
multivalued: false
timeseries_index:
name: timeseries_index
annotations:
named:
tag: named
value: true
description: Index for timeseries.
multivalued: false
range: TimeIntervals__timeseries_index
range: VectorIndex
required: false
multivalued: false
tree_root: true
TimeIntervals__tags_index:
name: TimeIntervals__tags_index
description: Index for tags.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(tags_index)
identifier: true
range: string
required: true
equals_string: tags_index
TimeIntervals__timeseries:
name: TimeIntervals__timeseries
description: An index into a TimeSeries object.
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(timeseries)
identifier: true
range: string
required: true
equals_string: timeseries
TimeIntervals__timeseries_index:
name: TimeIntervals__timeseries_index
description: Index for timeseries.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(timeseries_index)
identifier: true
range: string
required: true
equals_string: timeseries_index

View file

@ -28,7 +28,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
notes:
@ -45,7 +44,6 @@ classes:
name:
name: name
ifabsent: string(root)
identifier: true
range: string
required: true
equals_string: root
@ -63,36 +61,36 @@ classes:
The file can be created after the experiment was run, so this may differ
from the experiment start time. Each modification to the nwb file adds a
new entry to the array.'
multivalued: false
array:
dimensions:
- alias: num_modifications
range: isodatetime
required: true
multivalued: false
identifier:
name: identifier
description: A unique text identifier for the file. For example, concatenated
lab name, file creation date/time and experimentalist, or a hash of these
and/or other values. The goal is that the string should be unique to all
other files.
multivalued: false
range: text
required: true
multivalued: false
session_description:
name: session_description
description: A description of the experimental session and data in the file.
multivalued: false
range: text
required: true
multivalued: false
session_start_time:
name: session_start_time
description: 'Date and time of the experiment/session start. The date is stored
in UTC with local timezone offset as ISO 8601 extended formatted string:
2018-09-28T14:43:54.123+02:00. Dates stored in UTC end in "Z" with no timezone
offset. Date accuracy is up to milliseconds.'
multivalued: false
range: isodatetime
required: true
multivalued: false
timestamps_reference_time:
name: timestamps_reference_time
description: 'Date and time corresponding to time zero of all timestamps.
@ -100,9 +98,9 @@ classes:
formatted string: 2018-09-28T14:43:54.123+02:00. Dates stored in UTC end
in "Z" with no timezone offset. Date accuracy is up to milliseconds. All
times stored in the file use this time as reference (i.e., time zero).'
multivalued: false
range: isodatetime
required: true
multivalued: false
acquisition:
name: acquisition
description: Data streams recorded from the system, including ephys, ophys,
@ -179,9 +177,9 @@ classes:
an experiment. The stimulus group is organized so that one version of template
stimuli can be stored and these be used multiple times. These templates
can exist in the present file or can be linked to a remote library file.
multivalued: false
range: NWBFile__stimulus
required: true
multivalued: false
general:
name: general
description: Experimental metadata, including protocol, notes and description
@ -199,9 +197,9 @@ classes:
datasets. All entries in the below table are to be included when data is
present. Unused groups (e.g., intracellular_ephys in an optophysiology experiment)
should not be created unless there is data to store within them.
multivalued: false
range: NWBFile__general
required: true
multivalued: false
intervals:
name: intervals
description: Experimental intervals, whether that be logically distinct sub-experiments
@ -219,9 +217,9 @@ classes:
units:
name: units
description: Data about sorted spike units.
multivalued: false
range: Units
required: false
multivalued: false
tree_root: true
NWBFile__stimulus:
name: NWBFile__stimulus
@ -241,7 +239,6 @@ classes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
@ -287,129 +284,128 @@ classes:
name:
name: name
ifabsent: string(general)
identifier: true
range: string
required: true
equals_string: general
data_collection:
name: data_collection
description: Notes about data collection and analysis.
multivalued: false
range: text
required: false
multivalued: false
experiment_description:
name: experiment_description
description: General description of the experiment.
multivalued: false
range: text
required: false
multivalued: false
experimenter:
name: experimenter
description: Name of person(s) who performed the experiment. Can also specify
roles of different people involved.
multivalued: false
array:
dimensions:
- alias: num_experimenters
range: text
required: false
multivalued: false
institution:
name: institution
description: Institution(s) where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
keywords:
name: keywords
description: Terms to search over.
multivalued: false
array:
dimensions:
- alias: num_keywords
range: text
required: false
multivalued: false
lab:
name: lab
description: Laboratory where experiment was performed.
multivalued: false
range: text
required: false
multivalued: false
notes:
name: notes
description: Notes about the experiment.
multivalued: false
range: text
required: false
multivalued: false
pharmacology:
name: pharmacology
description: Description of drugs used, including how and when they were administered.
Anesthesia(s), painkiller(s), etc., plus dosage, concentration, etc.
multivalued: false
range: text
required: false
multivalued: false
protocol:
name: protocol
description: Experimental protocol, if applicable. e.g., include IACUC protocol
number.
multivalued: false
range: text
required: false
multivalued: false
related_publications:
name: related_publications
description: Publication information. PMID, DOI, URL, etc.
multivalued: false
array:
dimensions:
- alias: num_publications
range: text
required: false
multivalued: false
session_id:
name: session_id
description: Lab-specific ID for the session.
multivalued: false
range: text
required: false
multivalued: false
slices:
name: slices
description: Description of slices, including information about preparation
thickness, orientation, temperature, and bath solution.
multivalued: false
range: text
required: false
multivalued: false
source_script:
name: source_script
description: Script file or link to public source code used to create this
NWB file.
multivalued: false
range: NWBFile__general__source_script
required: false
multivalued: false
stimulus:
name: stimulus
description: Notes about stimuli, such as how and where they were presented.
multivalued: false
range: text
required: false
multivalued: false
surgery:
name: surgery
description: Narrative description about surgery/surgeries, including date(s)
and who performed surgery.
multivalued: false
range: text
required: false
multivalued: false
virus:
name: virus
description: Information about virus(es) used in experiments, including virus
ID, source, date made, injection location, volume, etc.
multivalued: false
range: text
required: false
multivalued: false
lab_meta_data:
name: lab_meta_data
description: Place-holder than can be extended so that lab-specific meta-data
can be placed in /general.
multivalued: true
range: LabMetaData
required: false
multivalued: true
devices:
name: devices
description: Description of hardware devices used during experiment, e.g.,
@ -423,21 +419,21 @@ classes:
name: subject
description: Information about the animal or person from which the data was
measured.
multivalued: false
range: Subject
required: false
multivalued: false
extracellular_ephys:
name: extracellular_ephys
description: Metadata related to extracellular electrophysiology.
multivalued: false
range: NWBFile__general__extracellular_ephys
required: false
multivalued: false
intracellular_ephys:
name: intracellular_ephys
description: Metadata related to intracellular electrophysiology.
multivalued: false
range: NWBFile__general__intracellular_ephys
required: false
multivalued: false
optogenetics:
name: optogenetics
description: Metadata describing optogenetic stimuluation.
@ -462,7 +458,6 @@ classes:
name:
name: name
ifabsent: string(source_script)
identifier: true
range: string
required: true
equals_string: source_script
@ -481,22 +476,21 @@ classes:
name:
name: name
ifabsent: string(extracellular_ephys)
identifier: true
range: string
required: true
equals_string: extracellular_ephys
electrode_group:
name: electrode_group
description: Physical group of electrodes.
multivalued: true
range: ElectrodeGroup
required: false
multivalued: true
electrodes:
name: electrodes
description: A table of all electrodes (i.e. channels) used for recording.
multivalued: false
range: NWBFile__general__extracellular_ephys__electrodes
required: false
multivalued: false
NWBFile__general__extracellular_ephys__electrodes:
name: NWBFile__general__extracellular_ephys__electrodes
description: A table of all electrodes (i.e. channels) used for recording.
@ -505,75 +499,119 @@ classes:
name:
name: name
ifabsent: string(electrodes)
identifier: true
range: string
required: true
equals_string: electrodes
x:
name: x
description: x coordinate of the channel location in the brain (+x is posterior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
y:
name: y
description: y coordinate of the channel location in the brain (+y is inferior).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
z:
name: z
description: z coordinate of the channel location in the brain (+z is right).
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
imp:
name: imp
description: Impedance of the channel, in ohms.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
location:
name: location
description: Location of the electrode (channel). Specify the area, layer,
comments on estimation of area/layer, stereotaxic coordinates if in vivo,
etc. Use standard atlas names for anatomical regions when possible.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Description of hardware filtering, including the filter name
and frequency cutoffs.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
group:
name: group
description: Reference to the ElectrodeGroup this electrode is a part of.
multivalued: true
range: ElectrodeGroup
required: true
multivalued: true
group_name:
name: group_name
description: Name of the ElectrodeGroup this electrode is a part of.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
rel_x:
name: rel_x
description: x coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_y:
name: rel_y
description: y coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
rel_z:
name: rel_z
description: z coordinate in electrode group
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: float32
required: false
multivalued: false
reference:
name: reference
description: Description of the reference electrode and/or reference scheme
used for this electrode, e.g., "stainless steel skull screw" or "online
common average referencing".
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: false
multivalued: false
NWBFile__general__intracellular_ephys:
name: NWBFile__general__intracellular_ephys
description: Metadata related to intracellular electrophysiology.
@ -581,7 +619,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_ephys)
identifier: true
range: string
required: true
equals_string: intracellular_ephys
@ -591,24 +628,24 @@ classes:
of filtering used. Includes filtering type and parameters, frequency fall-off,
etc. If this changes between TimeSeries, filter description should be stored
as a text attribute for each TimeSeries.'
multivalued: false
range: text
required: false
multivalued: false
intracellular_electrode:
name: intracellular_electrode
description: An intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: false
multivalued: true
sweep_table:
name: sweep_table
description: '[DEPRECATED] Table used to group different PatchClampSeries.
SweepTable is being replaced by IntracellularRecordingsTable and SimultaneousRecordingsTable
tables. Additional SequentialRecordingsTable, RepetitionsTable and ExperimentalConditions
tables provide enhanced support for experiment metadata.'
multivalued: false
range: SweepTable
required: false
multivalued: false
intracellular_recordings:
name: intracellular_recordings
description: A table to group together a stimulus and response from a single
@ -623,42 +660,42 @@ classes:
PatchClampSeries. However, the use of AD/DA channels that are not associated
to an electrode is also common in intracellular electrophysiology, in which
case other TimeSeries may be used.
multivalued: false
range: IntracellularRecordingsTable
required: false
multivalued: false
simultaneous_recordings:
name: simultaneous_recordings
description: A table for grouping different intracellular recordings from
the IntracellularRecordingsTable table together that were recorded simultaneously
from different electrodes
multivalued: false
range: SimultaneousRecordingsTable
required: false
multivalued: false
sequential_recordings:
name: sequential_recordings
description: A table for grouping different sequential recordings from the
SimultaneousRecordingsTable table together. This is typically used to group
together sequential recordings where the a sequence of stimuli of the same
type with varying parameters have been presented in a sequence.
multivalued: false
range: SequentialRecordingsTable
required: false
multivalued: false
repetitions:
name: repetitions
description: A table for grouping different sequential intracellular recordings
together. With each SequentialRecording typically representing a particular
type of stimulus, the RepetitionsTable table is typically used to group
sets of stimuli applied in sequence.
multivalued: false
range: RepetitionsTable
required: false
multivalued: false
experimental_conditions:
name: experimental_conditions
description: A table for grouping different intracellular recording repetitions
together that belong to the same experimental experimental_conditions.
multivalued: false
range: ExperimentalConditionsTable
required: false
multivalued: false
LabMetaData:
name: LabMetaData
description: Lab-specific meta-data.
@ -666,7 +703,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -677,65 +713,64 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
age:
name: age
description: Age of subject. Can be supplied instead of 'date_of_birth'.
multivalued: false
range: Subject__age
required: false
multivalued: false
date_of_birth:
name: date_of_birth
description: Date of birth of subject. Can be supplied instead of 'age'.
multivalued: false
range: isodatetime
required: false
multivalued: false
description:
name: description
description: Description of subject and where subject came from (e.g., breeder,
if animal).
multivalued: false
range: text
required: false
multivalued: false
genotype:
name: genotype
description: Genetic strain. If absent, assume Wild Type (WT).
multivalued: false
range: text
required: false
multivalued: false
sex:
name: sex
description: Gender of subject.
multivalued: false
range: text
required: false
multivalued: false
species:
name: species
description: Species of subject.
multivalued: false
range: text
required: false
multivalued: false
strain:
name: strain
description: Strain of subject.
multivalued: false
range: text
required: false
multivalued: false
subject_id:
name: subject_id
description: ID of animal/person used/participating in experiment (lab convention).
multivalued: false
range: text
required: false
multivalued: false
weight:
name: weight
description: Weight at time of experiment, at time of surgery and at other
important times.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
Subject__age:
name: Subject__age
@ -744,7 +779,6 @@ classes:
name:
name: name
ifabsent: string(age)
identifier: true
range: string
required: true
equals_string: age

View file

@ -23,7 +23,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -37,16 +36,16 @@ classes:
data:
name: data
description: Recorded voltage or current.
multivalued: false
range: PatchClampSeries__data
required: true
multivalued: false
gain:
name: gain
description: Gain of the recording, in units Volt/Amp (v-clamp) or Volt/Volt
(c-clamp).
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
PatchClampSeries__data:
name: PatchClampSeries__data
@ -55,7 +54,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -80,33 +78,32 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded voltage.
multivalued: false
range: CurrentClampSeries__data
required: true
multivalued: false
bias_current:
name: bias_current
description: Bias current, in amps.
multivalued: false
range: float32
required: false
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms.
multivalued: false
range: float32
required: false
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads.
multivalued: false
range: float32
required: false
multivalued: false
tree_root: true
CurrentClampSeries__data:
name: CurrentClampSeries__data
@ -115,7 +112,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -140,7 +136,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
stimulus_description:
@ -151,21 +146,21 @@ classes:
bias_current:
name: bias_current
description: Bias current, in amps, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
bridge_balance:
name: bridge_balance
description: Bridge balance, in ohms, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
capacitance_compensation:
name: capacitance_compensation
description: Capacitance compensation, in farads, fixed to 0.0.
multivalued: false
range: float32
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries:
name: CurrentClampStimulusSeries
@ -174,15 +169,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus current applied.
multivalued: false
range: CurrentClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
CurrentClampStimulusSeries__data:
name: CurrentClampStimulusSeries__data
@ -191,7 +185,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -215,57 +208,56 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Recorded current.
multivalued: false
range: VoltageClampSeries__data
required: true
multivalued: false
capacitance_fast:
name: capacitance_fast
description: Fast capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_fast
required: false
multivalued: false
capacitance_slow:
name: capacitance_slow
description: Slow capacitance, in farads.
multivalued: false
range: VoltageClampSeries__capacitance_slow
required: false
multivalued: false
resistance_comp_bandwidth:
name: resistance_comp_bandwidth
description: Resistance compensation bandwidth, in hertz.
multivalued: false
range: VoltageClampSeries__resistance_comp_bandwidth
required: false
multivalued: false
resistance_comp_correction:
name: resistance_comp_correction
description: Resistance compensation correction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_correction
required: false
multivalued: false
resistance_comp_prediction:
name: resistance_comp_prediction
description: Resistance compensation prediction, in percent.
multivalued: false
range: VoltageClampSeries__resistance_comp_prediction
required: false
multivalued: false
whole_cell_capacitance_comp:
name: whole_cell_capacitance_comp
description: Whole cell capacitance compensation, in farads.
multivalued: false
range: VoltageClampSeries__whole_cell_capacitance_comp
required: false
multivalued: false
whole_cell_series_resistance_comp:
name: whole_cell_series_resistance_comp
description: Whole cell series resistance compensation, in ohms.
multivalued: false
range: VoltageClampSeries__whole_cell_series_resistance_comp
required: false
multivalued: false
tree_root: true
VoltageClampSeries__data:
name: VoltageClampSeries__data
@ -274,7 +266,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -296,7 +287,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_fast)
identifier: true
range: string
required: true
equals_string: capacitance_fast
@ -315,7 +305,6 @@ classes:
name:
name: name
ifabsent: string(capacitance_slow)
identifier: true
range: string
required: true
equals_string: capacitance_slow
@ -334,7 +323,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_bandwidth)
identifier: true
range: string
required: true
equals_string: resistance_comp_bandwidth
@ -354,7 +342,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_correction)
identifier: true
range: string
required: true
equals_string: resistance_comp_correction
@ -374,7 +361,6 @@ classes:
name:
name: name
ifabsent: string(resistance_comp_prediction)
identifier: true
range: string
required: true
equals_string: resistance_comp_prediction
@ -394,7 +380,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_capacitance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_capacitance_comp
@ -414,7 +399,6 @@ classes:
name:
name: name
ifabsent: string(whole_cell_series_resistance_comp)
identifier: true
range: string
required: true
equals_string: whole_cell_series_resistance_comp
@ -434,15 +418,14 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Stimulus voltage applied.
multivalued: false
range: VoltageClampStimulusSeries__data
required: true
multivalued: false
tree_root: true
VoltageClampStimulusSeries__data:
name: VoltageClampStimulusSeries__data
@ -451,7 +434,6 @@ classes:
name:
name: name
ifabsent: string(data)
identifier: true
range: string
required: true
equals_string: data
@ -473,59 +455,58 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
cell_id:
name: cell_id
description: unique ID of the cell
multivalued: false
range: text
required: false
multivalued: false
description:
name: description
description: Description of electrode (e.g., whole-cell, sharp, etc.).
multivalued: false
range: text
required: true
multivalued: false
filtering:
name: filtering
description: Electrode specific filtering.
multivalued: false
range: text
required: false
multivalued: false
initial_access_resistance:
name: initial_access_resistance
description: Initial access resistance.
multivalued: false
range: text
required: false
multivalued: false
location:
name: location
description: Location of the electrode. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: false
multivalued: false
resistance:
name: resistance
description: Electrode resistance, in ohms.
multivalued: false
range: text
required: false
multivalued: false
seal:
name: seal
description: Information about seal used for recording.
multivalued: false
range: text
required: false
multivalued: false
slice:
name: slice
description: Information about slice used for recording.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
SweepTable:
name: SweepTable
@ -537,38 +518,34 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
sweep_number:
name: sweep_number
description: Sweep number of the PatchClampSeries in that row.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: uint32
required: true
multivalued: false
series:
name: series
description: The PatchClampSeries with the sweep number in that row.
multivalued: true
range: PatchClampSeries
required: true
multivalued: true
series_index:
name: series_index
annotations:
named:
tag: named
value: true
description: Index for series.
range: VectorIndex
required: true
multivalued: false
range: SweepTable__series_index
required: true
tree_root: true
SweepTable__series_index:
name: SweepTable__series_index
description: Index for series.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(series_index)
identifier: true
range: string
required: true
equals_string: series_index
IntracellularElectrodesTable:
name: IntracellularElectrodesTable
description: Table for storing intracellular electrode related metadata.
@ -576,7 +553,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -586,8 +562,9 @@ classes:
electrode:
name: electrode
description: Column for storing the reference to the intracellular electrode.
multivalued: true
range: IntracellularElectrode
required: true
multivalued: true
tree_root: true
IntracellularStimuliTable:
name: IntracellularStimuliTable
@ -596,7 +573,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -605,45 +581,27 @@ classes:
range: text
stimulus:
name: stimulus
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded stimulus for the
recording (rows).
multivalued: false
range: IntracellularStimuliTable__stimulus
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
stimulus_template:
name: stimulus_template
annotations:
named:
tag: named
value: true
description: Column storing the reference to the stimulus template for the
recording (rows).
multivalued: false
range: IntracellularStimuliTable__stimulus_template
range: TimeSeriesReferenceVectorData
required: false
multivalued: false
tree_root: true
IntracellularStimuliTable__stimulus:
name: IntracellularStimuliTable__stimulus
description: Column storing the reference to the recorded stimulus for the recording
(rows).
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(stimulus)
identifier: true
range: string
required: true
equals_string: stimulus
IntracellularStimuliTable__stimulus_template:
name: IntracellularStimuliTable__stimulus_template
description: Column storing the reference to the stimulus template for the recording
(rows).
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(stimulus_template)
identifier: true
range: string
required: true
equals_string: stimulus_template
IntracellularResponsesTable:
name: IntracellularResponsesTable
description: Table for storing intracellular response related metadata.
@ -651,7 +609,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
description:
@ -660,25 +617,16 @@ classes:
range: text
response:
name: response
annotations:
named:
tag: named
value: true
description: Column storing the reference to the recorded response for the
recording (rows)
range: TimeSeriesReferenceVectorData
required: true
multivalued: false
range: IntracellularResponsesTable__response
required: true
tree_root: true
IntracellularResponsesTable__response:
name: IntracellularResponsesTable__response
description: Column storing the reference to the recorded response for the recording
(rows)
is_a: TimeSeriesReferenceVectorData
attributes:
name:
name: name
ifabsent: string(response)
identifier: true
range: string
required: true
equals_string: response
IntracellularRecordingsTable:
name: IntracellularRecordingsTable
description: A table to group together a stimulus and response from a single electrode
@ -697,7 +645,6 @@ classes:
name:
name: name
ifabsent: string(intracellular_recordings)
identifier: true
range: string
required: true
equals_string: intracellular_recordings
@ -709,21 +656,21 @@ classes:
electrodes:
name: electrodes
description: Table for storing intracellular electrode related metadata.
multivalued: false
range: IntracellularElectrodesTable
required: true
multivalued: false
stimuli:
name: stimuli
description: Table for storing intracellular stimulus related metadata.
multivalued: false
range: IntracellularStimuliTable
required: true
multivalued: false
responses:
name: responses
description: Table for storing intracellular response related metadata.
multivalued: false
range: IntracellularResponsesTable
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable:
name: SimultaneousRecordingsTable
@ -735,7 +682,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -743,15 +689,19 @@ classes:
name: recordings
description: A reference to one or more rows in the IntracellularRecordingsTable
table.
multivalued: false
range: SimultaneousRecordingsTable__recordings
required: true
multivalued: false
recordings_index:
name: recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the recordings column.
multivalued: false
range: SimultaneousRecordingsTable__recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
SimultaneousRecordingsTable__recordings:
name: SimultaneousRecordingsTable__recordings
@ -762,7 +712,6 @@ classes:
name:
name: name
ifabsent: string(recordings)
identifier: true
range: string
required: true
equals_string: recordings
@ -772,18 +721,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: IntracellularRecordingsTable
SimultaneousRecordingsTable__recordings_index:
name: SimultaneousRecordingsTable__recordings_index
description: Index dataset for the recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(recordings_index)
identifier: true
range: string
required: true
equals_string: recordings_index
SequentialRecordingsTable:
name: SequentialRecordingsTable
description: A table for grouping different sequential recordings from the SimultaneousRecordingsTable
@ -795,7 +732,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -803,20 +739,28 @@ classes:
name: simultaneous_recordings
description: A reference to one or more rows in the SimultaneousRecordingsTable
table.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings
required: true
multivalued: false
simultaneous_recordings_index:
name: simultaneous_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the simultaneous_recordings column.
multivalued: false
range: SequentialRecordingsTable__simultaneous_recordings_index
range: VectorIndex
required: true
multivalued: false
stimulus_type:
name: stimulus_type
description: The type of stimulus used for the sequential recording.
multivalued: true
array:
minimum_number_dimensions: 1
maximum_number_dimensions: false
range: text
required: true
multivalued: false
tree_root: true
SequentialRecordingsTable__simultaneous_recordings:
name: SequentialRecordingsTable__simultaneous_recordings
@ -827,7 +771,6 @@ classes:
name:
name: name
ifabsent: string(simultaneous_recordings)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings
@ -837,18 +780,6 @@ classes:
table region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SimultaneousRecordingsTable
SequentialRecordingsTable__simultaneous_recordings_index:
name: SequentialRecordingsTable__simultaneous_recordings_index
description: Index dataset for the simultaneous_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(simultaneous_recordings_index)
identifier: true
range: string
required: true
equals_string: simultaneous_recordings_index
RepetitionsTable:
name: RepetitionsTable
description: A table for grouping different sequential intracellular recordings
@ -860,7 +791,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -868,15 +798,19 @@ classes:
name: sequential_recordings
description: A reference to one or more rows in the SequentialRecordingsTable
table.
multivalued: false
range: RepetitionsTable__sequential_recordings
required: true
multivalued: false
sequential_recordings_index:
name: sequential_recordings_index
annotations:
named:
tag: named
value: true
description: Index dataset for the sequential_recordings column.
multivalued: false
range: RepetitionsTable__sequential_recordings_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
RepetitionsTable__sequential_recordings:
name: RepetitionsTable__sequential_recordings
@ -887,7 +821,6 @@ classes:
name:
name: name
ifabsent: string(sequential_recordings)
identifier: true
range: string
required: true
equals_string: sequential_recordings
@ -897,18 +830,6 @@ classes:
region applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: SequentialRecordingsTable
RepetitionsTable__sequential_recordings_index:
name: RepetitionsTable__sequential_recordings_index
description: Index dataset for the sequential_recordings column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(sequential_recordings_index)
identifier: true
range: string
required: true
equals_string: sequential_recordings_index
ExperimentalConditionsTable:
name: ExperimentalConditionsTable
description: A table for grouping different intracellular recording repetitions
@ -918,22 +839,25 @@ classes:
name:
name: name
ifabsent: string(experimental_conditions)
identifier: true
range: string
required: true
equals_string: experimental_conditions
repetitions:
name: repetitions
description: A reference to one or more rows in the RepetitionsTable table.
multivalued: false
range: ExperimentalConditionsTable__repetitions
required: true
multivalued: false
repetitions_index:
name: repetitions_index
annotations:
named:
tag: named
value: true
description: Index dataset for the repetitions column.
multivalued: false
range: ExperimentalConditionsTable__repetitions_index
range: VectorIndex
required: true
multivalued: false
tree_root: true
ExperimentalConditionsTable__repetitions:
name: ExperimentalConditionsTable__repetitions
@ -943,7 +867,6 @@ classes:
name:
name: name
ifabsent: string(repetitions)
identifier: true
range: string
required: true
equals_string: repetitions
@ -953,15 +876,3 @@ classes:
applies to. This specializes the attribute inherited from DynamicTableRegion
to fix the type of table that can be referenced here.
range: RepetitionsTable
ExperimentalConditionsTable__repetitions_index:
name: ExperimentalConditionsTable__repetitions_index
description: Index dataset for the repetitions column.
is_a: VectorIndex
attributes:
name:
name: name
ifabsent: string(repetitions_index)
identifier: true
range: string
required: true
equals_string: repetitions_index

View file

@ -21,7 +21,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -32,7 +31,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -43,7 +41,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -59,16 +56,15 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Binary data representing images across frames. If data are stored
in an external file, this should be an empty 3D array.
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -84,12 +80,12 @@ classes:
dimension:
name: dimension
description: Number of pixels on x, y, (and z) axes.
multivalued: false
array:
dimensions:
- alias: rank
range: int32
required: false
multivalued: false
external_file:
name: external_file
description: Paths to one or more external file(s). The field is only present
@ -97,18 +93,18 @@ classes:
in the file system as one or more image file(s). This field should NOT be
used if the image is stored in another NWB file and that file is linked
to this file.
multivalued: false
range: ImageSeries__external_file
required: false
multivalued: false
format:
name: format
description: Format of image. If this is 'external', then the attribute 'external_file'
contains the path information to the image files. If this is 'raw', then
the raw (single-channel) binary data is stored in the 'data' dataset. If
this attribute is not present, then the default format='raw' case is assumed.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
ImageSeries__external_file:
name: ImageSeries__external_file
@ -120,7 +116,6 @@ classes:
name:
name: name
ifabsent: string(external_file)
identifier: true
range: string
required: true
equals_string: external_file
@ -156,7 +151,6 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
tree_root: true
@ -171,21 +165,20 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
distance:
name: distance
description: Distance from camera/monitor to target/eye.
multivalued: false
range: float32
required: false
multivalued: false
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: float32
required: false
multivalued: false
any_of:
- array:
dimensions:
@ -198,9 +191,9 @@ classes:
data:
name: data
description: Images presented to subject, either grayscale or RGB
multivalued: false
range: numeric
required: true
multivalued: false
any_of:
- array:
dimensions:
@ -218,9 +211,9 @@ classes:
name: orientation
description: Description of image relative to some reference frame (e.g.,
which way is up). Must also specify frame of reference.
multivalued: false
range: text
required: false
multivalued: false
tree_root: true
IndexSeries:
name: IndexSeries
@ -235,17 +228,16 @@ classes:
attributes:
name:
name: name
identifier: true
range: string
required: true
data:
name: data
description: Index of the image (using zero-indexing) in the linked Images
object.
multivalued: false
array:
dimensions:
- alias: num_times
range: uint32
required: true
multivalued: false
tree_root: true

View file

@ -19,53 +19,67 @@ types:
float32:
name: float32
typeof: float
repr: np.float32
float64:
name: float64
typeof: double
repr: np.float64
long:
name: long
typeof: integer
repr: np.longlong
int64:
name: int64
typeof: integer
repr: np.int64
int:
name: int
typeof: integer
int32:
name: int32
typeof: integer
repr: np.int32
int16:
name: int16
typeof: integer
repr: np.int16
short:
name: short
typeof: integer
repr: np.int16
int8:
name: int8
typeof: integer
repr: np.int8
uint:
name: uint
typeof: integer
repr: np.uint64
minimum_value: 0
uint32:
name: uint32
typeof: integer
repr: np.uint32
minimum_value: 0
uint16:
name: uint16
typeof: integer
repr: np.uint16
minimum_value: 0
uint8:
name: uint8
typeof: integer
repr: np.uint8
minimum_value: 0
uint64:
name: uint64
typeof: integer
repr: np.uint64
minimum_value: 0
numeric:
name: numeric
typeof: float
repr: np.number
text:
name: text
typeof: string
@ -87,58 +101,7 @@ types:
isodatetime:
name: isodatetime
typeof: datetime
enums:
FlatDType:
name: FlatDType
permissible_values:
float:
text: float
float32:
text: float32
double:
text: double
float64:
text: float64
long:
text: long
int64:
text: int64
int:
text: int
int32:
text: int32
int16:
text: int16
short:
text: short
int8:
text: int8
uint:
text: uint
uint32:
text: uint32
uint16:
text: uint16
uint8:
text: uint8
uint64:
text: uint64
numeric:
text: numeric
text:
text: text
utf:
text: utf
utf8:
text: utf8
utf_8:
text: utf_8
ascii:
text: ascii
bool:
text: bool
isodatetime:
text: isodatetime
repr: np.datetime64
classes:
AnyType:
name: AnyType

Some files were not shown because too many files have changed in this diff Show more