Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/theislampill/orthemology/llms.txt

Use this file to discover all available pages before exploring further.

Orthemology structures every auditable classification episode through a family of ten JSON Schema Draft 2020-12 documents. Each schema targets a distinct conceptual layer — from the raw occurrence identity, through governance tokens and evidence, all the way to per-claim robustness specifications. Understanding which schema carries which contract, and how they reference one another, is the prerequisite for authoring valid fixture files, running the validation suite, or extending the framework.
All ten schemas use JSON Schema Draft 2020-12 ("$schema": "https://json-schema.org/draft/2020-12/schema"). Validators must use a Draft 2020-12-capable implementation such as jsonschema>=4.18 with the referencing package for cross-schema $ref resolution.

Schema inventory

analysis.schema.json

Declared versioned analysis (R4 Declaration Contract D1). The explicit, versionable index of ground truth.

orthemma.schema.json

Versioned concrete occurrence with stable identity key, version, kind, and lineage edges.

metaortheme.schema.json

Repeatable governing standard type with a typed selector, declared state set, and a paired meta-policy.

metaorthemma.schema.json

Case-bound configuration token binding a single metaortheme type to a specific occurrence.

orthing-episode.schema.json

The full auditable episode record: occurrence, actor, evidence, warrant, policy, and verdicts.

verdict-record.schema.json

Verdict statuses keyed by semantic ID, pathway state, and per-claim adjudication.

claim-ledger.schema.json

Ordered claim list with analysis-relative assertions, residual obligations, and closure.

handoff.schema.json

Inter-episode handoff packet carrying state claims, evidence refs, and authority claims.

perturbation-spec.schema.json

Declared perturbation neighborhood for the ROBUST_NEIGHBORHOOD verdict.

reliability-spec.schema.json

Pre-outcome procedure reliability declaration for PROCEDURE_RELIABLE (V2b-P).

1. analysis.schema.json

A declared analysis A is the normative-but-provisional reference model (R4). It is the explicit, versionable index of ground truth: every constitutive component must be declared — either as a nonempty value or as an explicit typed disposition object. The compact form (analysis_id + version alone) is admissible only when a resolvable inherits_from parent is present. File path: schemas/analysis.schema.json
analysis_id
string
required
Unique identifier for this analysis. Survives version changes.
version
string
required
The edition of this analysis. Any change to a constitutive component produces a new version.
task
string | disposition
T = task(A) — what the analysis is for. Required (D1 full contract) unless inherits_from is present.
boundary
string | disposition
System boundary declaration. Required (D1 full contract) unless inherits_from is present.
repertoire_ref
string | disposition
Identifier of the active ortheme repertoire O_A. Required (D1 full contract) unless inherits_from is present.
evidence_repertoire
string[] | disposition
Declared evidence repertoire. Required (D1 full contract) unless inherits_from is present.
action_repertoire
string[] | disposition
Declared action repertoire. Required (D1 full contract) unless inherits_from is present.
loss
string | disposition
The loss function for this analysis. Required (D1 full contract) unless inherits_from is present.
hard_constraints
string[] | disposition
Non-negotiable constraints the analysis operates under. Required (D1 full contract) unless inherits_from is present.
horizon
string | disposition
Time or scope horizon for the analysis. Required (D1 full contract) unless inherits_from is present.
tolerance
number | string | disposition
Tolerance parameter ε_A. Required (D1 full contract) unless inherits_from is present.
representation_family
string | disposition
Rep_A — the declared representation family. Required (D1 full contract) unless inherits_from is present.
merger_family
string | disposition
Merger family for conflicting evidence. Required (D1 full contract) unless inherits_from is present.
governance_boundary
string | disposition
The governance authority whose requirements parameterize RequiredBy for this analysis. Required (D1 full contract) unless inherits_from is present.
inherits_from
object
Parent analysis reference. When present, the full D1 declaration contract is satisfied by the parent chain. Must resolve in the bundle (cross-record check).
axes
array
Factorized profile axes with exclusivity markings (Definition 10). Each axis has a name, exclusivity (alternatives | co-holding), and optional values.
Relationships: Referenced by orthing-episode.schema.json (inline analysis object), claim-ledger.schema.json (per-claim analysis object), and verdict-record.schema.json (index.analysis_id / index.analysis_version).

2. orthemma.schema.json

An orthemma is a versioned concrete occurrence — the thing being classified. It has a stable identity_key (κ) that survives changes, a version (v) identifying the current state, an optional kind, lineage edges tracking how it was produced, and a reified_from_episode pointer for cases cast as higher-audit occurrences. File path: schemas/orthemma.schema.json
identity_key
string
required
κ — which thing this is. Survives state/edition changes.
version
string
required
v — which state or edition of that thing.
kind
string
Domain kind: artifact, batch, position, directive, reified-episode, etc.
lineage
array
Labeled successor edges INTO this occurrence (Definition 6). Each item declares from_identity, from_version, action_label, and optionally producing_episode.
reified_from_episode
string | null
ι_n embedding: set when this occurrence is an episode cast as a higher-audit case.
Relationships: Embedded inside the occurrence field of orthing-episode.schema.json via $ref. Also anchors metaorthemma.schema.json tokens via their anchor object.

3. metaortheme.schema.json

A metaortheme μ is a repeatable governing standard type — the abstract, reusable specification that governs one component of a case. It must carry a typed selector (not a bare string), a declared state set, an explicit exclusivity marking, and exactly one paired meta-policy (inline meta_policy or policy_ref). A metaortheme without a paired meta-policy is not a metaortheme. File path: schemas/metaortheme.schema.json
mu_id
string
required
Unique identifier for this metaortheme type.
version
string
required
ver(μ) — recorded per episode so audits can scope editions.
governed_component
enum
required
One of O, I, E, D, R, V, W.
states
object
required
S_μ — declared in advance.
selector
object
required
select_μ — the state-selecting evidence procedure. A typed object with kind and description; bare strings are rejected.
exclusivity
enum
required
exclusive | overlapping | uncertain. When not exclusive, uncertainty_semantics is also required.
provenance
object
required
authority, warrant, and scope of this metaortheme.
meta_policy
string
π_μ — conduct conditional on the obtaining state. Either meta_policy or policy_ref must be present.
Relationships: Referenced by metaorthemma.schema.json tokens via of_type.mu_id / of_type.mu_version. Also cited by the governing_configuration.mu_refs array of orthing-episode.schema.json.

4. metaorthemma.schema.json

A metaorthemma μ̄ is a case-bound configuration token — an episode-local instantiation of exactly one metaortheme type (single-typing is the R4 rule). It binds case-specific values, names an independent binder role, declares a validity interval, and scopes the claims that depend on it. A token with no material binding is rejected by the M1 zero-burden rule. File path: schemas/metaorthemma.schema.json
token_id
string
required
μ̄_{e,j} identity. Globally unique across the bundle.
of_type
object
required
Exactly one metaortheme reference: mu_id + mu_version. Plural of_type is an unimplemented extension and is rejected.
analysis
object
required
Compatible(μ̄, A(e)) — binds case-specific values within the declared analysis.
anchor
object
required
The target occurrence: identity_key + version.
governed_component
enum
required
One of O, I, E, D, R, V, W.
binding
object
required
The case-specific binding map B. Must be nonempty (M1 zero-burden rule). Keys are domain-declared; values are scalars.
binder
object
required
Who made the binding. Requires actor, binding_warrant, and binding_time. Kept distinct from the designated executor.
validity
object
required
Must carry effective_from (or validity_unbounded_reason if undated governance is declared).
scope
object
required
The claims that depend on this token. Must carry claims, no_claim_dependency_reason, or external_scope.
Relationships: Embedded inside the meta_tokens array of orthing-episode.schema.json. The per_token_v3c array of verdict-record.schema.json records per-token GOV_TOKEN_ADEQUATE statuses keyed by token_id.

5. orthing-episode.schema.json

The orthing episode record is the central auditable artifact. It ties together an occurrence, an actor, a declared analysis, time, observations, evidence, warrant, policy, placement, and references to the claim ledger and verdict record. The record_mode field is the audit posture switch: audit-ready triggers the full conditional contract; minimal labels a partial trace honestly. File path: schemas/orthing-episode.schema.json See Episode Schema for full field documentation.
record_mode is the key switch. An audit-ready episode is held to the full contract: claim_ledger_ref and verdict_record_ref must be non-null; evidence must be non-empty or evidence_absent_reason must be declared; policy must be a non-empty string or policy_inapplicable_reason must be declared; and placement or candidates must be present.
Required fields: episode_id, record_mode, occurrence, actor, analysis, time, placement, observation, evidence, warrant, policy, verdict_record_ref. Relationships: Embeds orthemma.schema.json (via occurrence), metaorthemma.schema.json (via meta_tokens), handoff.schema.json (via handoffs_in / handoffs_out). References claim-ledger.schema.json via claim_ledger_ref and verdict-record.schema.json via verdict_record_ref.

6. verdict-record.schema.json

The verdict record holds all verdict statuses for a given episode, keyed by semantic ID from docs/verdict-registry.yaml. It records the required_path (the governance-derived subset of the core that this episode owes), the four-valued status for each verdict, a pathway_state that is the conjunction over required_path, and per-claim adjudication. The index block makes pathway adequacy objective by anchoring it to analysis, actor, decision time, and information state. File path: schemas/verdict-record.schema.json See Verdict Record for full field documentation. Required fields: episode_id, index, required_path, statuses, pathway_state. Relationships: Referenced by orthing-episode.schema.json via verdict_record_ref. Contains rel_spec values typed as reliability-spec.schema.json and perturb_spec values typed as perturbation-spec.schema.json.

7. claim-ledger.schema.json

The claim ledger is the analysis-relative assertion list for an episode. Claims are propositions asserted about the occurrence; residuals are open obligations that survive the episode. The six residual dispositions (unresolved, deferred, transferred, owner-assigned, risk-accepted, validated-resolved) each carry their own completeness contract. A closure_claim is well-formed only when every residual’s disposition admits it. File path: schemas/claim-ledger.schema.json
episode_id
string
required
Links this ledger to its owning episode.
claims
array
required
One or more claim objects. Each claim requires claim_id, proposition, target, analysis, property_class, success_surface, and verification_status. Must carry either evidence_ids or evidence_inapplicable_reason.
residuals
array
required
Zero or more residual burden objects. Each requires burden_id, description, and disposition. Additional fields are required per disposition type.
closure_claim
object | null
Well-formed only when every burden’s disposition admits closure (Definition 13). Requires level and asserted_by.
Relationships: Referenced by orthing-episode.schema.json via claim_ledger_ref. Claim IDs are cited in verdict-record.schema.json (claim_verdicts, claim_reasoning_paths, rel_spec keys, perturb_spec keys). Token IDs in depends_on_tokens must resolve against metaorthemma.schema.json tokens in the bundle.

8. handoff.schema.json

A handoff packet is the inter-episode transfer record — the locus where transport errors happen. A verdict crossing an edge without its scope and version is how stale evidence propagates. Every handoff must carry substantive payload: at least one of state_claims, evidence_refs, authority_claims, residual_obligations, or requested_action. Edge orientation is earlier → later; edge_label carries the semantics (handoff | supersession | retry-of). File path: schemas/handoff.schema.json
packet_id
string
required
Unique identifier for this handoff packet.
packet_version
string
required
Version of this packet.
sender_episode
string
required
episode_id of the sending episode.
receiver_episode
string
required
episode_id of the receiving episode.
subject
object
required
The occurrence being handed off: identity_key + version.
edge_label
enum
required
handoff | supersession | retry-of.
state_claims
array
Claims being transported. Each item requires claim_id, scope, valid_for_version, analysis_id, and analysis_version. The valid_for_version field is the anti-transport rule: a claim crossing an edge without it is untransportable.
Relationships: Embedded inside orthing-episode.schema.json via handoffs_in / handoffs_out. Cross-record semantics check that sender_episode and receiver_episode resolve to episodes in the bundle.

9. perturbation-spec.schema.json

A perturbation spec declares the robustness neighborhood for the ROBUST_NEIGHBORHOOD verdict. The neighborhood is given by exactly one of: a finite enumeration of members, or a declared probability measure — the two are mutually exclusive (XOR). The invariants and varied_fields sets must be disjoint. The metaorthemma_rebinding_rule states what happens to case-bound tokens as the case is perturbed. File path: schemas/perturbation-spec.schema.json
neighborhood_family
string
required
The family of cases the neighborhood is drawn from.
invariants
string[]
required
Fields held fixed across the neighborhood. Must be disjoint from varied_fields (cross-record check).
varied_fields
string[]
required
Fields varied across the neighborhood.
metaorthemma_rebinding_rule
string
required
What happens to case-bound tokens as the case varies: rebound, held, or restricted.
failure_criterion
string
required
What counts as a robustness failure over this neighborhood.
version
string
required
Version of this spec.
validity
object
required
effective_from and expiry (timezone-aware ISO-8601 instants).
enumeration
string[]
Finite list of neighborhood members. XOR with measure.
measure
object
Declared probability measure. XOR with enumeration. Requires family, parameters, and support.
Relationships: Embedded inside verdict-record.schema.json via the perturb_spec map, keyed by claim ID.

10. reliability-spec.schema.json

A reliability spec is the pre-outcome procedure reliability declaration required for the PROCEDURE_RELIABLE (V2b-P) verdict. It names a specific procedure and version, declares a reference class, risk stratum, metric, threshold, evaluation protocol, evidence basis, and the timestamp declared_at that makes pre-outcome declaration checkable. The cross-record layer rejects any RelSpec declared at or after the recorded result time. File path: schemas/reliability-spec.schema.json
procedure_id
string
required
The procedure whose reliability is claimed.
procedure_version
string
required
The edition of that procedure. Reliability does not transfer across editions without argument.
reference_class
string
required
The population over which the reliability figure is defined.
risk_stratum
string
required
The declared risk stratum the threshold is set for.
metric
string
required
The reliability metric: precision, sensitivity, false-negative rate, etc.
threshold
number | string
required
The value the metric must meet.
evaluation_protocol
string
required
How the metric is measured, including sampling and blinding.
evidence_basis
string
required
The evidence the reliability figure rests on.
declared_at
string
required
Timestamp of declaration (timezone-aware ISO-8601). Must precede any recorded result time — checked by validate_cross_record_semantics.py.
validity
object
required
effective_from and expiry (timezone-aware ISO-8601 instants).
Relationships: Embedded inside verdict-record.schema.json via the rel_spec map, keyed by claim ID.

Cross-schema dependency map

analysis.schema.json
  └── referenced by: orthing-episode (analysis), claim-ledger (claim.analysis),
                     verdict-record (index.analysis_id)

orthemma.schema.json
  └── $ref from: orthing-episode (occurrence)
  └── anchor for: metaorthemma (anchor object)

metaortheme.schema.json
  └── typed by: metaorthemma (of_type.mu_id / mu_version)
  └── listed in: orthing-episode (governing_configuration.mu_refs)

metaorthemma.schema.json
  └── array item: orthing-episode (meta_tokens)
  └── per-token status in: verdict-record (per_token_v3c)

orthing-episode.schema.json
  └── references: claim-ledger (claim_ledger_ref)
  └── references: verdict-record (verdict_record_ref)
  └── embeds: handoff (handoffs_in, handoffs_out)

verdict-record.schema.json
  └── embeds map of: reliability-spec (rel_spec)
  └── embeds map of: perturbation-spec (perturb_spec)

claim-ledger.schema.json
  └── claim IDs cited by: verdict-record (claim_verdicts, claim_reasoning_paths)

handoff.schema.json
  └── embeds in: orthing-episode (handoffs_in / handoffs_out)
The validate_cross_record_semantics.py script enforces the bundle-local consistency rules that JSON Schema cannot express: id uniqueness across records, reference resolution, analysis/occurrence anchoring across schemas, and the closure floor rule.

Build docs developers (and LLMs) love