Skip to main content

Biomedical Research Domain Ontology

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

flow "BiomedicalResearchDomainOntology" v1.0 {
  ontology:
    id: "biomedical-research-domain-ontology"
    parent: "medical-domains"
    purpose: "Represent biomedical research questions, experimental designs, biological samples, measurements, findings and reproducible evidence relationships."

  types:
    ResearchProject: {id: string, title: string, objective: string, provenance: string}
    ResearchQuestion: {id: string, statement: string, project_id: string}
    Hypothesis: {id: string, proposition: string, testable: bool, status: enum[proposed, supported, refuted, inconclusive]}
    Study: {id: string, design: enum[observational, experimental, clinical_trial, computational, systematic_review, other], protocol_id: string, ethics_approval: string?}
    Protocol: {id: string, version: string, methods: string[], preregistration: string?}
    BiologicalSample: {id: string, type: string, source_id: string?, consent_scope: string?, collection_time: datetime?}
    Dataset: {id: string, schema: string, access_level: string, provenance: string}
    Measurement: {id: string, variable: string, value: number?, unit: string?, uncertainty: number?, method: string, timestamp: datetime?}
    Finding: {id: string, claim: string, effect_size: number?, uncertainty: string?, evidence_ids: string[]}
    Publication: {id: string, identifier: string?, version: string, status: string}
    ResearchRelationship: {id: string, subject: string, predicate: string, object: string, confidence: number, evidence: string[], context: string?}

  predicates:
    investigates(project: ResearchProject, question: ResearchQuestion)
    tests(study: Study, hypothesis: Hypothesis)
    follows_protocol(study: Study, protocol: Protocol)
    uses_sample(study: Study, sample: BiologicalSample)
    produces_dataset(study: Study, dataset: Dataset)
    records(dataset: Dataset, measurement: Measurement)
    supports(finding: Finding, hypothesis: Hypothesis)
    contradicts(finding: Finding, hypothesis: Hypothesis)
    reports(publication: Publication, finding: Finding)
    replicates(study_a: Study, study_b: Study)

  constraints:
    - "All relationship endpoints must resolve to typed entities."
    - "Confidence must be within [0,1] and must not be equated with statistical significance."
    - "Measurement units, methods, calibration and uncertainty must be recorded where applicable."
    - "Observational association does not establish causation."
    - "Ethics approval, consent scope, access restrictions and privacy safeguards must be checked when applicable."
    - "Do not infer replication from similar findings without compatible protocols and independent evidence."
    - "Distinguish exploratory findings from preregistered confirmatory results."

  inference:
    rule evidence_link:
      if tests(study,hypothesis) and produces_dataset(study,dataset) and reports(publication,finding)
      and finding_derived_from(finding,dataset)
      then traceable_evidence(hypothesis,finding,study,dataset,publication)
      confidence: "evaluate provenance, study design and analysis quality"
    rule replication_candidate:
      if tests(study_a,hypothesis) and tests(study_b,hypothesis)
      and independent(study_a,study_b) and compatible_protocols(study_a,study_b)
      then candidate_replication(study_a,study_b)
      confidence: "requires outcome comparison and methodological review"
    rule evidence_conflict:
      if supports(finding_a,hypothesis) and contradicts(finding_b,hypothesis)
      then flag_conflicting_evidence(hypothesis,finding_a,finding_b)
      confidence: "preserve both findings; do not auto-resolve"

  SEMANTIC_EQUIVALENCE:
    - "Map biomedical concepts to versioned authoritative vocabularies where applicable."
    - "Distinguish exact identity, synonymy, relatedness and broader/narrower concepts."
    - "Preserve species, tissue, experimental condition, unit and time context."

  CONFIDENCE:
    range: [0,1]
    factors: [study_design, measurement_quality, sample_size, bias_risk, reproducibility, provenance, independent_replication]
    policy: "Do not increase confidence solely through chained inference or repeated dependent evidence."

  VALIDATION:
    - "Check identifiers, endpoint types, protocol versions, study design and provenance."
    - "Check sample provenance, consent, access permissions and applicable ethical constraints."
    - "Validate units, missing data, uncertainty and analytical assumptions."
    - "Flag conflicting evidence, unsupported causal claims and non-reproducible analyses."

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

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

  AI_CONSUMPTION:
    representation: "typed biomedical research knowledge graph with evidence-backed assertions"
    outputs: [research_links, study_relationships, evidence_traces, uncertainty_annotations, provenance_records, validation_flags]
    safeguards: [protect_sensitive_data, respect_consent, no_unsupported_causal_claims, no_automated_clinical_decisions, preserve_conflicting_evidence]
}

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