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
Download Code
Copy to Clipboard