Markdown for LLMs
Arxo Fact Protocol fact set 0.1
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# Arxo Fact Protocol fact set 0.1
The facts of one external record produced by a source mapping: pins of the mapping, the model, and the record bytes; the facts in the host FactInput form with typed model terms and provenance; the record as an evidence item; and a trace of the JSON Pointers each fact was read from. facts and evidence pass unchanged into the facts and evidence of a law_ask call or of the Fact Protocol envelope {pin, facts, evidence, query}; the pin, the query, and the case context belong to the caller. The trace stays outside the facts: FactInput provenance is never extended. The contentHash self-pin excludes its own field; no time or host is stored inside, so equal inputs give equal bytes.
## Versions
Accepted `schemaVersion`: `law.fact-set/0.1`.
## Top-level fields
| name | type-or-$ref | required | description |
|---|---|---|---|
| `schemaVersion` | `"law.fact-set/0.1"` | yes | — |
| `mapping` | `object` | yes | — |
| `model` | `object` | yes | — |
| `record` | `object` | yes | — |
| `facts` | `array` | yes | In the order of the mapping's fact entries; within an entry, by the scope instance's entity id compared as bytes — independent of array order in the record. |
| `evidence` | `array` | yes | Empty when the mapping declares no evidence section, otherwise exactly one item: the record. |
| `trace` | `array` | yes | One entry per fact, same order: the mapping fact entry and the absolute JSON Pointers of the values it was read from. |
| `contentHash` | [`screen-binding.schema.json#/$defs/Digest`](/protocols/schemas/screen-binding/#digest) | yes | — |
## Enumerations
| location | values |
|---|---|
| `properties/schemaVersion` | `"law.fact-set/0.1"` |
## Raw schema
[`https://law.arxo.io/schema/fact-set.schema.json`](https://law.arxo.io/schema/fact-set.schema.json)