Arxo Core 0.1 Canonical Legal IR
Draft machine-readable schema for the canonical Legal IR defined by Arxo Law Core 0.1.
Versions
Section titled “Versions”Accepted schemaVersion: law.core.ir/0.1, law.core.ir/0.2, law.core.ir/0.3, law.core.ir/0.4, law.core.ir/0.5, law.core.ir/0.6.
Top-level fields
Section titled “Top-level fields”| name | type-or-$ref | required | description |
|---|---|---|---|
features | array | no | — |
imports | array | no | — |
metadata | #/$defs/JsonObject | no | — |
nodes | array | yes | — |
package | #/$defs/PackageRef | yes | — |
schemaVersion | enum (6) | yes | The document envelope determines the form of SymbolDecl.parameters and the minimum reader version: law.core.ir/0.1 is TypeRef[], law.core.ir/0.2 is ParameterDecl[] (reading 0.1 is compat mode). law.core.ir/0.3 adds the event-model nodes (procedure, temporal_resolution_policy); a document is written as 0.3 only when it carries such a node, otherwise it stays 0.2 — the envelope declares the required reader, not the build date, and a program without the new node is read unchanged by the previous implementation. law.core.ir/0.4 adds the anchor node (relation, coverage and the optional quote), emitted only for @source annotations that carry at least one named attribute; a document is written as 0.4 only when it carries an anchor node, otherwise it stays 0.2/0.3 by the same rule. law.core.ir/0.5 adds Fragment.texts[].exactBytes, the carrier of the exact source bytes of an official text whose bytes differ from its NFC form; a document is written as 0.5 only when at least one text carries exactBytes (0.5 is newer than 0.4), otherwise it stays 0.2/0.3/0.4 byte for byte. law.core.ir/0.6 adds the executable stage node (status: "executable" with indexandbindings); a document is written as 0.6 only when it carries such a node (a reserved stage` with empty body stays 0.2 as before), otherwise it stays 0.2/0.3/0.4/0.5 byte for byte. |
semanticHash | #/$defs/Digest | yes | — |
theoryHash | #/$defs/Digest | no | Normalized declarations without presentation or provenance. |
artifactHash | #/$defs/Digest | no | Canonical CLIR artifact identity with provenance, excluding presentation labels. |
semanticVersion | anyOf (2) | yes | Exact execution identity; legacy forms remain archival-readable, without granting execution. |
strata | array | no | — |
Enumerations
Section titled “Enumerations”| location | values |
|---|---|
$defs/AchievementGoal/properties/kind | "achievement" |
$defs/AggregateTerm/properties/kind | "aggregate" |
$defs/AggregateTerm/properties/op | "sum", "count", "min", "max", "average", "only" |
$defs/Anchor/allOf/1/properties/coverage | "exact", "partial", "contextual", "disputed" |
$defs/Anchor/allOf/1/properties/kind | "anchor" |
$defs/Anchor/allOf/1/properties/relation | "formalizes", "interprets", "quotes", "paraphrases", "derives_from", "applies", "limits", "invalidates", "distinguishes" |
$defs/AssertionBody/properties/kind | "assertion" |
$defs/AssertionBody/properties/origin | "case_input", "source_asserted", "external_snapshot", "derived", "adjudicated", "assumed_for_simulation" |
$defs/BinaryTerm/properties/kind | "binary" |
$defs/BindPattern/properties/kind | "bind" |
$defs/BoolFormula/properties/kind | "boolean" |
$defs/CalendarSnapshot/allOf/1/properties/kind | "calendar_snapshot" |
$defs/EvidencePolicy/allOf/1/properties/kind | "evidence_policy" |
$defs/EvidencePolicy/allOf/1/properties/visibility | "public" |
$defs/EvidencePolicy/allOf/1/properties/inputs/propertyNames | "edge", "status", "issuer", "observed", "recorded", "available", "current", "authentic", "knowledge", "source" |
$defs/DeadlinePolicy/allOf/1/properties/kind | "deadline_policy" |
$defs/DeadlinePolicy/allOf/1/properties/visibility | "public" |
$defs/DeadlinePolicy/allOf/1/properties/policy/properties/start_count | "same_day", "next_day" |
$defs/DeadlinePolicy/allOf/1/properties/policy/properties/roll | "no_roll", "next_working_day", "previous_working_day" |
$defs/DeadlinePolicy/allOf/1/properties/policy/properties/month_end | "last_day_of_month", "reject_nonexistent" |
$defs/TemporalResolutionPolicy/allOf/1/properties/kind | "temporal_resolution_policy" |
$defs/TemporalResolutionPolicy/allOf/1/properties/visibility | "public" |
$defs/Procedure/allOf/1/properties/kind | "procedure" |
$defs/ProcedureJoin/properties/policy | "all", "any", "quorum" |
$defs/Stage/allOf/1/properties/kind | "stage" |
$defs/Stage/allOf/1/properties/status | "reserved", "executable" |
$defs/Stage/allOf/1/properties/index/properties/type | "Integer", "Date" |
$defs/Stage/allOf/1/properties/index/properties/direction | "ascending", "descending" |
$defs/CallTerm/properties/kind | "call" |
$defs/ClosurePolicy/allOf/1/properties/kind | "closure_policy" |
$defs/ComparisonFormula/properties/kind | "comparison" |
$defs/ComparisonFormula/properties/op | "eq", "ne", "lt", "le", "gt", "ge", "in", "text_matches" |
$defs/ComprehensionTerm/properties/kind | "comprehension" |
$defs/Constraint/allOf/1/properties/kind | "constraint" |
$defs/Constraint/allOf/1/properties/severity | "info", "warning", "error", "critical" |
$defs/CounterfactualDecl/allOf/1/properties/kind | "counterfactual_decl" |
$defs/DutyPayload/properties/allocationPolicy/oneOf/0 | "individual", "joint", "several", "joint_and_several" |
$defs/DutyPayload/properties/kind | "duty" |
$defs/DynamicReference/allOf/1/properties/kind | "reference" |
$defs/DynamicReference/allOf/1/properties/resolveAt | "legal_time" |
$defs/EvidenceItem/allOf/1/properties/kind | "evidence_item" |
$defs/ExternalDecl/allOf/1/properties/effect | "snapshot", "judgment", "opaque" |
$defs/ExternalDecl/allOf/1/properties/kind | "external_decl" |
$defs/ExternalDecl/allOf/1/allOf/0/if/properties/effect | "snapshot" |
$defs/ExternalDecl/allOf/1/allOf/1/if/properties/effect | "judgment" |
$defs/FieldTerm/properties/kind | "field" |
$defs/ForbearanceGoal/properties/kind | "forbearance" |
$defs/Fragment/allOf/1/properties/kind | "fragment" |
$defs/Fragment/allOf/1/properties/visibility | "public" |
$defs/FunctionDecl/allOf/1/properties/effect | "pure" |
$defs/FunctionDecl/allOf/1/properties/kind | "function_decl" |
$defs/FunctionDecl/allOf/1/properties/visibility | "public" |
$defs/IfTerm/properties/kind | "if" |
$defs/ImmunityPayload/properties/kind | "immunity" |
$defs/Interpretation/allOf/1/properties/kind | "interpretation" |
$defs/Interpretation/allOf/1/properties/visibility | "public" |
$defs/InterpretationGroup/allOf/1/properties/kind | "interpretation_group" |
$defs/InterpretationGroup/allOf/1/properties/selection | "exactly_one", "any_of", "compose_explicitly" |
$defs/IntervalTerm/properties/kind | "interval" |
$defs/Label/properties/status | "official", "unofficial", "translation" |
$defs/LegalEffect/properties/kind | "create", "terminate", "modify", "opaque" |
$defs/LetTerm/properties/kind | "let" |
$defs/LibertyPayload/properties/kind | "liberty" |
$defs/ListTerm/properties/kind | "list" |
$defs/Literal/properties/kind | "literal" |
$defs/Literal/properties/polarity | "positive", "negative" |
$defs/LiteralTerm/properties/kind | "value" |
$defs/MaintenanceGoal/properties/kind | "maintenance" |
$defs/MapTerm/properties/kind | "map" |
$defs/MatchTerm/properties/kind | "match" |
$defs/NaryFormula/properties/kind | "and", "or" |
$defs/NormTemplate/allOf/1/properties/kind | "norm_template" |
$defs/NormTemplate/allOf/1/properties/modality | "duty", "liberty", "power", "immunity" |
$defs/NormTemplateRef/properties/kind | "norm_template_ref" |
$defs/PowerPayload/properties/kind | "power" |
$defs/PriorityRule/allOf/1/properties/kind | "priority_rule" |
$defs/PriorityRule/allOf/1/properties/priorityKind | "direct", "policy" |
$defs/ProvenanceEdge/properties/relation | "was_derived_from", "was_generated_by", "was_attributed_to", "used", "was_revision_of", "was_invalidated_by" |
$defs/Publication/allOf/1/properties/kind | "publication" |
$defs/QuantifiedFormula/properties/kind | "quantified" |
$defs/QuantifiedFormula/properties/quantifier | "exists", "forall" |
$defs/Query/allOf/1/properties/kind | "query" |
$defs/RecordTerm/properties/kind | "record" |
$defs/RecurringGoal/properties/kind | "recurring" |
$defs/RefTerm/properties/kind | "const_ref", "entity_ref" |
$defs/Revision/allOf/1/properties/kind | "revision" |
$defs/Entrenchment/allOf/1/properties/kind | "entrenchment" |
$defs/RevisionOperation/allOf/0/properties/op | "replace", "insert", "repeal", "renumber" |
$defs/RevisionOperation/allOf/1/oneOf/0/properties/op | "replace" |
$defs/RevisionOperation/allOf/1/oneOf/1/properties/op | "insert" |
$defs/RevisionOperation/allOf/1/oneOf/2/properties/op | "repeal" |
$defs/RevisionOperation/allOf/1/oneOf/3/properties/op | "renumber" |
$defs/Rule/allOf/1/properties/kind | "rule" |
$defs/Rule/allOf/1/properties/strength | "strict", "defeasible", "defeater" |
$defs/Rule/allOf/1/properties/visibility | "public" |
$defs/SetTerm/properties/kind | "set" |
$defs/SourceEdition/allOf/1/properties/applicability | "timeless" |
$defs/SourceEdition/allOf/1/properties/kind | "source_edition" |
$defs/SourceEdition/allOf/1/properties/materializationStatus | "PINNED_OFFICIAL_BYTES", "PINNED_UNOFFICIAL_COPY", "PINNED_EDITORIAL_RECONSTRUCTION", "DYNAMIC_OFFICIAL_PAGE", "ABSTRACT_ONLY", "UNAVAILABLE" |
$defs/SourceEdition/allOf/1/allOf/0/if/properties/applicability | "timeless" |
$defs/SourceWork/allOf/1/properties/kind | "source_work" |
$defs/StatusFormula/properties/kind | "status" |
$defs/StatusFormula/properties/status | "established", "supported", "monotone", "refuted", "opposed", "conflicted", "unknown", "not_known", "no_evidence" |
$defs/SupportEdge/allOf/1/properties/kind | "support_edge" |
$defs/SupportEdge/allOf/1/properties/relation | "supports", "refutes", "authenticates", "measures", "reports", "establishes" |
$defs/SymbolDecl/allOf/1/allOf/0/if/properties/symbolKind | "relation" |
$defs/SymbolDecl/allOf/1/allOf/1/if/properties/symbolKind | "function" |
$defs/SymbolDecl/allOf/1/allOf/2/if/properties/symbolKind | "constant" |
$defs/SymbolDecl/allOf/1/properties/effect | "pure", "snapshot", "judgment", "opaque" |
$defs/SymbolDecl/allOf/1/properties/kind | "symbol_decl" |
$defs/SymbolDecl/allOf/1/properties/symbolKind | "relation", "function", "constant" |
$defs/SymbolDecl/allOf/1/properties/visibility | "public" |
$defs/TemporalFormula/properties/kind | "temporal" |
$defs/TemporalFormula/properties/op | "before", "after", "during", "overlaps", "contains", "starts", "finishes" |
$defs/TemporalInterval/properties/end/oneOf/2 | "infinity" |
$defs/TemporalInterval/properties/start/oneOf/2 | "-infinity" |
$defs/TypeDecl/allOf/1/allOf/0/if/properties/typeKind | "alias" |
$defs/TypeDecl/allOf/1/allOf/1/if/properties/typeKind | "variant" |
$defs/TypeDecl/allOf/1/properties/kind | "type_decl" |
$defs/TypeDecl/allOf/1/properties/typeKind | "entity", "record", "enum", "variant", "alias" |
$defs/TypeDecl/allOf/1/properties/visibility | "public" |
$defs/UnaryTerm/properties/kind | "unary" |
$defs/ValuePattern/properties/kind | "value" |
$defs/WildcardTerm/properties/kind | "wildcard" |
$defs/VarTerm/properties/kind | "var" |
$defs/VariantTerm/properties/kind | "variant_value" |
$defs/VariantPattern/properties/kind | "variant" |
$defs/WildcardPattern/properties/kind | "wildcard" |
$defs/FactorVocabulary/allOf/1/properties/kind | "factor_vocabulary" |
$defs/PrecedentDecl/allOf/1/properties/kind | "precedent_decl" |
$defs/UnitDecl/allOf/1/properties/dimension/items/prefixItems/0 | "Length", "Mass", "Time", "Current", "Temperature", "Amount", "Luminosity" |
$defs/UnitDecl/allOf/1/properties/kind | "unit_decl" |
$defs/UnitDecl/allOf/1/properties/unitKind | "simple", "derived", "alias" |
$defs/UnitDecl/allOf/2/if/properties/unitKind | "simple" |
$defs/UnitDecl/allOf/3/if/properties/unitKind | "derived" |
$defs/UnitDecl/allOf/4/if/properties/unitKind | "alias" |
$defs/RoundingFormula/properties/kind | "rounding" |
$defs/RoundingFormula/properties/mode | "HALF_UP", "HALF_EVEN", "HALF_DOWN", "UP", "DOWN", "CEILING", "FLOOR" |
properties/schemaVersion | "law.core.ir/0.1", "law.core.ir/0.2", "law.core.ir/0.3", "law.core.ir/0.4", "law.core.ir/0.5", "law.core.ir/0.6" |
Raw schema
Section titled “Raw schema”AchievementGoal
Section titled “AchievementGoal”Type: object.
Required: kind, condition, window.
| name | type-or-$ref | description |
|---|---|---|
completenessPolicy | #/$defs/StableId | — |
condition | #/$defs/Formula | — |
kind | "achievement" | — |
termination | #/$defs/Formula | — |
window | #/$defs/Term | — |
AggregateTerm
Section titled “AggregateTerm”Type: object.
Required: kind, op, input.
| name | type-or-$ref | description |
|---|---|---|
input | #/$defs/Term | — |
kind | "aggregate" | — |
op | enum (6) | — |
options | #/$defs/JsonObject | — |
Anchor
Section titled “Anchor”Definition Anchor.
Assertion
Section titled “Assertion”Definition Assertion.
AssertionBody
Section titled “AssertionBody”Type: object.
Required: kind, id, package, literal, origin.
| name | type-or-$ref | description |
|---|---|---|
anchors | — | — |
annotations | — | — |
contentHash | — | — |
evidence | array | — |
id | — | — |
judgment | object | — |
kind | "assertion" | — |
labels | — | — |
literal | #/$defs/Literal | — |
observedAt | oneOf (2) | — |
origin | enum (6) | — |
package | — | — |
provenance | — | — |
recordedAt | oneOf (2) | — |
sourceSpan | — | — |
valid | #/$defs/TemporalInterval | — |
BinaryTerm
Section titled “BinaryTerm”Type: object.
Required: kind, op, left, right.
| name | type-or-$ref | description |
|---|---|---|
kind | "binary" | — |
left | #/$defs/Term | — |
op | string | — |
right | #/$defs/Term | — |
BindPattern
Section titled “BindPattern”Type: object.
Required: kind, variable.
| name | type-or-$ref | description |
|---|---|---|
kind | "bind" | — |
variable | #/$defs/Variable | — |
BoolFormula
Section titled “BoolFormula”Type: object.
Required: kind, value.
| name | type-or-$ref | description |
|---|---|---|
kind | "boolean" | — |
value | boolean | — |
CalendarSnapshot
Section titled “CalendarSnapshot”Definition CalendarSnapshot.
CaseAssertion
Section titled “CaseAssertion”Definition CaseAssertion.
EvidencePolicy
Section titled “EvidencePolicy”Carrier of an executable evidence policy. Phase rules are closed by the rules list; the node has no open metadata.
DeadlinePolicy
Section titled “DeadlinePolicy”Definition DeadlinePolicy.
TemporalResolutionPolicy
Section titled “TemporalResolutionPolicy”Resolution of Date into Instant. Only utcOffset is executed; timezone is a provenance label, and no time-zone database is read.
Procedure
Section titled “Procedure”The profile automaton as data, executed by the folding phase. Desugaring no longer emits the <P>/initial, <P>/<T>/valid and <P>/<T>/enters rules.
ProcedureState
Section titled “ProcedureState”Type: object.
Required: id, initial, terminal.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
initial | boolean | — |
terminal | boolean | — |
regions | array | — |
join | #/$defs/ProcedureJoin | — |
ProcedureRegion
Section titled “ProcedureRegion”Type: object.
Required: id, states, transitions.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
states | array | — |
transitions | array | — |
ProcedureTransition
Section titled “ProcedureTransition”Type: object.
Required: id, from, to, requires.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
from | #/$defs/StableId | — |
to | #/$defs/StableId | — |
on | #/$defs/StableId | — |
guard | #/$defs/Formula | — |
requires | array | — |
ProcedureJoin
Section titled “ProcedureJoin”Type: object.
Required: policy.
| name | type-or-$ref | description |
|---|---|---|
policy | enum (3) | — |
count | integer | — |
Definition Stage.
CallTerm
Section titled “CallTerm”Type: object.
Required: kind, function, args.
| name | type-or-$ref | description |
|---|---|---|
args | array | — |
function | #/$defs/StableId | — |
kind | "call" | — |
ClosurePolicy
Section titled “ClosurePolicy”Definition ClosurePolicy.
ComparisonFormula
Section titled “ComparisonFormula”Type: object.
Required: kind, op, left, right.
| name | type-or-$ref | description |
|---|---|---|
kind | "comparison" | — |
left | #/$defs/Term | — |
op | enum (8) | — |
right | #/$defs/Term | — |
ComprehensionTerm
Section titled “ComprehensionTerm”Type: object.
Required: kind, variable, element, generator, distinct.
| name | type-or-$ref | description |
|---|---|---|
binders | array | Auxiliary existential-local generator binders; they distinguish List positions but are not collection elements. |
distinct | boolean | True gives Setcollect, distinct ground values); false gives Listcollect all, one element per solution substitution of the generator). Required, with no default: multiplicity is the author’s semantic decision, not a schema default. |
element | #/$defs/Term | — |
generator | #/$defs/Formula | — |
kind | "comprehension" | — |
variable | #/$defs/Variable | — |
Constraint
Section titled “Constraint”Definition Constraint.
CounterfactualDecl
Section titled “CounterfactualDecl”Definition CounterfactualDecl.
DateString
Section titled “DateString”Type: string.
DecimalString
Section titled “DecimalString”Type: string.
Digest
Section titled “Digest”Type: string.
DutyPayload
Section titled “DutyPayload”Type: object.
Required: kind, bearer, goal.
| name | type-or-$ref | description |
|---|---|---|
activation | #/$defs/Formula | — |
allocationPolicy | oneOf (2) | — |
bearer | #/$defs/Term | — |
beneficiary | #/$defs/Term | — |
dischargePolicy | #/$defs/StableId | — |
goal | #/$defs/Goal | — |
kind | "duty" | — |
violationPolicy | #/$defs/StableId | — |
DynamicReference
Section titled “DynamicReference”Definition DynamicReference.
EvidenceItem
Section titled “EvidenceItem”Definition EvidenceItem.
ExternalDecl
Section titled “ExternalDecl”Definition ExternalDecl.
FieldTerm
Section titled “FieldTerm”Type: object.
Required: kind, target, field.
| name | type-or-$ref | description |
|---|---|---|
field | string | — |
kind | "field" | — |
target | #/$defs/Term | — |
ForbearanceGoal
Section titled “ForbearanceGoal”Type: object.
Required: kind, action, window.
| name | type-or-$ref | description |
|---|---|---|
action | #/$defs/Term | — |
completenessPolicy | #/$defs/StableId | — |
kind | "forbearance" | — |
window | #/$defs/Term | — |
Formula
Section titled “Formula”Definition Formula.
Fragment
Section titled “Fragment”Definition Fragment.
FunctionDecl
Section titled “FunctionDecl”Definition FunctionDecl.
Definition Goal.
IfTerm
Section titled “IfTerm”Type: object.
Required: kind, condition, then, else.
| name | type-or-$ref | description |
|---|---|---|
condition | #/$defs/Formula | — |
else | #/$defs/Term | — |
kind | "if" | — |
then | #/$defs/Term | — |
ImmunityPayload
Section titled “ImmunityPayload”Type: object.
Required: kind, holder, protectedEffect.
| name | type-or-$ref | description |
|---|---|---|
against | #/$defs/Term | — |
holder | #/$defs/Term | — |
kind | "immunity" | — |
protectedEffect | #/$defs/LegalEffect | — |
window | #/$defs/Term | — |
InstantString
Section titled “InstantString”Type: string.
Interpretation
Section titled “Interpretation”Definition Interpretation.
InterpretationGroup
Section titled “InterpretationGroup”Definition InterpretationGroup.
IntervalTerm
Section titled “IntervalTerm”Type: object.
Required: kind, start, end, startInclusive, endInclusive.
| name | type-or-$ref | description |
|---|---|---|
end | #/$defs/Term | — |
endInclusive | boolean | — |
kind | "interval" | — |
start | #/$defs/Term | — |
startInclusive | boolean | — |
JsonObject
Section titled “JsonObject”Type: object.
JsonValue
Section titled “JsonValue”Definition JsonValue.
Type: object.
Required: language, status, text.
| name | type-or-$ref | description |
|---|---|---|
grammaticalForms | object | Morphological forms of the label; the key is a slot from the closed dictionary of its language tag, the value is a non-empty form. Presentational: outside the semantic hash, inside the node’s content hash. |
language | #/$defs/LanguageTag | — |
status | enum (3) | — |
template | string | Predicate template of a relation label: a positive clause with placeholders {parameterName} for every parameter; {{ and }} are literal braces. Presentational: outside the semantic hash, inside the node’s content hash; allowed only on labels of relation symbol_decl. |
text | string | — |
LanguageTag
Section titled “LanguageTag”Type: string.
LegalEffect
Section titled “LegalEffect”Type: object.
Required: kind.
| name | type-or-$ref | description |
|---|---|---|
after | #/$defs/Formula | — |
before | #/$defs/Formula | — |
description | string | — |
kind | enum (4) | — |
LetTerm
Section titled “LetTerm”Type: object.
Required: kind, variable, value, body.
| name | type-or-$ref | description |
|---|---|---|
body | #/$defs/Term | — |
kind | "let" | — |
value | #/$defs/Term | — |
variable | #/$defs/Variable | — |
LibertyPayload
Section titled “LibertyPayload”Type: object.
Required: kind, holder, action, window.
| name | type-or-$ref | description |
|---|---|---|
action | #/$defs/Term | — |
against | #/$defs/Term | — |
holder | #/$defs/Term | — |
kind | "liberty" | — |
window | #/$defs/Term | — |
LifecycleEvent
Section titled “LifecycleEvent”Type: object.
Required: status, extent.
| name | type-or-$ref | description |
|---|---|---|
extent | oneOf (3) | — |
source | #/$defs/StableId | — |
status | string | — |
ListTerm
Section titled “ListTerm”Type: object.
Required: kind, items.
| name | type-or-$ref | description |
|---|---|---|
items | array | — |
kind | "list" | — |
Literal
Section titled “Literal”Type: object.
Required: kind, polarity, predicate, args.
| name | type-or-$ref | description |
|---|---|---|
args | array | — |
kind | "literal" | — |
polarity | enum (2) | — |
predicate | #/$defs/StableId | — |
LiteralTerm
Section titled “LiteralTerm”Type: object.
Required: kind, type.
| name | type-or-$ref | description |
|---|---|---|
currency | string | — |
display | string | — |
kind | "value" | — |
type | #/$defs/TypeRef | — |
unit | string | — |
value | #/$defs/JsonValue | — |
factors | array | The multiset of a quantity’s base units. unit is not parsed on read but is checked against its rendering: the grammar “base per base” is ambiguous. |
lower | string | Lower bound of the interval, an irreducible fraction <n>/<d>. |
upper | string | Upper bound of the interval. |
derivation | string | The derivation canon. The bounds are recomputed from it, not checked field by field. |
poly | array | Algebraic min-poly coefficients, ascending, as ASCII-int decimal strings; verified through the canon funnel on read, never trusted. |
root | integer | 1-based index of the real root in ascending order; range-checked against the Sturm count on read. |
expr | string | RealExpr canon string; verified through the constructor funnel on read, never trusted. |
LockedImport
Section titled “LockedImport”Type: object.
Required: package, contentHash.
| name | type-or-$ref | description |
|---|---|---|
contentHash | #/$defs/Digest | — |
features | array | — |
package | #/$defs/PackageRef | — |
MaintenanceGoal
Section titled “MaintenanceGoal”Type: object.
Required: kind, condition, window.
| name | type-or-$ref | description |
|---|---|---|
completenessPolicy | #/$defs/StableId | — |
condition | #/$defs/Formula | — |
kind | "maintenance" | — |
termination | #/$defs/Formula | — |
window | #/$defs/Term | — |
MapTerm
Section titled “MapTerm”Type: object.
Required: kind, entries.
| name | type-or-$ref | description |
|---|---|---|
entries | array | — |
kind | "map" | — |
MatchArm
Section titled “MatchArm”Type: object.
Required: pattern, value.
| name | type-or-$ref | description |
|---|---|---|
pattern | #/$defs/Pattern | — |
value | #/$defs/Term | — |
MatchTerm
Section titled “MatchTerm”Type: object.
Required: kind, subject, arms.
| name | type-or-$ref | description |
|---|---|---|
arms | array | — |
kind | "match" | — |
subject | #/$defs/Term | — |
NaryFormula
Section titled “NaryFormula”Type: object.
Required: kind, items.
| name | type-or-$ref | description |
|---|---|---|
items | array | — |
kind | enum (2) | — |
Definition Node.
NodeCommon
Section titled “NodeCommon”Type: object.
Required: kind, id, package, contentHash.
| name | type-or-$ref | description |
|---|---|---|
anchors | array | — |
annotations | #/$defs/JsonObject | — |
contentHash | #/$defs/Digest | — |
id | #/$defs/StableId | — |
kind | string | — |
labels | array | — |
package | #/$defs/StableId | — |
provenance | array | — |
sourceSpan | #/$defs/SourceSpan | — |
NodeCommonInput
Section titled “NodeCommonInput”Type: object.
Required: kind, id, package.
| name | type-or-$ref | description |
|---|---|---|
anchors | array | — |
annotations | #/$defs/JsonObject | — |
contentHash | #/$defs/Digest | — |
id | #/$defs/StableId | — |
kind | string | — |
labels | array | — |
package | #/$defs/StableId | — |
provenance | array | — |
sourceSpan | #/$defs/SourceSpan | — |
NormTemplate
Section titled “NormTemplate”Definition NormTemplate.
NormTemplateRef
Section titled “NormTemplateRef”Type: object.
Required: kind, id.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
kind | "norm_template_ref" | — |
PackageRef
Section titled “PackageRef”Type: object.
Required: name, version, namespace, semanticHash.
| name | type-or-$ref | description |
|---|---|---|
labels | array | The human-readable name of the package: the act or code it formalizes. A package is not a node, so the shared node labels did not apply to it, and there was nothing to name the package with. The field is optional and presentational: outside the semantic hash (labels stays in RECURSIVE_EXCLUDED_KEYS), inside the canonical bytes — i.e. it changes the package’s contentHash but cannot change any inference. |
name | #/$defs/QName | — |
namespace | string | — |
semanticHash | #/$defs/Digest | — |
version | string | — |
Pattern
Section titled “Pattern”Definition Pattern.
PatternField
Section titled “PatternField”Type: object.
Required: name, pattern.
| name | type-or-$ref | description |
|---|---|---|
name | string | — |
pattern | #/$defs/Pattern | — |
PowerPayload
Section titled “PowerPayload”Type: object.
Required: kind, holder, exercise, effect, validWhen.
| name | type-or-$ref | description |
|---|---|---|
effect | #/$defs/LegalEffect | — |
exercise | #/$defs/Term | — |
holder | #/$defs/Term | — |
kind | "power" | — |
over | #/$defs/Term | — |
subject | array | The subject matter of a power: a finite enumeration of what the delegate may regulate, using identifiers from the dictionary of the authorizing act itself. Finiteness is essential: inferring that one norm covers another in general is prohibited, and subject-matter competence is checked by membership of the declared item in the declared set, not by inference from the text. Absence of the field means the subject matter is not declared and there is nothing to check it against (LDC-W5302) — this is not “any subject matter”. |
validWhen | #/$defs/Formula | — |
window | #/$defs/Term | — |
PriorityRule
Section titled “PriorityRule”Definition PriorityRule.
ProvenanceEdge
Section titled “ProvenanceEdge”A normalized edge of the provenance graph. attributes profiles: sugar — {declaration: "definition", mode: necessary|exact, part: sufficient|necessary, alternative?: Integer} on a rule and a constraint, where target is the concept’s symbol; A3 decision tables — {decisionKind, hitPolicy, rows}; fact groups — {factGroup, visibility?}.
Type: object.
Required: relation, target.
| name | type-or-$ref | description |
|---|---|---|
at | #/$defs/InstantString | — |
attributes | #/$defs/JsonObject | — |
relation | enum (6) | — |
target | #/$defs/StableId | — |
Publication
Section titled “Publication”Definition Publication.
Type: string.
QuantifiedFormula
Section titled “QuantifiedFormula”Type: object.
Required: kind, quantifier, variable, domain, body.
| name | type-or-$ref | description |
|---|---|---|
body | #/$defs/Formula | — |
domain | #/$defs/Term | — |
kind | "quantified" | — |
quantifier | enum (2) | — |
variable | #/$defs/Variable | — |
Definition Query.
RecordTerm
Section titled “RecordTerm”Type: object.
Required: kind, type, fields.
| name | type-or-$ref | description |
|---|---|---|
fields | object | — |
kind | "record" | — |
type | #/$defs/TypeRef | — |
RecurringGoal
Section titled “RecurringGoal”over is the interval of the entire recurrence; it is also the schedule’s anchor and its finiteness bound. The optional activation is the internal activation formula, the only one that sees the occurrence.* meta-terms; the schedule’s overall external activation lives entirely in the activation field of DutyPayload.
Type: object.
Required: kind, schedule, over, goal.
| name | type-or-$ref | description |
|---|---|---|
activation | #/$defs/Formula | — |
goal | #/$defs/Goal | — |
kind | "recurring" | — |
over | #/$defs/Term | — |
schedule | #/$defs/Term | — |
RefTerm
Section titled “RefTerm”Type: object.
Required: kind, id.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
kind | enum (2) | — |
Revision
Section titled “Revision”Definition Revision.
Entrenchment
Section titled “Entrenchment”Definition Entrenchment.
RevisionOperation
Section titled “RevisionOperation”Definition RevisionOperation.
Definition Rule.
SetTerm
Section titled “SetTerm”Type: object.
Required: kind, items.
| name | type-or-$ref | description |
|---|---|---|
items | array | — |
kind | "set" | — |
SourceEdition
Section titled “SourceEdition”Definition SourceEdition.
SourceSpan
Section titled “SourceSpan”Type: object.
Required: artifact, start, end.
| name | type-or-$ref | description |
|---|---|---|
artifact | #/$defs/StableId | — |
column | integer | — |
end | integer | — |
line | integer | — |
start | integer | — |
SourceWork
Section titled “SourceWork”Definition SourceWork.
StableId
Section titled “StableId”Type: string.
StatusFormula
Section titled “StatusFormula”Type: object.
Required: kind, status, formula.
| name | type-or-$ref | description |
|---|---|---|
formula | #/$defs/Literal | — |
kind | "status" | — |
policy | #/$defs/StableId | — |
status | enum (9) | — |
Stratum
Section titled “Stratum”Type: object.
Required: index, rules.
| name | type-or-$ref | description |
|---|---|---|
index | integer | — |
rules | array | — |
strictSccs | array | — |
SupportEdge
Section titled “SupportEdge”Definition SupportEdge.
SymbolDecl
Section titled “SymbolDecl”Definition SymbolDecl.
TemporalFormula
Section titled “TemporalFormula”Type: object.
Required: kind, op, left, right.
| name | type-or-$ref | description |
|---|---|---|
kind | "temporal" | — |
left | #/$defs/Term | — |
op | enum (7) | — |
right | #/$defs/Term | — |
TemporalInterval
Section titled “TemporalInterval”Type: object.
Required: startInclusive, endInclusive.
| name | type-or-$ref | description |
|---|---|---|
axis | string | — |
end | oneOf (3) | — |
endInclusive | boolean | — |
start | oneOf (3) | — |
startInclusive | boolean | — |
Definition Term.
TypeDecl
Section titled “TypeDecl”Definition TypeDecl.
VariantCaseField
Section titled “VariantCaseField”Type: object.
Required: name, type.
| name | type-or-$ref | description |
|---|---|---|
constraint | #/$defs/Formula | — |
name | string | — |
type | #/$defs/TypeRef | — |
VariantCase
Section titled “VariantCase”Type: object.
Required: name, constructor.
| name | type-or-$ref | description |
|---|---|---|
constructor | #/$defs/StableId | — |
fields | array | — |
name | string | — |
ParameterDecl
Section titled “ParameterDecl”The 0.2 form of a symbol parameter: id is the parameter’s StableId (source precedence: explicit @id, suffix from role, suffix from name); name is the argument name, non-semantic metadata outside the semantic hash; role is an optional semantic role (SHOULD for pub; MUST together with @id for public declarations in core-auditable and ontology packages); array order and length preserve the validity of positional keys; labels are the labels of the parameter itself, non-empty only.
Type: object.
Required: id, name, type.
| name | type-or-$ref | description |
|---|---|---|
id | #/$defs/StableId | — |
labels | array | Labels of the parameter itself: it has its own carrier, not the owning node. A non-empty list only (minItems 1): an empty one is not serialized, and an unlabeled parameter keeps the previous bytes. Outside the semantic, theory and artifact hashes (recursively), inside the owning node’s content hash. |
name | string | — |
optional | boolean | — |
role | #/$defs/StableId | — |
type | #/$defs/TypeRef | — |
TypeRef
Section titled “TypeRef”Type: object.
Required: name.
| name | type-or-$ref | description |
|---|---|---|
args | array | — |
name | #/$defs/StableId | — |
optional | boolean | — |
UnaryTerm
Section titled “UnaryTerm”Type: object.
Required: kind, op, operand.
| name | type-or-$ref | description |
|---|---|---|
kind | "unary" | — |
op | string | — |
operand | #/$defs/Term | — |
ValuePattern
Section titled “ValuePattern”Type: object.
Required: kind, value.
| name | type-or-$ref | description |
|---|---|---|
kind | "value" | — |
value | oneOf (2) | — |
WildcardTerm
Section titled “WildcardTerm”The existential argument of a rule-body literal: “there is some value”. It does not bind, it is not part of the substitution; it is legal only as an argument of a positive body literal, otherwise a static error is reported.
Type: object.
Required: kind.
| name | type-or-$ref | description |
|---|---|---|
kind | "wildcard" | — |
VarTerm
Section titled “VarTerm”Type: object.
Required: kind, var.
| name | type-or-$ref | description |
|---|---|---|
kind | "var" | — |
var | string | — |
Variable
Section titled “Variable”Type: object.
Required: id, type.
| name | type-or-$ref | description |
|---|---|---|
domain | #/$defs/Term | — |
id | string | — |
type | #/$defs/TypeRef | — |
VariantTerm
Section titled “VariantTerm”A value of an algebraic type: Result/Option and a user enum payload. Unlike VariantPattern this is a term, not a pattern.
Type: object.
Required: kind, constructor, fields.
| name | type-or-$ref | description |
|---|---|---|
kind | "variant_value" | — |
constructor | #/$defs/StableId | — |
fields | array | — |
VariantPattern
Section titled “VariantPattern”Type: object.
Required: kind, constructor, fields.
| name | type-or-$ref | description |
|---|---|---|
constructor | #/$defs/StableId | — |
fields | array | — |
kind | "variant" | — |
WildcardPattern
Section titled “WildcardPattern”Type: object.
Required: kind.
| name | type-or-$ref | description |
|---|---|---|
kind | "wildcard" | — |
FactorVocabulary
Section titled “FactorVocabulary”Definition FactorVocabulary.
PrecedentDecl
Section titled “PrecedentDecl”Definition PrecedentDecl.
UnitDecl
Section titled “UnitDecl”Simple: an atom with an exact rational scale and a tuple of the seven SI base units; derived unfolds into atoms; alias is a second name. Sugar is normalized before hashing.
RoundingFormula
Section titled “RoundingFormula”The only core formula whose support is taken from the proof. I ⊆ C gives TRUE_ONLY, I ∩ C = ∅ gives FALSE_ONLY, and an intersection of several cells gives NEITHER due to insufficient bounds.
Type: object.
Required: kind, bounds, value, precision, mode.
| name | type-or-$ref | description |
|---|---|---|
bounds | #/$defs/Term | — |
kind | "rounding" | — |
mode | enum (7) | — |
precision | integer | — |
sourceSpan | — | — |
value | #/$defs/Term | — |
Documentation for Arxo. Writings — blog.arxo.io.
Anonymous visit counts on stats.arxo.io, no cookies.