Skip to main content

Information Flow Ontology

Information Relationships
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 10 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Information Flow Ontology
DOMAIN: Relationship Ontologies / Information Relationships
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/information-relationships/information-flow-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

flow "InformationFlowOntology" v1.0 {
  ontology:
    id: "information-flow-ontology"
    parent: "information-relationships"
    purpose: "Represent, trace and validate the movement and transformation of information among sources, processes and recipients."

  types:
    Actor: {id: string, role: enum[source, intermediary, recipient, processor, observer]}
    InformationItem: {id: string, content_type: string, classification: string?, version: string?, provenance: string}
    Channel: {id: string, medium: string, protocol: string?, security_level: string?}
    Process: {id: string, operation: string, input_ids: string[], output_ids: string[]}
    Transfer: {id: string, item_id: string, from_id: string, to_id: string, channel_id: string?, timestamp: datetime?, confidence: number, evidence: string[]}
    Transformation: {id: string, input_ids: string[], output_ids: string[], process_id: string, lossiness: enum[lossless, lossy, unknown]}
    FlowPath: {id: string, transfer_ids: string[], provenance: string}

  predicates:
    originates_from(item: InformationItem, actor: Actor)
    transmitted_via(transfer: Transfer, channel: Channel)
    flows_to(source: Actor, destination: Actor, item: InformationItem)
    processed_by(item: InformationItem, process: Process)
    derived_from(output: InformationItem, input: InformationItem)
    received_by(item: InformationItem, actor: Actor)
    precedes_transfer(first: Transfer, second: Transfer)
    depends_on(item: InformationItem, upstream: InformationItem)

  constraints:
    - "All relationship endpoints must resolve to declared typed entities."
    - "Transfer confidence must be in [0,1]."
    - "A declared transfer must identify an information item, source and destination."
    - "Do not infer successful receipt solely from transmission."
    - "Distinguish data flow, control flow, semantic dependency and causal influence."
    - "Preserve origin, timestamps, versions and transformation lineage where available."
    - "Do not infer unchanged content through a lossy transformation."
    - "Access-control and privacy policies must be checked before redistribution."

  inference:
    rule trace_lineage:
      if derived_from(b,a) and derived_from(c,b)
      then indirectly_derived_from(c,a)
      confidence: "retain lineage and transformation uncertainties"
    rule route_candidate:
      if flows_to(a,b,item) and flows_to(b,c,item) and transfer_verified(a,b,item) and transfer_verified(b,c,item)
      then routed_via(a,c,b,item)
      confidence: "dependent on both verified transfers"
    rule process_output:
      if processed_by(input,p) and process_output(p,output)
      then derived_from(output,input)
      confidence: "conditional on validated process mapping"

  SEMANTIC_EQUIVALENCE:
    - "Normalise identifiers and accepted aliases against versioned vocabularies."
    - "Separate identical payloads from semantically equivalent content."
    - "Preserve encoding, schema, version, context and transformation history."

  CONFIDENCE:
    range: [0,1]
    factors: [source_reliability, transfer_integrity, channel_observability, transformation_fidelity, evidence_independence]
    policy: "Do not increase confidence solely through multi-hop chaining."

  VALIDATION:
    - "Check endpoint types, references, directionality and evidence."
    - "Verify transfer ordering and lineage without assuming global clock synchronisation."
    - "Flag missing provenance, broken paths, ambiguous identity and policy violations."
    - "Retain uncertainty for unobserved transfers and unverified receipt."

  FLOW_HASH:
    algorithm: "SHA-256"
    input: "canonicalised ontology version, typed assertions, inference 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, reconcile, update_lineage, recompute_inferences, publish]
    rollback: true

  AI_CONSUMPTION:
    representation: "typed directed information-flow graph with evidence-backed edges"
    outputs: [flow_triples, transfer_paths, lineage_records, transformation_records, confidence_annotations, provenance_records]
    safeguards: [no_unverified_delivery_claims, preserve_lineage, enforce_access_policy, distinguish_correlation_from_causation]
}

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