OXA export
step · paper openDeclaration f9eb91b8acaf has not been accepted by anyone. · no paper read under it
What does the open document architecture carry?
Mechanical: re-runnable from its declared inputs.
Part of Interchange — What survives when a claim tree leaves this format?
How it works
Reads the claim files and writes the paper as one OXA Article JSON with a Claim node per claim. OXA is document-shaped rather than graph-shaped, so it keeps the text and the sectioning of a paper well and carries relations as properties of the nodes they leave.
It is also the input to the Discourse Graphs export, so anything lost here is lost there too, one conversion further along.
Rests on
- claim-tree · step
- stance · feature
Feeds — a change here disturbs these
- dg-export · step
- formats-report · step
How it is defined
What this layer reads besides its dependencies. Each is a declared input: its content is hashed into every run, so editing one makes those runs stale.
The declaration names this path and the repository does not have it. An input that does not exist hashes to nothing, so it cannot make a run stale — the layer is declared to depend on something it is not in fact tracking.
What it produces0
One paper, as the worked example — Artiushin, v1. Read from exports/artiushin-2026-spider-atlas.oxa.json · 28 KB. type Document
0Nothing on this page renders table for this file yet — the link above is the artifact itself.
Across the corpus
7 run not observed · 3 stale·a paper links to its own cell, where this layer's output for it is rendered
Inputs and outputs
- Reads, besides its dependencies
-
- extract/scripts/migrate_to_oxa.py · declared, and not in the repository — it hashes to nothing, so it cannot make a run stale
- Produces
-
- exports/{paper}.oxa.json
One per paper — the table above links each one that exists.
- Views
-
- table — declared, and this artifact is not the shape this view needs
Running it
The command comes from the declaration, so this text and what actually runs cannot
diverge. pipeline.py run also runs the unmet dependencies first.
python3 scripts/pipeline.py run <paper> oxa-export
Underneath, that runs cd extract && python3 scripts/migrate_to_oxa.py ../claims/{paper} --output-dir ../exports.