Skip to main content

Relationship Framework Ontology

Foundations of Relationships
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 08 October 2026
Audio Overview
FLOW ALGEBRA
Relationship Framework Ontology
Kireth Semantic Library
Authors: Mark Anthony Higgins — Sky (Recursive AI)
Source: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/foundations-of-relationships/relationship-framework-ontology.html

flow "RelationshipFrameworkOntology" v1.0

ONTOLOGY:
  id: relationship_framework_ontology
  domain: foundations_of_relationships
  purpose: Define a typed, verifiable framework for representing, interpreting, composing and updating relationships between entities.

ENTITY_TYPES:
  Entity: {id: string, type: string, attributes: map}
  Relationship: {id: string, predicate: string, source: Entity, target: Entity, context: Context, confidence: float}
  Context: {id: string, domain: string, temporal_scope: optional, provenance: optional}
  Constraint: {id: string, expression: boolean, severity: enum[required, advisory]}
  Evidence: {id: string, source: string, timestamp: optional, reliability: float}

RELATIONSHIP_TYPES:
  hierarchical: [is_a, part_of, subclass_of]
  associative: [related_to, interacts_with, depends_on]
  causal: [causes, enables, inhibits]
  temporal: [precedes, overlaps, follows]
  semantic: [equivalent_to, broader_than, narrower_than]
  structural: [contains, connects_to, maps_to]

TYPE_RULES:
  R1: relationship.source and relationship.target MUST resolve to declared entities.
  R2: relationship.predicate MUST resolve to a declared relation type or an explicitly registered extension.
  R3: domain(predicate) MUST accept type(source).
  R4: range(predicate) MUST accept type(target).
  R5: relationship.confidence MUST be in [0.0, 1.0].
  R6: required constraints MUST hold before a relationship is accepted.
  R7: missing evidence MUST NOT be interpreted as evidence of absence.

RELATIONSHIP_PROPERTIES:
  symmetric(p): p(a,b) => p(b,a)
  antisymmetric(p): p(a,b) AND p(b,a) => a=b
  transitive(p): p(a,b) AND p(b,c) => p(a,c)
  inverse(p,q): p(a,b) <=> q(b,a)
  reflexive(p): p(a,a)
  irreflexive(p): NOT p(a,a)
  NOTE: Properties apply only when explicitly declared for a predicate.

OPERATIONS:
  define_entity(id,type,attributes) -> Entity
  define_relation(predicate,domain,range,properties) -> RelationSchema
  assert_relation(source,predicate,target,context,evidence) -> Relationship
  validate_relation(relationship,schema,constraints) -> ValidationResult
  infer_relations(graph,rules) -> InferredRelationshipSet
  query_relations(graph,pattern,context) -> RelationshipSet
  retract_relation(id,reason) -> UpdatedGraph

COMPOSITION:
  compose(r1,r2) -> r3 ONLY IF an authorised composition rule exists.
  Example: part_of(a,b) AND part_of(b,c) => part_of(a,c), if part_of is declared transitive in the active domain.
  Prevent unrestricted chaining of causal, associative or semantic links.

SEMANTIC_EQUIVALENCE:
  equivalent(a,b,context) REQUIRES matching intended meaning and compatible domain constraints.
  Similar labels alone do not establish equivalence.
  Preserve distinction between identity, equivalence and relatedness.

CONFIDENCE:
  evidence_score := aggregate_independent_evidence(evidence, provenance, reliability)
  inferred_confidence := calibrated_rule_score(premises, rule_reliability)
  REQUIRE: inferred confidence does not exceed justified evidential support.
  Avoid treating correlated evidence as independent.

CONFLICT_RESOLUTION:
  detect contradictory relations, incompatible types and temporal inconsistencies.
  preserve provenance and competing claims until resolved.
  prioritise verified evidence and explicit domain rules over unsupported assertions.

FLOW_HASH:
  canonicalise(entity_ids, predicates, contexts, rules, version)
  hash := SHA256(canonical_representation)
  use hash for integrity checks and change detection; hash is not proof of semantic truth.

UPDATE_MODEL:
  on new_entity: validate -> register -> index
  on new_relation: type_check -> constraint_check -> provenance_check -> assert -> recompute_affected_inferences
  on changed_rule: version -> revalidate_dependents -> invalidate_stale_inferences
  on retraction: preserve audit_record -> remove_assertion -> recompute_dependents

AI_CONSUMPTION:
  parse typed entities and relations.
  enforce explicit relation semantics and declared inference rules.
  return assertions separately from inferences.
  expose evidence, provenance, context, confidence and uncertainty.
  reject unsupported semantic equivalence and invalid relation composition.

VALIDATION:
  checks: [schema_integrity, endpoint_existence, domain_range, constraint_satisfaction, provenance_integrity, inference_consistency, version_integrity]
  result: PASS only when all required checks pass; otherwise FAIL with diagnostics.

OUTPUT:
  typed_relationship_graph
  validated_assertions
  inferred_relationships
  conflict_report
  provenance_log
  flow_hash

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