MDIO v1

Altay Sansal

Oct 20, 2025

0 min read

Intro

Dataset

Represents an MDIO v1 dataset.

DatasetMetadata

Contains information about a dataset.

Reference

Dataset
pydantic model mdio.builder.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": {
         "$ref": "#/$defs/DatasetMetadata",
         "description": "Dataset metadata."
      }
   },
   "$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": {
               "$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"
            },
            "cname": {
               "$ref": "#/$defs/BloscCname",
               "default": "zstd",
               "description": "Compression algorithm name."
            },
            "clevel": {
               "default": 5,
               "description": "Compression level (integer 0\u20139)",
               "maximum": 9,
               "minimum": 0,
               "title": "Clevel",
               "type": "integer"
            },
            "shuffle": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/BloscShuffle"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Shuffling mode before compression."
            },
            "typesize": {
               "anyOf": [
                  {
                     "type": "integer"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "The size in bytes that the shuffle is performed over.",
               "title": "Typesize"
            },
            "blocksize": {
               "default": 0,
               "description": "The size (in bytes) of blocks to divide data before compression.",
               "title": "Blocksize",
               "type": "integer"
            }
         },
         "title": "Blosc",
         "type": "object"
      },
      "BloscCname": {
         "description": "Enum for compression library used by blosc.",
         "enum": [
            "lz4",
            "lz4hc",
            "blosclz",
            "zstd",
            "snappy",
            "zlib"
         ],
         "title": "BloscCname",
         "type": "string"
      },
      "BloscShuffle": {
         "description": "Enum for shuffle filter used by blosc.",
         "enum": [
            "noshuffle",
            "shuffle",
            "bitshuffle"
         ],
         "title": "BloscShuffle",
         "type": "string"
      },
      "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": "A simple MDIO Coordinate array with metadata.\n\nFor large or complex Coordinates, define a Variable instead.",
         "properties": {
            "dataType": {
               "$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": [
                  {
                     "$ref": "#/$defs/CoordinateMetadata"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Coordinate Metadata."
            }
         },
         "required": [
            "dataType",
            "dimensions",
            "name"
         ],
         "title": "Coordinate",
         "type": "object"
      },
      "CoordinateMetadata": {
         "additionalProperties": false,
         "description": "Reduced Metadata, perfect for simple Coordinates.",
         "properties": {
            "unitsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/LengthUnitModel"
                  },
                  {
                     "$ref": "#/$defs/TimeUnitModel"
                  },
                  {
                     "$ref": "#/$defs/AngleUnitModel"
                  },
                  {
                     "$ref": "#/$defs/DensityUnitModel"
                  },
                  {
                     "$ref": "#/$defs/SpeedUnitModel"
                  },
                  {
                     "$ref": "#/$defs/FrequencyUnitModel"
                  },
                  {
                     "$ref": "#/$defs/VoltageUnitModel"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Unitsv1"
            },
            "attributes": {
               "anyOf": [
                  {
                     "additionalProperties": true,
                     "type": "object"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Attributes"
            }
         },
         "title": "CoordinateMetadata",
         "type": "object"
      },
      "DatasetMetadata": {
         "additionalProperties": false,
         "description": "Contains information about a 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": [
                  {
                     "additionalProperties": true,
                     "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": {
               "$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": {
         "description": "Enum class representing units of frequency.",
         "enum": [
            "Hz"
         ],
         "title": "FrequencyUnitEnum",
         "type": "string"
      },
      "FrequencyUnitModel": {
         "additionalProperties": false,
         "description": "Model representing units of frequency.",
         "properties": {
            "frequency": {
               "$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": {
               "$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": {
               "$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": {
               "$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",
            "float128",
            "complex64",
            "complex128",
            "complex256",
            "V240"
         ],
         "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": {
               "$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": {
               "$ref": "#/$defs/TimeUnitEnum",
               "description": "Unit of time."
            }
         },
         "required": [
            "time"
         ],
         "title": "TimeUnitModel",
         "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,
         "description": "Complete Metadata for Variables and complex or large Coordinates.",
         "properties": {
            "unitsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/LengthUnitModel"
                  },
                  {
                     "$ref": "#/$defs/TimeUnitModel"
                  },
                  {
                     "$ref": "#/$defs/AngleUnitModel"
                  },
                  {
                     "$ref": "#/$defs/DensityUnitModel"
                  },
                  {
                     "$ref": "#/$defs/SpeedUnitModel"
                  },
                  {
                     "$ref": "#/$defs/FrequencyUnitModel"
                  },
                  {
                     "$ref": "#/$defs/VoltageUnitModel"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Unitsv1"
            },
            "attributes": {
               "anyOf": [
                  {
                     "additionalProperties": true,
                     "type": "object"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Attributes"
            },
            "chunkGrid": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/RegularChunkGrid"
                  },
                  {
                     "$ref": "#/$defs/RectilinearChunkGrid"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Chunk grid specification for the array.",
               "title": "Chunkgrid"
            },
            "statsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/SummaryStatistics"
                  },
                  {
                     "items": {
                        "$ref": "#/$defs/SummaryStatistics"
                     },
                     "type": "array"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Minimal summary statistics.",
               "title": "Statsv1"
            }
         },
         "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": {
               "$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.

field variables: list[Variable] [Required]

Variables in MDIO dataset

pydantic model mdio.builder.schemas.v1.dataset.DatasetMetadata

Contains information about a dataset.

Show JSON schema
{
   "title": "DatasetMetadata",
   "description": "Contains information about a 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": [
            {
               "additionalProperties": true,
               "type": "object"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "User defined attributes as key/value pairs.",
         "title": "Attributes"
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "apiVersion",
      "createdOn"
   ]
}

field apiVersion: str [Required]

The version of the MDIO API that the dataset complies with.

field attributes: dict[str, Any] | None = None

User defined attributes as key/value pairs.

field createdOn: AwareDatetime [Required]

The timestamp indicating when the dataset was first created, including timezone information. Expressed in ISO 8601 format.

field name: str [Required]

Name or identifier for the dataset.

Variable
pydantic model mdio.builder.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": {
      "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": {
               "$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"
            },
            "cname": {
               "$ref": "#/$defs/BloscCname",
               "default": "zstd",
               "description": "Compression algorithm name."
            },
            "clevel": {
               "default": 5,
               "description": "Compression level (integer 0\u20139)",
               "maximum": 9,
               "minimum": 0,
               "title": "Clevel",
               "type": "integer"
            },
            "shuffle": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/BloscShuffle"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Shuffling mode before compression."
            },
            "typesize": {
               "anyOf": [
                  {
                     "type": "integer"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "The size in bytes that the shuffle is performed over.",
               "title": "Typesize"
            },
            "blocksize": {
               "default": 0,
               "description": "The size (in bytes) of blocks to divide data before compression.",
               "title": "Blocksize",
               "type": "integer"
            }
         },
         "title": "Blosc",
         "type": "object"
      },
      "BloscCname": {
         "description": "Enum for compression library used by blosc.",
         "enum": [
            "lz4",
            "lz4hc",
            "blosclz",
            "zstd",
            "snappy",
            "zlib"
         ],
         "title": "BloscCname",
         "type": "string"
      },
      "BloscShuffle": {
         "description": "Enum for shuffle filter used by blosc.",
         "enum": [
            "noshuffle",
            "shuffle",
            "bitshuffle"
         ],
         "title": "BloscShuffle",
         "type": "string"
      },
      "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": "A simple MDIO Coordinate array with metadata.\n\nFor large or complex Coordinates, define a Variable instead.",
         "properties": {
            "dataType": {
               "$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": [
                  {
                     "$ref": "#/$defs/CoordinateMetadata"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Coordinate Metadata."
            }
         },
         "required": [
            "dataType",
            "dimensions",
            "name"
         ],
         "title": "Coordinate",
         "type": "object"
      },
      "CoordinateMetadata": {
         "additionalProperties": false,
         "description": "Reduced Metadata, perfect for simple Coordinates.",
         "properties": {
            "unitsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/LengthUnitModel"
                  },
                  {
                     "$ref": "#/$defs/TimeUnitModel"
                  },
                  {
                     "$ref": "#/$defs/AngleUnitModel"
                  },
                  {
                     "$ref": "#/$defs/DensityUnitModel"
                  },
                  {
                     "$ref": "#/$defs/SpeedUnitModel"
                  },
                  {
                     "$ref": "#/$defs/FrequencyUnitModel"
                  },
                  {
                     "$ref": "#/$defs/VoltageUnitModel"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Unitsv1"
            },
            "attributes": {
               "anyOf": [
                  {
                     "additionalProperties": true,
                     "type": "object"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Attributes"
            }
         },
         "title": "CoordinateMetadata",
         "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": {
               "$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": {
         "description": "Enum class representing units of frequency.",
         "enum": [
            "Hz"
         ],
         "title": "FrequencyUnitEnum",
         "type": "string"
      },
      "FrequencyUnitModel": {
         "additionalProperties": false,
         "description": "Model representing units of frequency.",
         "properties": {
            "frequency": {
               "$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": {
               "$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": {
               "$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": {
               "$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",
            "float128",
            "complex64",
            "complex128",
            "complex256",
            "V240"
         ],
         "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": {
               "$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": {
               "$ref": "#/$defs/TimeUnitEnum",
               "description": "Unit of time."
            }
         },
         "required": [
            "time"
         ],
         "title": "TimeUnitModel",
         "type": "object"
      },
      "VariableMetadata": {
         "additionalProperties": false,
         "description": "Complete Metadata for Variables and complex or large Coordinates.",
         "properties": {
            "unitsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/LengthUnitModel"
                  },
                  {
                     "$ref": "#/$defs/TimeUnitModel"
                  },
                  {
                     "$ref": "#/$defs/AngleUnitModel"
                  },
                  {
                     "$ref": "#/$defs/DensityUnitModel"
                  },
                  {
                     "$ref": "#/$defs/SpeedUnitModel"
                  },
                  {
                     "$ref": "#/$defs/FrequencyUnitModel"
                  },
                  {
                     "$ref": "#/$defs/VoltageUnitModel"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Unitsv1"
            },
            "attributes": {
               "anyOf": [
                  {
                     "additionalProperties": true,
                     "type": "object"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Attributes"
            },
            "chunkGrid": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/RegularChunkGrid"
                  },
                  {
                     "$ref": "#/$defs/RectilinearChunkGrid"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Chunk grid specification for the array.",
               "title": "Chunkgrid"
            },
            "statsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/SummaryStatistics"
                  },
                  {
                     "items": {
                        "$ref": "#/$defs/SummaryStatistics"
                     },
                     "type": "array"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Minimal summary statistics.",
               "title": "Statsv1"
            }
         },
         "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": {
               "$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 compressor: Blosc | ZFP | None = None

Compression settings.

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 longName: str | None = None

Fully descriptive name.

field metadata: VariableMetadata | None = None

Variable Metadata.

field name: str [Required]

Name of the array.

pydantic model mdio.builder.schemas.v1.variable.Coordinate

A simple MDIO Coordinate array with metadata.

For large or complex Coordinates, define a Variable instead.

Show JSON schema
{
   "title": "Coordinate",
   "description": "A simple MDIO Coordinate array with metadata.\n\nFor large or complex Coordinates, define a Variable instead.",
   "type": "object",
   "properties": {
      "dataType": {
         "$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": [
            {
               "$ref": "#/$defs/CoordinateMetadata"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Coordinate Metadata."
      }
   },
   "$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": {
               "$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"
            },
            "cname": {
               "$ref": "#/$defs/BloscCname",
               "default": "zstd",
               "description": "Compression algorithm name."
            },
            "clevel": {
               "default": 5,
               "description": "Compression level (integer 0\u20139)",
               "maximum": 9,
               "minimum": 0,
               "title": "Clevel",
               "type": "integer"
            },
            "shuffle": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/BloscShuffle"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "Shuffling mode before compression."
            },
            "typesize": {
               "anyOf": [
                  {
                     "type": "integer"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "description": "The size in bytes that the shuffle is performed over.",
               "title": "Typesize"
            },
            "blocksize": {
               "default": 0,
               "description": "The size (in bytes) of blocks to divide data before compression.",
               "title": "Blocksize",
               "type": "integer"
            }
         },
         "title": "Blosc",
         "type": "object"
      },
      "BloscCname": {
         "description": "Enum for compression library used by blosc.",
         "enum": [
            "lz4",
            "lz4hc",
            "blosclz",
            "zstd",
            "snappy",
            "zlib"
         ],
         "title": "BloscCname",
         "type": "string"
      },
      "BloscShuffle": {
         "description": "Enum for shuffle filter used by blosc.",
         "enum": [
            "noshuffle",
            "shuffle",
            "bitshuffle"
         ],
         "title": "BloscShuffle",
         "type": "string"
      },
      "CoordinateMetadata": {
         "additionalProperties": false,
         "description": "Reduced Metadata, perfect for simple Coordinates.",
         "properties": {
            "unitsV1": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/LengthUnitModel"
                  },
                  {
                     "$ref": "#/$defs/TimeUnitModel"
                  },
                  {
                     "$ref": "#/$defs/AngleUnitModel"
                  },
                  {
                     "$ref": "#/$defs/DensityUnitModel"
                  },
                  {
                     "$ref": "#/$defs/SpeedUnitModel"
                  },
                  {
                     "$ref": "#/$defs/FrequencyUnitModel"
                  },
                  {
                     "$ref": "#/$defs/VoltageUnitModel"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Unitsv1"
            },
            "attributes": {
               "anyOf": [
                  {
                     "additionalProperties": true,
                     "type": "object"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Attributes"
            }
         },
         "title": "CoordinateMetadata",
         "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": {
               "$ref": "#/$defs/DensityUnitEnum",
               "description": "Unit of density."
            }
         },
         "required": [
            "density"
         ],
         "title": "DensityUnitModel",
         "type": "object"
      },
      "FrequencyUnitEnum": {
         "description": "Enum class representing units of frequency.",
         "enum": [
            "Hz"
         ],
         "title": "FrequencyUnitEnum",
         "type": "string"
      },
      "FrequencyUnitModel": {
         "additionalProperties": false,
         "description": "Model representing units of frequency.",
         "properties": {
            "frequency": {
               "$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": {
               "$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",
            "float128",
            "complex64",
            "complex128",
            "complex256",
            "V240"
         ],
         "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": {
               "$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": {
               "$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": {
               "$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 compressor: Blosc | ZFP | None = None

Compression settings.

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 longName: str | None = None

Fully descriptive name.

field metadata: CoordinateMetadata | None = None

Coordinate Metadata.

field name: str [Required]

Name of the array.

pydantic model mdio.builder.schemas.v1.variable.CoordinateMetadata

Reduced Metadata, perfect for simple Coordinates.

Show JSON schema
{
   "title": "CoordinateMetadata",
   "description": "Reduced Metadata, perfect for simple Coordinates.",
   "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"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Unitsv1"
      },
      "attributes": {
         "anyOf": [
            {
               "additionalProperties": true,
               "type": "object"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "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": {
               "$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": {
               "$ref": "#/$defs/DensityUnitEnum",
               "description": "Unit of density."
            }
         },
         "required": [
            "density"
         ],
         "title": "DensityUnitModel",
         "type": "object"
      },
      "FrequencyUnitEnum": {
         "description": "Enum class representing units of frequency.",
         "enum": [
            "Hz"
         ],
         "title": "FrequencyUnitEnum",
         "type": "string"
      },
      "FrequencyUnitModel": {
         "additionalProperties": false,
         "description": "Model representing units of frequency.",
         "properties": {
            "frequency": {
               "$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": {
               "$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": {
               "$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": {
               "$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": {
               "$ref": "#/$defs/VoltageUnitEnum",
               "description": "Unit of voltage."
            }
         },
         "required": [
            "voltage"
         ],
         "title": "VoltageUnitModel",
         "type": "object"
      }
   },
   "additionalProperties": false
}

field attributes: dict[str, Any] | None = None
field unitsV1: LengthUnitModel | TimeUnitModel | AngleUnitModel | DensityUnitModel | SpeedUnitModel | FrequencyUnitModel | VoltageUnitModel | None = None
pydantic model mdio.builder.schemas.v1.variable.VariableMetadata

Complete Metadata for Variables and complex or large Coordinates.

Show JSON schema
{
   "title": "VariableMetadata",
   "description": "Complete Metadata for Variables and complex or large Coordinates.",
   "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"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Unitsv1"
      },
      "attributes": {
         "anyOf": [
            {
               "additionalProperties": true,
               "type": "object"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Attributes"
      },
      "chunkGrid": {
         "anyOf": [
            {
               "$ref": "#/$defs/RegularChunkGrid"
            },
            {
               "$ref": "#/$defs/RectilinearChunkGrid"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Chunk grid specification for the array.",
         "title": "Chunkgrid"
      },
      "statsV1": {
         "anyOf": [
            {
               "$ref": "#/$defs/SummaryStatistics"
            },
            {
               "items": {
                  "$ref": "#/$defs/SummaryStatistics"
               },
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Minimal summary statistics.",
         "title": "Statsv1"
      }
   },
   "$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": {
               "$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": {
               "$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": {
         "description": "Enum class representing units of frequency.",
         "enum": [
            "Hz"
         ],
         "title": "FrequencyUnitEnum",
         "type": "string"
      },
      "FrequencyUnitModel": {
         "additionalProperties": false,
         "description": "Model representing units of frequency.",
         "properties": {
            "frequency": {
               "$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": {
               "$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": {
               "$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": {
               "$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": {
               "$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": {
               "$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": {
               "$ref": "#/$defs/VoltageUnitEnum",
               "description": "Unit of voltage."
            }
         },
         "required": [
            "voltage"
         ],
         "title": "VoltageUnitModel",
         "type": "object"
      }
   },
   "additionalProperties": false
}

field attributes: dict[str, Any] | None = None
field chunkGrid: RegularChunkGrid | RectilinearChunkGrid | None = None

Chunk grid specification for the array.

field statsV1: SummaryStatistics | list[SummaryStatistics] | None = None

Minimal summary statistics.

field unitsV1: AllUnitModel | None = None
Units

Unit schemas specific to MDIO v1.

pydantic model mdio.builder.schemas.v1.units.AngleUnitModel

Model representing units of angle.

Show JSON schema
{
   "title": "AngleUnitModel",
   "description": "Model representing units of angle.",
   "type": "object",
   "properties": {
      "angle": {
         "$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.builder.schemas.v1.units.DensityUnitModel

Model representing units of density.

Show JSON schema
{
   "title": "DensityUnitModel",
   "description": "Model representing units of density.",
   "type": "object",
   "properties": {
      "density": {
         "$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.builder.schemas.v1.units.FrequencyUnitModel

Model representing units of frequency.

Show JSON schema
{
   "title": "FrequencyUnitModel",
   "description": "Model representing units of frequency.",
   "type": "object",
   "properties": {
      "frequency": {
         "$ref": "#/$defs/FrequencyUnitEnum",
         "description": "Unit of frequency."
      }
   },
   "$defs": {
      "FrequencyUnitEnum": {
         "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.builder.schemas.v1.units.LengthUnitModel

Model representing units of length.

Show JSON schema
{
   "title": "LengthUnitModel",
   "description": "Model representing units of length.",
   "type": "object",
   "properties": {
      "length": {
         "$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.builder.schemas.v1.units.SpeedUnitModel

Model representing units of speed.

Show JSON schema
{
   "title": "SpeedUnitModel",
   "description": "Model representing units of speed.",
   "type": "object",
   "properties": {
      "speed": {
         "$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.builder.schemas.v1.units.TimeUnitModel

Model representing units of time.

Show JSON schema
{
   "title": "TimeUnitModel",
   "description": "Model representing units of time.",
   "type": "object",
   "properties": {
      "time": {
         "$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.builder.schemas.v1.units.VoltageUnitModel

Model representing units of voltage.

Show JSON schema
{
   "title": "VoltageUnitModel",
   "description": "Model representing units of voltage.",
   "type": "object",
   "properties": {
      "voltage": {
         "$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.builder.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 count: int [Required]

The number of data points.

field histogram: Histogram [Required]

Binned frequency distribution.

field max: float [Required]

The largest value in the variable.

field min: float [Required]

The smallest value in the variable.

field sum: float [Required]

The total of all data values.

field sumSquares: float [Required]

The total of all data values squared.

pydantic model mdio.builder.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"
   ]
}

field binEdges: list[float | int] [Required]

The left edges of the histogram bins.

field binWidths: list[float | int] [Required]

The widths of the histogram bins.

field counts: list[int] [Required]

Count of each each bin.

pydantic model mdio.builder.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"
   ]
}

field binCenters: list[float | int] [Required]

List of bin centers.

field counts: list[int] [Required]

Count of each each bin.

Enums
class mdio.builder.schemas.v1.units.AngleUnitEnum

Enum class representing units of angle.

DEGREES = 'deg'
RADIANS = 'rad'
class mdio.builder.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.builder.schemas.v1.units.FrequencyUnitEnum

Enum class representing units of frequency.

HERTZ = 'Hz'
class mdio.builder.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.builder.schemas.v1.units.SpeedUnitEnum

Enum class representing units of speed.

METER_PER_SECOND = 'm/s'
FEET_PER_SECOND = 'ft/s'
class mdio.builder.schemas.v1.units.TimeUnitEnum

Enum class representing units of time.

NANOSECOND = 'ns'
MICROSECOND = 'µs'
MILLISECOND = 'ms'
SECOND = 's'
MINUTE = 'min'
HOUR = 'h'
DAY = 'd'
class mdio.builder.schemas.v1.units.VoltageUnitEnum

Enum class representing units of voltage.

MICROVOLT = 'µV'
MILLIVOLT = 'mV'
VOLT = 'V'