Mismatched Field Manifest (intentionally corrupt JSON)
Intentionally corrupt. A field manifest that claims to describe acro-checkbox-matrix.pdf but names two fields the PDF does not have, omits one it does, contradicts one field's type and states a count that does not match its own array.
{
"schemaVersion": 1,
"generatedBy": "generation/forms_p7.py",
"note": "INTENTIONALLY CORRUPT SAMPLE. This manifest deliberately disagrees with the PDF it names.",
"boundTo": "acro-checkbox-matrix.pdf",
"defects": [
"two fields listed here do not exist in the PDF",
"one field in the PDF is missing from this list",
"one field's declared type contradicts its AcroForm widget",
"the fieldCount does not match the length of the fields array"
],
"fieldCount": 9,
"fields": [
{
"name": "inspection_passed",
"type": "checkbox"
},
{
"name": "photos_attached",
"type": "checkbox"
},
{
"name": "parts_ordered",
"type": "checkbox"
},
{
"name": "follow_up",
"type": "checkbox"
},
{
"name": "customer_present",
"type": "checkbox"
},
{
"name": "sample_ack",
"type": "text"
},
{
"name": "engineer",
"type": "text"
},
{
"name": "inspector_signature",
"type": "signature"
},
{
"name": "warranty_months",
"type": "number"
}
]Specifications
- Corrupt
- true
- Bound To
- acro-checkbox-matrix.pdf
- Declared Count
- 9
- Actual Count
- 9
- Defect
- field list disagrees with the PDF it names
Testing contract
Expected to fail- Scenario
- Exercise Mismatched Field Manifest (intentionally corrupt JSON) in its form data workflow. Intentionally corrupt.
- Expected result
- Report the intended validation failure (field list disagrees with the PDF it names); never silently treat it as a conforming input. top-level keys are schemaVersion, generatedBy, note, boundTo, defects, fieldCount, fields; array lengths: defects=4, fields=9; selected values: {"schemaVersion": 1, "fieldCount": 9}. Declared feature checks: corrupt=True; boundTo=acro-checkbox-matrix.pdf; declaredCount=9; actualCount=9; defect=field list disagrees with the PDF it names.
What is a .json file?
JSON (JavaScript Object Notation) is a lightweight, text-based data-interchange format representing objects, arrays, strings, numbers, booleans, and null. It is language-independent, human-readable, and the dominant format for web APIs and configuration. It requires a single well-formed root value.
How to use this file
Use an example JSON file to test parsers and serializers, schema validation, Unicode and number-precision handling, and API request or response processing.
How to use this file for testing
“Mismatched Field Manifest (intentionally corrupt JSON)” is a deterministic Testaroo fixture for Form parsing, Form testing, JSON parsing. PDF AcroForms with documented fields and live HTML forms for testing form parsers and fillers.
Documented properties for this file: JSON · 1,126 bytes. 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.
Code examples
import json
with open("broken-field-manifest.json") as f:
data = json.load(f)
print(type(data), len(data))Related files
- jsonAlder Books Reconciliation: Banking reconciliation identitiesBanking reconciliation identities for Alder Books Reconciliation. 5 named identities covering the amortisation, the unfinanced arrangement fee, the covenant directions, the direct debit control sum and the two different chargeback totals, with the figures behind each. The deliberate defect and its measured 36.15 USD closing balance are listed separately.

- jsonAlder Books Reconciliation: Credit application JSONCredit application JSON for Alder Books Reconciliation. The same application as an object, with each financial summary row keeping the source string that names the file and column it came from. The connected facility is a nested object rather than a string, so a reader can tell that the existing borrowing belongs to a different entity.

- jsonAlder Table Bistro: Cost of goods sold documentCost of goods sold document for Alder Table Bistro. The same statement as JSON, listing all 24 purchase ids it consumed so the total can be checked against the shared purchases table by id. Totals: opening 1736.91, purchases 2834.82, closing 2996.92, cost of goods sold 1574.81 CAD.

- jsonAlder Table Bistro: Daily Z-read as structured dataDaily Z-read as structured data for Alder Table Bistro. The same Z-read as JSON: 4 item lines, a summary block, 3 tender lines that sum to the total collected, 2 voids, one comp, 1 refund traced to its sales id, and a cash drawer block whose expected figure less the counted figure equals the declared over/short of -0.35 CAD.

- jsonAlder Table Bistro: Digital menuDigital menu for Alder Table Bistro. One document holding the whole front of house: 3 printed sections with 4 dishes, 8 drink lines, the set menu, the specials and the 14 entry allergen key. Every dish carries its plate cost and the paths of the two costing files it was read from, so the join back to plate-costs.csv can be checked without guessing.

- jsonldAlder Table Bistro: Menu as schema.org JSON-LDMenu as schema.org JSON-LD for Alder Table Bistro. A schema.org Menu document with 7 MenuSection nodes, 5 of them top level, and 27 MenuItem nodes carrying 27 Offer nodes, each with price as a JSON number and priceCurrency CAD. Modifiers are menuAddOn MenuItems and every declared allergen travels as an additionalProperty PropertyValue. This is the structured data shape a search engine reads, and it is rare as a downloadable fixture.

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