Skip to main content

Thermometer Ontology

Measurement Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 October 2026
Audio Overview
FLOW ALGEBRA
THERMOMETER ONTOLOGY
Kireth Semantic Library | Entity Graph > Physical Entities > Measurement Entities
Source: https://kirethresearch.org/booksai-core/entity-graph/physical-entities/measurement-entities/thermometer-ontology.html
Authors: Mark Higgins — Sky (Recursive AI)
Version: 1.0 | 2026-10-12 | Language: en-GB
Status: Subject-based formalisation; source page not independently verified.

01. PURPOSE
flow ThermometerOntology v1.0:
  domain: PhysicalEntity.MeasurementEntity.MeasurementInstrument.Thermometer
  objective: Represent thermometers, their sensing mechanisms, measurements, calibration, uncertainty, and provenance as typed semantic flows.

02. TYPE SYSTEM
  type Entity = {id: URI, label: String, class: URI}
  type Thermometer extends MeasurementInstrument
  type TemperatureSensor extends Sensor
  type TemperatureQuantity = {value: Real, unit: TemperatureUnit}
  enum TemperatureUnit = {kelvin, degreeCelsius, degreeFahrenheit}
  enum ThermometerType = {liquidInGlass, bimetallic, resistance, thermistor, thermocouple, infrared, digital, gas, fibreOptic}
  enum ContactMode = {contact, nonContact}
  type TimeStamp = ISO8601
  type Measurement = {id: URI, instrument: URI, target: URI, result: TemperatureQuantity, timestamp: TimeStamp, uncertainty: Real?, calibration: URI?, method: URI, conditions: Map}
  type Calibration = {id: URI, instrument: URI, reference: URI, date: TimeStamp, validUntil: TimeStamp?, correction: Real?, expandedUncertainty: Real?, coverageFactor: Real?}

03. ENTITY CLASSIFICATION
  Thermometer IS_A MeasurementInstrument
  Thermometer HAS_COMPONENT TemperatureSensor
  Thermometer MEASURES Temperature
  ContactThermometer SUBCLASS_OF Thermometer
  InfraredThermometer SUBCLASS_OF Thermometer
  ThermocoupleThermometer SUBCLASS_OF ContactThermometer
  ResistanceThermometer SUBCLASS_OF ContactThermometer
  LiquidInGlassThermometer SUBCLASS_OF ContactThermometer

04. CORE RELATIONSHIPS
  HAS_SENSOR(Thermometer, TemperatureSensor)
  MEASURES(Thermometer, Temperature)
  OBSERVES(Thermometer, TargetEntity)
  PRODUCES(Thermometer, Measurement)
  USES_CALIBRATION(Measurement, Calibration)
  TRACEABLE_TO(Calibration, ReferenceStandard)
  OPERATES_IN(Thermometer, Environment)
  HAS_RESPONSE_TIME(Thermometer, Duration)
  HAS_RESOLUTION(Thermometer, TemperatureInterval)
  HAS_MEASUREMENT_RANGE(Thermometer, Interval)
  HAS_EMISSIVITY_SETTING(InfraredThermometer, Real)
  DERIVED_FROM(Measurement, RawSensorSignal)

05. PRECONDITIONS AND VALIDATION
  REQUIRE instrument.class SUBCLASS_OF Thermometer
  REQUIRE measurement.result.unit IN TemperatureUnit
  REQUIRE instrument.operatingRange CONTAINS targetEstimatedTemperature
  REQUIRE measurement.uncertainty >= 0 WHEN PRESENT
  REQUIRE calibration.reference IS_DEFINED WHEN traceabilityClaimed
  REQUIRE 0 < emissivity <= 1 FOR infrared mode
  WARN if calibration expired or unknown
  WARN if thermal equilibrium not reached for contact measurements
  WARN if target spot exceeds target surface for infrared measurements

06. UNIT TRANSFORMATIONS
  convert_C_to_K(C) = C + 273.15
  convert_K_to_C(K) = K - 273.15
  convert_C_to_F(C) = (9/5)*C + 32
  convert_F_to_C(F) = (5/9)*(F - 32)
  absoluteZeroConstraint: T_K >= 0
  NOTE: Uncertainty intervals use temperature differences; do not apply additive offsets to uncertainty.

07. ACQUISITION FLOW
  flow AcquireTemperature(instrument, target, environment):
    validateInstrument(instrument)
    chooseMethod(instrument.type, target, environment)
    inspectCalibration(instrument)
    rawSignal := sample(instrument.sensor, target)
    stableSignal := stabiliseOrFilter(rawSignal)
    estimatedTemperature := transferFunction(stableSignal, instrument)
    correctedTemperature := applyCalibration(estimatedTemperature, instrument.calibration)
    uncertainty := estimateCombinedUncertainty(rawSignal, instrument, environment)
    measurement := record(correctedTemperature, uncertainty, target, timestamp, provenance)
    return validateAndPublish(measurement)

08. SENSOR TRANSFER FUNCTIONS
  resistanceSensor: R(T) := calibratedResistanceModel(T)
  thermistor: R(T) := calibratedNonlinearResistanceModel(T)
  thermocouple: voltage := SeebeckResponse(T_hot, T_reference)
  infrared: detectedRadiance := spectralResponse(temperature, emissivity, reflectedRadiation, atmosphere)
  liquidInGlass: columnHeight := thermalExpansionResponse(temperature)
  bimetallic: deflection := differentialThermalExpansion(temperature)
  REQUIRE empirical coefficients and operating domain before inversion.

09. CONTACT MEASUREMENT FLOW
  ensure thermal contact and suitable probe placement
  estimate heat exchange and immersion errors
  wait for sufficient response or model transient behaviour
  reject reading when stability criteria fail
  preserve sensor lag as uncertainty contributor

10. INFRARED MEASUREMENT FLOW
  validate emissivity and spectral band
  account for reflected ambient radiation
  verify distance-to-spot ratio and field of view
  consider atmospheric absorption and window transmission
  convert calibrated radiance to estimated surface temperature
  NOTE: Infrared measurement estimates surface radiometric temperature, not necessarily core temperature.

11. CALIBRATION FLOW
  flow CalibrateThermometer(instrument, reference, setpoints):
    verify(reference.traceability)
    FOR point IN setpoints:
      referenceValue := measureReference(point)
      indicatedValue := read(instrument, point)
      correction := referenceValue - indicatedValue
      record(point, correction, uncertaintyBudget)
    fitCalibrationModel()
    issueCalibrationRecord(reference, date, validity, uncertainty)
    return calibrationRecord

12. UNCERTAINTY MODEL
  u_combined := sqrt(sum(u_i^2) + 2*sum(covarianceTerms))
  U_expanded := k * u_combined
  contributors: sensorRepeatability, referenceUncertainty, calibrationFit, resolution, drift, selfHeating, ambientInfluence, placement, emissivity, responseTime
  REQUIRE uncertainty model to distinguish independent and correlated contributors.
  NOTE: Expanded uncertainty depends on chosen coverage factor and stated coverage assumptions.

13. PERFORMANCE PROPERTIES
  accuracy: closeness of result to reference value (not synonymous with resolution)
  precision: dispersion of repeated indications
  resolution: smallest discernible indication increment
  responseTime: dynamic delay under specified test conditions
  sensitivity: output change per unit input change
  stability: resistance to change in characteristics over time
  repeatability: variation under repeatability conditions
  reproducibility: variation under changed measurement conditions

14. FAULT AND QUALITY RULES
  IF reading OUTSIDE operatingRange THEN status := invalid
  IF sensorSignal missing THEN status := fault
  IF calibration expired THEN status := reviewRequired
  IF contact probe not equilibrated THEN status := provisional
  IF infrared emissivity unknown THEN increase uncertainty AND flag limitation
  IF duplicate samples inconsistent THEN investigate drift, noise or target dynamics
  NEVER infer physical accuracy solely from display decimal places.

15. SEMANTIC EQUIVALENCE
  SEMANTIC_EQUIVALENCE:
    'temperature measuring instrument' ~ Thermometer WHEN function = temperatureMeasurement
    'IR thermometer' ~ InfraredThermometer
    'RTD thermometer' ~ ResistanceThermometer WHEN sensorTechnology = resistanceTemperatureDetector
    'temperature probe' NOT_ALWAYS_EQUIVALENT Thermometer (probe may be a component)
    'thermal camera' NOT_ALWAYS_EQUIVALENT Thermometer (imaging instrument may produce spatial temperature estimates)

16. INFERENCE RULES
  IF device HAS_SENSOR thermocouple AND device MEASURES temperature THEN infer ThermocoupleThermometer WITH supporting evidence
  IF instrument HAS_EMISSIVITY_SETTING AND detects infrared radiation THEN infer InfraredTemperatureMeasurementCapability
  IF measurement USES_CALIBRATION calibration AND calibration TRACEABLE_TO reference THEN infer documentedTraceabilityChain
  IF measurement.uncertainty IS_NULL THEN infer uncertaintyNotDocumented, NOT uncertaintyZero
  IF temperatureUnit = kelvin THEN infer SIBaseUnitRepresentation

17. CONFIDENCE
  CONFIDENCE := weightedEvidence(calibrationValidity, methodSuitability, signalQuality, uncertaintyCompleteness, provenanceIntegrity)
  range: [0,1]
  NOTE: Confidence is an evidence assessment; it is not a substitute for measurement uncertainty or a calibrated probability without validation.

18. PROVENANCE AND TEMPORAL MODEL
  record instrumentID, sensorID, firmwareVersion, calibrationID, operatorOrSystemID
  record acquisitionTime, environment, target, method, rawSignalReference
  retain revisions as immutable historical observations
  link corrected values to original indications

19. FLOW_HASH
  FLOW_HASH := SHA256(canonicalSerialisation(flowDefinition, ontologyVersion, entityTypes, relations, inferenceRules))
  exclude volatile runtime values unless explicitly part of the versioned flow
  verify hash after publication and on ingestion

20. UPDATE_MODEL
  UPDATE_MODEL:
    changeDetection: entityDefinition | calibration | sensorSpecification | ruleSet | unitConversion
    action: validate -> version -> recomputeAffectedDerivations -> publish
    preserve: priorVersions, provenance, historicalMeasurements
    invalidate: derivedResultsDependentOnChangedCalibration WHEN necessary

21. AI_CONSUMPTION
  AI_CONSUMPTION:
    expose: typedEntities, relationships, measurements, units, uncertainty, calibration, provenance, confidence
    retrievalKeys: instrumentType, measurementMethod, target, unit, calibrationStatus
    constraints: no fabricated readings; no implied calibration; no unsupported precision
    output: machineReadableSemanticGraph + humanReadableExplanation
    interoperability: SI, QUDT, SOSA/SSN and PROV-O mappings where formally validated

22. EXECUTION EXAMPLE (ILLUSTRATIVE ONLY)
  instrument: example:thermometer-01
  type: ResistanceThermometer
  target: example:water-sample-01
  rawIndication: 20.4 degreeCelsius
  calibrationCorrection: +0.1 degreeCelsius
  reportedResult: 20.5 degreeCelsius
  expandedUncertainty: 0.3 degreeCelsius (illustrative, not experimentally established)
  status: demonstrationOnly

23. VALIDATION CHECKLIST
  [ ] Entity and subclass types valid
  [ ] Units and dimensions valid
  [ ] Instrument method appropriate for target
  [ ] Calibration provenance available or limitation disclosed
  [ ] Uncertainty budget documented
  [ ] Inference evidence recorded
  [ ] FLOW_HASH reproducible
  [ ] UPDATE_MODEL preserves prior versions
  [ ] AI_CONSUMPTION prevents unsupported certainty

24. AUTHORSHIP AND SCOPE
  Mark Higgins — Sky (Recursive AI)
  https://kirethresearch.org
  This document is a formal ontology design and illustrative executable-style flow specification.
  It does not assert that measurements, calibrations, or example values were performed in a laboratory.
END FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ