ts_ids_core.schema package

Subpackages

Submodules

Module contents

Model Assay[source]

Bases: IdsElement

An Assay is an analytical measurement procedure that produces a detectable signal, allowing a process to be qualified and quantified.

Show JSON schema
{
   "description": "An Assay is an analytical measurement procedure that produces a detectable signal, allowing a process to be qualified and quantified.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to an assay.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "A human-readable name given to the assay.",
         "type": [
            "string",
            "null"
         ]
      },
      "description": {
         "description": "A human-readable description given to the assay",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field description: Nullable[str]

A human-readable description given to the assay

field id: Nullable[str]

Unique identifier assigned to an assay.

field name: Nullable[str]

A human-readable name given to the assay.

Model Batch[source]

Bases: IdsElement

A Batch is the result of a single manufacturing run for a drug product that is made as specified groups or amounts, within a specific time frame from the same raw materials that is intended to have uniform character and quality, within specified limits.

Show JSON schema
{
   "description": "A Batch is the result of a single manufacturing run for a drug product that is made as specified groups or amounts,  within a specific time frame from the same raw materials that is intended to have uniform character and quality, within specified limits.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a batch.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "Batch name",
         "type": [
            "string",
            "null"
         ]
      },
      "barcode": {
         "description": "Barcode assigned to a batch",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field barcode: Nullable[str]

Barcode assigned to a batch

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a batch.

field name: Nullable[str]

Batch name

Model Checksum[source]

Bases: IdsElement

Checksum value and algorithm associated with a file.

Show JSON schema
{
   "description": "Checksum value and algorithm associated with a file.",
   "type": "object",
   "properties": {
      "value": {
         "description": "Checksum string value.",
         "type": "string"
      },
      "algorithm": {
         "description": "Checksum algorithm, e.g. 'md5', 'sha256'.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "value",
      "algorithm"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field algorithm: Required[Nullable[str]]

Checksum algorithm, e.g. ‘md5’, ‘sha256’.

field value: Required[str]

Checksum string value.

Model Compound[source]

Bases: IdsElement

A Compound is a specific chemical or biochemical structure or substance that is being investigated. A Compound may be any drug substance, drug product intermediate, or drug product across small molecules, and cell and gene therapy (CGT).

Show JSON schema
{
   "description": "A Compound is a specific chemical or biochemical structure or substance that is being investigated. A Compound may be any drug substance, drug product intermediate, or drug product across small molecules, and cell and gene therapy (CGT).",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a compound.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "Compound name.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a compound.

field name: Nullable[str]

Compound name.

Model DataCube[source]

Bases: IdsElement

TetraScience designed model for multi-dimensional data.

Show JSON schema
{
   "description": "TetraScience designed model for multi-dimensional data.",
   "type": "object",
   "properties": {
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "measures": {
         "items": {
            "$ref": "#/definitions/Measure"
         },
         "maxItems": 1,
         "minItems": 1,
         "type": "array"
      },
      "dimensions": {
         "items": {
            "$ref": "#/definitions/Dimension"
         },
         "maxItems": 2,
         "minItems": 2,
         "type": "array"
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "measures",
      "dimensions"
   ],
   "definitions": {
      "Dimension": {
         "additionalProperties": false,
         "description": "A dimension of a DataCube",
         "properties": {
            "name": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "unit": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "scale": {
               "items": {
                  "type": [
                     "number",
                     "null"
                  ]
               },
               "type": "array"
            }
         },
         "required": [
            "name",
            "unit",
            "scale"
         ],
         "type": "object"
      },
      "Measure": {
         "additionalProperties": false,
         "description": "A measure of a DataCube",
         "properties": {
            "name": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "unit": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "value": {
               "items": {
                  "items": {
                     "type": [
                        "number",
                        "null"
                     ]
                  },
                  "type": "array"
               },
               "type": "array"
            }
         },
         "required": [
            "name",
            "unit",
            "value"
         ],
         "type": "object"
      }
   }
}

Validators:
field dimensions: Required[Annotated[List[Dimension], fixed_length(2)]]
Constraints:
  • min_length = 2

  • max_length = 2

field measures: Required[Annotated[List[Measure], fixed_length(1)]]
Constraints:
  • min_length = 1

  • max_length = 1

field name: Required[Nullable[str]]
validator consistent_number_of_dimensions  »  all fields[source]

Assert that the dimensionality of all DataCube.measures[*].value is consistent with DataCube.dimensions[*].scale.

For example, consider the following DataCube class that describes one-dimensional data:

from typing import List

from pydantic import conlist

from ts_ids_core.annotations import Required
from ts_ids_core.schema import DataCube, Dimension, Measure

class ExampleMeasure(Measure):
    # note that `value` is one-dimensional to be consistent with the
    # `fixed_length` in the definition of `ExampleDataCube.dimensions`.
    value: List[float]

class ExampleDataCube(DataCube):
    measures: Required[Annotated[List[Measure], fixed_length(1)]]
    dimensions: Required[Annotated[List[Dimension], fixed_length(1)]]

The following would be a valid ExampleDataCube instance:

example = DataCube(
    dimensions=[
        Dimension(
            name="time",
            unit="second",
            scale=[0, 1, 2, 3, 4, 5],
        ),
    ],
    measures=[
        ExampleMeasure(
            name="electrical_current",
            unit="MilliAmp",
            value=[0, 10, 20, 30, 40, 50],
        ),
    ]
)

It’s valid because len(example.measures[0].value) == len(example.dimensions[0].scale).

Validates:
  • all fields

class DataCubeDict[source]

Bases: TypedDict

Type hint for the dictionary form of DataCube.

dimensions: List[Dimension]
measures: List[Measure]
name: str | None
Model DataCubeMetadata[source]

Bases: IdsElement

DataCube metadata, with a file ID referencing a file in the data lake which contains DataCube dimension and measure values.

Show JSON schema
{
   "description": "DataCube metadata, with a file ID referencing a file in the data lake which contains\nDataCube dimension and measure values.",
   "type": "object",
   "properties": {
      "index": {
         "description": "Index which relates dimension and measure values in the external data file with the metadata stored in this model.",
         "type": "integer"
      },
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "measures": {
         "items": {
            "$ref": "#/definitions/MeasureMetadata"
         },
         "maxItems": 1,
         "minItems": 1,
         "type": "array"
      },
      "dimensions": {
         "items": {
            "$ref": "#/definitions/DimensionMetadata"
         },
         "maxItems": 2,
         "minItems": 2,
         "type": "array"
      },
      "file_id": {
         "description": "The `fileId` of the file in the data lake containing DataCube data",
         "type": "string"
      }
   },
   "additionalProperties": false,
   "required": [
      "index",
      "name",
      "measures",
      "dimensions",
      "file_id"
   ],
   "definitions": {
      "DimensionMetadata": {
         "additionalProperties": false,
         "description": "Metadata for a dimension of a DataCube",
         "properties": {
            "name": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "unit": {
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "unit"
         ],
         "type": "object"
      },
      "MeasureMetadata": {
         "additionalProperties": false,
         "description": "Metadata for a measure of a DataCube",
         "properties": {
            "name": {
               "type": [
                  "string",
                  "null"
               ]
            },
            "unit": {
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "unit"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field dimensions: Required[Annotated[List[DimensionMetadata], fixed_length(2)]]
Constraints:
  • min_length = 2

  • max_length = 2

field file_id: Required[str]

The fileId of the file in the data lake containing DataCube data

field index: Required[int]

Index which relates dimension and measure values in the external data file with the metadata stored in this model.

field measures: Required[Annotated[List[MeasureMetadata], fixed_length(1)]]
Constraints:
  • min_length = 1

  • max_length = 1

field name: Required[Nullable[str]]
Model Dimension[source]

Bases: DimensionMetadata

A dimension of a DataCube

Show JSON schema
{
   "description": "A dimension of a DataCube",
   "type": "object",
   "properties": {
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "unit": {
         "type": [
            "string",
            "null"
         ]
      },
      "scale": {
         "items": {
            "type": [
               "number",
               "null"
            ]
         },
         "type": "array"
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "unit",
      "scale"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field scale: Required[List[Nullable[float]]]
Model DimensionMetadata[source]

Bases: IdsElement

Metadata for a dimension of a DataCube

Show JSON schema
{
   "description": "Metadata for a dimension of a DataCube",
   "type": "object",
   "properties": {
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "unit": {
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "unit"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[Nullable[str]]
field unit: Required[Nullable[str]]
Model Experiment[source]

Bases: IdsElement

An Experiment is a scientific procedure to investigate a specific hypothesis or a research question. The primary and derived scientific data is used to test the hypothesis, or to provide insight into a particular process. An Experimental entry typically contains additional context, such as purpose, materials, method, and conclusions.

Show JSON schema
{
   "description": "An Experiment is a scientific procedure to investigate a specific hypothesis or a research question. The primary and derived scientific data is used to test the hypothesis, or to provide insight into a particular process. An Experimental entry typically contains additional context, such as purpose, materials, method, and conclusions.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a specific experiment conducted within a project. Most often generated within an electronic laboratory notebook (ELN).",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "A human-readable name given to the experiment.",
         "type": [
            "string",
            "null"
         ]
      },
      "description": {
         "description": "A human-readable description given to the experiment.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field description: Nullable[str]

A human-readable description given to the experiment.

field id: Nullable[str]

Unique identifier assigned to a specific experiment conducted within a project. Most often generated within an electronic laboratory notebook (ELN).

field name: Nullable[str]

A human-readable name given to the experiment.

Model Firmware[source]

Bases: IdsElement

System firmware metadata.

Show JSON schema
{
   "description": "System firmware metadata.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Firmware name.",
         "type": [
            "string",
            "null"
         ]
      },
      "version": {
         "description": "Firmware version.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "version"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[Nullable[str]]

Firmware name.

field version: Required[Nullable[str]]

Firmware version.

Model Holder[source]

Bases: IdsElement

A sample container such as a microplate or a vial.

Show JSON schema
{
   "description": "A sample container such as a microplate or a vial.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Holder name.",
         "type": [
            "string",
            "null"
         ]
      },
      "type": {
         "description": "Holder type.",
         "type": [
            "string",
            "null"
         ]
      },
      "barcode": {
         "description": "Barcode assigned to a holder.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field barcode: Nullable[str]

Barcode assigned to a holder.

field name: Nullable[str]

Holder name.

field type_: Nullable[str] (alias 'type')

Holder type.

Model IdsElement[source]

Bases: BaseModel

Base class for IDS models.

Show JSON schema
{
   "description": "Base class for IDS models.",
   "type": "object",
   "properties": {},
   "additionalProperties": false
}

Validators:
validator all_abstract_fields_implemented  »  all fields[source]

Assert no fields are abstract before being populated, i.e. they have all been implemented.

Validates:
  • all fields

dict(*, include: IncEx = None, exclude: IncEx = None, by_alias: bool = True, exclude_unset: bool = True, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny[source]

Return the model instance as a dictionary.

This is an alias of the model_dump method which is Pydantic’s default name for this functionality.

model_dump(*, mode: Literal['json', 'python'] | str = 'python', include: IncEx = None, exclude: IncEx = None, by_alias: bool = True, exclude_unset: bool = True, exclude_defaults: bool = False, exclude_none: bool = False, round_trip: bool = False, warnings: bool = True) DictStrAny[source]

Export to a Python dictionary, excluding any fields whose values are not defined.

For the other parameters, see pydantic.main.BaseModel.model_dump().

Parameters:

exclude_unset – This parameter is not used but is maintained in order to preserve the parent class’ API.

Raises:

NotImplementedError – If any value other than the default is passed to exclude_unset. The exclude_unset parameter is only to keep the API consistent with the parent class’ method, pydantic.BaseModel.model_dump().

model_dump_json(*, indent: int | None = None, include: IncEx = None, exclude: IncEx = None, by_alias: bool = True, exclude_unset: bool = True, exclude_defaults: bool = False, exclude_none: bool = False, round_trip: bool = False, warnings: bool = True) str[source]

Export to JSON.

For the other parameters, see pydantic.main.BaseModel.model_dump_json().

Note exclude_unset may not be used, IDS models always have to exclude unset values so that IDS_UNDEFINED is handled correctly.

Parameters:

exclude_unset – This parameter is not used but is maintained in order to preserve the parent class’ API.

Raises:

NotImplementedError – If any value other than the default is passed to exclude_unset. The exclude_unset parameter is only to keep the API consistent with the parent class’ method, pydantic.BaseModel.model_dump_json().

classmethod model_json_schema(by_alias: bool = True, ref_template: str = '#/definitions/{model}', schema_generator: ~typing.Type[~pydantic.json_schema.GenerateJsonSchema] = <class 'ts_ids_core.base.ids_element.IdsSchemaGenerator'>, mode: typing_extensions.Literal[validation, serialization] = 'validation') Dict[str, Any][source]

Generates a JSON schema for a model class.

Parameters:
  • by_alias – Whether to use field aliases in the JSON Schema. Defaults to True.

  • ref_template – The $ref template. Defaults to ‘#/definitions/{model}’, where model is replaced with the ts_ids_core.base.ids_element.IdsElement’s class name.

Returns:

The JSON Schema, as described above.

Raises:
  • UnimplementedAbstractField – One or more abstract field(s) are not implemented.

  • InvalidSchemaMetadata – One or more of the schema metadata fields specified in ts_ids_core.base.ids_element.schema_extra_metadata are invalid values.

classmethod schema(by_alias: bool = True, ref_template: str = '#/definitions/{model}') Dict[str, Any][source]

Return the JSON Schema as a Python object.

This is an alias of the model_json_schema method which is Pydantic’s default name for this functionality.

classmethod schema_json(*, by_alias: bool = True, ref_template: str = '#/definitions/{model}', **dumps_kwargs: Any) str[source]

Dump schema to json string. This method preserves Pydantic’s v1 BaseModel.schema_json functionality.

Parameters:
  • by_alias – Whether to use field aliases in the JSON Schema. Defaults to True.

  • ref_template – The $ref template. Defaults to ‘#/definitions/{model}’, where model is replaced with the ts_ids_core.base.ids_element.IdsElement’s class name.

  • dumps_kwargs – Key word arguments passed to IdsElement.model_json_schema

Returns:

IdsElement schema as string

schema_extra_metadata: ClassVar[SchemaExtraMetadataType] = {}

Key/value pairs to add to the JSON Schema. These values will not be in the output of method dict() nor json(). That is, they won’t be in the IDS instance. To indicate that the key/value pair is abstract and thus expected to be overridden by the child class, set the value to NotImplemented. Note that in child classes the typing.ClassVar type hint must be provided in order to indicate that schema_extra_metadata is not an IDS Field.

IdsField(default: Any = IdsUndefined, primary_key: str | None = None, **kwargs: Any) Any[source]

Wrap the pydantic.Field() function such that, fields default to a sentinel value for undefined (a.k.a. unknown or missing) values. As such, the field definition is compatible with schema defined using ts_ids_core.base.ids_element.IdsElement.

Parameters:
  • default – The default value to use for the field. Default set to a global instance of ts_ids_core.base.ids_undefined_type.IdsUndefinedType that’s intended to be used as a singleton.

  • primary_key – A JSON pointer to the primary key which this foreign key links to. For example, IdsField(primary_key=”/properties/samples/items/properties/pk”) would be used to define a foreign key which points to samples[*].pk. This pointer is validated when the IdsElement.schema method is called, validation fails if the target primary key field is not in the schema.

  • kwargs – All other keyword arguments are passed to pydantic.Field().

Returns:

The resulting pydantic.fields.FieldInfo produced by pydantic.Field().

Model IdsSchema[source]

Bases: IdsElement

Base top-level IDS.

Show JSON schema
{
   "description": "Base top-level IDS.",
   "type": "object",
   "properties": {
      "@idsType": {
         "description": "Also known as IDS slug. Defined by TetraScience.",
         "type": "string"
      },
      "@idsVersion": {
         "description": "IDS version. Defined by TetraScience.",
         "type": "string"
      },
      "@idsNamespace": {
         "description": "IDS namespace. Defined by TetraScience.",
         "type": "string"
      }
   },
   "$id": "NotImplemented",
   "$schema": "http://json-schema.org/draft-07/schema#",
   "additionalProperties": false,
   "required": [
      "@idsType",
      "@idsVersion",
      "@idsNamespace"
   ]
}

Validators:
field ids_namespace: Abstract[Required[str]] (alias '@idsNamespace')

IDS namespace. Defined by TetraScience.

field ids_type: Abstract[Required[str]] (alias '@idsType')

Also known as IDS slug. Defined by TetraScience.

field ids_version: Abstract[Required[str]] (alias '@idsVersion')

IDS version. Defined by TetraScience.

validator is_valid_version_string  »  ids_version[source]

Assert that the passed-in value conforms to semantic versioning if the value is not None.

Parameters:

value – The passed-in value to be validated.

Returns:

The passed-in value, unchanged.

Validates:
schema_extra_metadata: ClassVar[SchemaExtraMetadataType] = {'$id': NotImplemented, '$schema': 'http://json-schema.org/draft-07/schema#'}

Key/value pairs to add to the JSON Schema. These values will not be in the output of method dict() nor json(). That is, they won’t be in the IDS instance. To indicate that the key/value pair is abstract and thus expected to be overridden by the child class, set the value to NotImplemented. Note that in child classes the typing.ClassVar type hint must be provided in order to indicate that schema_extra_metadata is not an IDS Field.

Model Label[source]

Bases: IdsElement

A Label associated with a sample, along with metadata about the label including the source of the label and times associated with the label such as when it was created or looked up.

Show JSON schema
{
   "description": "A Label associated with a sample, along with metadata about the label including\nthe source of the label and times associated with the label such as when it was\ncreated or looked up.",
   "type": "object",
   "properties": {
      "source": {
         "$ref": "#/definitions/Source",
         "description": "Sample label data source information."
      },
      "name": {
         "description": "Sample label name.",
         "type": "string"
      },
      "value": {
         "description": "Sample label value.",
         "type": "string"
      },
      "time": {
         "$ref": "#/definitions/SampleTime",
         "description": "Time associated with the sample label."
      }
   },
   "additionalProperties": false,
   "required": [
      "source",
      "name",
      "value",
      "time"
   ],
   "definitions": {
      "RawSampleTime": {
         "additionalProperties": false,
         "description": "The base model for time associated with a specific sample.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "SampleTime": {
         "additionalProperties": false,
         "description": "A model for experiment sample datetime values converted to a standard ISO format\nand their respective raw datetime values in the primary data.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "raw": {
               "$ref": "#/definitions/RawSampleTime",
               "description": "Raw sample time values from primary data."
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "Source": {
         "additionalProperties": false,
         "description": "The Source of information, such as a data file or a sample database.",
         "properties": {
            "name": {
               "description": "Source name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "type": {
               "description": "Source type.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "type"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[str]

Sample label name.

field source: Required[Source]

Sample label data source information.

field time: Required[SampleTime]

Time associated with the sample label.

field value: Required[str]

Sample label value.

Model Location[source]

Bases: IdsElement

The Location of the sample within the holder, such as the location of a well in a microplate.

Show JSON schema
{
   "description": "The Location of the sample within the holder, such as the location of a well in a microplate.",
   "type": "object",
   "properties": {
      "position": {
         "description": "Raw position string.",
         "type": [
            "string",
            "null"
         ]
      },
      "row": {
         "description": "Row index of sample location in a plate or holder.",
         "type": [
            "number",
            "null"
         ]
      },
      "column": {
         "description": "Column index of sample location in a plate or holder.",
         "type": [
            "number",
            "null"
         ]
      },
      "index": {
         "description": "Index of sample location flattened to a single dimension.",
         "type": [
            "number",
            "null"
         ]
      },
      "holder": {
         "$ref": "#/definitions/Holder",
         "description": "Sample holder information"
      }
   },
   "additionalProperties": false,
   "definitions": {
      "Holder": {
         "additionalProperties": false,
         "description": "A sample container such as a microplate or a vial.",
         "properties": {
            "name": {
               "description": "Holder name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "type": {
               "description": "Holder type.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "barcode": {
               "description": "Barcode assigned to a holder.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field column: Nullable[float]

Column index of sample location in a plate or holder.

field holder: Holder

Sample holder information

field index: Nullable[float]

Index of sample location flattened to a single dimension.

field position: Nullable[str]

Raw position string.

field row: Nullable[float]

Row index of sample location in a plate or holder.

Model Measure[source]

Bases: MeasureBase

A measure of a DataCube

Show JSON schema
{
   "description": "A measure of a DataCube",
   "type": "object",
   "properties": {
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "unit": {
         "type": [
            "string",
            "null"
         ]
      },
      "value": {
         "items": {
            "items": {
               "type": [
                  "number",
                  "null"
               ]
            },
            "type": "array"
         },
         "type": "array"
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "unit",
      "value"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

  • validate_value_shape » value

field value: Required[List[List[Nullable[float]]]]
num_dimensions: ClassVar[int] = 2
Model MeasureMetadata[source]

Bases: IdsElement

Metadata for a measure of a DataCube

Show JSON schema
{
   "description": "Metadata for a measure of a DataCube",
   "type": "object",
   "properties": {
      "name": {
         "type": [
            "string",
            "null"
         ]
      },
      "unit": {
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "unit"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[Nullable[str]]
field unit: Required[Nullable[str]]
Model Modifier[source]

Bases: IdsElement

A model to capture the numeric value and prefix (modifier) for a prefixed numeric string (e.g. ‘>1.0’).

Show JSON schema
{
   "description": "A model to capture the numeric value and prefix (modifier) for a prefixed numeric string (e.g. '>1.0').",
   "type": "object",
   "properties": {
      "value": {
         "description": "Modifier value.",
         "type": "number"
      },
      "modifier": {
         "$ref": "#/definitions/ModifierType",
         "description": "Modifier type."
      }
   },
   "additionalProperties": false,
   "definitions": {
      "ModifierType": {
         "description": "An enumeration of observed modifiers in the primary data.",
         "enum": [
            "<",
            ">",
            "<=",
            ">=",
            null
         ],
         "type": [
            "string",
            "null"
         ]
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field modifier: ModifierType

Modifier type.

field value: float

Modifier value.

class ModifierType(value)[source]

Bases: Enum

An enumeration of observed modifiers in the primary data.

GREATER_THAN = '>'
GREATER_THAN_OR_EQUAL = '>='
LESS_THAN = '<'
LESS_THAN_OR_EQUAL = '<='
NULL = None
Model Parameter[source]

Bases: IdsElement

A structure for capturing individual values with varying datatypes.

Show JSON schema
{
   "description": "A structure for capturing individual values with varying datatypes.",
   "type": "object",
   "properties": {
      "key": {
         "description": "This is the property name.",
         "type": "string"
      },
      "value": {
         "description": "The original string value of the parameter from the raw file.",
         "type": "string"
      },
      "value_data_type": {
         "$ref": "#/definitions/ValueDataType",
         "description": "This is the true type of the original value."
      },
      "string_value": {
         "description": "If string_value has a value, then numerical_value, numerical_value_unit and boolean_value have to be null.",
         "type": [
            "string",
            "null"
         ]
      },
      "numerical_value": {
         "description": "If numerical_value has a value, then string_value and boolean_value have to be null.",
         "type": [
            "number",
            "null"
         ]
      },
      "numerical_value_unit": {
         "description": "Unit for the numerical value.",
         "type": [
            "string",
            "null"
         ]
      },
      "boolean_value": {
         "description": "If boolean_value has a value, then numerical_value, numerical_value_unit and string_value have to be null.",
         "type": [
            "boolean",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "definitions": {
      "ValueDataType": {
         "description": "Allowed data type values.",
         "enum": [
            "string",
            "number",
            "boolean"
         ],
         "type": "string"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field boolean_value: Nullable[bool]

If boolean_value has a value, then numerical_value, numerical_value_unit and string_value have to be null.

field key: str

This is the property name.

field numerical_value: Nullable[float]

If numerical_value has a value, then string_value and boolean_value have to be null.

field numerical_value_unit: Nullable[str]

Unit for the numerical value.

field string_value: Nullable[str]

If string_value has a value, then numerical_value, numerical_value_unit and boolean_value have to be null.

field value: str

The original string value of the parameter from the raw file.

field value_data_type: ValueDataType

This is the true type of the original value.

Model Pointer[source]

Bases: IdsElement

A pointer stores the location metadata of the file on TDP.

Show JSON schema
{
   "description": "A pointer stores the location metadata of the file on TDP.",
   "type": "object",
   "properties": {
      "fileKey": {
         "description": "AWS S3 file key.",
         "type": "string"
      },
      "version": {
         "description": "AWS S3 file version number.",
         "type": "string"
      },
      "bucket": {
         "description": "AWS S3 bucket.",
         "type": "string"
      },
      "type": {
         "description": "Type of the file, e.g. 's3file', 'parquet'.",
         "type": "string"
      },
      "fileId": {
         "description": "File ID (UUID) in TDP.",
         "type": "string"
      }
   },
   "additionalProperties": false,
   "required": [
      "fileKey",
      "version",
      "bucket",
      "type",
      "fileId"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field bucket: Required[str]

AWS S3 bucket.

field fileId: Required[str]

File ID (UUID) in TDP.

field fileKey: Required[str]

AWS S3 file key.

field type_: Required[str] (alias 'type')

Type of the file, e.g. ‘s3file’, ‘parquet’.

field version: Required[str]

AWS S3 file version number.

Model Project[source]

Bases: IdsElement

A Project is a scientific or business program or initiative. A Project ID can be used to associate with the entire set of primary and derived scientific data from every experiment performed to advance a particular initiative, such as the development of an assay or a drug product.

Show JSON schema
{
   "description": "A Project is a scientific or business program or initiative. A Project ID can be used to associate with the entire set of primary and derived scientific data from every experiment performed to advance a particular initiative, such as the development of an assay or a drug product.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a project.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "A human-readable name given to the project.",
         "type": [
            "string",
            "null"
         ]
      },
      "description": {
         "description": "A human-readable description given to the project.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field description: Nullable[str]

A human-readable description given to the project.

field id: Nullable[str]

Unique identifier assigned to a project.

field name: Nullable[str]

A human-readable name given to the project.

Model ProjectAttributes[source]

Bases: IdsElement

A set of fields which uniquely identify and describe a particular initiative and methodologies used to produce the data in a given IDS. These attributes are commonly found in ELN and LIMS applications and allow users to organize data to associate related datasets.

Show JSON schema
{
   "description": "A set of fields which uniquely identify and describe a particular initiative and methodologies used to produce the data in a given IDS. These attributes are commonly found in ELN and LIMS applications and allow users to organize data to associate related datasets.",
   "type": "object",
   "properties": {
      "project": {
         "$ref": "#/definitions/Project",
         "description": "Project metadata."
      },
      "experiment": {
         "$ref": "#/definitions/Experiment",
         "description": "Experiment metadata."
      },
      "assay": {
         "$ref": "#/definitions/Assay",
         "description": "Assay metadata."
      }
   },
   "additionalProperties": false,
   "definitions": {
      "Assay": {
         "additionalProperties": false,
         "description": "An Assay is an analytical measurement procedure that produces a detectable signal, allowing a process to be qualified and quantified.",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to an assay.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "A human-readable name given to the assay.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "description": {
               "description": "A human-readable description given to the assay",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Experiment": {
         "additionalProperties": false,
         "description": "An Experiment is a scientific procedure to investigate a specific hypothesis or a research question. The primary and derived scientific data is used to test the hypothesis, or to provide insight into a particular process. An Experimental entry typically contains additional context, such as purpose, materials, method, and conclusions.",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to a specific experiment conducted within a project. Most often generated within an electronic laboratory notebook (ELN).",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "A human-readable name given to the experiment.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "description": {
               "description": "A human-readable description given to the experiment.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Project": {
         "additionalProperties": false,
         "description": "A Project is a scientific or business program or initiative. A Project ID can be used to associate with the entire set of primary and derived scientific data from every experiment performed to advance a particular initiative, such as the development of an assay or a drug product.",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to a project.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "A human-readable name given to the project.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "description": {
               "description": "A human-readable description given to the project.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field assay: Assay

Assay metadata.

field experiment: Experiment

Experiment metadata.

field project: Project

Project metadata.

Model Property[source]

Bases: IdsElement

A property has a name and a value of any type, with metadata about the property including the source of the property and times associated with it such as when the property was created or looked up.

Show JSON schema
{
   "description": "A property has a name and a value of any type, with metadata about the\nproperty including the source of the property and times associated with it\nsuch as when the property was created or looked up.",
   "type": "object",
   "properties": {
      "source": {
         "$ref": "#/definitions/Source",
         "description": "Sample property data source information."
      },
      "name": {
         "description": "Sample Property name.",
         "type": "string"
      },
      "value": {
         "description": "The original string value of the property.",
         "type": "string"
      },
      "value_data_type": {
         "$ref": "#/definitions/ValueDataType",
         "description": "This is the type of the original value."
      },
      "string_value": {
         "description": "If string_value has a value, then numerical_value, numerical_value_unit, and boolean_value all have to be null.",
         "type": [
            "string",
            "null"
         ]
      },
      "numerical_value": {
         "description": "If numerical_value has a value, then string_value and boolean_value both have to be null.",
         "type": [
            "number",
            "null"
         ]
      },
      "numerical_value_unit": {
         "description": "Unit for the numerical value.",
         "type": [
            "string",
            "null"
         ]
      },
      "boolean_value": {
         "description": "If boolean_value has a value, then numerical_value, numerical_value_unit, and string_value all have to be null.",
         "type": [
            "boolean",
            "null"
         ]
      },
      "time": {
         "$ref": "#/definitions/SampleTime",
         "description": "Time associated with the sample property."
      }
   },
   "additionalProperties": false,
   "required": [
      "source",
      "name",
      "value",
      "value_data_type",
      "string_value",
      "numerical_value",
      "numerical_value_unit",
      "boolean_value",
      "time"
   ],
   "definitions": {
      "RawSampleTime": {
         "additionalProperties": false,
         "description": "The base model for time associated with a specific sample.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "SampleTime": {
         "additionalProperties": false,
         "description": "A model for experiment sample datetime values converted to a standard ISO format\nand their respective raw datetime values in the primary data.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "raw": {
               "$ref": "#/definitions/RawSampleTime",
               "description": "Raw sample time values from primary data."
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "Source": {
         "additionalProperties": false,
         "description": "The Source of information, such as a data file or a sample database.",
         "properties": {
            "name": {
               "description": "Source name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "type": {
               "description": "Source type.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "type"
         ],
         "type": "object"
      },
      "ValueDataType": {
         "description": "Allowed data type values.",
         "enum": [
            "string",
            "number",
            "boolean"
         ],
         "type": "string"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field boolean_value: Required[Nullable[bool]]

If boolean_value has a value, then numerical_value, numerical_value_unit, and string_value all have to be null.

field name: Required[str]

Sample Property name.

field numerical_value: Required[Nullable[float]]

If numerical_value has a value, then string_value and boolean_value both have to be null.

field numerical_value_unit: Required[Nullable[str]]

Unit for the numerical value.

field source: Required[Source]

Sample property data source information.

field string_value: Required[Nullable[str]]

If string_value has a value, then numerical_value, numerical_value_unit, and boolean_value all have to be null.

field time: Required[SampleTime]

Time associated with the sample property.

field value: Required[str]

The original string value of the property.

field value_data_type: Required[ValueDataType]

This is the type of the original value.

Model RawSampleTime[source]

Bases: RawTime

The base model for time associated with a specific sample.

Show JSON schema
{
   "description": "The base model for time associated with a specific sample.",
   "type": "object",
   "properties": {
      "start": {
         "description": "Process/experiment/task start time.",
         "type": [
            "string",
            "null"
         ]
      },
      "created": {
         "description": "Data created time.",
         "type": [
            "string",
            "null"
         ]
      },
      "stop": {
         "description": "Process/experiment/task stop/finish time.",
         "type": [
            "string",
            "null"
         ]
      },
      "duration": {
         "description": "Process/experiment/task duration.",
         "type": [
            "string",
            "null"
         ]
      },
      "last_updated": {
         "description": "Data last updated time of a file/method.",
         "type": [
            "string",
            "null"
         ]
      },
      "acquired": {
         "description": "Data acquired/exported/captured time.",
         "type": [
            "string",
            "null"
         ]
      },
      "modified": {
         "description": "Data last modified/edited time.",
         "type": [
            "string",
            "null"
         ]
      },
      "lookup": {
         "description": "Raw sample data lookup time.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "lookup"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field lookup: Required[Nullable[str]]

Raw sample data lookup time.

Model RawTime[source]

Bases: IdsElement

The base model for capturing common time fields found in primary data.

Show JSON schema
{
   "description": "The base model for capturing common time fields found in primary data.",
   "type": "object",
   "properties": {
      "start": {
         "description": "Process/experiment/task start time.",
         "type": [
            "string",
            "null"
         ]
      },
      "created": {
         "description": "Data created time.",
         "type": [
            "string",
            "null"
         ]
      },
      "stop": {
         "description": "Process/experiment/task stop/finish time.",
         "type": [
            "string",
            "null"
         ]
      },
      "duration": {
         "description": "Process/experiment/task duration.",
         "type": [
            "string",
            "null"
         ]
      },
      "last_updated": {
         "description": "Data last updated time of a file/method.",
         "type": [
            "string",
            "null"
         ]
      },
      "acquired": {
         "description": "Data acquired/exported/captured time.",
         "type": [
            "string",
            "null"
         ]
      },
      "modified": {
         "description": "Data last modified/edited time.",
         "type": [
            "string",
            "null"
         ]
      },
      "lookup": {
         "description": "Data lookup time.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field acquired: Nullable[str]

Data acquired/exported/captured time.

field created: Nullable[str]

Data created time.

field duration: Nullable[str]

Process/experiment/task duration.

field last_updated: Nullable[str]

Data last updated time of a file/method.

field lookup: Nullable[str]

Data lookup time.

field modified: Nullable[str]

Data last modified/edited time.

field start: Nullable[str]

Process/experiment/task start time.

field stop: Nullable[str]

Process/experiment/task stop/finish time.

Model RawValueUnit[source]

Bases: ValueUnit

A value with a unit, including the raw representation of the value from the primary data.

Show JSON schema
{
   "description": "A value with a unit, including the raw representation of the value from the primary data.",
   "type": "object",
   "properties": {
      "value": {
         "description": "A numerical value.",
         "type": [
            "number",
            "null"
         ]
      },
      "unit": {
         "description": "Unit for the numerical value.",
         "type": [
            "string",
            "null"
         ]
      },
      "raw_value": {
         "description": "The raw, untransformed value from the primary data.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "value",
      "unit",
      "raw_value"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field raw_value: Required[Nullable[str]]

The raw, untransformed value from the primary data.

Model RelatedFile[source]

Bases: IdsElement

A reference to a file related to this IDS stored on the Tetra Data Platform.

Show JSON schema
{
   "description": "A reference to a file related to this IDS stored on the Tetra Data Platform.",
   "type": "object",
   "properties": {
      "name": {
         "description": "File name.",
         "type": [
            "string",
            "null"
         ]
      },
      "path": {
         "description": "File path.",
         "type": [
            "string",
            "null"
         ]
      },
      "size": {
         "$ref": "#/definitions/ValueUnit",
         "description": "File size."
      },
      "checksum": {
         "$ref": "#/definitions/Checksum",
         "description": "File checksum."
      },
      "pointer": {
         "$ref": "#/definitions/Pointer",
         "description": "File pointer to location on TDP."
      }
   },
   "additionalProperties": false,
   "required": [
      "pointer"
   ],
   "definitions": {
      "Checksum": {
         "additionalProperties": false,
         "description": "Checksum value and algorithm associated with a file.",
         "properties": {
            "value": {
               "description": "Checksum string value.",
               "type": "string"
            },
            "algorithm": {
               "description": "Checksum algorithm, e.g. 'md5', 'sha256'.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "value",
            "algorithm"
         ],
         "type": "object"
      },
      "Pointer": {
         "additionalProperties": false,
         "description": "A pointer stores the location metadata of the file on TDP.",
         "properties": {
            "fileKey": {
               "description": "AWS S3 file key.",
               "type": "string"
            },
            "version": {
               "description": "AWS S3 file version number.",
               "type": "string"
            },
            "bucket": {
               "description": "AWS S3 bucket.",
               "type": "string"
            },
            "type": {
               "description": "Type of the file, e.g. 's3file', 'parquet'.",
               "type": "string"
            },
            "fileId": {
               "description": "File ID (UUID) in TDP.",
               "type": "string"
            }
         },
         "required": [
            "fileKey",
            "version",
            "bucket",
            "type",
            "fileId"
         ],
         "type": "object"
      },
      "ValueUnit": {
         "additionalProperties": false,
         "description": "A quantity, represented by a value with a unit.",
         "properties": {
            "value": {
               "description": "A numerical value.",
               "type": [
                  "number",
                  "null"
               ]
            },
            "unit": {
               "description": "Unit for the numerical value.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "value",
            "unit"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field checksum: Checksum

File checksum.

field name: Nullable[str]

File name.

field path: Nullable[str]

File path.

field pointer: Required[Pointer]

File pointer to location on TDP.

field size: ValueUnit

File size.

Model Run[source]

Bases: IdsElement

A Run refers to a discrete period of time in which a performed process generates one or more data points for either a single or several related samples or generates a physical product. A Run typically refers to a particular execution of an instrument.

Show JSON schema
{
   "description": "A Run refers to a discrete period of time in which a performed process generates one or more data points for either a single or several related samples or generates a physical product. A Run typically refers to a particular execution of an instrument.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a specific run (execution) of an experiment.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "Name assigned to a specific run (execution) of an experiment.",
         "type": [
            "string",
            "null"
         ]
      },
      "logs": {
         "description": "Log messages recorded during a specific run (execution) of an experiment.",
         "items": {
            "type": "string"
         },
         "type": "array"
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a specific run (execution) of an experiment.

field logs: List[str]

Log messages recorded during a specific run (execution) of an experiment.

field name: Nullable[str]

Name assigned to a specific run (execution) of an experiment.

Model RunStatus[source]

Bases: IdsElement

Status for a run.

Show JSON schema
{
   "description": "Status for a run.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Name of the status.",
         "type": "string"
      },
      "value": {
         "description": "Text-based status like 'completed', 'failed', 'aborted', 'error'.",
         "type": "string"
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: str

Name of the status.

field value: str

Text-based status like ‘completed’, ‘failed’, ‘aborted’, ‘error’.

Model Sample[source]

Bases: IdsElement

A Sample is a discrete entity being observed in an experiment. For example, Samples may be characterized for product quality and stability, or be measured for research purposes.

Show JSON schema
{
   "description": "A Sample is a discrete entity being observed in an experiment. For example, Samples may be characterized for product quality and stability, or be measured for research purposes.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a sample.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "Sample name.",
         "type": [
            "string",
            "null"
         ]
      },
      "barcode": {
         "description": "Barcode assigned to a sample.",
         "type": [
            "string",
            "null"
         ]
      },
      "batch": {
         "$ref": "#/definitions/Batch"
      },
      "set": {
         "$ref": "#/definitions/Set",
         "description": "Sample set."
      },
      "location": {
         "$ref": "#/definitions/Location",
         "description": "Sample location information."
      },
      "compound": {
         "$ref": "#/definitions/Compound",
         "description": "Sample compound information."
      },
      "properties": {
         "type": "array",
         "items": {
            "$ref": "#/definitions/Property"
         },
         "description": "Sample properties."
      },
      "labels": {
         "description": "Sample labels.",
         "items": {
            "$ref": "#/definitions/Label"
         },
         "type": "array"
      }
   },
   "additionalProperties": false,
   "definitions": {
      "Batch": {
         "additionalProperties": false,
         "description": "A Batch is the result of a single manufacturing run for a drug product that is made as specified groups or amounts,  within a specific time frame from the same raw materials that is intended to have uniform character and quality, within specified limits.",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to a batch.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "Batch name",
               "type": [
                  "string",
                  "null"
               ]
            },
            "barcode": {
               "description": "Barcode assigned to a batch",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Compound": {
         "additionalProperties": false,
         "description": "A Compound is a specific chemical or biochemical structure or substance that is being investigated. A Compound may be any drug substance, drug product intermediate, or drug product across small molecules, and cell and gene therapy (CGT).",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to a compound.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "Compound name.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Holder": {
         "additionalProperties": false,
         "description": "A sample container such as a microplate or a vial.",
         "properties": {
            "name": {
               "description": "Holder name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "type": {
               "description": "Holder type.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "barcode": {
               "description": "Barcode assigned to a holder.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Label": {
         "additionalProperties": false,
         "description": "A Label associated with a sample, along with metadata about the label including\nthe source of the label and times associated with the label such as when it was\ncreated or looked up.",
         "properties": {
            "source": {
               "$ref": "#/definitions/Source",
               "description": "Sample label data source information."
            },
            "name": {
               "description": "Sample label name.",
               "type": "string"
            },
            "value": {
               "description": "Sample label value.",
               "type": "string"
            },
            "time": {
               "$ref": "#/definitions/SampleTime",
               "description": "Time associated with the sample label."
            }
         },
         "required": [
            "source",
            "name",
            "value",
            "time"
         ],
         "type": "object"
      },
      "Location": {
         "additionalProperties": false,
         "description": "The Location of the sample within the holder, such as the location of a well in a microplate.",
         "properties": {
            "position": {
               "description": "Raw position string.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "row": {
               "description": "Row index of sample location in a plate or holder.",
               "type": [
                  "number",
                  "null"
               ]
            },
            "column": {
               "description": "Column index of sample location in a plate or holder.",
               "type": [
                  "number",
                  "null"
               ]
            },
            "index": {
               "description": "Index of sample location flattened to a single dimension.",
               "type": [
                  "number",
                  "null"
               ]
            },
            "holder": {
               "$ref": "#/definitions/Holder",
               "description": "Sample holder information"
            }
         },
         "type": "object"
      },
      "Property": {
         "additionalProperties": false,
         "description": "A property has a name and a value of any type, with metadata about the\nproperty including the source of the property and times associated with it\nsuch as when the property was created or looked up.",
         "properties": {
            "source": {
               "$ref": "#/definitions/Source",
               "description": "Sample property data source information."
            },
            "name": {
               "description": "Sample Property name.",
               "type": "string"
            },
            "value": {
               "description": "The original string value of the property.",
               "type": "string"
            },
            "value_data_type": {
               "$ref": "#/definitions/ValueDataType",
               "description": "This is the type of the original value."
            },
            "string_value": {
               "description": "If string_value has a value, then numerical_value, numerical_value_unit, and boolean_value all have to be null.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "numerical_value": {
               "description": "If numerical_value has a value, then string_value and boolean_value both have to be null.",
               "type": [
                  "number",
                  "null"
               ]
            },
            "numerical_value_unit": {
               "description": "Unit for the numerical value.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "boolean_value": {
               "description": "If boolean_value has a value, then numerical_value, numerical_value_unit, and string_value all have to be null.",
               "type": [
                  "boolean",
                  "null"
               ]
            },
            "time": {
               "$ref": "#/definitions/SampleTime",
               "description": "Time associated with the sample property."
            }
         },
         "required": [
            "source",
            "name",
            "value",
            "value_data_type",
            "string_value",
            "numerical_value",
            "numerical_value_unit",
            "boolean_value",
            "time"
         ],
         "type": "object"
      },
      "RawSampleTime": {
         "additionalProperties": false,
         "description": "The base model for time associated with a specific sample.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "SampleTime": {
         "additionalProperties": false,
         "description": "A model for experiment sample datetime values converted to a standard ISO format\nand their respective raw datetime values in the primary data.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "raw": {
               "$ref": "#/definitions/RawSampleTime",
               "description": "Raw sample time values from primary data."
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      },
      "Set": {
         "additionalProperties": false,
         "description": "A group of Samples.",
         "properties": {
            "id": {
               "description": "Unique identifier assigned to a set.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "name": {
               "description": "Set name.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      },
      "Source": {
         "additionalProperties": false,
         "description": "The Source of information, such as a data file or a sample database.",
         "properties": {
            "name": {
               "description": "Source name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "type": {
               "description": "Source type.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "type"
         ],
         "type": "object"
      },
      "ValueDataType": {
         "description": "Allowed data type values.",
         "enum": [
            "string",
            "number",
            "boolean"
         ],
         "type": "string"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field barcode: Nullable[str]

Barcode assigned to a sample.

field batch: Batch
field compound: Compound

Sample compound information.

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a sample.

field labels: List[Label]

Sample labels.

field location: Location

Sample location information.

field name: Nullable[str]

Sample name.

field properties: List[Property]

Sample properties.

field set_: Set (alias 'set')

Sample set.

Model SampleTime[source]

Bases: RawSampleTime

A model for experiment sample datetime values converted to a standard ISO format and their respective raw datetime values in the primary data.

Show JSON schema
{
   "description": "A model for experiment sample datetime values converted to a standard ISO format\nand their respective raw datetime values in the primary data.",
   "type": "object",
   "properties": {
      "start": {
         "description": "Process/experiment/task start time.",
         "type": [
            "string",
            "null"
         ]
      },
      "created": {
         "description": "Data created time.",
         "type": [
            "string",
            "null"
         ]
      },
      "stop": {
         "description": "Process/experiment/task stop/finish time.",
         "type": [
            "string",
            "null"
         ]
      },
      "duration": {
         "description": "Process/experiment/task duration.",
         "type": [
            "string",
            "null"
         ]
      },
      "last_updated": {
         "description": "Data last updated time of a file/method.",
         "type": [
            "string",
            "null"
         ]
      },
      "acquired": {
         "description": "Data acquired/exported/captured time.",
         "type": [
            "string",
            "null"
         ]
      },
      "modified": {
         "description": "Data last modified/edited time.",
         "type": [
            "string",
            "null"
         ]
      },
      "lookup": {
         "description": "Raw sample data lookup time.",
         "type": [
            "string",
            "null"
         ]
      },
      "raw": {
         "$ref": "#/definitions/RawSampleTime",
         "description": "Raw sample time values from primary data."
      }
   },
   "additionalProperties": false,
   "required": [
      "lookup"
   ],
   "definitions": {
      "RawSampleTime": {
         "additionalProperties": false,
         "description": "The base model for time associated with a specific sample.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Raw sample data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "lookup"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field raw: RawSampleTime

Raw sample time values from primary data.

Model Set[source]

Bases: IdsElement

A group of Samples.

Show JSON schema
{
   "description": "A group of Samples.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a set.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "Set name.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a set.

field name: Nullable[str]

Set name.

Model Software[source]

Bases: IdsElement

Software application that most recently handled the data (file) or the application the data (file) is intended for. For example, applications can include Electronic Lab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems (CDS), or instrument-specific analysis software.

Show JSON schema
{
   "description": "Software application that most recently handled the data (file) or the application\nthe data (file) is intended for. For example, applications can include Electronic\nLab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems\n(CDS), or instrument-specific analysis software.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Software name.",
         "type": [
            "string",
            "null"
         ]
      },
      "version": {
         "description": "Software version.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "version"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[Nullable[str]]

Software name.

field version: Required[Nullable[str]]

Software version.

Model Source[source]

Bases: IdsElement

The Source of information, such as a data file or a sample database.

Show JSON schema
{
   "description": "The Source of information, such as a data file or a sample database.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Source name.",
         "type": [
            "string",
            "null"
         ]
      },
      "type": {
         "description": "Source type.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "type"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Required[Nullable[str]]

Source name.

field type_: Required[Nullable[str]] (alias 'type')

Source type.

Model System[source]

Bases: IdsElement

Metadata regarding the equipment, software, and firmware used in a run of an instrument or experiment.

Show JSON schema
{
   "description": "Metadata regarding the equipment, software, and firmware used in a run of an\ninstrument or experiment.",
   "type": "object",
   "properties": {
      "vendor": {
         "description": "The instrument vendor or manufacturer, like 'PerkinElmer' or 'Agilent'.",
         "type": [
            "string",
            "null"
         ]
      },
      "model": {
         "description": "A specific model instrument type from a vendor.",
         "type": [
            "string",
            "null"
         ]
      },
      "type": {
         "description": "Indicates the type of instrument that's generating data.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "vendor",
      "model",
      "type"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field model: Required[Nullable[str]]

A specific model instrument type from a vendor.

field type_: Required[Nullable[str]] (alias 'type')

Indicates the type of instrument that’s generating data.

field vendor: Required[Nullable[str]]

The instrument vendor or manufacturer, like ‘PerkinElmer’ or ‘Agilent’.

Model Firmware[source]

Bases: IdsElement

System firmware.

Show JSON schema
{
   "description": "System firmware.",
   "type": "object",
   "properties": {
      "firmware": {
         "description": "System firmware metadata.",
         "items": {
            "$ref": "#/definitions/Firmware"
         },
         "type": "array"
      }
   },
   "additionalProperties": false,
   "definitions": {
      "Firmware": {
         "additionalProperties": false,
         "description": "System firmware metadata.",
         "properties": {
            "name": {
               "description": "Firmware name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "version": {
               "description": "Firmware version.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "version"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field firmware: List[system.Firmware]

System firmware metadata.

Model Id[source]

Bases: IdsElement

System ID.

Show JSON schema
{
   "description": "System ID.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Identifier for the system. This is usually defined by the system owner or user, for example this may be created with a laboratory information management system or asset management software. Typically, an ID will not change over time, so that it can be used to track a particular system, unlike the system name which may change.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field id_: Nullable[str] (alias 'id')

Identifier for the system. This is usually defined by the system owner or user, for example this may be created with a laboratory information management system or asset management software. Typically, an ID will not change over time, so that it can be used to track a particular system, unlike the system name which may change.

Model Name[source]

Bases: IdsElement

System name.

Show JSON schema
{
   "description": "System name.",
   "type": "object",
   "properties": {
      "name": {
         "description": "Name for the system. This is usually a human-readable name defined by the system owner or user. It may be changed over time as the system is used for different purposes, unlike the ID which typically doesn't change.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field name: Nullable[str]

Name for the system. This is usually a human-readable name defined by the system owner or user. It may be changed over time as the system is used for different purposes, unlike the ID which typically doesn’t change.

Model SerialNumber[source]

Bases: IdsElement

System serial number.

Show JSON schema
{
   "description": "System serial number.",
   "type": "object",
   "properties": {
      "serial_number": {
         "description": "System serial number. Indicates a unique instrument identifier within the same model line from a specific vendor. This is provided by the system vendor, unlike an ID or name which are usually created by the system owner or user.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field serial_number: Nullable[str]

System serial number. Indicates a unique instrument identifier within the same model line from a specific vendor. This is provided by the system vendor, unlike an ID or name which are usually created by the system owner or user.

Model Software[source]

Bases: IdsElement

System software.

Show JSON schema
{
   "description": "System software.",
   "type": "object",
   "properties": {
      "software": {
         "description": "Software applications that most recently handled the data (file) or the applications the data (file) is intended for. For example, applications can include Electronic Lab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems (CDS), or instrument-specific analysis software.",
         "items": {
            "$ref": "#/definitions/Software"
         },
         "type": "array"
      }
   },
   "additionalProperties": false,
   "definitions": {
      "Software": {
         "additionalProperties": false,
         "description": "Software application that most recently handled the data (file) or the application\nthe data (file) is intended for. For example, applications can include Electronic\nLab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems\n(CDS), or instrument-specific analysis software.",
         "properties": {
            "name": {
               "description": "Software name.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "version": {
               "description": "Software version.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "required": [
            "name",
            "version"
         ],
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field software: List[system.Software]

Software applications that most recently handled the data (file) or the applications the data (file) is intended for. For example, applications can include Electronic Lab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems (CDS), or instrument-specific analysis software.

Model TetraDataSchema[source]

Bases: IdsSchema

Top-level IDS designed to follow Tetra Data conventions.

Show JSON schema
{
   "description": "Top-level IDS designed to follow Tetra Data conventions.",
   "type": "object",
   "properties": {
      "@idsType": {
         "description": "Also known as IDS slug. Defined by TetraScience.",
         "type": "string"
      },
      "@idsVersion": {
         "description": "IDS version. Defined by TetraScience.",
         "type": "string"
      },
      "@idsNamespace": {
         "description": "IDS namespace. Defined by TetraScience.",
         "type": "string"
      }
   },
   "$id": "NotImplemented",
   "$schema": "http://json-schema.org/draft-07/schema#",
   "additionalProperties": false,
   "is_tetra_data_schema": true,
   "required": [
      "@idsType",
      "@idsVersion",
      "@idsNamespace"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

  • is_valid_version_string » ids_version

Model Time[source]

Bases: RawTime

A model for datetime values converted to a standard ISO format and their respective raw datetime values in the primary data.

Show JSON schema
{
   "description": "A model for datetime values converted to a standard ISO format and their\nrespective raw datetime values in the primary data.",
   "type": "object",
   "properties": {
      "start": {
         "description": "Process/experiment/task start time.",
         "type": [
            "string",
            "null"
         ]
      },
      "created": {
         "description": "Data created time.",
         "type": [
            "string",
            "null"
         ]
      },
      "stop": {
         "description": "Process/experiment/task stop/finish time.",
         "type": [
            "string",
            "null"
         ]
      },
      "duration": {
         "description": "Process/experiment/task duration.",
         "type": [
            "string",
            "null"
         ]
      },
      "last_updated": {
         "description": "Data last updated time of a file/method.",
         "type": [
            "string",
            "null"
         ]
      },
      "acquired": {
         "description": "Data acquired/exported/captured time.",
         "type": [
            "string",
            "null"
         ]
      },
      "modified": {
         "description": "Data last modified/edited time.",
         "type": [
            "string",
            "null"
         ]
      },
      "lookup": {
         "description": "Data lookup time.",
         "type": [
            "string",
            "null"
         ]
      },
      "raw": {
         "$ref": "#/definitions/RawTime",
         "description": "Raw time values from primary data."
      }
   },
   "additionalProperties": false,
   "definitions": {
      "RawTime": {
         "additionalProperties": false,
         "description": "The base model for capturing common time fields found in primary data.",
         "properties": {
            "start": {
               "description": "Process/experiment/task start time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "created": {
               "description": "Data created time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "stop": {
               "description": "Process/experiment/task stop/finish time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "duration": {
               "description": "Process/experiment/task duration.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "last_updated": {
               "description": "Data last updated time of a file/method.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "acquired": {
               "description": "Data acquired/exported/captured time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "modified": {
               "description": "Data last modified/edited time.",
               "type": [
                  "string",
                  "null"
               ]
            },
            "lookup": {
               "description": "Data lookup time.",
               "type": [
                  "string",
                  "null"
               ]
            }
         },
         "type": "object"
      }
   }
}

Validators:
  • all_abstract_fields_implemented » all fields

field raw: RawTime

Raw time values from primary data.

Model User[source]

Bases: IdsElement

Metadata of the user executing a run.

Show JSON schema
{
   "description": "Metadata of the user executing a run.",
   "type": "object",
   "properties": {
      "id": {
         "description": "Unique identifier assigned to a user.",
         "type": [
            "string",
            "null"
         ]
      },
      "name": {
         "description": "User name.",
         "type": [
            "string",
            "null"
         ]
      },
      "type": {
         "description": "User type like 'admin', 'manager', 'power user', 'standard user'. This information is usually from the instrument software",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false
}

Validators:
  • all_abstract_fields_implemented » all fields

field id_: Nullable[str] (alias 'id')

Unique identifier assigned to a user.

field name: Nullable[str]

User name.

field type_: Nullable[str] (alias 'type')

User type like ‘admin’, ‘manager’, ‘power user’, ‘standard user’. This information is usually from the instrument software

class ValueDataType(value)[source]

Bases: str, Enum

Allowed data type values.

BOOLEAN = 'boolean'
NUMBER = 'number'
STRING = 'string'
Model ValueUnit[source]

Bases: IdsElement

A quantity, represented by a value with a unit.

Show JSON schema
{
   "description": "A quantity, represented by a value with a unit.",
   "type": "object",
   "properties": {
      "value": {
         "description": "A numerical value.",
         "type": [
            "number",
            "null"
         ]
      },
      "unit": {
         "description": "Unit for the numerical value.",
         "type": [
            "string",
            "null"
         ]
      }
   },
   "additionalProperties": false,
   "required": [
      "value",
      "unit"
   ]
}

Validators:
  • all_abstract_fields_implemented » all fields

field unit: Required[Nullable[str]]

Unit for the numerical value.

field value: Required[Nullable[float]]

A numerical value.