CN · Field Manual
MANUAL 04 · INTEGRATION CSV · JSON · JSONL · DELTA
Learn the system / Manual 04

Integrating with
your stack.

~7 minTyped tables, stable keysExamples: sheet MFI-TURMER-20261008-FS
CSVFlat ledgers, one file per table. Direct to pandas, R, Excel, any ETL.
JSONFull-fidelity objects — claims with nested grade basis and bound sets.
JSONLStreamable record-per-line for bulk loads and pipeline ingestion.
DELTA SHARELive Unity Catalog share — query in place, no download.
THE JOIN GRAPH

Three tables, one question

The working core of every sheet: claims assert a relation with a grade ceiling; evidence units bind claims to studies with extraction detail; studies carry design, model, duration, RoB. They join on stable hashed keys — claim → evidence → study — and every join resolves inside the release.

# pandas — claims with their evidence depth
import pandas as pd

claims   = pd.read_csv("claims.csv")
evidence = pd.read_csv("evidence.csv")
studies  = pd.read_csv("studies.csv")

# which graded claims carry the most bound evidence?
depth = (evidence.groupby("claim_id").size()
         .rename("bound_units").reset_index())
claims.merge(depth, on="claim_id") \
      .sort_values("bound_units", ascending=False) \
      [["claim_id", "grade", "direction", "bound_units"]].head()
-- SQL — benefit claims where opposition was bound
SELECT c.claim_id, c.relation, c.grade,
       COUNT(o.record_id) AS opposing_records
FROM claims c
JOIN oppositions o ON o.claim_id = c.claim_id
                  AND o.verdict = 'BOUND'
WHERE c.direction = 'BENEFIT'
GROUP BY c.claim_id, c.relation, c.grade
ORDER BY opposing_records DESC;
# Databricks — the turmeric share, zero download
# catalog: mfi_turmeric  (Delta Sharing recipient)
spark.sql("SELECT * FROM mfi_turmeric.claims WHERE grade='HIGH'").show()

Keys you can rely on

Record IDs are content-derived and stable across rebuilds — CLM-…, STU-… identifiers don't drift between releases, so your queries survive version deltas. The version_deltas ledger records exactly which rows changed between releases, so you can diff rather than re-scan.

The tables that matter most

TABLE
COLS
ROWS
CONTENT
claims
41
36
Compiled claims — weakest-link ceilings, grade basis, bound evidence, uncertainty statements.
studies
—
974
Reconstructed study objects — design, model, year, duration, risk-of-bias.
evidence
21
264
Evidence units bound to claims — extraction method, verification status, provenance.
effects
21
211
Typed effect estimates — measures, intervals, verification flags.
oppositions
—
—
Counter-evidence screen — candidates bound or rejected, with reasons.
graph_nodes / graph_edges
10 / 5
8,829 / 10,498
Content-hashed provenance graph — sources to claims, end to end.
authority_lock
2
13
Frozen build-authority fields bound to the release.
← Manual 03 — Verification Back to home →