Annotation format
Each sample in a Mandavo release ZIP includes a merged JSON annotation file and one or more PNG page images. Labels are extracted from the DOM at render time, not from OCR.
Coordinate system
| Origin | Top-left of the page image |
| Units | Pixels |
| Format | [x_min, y_min, x_max, y_max] |
| Page index | 1-based |
Top-level structure
{
"document": { "...": "structured invoice ground truth" },
"rendering": {
"document_id": "invoice_00000001",
"template_family": "classic_de",
"coordinate_system": "pixel_top_left",
"pages": [ "..." ]
}
}
Semantic fields
Normalized field names (language-independent) with display labels per locale:
{
"invoice_number": {
"value": "RE-2026-00491",
"page": 1,
"bbox": [1200.0, 310.0, 1450.0, 330.0],
"display_label": "Rechnungsnummer"
}
}
Words and layout
Each page includes words[] with text and bboxes, layout regions (header, table, totals), and line_items[] with per-cell boxes.
Degradation metadata
When degradation is enabled, rendering.degradation records difficulty, scan effects, degradation_tags[], and physical_artifacts[] (stains, stamps, punch holes).
Export bundle
Release ZIPs also contain manifest.jsonl, train/val/test splits, checksums, and QA artifacts. Download the free sample to inspect a full example.