Skip to content
Novus Examples
xfdf629 B

Malformed Document (intentionally corrupt XFDF)

Intentionally corrupt. An XFDF document with an unclosed field element and no closing root tag, so a strict parser must reject it and a lenient one must say what it recovered. Small on purpose - the damage is structural, not volume.

Preview — first 13 linesxfdf
<?xml version="1.0" encoding="UTF-8"?>
<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">
  <f href="acro-checkbox-matrix.pdf"/>
  <fields>
    <field name="inspection_passed"><value>Yes</value></field>
    <field name="photos_attached"><value>Off</value>
    <field name="parts_ordered"><value>Yes</value></field>
    <field name="engineer"><value>Sample Engineer &amp; Co</value></field>
    <field name="visit_date"><value>2026-05-12</value></field>
  </fields>
<!-- INTENTIONALLY CORRUPT SAMPLE: the photos_attached field element above is never closed,
     and the closing xfdf tag below is missing entirely. -->

Specifications

Corrupt
true
Bound To
acro-checkbox-matrix.pdf
Fields
5
Defect
unclosed field element and missing root close tag

What is a .xfdf file?

XFDF (XML Forms Data Format) is the XML representation of PDF form data — the modern, human-readable successor to binary FDF. It records each field name and value as XML elements and references the source PDF, making it easy to generate, diff, and transform with standard XML tooling. It is widely used to pre-fill and extract data from AcroForm PDFs.

How to use this file

Use an example XFDF to test XML-based PDF form-data import/export, pre-filling AcroForms from a server, and parsing form submissions with ordinary XML libraries.

How to use this file for testing

“Malformed Document (intentionally corrupt XFDF)” is a deterministic Novus Examples fixture for Form testing, PDF form filling, AcroForm, Form parsing. HTML and PDF form files for testing scrapers, autofill, validators, and PDF form fillers across real-life use cases.

Documented properties for this file: 5 fields. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

This form is fictional SAMPLE content for tooling tests (autofill, scrapers, PDF fillers). It is not an official government, bank, or clinic form. Open the HTML offline or fill the PDF in any viewer; the demo submit path never stores data.

Generated by generation/forms_p7.py. Free for any use, no attribution required — license.