MDIO v1#
Altay Sansal
Apr 29, 2024
0 min read
Intro#
Represents an MDIO v1 dataset. |
The metadata about the dataset. |
Reference#
Dataset
- pydantic model mdio.schemas.v1.dataset.Dataset#
Represents an MDIO v1 dataset.
A dataset consists of variables and metadata.
Show JSON schema
{ "title": "Dataset", "description": "Represents an MDIO v1 dataset.\n\nA dataset consists of variables and metadata.", "type": "object", "properties": { "variables": { "description": "Variables in MDIO dataset", "items": { "$ref": "#/$defs/Variable" }, "title": "Variables", "type": "array" }, "metadata": { "allOf": [ { "$ref": "#/$defs/DatasetMetadata" } ], "description": "Dataset metadata." } }, "$defs": { "AllUnits": { "additionalProperties": false, "description": "All Units.", "properties": { "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" } }, "title": "AllUnits", "type": "object" }, "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" }, "AngleUnitModel": { "additionalProperties": false, "description": "Model representing units of angle.", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "required": [ "angle" ], "title": "AngleUnitModel", "type": "object" }, "Blosc": { "additionalProperties": false, "description": "Data Model for Blosc options.", "properties": { "name": { "default": "blosc", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "algorithm": { "allOf": [ { "$ref": "#/$defs/BloscAlgorithm" } ], "default": "lz4", "description": "The Blosc compression algorithm to be used." }, "level": { "default": 5, "description": "The compression level.", "maximum": 9, "minimum": 0, "title": "Level", "type": "integer" }, "shuffle": { "allOf": [ { "$ref": "#/$defs/BloscShuffle" } ], "default": 1, "description": "The shuffle strategy to be applied before compression." }, "blocksize": { "default": 0, "description": "The size of the block to be used for compression.", "title": "Blocksize", "type": "integer" } }, "title": "Blosc", "type": "object" }, "BloscAlgorithm": { "description": "Enum for Blosc algorithm options.", "enum": [ "blosclz", "lz4", "lz4hc", "zlib", "zstd" ], "title": "BloscAlgorithm", "type": "string" }, "BloscShuffle": { "description": "Enum for Blosc shuffle options.", "enum": [ 0, 1, 2, -1 ], "title": "BloscShuffle", "type": "integer" }, "CenteredBinHistogram": { "additionalProperties": false, "description": "Class representing a center bin histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "required": [ "counts", "binCenters" ], "title": "CenteredBinHistogram", "type": "object" }, "Coordinate": { "additionalProperties": false, "description": "An MDIO coordinate array with metadata.", "properties": { "dataType": { "allOf": [ { "$ref": "#/$defs/ScalarType" } ], "description": "Data type of coordinate." }, "dimensions": { "anyOf": [ { "items": { "$ref": "#/$defs/NamedDimension" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" } ], "description": "List of Dimension collection or reference to dimension names.", "title": "Dimensions" }, "compressor": { "anyOf": [ { "$ref": "#/$defs/Blosc" }, { "$ref": "#/$defs/ZFP" }, { "type": "null" } ], "default": null, "description": "Compression settings.", "title": "Compressor" }, "name": { "description": "Name of the array.", "title": "Name", "type": "string" }, "longName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Fully descriptive name.", "title": "Longname" }, "metadata": { "anyOf": [ { "items": { "anyOf": [ { "$ref": "#/$defs/AllUnits" }, { "$ref": "#/$defs/UserAttributes" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Coordinate metadata.", "title": "Metadata" } }, "required": [ "dataType", "dimensions", "name" ], "title": "Coordinate", "type": "object" }, "DatasetMetadata": { "additionalProperties": false, "description": "The metadata about the dataset.", "properties": { "name": { "description": "Name or identifier for the dataset.", "title": "Name", "type": "string" }, "apiVersion": { "description": "The version of the MDIO API that the dataset complies with.", "title": "Apiversion", "type": "string" }, "createdOn": { "description": "The timestamp indicating when the dataset was first created, including timezone information. Expressed in ISO 8601 format.", "format": "date-time", "title": "Createdon", "type": "string" }, "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "required": [ "name", "apiVersion", "createdOn" ], "title": "DatasetMetadata", "type": "object" }, "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" }, "DensityUnitModel": { "additionalProperties": false, "description": "Model representing units of density.", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "required": [ "density" ], "title": "DensityUnitModel", "type": "object" }, "EdgeDefinedHistogram": { "additionalProperties": false, "description": "A class representing an edge-defined histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "required": [ "counts", "binEdges", "binWidths" ], "title": "EdgeDefinedHistogram", "type": "object" }, "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" }, "FrequencyUnitModel": { "additionalProperties": false, "description": "Model representing units of frequency.", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "required": [ "frequency" ], "title": "FrequencyUnitModel", "type": "object" }, "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" }, "LengthUnitModel": { "additionalProperties": false, "description": "Model representing units of length.", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "required": [ "length" ], "title": "LengthUnitModel", "type": "object" }, "NamedDimension": { "additionalProperties": false, "description": "Represents a single dimension with a name and size.", "properties": { "name": { "description": "Unique identifier for the dimension.", "title": "Name", "type": "string" }, "size": { "description": "Total size of the dimension.", "exclusiveMinimum": 0, "title": "Size", "type": "integer" } }, "required": [ "name", "size" ], "title": "NamedDimension", "type": "object" }, "RectilinearChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and irregularly spaced chunk grid.", "properties": { "name": { "default": "rectilinear", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RectilinearChunkShape" } ], "description": "Configuration of the irregular chunk grid." } }, "required": [ "configuration" ], "title": "RectilinearChunkGrid", "type": "object" }, "RectilinearChunkShape": { "additionalProperties": false, "description": "Represents irregular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "items": { "type": "integer" }, "type": "array" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RectilinearChunkShape", "type": "object" }, "RegularChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and regularly spaced chunk grid.", "properties": { "name": { "default": "regular", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RegularChunkShape" } ], "description": "Configuration of the regular chunk grid." } }, "required": [ "configuration" ], "title": "RegularChunkGrid", "type": "object" }, "RegularChunkShape": { "additionalProperties": false, "description": "Represents regular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "type": "integer" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RegularChunkShape", "type": "object" }, "ScalarType": { "description": "Scalar array data type.", "enum": [ "bool", "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "float16", "float32", "float64", "longdouble", "complex64", "complex128", "clongdouble" ], "title": "ScalarType", "type": "string" }, "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" }, "SpeedUnitModel": { "additionalProperties": false, "description": "Model representing units of speed.", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "required": [ "speed" ], "title": "SpeedUnitModel", "type": "object" }, "StructuredField": { "additionalProperties": false, "description": "Structured array field with name, format.", "properties": { "format": { "$ref": "#/$defs/ScalarType" }, "name": { "title": "Name", "type": "string" } }, "required": [ "format", "name" ], "title": "StructuredField", "type": "object" }, "StructuredType": { "additionalProperties": false, "description": "Structured array type with packed fields.", "properties": { "fields": { "items": { "$ref": "#/$defs/StructuredField" }, "title": "Fields", "type": "array" } }, "required": [ "fields" ], "title": "StructuredType", "type": "object" }, "SummaryStatistics": { "additionalProperties": false, "description": "Data model for some statistics in MDIO v1 arrays.", "properties": { "count": { "description": "The number of data points.", "title": "Count", "type": "integer" }, "sum": { "description": "The total of all data values.", "title": "Sum", "type": "number" }, "sumSquares": { "description": "The total of all data values squared.", "title": "Sumsquares", "type": "number" }, "min": { "description": "The smallest value in the variable.", "title": "Min", "type": "number" }, "max": { "description": "The largest value in the variable.", "title": "Max", "type": "number" }, "histogram": { "anyOf": [ { "$ref": "#/$defs/CenteredBinHistogram" }, { "$ref": "#/$defs/EdgeDefinedHistogram" } ], "description": "Binned frequency distribution.", "title": "Histogram" } }, "required": [ "count", "sum", "sumSquares", "min", "max", "histogram" ], "title": "SummaryStatistics", "type": "object" }, "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" }, "TimeUnitModel": { "additionalProperties": false, "description": "Model representing units of time.", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "required": [ "time" ], "title": "TimeUnitModel", "type": "object" }, "UserAttributes": { "additionalProperties": false, "description": "User defined attributes as key/value pairs.", "properties": { "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "title": "UserAttributes", "type": "object" }, "Variable": { "additionalProperties": false, "description": "An MDIO variable that has coordinates and metadata.", "properties": { "dataType": { "anyOf": [ { "$ref": "#/$defs/ScalarType" }, { "$ref": "#/$defs/StructuredType" } ], "description": "Type of the array.", "title": "Datatype" }, "dimensions": { "anyOf": [ { "items": { "$ref": "#/$defs/NamedDimension" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" } ], "description": "List of Dimension collection or reference to dimension names.", "title": "Dimensions" }, "compressor": { "anyOf": [ { "$ref": "#/$defs/Blosc" }, { "$ref": "#/$defs/ZFP" }, { "type": "null" } ], "default": null, "description": "Compression settings.", "title": "Compressor" }, "name": { "description": "Name of the array.", "title": "Name", "type": "string" }, "longName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Fully descriptive name.", "title": "Longname" }, "coordinates": { "anyOf": [ { "items": { "$ref": "#/$defs/Coordinate" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Coordinates of the MDIO variable dimensions.", "title": "Coordinates" }, "metadata": { "anyOf": [ { "$ref": "#/$defs/VariableMetadata" }, { "type": "null" } ], "default": null, "description": "Variable metadata." } }, "required": [ "dataType", "dimensions", "name" ], "title": "Variable", "type": "object" }, "VariableMetadata": { "additionalProperties": false, "properties": { "chunkGrid": { "anyOf": [ { "$ref": "#/$defs/RegularChunkGrid" }, { "$ref": "#/$defs/RectilinearChunkGrid" }, { "type": "null" } ], "default": null, "description": "Chunk grid specification for the array.", "title": "Chunkgrid" }, "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" }, "statsV1": { "anyOf": [ { "$ref": "#/$defs/SummaryStatistics" }, { "items": { "$ref": "#/$defs/SummaryStatistics" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Minimal summary statistics.", "title": "Statsv1" }, "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "title": "VariableMetadata", "type": "object" }, "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" }, "VoltageUnitModel": { "additionalProperties": false, "description": "Model representing units of voltage.", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "required": [ "voltage" ], "title": "VoltageUnitModel", "type": "object" }, "ZFP": { "additionalProperties": false, "description": "Data Model for ZFP options.", "properties": { "name": { "default": "zfp", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "mode": { "$ref": "#/$defs/ZFPMode" }, "tolerance": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed accuracy in terms of absolute error tolerance.", "title": "Tolerance" }, "rate": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed rate in terms of number of compressed bits per value.", "title": "Rate" }, "precision": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": null, "description": "Fixed precision in terms of number of uncompressed bits per value.", "title": "Precision" }, "writeHeader": { "default": true, "description": "Encode array shape, scalar type, and compression parameters.", "title": "Writeheader", "type": "boolean" } }, "required": [ "mode" ], "title": "ZFP", "type": "object" }, "ZFPMode": { "description": "Enum for ZFP algorithm modes.", "enum": [ "fixed_rate", "fixed_precision", "fixed_accuracy", "reversible" ], "title": "ZFPMode", "type": "string" } }, "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "required": [ "variables", "metadata" ] }
- field metadata: DatasetMetadata [Required]#
Dataset metadata.
- pydantic model mdio.schemas.v1.dataset.DatasetMetadata#
The metadata about the dataset.
Show JSON schema
{ "title": "DatasetMetadata", "description": "The metadata about the dataset.", "type": "object", "properties": { "name": { "description": "Name or identifier for the dataset.", "title": "Name", "type": "string" }, "apiVersion": { "description": "The version of the MDIO API that the dataset complies with.", "title": "Apiversion", "type": "string" }, "createdOn": { "description": "The timestamp indicating when the dataset was first created, including timezone information. Expressed in ISO 8601 format.", "format": "date-time", "title": "Createdon", "type": "string" }, "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "additionalProperties": false, "required": [ "name", "apiVersion", "createdOn" ] }
- field createdOn: AwareDatetime [Required]#
The timestamp indicating when the dataset was first created, including timezone information. Expressed in ISO 8601 format.
Variable
- pydantic model mdio.schemas.v1.variable.Variable#
An MDIO variable that has coordinates and metadata.
Show JSON schema
{ "title": "Variable", "description": "An MDIO variable that has coordinates and metadata.", "type": "object", "properties": { "dataType": { "anyOf": [ { "$ref": "#/$defs/ScalarType" }, { "$ref": "#/$defs/StructuredType" } ], "description": "Type of the array.", "title": "Datatype" }, "dimensions": { "anyOf": [ { "items": { "$ref": "#/$defs/NamedDimension" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" } ], "description": "List of Dimension collection or reference to dimension names.", "title": "Dimensions" }, "compressor": { "anyOf": [ { "$ref": "#/$defs/Blosc" }, { "$ref": "#/$defs/ZFP" }, { "type": "null" } ], "default": null, "description": "Compression settings.", "title": "Compressor" }, "name": { "description": "Name of the array.", "title": "Name", "type": "string" }, "longName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Fully descriptive name.", "title": "Longname" }, "coordinates": { "anyOf": [ { "items": { "$ref": "#/$defs/Coordinate" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Coordinates of the MDIO variable dimensions.", "title": "Coordinates" }, "metadata": { "anyOf": [ { "$ref": "#/$defs/VariableMetadata" }, { "type": "null" } ], "default": null, "description": "Variable metadata." } }, "$defs": { "AllUnits": { "additionalProperties": false, "description": "All Units.", "properties": { "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" } }, "title": "AllUnits", "type": "object" }, "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" }, "AngleUnitModel": { "additionalProperties": false, "description": "Model representing units of angle.", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "required": [ "angle" ], "title": "AngleUnitModel", "type": "object" }, "Blosc": { "additionalProperties": false, "description": "Data Model for Blosc options.", "properties": { "name": { "default": "blosc", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "algorithm": { "allOf": [ { "$ref": "#/$defs/BloscAlgorithm" } ], "default": "lz4", "description": "The Blosc compression algorithm to be used." }, "level": { "default": 5, "description": "The compression level.", "maximum": 9, "minimum": 0, "title": "Level", "type": "integer" }, "shuffle": { "allOf": [ { "$ref": "#/$defs/BloscShuffle" } ], "default": 1, "description": "The shuffle strategy to be applied before compression." }, "blocksize": { "default": 0, "description": "The size of the block to be used for compression.", "title": "Blocksize", "type": "integer" } }, "title": "Blosc", "type": "object" }, "BloscAlgorithm": { "description": "Enum for Blosc algorithm options.", "enum": [ "blosclz", "lz4", "lz4hc", "zlib", "zstd" ], "title": "BloscAlgorithm", "type": "string" }, "BloscShuffle": { "description": "Enum for Blosc shuffle options.", "enum": [ 0, 1, 2, -1 ], "title": "BloscShuffle", "type": "integer" }, "CenteredBinHistogram": { "additionalProperties": false, "description": "Class representing a center bin histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "required": [ "counts", "binCenters" ], "title": "CenteredBinHistogram", "type": "object" }, "Coordinate": { "additionalProperties": false, "description": "An MDIO coordinate array with metadata.", "properties": { "dataType": { "allOf": [ { "$ref": "#/$defs/ScalarType" } ], "description": "Data type of coordinate." }, "dimensions": { "anyOf": [ { "items": { "$ref": "#/$defs/NamedDimension" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" } ], "description": "List of Dimension collection or reference to dimension names.", "title": "Dimensions" }, "compressor": { "anyOf": [ { "$ref": "#/$defs/Blosc" }, { "$ref": "#/$defs/ZFP" }, { "type": "null" } ], "default": null, "description": "Compression settings.", "title": "Compressor" }, "name": { "description": "Name of the array.", "title": "Name", "type": "string" }, "longName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Fully descriptive name.", "title": "Longname" }, "metadata": { "anyOf": [ { "items": { "anyOf": [ { "$ref": "#/$defs/AllUnits" }, { "$ref": "#/$defs/UserAttributes" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Coordinate metadata.", "title": "Metadata" } }, "required": [ "dataType", "dimensions", "name" ], "title": "Coordinate", "type": "object" }, "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" }, "DensityUnitModel": { "additionalProperties": false, "description": "Model representing units of density.", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "required": [ "density" ], "title": "DensityUnitModel", "type": "object" }, "EdgeDefinedHistogram": { "additionalProperties": false, "description": "A class representing an edge-defined histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "required": [ "counts", "binEdges", "binWidths" ], "title": "EdgeDefinedHistogram", "type": "object" }, "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" }, "FrequencyUnitModel": { "additionalProperties": false, "description": "Model representing units of frequency.", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "required": [ "frequency" ], "title": "FrequencyUnitModel", "type": "object" }, "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" }, "LengthUnitModel": { "additionalProperties": false, "description": "Model representing units of length.", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "required": [ "length" ], "title": "LengthUnitModel", "type": "object" }, "NamedDimension": { "additionalProperties": false, "description": "Represents a single dimension with a name and size.", "properties": { "name": { "description": "Unique identifier for the dimension.", "title": "Name", "type": "string" }, "size": { "description": "Total size of the dimension.", "exclusiveMinimum": 0, "title": "Size", "type": "integer" } }, "required": [ "name", "size" ], "title": "NamedDimension", "type": "object" }, "RectilinearChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and irregularly spaced chunk grid.", "properties": { "name": { "default": "rectilinear", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RectilinearChunkShape" } ], "description": "Configuration of the irregular chunk grid." } }, "required": [ "configuration" ], "title": "RectilinearChunkGrid", "type": "object" }, "RectilinearChunkShape": { "additionalProperties": false, "description": "Represents irregular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "items": { "type": "integer" }, "type": "array" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RectilinearChunkShape", "type": "object" }, "RegularChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and regularly spaced chunk grid.", "properties": { "name": { "default": "regular", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RegularChunkShape" } ], "description": "Configuration of the regular chunk grid." } }, "required": [ "configuration" ], "title": "RegularChunkGrid", "type": "object" }, "RegularChunkShape": { "additionalProperties": false, "description": "Represents regular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "type": "integer" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RegularChunkShape", "type": "object" }, "ScalarType": { "description": "Scalar array data type.", "enum": [ "bool", "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "float16", "float32", "float64", "longdouble", "complex64", "complex128", "clongdouble" ], "title": "ScalarType", "type": "string" }, "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" }, "SpeedUnitModel": { "additionalProperties": false, "description": "Model representing units of speed.", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "required": [ "speed" ], "title": "SpeedUnitModel", "type": "object" }, "StructuredField": { "additionalProperties": false, "description": "Structured array field with name, format.", "properties": { "format": { "$ref": "#/$defs/ScalarType" }, "name": { "title": "Name", "type": "string" } }, "required": [ "format", "name" ], "title": "StructuredField", "type": "object" }, "StructuredType": { "additionalProperties": false, "description": "Structured array type with packed fields.", "properties": { "fields": { "items": { "$ref": "#/$defs/StructuredField" }, "title": "Fields", "type": "array" } }, "required": [ "fields" ], "title": "StructuredType", "type": "object" }, "SummaryStatistics": { "additionalProperties": false, "description": "Data model for some statistics in MDIO v1 arrays.", "properties": { "count": { "description": "The number of data points.", "title": "Count", "type": "integer" }, "sum": { "description": "The total of all data values.", "title": "Sum", "type": "number" }, "sumSquares": { "description": "The total of all data values squared.", "title": "Sumsquares", "type": "number" }, "min": { "description": "The smallest value in the variable.", "title": "Min", "type": "number" }, "max": { "description": "The largest value in the variable.", "title": "Max", "type": "number" }, "histogram": { "anyOf": [ { "$ref": "#/$defs/CenteredBinHistogram" }, { "$ref": "#/$defs/EdgeDefinedHistogram" } ], "description": "Binned frequency distribution.", "title": "Histogram" } }, "required": [ "count", "sum", "sumSquares", "min", "max", "histogram" ], "title": "SummaryStatistics", "type": "object" }, "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" }, "TimeUnitModel": { "additionalProperties": false, "description": "Model representing units of time.", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "required": [ "time" ], "title": "TimeUnitModel", "type": "object" }, "UserAttributes": { "additionalProperties": false, "description": "User defined attributes as key/value pairs.", "properties": { "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "title": "UserAttributes", "type": "object" }, "VariableMetadata": { "additionalProperties": false, "properties": { "chunkGrid": { "anyOf": [ { "$ref": "#/$defs/RegularChunkGrid" }, { "$ref": "#/$defs/RectilinearChunkGrid" }, { "type": "null" } ], "default": null, "description": "Chunk grid specification for the array.", "title": "Chunkgrid" }, "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" }, "statsV1": { "anyOf": [ { "$ref": "#/$defs/SummaryStatistics" }, { "items": { "$ref": "#/$defs/SummaryStatistics" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Minimal summary statistics.", "title": "Statsv1" }, "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "title": "VariableMetadata", "type": "object" }, "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" }, "VoltageUnitModel": { "additionalProperties": false, "description": "Model representing units of voltage.", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "required": [ "voltage" ], "title": "VoltageUnitModel", "type": "object" }, "ZFP": { "additionalProperties": false, "description": "Data Model for ZFP options.", "properties": { "name": { "default": "zfp", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "mode": { "$ref": "#/$defs/ZFPMode" }, "tolerance": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed accuracy in terms of absolute error tolerance.", "title": "Tolerance" }, "rate": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed rate in terms of number of compressed bits per value.", "title": "Rate" }, "precision": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": null, "description": "Fixed precision in terms of number of uncompressed bits per value.", "title": "Precision" }, "writeHeader": { "default": true, "description": "Encode array shape, scalar type, and compression parameters.", "title": "Writeheader", "type": "boolean" } }, "required": [ "mode" ], "title": "ZFP", "type": "object" }, "ZFPMode": { "description": "Enum for ZFP algorithm modes.", "enum": [ "fixed_rate", "fixed_precision", "fixed_accuracy", "reversible" ], "title": "ZFPMode", "type": "string" } }, "additionalProperties": false, "required": [ "dataType", "dimensions", "name" ] }
- field coordinates: list[Coordinate] | list[str] | None = None#
Coordinates of the MDIO variable dimensions.
- field dataType: ScalarType | StructuredType [Required]#
Type of the array.
- field dimensions: list[NamedDimension] | list[str] [Required]#
List of Dimension collection or reference to dimension names.
- field metadata: VariableMetadata | None = None#
Variable metadata.
- pydantic model mdio.schemas.v1.variable.Coordinate#
An MDIO coordinate array with metadata.
Show JSON schema
{ "title": "Coordinate", "description": "An MDIO coordinate array with metadata.", "type": "object", "properties": { "dataType": { "allOf": [ { "$ref": "#/$defs/ScalarType" } ], "description": "Data type of coordinate." }, "dimensions": { "anyOf": [ { "items": { "$ref": "#/$defs/NamedDimension" }, "type": "array" }, { "items": { "type": "string" }, "type": "array" } ], "description": "List of Dimension collection or reference to dimension names.", "title": "Dimensions" }, "compressor": { "anyOf": [ { "$ref": "#/$defs/Blosc" }, { "$ref": "#/$defs/ZFP" }, { "type": "null" } ], "default": null, "description": "Compression settings.", "title": "Compressor" }, "name": { "description": "Name of the array.", "title": "Name", "type": "string" }, "longName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Fully descriptive name.", "title": "Longname" }, "metadata": { "anyOf": [ { "items": { "anyOf": [ { "$ref": "#/$defs/AllUnits" }, { "$ref": "#/$defs/UserAttributes" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Coordinate metadata.", "title": "Metadata" } }, "$defs": { "AllUnits": { "additionalProperties": false, "description": "All Units.", "properties": { "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" } }, "title": "AllUnits", "type": "object" }, "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" }, "AngleUnitModel": { "additionalProperties": false, "description": "Model representing units of angle.", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "required": [ "angle" ], "title": "AngleUnitModel", "type": "object" }, "Blosc": { "additionalProperties": false, "description": "Data Model for Blosc options.", "properties": { "name": { "default": "blosc", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "algorithm": { "allOf": [ { "$ref": "#/$defs/BloscAlgorithm" } ], "default": "lz4", "description": "The Blosc compression algorithm to be used." }, "level": { "default": 5, "description": "The compression level.", "maximum": 9, "minimum": 0, "title": "Level", "type": "integer" }, "shuffle": { "allOf": [ { "$ref": "#/$defs/BloscShuffle" } ], "default": 1, "description": "The shuffle strategy to be applied before compression." }, "blocksize": { "default": 0, "description": "The size of the block to be used for compression.", "title": "Blocksize", "type": "integer" } }, "title": "Blosc", "type": "object" }, "BloscAlgorithm": { "description": "Enum for Blosc algorithm options.", "enum": [ "blosclz", "lz4", "lz4hc", "zlib", "zstd" ], "title": "BloscAlgorithm", "type": "string" }, "BloscShuffle": { "description": "Enum for Blosc shuffle options.", "enum": [ 0, 1, 2, -1 ], "title": "BloscShuffle", "type": "integer" }, "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" }, "DensityUnitModel": { "additionalProperties": false, "description": "Model representing units of density.", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "required": [ "density" ], "title": "DensityUnitModel", "type": "object" }, "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" }, "FrequencyUnitModel": { "additionalProperties": false, "description": "Model representing units of frequency.", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "required": [ "frequency" ], "title": "FrequencyUnitModel", "type": "object" }, "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" }, "LengthUnitModel": { "additionalProperties": false, "description": "Model representing units of length.", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "required": [ "length" ], "title": "LengthUnitModel", "type": "object" }, "NamedDimension": { "additionalProperties": false, "description": "Represents a single dimension with a name and size.", "properties": { "name": { "description": "Unique identifier for the dimension.", "title": "Name", "type": "string" }, "size": { "description": "Total size of the dimension.", "exclusiveMinimum": 0, "title": "Size", "type": "integer" } }, "required": [ "name", "size" ], "title": "NamedDimension", "type": "object" }, "ScalarType": { "description": "Scalar array data type.", "enum": [ "bool", "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "float16", "float32", "float64", "longdouble", "complex64", "complex128", "clongdouble" ], "title": "ScalarType", "type": "string" }, "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" }, "SpeedUnitModel": { "additionalProperties": false, "description": "Model representing units of speed.", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "required": [ "speed" ], "title": "SpeedUnitModel", "type": "object" }, "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" }, "TimeUnitModel": { "additionalProperties": false, "description": "Model representing units of time.", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "required": [ "time" ], "title": "TimeUnitModel", "type": "object" }, "UserAttributes": { "additionalProperties": false, "description": "User defined attributes as key/value pairs.", "properties": { "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "title": "UserAttributes", "type": "object" }, "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" }, "VoltageUnitModel": { "additionalProperties": false, "description": "Model representing units of voltage.", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "required": [ "voltage" ], "title": "VoltageUnitModel", "type": "object" }, "ZFP": { "additionalProperties": false, "description": "Data Model for ZFP options.", "properties": { "name": { "default": "zfp", "description": "Name of the compressor.", "title": "Name", "type": "string" }, "mode": { "$ref": "#/$defs/ZFPMode" }, "tolerance": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed accuracy in terms of absolute error tolerance.", "title": "Tolerance" }, "rate": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Fixed rate in terms of number of compressed bits per value.", "title": "Rate" }, "precision": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": null, "description": "Fixed precision in terms of number of uncompressed bits per value.", "title": "Precision" }, "writeHeader": { "default": true, "description": "Encode array shape, scalar type, and compression parameters.", "title": "Writeheader", "type": "boolean" } }, "required": [ "mode" ], "title": "ZFP", "type": "object" }, "ZFPMode": { "description": "Enum for ZFP algorithm modes.", "enum": [ "fixed_rate", "fixed_precision", "fixed_accuracy", "reversible" ], "title": "ZFPMode", "type": "string" } }, "additionalProperties": false, "required": [ "dataType", "dimensions", "name" ] }
- field dataType: ScalarType [Required]#
Data type of coordinate.
- field dimensions: list[NamedDimension] | list[str] [Required]#
List of Dimension collection or reference to dimension names.
- field metadata: list[AllUnits | UserAttributes] | None = None#
Coordinate metadata.
Metadata schemas and conventions.
- pydantic model mdio.schemas.metadata.UserAttributes#
User defined attributes as key/value pairs.
Show JSON schema
{ "title": "UserAttributes", "description": "User defined attributes as key/value pairs.", "type": "object", "properties": { "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "additionalProperties": false }
- pydantic model mdio.schemas.v1.variable.VariableMetadata#
Show JSON schema
{ "title": "VariableMetadata", "type": "object", "properties": { "chunkGrid": { "anyOf": [ { "$ref": "#/$defs/RegularChunkGrid" }, { "$ref": "#/$defs/RectilinearChunkGrid" }, { "type": "null" } ], "default": null, "description": "Chunk grid specification for the array.", "title": "Chunkgrid" }, "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" }, "statsV1": { "anyOf": [ { "$ref": "#/$defs/SummaryStatistics" }, { "items": { "$ref": "#/$defs/SummaryStatistics" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Minimal summary statistics.", "title": "Statsv1" }, "attributes": { "anyOf": [ { "type": "object" }, { "type": "null" } ], "default": null, "description": "User defined attributes as key/value pairs.", "title": "Attributes" } }, "$defs": { "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" }, "AngleUnitModel": { "additionalProperties": false, "description": "Model representing units of angle.", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "required": [ "angle" ], "title": "AngleUnitModel", "type": "object" }, "CenteredBinHistogram": { "additionalProperties": false, "description": "Class representing a center bin histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "required": [ "counts", "binCenters" ], "title": "CenteredBinHistogram", "type": "object" }, "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" }, "DensityUnitModel": { "additionalProperties": false, "description": "Model representing units of density.", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "required": [ "density" ], "title": "DensityUnitModel", "type": "object" }, "EdgeDefinedHistogram": { "additionalProperties": false, "description": "A class representing an edge-defined histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "required": [ "counts", "binEdges", "binWidths" ], "title": "EdgeDefinedHistogram", "type": "object" }, "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" }, "FrequencyUnitModel": { "additionalProperties": false, "description": "Model representing units of frequency.", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "required": [ "frequency" ], "title": "FrequencyUnitModel", "type": "object" }, "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" }, "LengthUnitModel": { "additionalProperties": false, "description": "Model representing units of length.", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "required": [ "length" ], "title": "LengthUnitModel", "type": "object" }, "RectilinearChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and irregularly spaced chunk grid.", "properties": { "name": { "default": "rectilinear", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RectilinearChunkShape" } ], "description": "Configuration of the irregular chunk grid." } }, "required": [ "configuration" ], "title": "RectilinearChunkGrid", "type": "object" }, "RectilinearChunkShape": { "additionalProperties": false, "description": "Represents irregular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "items": { "type": "integer" }, "type": "array" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RectilinearChunkShape", "type": "object" }, "RegularChunkGrid": { "additionalProperties": false, "description": "Represents a rectangular and regularly spaced chunk grid.", "properties": { "name": { "default": "regular", "description": "The name of the chunk grid.", "title": "Name", "type": "string" }, "configuration": { "allOf": [ { "$ref": "#/$defs/RegularChunkShape" } ], "description": "Configuration of the regular chunk grid." } }, "required": [ "configuration" ], "title": "RegularChunkGrid", "type": "object" }, "RegularChunkShape": { "additionalProperties": false, "description": "Represents regular chunk sizes along each dimension.", "properties": { "chunkShape": { "description": "Lengths of the chunk along each dimension of the array.", "items": { "type": "integer" }, "title": "Chunkshape", "type": "array" } }, "required": [ "chunkShape" ], "title": "RegularChunkShape", "type": "object" }, "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" }, "SpeedUnitModel": { "additionalProperties": false, "description": "Model representing units of speed.", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "required": [ "speed" ], "title": "SpeedUnitModel", "type": "object" }, "SummaryStatistics": { "additionalProperties": false, "description": "Data model for some statistics in MDIO v1 arrays.", "properties": { "count": { "description": "The number of data points.", "title": "Count", "type": "integer" }, "sum": { "description": "The total of all data values.", "title": "Sum", "type": "number" }, "sumSquares": { "description": "The total of all data values squared.", "title": "Sumsquares", "type": "number" }, "min": { "description": "The smallest value in the variable.", "title": "Min", "type": "number" }, "max": { "description": "The largest value in the variable.", "title": "Max", "type": "number" }, "histogram": { "anyOf": [ { "$ref": "#/$defs/CenteredBinHistogram" }, { "$ref": "#/$defs/EdgeDefinedHistogram" } ], "description": "Binned frequency distribution.", "title": "Histogram" } }, "required": [ "count", "sum", "sumSquares", "min", "max", "histogram" ], "title": "SummaryStatistics", "type": "object" }, "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" }, "TimeUnitModel": { "additionalProperties": false, "description": "Model representing units of time.", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "required": [ "time" ], "title": "TimeUnitModel", "type": "object" }, "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" }, "VoltageUnitModel": { "additionalProperties": false, "description": "Model representing units of voltage.", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "required": [ "voltage" ], "title": "VoltageUnitModel", "type": "object" } }, "additionalProperties": false }
- field chunkGrid: RegularChunkGrid | RectilinearChunkGrid | None = None#
Chunk grid specification for the array.
- field statsV1: SummaryStatistics | list[SummaryStatistics] | None = None#
Minimal summary statistics.
- field unitsV1: LengthUnitModel | TimeUnitModel | AngleUnitModel | DensityUnitModel | SpeedUnitModel | FrequencyUnitModel | VoltageUnitModel | list[LengthUnitModel | TimeUnitModel | AngleUnitModel | DensityUnitModel | SpeedUnitModel | FrequencyUnitModel | VoltageUnitModel] | None = None#
Units
- pydantic model mdio.schemas.v1.units.AllUnits#
All Units.
Show JSON schema
{ "title": "AllUnits", "description": "All Units.", "type": "object", "properties": { "unitsV1": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" }, { "items": { "anyOf": [ { "$ref": "#/$defs/LengthUnitModel" }, { "$ref": "#/$defs/TimeUnitModel" }, { "$ref": "#/$defs/AngleUnitModel" }, { "$ref": "#/$defs/DensityUnitModel" }, { "$ref": "#/$defs/SpeedUnitModel" }, { "$ref": "#/$defs/FrequencyUnitModel" }, { "$ref": "#/$defs/VoltageUnitModel" } ] }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Unitsv1" } }, "$defs": { "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" }, "AngleUnitModel": { "additionalProperties": false, "description": "Model representing units of angle.", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "required": [ "angle" ], "title": "AngleUnitModel", "type": "object" }, "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" }, "DensityUnitModel": { "additionalProperties": false, "description": "Model representing units of density.", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "required": [ "density" ], "title": "DensityUnitModel", "type": "object" }, "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" }, "FrequencyUnitModel": { "additionalProperties": false, "description": "Model representing units of frequency.", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "required": [ "frequency" ], "title": "FrequencyUnitModel", "type": "object" }, "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" }, "LengthUnitModel": { "additionalProperties": false, "description": "Model representing units of length.", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "required": [ "length" ], "title": "LengthUnitModel", "type": "object" }, "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" }, "SpeedUnitModel": { "additionalProperties": false, "description": "Model representing units of speed.", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "required": [ "speed" ], "title": "SpeedUnitModel", "type": "object" }, "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" }, "TimeUnitModel": { "additionalProperties": false, "description": "Model representing units of time.", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "required": [ "time" ], "title": "TimeUnitModel", "type": "object" }, "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" }, "VoltageUnitModel": { "additionalProperties": false, "description": "Model representing units of voltage.", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "required": [ "voltage" ], "title": "VoltageUnitModel", "type": "object" } }, "additionalProperties": false }
Unit schemas specific to MDIO v1.
- pydantic model mdio.schemas.v1.units.AngleUnitModel#
Model representing units of angle.
Show JSON schema
{ "title": "AngleUnitModel", "description": "Model representing units of angle.", "type": "object", "properties": { "angle": { "allOf": [ { "$ref": "#/$defs/AngleUnitEnum" } ], "description": "Unit of angle." } }, "$defs": { "AngleUnitEnum": { "description": "Enum class representing units of angle.", "enum": [ "deg", "rad" ], "title": "AngleUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "angle" ] }
- field angle: AngleUnitEnum [Required]#
Unit of angle.
- pydantic model mdio.schemas.v1.units.DensityUnitModel#
Model representing units of density.
Show JSON schema
{ "title": "DensityUnitModel", "description": "Model representing units of density.", "type": "object", "properties": { "density": { "allOf": [ { "$ref": "#/$defs/DensityUnitEnum" } ], "description": "Unit of density." } }, "$defs": { "DensityUnitEnum": { "description": "Enum class representing units of density.", "enum": [ "g/cm**3", "kg/m**3", "lb/gal" ], "title": "DensityUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "density" ] }
- field density: DensityUnitEnum [Required]#
Unit of density.
- pydantic model mdio.schemas.v1.units.FrequencyUnitModel#
Model representing units of frequency.
Show JSON schema
{ "title": "FrequencyUnitModel", "description": "Model representing units of frequency.", "type": "object", "properties": { "frequency": { "allOf": [ { "$ref": "#/$defs/FrequencyUnitEnum" } ], "description": "Unit of frequency." } }, "$defs": { "FrequencyUnitEnum": { "const": "Hz", "description": "Enum class representing units of frequency.", "enum": [ "Hz" ], "title": "FrequencyUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "frequency" ] }
- field frequency: FrequencyUnitEnum [Required]#
Unit of frequency.
- pydantic model mdio.schemas.v1.units.LengthUnitModel#
Model representing units of length.
Show JSON schema
{ "title": "LengthUnitModel", "description": "Model representing units of length.", "type": "object", "properties": { "length": { "allOf": [ { "$ref": "#/$defs/LengthUnitEnum" } ], "description": "Unit of length." } }, "$defs": { "LengthUnitEnum": { "description": "Enum class representing metric units of length.", "enum": [ "mm", "cm", "m", "km", "in", "ft", "yd", "mi" ], "title": "LengthUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "length" ] }
- field length: LengthUnitEnum [Required]#
Unit of length.
- pydantic model mdio.schemas.v1.units.SpeedUnitModel#
Model representing units of speed.
Show JSON schema
{ "title": "SpeedUnitModel", "description": "Model representing units of speed.", "type": "object", "properties": { "speed": { "allOf": [ { "$ref": "#/$defs/SpeedUnitEnum" } ], "description": "Unit of speed." } }, "$defs": { "SpeedUnitEnum": { "description": "Enum class representing units of speed.", "enum": [ "m/s", "ft/s" ], "title": "SpeedUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "speed" ] }
- field speed: SpeedUnitEnum [Required]#
Unit of speed.
- pydantic model mdio.schemas.v1.units.TimeUnitModel#
Model representing units of time.
Show JSON schema
{ "title": "TimeUnitModel", "description": "Model representing units of time.", "type": "object", "properties": { "time": { "allOf": [ { "$ref": "#/$defs/TimeUnitEnum" } ], "description": "Unit of time." } }, "$defs": { "TimeUnitEnum": { "description": "Enum class representing units of time.", "enum": [ "ns", "\u00b5s", "ms", "s", "min", "h", "d" ], "title": "TimeUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "time" ] }
- field time: TimeUnitEnum [Required]#
Unit of time.
- pydantic model mdio.schemas.v1.units.VoltageUnitModel#
Model representing units of voltage.
Show JSON schema
{ "title": "VoltageUnitModel", "description": "Model representing units of voltage.", "type": "object", "properties": { "voltage": { "allOf": [ { "$ref": "#/$defs/VoltageUnitEnum" } ], "description": "Unit of voltage." } }, "$defs": { "VoltageUnitEnum": { "description": "Enum class representing units of voltage.", "enum": [ "\u00b5V", "mV", "V" ], "title": "VoltageUnitEnum", "type": "string" } }, "additionalProperties": false, "required": [ "voltage" ] }
- field voltage: VoltageUnitEnum [Required]#
Unit of voltage.
Stats
- pydantic model mdio.schemas.v1.stats.StatisticsMetadata#
Data Model representing metadata for statistics.
Show JSON schema
{ "title": "StatisticsMetadata", "description": "Data Model representing metadata for statistics.", "type": "object", "properties": { "statsV1": { "anyOf": [ { "$ref": "#/$defs/SummaryStatistics" }, { "items": { "$ref": "#/$defs/SummaryStatistics" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Minimal summary statistics.", "title": "Statsv1" } }, "$defs": { "CenteredBinHistogram": { "additionalProperties": false, "description": "Class representing a center bin histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "required": [ "counts", "binCenters" ], "title": "CenteredBinHistogram", "type": "object" }, "EdgeDefinedHistogram": { "additionalProperties": false, "description": "A class representing an edge-defined histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "required": [ "counts", "binEdges", "binWidths" ], "title": "EdgeDefinedHistogram", "type": "object" }, "SummaryStatistics": { "additionalProperties": false, "description": "Data model for some statistics in MDIO v1 arrays.", "properties": { "count": { "description": "The number of data points.", "title": "Count", "type": "integer" }, "sum": { "description": "The total of all data values.", "title": "Sum", "type": "number" }, "sumSquares": { "description": "The total of all data values squared.", "title": "Sumsquares", "type": "number" }, "min": { "description": "The smallest value in the variable.", "title": "Min", "type": "number" }, "max": { "description": "The largest value in the variable.", "title": "Max", "type": "number" }, "histogram": { "anyOf": [ { "$ref": "#/$defs/CenteredBinHistogram" }, { "$ref": "#/$defs/EdgeDefinedHistogram" } ], "description": "Binned frequency distribution.", "title": "Histogram" } }, "required": [ "count", "sum", "sumSquares", "min", "max", "histogram" ], "title": "SummaryStatistics", "type": "object" } }, "additionalProperties": false }
- field statsV1: SummaryStatistics | list[SummaryStatistics] | None = None#
Minimal summary statistics.
- pydantic model mdio.schemas.v1.stats.SummaryStatistics#
Data model for some statistics in MDIO v1 arrays.
Show JSON schema
{ "title": "SummaryStatistics", "description": "Data model for some statistics in MDIO v1 arrays.", "type": "object", "properties": { "count": { "description": "The number of data points.", "title": "Count", "type": "integer" }, "sum": { "description": "The total of all data values.", "title": "Sum", "type": "number" }, "sumSquares": { "description": "The total of all data values squared.", "title": "Sumsquares", "type": "number" }, "min": { "description": "The smallest value in the variable.", "title": "Min", "type": "number" }, "max": { "description": "The largest value in the variable.", "title": "Max", "type": "number" }, "histogram": { "anyOf": [ { "$ref": "#/$defs/CenteredBinHistogram" }, { "$ref": "#/$defs/EdgeDefinedHistogram" } ], "description": "Binned frequency distribution.", "title": "Histogram" } }, "$defs": { "CenteredBinHistogram": { "additionalProperties": false, "description": "Class representing a center bin histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "required": [ "counts", "binCenters" ], "title": "CenteredBinHistogram", "type": "object" }, "EdgeDefinedHistogram": { "additionalProperties": false, "description": "A class representing an edge-defined histogram.", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "required": [ "counts", "binEdges", "binWidths" ], "title": "EdgeDefinedHistogram", "type": "object" } }, "additionalProperties": false, "required": [ "count", "sum", "sumSquares", "min", "max", "histogram" ] }
- field histogram: Histogram [Required]#
Binned frequency distribution.
- pydantic model mdio.schemas.v1.stats.EdgeDefinedHistogram#
A class representing an edge-defined histogram.
Show JSON schema
{ "title": "EdgeDefinedHistogram", "description": "A class representing an edge-defined histogram.", "type": "object", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binEdges": { "description": "The left edges of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binedges", "type": "array" }, "binWidths": { "description": "The widths of the histogram bins.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Binwidths", "type": "array" } }, "additionalProperties": false, "required": [ "counts", "binEdges", "binWidths" ] }
- pydantic model mdio.schemas.v1.stats.CenteredBinHistogram#
Class representing a center bin histogram.
Show JSON schema
{ "title": "CenteredBinHistogram", "description": "Class representing a center bin histogram.", "type": "object", "properties": { "counts": { "description": "Count of each each bin.", "items": { "type": "integer" }, "title": "Counts", "type": "array" }, "binCenters": { "description": "List of bin centers.", "items": { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, "title": "Bincenters", "type": "array" } }, "additionalProperties": false, "required": [ "counts", "binCenters" ] }
Enums
- class mdio.schemas.v1.units.AngleUnitEnum#
Enum class representing units of angle.
- DEGREES = 'deg'#
- RADIANS = 'rad'#
- class mdio.schemas.v1.units.DensityUnitEnum#
Enum class representing units of density.
- GRAMS_PER_CC = 'g/cm**3'#
- KILOGRAMS_PER_M3 = 'kg/m**3'#
- POUNDS_PER_GAL = 'lb/gal'#
- class mdio.schemas.v1.units.FrequencyUnitEnum#
Enum class representing units of frequency.
- HERTZ = 'Hz'#
- class mdio.schemas.v1.units.LengthUnitEnum#
Enum class representing metric units of length.
- MILLIMETER = 'mm'#
- CENTIMETER = 'cm'#
- METER = 'm'#
- KILOMETER = 'km'#
- INCH = 'in'#
- FOOT = 'ft'#
- YARD = 'yd'#
- MILE = 'mi'#
- class mdio.schemas.v1.units.SpeedUnitEnum#
Enum class representing units of speed.
- METER_PER_SECOND = 'm/s'#
- FEET_PER_SECOND = 'ft/s'#