Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions SUPPORTED_INSTRUMENT_SOFTWARE.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@ The parsers follow maturation levels of: Recommended, Candidate Release, Working
|Tecan Magellan|Recommended|REC/2024/06
|Thermo Fisher Scientific SkanIt|Recommended|REC/2025/03
|Unchained Labs Lunatic & Stunner|Recommended|REC/2025/03
.3+|Solution Analyzer|Beckman Coulter PharmSpec|Recommended|REC/2024/09
.3+|Solution Analyzer|Beckman Coulter PharmSpec|Recommended|REC/2026/03
|NovaBio Flex2|Recommended|BENCHLING/2024/09
|Roche Cedex BioHT|Recommended|REC/2024/09
|Roche Cedex BioHT|Recommended|REC/2026/03
.8+|Spectrophotometry|Thermo Fisher Scientific Genesys30|Recommended|BENCHLING/2023/12
|Thermo Fisher Scientific Genesys On-Board|Recommended|BENCHLING/2023/12
|Thermo Fisher Scientific NanoDrop 8000|Recommended|BENCHLING/2023/12
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# generated by allotropy.schema_gen

from __future__ import annotations

from dataclasses import dataclass

from allotropy.allotrope.models.adm.core.rec._2026._03.core import OrderedItem
from allotropy.allotrope.models.shared.definitions.quantity_values import (
TQuantityValueMilliAbsorbanceUnit,
TQuantityValueNanometer,
TQuantityValuePicogramPerMilliliter,
TQuantityValueUnitless,
)


@dataclass(frozen=True, kw_only=True)
class DeviceControlDocumentItem(OrderedItem):
detector_bandwidth_setting: TQuantityValueNanometer | None = None
detector_wavelength_setting: TQuantityValueNanometer | None = None
electronic_absorbance_bandwidth_setting: TQuantityValueNanometer | None = None
electronic_absorbance_reference_bandwidth_setting: TQuantityValueNanometer | None = (
None
)
electronic_absorbance_reference_wavelength_setting: TQuantityValueNanometer | None = (
None
)
electronic_absorbance_wavelength_setting: TQuantityValueNanometer | None = None


@dataclass(frozen=True, kw_only=True)
class DeviceControlAggregateDocument:
device_control_document: list[DeviceControlDocumentItem] | None = None


@dataclass(frozen=True, kw_only=True)
class MeasurementDocumentItems:
absorbance: TQuantityValueMilliAbsorbanceUnit
device_control_aggregate_document: DeviceControlAggregateDocument | None = None
mass_concentration: TQuantityValuePicogramPerMilliliter | None = None
transmittance: TQuantityValueUnitless | None = None
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# generated by allotropy.schema_gen

from __future__ import annotations

from typing import Any

MeasurementDocumentItems = Any
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# generated by allotropy.schema_gen

from __future__ import annotations

from dataclasses import dataclass
from typing import Any

from allotropy.allotrope.models.adm.core.rec._2026._03.core import OrderedItem
from allotropy.allotrope.models.shared.definitions.quantity_values import (
TQuantityValueNanometer,
)


@dataclass(frozen=True, kw_only=True)
class DeviceControlDocumentItem(OrderedItem):
detector_wavelength_setting: TQuantityValueNanometer | None = None
excitation_wavelength_setting: TQuantityValueNanometer | None = None


@dataclass(frozen=True, kw_only=True)
class ProcessedDataAggregateDocument:
processed_data_document: list[Any]


@dataclass(frozen=True, kw_only=True)
class DeviceControlAggregateDocument:
device_control_document: list[DeviceControlDocumentItem] | None = None


@dataclass(frozen=True, kw_only=True)
class MeasurementDocumentItems:
processed_data_aggregate_document: ProcessedDataAggregateDocument
device_control_aggregate_document: DeviceControlAggregateDocument | None = None
270 changes: 270 additions & 0 deletions src/allotropy/allotrope/models/adm/core/rec/_2026/_03/core.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
# generated by allotropy.schema_gen
# Re-exports imported types so downstream modules can import from here.
# ruff: noqa: F401

from __future__ import annotations

from dataclasses import dataclass, field
from typing import Any

from allotropy.allotrope.models.shared.definitions.definitions import (
TClass,
TQuantityValue,
TStatisticDatumRole,
TUnit,
)


@dataclass(frozen=True, kw_only=True)
class Asm:
pass


@dataclass(frozen=True, kw_only=True)
class MixedItem:
field_type: TClass = field(metadata={"json_name": "@type"})


@dataclass(frozen=True, kw_only=True)
class OrderedItem:
field_index: int | None = field(default=None, metadata={"json_name": "@index"})


TArray = list[Any]


@dataclass(frozen=True, kw_only=True)
class TBooleanValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: bool


@dataclass(frozen=True, kw_only=True)
class TByteValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TDateTimeStampValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDateTimeValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDateValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDecimalValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TDoubleValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TDurationValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TFloatValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TIRIValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TIntValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TIntegerValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TLongValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


TNamed = str


@dataclass(frozen=True, kw_only=True)
class TObject:
pass


TReference = str


TResource = str


@dataclass(frozen=True, kw_only=True)
class TShortValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TStringValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TTimeValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TUnsignedByteValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedIntValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedLongValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedShortValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


TBooleanValue = TBooleanValueItem | bool


TByteValue = TByteValueItem | int


TDateTimeStampValue = TDateTimeStampValueItem | str


TDateTimeValue = TDateTimeValueItem | str


TDateValue = TDateValueItem | str


TDecimalValue = TDecimalValueItem | float


TDoubleValue = TDoubleValueItem | float


TDurationValue = TDurationValueItem | str


TFloatValue = TFloatValueItem | float


TIRIValue = TIRIValueItem | str


TIntValue = TIntValueItem | int


TIntegerValue = TIntegerValueItem | int


TLongValue = TLongValueItem | int


TShortValue = TShortValueItem | int


TStringValue = TStringValueItem | str


TTimeValue = TTimeValueItem | str


TUnsignedByteValue = TUnsignedByteValueItem | int


TUnsignedIntValue = TUnsignedIntValueItem | int


TUnsignedLongValue = TUnsignedLongValueItem | int


TUnsignedShortValue = TUnsignedShortValueItem | int


TNumericValue = (
TByteValue
| TDecimalValue
| TDoubleValue
| TFloatValue
| TIntValue
| TIntegerValue
| TLongValue
| TShortValue
| TUnsignedByteValue
| TUnsignedIntValue
| TUnsignedLongValue
| TUnsignedShortValue
)


TOrderedValue = (
TDateTimeStampValue
| TDateTimeValue
| TDateValue
| TNumericValue
| TStringValue
| TTimeValue
)


@dataclass(frozen=True, kw_only=True)
class TRangeValue:
max_exclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "maxExclusive"}
)
max_inclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "maxInclusive"}
)
min_exclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "minExclusive"}
)
min_inclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "minInclusive"}
)
unit: TUnit | None = None
Loading
Loading