VARIANT A
Headers with th + scope
Expected value row : Exact values, in order · Column headers : Explicit relationship · Row header : Relationship not demonstrated. Source
01 · The HTML change
<table><caption>Synthetic measurements</caption><thead><tr><th class="case-cell" scope="col">Indicator</th><th class="case-cell" scope="col">Unit</th><th class="case-cell" scope="col">Period</th><th class="case-cell" scope="col">Value</th></tr></thead><tbody><tr><th class="case-cell" scope="row">Response time</th><td class="case-cell">seconds</td><td class="case-cell">May 2026</td><td class="case-cell">1.8</td></tr></tbody></table>Exact input excerpt · Original HTML ↓
02 · What the tool produces XML
…
.</p>
<head rend="h2">Synthetic measurements</head>
<table>
<row>
<cell role="head">Synthetic measurements</cell>
</row>
<row>
<cell role="head">Indicator</cell>
<cell role="head">Unit</cell>
<cell role="head">Period</cell>
<cell role="head">Value</cell>
</row>
<row>
<cell>Response time</cell>
<cell>seconds</cell>
<cell>May 2026</cell>
<cell>1.8</cell>
</row>
</table>
<p>The conclusion must be read with its unit, period, scope and caveat. Finding a word in an output is not enough to prove that the relationship was preser
…
Excerpt identified by the corrected evaluator. Full output below.
03 · The documented observation
- Expected value row
- Exact values, in order
- Column headers
- Explicit relationship
- Row header
- Relationship not demonstrated
- Output structure
- Present
Verdict source: results.json · table-en-1 / trafilatura
Inspect the full evidence
The verdicts above come from corrected results.json. The raw file’s evaluation fields are historical and are not authoritative here.
results.json/cases/8/evaluation/relation/trafilatura
Corrected verdict, unchanged
{
"status": "ok",
"tool_class": "content_extractor",
"format": "xml",
"table_structure": "present",
"expected_data_row": "exact_values_in_order",
"column_header_relation": "explicit",
"row_header_relation": "not_explicit",
"column_labels": [
"Indicator",
"Unit",
"Period",
"Value"
],
"data_values": [
"Response time",
"seconds",
"May 2026",
"1.8"
],
"evidence": {
"header_row": "<cell role=\"head\">Indicator</cell><cell role=\"head\">Unit</cell><cell role=\"head\">Period</cell><cell role=\"head\">Value</cell>",
"data_row": "<cell>Response time</cell><cell>seconds</cell><cell>May 2026</cell><cell>1.8</cell>",
"table_excerpt": "<table>\n <row>\n <cell role=\"head\">Synthetic measurements</cell>\n </row>\n <row>\n <cell role=\"head\">Indicator</cell>\n <cell role=\"head\">Unit</cell>\n <cell role=\"head\">Period</cell>\n <cell role=\"head\">Value</cell>\n </row>\n <row>\n <cell>Response time</cell>\n <cell>seconds</cell>\n <cell>May 2026</cell>\n <cell>1.8</cell>\n </row>\n </table>"
},
"output_field": "trafilatura.xml",
"output_sha256": "6d29047970a22bb54d72b4d58bf6236608242f90a1a0636efa5672153f992560",
"source_column_headers_explicit": true
}
Complete studied output field
trafilatura.xml
<doc fingerprint="7ac7dded2726fc7">
<main>
<head rend="h1">Offline protocol for preserving relationships</head>
<p>This synthetic document compares two markups while text, order, classes and surroundings remain identical. The data are fictional and describe neither Edikka nor a client.</p>
<head rend="h2">Synthetic measurements</head>
<table>
<row>
<cell role="head">Synthetic measurements</cell>
</row>
<row>
<cell role="head">Indicator</cell>
<cell role="head">Unit</cell>
<cell role="head">Period</cell>
<cell role="head">Value</cell>
</row>
<row>
<cell>Response time</cell>
<cell>seconds</cell>
<cell>May 2026</cell>
<cell>1.8</cell>
</row>
</table>
<p>The conclusion must be read with its unit, period, scope and caveat. Finding a word in an output is not enough to prove that the relationship was preserved.</p>
</main>
<comments/>
</doc>
Archived version and options
Trafilatura 2.2.0 · Execution 2026-09-20
{
"version": "2.2.0",
"configuration": {
"include_comments": false,
"include_links": true,
"include_tables": true,
"no_fallback": false,
"favor_precision": false,
"favor_recall": false,
"formats": [
"xml",
"txt"
]
}
}
Archived runner · Python options
SHA-256 hashes
- HTML input
374211644b0d1ad2d4ae9647d84e7e3e518ff392b9f4aaa108e438677c2b05da- Evaluated output field
6d29047970a22bb54d72b4d58bf6236608242f90a1a0636efa5672153f992560