Reconstructs the invoice schema into nested invoice_metadata, advertiser, station, account_details, billing_address, remit_address, flight_dates, line_items, and summary sections rather than returning a flat document dump.
What was measured
Schema Adherence
Does the output follow the supplied JSON schema hierarchy exactly, with correct nesting, field names, and data types?
decisive for this rankingtransformation
If the tool does not follow the supplied JSON schema exactly, the extracted data cannot be reliably used for structured querying or downstream automation. (3 of 3 judges)
What was given, what came back
Test input: Invoice PDF · pdf · group: business-document-extraction
Input — what we sent
A two-page broadcast advertising invoice PDF with nested header metadata, billing and remit addresses, and eight line items spanning a page break. It was used to stress hierarchical line-item extraction, amount precision, time/day parsing, code extraction, and summary validation.
Why this input is hard
- · Nested line-item hierarchy extraction
- · Multi-page continuity across a page break
- · Precision on large dollar amounts and totals
- · Parsing complex time slots and day patterns
- · Extraction of Ad IDs and reconciliation codes
- · Mapping structured metadata sections correctly
- · Financial summary validation
- · Handling political advertising compliance text
Output — unretouched
Loading file...
Also checked on this input — same tool, 6 other criteria
Extraction Accuracy◐ MixedRetains the source label in payment_terms, returning 'Payment Terms 30 Days' instead of only the requested value, so the field is not fully normalized.Extraction Accuracy✓ WorkedExtracts the invoice summary totals correctly, including agency_commission 4462.5, aired_spots 8, gross_total 29750, and net_amount_due 25287.5.Extraction Accuracy✓ WorkedExtracts invoice metadata with machine-readable values such as invoice_number 4064621-1, invoice_date 2012-10-28, invoice_period_start 2012-10-01, and advertiser_code 155.Semantic Field Enrichment✓ WorkedDerives scheduling fields from the line item, including day_of_week 'Su', days_pattern '------S', air_time '09:38:00', and time_slot '9a-10a'.Structural Clean Output⚠ StruggledPreserves valid JSON but does not keep the schema's original key order, so downstream consumers that expect schema-consistent ordering need an extra formatting step.Table & Record Completeness✓ WorkedExtracts all 8 advertising line items as separate structured records without duplication or omission.
Provenance
- Observation
- 1aade406-f689-48ea-92b7-1b2089eae31b
- Evidence run
- a061b9e7-a9c5-443d-a171-b296aaf51b8c
- Study
- Extract and query structured data from documents using natural language
- Research task
- 86b9y25e5
- Tested at
- not recorded
- Source
- first-party
- Evidence state
- verified
- Proof shown
- input + output shown
- Cost / latency
- not captured
- Repeat run
- not captured
- Tester
- not captured
The last three rows are honest blanks, not placeholders — our capture has no field for them yet.
Query this
get_evidence({
tool: "retab",
scenario: "business-document-extraction"
})MCP · mcp.aidemos.com/api/mcp
Free with attribution.
Same input, same check — 7 other tools
measured on Schema Adherence
Datalab✓ WorkedThe invoice workflow can emit nested schema-shaped JSON with separate invoice_metadata, advertiser, station, account_details, billing_address, remit_address, flight_dates, line_items, and summary objects rather than flat OCR text.Extend AI✓ WorkedThe tool reconstructs the invoice hierarchy into nested JSON with invoice_metadata, advertiser, station, summary, and line_items objects rather than returning raw OCR.Landing AI✓ WorkedReconstructs the invoice hierarchy into invoice_metadata, advertiser, station, billing_address, remit_address, flight_dates, line_items, and summary objects rather than returning flat OCR text.LlamaParse✓ WorkedThe invoice output follows the supplied hierarchy closely, returning nested invoice_metadata, advertiser, station, line_items, and summary objects instead of a flat text dump.Nanonets✓ WorkedPreserves the requested invoice hierarchy, populating invoice_metadata, advertiser, station, account_details, billing_address, remit_address, flight_dates, line_items, and summary as separate JSON objects rather than flattening the page.Reducto✓ WorkedReconstructs the requested nested invoice JSON rather than flattening the document, populating invoice_metadata, advertiser, station, account_details, billing_address, remit_address, flight_dates, line_items, and summary sections.Unstract✓ WorkedPopulates the invoice extraction into the requested hierarchy, separating invoice_metadata, advertiser, station, account_details, billing_address, remit_address, flight_dates, line_items, and summary fields.
This evidence is published in
Real inputs and real outputs, no retouching · every cell queryable via API & MCP · aidemos.com