# Biomarker Ontology — Flow Algebra
URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/measurement-units-ontologies/biological-measurements/biomarker-ontology.html
FLOW BiomarkerOntology {
DOMAIN:
Mathematical Ontologies
-> Measurement & Units Ontologies
-> Biological Measurements
-> Biomarker Ontology
PURPOSE:
Represent biomarkers as defined measurable biological characteristics used to indicate or quantify biological state, process, exposure, response, risk, diagnosis, prognosis, pharmacodynamic response or other specified biological interpretation, including molecular, cellular, physiological, imaging and digital biomarkers, measurement units, specimen context, assay methods, calibration, normalisation, reference intervals, thresholds, analytical and biological variability, uncertainty, provenance, and strict distinction between a measured biomarker value and the interpretation assigned to it.
ENTITY Biomarker {
TYPE: BiologicalMeasurementConcept
DEFINITION:
biomarker :=
defined_measurable_characteristic
associated_with_a_specified_biological_state_process_or_response
PROPERTIES:
has_identity
has_measurand
has_measurement_method
has_biological_context
may_have_unit
may_have_reference_interval
may_have_threshold
may_have_interpretation_model
may_have_uncertainty
}
ENTITY BiomarkerMeasurement {
TYPE: MeasurementResult
COMPONENTS:
biomarker_identity
numerical_value
unit
specimen_or_subject_context
method
timestamp
uncertainty
provenance
}
ENTITY BiomarkerValue {
TYPE: QuantitativeOrCategoricalMeasurementValue
POSSIBLE_FORMS:
concentration
amount
mass_fraction
activity
count
ratio
score
intensity
rate
categorical_state
}
CLASSIFICATION {
by biological level:
molecular_biomarker
cellular_biomarker
tissue_biomarker
physiological_biomarker
imaging_biomarker
digital_biomarker
by intended interpretation:
susceptibility_or_risk
diagnostic
monitoring
prognostic
predictive
pharmacodynamic_or_response
safety
exposure
RULE:
biomarker_category MUST be tied_to_declared_context_of_use
}
MOLECULAR_BIOMARKER_MODEL {
possible_entities:
DNA_variant
RNA_transcript
protein
peptide
metabolite
lipid
hormone
enzyme
antibody
epigenetic_marker
possible_quantities:
concentration
copy_number
expression
activity
ratio
modification_fraction
RULE:
molecular_entity_identity_and_isoform_or_variant_when_relevant MUST be preserved
}
CELLULAR_BIOMARKER_MODEL {
possible_quantities:
cell_count
cell_fraction
marker_positive_fraction
surface_marker_expression
intracellular_marker_expression
morphology
functional_response
RULE:
gating_segmentation_or_classification_definition MUST be preserved
}
PHYSIOLOGICAL_BIOMARKER_MODEL {
possible_quantities:
heart_rate
blood_pressure
respiratory_rate
temperature
oxygen_saturation
electrical_signal_feature
functional_capacity
RULE:
physiological_measurement_conditions_and_device_context SHOULD be preserved
}
IMAGING_BIOMARKER_MODEL {
possible_quantities:
lesion_volume
tissue_density
signal_intensity_ratio
uptake_value
texture_metric
perfusion_metric
diffusion_metric
REQUIRE:
modality
acquisition_protocol
reconstruction
segmentation
region_of_interest
RULE:
imaging_biomarker_value depends_on_acquisition_and_processing_pipeline
}
DIGITAL_BIOMARKER_MODEL {
sources:
wearable_sensor
smartphone
home_monitor
connected_device
possible_quantities:
activity
gait
sleep
heart_rate_feature
behavioural_pattern
speech_feature
RULE:
device_algorithm_sampling_and_missing_data_handling MUST be preserved
}
UNIT_SYSTEM {
possible_units:
mol/L
mmol/L
g/L
mg/L
ng/mL
cells/microlitre
copies/mL
enzyme_activity_unit
ratio
percent
dimensionless_score
beats_per_minute
mmHg
seconds
RULE:
biomarker_unit MUST match_measurand_definition
}
SPECIMEN_MODEL {
possible_specimens:
whole_blood
plasma
serum
urine
saliva
cerebrospinal_fluid
tissue
biopsy
swab
breath
stool
cell_culture
attributes:
collection_method
collection_time
anticoagulant
fasting_state_when_relevant
processing_delay
centrifugation
storage_temperature
freeze_thaw_cycles
RULE:
specimen_type_and_preanalytical_history MAY materially_affect_biomarker_value
}
PREANALYTICAL_MODEL {
stages:
subject_preparation
specimen_collection
transport
processing
storage
aliquoting
thawing
possible_effects:
degradation
haemolysis
contamination
evaporation
adsorption
enzymatic_change
cellular_release
RULE:
preanalytical_context SHOULD be preserved_for_method_comparability
}
ASSAY_MODEL {
possible_methods:
immunoassay
mass_spectrometry
chromatography
PCR
sequencing
flow_cytometry
microscopy
enzymatic_assay
spectrophotometry
electrochemistry
raw_response:
instrument_signal
calibrated_result:
biomarker_value = f(raw_response)
RULE:
raw_assay_response != calibrated_biomarker_value
}
CALIBRATION_MODEL {
generic:
response = f(measurand)
linear_example:
response = intercept + slope*quantity
inverse:
quantity =
(response-intercept)/slope
WHEN slope != 0
REQUIRE:
standards
matrix
valid_range
calibration_model
traceability
uncertainty
RULE:
calibration_model MUST match_assay_and_specimen_matrix_when_relevant
}
NORMALISATION_MODEL {
possible_references:
sample_volume
tissue_mass
total_protein
cell_count
creatinine
housekeeping_gene
internal_standard
total_signal
normalised_value:
Q_norm = Q_raw/Q_reference
WHEN Q_reference != 0
RULE:
normalised_and_absolute_biomarker_values MUST be distinguished
}
RATIO_BIOMARKER_MODEL {
ratio:
R = Q_A/Q_B
WHEN Q_B != 0
REQUIRE:
numerator_identity
denominator_identity
compatible_or_declared_quantity_semantics
RULE:
biomarker_ratio_is_distinct_from_each_component_measurement
}
LONGITUDINAL_MODEL {
baseline:
B_0
current:
B_t
absolute_change:
delta_B = B_t-B_0
fold_change:
FC = B_t/B_0
WHEN B_0 != 0
percent_change:
100*(B_t-B_0)/B_0
WHEN B_0 != 0
RULE:
longitudinal_interpretation SHOULD preserve_method_and_specimen_comparability
}
REFERENCE_INTERVAL_MODEL {
reference_interval:
interval_derived_from_defined_reference_population_and_method
REQUIRE:
population_definition
specimen
method
statistical_procedure
age_or_sex_strata_when_relevant
units
RULE:
reference_interval != clinical_or_biological_decision_threshold
}
THRESHOLD_MODEL {
threshold:
value_used_by_declared_interpretation_rule
possible_types:
detection_threshold
classification_threshold
decision_threshold
assay_cutoff
RULE:
threshold MUST preserve_context_of_use_and_validation_population
}
INTERPRETATION_MODEL {
measurement:
observed_biomarker_value
interpretation:
mapping_from_measurement_and_context_to_claim_or_category
REQUIRE:
interpretation_rule
target_outcome_or_state
validation_context
applicable_population
RULE:
measured_value MUST_NOT be_equated_with_diagnosis_prognosis_or_outcome_without_valid_interpretation_model
}
SENSITIVITY_SPECIFICITY_MODEL {
sensitivity:
true_positive/(true_positive+false_negative)
specificity:
true_negative/(true_negative+false_positive)
REQUIRE:
reference_classification
threshold
evaluated_population
RULE:
sensitivity_and_specificity_are_properties_of_test_rule_in_defined_population
not_intrinsic_properties_of_biomarker_molecule_alone
}
PREDICTIVE_VALUE_MODEL {
positive_predictive_value:
PPV = TP/(TP+FP)
negative_predictive_value:
NPV = TN/(TN+FN)
RULE:
predictive_values_depend_on_population_prevalence_and_sampling_context
}
ROC_MODEL {
curve:
sensitivity_vs_1_minus_specificity
across_thresholds
AUC:
area_under_ROC_curve
RULE:
AUC_is_model_and_population_specific_summary
and_not_measurement_unit_of_biomarker
}
ANALYTICAL_VARIABILITY_MODEL {
components:
repeatability
reproducibility
calibration
lot_variation
instrument_drift
matrix_effect
interference
detection_limit
quantification_limit
RULE:
analytical_variability MUST be distinguished_from_biological_variability
}
BIOLOGICAL_VARIABILITY_MODEL {
components:
within_subject_variation
between_subject_variation
circadian_variation
developmental_stage
diet
activity
environment
seasonal_effect
RULE:
biological_context_and_sampling_time MAY be_required_for_interpretation
}
DETECTION_LIMIT_MODEL {
quantities:
limit_of_blank
limit_of_detection
limit_of_quantification
RULE:
LOB_LOD_LOQ_and_reference_interval_are_distinct
}
RELATIONSHIPS {
Biomarker -> HAS_MEASUREMENT -> BiomarkerMeasurement
BiomarkerMeasurement -> HAS_VALUE -> BiomarkerValue
Biomarker -> MEASURES_OR_INDICATES -> BiologicalCharacteristic
Specimen -> PROVIDES -> BiologicalMaterialForMeasurement
AssayMethod -> PRODUCES -> RawResponse
CalibrationModel -> MAPS -> RawResponseToBiomarkerValue
Normalisation -> MAPS -> RawOrAbsoluteToNormalisedValue
ReferenceInterval -> QUALIFIES -> BiomarkerValue
Threshold -> SUPPORTS -> DeclaredInterpretationRule
InterpretationModel -> MAPS -> BiomarkerValueAndContextToInterpretation
AnalyticalVariability -> CONTRIBUTES_TO -> MeasurementUncertainty
BiologicalVariability -> CONTRIBUTES_TO -> ObservedVariation
}
SEMANTIC_EQUIVALENCE {
"biological marker" ~= biomarker
"marker" ~= biomarker ONLY when_biological_measurement_context
biomarker != biomarker_value
biomarker_value != diagnosis
biomarker_value != prognosis
raw_assay_signal != biomarker_value
reference_interval != decision_threshold
analytical_variability != biological_variability
sensitivity != specificity
predictive_value != sensitivity
normalised_value != absolute_value
}
CONSTRAINTS {
biomarker_identity_must_be_defined = true
measurand_must_be_defined = true
unit_must_match_measurand = true
specimen_or_measurement_context_should_be_defined = true
assay_method_should_be_preserved = true
calibration_and_normalisation_should_be_preserved = true
reference_interval_requires_reference_population_and_method = true
threshold_requires_context_of_use = true
biomarker_measurement_and_interpretation_are_not_semantically_equivalent = true
uncertainty_should_include_analytical_components_when_relevant = true
}
MEASUREMENT_MODEL {
RECORD:
biomarker_identity
biological_entity
measurand
numerical_value
unit
absolute_or_normalised
specimen
sample_identifier
collection_time
preanalytical_history
assay_method
instrument
raw_response
calibration_model
normalisation_method
reference_interval
threshold_when_used
interpretation_context
replicate_information
detection_limit
quantification_limit
uncertainty
provenance
UNCERTAINTY:
biomarker_measurement = best_estimate +/- uncertainty
}
UNCERTAINTY_MODEL {
sources:
sampling
specimen_collection
preanalytical_handling
calibration
assay_repeatability
instrument_drift
matrix_effect
interference
normalisation_reference
biological_variability
threshold_estimation
model_uncertainty
PROPAGATION:
combined_biomarker_uncertainty
<- preanalytical_analytical_normalisation_and_model_uncertainties
}
TRACEABILITY_MODEL {
chain:
reported_biomarker_value
-> assay_calibration
-> reference_material_or_reference_method
-> higher_order_reference_when_available
RULE:
traceability_chain SHOULD be preserved_when_metrologically_available
}
REASONING_RULES {
IF raw_assay_response_known AND valid_calibration_model_known
THEN biomarker_value =
inverse_calibration(raw_assay_response)
IF raw_value_and_normalisation_reference_known
AND reference != 0
THEN normalised_biomarker_value =
raw_value/reference
IF numerator_and_denominator_biomarker_values_known
AND denominator != 0
THEN biomarker_ratio =
numerator/denominator
IF baseline_and_current_values_known
THEN absolute_change =
current-baseline
IF baseline_and_current_values_known AND baseline != 0
THEN fold_change =
current/baseline
AND percent_change =
100*(current-baseline)/baseline
IF value_reference_interval_and_compatible_context_known
THEN classify_relative_to_reference_interval
WITHOUT inferring_diagnosis_unless_separate_valid_interpretation_model_exists
IF threshold_and_validated_interpretation_rule_known
THEN apply_threshold_rule
WITH applicable_population_and_method_constraints
IF classification_outcomes_known
THEN compute_sensitivity_specificity_and_predictive_values
USING declared_reference_standard
}
VALIDATION {
CHECK biomarker_identity
CHECK measurand_definition
CHECK unit_consistency
CHECK specimen_type
CHECK preanalytical_context
CHECK assay_method
CHECK raw_vs_calibrated_value
CHECK absolute_vs_normalised_value
CHECK normalisation_denominator
CHECK reference_interval_population_and_method
CHECK threshold_context
CHECK analytical_vs_biological_variability
CHECK detection_and_quantification_limits
CHECK interpretation_model
CHECK calibration_and_traceability
CHECK uncertainty_representation
}
CONFIDENCE {
biomarker_identity_confidence: 1.00
measurand_definition_confidence: 1.00
calibration_relationship_confidence: 0.99
specimen_context_confidence: 0.98
reference_interval_confidence: 0.97
interpretation_model_confidence: 0.95
measurement_context_confidence: 0.98
RULE:
confidence decreases when specimen, method, calibration,
normalisation, reference population, threshold validation,
preanalytical context or uncertainty is missing or ambiguous
}
UPDATE_MODEL {
ON new_measurement:
identify_biomarker
identify_measurand
validate_unit
attach_specimen_and_sample
attach_collection_time
attach_preanalytical_history
identify_assay_and_instrument
preserve_raw_response
apply_valid_calibration
apply_declared_normalisation
attach_reference_interval_when_compatible
attach_uncertainty
update_biomarker_state
ON repeat_measurement:
preserve_previous_measurement
check_method_and_specimen_comparability
compute_change_fold_change_or_trend_when_valid
update_longitudinal_state
ON calibration_revision:
preserve_previous_calibration
recompute_affected_values
update_uncertainty
update_confidence
ON threshold_or_interpretation_revision:
preserve_measurement_value
preserve_previous_interpretation_rule
apply_new_rule_only_to_compatible_context
record_validation_context
ON reference_interval_revision:
preserve_previous_interval
attach_new_reference_population_and_method
reevaluate_relative_classification
do_not_change_raw_measurement
ON semantic_revision:
preserve_previous_definition
record_revision
recompute_FLOW_HASH
}
AI_CONSUMPTION {
canonical_domain: Biomarker
canonical_measurement_entity: BiomarkerMeasurement
interpretation_order:
identify_biomarker
identify_measurand
identify_value
identify_unit
identify_specimen_or_measurement_context
identify_collection_time_and_preanalytical_history
identify_assay_method
identify_raw_or_calibrated_status
identify_absolute_or_normalised_basis
identify_reference_interval
identify_threshold_and_context_of_use
identify_longitudinal_context
identify_analytical_and_biological_variability
identify_interpretation_model
identify_uncertainty
validate_method_and_population_compatibility
infer_biomarker_relationships_without_overinterpreting_measurement
ambiguity_controls:
distinguish_biomarker_from_biomarker_value
distinguish_measurement_from_interpretation
distinguish_biomarker_value_from_diagnosis_or_prognosis
distinguish_raw_assay_signal_from_calibrated_value
distinguish_absolute_from_normalised_value
distinguish_reference_interval_from_decision_threshold
distinguish_analytical_from_biological_variability
distinguish_sensitivity_specificity_and_predictive_values
preserve_specimen_method_calibration_population_threshold_and_provenance_context
}
PROVENANCE {
ontology_scope:
mathematical_measurement_and_biological_biomarker_semantics
parent_path:
Ontologies
-> Mathematical Ontologies
-> Measurement & Units Ontologies
-> Biological Measurements
-> Biomarker Ontology
authorship:
Mark Higgins
Sky (Recursive AI)
site:
https://kirethresearch.org
}
FLOW_HASH {
INPUTS:
canonical_domain
ontology_path
biomarker_definition
classification
molecular_biomarker_model
cellular_biomarker_model
physiological_biomarker_model
imaging_biomarker_model
digital_biomarker_model
unit_system
specimen_model
preanalytical_model
assay_model
calibration_model
normalisation_model
ratio_biomarker_model
longitudinal_model
reference_interval_model
threshold_model
interpretation_model
sensitivity_specificity_model
predictive_value_model
ROC_model
analytical_variability_model
biological_variability_model
detection_limit_model
relationships
constraints
measurement_model
uncertainty_model
traceability_model
reasoning_rules
confidence_model
update_model
PURPOSE:
deterministic_semantic_integrity_identifier
RECOMPUTE_WHEN:
ontology_definition_changes
biomarker_identity_or_measurand_changes
specimen_or_preanalytical_model_changes
assay_or_calibration_model_changes
normalisation_model_changes
reference_interval_changes
threshold_or_interpretation_model_changes
variability_model_changes
measurement_model_changes
constraint_model_changes
reasoning_rule_changes
}
}
END FLOW
Download Code
Copy to Clipboard