Downloads
The namespace IRI content-negotiates: Accept: text/html returns
this page, any RDF media type returns the Turtle. Files are also served
directly, with CORS enabled so browser-based tooling can fetch them.
| Resource | File | Type | Size |
|---|---|---|---|
| Ontology | record-ontology.ttl | text/turtle | 18.3 kB |
| Example — the cogito | examples/cogito.ttl | text/turtle | 3.5 kB |
| Example — narrative DAG | examples/historical-narrative.ttl | text/turtle | 5.6 kB |
| Example — Neptune | examples/neptune-discovery.ttl | text/turtle | 15.6 kB |
| Example — the atom, 1885–1927 | examples/bohr-atom.ttl | text/turtle | 21.3 kB |
| Example — triangle described | examples/triangle-described.ttl | text/turtle | 5.3 kB |
| Example — the promontory | examples/saccheri.ttl | text/turtle | 7.7 kB |
| Example — the war on Mars | examples/kepler-mars.ttl | text/turtle | 9.8 kB |
| Example — escalation | examples/cuban-missile.ttl | text/turtle | 13.7 kB |
| Example — consent by omission | examples/tonkin-consent.ttl | text/turtle | 10.8 kB |
| Example — arithmetic properties | examples/arith-properties.ttl | text/turtle | 11.1 kB |
| Example — trigonometry | examples/trig-basics.ttl | text/turtle | 7.2 kB |
| Example — orbital mechanics | examples/orbital-mechanics.ttl | text/turtle | 11.3 kB |
curl -H "Accept: text/turtle" https://epistemic-ontology.net/record
Namespace
A hash namespace: dereferencing any term — say …/record#SelfVerifying —
returns the whole ontology document, and your client resolves the fragment. The
recommended prefix is rec:.
@prefix rec: <https://www.epistemic-ontology.net/record#> .
Every worked example is dereferenceable too, under a systematic IRI:
@prefix ex: <https://www.epistemic-ontology.net/record/examples/neptune-discovery#> .
The founding constraint
No class may be defined by a relation to an object that lies outside all records.
This is the rule the whole ontology is shaped by. Records are named by what the agent holds — form, warrant, givenness, relations to other records, pragmatic adequacy — never by a certified correspondence to a thing-in-itself. It is built for an agent (a person or an AI) and never steps outside one.
The one class, and the one non-record
| Term | Meaning |
|---|---|
rec:Record |
The single class — a form, in a carrier, for an agent, at a level of abstraction. Records are made of Records. |
rec:Continuum |
The one thing that is not a record: the undivided ground a record's support is individuated from (rec:TheContinuum; disjoint from rec:Record). |
rec:Agent |
A person or an AI — the one a record is for, and the one who individuates a record's support from the Continuum. |
There is deliberately no Form class. The form-in-itself is no more
available to an agent than the thing-in-itself; a Form class would be the
formal apple. Everything an agent holds is a Record.
Warrant — a triad, one value per limit
Warrant is an attribute, not a kind, so patchworks decompose: a real artifact is formal at some joints and conventional at others.
| Value | True in virtue of | Reaches toward |
|---|---|---|
rec:Formal |
form — deductive; the triangle verifies itself | the form-in-itself (excluded) |
rec:Empirical |
givenness — the senses, an instrument; defeasible | the world-in-itself (excluded) |
rec:SelfVerifying |
the act of recording — the cogito | the Agent-in-itself — not excluded |
Two limits are excluded and never instantiated as classes. The third is not: the Agent is the one thing given to itself, and self-verifying warrant is exactly the warrant that reaches it.
Inference, support, metadata
| Term | Meaning |
|---|---|
rec:Inference |
Defined, never a primitive kind: a Record with rec:hasPremise and rec:concludes. Carries a rec:hasForce — truth-preserving or ampliative. Chains form a derivation DAG. |
rec:hasProvenance · rec:hasLocus |
The dissolved carrier: provenance (whence) plus locus (where/when, agent-relative). There is no Carrier class. |
rec:formulation |
The form as held — the first datatype property (new in v0.6.0): a formula, a constraint list, a text. Opaque to the reasoner by design. |
rec:metadataOf |
A record about a record (sub-property of rec:directedToward). There is no metadata layer — only records directed at records. |
| the cogito | Not a class but a pattern: self-verifying warrant + reflexive provenance + self-directedness. It halts the support-regress in the warrant, not in a thing. |
The regress "what carries the carrier?" is not answered with another entity. It stops at a warrant. Credit Descartes for the existence, Hintikka for the warrant — and not the res cogitans: the cogito certifies that the agent is, never what it is.
Exercise or exorcise
hasWarrant rec:Formal is a claim, not a credential. A formally warranted
record's formulation should be a description that can be run:
claim → exercise (run the description) → confirmed or exorcised
Never exercised means testimonially held — which is how most mathematics is in fact carried. A failed exercise expels the pretender, not the record: the document survives, records about it survive, but it can no longer transmit support, and everything resting on it cascades away. Kempe's 1879 "proof" of the four-colour theorem stood eleven years until Heawood exercised it; as of 1885, trusting it was justified.
The engine — dynamics over the statics
OWL DL is monotonic: it cannot retract. So all dynamics live in a
computational layer over the static ontology — the engine/ package in the
source repository, never axioms in the Turtle. The same rule strikes twice, and
symmetrically: dynamics live over the statics because DL is monotonic;
computation lives over the statics because DL is decidable.
- Revision log as the carrier of moments — an append-only stream of ground assertions, retractions and decisions. Log position is order-derived time, and any state is computable as of any moment. Derived records never enter the log; they regenerate by replay.
- Forks and corroboration — structural detection deliberately over-detects, so rivalry is declared, as a logged decision. Corroboration is temporal: only empirical evidence first asserted after a fork opened can collapse it. The losing branch is eclipsed, never deleted.
- Fidelity — not probability-of-truth (that would be the apple in numeric dress) but invariance under the web's own dynamics, computed from the ATMS label: a record's minimal environments. Scalars are purpose-relative projections.
- Identification — rivals proven equivalent make the fork dissolve rather than collapse, and their environments pool. Matrix versus wave mechanics (1926) is the type case.
Stance: between the OWL/DL and SKOS camps
DL-in-form, ecumenical-in-content. Every concrete choice here is the DL
choice: defined classes, reasoner re-derivation, owl:disjointWith with a
consistency check, rdfs:label rather than skos:prefLabel, and a deliberate
refusal to import SKOS because it is OWL Full.
But the standing schism is demoted from a choice of framework to the
rec:hasWarrant attribute: a DL hierarchy is a record warranted formally
(subsumption); a thesaurus is one warranted empirically (community-fixed,
defeasible — skos:broader is a curatorial edge, not a deductive one). A real
scientific taxonomy is both. The ontology does not take a side; it represents
the axis the camps fight over.
Validation
pip install -r requirements-dev.txt
python scripts/validate.py
A pure-Python OWL 2 RL reasoner (owlrl, no Java) checks four things:
- Defined-class entailment — strip the asserted
Inferencetype and confirm the definition re-derives it, with a negative control. - Cogito pattern — the pattern holds, and a self-verifying promise is correctly not conflated with it.
- Consistency — no individual is both
RecordandContinuum. - Sub-property entailment — every
metadataOfedge entailsdirectedToward.
Status and open items
The conceptual source of truth is ROOT.md
in the source repository; this page summarises what is settled. Three markers
run through it — settled (encoded in the Turtle), prototyped (working
code in engine/), unbuilt (recorded as horizon).
Known open items: composition transitivity is left off on purpose; the escalation and formation layer is recorded as horizon, not vocabulary; the knowledge-automaton — a groomed web whose formal interior regenerates by deduction — is an engine/asset question with no vocabulary proposed.
Cite
Cite the namespace IRI, not a file path: the IRI is the permanent identifier and will keep resolving as serializations change.
@misc{recordontology2026,
title = {The Record Ontology: A Domain-Neutral Model of Warranted Record-Structure},
author = {Hinchley, Ron},
year = {2026},
version = {0.6.0},
url = {https://epistemic-ontology.net/record}
}