Skip to content

6.4.2.3 SourceOrigin

6.4.2.3.1 Purpose

Who or what produces values: a kind of sensor, a human operator, a lab, a computation or an unknown producer. It is a kind of producer, not a physical device, and its assurance records who answers for the values.

6.4.2.3.2 Questions it answers

  • Was a value measured by a sensor, typed by a person, analysed by a lab or computed?
  • Who answers for its correctness: an official registry, an accredited lab, an approved device or a prescription?
  • Which origins are shared by every Organization?

6.4.2.3.3 Fields

Field Type Cardinality Description
id string (uuid) 1..1 Key.
name string 1..1 Unique.
organization Organization 0..1 Empty for origins shared by all Organizations (e.g. a robot model, a lab, our algorithms).
observation_accuracy enum 1..1 Values: precise, approximate, unknown. Default: unknown.
assurance enum 1..1 Values: official_registry, accredited_lab, approved_device, legal_prescription, none, unknown. Default: unknown.
Who answers for the values: an official registry, a lab accredited for the method, a device model approved for milk recording (e.g. ICAR), a legally signed prescription. none: self-declared, e.g. a farm worker typing a value.
Set only from a document we hold; never guessed. A lost accreditation is a new image (system_version), so data read at an earlier write number keep the assurance known then.
system_version SystemVersion 1..1
created_at datetime 1..1
updated_at datetime 1..1

6.4.2.3.4 Subtypes

Discriminator type: every SourceOrigin is exactly one of the subtypes below (disjoint and complete).

SensorSourceOrigin

A kind of sensor or machine, e.g. a milking robot model, a milk meter, a collar, a scale.

Field Type Cardinality Description
vendor string 1..1
model string 0..1

OperatorSourceOrigin

Operator: a human operator, e.g. a farm worker or veterinarian, who produces data manually.

No fields beyond those of the parent.

LabSourceOrigin

No fields beyond those of the parent.

ComputedSourceOrigin

A value computed from other values: a daily total from milkings, rumination minutes estimated from an accelerometer, a 305-day yield.

Field Type Cardinality Description
computed_by enum 1..1 Values: moonitoring, vendor.
moonitoring: our algorithm, versioned through OriginVersion.
vendor: computed by the provider's software; tied to the provider's version when known.
  • Includes the outputs of our models that people see or export (e.g. a heat or mastitis probability, an alert), with the model and its version as OriginVersion. Model inputs (features such as z-scores, rolling means, lags) are not canonical and are not stored: versioned feature code computes them on demand from canonical data read at a write number (ModelRun). Datasets are kept as versioned files (MlDatasetVersion) under their retention; versions read by a model in production are never deleted.

UnknownSourceOrigin

The delivery channel is known but its actual producer is not; no guessed sensor/lab classification.

No fields beyond those of the parent.

6.4.2.3.5 Relationships

References

Referenced by

Uses types

SystemVersion

Subtypes

6.4.2.3.6 Rules & constraints

  • Who or what produced the value. A kind of producer, not a physical device (see Device).
  • An integration is a channel (SourceChannel), not an origin.