Skip to main content

Object Relationship Ontology

Knowledge Graph Relationships
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 10 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Object Relationship Ontology
DOMAIN: Knowledge Graph Relationships / RDF Object
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/knowledge-graph-relationships/object-relationship-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

flow "ObjectRelationshipOntology" v1.0 {
  ontology:
    id: "object-relationship-ontology"
    parent: "knowledge-graph-relationships"
    purpose: "Represent, validate and reason over RDF object positions in knowledge graph assertions."

  types:
    IRI: {value: string}
    BlankNode: {local_id: string, graph_scope: string}
    Literal: {lexical_form: string, datatype: IRI?, language: string?}
    Subject: union[IRI, BlankNode]
    Predicate: IRI
    Object: union[IRI, BlankNode, Literal]
    Graph: {id: string, version: string?, provenance: string?}
    Triple: {subject: Subject, predicate: Predicate, object: Object, graph: string?, evidence: string[], confidence: number?}
    Assertion: {id: string, triple: Triple, asserted_at: datetime?, source: string, status: enum[asserted, inferred, disputed, retracted]}

  predicates:
    object_of(o: Object, t: Triple)
    has_object(t: Triple, o: Object)
    refers_to(o: IRI, entity_id: string)
    typed_literal(o: Literal, datatype: IRI)
    language_tagged(o: Literal, language: string)
    in_graph(t: Triple, g: Graph)
    supported_by(t: Triple, evidence_id: string)

  constraints:
    - "Every RDF triple has exactly one object term, which is an IRI, blank node or literal."
    - "Subjects are IRIs or blank nodes; predicates are IRIs in standard RDF 1.1."
    - "Blank-node identifiers are scoped to their graph or dataset context and are not global identities."
    - "Literal datatype and language tag must conform to the chosen RDF profile."
    - "Language-tagged literals use rdf:langString; avoid conflicting datatype and language declarations."
    - "Literal equality, value equality, entity identity and lexical similarity are distinct."
    - "An RDF object term is not necessarily a physical object or an ontology class instance."
    - "Confidence annotations are assertion metadata, not native RDF truth values."

  inference:
    rule object_projection:
      if triple(s,p,o) and valid_rdf_term(o)
      then object_of(o, triple(s,p,o))
      confidence: "preserve assertion provenance"
    rule rdfs_range:
      if triple(s,p,o) and rdfs_range(p,c) and resource_term(o)
      then rdf_type(o,c)
      confidence: "only under an explicitly selected RDFS entailment regime"
    rule inverse_property:
      if triple(s,p,o) and inverse_of(p,q) and resource_term(o)
      then triple(o,q,s)
      confidence: "only under a declared ontology entailment regime"
    rule no_literal_subject_inversion:
      if literal(o)
      then prohibit_inferred_subject(o)
      confidence: "standard RDF 1.1 restriction"

  SEMANTIC_EQUIVALENCE:
    - "Normalise IRIs conservatively; do not merge distinct identifiers by spelling alone."
    - "Preserve literal lexical forms, datatypes and language tags."
    - "Do not equate owl:sameAs with skos:exactMatch or textual similarity."
    - "Apply identity entailments only where evidence and the reasoning profile justify them."

  CONFIDENCE:
    range: [0,1]
    factors: [source_reliability, evidence_quality, entailment_regime, identity_resolution, temporal_validity]
    policy: "Propagate uncertainty without treating inferred assertions as independently verified facts."

  VALIDATION:
    - "Validate RDF term positions and IRI syntax."
    - "Check literal datatype lexical validity and language-tag consistency."
    - "Use SHACL or equivalent shapes for application-specific object constraints."
    - "Record provenance for asserted and inferred triples."
    - "Distinguish RDF graph consistency from closed-world application validation."

  FLOW_HASH:
    algorithm: "SHA-256"
    input: "canonicalised ontology version, RDF assertions, reasoning rules and provenance"
    note: "Use a specified RDF dataset canonicalisation method for blank nodes; compute at execution."

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

  AI_CONSUMPTION:
    representation: "typed RDF knowledge graph with evidence-backed object links"
    outputs: [object_terms, rdf_triples, typed_literals, entity_links, inference_records, provenance_records]
    safeguards: [no_unsupported_identity_merges, preserve_literal_datatypes, respect_blank_node_scope, retain_uncertainty]
}

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