FLOW ALGEBRA
TITLE: Provenance Relationship Ontology
DOMAIN: Information Relationships / Provenance
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/information-relationships/provenance-relationship-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.
flow "ProvenanceRelationshipOntology" v1.0 {
ontology:
id: "provenance-relationship-ontology"
parent: "information-relationships"
purpose: "Represent traceable origins, transformations, custody and evidence for information assets and assertions."
types:
Entity: {id: string, kind: enum[dataset, document, assertion, model, artefact, other], version: string?}
Agent: {id: string, kind: enum[person, organisation, software, instrument, other]}
Activity: {id: string, kind: string, started_at: datetime?, ended_at: datetime?, method: string?}
SourceRecord: {id: string, identifier: string, accessed_at: datetime?, checksum: string?, licence: string?}
ProvenanceAssertion: {id: string, subject: string, predicate: string, object: string, evidence: string[], confidence: number, asserted_at: datetime?, context: string?}
predicates:
was_derived_from(derived: Entity, source: Entity)
was_generated_by(entity: Entity, activity: Activity)
used(activity: Activity, entity: Entity)
was_associated_with(activity: Activity, agent: Agent)
was_attributed_to(entity: Entity, agent: Agent)
was_informed_by(later: Activity, earlier: Activity)
had_primary_source(entity: Entity, source: SourceRecord)
was_revision_of(newer: Entity, older: Entity)
constraints:
- "All provenance endpoints must resolve to declared typed entities."
- "Confidence must be within [0, 1]."
- "Preserve original source identifiers and distinguish source identity from content similarity."
- "Provenance edges must be evidence-backed and retain activity, agent and temporal context when available."
- "A derived-from relationship does not imply endorsement, correctness or complete copying."
- "Avoid cycles in version succession and flag suspicious derivation cycles for review."
- "Missing provenance must be marked unknown rather than fabricated."
- "Do not treat attribution as proof of authorship without independent evidence."
inference:
rule indirect_derivation:
if was_derived_from(a,b) and was_derived_from(b,c)
then has_ancestor_source(a,c)
confidence: "derived lineage; retain both evidence paths"
rule activity_source:
if was_generated_by(e,a) and used(a,s)
then possible_input_source(e,s)
confidence: "candidate only; usage alone does not prove derivation"
rule revision_lineage:
if was_revision_of(a,b) and was_revision_of(b,c)
then has_prior_revision(a,c)
confidence: "preserve intermediate versions"
SEMANTIC_EQUIVALENCE:
- "Normalise identifiers using versioned authority mappings when available."
- "Distinguish identical source, equivalent content, revision, derivative and citation."
- "Never collapse distinct provenance records merely because their labels match."
CONFIDENCE:
range: [0,1]
factors: [source_authenticity, chain_completeness, timestamp_integrity, independent_corroboration, transformation_transparency]
policy: "Do not manufacture certainty by chaining claims or counting dependent evidence as independent."
VALIDATION:
- "Check identifiers, endpoint types, chronology, evidence links and version consistency."
- "Verify supplied hashes against content when bytes are available."
- "Flag missing, contradictory, circular or unverifiable provenance."
- "Maintain audit records for corrections and disputed attributions."
FLOW_HASH:
algorithm: "SHA-256"
input: "canonicalised ontology version, assertions, provenance records, rules and source identifiers"
note: "Compute at execution; no hash value is claimed here."
UPDATE_MODEL:
strategy: "versioned, append-aware, provenance-preserving incremental update"
steps: [ingest, normalise, validate, compare, reconcile, recompute_lineage, publish]
rollback: true
AI_CONSUMPTION:
representation: "typed provenance knowledge graph with evidence-backed lineage edges"
outputs: [source_lineage, attribution_records, transformation_history, confidence_annotations, audit_trails]
safeguards: [no_invented_sources, no_unsupported_authorship_claims, preserve_versions, disclose_missing_evidence]
}
END FLOW ALGEBRA
Download Code
Copy to Clipboard