ts_ids_components.xrd.system module#
System component for XRD IDSs.
XrdSystem extends the generic
System component with the
fields common to XRD instruments: a human-readable system name and serial
number.
XrdSystem carries a pk
(UUIDPrimaryKey) so a
consuming IDS can declare it as a top-level array (systems: List[XrdSystem])
and datacubes (see ts_ids_components.xrd.datacube and
ts_ids_components.xrd.datacube_raw) can reference the specific
system that produced them via fk_system, rather than relying on a
file-wide singleton. pk values must still be generated deterministically
by the task script (seeded from file content and task script identity), not
by this component.
- Model XrdSystem[source]#
Bases:
System,Name,SerialNumberInstrument system information common to all XRD vendors.
Show JSON schema
{ "description": "Instrument system information common to all XRD vendors.", "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" ] }, "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" ] }, "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" ] }, "pk": { "@primary_key": true, "description": "Primary key for this system, referenced by datacubes belonging to it.", "type": "string" } }, "additionalProperties": false, "required": [ "vendor", "model", "type", "pk" ] }
- Validators:
- 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.
- field pk: str#
Primary key for this system, referenced by datacubes belonging to it.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
- 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.