Skip to main content

Gene Expression Entity Ontology

Gene Expression Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 15 October 2026
Audio Overview
FLOW ALGEBRA
GENE EXPRESSION ENTITY ONTOLOGY
Kireth Semantic Library | Version 1.0 | 2026-10-15
Source: https://kirethresearch.org/booksai-core/entity-graph/biological-entities/gene-expression-entities/gene-expression-entity-ontology.html
Status: Domain-grounded formalisation; source page not independently verified.
Authors: Mark Higgins — Sky (Recursive AI)

01. PURPOSE
flow "GeneExpressionEntityOntology" v1.0
  domain: molecular_biology
  scope: transcription, RNA_processing, translation, regulation, expression_measurement
  principle: distinguish molecular entities, biological processes, observations, and inferred states

02. TYPE SYSTEM
type Entity = {id: URI, label: String, organism: Taxon?, provenance: Evidence[]}
type Gene = Entity & {locus: GenomicInterval?, biotype: String?}
type Transcript = Entity & {gene: Gene?, sequence: RNASequence?, isoform: String?}
type Protein = Entity & {source_transcript: Transcript?, accession: String?}
type RegulatoryElement = Entity & {interval: GenomicInterval?, class: String}
type Regulator = Entity & {class: String, target: Entity?}
type ExpressionEvent = {process: Process, input: Entity[], output: Entity[], context: Context}
type Context = {cell_type: String?, tissue: String?, condition: String?, time: Time?, species: Taxon?}
type ExpressionObservation = {target: Entity, assay: String, value: Number?, unit: String?, context: Context, evidence: Evidence}
type Evidence = {source: URI?, method: String?, date: Date?, quality: Number?}
type Confidence = Number where 0.0 <= value <= 1.0

03. CORE ENTITIES
entity GeneExpressionEntity : Entity
entity Gene : GeneExpressionEntity
entity Promoter : RegulatoryElement
entity Enhancer : RegulatoryElement
entity Silencer : RegulatoryElement
entity TranscriptionFactor : Regulator
entity RNA_Polymerase : Regulator
entity NascentRNA : Transcript
entity PreMRNA : Transcript
entity MatureMRNA : Transcript
entity NonCodingRNA : Transcript
entity Ribosome : Entity
entity TransferRNA : Entity
entity ProteinProduct : Protein
entity ExpressionMeasurement : -ExpressionObservation
entity ChromatinState : Entity
entity EpigeneticMark : Entity

04. TYPED RELATIONSHIPS
relation transcribed_from(Transcript, Gene)
relation transcribed_by(Transcript, RNA_Polymerase)
relation processed_into(Transcript, Transcript)
relation translated_into(Transcript, Protein)
relation binds_to(Regulator, RegulatoryElement)
relation regulates(Regulator, Gene)
relation influences(RegulatoryElement, Gene)
relation occurs_in(ExpressionEvent, Context)
relation measured_by(Entity, ExpressionObservation)
relation supported_by(Entity, Evidence)
relation has_isoform(Gene, Transcript)
relation affects_chromatin(EpigeneticMark, ChromatinState)

05. BIOLOGICAL PROCESS FLOWS
flow transcription:
  input: [Gene, RNA_Polymerase, NucleotideSubstrates]
  output: [NascentRNA]
  guard: promoter_accessible AND transcription_initiation_supported
  note: transcription is not equivalent to protein production

flow eukaryotic_mRNA_processing:
  input: [PreMRNA]
  operations: [capping, splicing, three_prime_end_processing]
  output: [MatureMRNA]
  guard: organism_and_transcript_context_support_processing
  note: alternative_splicing_may_produce_multiple_isoforms

flow translation:
  input: [CodingMRNA, Ribosome, ChargedTRNAs]
  output: [Polypeptide]
  guard: initiation_site_valid AND reading_frame_defined
  note: noncoding_RNA_is_not_assumed_to_be_translated

flow expression_regulation:
  input: [RegulatoryElement, Regulator, Gene, Context]
  output: [ExpressionChange?]
  rule: effect_is_context_dependent
  note: binding_alone_does_not_prove_functional_regulation

06. INFERENCE RULES
rule R01:
  IF transcribed_from(t,g) AND verified(t)
  THEN candidate_expression_product(g,t)
  CONFIDENCE: propagate_evidence(t,g)

rule R02:
  IF processed_into(pre,mature) AND transcribed_from(pre,g)
  THEN candidate_transcribed_from(mature,g)
  CONFIDENCE: min(confidence(pre,mature),confidence(pre,g))

rule R03:
  IF translated_into(m,p) AND coding(m)
  THEN protein_product_candidate(p,m)
  GUARD: translation_evidence_present

rule R04:
  IF binds_to(tf,element) AND influences(element,g)
  THEN candidate_regulatory_link(tf,g)
  GUARD: do_not_infer_activation_or_repression_without_directional_evidence

rule R05:
  IF expression_measurement(g,assay,context)
  THEN expression_observed(g,context)
  GUARD: assay_target_specificity AND quality_control_passed
  NOTE: observation_does_not_imply_causation

07. CLASSIFICATION
class TranscriptionEntity: [Gene, Promoter, RNA_Polymerase, TranscriptionFactor]
class RNAProcessingEntity: [PreMRNA, Spliceosome, MatureMRNA]
class TranslationEntity: [CodingMRNA, Ribosome, TransferRNA, ProteinProduct]
class RegulatoryEntity: [Enhancer, Silencer, ChromatinState, EpigeneticMark]
class MeasurementEntity: [ExpressionMeasurement, Assay, Evidence]

08. VALIDATION CONSTRAINTS
constraint V01: each Entity.id MUST be unique within its namespace
constraint V02: every inferred edge MUST retain provenance
constraint V03: genomic coordinates MUST declare reference assembly and coordinate convention
constraint V04: -expression observations MUST specify assay and biological context when available
constraint V05: RNA abundance MUST NOT be treated as identical to protein abundance
constraint V06: regulatory effect direction MUST NOT be assumed from physical binding
constraint V07: evidence from distinct species MUST NOT be transferred without orthology qualification
constraint V08: missing measurements MUST NOT be represented as zero expression
constraint V09: alternative isoforms MUST retain transcript-level identity
constraint V10: transcription and translation MUST remain distinct processes

09. RECURSIVE REASONING
flow recursive_expression_trace(entity, depth, visited):
  IF depth <= 0 OR entity IN visited: RETURN []
  visited := visited UNION {entity}
  edges := validated_outgoing_relationships(entity)
  RETURN edges + CONCAT(
    recursive_expression_trace(edge.target, depth-1, visited)
    FOR edge IN edges
  )
  safeguards: [cycle_detection, max_depth, provenance_retention, confidence_decay]

10. CONFIDENCE
CONFIDENCE:
  range: [0.0,1.0]
  evidence_factors: [assay_quality, reproducibility, target_specificity, context_match]
  propagation: conservative_minimum_or_calibrated_model
  prohibition: do_not_treat_confidence_as_a_measured_probability_without_calibration
  missing_evidence: unknown_not_false

11. SEMANTIC_EQUIVALENCE
SEMANTIC_EQUIVALENCE:
  "gene expression" ~ "expression of a gene" WHEN biological_context_matches
  "mRNA abundance" != "protein abundance"
  "transcription" != "translation"
  "gene" != "transcript"
  "transcript isoform" != "gene locus"
  "differential expression" != "causal regulation"
  equivalence_policy: identity_only_if_entity_type_and_context_align

12. FLOW_HASH
FLOW_HASH:
  algorithm: SHA-256
  canonical_fields: [flow_name, version, entity_types, relationships, rules, constraints]
  canonicalisation: stable_key_order + normalised_UTF8 + stable_whitespace
  computation: SHA256(canonical_serialisation)
  value: computed_at_ingestion
  note: no_uncomputed_digest_is_presented_as_verified

13. UPDATE_MODEL
UPDATE_MODEL:
  strategy: append_only_versioned_changes
  triggers: [new_assay, revised_annotation, new_isoform, changed_reference_assembly, corrected_relationship]
  preserve: [prior_versions, provenance, timestamps, confidence_history]
  on_update: [validate, compare, recompute_inferences, regenerate_flow_hash]
  rollback: restore_last_valid_version

14. AI_CONSUMPTION
AI_CONSUMPTION:
  input: typed_graph_with_provenance
  output: contextualised_expression_claims
  permitted: [entity_resolution, graph_traversal, hypothesis_generation, evidence_summarisation]
  required: [confidence_reporting, context_preservation, uncertainty_disclosure]
  prohibited: [unsupported_causal_claims, fabricated_measurements, silent_species_transfer]
  explainability: provide_rule_path_and_evidence_for_each_derived_claim

15. EXAMPLE EXECUTION
example:
  gene: G1
  transcript: T1
  protein: P1
  facts:
    - transcribed_from(T1,G1)
    - translated_into(T1,P1)
    - coding(T1)
  inference:
    - candidate_expression_product(G1,T1)
    - protein_product_candidate(P1,T1) IF translation_evidence_present
  caution: facts_are_illustrative_not_empirical_observations

16. QUALITY GATES
quality_gate schema_validity: required
quality_gate biological_context: required_for_contextual_claims
quality_gate source_traceability: required_for_observational_claims
quality_gate rule_termination: required
quality_gate no_unjustified_causality: required
quality_gate version_integrity: required

17. OUTPUT CONTRACT
emit:
  ontology: GeneExpressionEntityOntology
  entities: typed
  relationships: validated
  inferences: evidence_linked
  confidence: calibrated_or_explicitly_heuristic
  semantic_equivalence: context_aware
  flow_hash: compute_on_export
  update_model: versioned
  ai_consumption: explainable

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