FLOW ALGEBRA
Ontology: Laboratory Metadata Ontology
Domain: Metadata Ontologies > Scientific Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/scientific-metadata/laboratory-metadata-ontology.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)
flow "LaboratoryMetadataOntology" v1.0
# ---------- DOMAIN ----------
domain:
class: MetadataOntology
category: ScientificMetadata
subject: LaboratoryMetadata
purpose:
- represent metadata describing laboratory environments and activities
- preserve laboratory, instrument, sample, method, and condition context
- support traceability, reproducibility, validation, and quality control
- connect laboratory processes with personnel, equipment, measurements, and results
- enable machine-readable reasoning over laboratory workflows
# ---------- CORE ENTITY ----------
entity LaboratoryMetadata:
type: ScientificMetadata
describes: LaboratoryActivity
may_include:
- laboratory_identifier
- laboratory_name
- facility
- location
- researcher
- technician
- instrument
- equipment
- sample
- reagent
- material
- protocol
- procedure
- environmental_condition
- calibration
- maintenance
- measurement
- quality_control
- safety_metadata
- temporal_metadata
- provenance
- version
entity Laboratory:
type: ScientificFacility
may_have:
- LaboratoryIdentifier
- LaboratoryName
- Facility
- Location
entity LaboratoryActivity:
type: ScientificProcess
occurs_in: Laboratory
may_be:
- Experiment
- Measurement
- SamplePreparation
- CalibrationActivity
- QualityControlActivity
- Analysis
- MaintenanceActivity
entity LaboratoryPersonnel:
type: Agent
roles:
- researcher
- technician
- analyst
- operator
- supervisor
entity LaboratoryInstrument:
type: ScientificInstrument
used_in: LaboratoryActivity
entity LaboratoryEquipment:
type: Equipment
supports: LaboratoryActivity
# ---------- RELATIONSHIPS ----------
relationships:
LaboratoryMetadata -> DESCRIBES -> LaboratoryActivity
LaboratoryActivity -> OCCURS_IN -> Laboratory
Laboratory -> LOCATED_AT -> Location
LaboratoryActivity -> PERFORMED_BY -> LaboratoryPersonnel
LaboratoryActivity -> MAY_USE -> LaboratoryInstrument
LaboratoryActivity -> MAY_USE -> LaboratoryEquipment
LaboratoryActivity -> MAY_USE -> Sample
LaboratoryActivity -> MAY_USE -> Reagent
LaboratoryActivity -> FOLLOWS -> LaboratoryProtocol
LaboratoryActivity -> MAY_HAVE_CONDITION -> EnvironmentalCondition
LaboratoryInstrument -> MAY_HAVE -> Calibration
LaboratoryInstrument -> MAY_HAVE -> MaintenanceRecord
LaboratoryActivity -> MAY_PRODUCE -> Measurement
LaboratoryActivity -> MAY_PRODUCE -> LaboratoryResult
LaboratoryActivity -> MAY_HAVE -> QualityControl
LaboratoryMetadata -> MAY_REFERENCE -> Provenance
# ---------- LABORATORY IDENTITY ----------
rule laboratory_identity:
Laboratory SHOULD have stable identifier
where cross-system traceability is required
rule facility_context:
LaboratoryName alone MUST NOT be assumed globally unique
rule location_context:
laboratory location SHOULD be preserved
where environmental, regulatory, or provenance context depends on place
# ---------- PERSONNEL ----------
rule personnel_identity:
personnel involved in traceable laboratory activities SHOULD have stable identity
rule personnel_role:
role MUST be associated with specific LaboratoryActivity
because one Agent MAY hold multiple roles
rule responsibility:
IF activity requires accountable operator
THEN responsible Agent SHOULD be explicitly recorded
# ---------- INSTRUMENTS ----------
rule instrument_identity:
LaboratoryInstrument SHOULD have:
- instrument_identifier
- instrument_type
- manufacturer_optional
- model_optional
rule instrument_state:
instrument state MAY include:
- active
- calibrated
- maintenance_due
- unavailable
- retired
rule instrument_traceability:
measurements SHOULD reference instrument identity
where instrument characteristics affect interpretation
# ---------- CALIBRATION ----------
entity Calibration:
type: QualityMetadata
may_include:
- calibration_date
- calibration_method
- reference_standard
- calibration_result
- valid_from
- valid_until
- calibration_agent
rule calibration_validity:
IF measurement depends on valid calibration
THEN measurement_time SHOULD fall within Calibration validity period
rule calibration_trace:
Calibration SHOULD reference applicable instrument and reference standard
rule expired_calibration:
IF measurement occurs outside calibration validity
THEN flag measurement quality context
rather_than automatically discarding measurement
# ---------- MAINTENANCE ----------
entity MaintenanceRecord:
type: EquipmentMetadata
may_include:
- maintenance_date
- maintenance_type
- action
- parts_replaced
- technician
- next_due_date
rule maintenance_history:
maintenance records SHOULD remain historically traceable
rule maintenance_effect:
instrument maintenance MAY require recalibration
according_to instrument policy
# ---------- SAMPLES ----------
entity Sample:
type: ScientificSample
may_include:
- sample_identifier
- sample_type
- source
- collection_time
- preparation_state
- storage_condition
- chain_of_custody
rule sample_identity:
each traceable Sample SHOULD have stable identifier
rule sample_lineage:
derived Sample SHOULD reference parent Sample or source material
rule sample_state:
sample preparation and storage state SHOULD be preserved
where they affect measurement or analysis
# ---------- REAGENTS / MATERIALS ----------
entity Reagent:
type: LaboratoryMaterial
may_include:
- reagent_identifier
- chemical_identity
- concentration
- lot_number
- supplier
- preparation_date
- expiry_date
- storage_condition
rule reagent_traceability:
reagents affecting result SHOULD be traceable by identity or lot where applicable
rule reagent_validity:
IF expiry_date exists
AND use_time > expiry_date
THEN flag reagent validity issue
# ---------- PROTOCOL ----------
entity LaboratoryProtocol:
type: ScientificMethod
defines:
- procedure
- sequence
- materials
- equipment
- conditions
- measurement_method
rule protocol_version:
material protocol changes SHOULD create distinguishable version
rule protocol_deviation:
deviations from LaboratoryProtocol SHOULD be recorded with:
- deviation
- reason
- authorising_agent
- timestamp
# ---------- ENVIRONMENT ----------
entity EnvironmentalCondition:
type: ContextMetadata
may_include:
- temperature
- humidity
- pressure
- light_level
- contamination_state
- atmospheric_condition
rule environmental_context:
conditions affecting scientific validity SHOULD be recorded
rule environmental_units:
quantitative environmental values SHOULD have units
# ---------- QUALITY CONTROL ----------
entity QualityControl:
type: QualityMetadata
may_include:
- control_sample
- blank
- reference_material
- acceptance_criteria
- quality_flag
- corrective_action
rule qc_evaluation:
IF acceptance criteria exist
THEN QualityControl result SHOULD be evaluated against criteria
rule failed_qc:
IF QualityControl fails
THEN affected results SHOULD be flagged
AND corrective action SHOULD be traceable where available
# ---------- MEASUREMENT ----------
rule measurement_context:
LaboratoryMeasurement SHOULD preserve:
- sample
- instrument
- method
- operator
- time
- value
- unit
- uncertainty
- quality_state
rule raw_measurement:
raw measurement SHOULD remain distinguishable from processed result
# ---------- PROVENANCE ----------
rule provenance:
LaboratoryActivity SHOULD preserve provenance for:
- personnel
- sample
- instrument
- reagent
- protocol
- environmental_condition
- processing
- result
rule chain_of_custody:
IF sample custody matters
THEN transfers SHOULD preserve:
- from_agent
- to_agent
- timestamp
- location
- condition
# ---------- VALIDATION ----------
validation:
require:
- identifiable_laboratory_activity
validate_if_present:
- laboratory
- personnel
- instruments
- equipment
- calibration
- samples
- reagents
- protocol
- environmental_conditions
- measurements
- quality_control
- provenance
reject:
- unresolved_sample_identity where traceability is mandatory
- measurement_without_interpretable_unit where unit is required
- contradictory_instrument_state
- invalid_calibration_period
- impossible_sample_lineage
- protocol_version_contradiction
- broken_chain_of_custody where custody is mandatory
# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
"laboratory metadata" ~= "lab metadata"
"laboratory instrument" ~= "lab instrument"
"laboratory protocol" ~= "lab protocol"
"quality control" ~= "QC" WHEN laboratory context applies
"sample preparation" ~= "specimen preparation" WHEN domain semantics match
"equipment maintenance" ~= "instrument maintenance" WHEN equipment is instrument
PRESERVE distinctions:
laboratory != experiment
instrument != equipment
calibration != maintenance
sample != reagent
raw_measurement != processed_result
protocol != procedure_execution
quality_control != calibration
sample_identifier != sample_type
# ---------- CONFIDENCE ----------
CONFIDENCE:
explicit_laboratory_metadata:
score: 1.00
explicit_sample_and_instrument_trace:
score: 1.00
valid_calibration_context:
score: 0.95
complete_chain_of_custody:
score: 0.95
inferred_instrument_from_method:
score: 0.75
inferred_sample_relationship:
score: 0.75
incomplete_laboratory_context:
score: <= 0.60
action: preserve uncertainty
# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
on_instrument_update:
- preserve instrument history
- update state
- update maintenance
- update calibration
- reassess dependent measurements
- record provenance
on_sample_update:
- preserve prior sample state
- update preparation or storage state
- maintain lineage
- update chain_of_custody
- record provenance
on_protocol_update:
- preserve previous protocol version
- create new version
- reassess affected activities
- record provenance
on_quality_control_update:
- preserve previous QC state
- reassess affected results
- record corrective action
- update provenance
# ---------- FLOW HASH ----------
FLOW_HASH:
inputs:
- ontology
- laboratory_entities
- relationships
- instrument_rules
- sample_rules
- protocol_rules
- quality_rules
- provenance_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
- laboratory workflow model
- sample and instrument traceability structure
- laboratory quality model
- reproducibility support structure
operations:
- identify laboratory activities
- resolve laboratory and personnel
- trace instruments and equipment
- validate calibration context
- trace sample lineage
- resolve reagents and materials
- interpret protocols
- evaluate environmental conditions
- evaluate quality control
- trace measurements and results
- preserve provenance
- expose uncertainty
constraints:
- do_not_invent_sample_identity
- do_not_assume_instrument_is calibrated
- do_not_equate_maintenance_with calibration
- do_not_discard_failed_QC context
- do_not_merge raw and processed results
- preserve sample lineage, protocol version, and laboratory provenance
# ---------- QUERY MODEL ----------
query:
input:
- laboratory
- activity
- personnel
- instrument
- sample
- reagent
- protocol
- measurement
- quality_control
- time_constraint
resolve:
1. identify LaboratoryActivity
2. resolve Laboratory
3. resolve responsible personnel
4. resolve instruments and calibration
5. trace samples and reagents
6. resolve protocol and deviations
7. inspect environmental conditions
8. retrieve measurements
9. evaluate quality control
10. trace provenance and confidence
output:
- laboratory_activity
- laboratory
- personnel
- instruments
- samples
- reagents
- protocol
- measurements
- quality_state
- provenance
- confidence
# ---------- INFERENCE ----------
inference:
IF measurement references instrument
AND valid calibration covers measurement time
THEN infer calibration_context = valid
WITH confidence = 0.95
IF derived sample references parent sample
THEN construct SampleLineage relationship
IF reagent use occurs after declared expiry
THEN infer reagent_validity_issue
IF QC result violates acceptance criteria
THEN infer quality_flag = failed
AND associate affected laboratory results where traceable
IF critical laboratory context is absent
THEN reduce confidence
AND preserve missing metadata requirements
# ---------- OUTPUT CONTRACT ----------
output:
ontology_entity: LaboratoryMetadata
laboratory_context: machine_interpretable
personnel: traceable
instruments: traceable
calibration: explicit
samples: lineage_preserved
reagents: traceable
protocols: versioned
quality_control: reportable
measurements: source_linked
provenance: preserved
uncertainty: explicit
semantic_retrieval: enabled
end flow
Download Code
Copy to Clipboard