Description
The NWB data standard is governed by the NWB Format Specification (a.k.a., the NWB Schema) described using the NWB Specification Language. This schema defines all the neurodata_types available in NWB.
When creating new extensions, developers typically build on and reuse existing neurodata_types already available in NWB. The NWB Format Specification provides a reference definition for all types available in NWB. The NWB schema itself builds on the HDMF Common Schema.
Installation
The NWB Schema is a documentation resource, not a software package to install. The documentation can be accessed at:
https://nwb-schema.readthedocs.io/
Usage
The NWB Schema is primarily used as a reference when creating extensions or when implementing software that needs to understand the structure of NWB files. Below is an example of how the NWB Schema defines a neurodata_type:
groups:
- neurodata_type_def: NWBFile
default_name: root
doc: An NWB file storing cellular-based neurophysiology data from a single
session.
attributes:
- name: nwb_version
dtype: text
value: "2.2.5"
doc: File version string. Use semantic versioning, e.g. 1.2.3.
groups:
- name: acquisition
doc: Data acquired from the subject.
groups:
- neurodata_type_inc: NWBDataInterface
doc: The base data interface for an acquired data type.
quantity: '*'
# ... more definitions ...
Additional Information
The NWB Schema is a living document that evolves through community contributions and feedback. Extensions build on this foundation, allowing researchers to add specialized data types while maintaining compatibility with the core NWB standard.
Understanding the NWB Schema is essential for anyone developing tools for NWB data, creating extensions, or seeking to understand the detailed structure of NWB files.