hdmf_common_sparse

class ConfiguredBaseModel(*, hdf5_path: str | None = None, object_id: str | None = None)

Bases: BaseModel

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.

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].

hdf5_path: str | None
object_id: str | None
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: RootModel

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.

root: Dict[str, Any]
model_config: ClassVar[ConfigDict] = {'frozen': 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]] = {'root': FieldInfo(annotation=Dict[str, Any], required=False, default={})}

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 CSRMatrix(*, hdf5_path: str | None = None, object_id: str | None = None, name: str, shape: ~numpy.uint64 | None = None, indices: ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* number_of_non_zero_values], ~numpy.uint64], indptr: ~nptyping.base_meta_classes.NDArray[~nptyping.base_meta_classes.Shape[* number_of_rows_in_the_matrix_1], ~numpy.uint64], data: ~nwb_linkml.models.pydantic.hdmf_common.v1_5_0.hdmf_common_sparse.CSRMatrixData)

Bases: Container

A compressed sparse row matrix. Data are stored in the standard CSR format, where column indices for row i are stored in indices[indptr[i]:indptr[i+1]] and their corresponding values are stored in data[indptr[i]:indptr[i+1]].

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.sparse', 'tree_root': True})
name: str
shape: np.uint64 | None
indices: NDArray[Shape['* number_of_non_zero_values'], np.uint64]
indptr: NDArray[Shape['* number_of_rows_in_the_matrix_1'], np.uint64]
data: CSRMatrixData
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]] = {'data': FieldInfo(annotation=CSRMatrixData, required=True, description='The non-zero values in the matrix.'), 'hdf5_path': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The absolute path that this object is stored in an NWB file'), 'indices': FieldInfo(annotation=NDArray, required=True, description='The column indices.', json_schema_extra={'linkml_meta': {'array': {'dimensions': [{'alias': 'number_of_non_zero_values'}]}}}), 'indptr': FieldInfo(annotation=NDArray, required=True, description='The row index pointer.', json_schema_extra={'linkml_meta': {'array': {'dimensions': [{'alias': 'number_of_rows_in_the_matrix_1'}]}}}), 'name': FieldInfo(annotation=str, required=True), 'object_id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='Unique UUID for each object'), 'shape': FieldInfo(annotation=Union[uint64, NoneType], required=False, default=None, description='The shape (number of rows, number of columns) of this sparse matrix.')}

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 CSRMatrixData(*, hdf5_path: str | None = None, object_id: str | None = None, name: Literal['data'] = 'data')

Bases: ConfiguredBaseModel

The non-zero values in the matrix.

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.sparse'})
name: Literal['data']
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=Literal['data'], required=False, default='data', json_schema_extra={'linkml_meta': {'equals_string': 'data', 'ifabsent': 'string(data)'}}), '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.