Skip to main content

Meteorology Domain Ontology

Earth & Environmental Domains
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 10 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Meteorology Domain Ontology
DOMAIN: Domain Ontologies / Earth & Environmental Domains / Meteorology
SOURCE: https://kirethresearch.org/booksai-core/ontologies/domain-ontologies/earth-environmental-domains/meteorology-domain-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

flow "MeteorologyDomainOntology" v1.0 {
  ontology:
    id: "meteorology-domain-ontology"
    parent: "earth-environmental-domains"
    purpose: "Represent atmospheric systems, meteorological observations, weather processes, forecasts and evidence-backed relationships."

  types:
    AtmosphericRegion: {id: string, geometry: string?, altitude_range: string?, reference_frame: string?}
    WeatherSystem: {id: string, kind: enum[cyclone, anticyclone, front, convective_system, storm, other], region_id: string, observed_at: datetime?}
    AtmosphericProcess: {id: string, kind: enum[convection, advection, condensation, evaporation, precipitation, radiation, turbulence, other]}
    Observation: {id: string, variable: string, value: number, unit: string, timestamp: datetime, location: string, altitude: number?, uncertainty: number?, instrument: string?, provenance: string}
    Forecast: {id: string, model: string, issued_at: datetime, valid_at: datetime, region_id: string, variable: string, predicted_value: number?, unit: string?, uncertainty: number?, provenance: string}
    Relationship: {id: string, subject: string, predicate: string, object: string, context: string?, confidence: number, evidence: string[]}

  predicates:
    occurs_in(process: AtmosphericProcess, region: AtmosphericRegion)
    influences(process: AtmosphericProcess, system: WeatherSystem)
    observed_in(observation: Observation, region: AtmosphericRegion)
    characterises(observation: Observation, system: WeatherSystem)
    predicts(forecast: Forecast, system: WeatherSystem)
    precedes(a: Observation, b: Observation)
    associated_with(a: WeatherSystem, b: WeatherSystem)

  constraints:
    - "Every relationship endpoint must resolve to a typed entity."
    - "Confidence must be within [0,1]."
    - "Measurements must declare units, timestamps, locations and provenance."
    - "Compare observations only after checking units, vertical levels, time windows and spatial reference."
    - "Forecast issue time and valid time are distinct."
    - "Do not infer causation solely from correlation or temporal ordering."
    - "Meteorological association and influence are not automatically transitive."
    - "Do not present a forecast as a verified observation."

  inference:
    rule observation_support:
      if observed_in(o,r) and valid(o)
      then evidence_for_region(o,r)
      confidence: "dependent on calibration, representativeness and provenance"
    rule temporal_precedence:
      if precedes(a,b) and precedes(b,c) and compatible_time_basis(a,b,c)
      then precedes(a,c)
      confidence: "preserve original measurement uncertainty"
    rule forecast_comparison:
      if predicts(f,s) and observation_matches_forecast(o,f)
      then forecast_verification_candidate(f,o)
      confidence: "requires matched location, variable, altitude and valid time"

  SEMANTIC_EQUIVALENCE:
    - "Normalise meteorological variable names against versioned controlled vocabularies."
    - "Distinguish synonymous terms from physically distinct atmospheric phenomena."
    - "Preserve units, vertical coordinates, timestamps and observation methods."

  CONFIDENCE:
    range: [0,1]
    factors: [instrument_uncertainty, calibration, spatial_representativeness, temporal_alignment, source_reliability, model_skill]
    policy: "Do not increase confidence solely through chained inference; retain uncertainty and independent evidence."

  VALIDATION:
    - "Validate identifiers, entity types, timestamps, coordinates, units and provenance."
    - "Check physically plausible measurement ranges with context-dependent thresholds."
    - "Flag contradictory observations without silently discarding either source."
    - "Separate measured values, analysed fields and model forecasts."

  FLOW_HASH:
    algorithm: "SHA-256"
    input: "canonicalised ontology version, typed assertions, rules and provenance"
    note: "Compute hash at execution; no hash value is claimed here."

  UPDATE_MODEL:
    strategy: "versioned, provenance-preserving incremental update"
    steps: [ingest, normalise, validate, compare, reconcile, recompute_inferences, publish]
    rollback: true

  AI_CONSUMPTION:
    representation: "typed meteorological knowledge graph with evidence-backed relationships"
    outputs: [entity_links, relation_triples, observation_records, forecast_links, uncertainty_annotations, provenance_records]
    safeguards: [no_unsupported_causal_claims, distinguish_forecast_from_observation, preserve_units_time_and_location]
}

END FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ