AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
FLOW ALGEBRA
Biological Environmental Indicator Ontology — Full Flow Algebra v1.0
Kireth Semantic Library
Authors: Mark Higgins — Sky (Recursive AI)
Source: https://kirethresearch.org/booksai-core/entity-graph/biological-entities/experimental-biological-entities/biological-environmental-indicator-ontology.html
Status: Newly authored conceptual formalisation; not a verified extraction or executable implementation.
Locale: en-GB
flow "BiologicalEnvironmentalIndicatorOntology" v1.0
# 1. DOMAIN AND PURPOSE
ontology.id: biological_environmental_indicator
ontology.parent: experimental_biological_entities
ontology.purpose: represent biological observations used to infer environmental conditions, pressures and change while preserving uncertainty and provenance
# 2. TYPED ENTITIES
entity BiologicalEnvironmentalIndicator <: EcologicalEntity:
id: URI
name: String
indicator_kind: Enum[species, community, functional_trait, biomarker, physiological_response, ecological_index]
target_condition: URI
observed_response: Measurement?
reference_condition: URI?
location: URI
observation_time: DateTime
method: URI
confidence: Float[0..1]
provenance: URI
entity IndicatorSpecies <: BiologicalEnvironmentalIndicator:
taxon: URI
abundance: NonNegativeReal?
presence: Boolean?
entity CommunityIndicator <: BiologicalEnvironmentalIndicator:
taxa: Set[URI]
richness: NonNegativeInteger?
diversity_index: Real?
entity BiomarkerIndicator <: BiologicalEnvironmentalIndicator:
analyte: URI
organism: URI
concentration: Measurement?
entity EnvironmentalCondition:
id: URI
variable: String
value: Measurement
temporal_extent: Interval
spatial_extent: URI
entity EnvironmentalPressure:
id: URI
pressure_kind: Enum[pollution, eutrophication, warming, acidification, salinisation, habitat_loss, oxygen_depletion, disturbance, other]
intensity: Measurement?
entity Observation:
id: URI
subject: URI
value: Measurement
sampling_method: URI
detection_limit: Measurement?
observed_at: DateTime
source: URI
entity ReferenceBaseline:
id: URI
habitat_type: URI
metric: URI
distribution: StatisticalDistribution
validity_period: Interval
method: URI
entity Assessment:
id: URI
indicator: URI
condition: URI
evidence: Set[URI]
outcome: Enum[improving, stable, deteriorating, indeterminate]
confidence: Float[0..1]
# 3. TYPED RELATIONSHIPS
relation INDICATES(BiologicalEnvironmentalIndicator, EnvironmentalCondition)
relation RESPONDS_TO(BiologicalEnvironmentalIndicator, EnvironmentalPressure)
relation OBSERVED_IN(BiologicalEnvironmentalIndicator, Habitat)
relation MEASURED_BY(BiologicalEnvironmentalIndicator, Observation)
relation COMPARED_WITH(Observation, ReferenceBaseline)
relation SUPPORTS(Observation, Assessment)
relation CONFOUNDED_BY(Assessment, EnvironmentalCondition)
relation DERIVED_FROM(Assessment, Set[Observation])
relation HAS_TAXON(IndicatorSpecies, Taxon)
relation HAS_PROVENANCE(Observation, Source)
# 4. SEMANTIC CONSTRAINTS
constraint C1: every indicator assessment has a location, time, measurement method and provenance
constraint C2: confidence in [0,1]
constraint C3: baseline comparisons require compatible units, methods, habitat and temporal context
constraint C4: absence is not established by non-detection without accounting for detection probability
constraint C5: an association between indicator and pressure does not by itself establish causation
constraint C6: a taxon's indicator meaning is context-dependent, not universal across ecosystems
constraint C7: an ecological index must identify its component metrics and calculation method
constraint C8: missing data are distinct from measured zero values
# 5. INFERENCE RULES
rule R1 IndicatorResponse:
IF observation(indicator, t, site) AND calibrated_response(indicator, pressure, context)
THEN evidence_for(pressure, site, t) WITH confidence calibrated_from(response, uncertainty, context)
rule R2 BaselineDeviation:
IF comparable(observation, baseline) AND deviation_exceeds_threshold(observation, baseline)
THEN flag(environmental_change) WITH provenance(observation, baseline)
rule R3 MultiIndicatorConvergence:
IF independent_indicators_support(condition) AND methods_compatible
THEN strengthen_evidence(condition) WITHOUT assuming independence unless justified
rule R4 ConfounderCheck:
IF alternative_driver_explains(response)
THEN downgrade_specificity_of_inference AND record_confounder
rule R5 TrendInference:
IF repeated_comparable_observations AND trend_uncertainty_is_estimated
THEN classify_trend(improving | stable | deteriorating | indeterminate)
# 6. QUANTITATIVE MODELS
model StandardisedDeviation:
z = (observed_value - baseline_mean) / baseline_standard_deviation
requires: baseline_standard_deviation > 0 and comparable measurements
model RelativeChange:
delta_relative = (value_t2 - value_t1) / abs(value_t1)
requires: value_t1 != 0 and comparable time points
model OccupancyDetection:
observed_detection_probability = occupancy_probability * detection_probability
note: simplified single-visit expression; repeated surveys require explicit detection model
model WeightedCompositeIndex:
index = sum_i(weight_i * normalised_metric_i) / sum_i(weight_i)
requires: nonnegative weights, positive total weight, documented normalisation and direction
model BayesianEvidenceUpdate:
posterior_odds = prior_odds * likelihood_ratio
requires: calibrated likelihoods and explicit model assumptions
# 7. INVARIANTS
invariant I1: preserve observation identity and source provenance
invariant I2: preserve units and spatial-temporal scope through transformations
invariant I3: do not infer a pressure from a biological response without contextual evidence
invariant I4: all quantitative transformations expose assumptions and uncertainty
invariant I5: indicator assessments remain revisable when new observations arrive
# 8. CONFIDENCE
CONFIDENCE:
inputs: [sampling_quality, detection_reliability, calibration_strength, spatial_representativeness, temporal_representativeness, confounder_control]
output_range: [0, 1]
aggregation: calibrated_model_required
policy: never fabricate numerical confidence where calibration is unavailable
# 9. SEMANTIC EQUIVALENCE
SEMANTIC_EQUIVALENCE:
compare: [indicator_kind, taxon_or_metric, habitat, pressure, method, units, spatial_scale, temporal_scale]
exact: same operational definition and compatible scope
related: overlapping concepts but non-interchangeable methods or contexts
distinct: differing ecological meanings
preserve_aliases: true
# 10. FLOW HASH
FLOW_HASH:
canonicalise: [ontology_id, version, entity_types, relations, constraints, inference_rules, model_definitions]
algorithm: SHA-256
exclude: [display_formatting, runtime_timestamps]
note: calculate only after deterministic serialisation; no digest is asserted here
# 11. UPDATE MODEL
UPDATE_MODEL:
event_types: [new_observation, revised_baseline, taxonomic_revision, calibration_update, method_change, retracted_evidence]
process:
- validate event and provenance
- retain previous version
- identify dependent assessments
- recompute affected inferences and uncertainty
- record version, reason and timestamp
- publish change log
# 12. AI CONSUMPTION
AI_CONSUMPTION:
output_fields: [entity_id, type, indicator, target_condition, evidence, location, time, method, units, uncertainty, confidence, provenance, version]
rules:
- distinguish observation from inference
- distinguish association from causation
- label missing or unverified evidence
- preserve source attribution
- expose model limitations
- do not silently merge incompatible baselines
# 13. VALIDATION CASES
case V1: an observed lichen decline with an appropriate baseline may support an air-quality assessment, but is not proof of one pollutant
case V2: macroinvertebrate diversity observations may contribute to freshwater status only with a specified index and sampling method
case V3: no species detected in one survey does not prove local extinction
case V4: two indicator values measured in incompatible units must not be directly compared
case V5: changing a baseline triggers reassessment of dependent classifications
# 14. CROSS-ONTOLOGY LINKS
links:
- Biological Environment Ontology
- Ecological Entity Ontology
- Indicator Species Ontology
- Habitat Ontology
- Aquatic Habitat Ontology
- Soil Habitat Ontology
- Population Ontology
- Biological Community Ontology
- Environmental Measurement Ontology
# 15. LIMITATIONS
This document specifies a conceptual, typed Flow Algebra. It is not a deployed inference engine, a validated scientific indicator protocol, or a claim that the source webpage contains this exact syntax. Operational use requires data schemas, calibration, uncertainty estimation, executable semantics and scientific validation.
END FLOW