FLOW ALGEBRA
Ontology: Instrument Metadata Ontology
Domain: Metadata Ontologies > Scientific Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/scientific-metadata/instrument-metadata-ontology.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)
flow "InstrumentMetadataOntology" v1.0
# ---------- DOMAIN ----------
domain:
class: MetadataOntology
category: ScientificMetadata
subject: InstrumentMetadata
purpose:
- represent metadata describing scientific instruments
- preserve instrument identity, configuration, calibration, capability, and status
- support measurement traceability, reproducibility, validation, and maintenance
- connect instruments with observations, methods, operators, and results
- enable machine-readable reasoning over scientific measurement systems
# ---------- CORE ENTITY ----------
entity InstrumentMetadata:
type: ScientificMetadata
describes: ScientificInstrument
may_include:
- instrument_identifier
- instrument_name
- instrument_type
- manufacturer
- model
- serial_number
- hardware_version
- firmware_version
- software_version
- configuration
- measurement_capability
- operating_range
- resolution
- accuracy
- precision
- sensitivity
- calibration
- maintenance
- status
- location
- operator
- installation_date
- temporal_metadata
- provenance
entity ScientificInstrument:
type: MeasurementSystem
performs_or_supports:
- Measurement
- Observation
- Experiment
entity InstrumentIdentifier:
type: Identifier
identifies: ScientificInstrument
entity InstrumentType:
type: Classification
examples:
- sensor
- detector
- analyser
- microscope
- spectrometer
- balance
- thermometer
- chromatograph
- imaging_system
- data_logger
entity InstrumentConfiguration:
type: ConfigurationMetadata
may_include:
- hardware_components
- settings
- operating_mode
- acquisition_parameters
- software_configuration
# ---------- RELATIONSHIPS ----------
relationships:
InstrumentMetadata -> DESCRIBES -> ScientificInstrument
ScientificInstrument -> IDENTIFIED_BY -> InstrumentIdentifier
ScientificInstrument -> HAS_TYPE -> InstrumentType
ScientificInstrument -> MAY_HAVE_MANUFACTURER -> Manufacturer
ScientificInstrument -> MAY_HAVE_MODEL -> Model
ScientificInstrument -> HAS_CONFIGURATION -> InstrumentConfiguration
ScientificInstrument -> HAS_CAPABILITY -> MeasurementCapability
ScientificInstrument -> MAY_HAVE -> Calibration
ScientificInstrument -> MAY_HAVE -> MaintenanceRecord
ScientificInstrument -> HAS_STATUS -> InstrumentStatus
ScientificInstrument -> MAY_BE_LOCATED_AT -> Location
ScientificInstrument -> MAY_BE_OPERATED_BY -> Agent
ScientificInstrument -> PRODUCES -> Measurement
Measurement -> GENERATED_BY -> ScientificInstrument
InstrumentMetadata -> MAY_REFERENCE -> Provenance
# ---------- IDENTITY ----------
rule instrument_identity:
ScientificInstrument SHOULD have stable InstrumentIdentifier
where measurement traceability is required
rule serial_identity:
serial_number MAY contribute to instrument identity
but MUST be interpreted with manufacturer/model context where necessary
rule name_not_identity:
instrument_name MUST NOT be assumed globally unique
# ---------- CONFIGURATION ----------
rule configuration_trace:
InstrumentConfiguration SHOULD be preserved for measurements
when configuration affects scientific interpretation
rule configuration_change:
material configuration change SHOULD create a distinguishable configuration state
rule measurement_configuration:
Measurement SHOULD reference applicable InstrumentConfiguration
where settings influence output
# ---------- CAPABILITY ----------
entity MeasurementCapability:
type: InstrumentProperty
may_include:
- measurable_quantity
- operating_range
- detection_limit
- resolution
- sensitivity
- accuracy
- precision
- sampling_rate
rule operating_range:
measurement value outside declared OperatingRange SHOULD be flagged
rule capability_context:
instrument capability MUST be interpreted under applicable configuration and conditions
# ---------- RESOLUTION / ACCURACY / PRECISION ----------
rule quality_distinctions:
InstrumentResolution != InstrumentAccuracy
InstrumentAccuracy != InstrumentPrecision
InstrumentPrecision != InstrumentSensitivity
rule numeric_resolution:
displayed decimal precision MUST NOT automatically imply physical instrument resolution
rule measurement_quality:
instrument specifications SHOULD NOT automatically be assigned as uncertainty of every measurement
unless measurement model explicitly defines that relationship
# ---------- CALIBRATION ----------
entity Calibration:
type: QualityMetadata
applies_to: ScientificInstrument
may_include:
- calibration_identifier
- calibration_date
- calibration_method
- reference_standard
- calibration_parameters
- calibration_result
- valid_from
- valid_until
- calibration_agent
- uncertainty
rule calibration_validity:
IF calibration is required
AND measurement_time exists
THEN evaluate measurement_time against calibration validity
rule calibration_reference:
Calibration SHOULD identify reference standard where metrological traceability requires it
rule calibration_update:
recalibration MUST preserve previous calibration history
# ---------- MAINTENANCE ----------
entity MaintenanceRecord:
type: InstrumentLifecycleMetadata
may_include:
- maintenance_date
- maintenance_type
- action
- component_change
- technician
- next_due_date
rule maintenance_history:
MaintenanceRecord SHOULD remain historically traceable
rule maintenance_calibration:
maintenance MAY invalidate previous calibration
according_to instrument policy
# ---------- STATUS ----------
entity InstrumentStatus:
type: StateMetadata
values:
- active
- available
- in_use
- calibration_due
- maintenance_due
- out_of_service
- retired
rule status_time:
InstrumentStatus SHOULD be temporally contextualised
rule retired_instrument:
retired instrument metadata SHOULD remain available for historical measurement provenance
# ---------- SOFTWARE / FIRMWARE ----------
rule firmware_version:
firmware version SHOULD be preserved where it affects acquisition or processing
rule software_version:
instrument control or acquisition software version SHOULD be preserved
where it affects measurement reproducibility
rule version_change:
software_or_firmware change MAY require revalidation or recalibration
# ---------- MEASUREMENT TRACEABILITY ----------
rule measurement_link:
Measurement generated by ScientificInstrument SHOULD preserve:
- instrument_identifier
- configuration
- calibration_context
- measurement_time
- operator_optional
- method
- provenance
rule raw_output:
raw instrument output SHOULD remain distinguishable from processed measurement result
# ---------- VALIDATION ----------
validation:
require:
- identifiable_scientific_instrument
validate_if_present:
- identifier
- type
- manufacturer
- model
- serial_number
- configuration
- operating_range
- resolution
- accuracy
- precision
- calibration
- maintenance
- status
- software_version
- firmware_version
reject:
- contradictory_instrument_identity
- invalid_operating_range
- impossible_calibration_period
- measurement_claim_outside_supported_capability_without flag
- contradictory_status_at_same_time
- unsupported_accuracy_or_resolution_claim
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
"instrument metadata" ~= "scientific instrument metadata"
"device metadata" ~= "instrument metadata" WHEN device performs scientific measurement
"instrument settings" ~= "instrument configuration" WHEN configuration semantics match
"calibration metadata" ~= "instrument calibration metadata"
"instrument specification" ~= "instrument capability metadata" WHEN describing measurable performance
PRESERVE distinctions:
instrument != measurement
instrument_type != instrument_identifier
configuration != calibration
calibration != maintenance
resolution != accuracy
accuracy != precision
precision != sensitivity
raw_output != processed_result
software_version != firmware_version
# ---------- CONFIDENCE ----------
CONFIDENCE:
explicit_instrument_identifier:
score: 1.00
explicit_configuration:
score: 1.00
valid_calibration_record:
score: 0.95
explicit_measurement_link:
score: 1.00
inferred_instrument_from_dataset:
score: 0.80
inferred_configuration:
score: 0.70
ambiguous_instrument_identity:
score: <= 0.60
action: preserve uncertainty
# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
on_configuration_change:
- preserve previous configuration
- create new configuration state
- associate effective time
- reassess affected measurements
- update provenance
on_calibration:
- preserve calibration history
- add new Calibration record
- update validity state
- reassess subsequent measurement context
- update provenance
on_maintenance:
- preserve maintenance history
- update InstrumentStatus
- determine whether recalibration is required
- update provenance
on_software_or_firmware_change:
- preserve previous version
- record new version
- reassess configuration compatibility
- flag revalidation requirement where applicable
- update provenance
# ---------- FLOW HASH ----------
FLOW_HASH:
inputs:
- ontology
- instrument_entities
- relationships
- identity_rules
- configuration_rules
- capability_rules
- calibration_rules
- maintenance_rules
- validation
- semantic_equivalence
- confidence
- update_model
canonicalisation:
- normalise_whitespace
- preserve_case_sensitive_identifiers
- sort_unordered_property_sets
- preserve_rule_order
output:
deterministic_semantic_hash
# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
interpret_as:
- scientific metadata ontology
- instrument identity model
- measurement traceability structure
- calibration and lifecycle model
operations:
- identify scientific instruments
- resolve instrument types
- inspect configuration
- evaluate measurement capability
- validate operating ranges
- resolve calibration state
- inspect maintenance history
- resolve software and firmware versions
- link measurements to instruments
- preserve provenance
- expose uncertainty
constraints:
- do_not_invent_instrument_identity
- do_not_assume_instrument_is calibrated
- do_not_equate_resolution_with accuracy
- do_not_equate_calibration_with maintenance
- do_not_assign specification_values_as measurement_uncertainty without model
- preserve historical configurations and calibration records
# ---------- QUERY MODEL ----------
query:
input:
- instrument_identifier
- instrument_type
- manufacturer
- model
- capability
- configuration
- calibration_state
- status
- measurement
resolve:
1. identify ScientificInstrument
2. resolve identity and type
3. retrieve configuration
4. evaluate measurement capability
5. inspect calibration
6. inspect maintenance
7. resolve status at relevant time
8. link measurements
9. inspect software and firmware context
10. evaluate provenance and confidence
output:
- instrument
- identity
- type
- configuration
- capability
- calibration
- maintenance
- status
- measurements
- provenance
- confidence
# ---------- INFERENCE ----------
inference:
IF Measurement explicitly references InstrumentIdentifier
THEN associate Measurement with ScientificInstrument
WITH confidence = 1.00
IF measurement time lies within valid Calibration period
THEN infer calibration_context = valid
WITH confidence = 0.95
IF measurement value lies outside declared OperatingRange
THEN infer capability_warning
IF instrument configuration changed before measurement
THEN use configuration effective at measurement time
IF instrument identity remains ambiguous
THEN return candidate instruments
AND preserve uncertainty
# ---------- OUTPUT CONTRACT ----------
output:
ontology_entity: InstrumentMetadata
instrument_identity: machine_interpretable
configuration: versioned
capability: explicit
calibration: traceable
maintenance: traceable
status: temporally_contextualised
measurements: instrument_linked
provenance: preserved
uncertainty: explicit
semantic_retrieval: enabled
end flow
Download Code
Copy to Clipboard