Addressing
The library is a two-level tree: collections contain folios (page images). A folio’s address is{slug}/{index} — the collection’s slug plus a zero-based
image index — and it is identical everywhere:
The three layers of a folio
1. The scan — image
Three sizes, all public, all CDN-served:
2. The original — transcriptions
The scholarly e-Leo transcription of Leonardo’s Italian, from the Biblioteca
Leonardiana. One page image usually carries one transcription; an opening
photographed as a spread (Codex Arundel, Codex Madrid) can carry two — one per
visible folio. Pages with no surviving transcription have an empty array.
Each transcription is an ordered list of text blocks (texts), and that order
matters — it’s what the translation aligns to.
3. The Reader’s Edition — enrichment
The AI-written editorial layer. It never modifies the source; it sits beside it:
Evidence pointers
Every highlight initems says where it comes from, so nothing floats free:
text:2→ grounded in block 2 of the transcription — the English for that block is theenglishentry withorder: 2.visual:…→ grounded in the drawing itself, for elements with no accompanying text.
Honest nulls
The data tells you what it doesn’t know:transcriptions: []— no e-Leo transcription survives for this page; the Reader’s Edition record was written from the scan (source: "none").enrichment: null— the page is outside the enriched scope (rare).kind: "flyleaf"/"binding"— a cover, not content; expect no subjects and no highlights.