hdmf_common_table¶
- class ConfiguredBaseModel(*, hdf5_path: str | None = None, object_id: str | None = None)¶
Bases:
BaseModelCreate a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_fields: ClassVar[dict[str, FieldInfo]] = {'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class LinkMLMeta(root: RootModelRootType = PydanticUndefined)¶
Bases:
RootModelCreate a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- model_config: ClassVar[ConfigDict] = {'frozen': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class Data(*, hdf5_path: str | None = None, object_id: str | None = None, name: str)¶
Bases:
ConfiguredBaseModelAn abstract data type for a dataset.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class Index(*, hdf5_path: str | None = None, object_id: str | None = None, name: str, target: Data | None = None)¶
Bases:
DataPointers that index data values.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object'), 'target': FieldInfo(annotation=Union[Data, NoneType], required=False, default=None, description='Target dataset that this index applies to.')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class VectorData(*, hdf5_path: str | None = None, object_id: str | None = None, name: str, description: str | None = None, array: ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1, * dim2], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1, * dim2, * dim3], ~typing.Any] | None = None)¶
Bases:
DataAn n-dimensional dataset representing a column of a DynamicTable. If used without an accompanying VectorIndex, first dimension is along the rows of the DynamicTable and each step along the first dimension is a cell of the larger table. VectorData can also be used to represent a ragged array if paired with a VectorIndex. This allows for storing arrays of varying length in a single cell of the DynamicTable by indexing into this VectorData. The first vector is at VectorData[0:VectorIndex(0)+1]. The second vector is at VectorData[VectorIndex(0)+1:VectorIndex(1)+1], and so on.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- array: NDArray[Shape['* dim0'], Any] | NDArray[Shape['* dim0, * dim1'], Any] | NDArray[Shape['* dim0, * dim1, * dim2'], Any] | NDArray[Shape['* dim0, * dim1, * dim2, * dim3'], Any] | None¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'array': FieldInfo(annotation=Union[NDArray, NDArray, NDArray, NDArray, NoneType], required=False, default=None), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Description of what these vectors represent.'), 'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class VectorIndex(*, hdf5_path: str | None = None, object_id: str | None = None, name: str, target: ~nwb_linkml.models.pydantic.hdmf_common.v1_1_3.hdmf_common_table.VectorData | None = None, array: ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* num_rows], ~typing.Any] | None = None)¶
Bases:
IndexUsed with VectorData to encode a ragged array. An array of indices into the first dimension of the target VectorData, and forming a map between the rows of a DynamicTable and the indices of the VectorData.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- target: VectorData | None¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'array': FieldInfo(annotation=Union[NDArray, NoneType], required=False, default=None, json_schema_extra={'linkml_meta': {'array': {'dimensions': [{'alias': 'num_rows'}]}}}), 'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object'), 'target': FieldInfo(annotation=Union[VectorData, NoneType], required=False, default=None, description='Reference to the target dataset that this index applies to.')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class ElementIdentifiers(*, hdf5_path: str | None = None, object_id: str | None = None, name: str = 'element_id')¶
Bases:
DataA list of unique identifiers for values within a dataset, e.g. rows of a DynamicTable.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=False, default='element_id', json_schema_extra={'linkml_meta': {'ifabsent': 'string(element_id)'}}), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class DynamicTableRegion(*, hdf5_path: str | None = None, object_id: str | None = None, name: str, description: str | None = None, array: ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1, * dim2], ~typing.Any] | ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* dim0, * dim1, * dim2, * dim3], ~typing.Any] | None = None, table: ~nwb_linkml.models.pydantic.hdmf_common.v1_1_3.hdmf_common_table.DynamicTable | None = None)¶
Bases:
VectorDataDynamicTableRegion provides a link from one table to an index or region of another. The table attribute is a link to another DynamicTable, indicating which table is referenced, and the data is int(s) indicating the row(s) (0-indexed) of the target array. DynamicTableRegion`s can be used to associate rows with repeated meta-data without data duplication. They can also be used to create hierarchical relationships between multiple `DynamicTable`s. `DynamicTableRegion objects may be paired with a VectorIndex object to create ragged references, so a single cell of a DynamicTable can reference many rows of another DynamicTable.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- array: NDArray[Shape['* dim0'], Any] | NDArray[Shape['* dim0, * dim1'], Any] | NDArray[Shape['* dim0, * dim1, * dim2'], Any] | NDArray[Shape['* dim0, * dim1, * dim2, * dim3'], Any] | None¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'array': FieldInfo(annotation=Union[NDArray, NDArray, NDArray, NDArray, NoneType], required=False, default=None), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Description of what this table region points to.'), 'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object'), 'table': FieldInfo(annotation=Union[DynamicTable, NoneType], required=False, default=None, description='Reference to the DynamicTable object that this region applies to.')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class Container(*, hdf5_path: str | None = None, object_id: str | None = None, name: str)¶
Bases:
ConfiguredBaseModelAn abstract data type for a generic container storing collections of data and metadata. Base type for all data and metadata containers.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- linkml_meta: ClassVar[LinkMLMeta] = LinkMLMeta(root={'from_schema': 'hdmf-common.table', 'tree_root': True})¶
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'strict': False, 'use_enum_values': True, 'validate_assignment': True, 'validate_default': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object')}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.