FLOW ALGEBRA
TITLE: System Relationship Ontology
DOMAIN: Relationship Ontologies / System Relationships
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/system-relationships/system-relationship-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "SystemRelationshipOntology" v1.0 {
ontology:
id: "system-relationship-ontology"
parent: "system-relationships"
purpose: "Represent evidence-backed relationships among systems, components, interfaces, functions, resources and operational contexts."
types:
System: {id: string, name: string, boundary: string?, version: string?, lifecycle_state: string?}
Component: {id: string, kind: string, system_id: string?, version: string?}
Interface: {id: string, protocol: string?, direction: enum[input, output, bidirectional], specification: string?}
Function: {id: string, description: string, preconditions: string[], postconditions: string[]}
Resource: {id: string, kind: string, capacity: number?, unit: string?}
Context: {id: string, environment: string?, valid_from: datetime?, valid_to: datetime?}
Evidence: {id: string, source: string, timestamp: datetime?, method: string?, provenance: string}
Relationship: {id: string, subject: string, predicate: string, object: string, context_id: string?, confidence: number, evidence_ids: string[]}
predicates:
contains(system: System, component: Component)
part_of(component: Component, system: System)
connects_to(a: Component, b: Component, interface: Interface)
depends_on(a: Component, b: Component)
provides(component: Component, function: Function)
consumes(component: Component, resource: Resource)
interacts_with(a: System, b: System)
constrained_by(system: System, requirement: string)
operates_in(system: System, context: Context)
verified_by(relationship: Relationship, evidence: Evidence)
constraints:
- "All relationship endpoints must resolve to typed entities."
- "Confidence values must be within [0, 1]."
- "Containment and part_of are inverse only for the same scope and time."
- "A system boundary and component membership must be versioned where they can change."
- "Do not infer direct dependency merely from shared system membership."
- "Do not infer interface compatibility from connectivity alone."
- "Dependencies are not automatically symmetric; cycles require explicit analysis."
- "Distinguish structural containment, functional dependence, control and ownership."
- "Evidence-backed claims must retain provenance and temporal context."
inference:
rule inverse_membership:
if contains(s,c)
then part_of(c,s)
confidence: "retain source evidence and context"
rule nested_membership:
if contains(s1,s2) and contains(s2,c) and compatible_boundaries(s1,s2,c)
then indirectly_contains(s1,c)
confidence: "preserve both membership assertions"
rule dependency_path:
if depends_on(a,b) and depends_on(b,c) and compatible_context(a,b,c)
then indirectly_depends_on(a,c)
confidence: "derived dependency; do not assert direct dependence"
rule evidence_trace:
if verified_by(r,e) and valid(e)
then evidence_for(r,e)
confidence: "evidence quality dependent"
SEMANTIC_EQUIVALENCE:
- "Align component, subsystem and system terminology using scoped definitions."
- "Distinguish exact identity from similar function, shared role or compatible interface."
- "Preserve model version, system boundary and operational context during mapping."
CONFIDENCE:
range: [0,1]
factors: [source_reliability, verification_quality, temporal_validity, interface_compatibility, model_assumptions, independent_replication]
policy: "Never increase confidence solely through multi-hop inference."
VALIDATION:
- "Check endpoint types, entity identifiers and referenced evidence."
- "Check interface specifications, resource units and lifecycle compatibility."
- "Flag containment cycles unless explicitly supported by the system model."
- "Detect inconsistent boundaries, incompatible versions and contradictory dependencies."
- "Preserve unresolved conflicts instead of silently merging assertions."
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, compare, reconcile, recompute_inferences, publish]
rollback: true
AI_CONSUMPTION:
representation: "typed system knowledge graph with evidence-backed relationships"
outputs: [system_entities, component_links, interface_relations, dependency_paths, uncertainty_annotations, provenance_records]
safeguards: [no_unsupported_dependencies, no_unqualified_identity_merges, preserve_context_and_versions, distinguish_direct_and_inferred_edges]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard