Checkpoint 25: XFA
PDFs must not contain XFA (XML Forms Architecture) forms. XFA is an older form technology that is fundamentally incompatible with PDF/UA accessibility standards and cannot be used with assistive technologies.
What This Means
XFA (XML Forms Architecture) is a form technology that Adobe introduced in the early 2000s as a way to create dynamic, intelligent forms within PDF files. Unlike standard AcroForms (the accessible PDF form format), XFA forms use a completely different rendering architecture that operates outside the normal PDF content stream.
The critical problem with XFA forms is architectural: they exist as a separate XML data island within the PDF that cannot be tagged or made accessible through normal PDF accessibility mechanisms. When a screen reader or other assistive technology encounters an XFA form, it typically sees either nothing (the form is invisible) or an incomprehensible mess of unstructured content.
As of PDF 2.0 (ISO 32000-2:2020), XFA has been officially deprecated and removed from the PDF specification entirely. Adobe has also ended development of XFA in newer versions of their tools. Despite this, many legacy XFA forms remain in circulation, creating ongoing accessibility barriers.
Why It Matters
XFA forms present a complete accessibility barrier, not just a suboptimal experience:
- Total screen reader failure: Screen readers cannot navigate, read, or interact with XFA form fields. Users who are blind cannot complete these forms at all.
- No keyboard accessibility: XFA forms often cannot be navigated using keyboard alone, blocking users with motor disabilities
- Reader compatibility issues: Many PDF readers do not support XFA at all, showing blank pages or error messages
- Legal compliance failure: Documents with XFA forms automatically fail PDF/UA validation and cannot meet WCAG requirements
- Deprecated technology: Adobe has stopped developing XFA, meaning these forms become increasingly problematic over time
For organizations that must collect information through forms, using XFA means potentially excluding a significant portion of users entirely. There is no workaround or accommodation that can make an XFA form accessible - the only solution is conversion to AcroForms or another accessible format.
Common Violations
The Matterhorn Protocol defines one failure condition for XFA forms, which is machine-testable.
25-001: File Contains dynamicRender Element with Value 'required'
What's Wrong: The PDF contains an XFA form that requires dynamic rendering. This is detected by examining the PDF structure for an XFA data stream with a dynamicRender element set to required. This means the form cannot be displayed without XFA processing, making it completely inaccessible.
How to Identify:
- Run a PDF/UA validation tool (PAC, Adobe Accessibility Checker)
- The validator will report an XFA-related failure
- You may also notice the form does not work in non-Adobe PDF readers
- Screen reader users report the form is completely non-functional
Technical Details:
When a PDF contains XFA, the file structure includes:
- An XFA key in the document's AcroForm dictionary
- XML data streams containing the form definition
- A
dynamicRenderelement that specifies rendering requirements
If dynamicRender is set to required, the PDF viewer must support XFA dynamic rendering to display the form. Most PDF viewers (and all assistive technologies) do not support this, resulting in:
- Blank pages in many PDF readers
- Error messages stating the form requires Adobe Reader
- Complete failure of assistive technology access
Common Sources of XFA Forms:
- Adobe LiveCycle Designer (specifically designed for XFA creation)
- Older versions of Adobe Experience Manager Forms
- Legacy enterprise form systems
- Government and financial institution forms created before 2015
- Forms migrated from paper that used LiveCycle for conversion
How to Fix in Adobe Acrobat
Converting XFA forms to accessible AcroForms is not straightforward because the technologies are fundamentally different. Here are your options.
Option 1: Convert Using Adobe Acrobat Pro (Limited Success)
Adobe Acrobat can sometimes convert simple XFA forms to AcroForms:
- Open the XFA form in Adobe Acrobat Pro DC
- A yellow banner may appear stating "This form contains XFA content"
- If offered, click the option to convert to AcroForm format
- Go to File > Save As Other > Reader Extended PDF > Enable More Tools
- Save with a new filename
Important Limitations:
- Complex XFA forms often fail to convert correctly
- Dynamic calculations and validations may not transfer
- Form layout may change significantly
- You must thoroughly test the converted form
Option 2: Recreate the Form as an AcroForm
For complex forms, recreation is often more reliable than conversion:
- Print or export the XFA form to identify all fields
- Create a new PDF with the same layout (or use the XFA PDF as a background)
- Go to Tools > Prepare Form
- Click Start to enter form editing mode
- Add new form fields matching the original:
- Text fields for text input
- Check boxes for yes/no options
- Radio buttons for single-select options
- Dropdown lists for selection menus
- Buttons for form actions
- Add tooltips (which serve as accessible names) to each field
- Set the tab order for logical keyboard navigation
- Test with a screen reader before deployment
Option 3: Use Adobe LiveCycle Designer to Export
If you have access to the original LiveCycle Designer source file (.xdp):
- Open the form in Adobe LiveCycle Designer
- Go to File > Form Properties
- Under Defaults, change Form Type to "Acrobat Static"
- Save and re-export the PDF
- Test the resulting PDF for accessibility
Note: This only works for relatively simple forms and requires access to the original source files.
Adding Accessibility to the New AcroForm
After conversion or recreation, you must ensure accessibility:
-
Add Tooltips to All Fields
- Select each form field
- In Properties, go to the General tab
- Enter a descriptive tooltip (this becomes the accessible name)
-
Set Tab Order
- Go to Tools > Prepare Form
- Click More > Set Tab Order
- Arrange fields in logical reading order
-
Add Form Instructions
- Include clear instructions at the top of the form
- Explain required fields, format requirements, and submission process
-
Tag the Document
- Go to Tools > Accessibility > Add Tags to Document
- Run the Accessibility Checker to verify
-
Set Document Language
- Go to File > Properties > Advanced
- Set the reading language
How to Fix in Microsoft Word
Microsoft Word creates AcroForms (not XFA) when you add form fields, making it a good choice for creating accessible forms.
Creating Accessible Forms in Word
-
Enable the Developer Tab
- Go to File > Options > Customize Ribbon
- Check Developer in the right column
- Click OK
-
Add Content Controls (Recommended)
- Go to the Developer tab
- Use Content Controls for form fields:
- Rich Text or Plain Text for text input
- Check Box for checkboxes
- Combo Box or Drop-Down List for selections
- Date Picker for date fields
-
Add Labels and Instructions
- Place clear labels before each form field
- Use regular paragraph text, not text boxes
- Include instructions for completing the form
-
Set Control Properties
- Select each content control
- Click Properties in the Developer tab
- Add a meaningful Title (becomes the accessible name)
- Add Tag information if needed
Exporting to Accessible PDF
- Go to File > Save As
- Select PDF as the format
- Click Options
- Check Document structure tags for accessibility
- Check Create bookmarks using: Headings if applicable
- Click OK and save
Testing the Exported Form
- Open the PDF in Adobe Acrobat
- Go to Tools > Accessibility > Accessibility Check
- Run the checker with PDF/UA selected
- Verify no XFA-related errors appear
- Test all form fields with a screen reader
Alternative: Use Word's Legacy Form Fields
For simpler forms, Word's legacy form fields also export well:
- In the Developer tab, click Legacy Tools
- Use Legacy Forms controls for basic fields
- These convert to standard AcroForm fields in PDF
Testing Your Fix
After converting from XFA to AcroForm, thorough testing is essential.
Automated Validation
-
Run PAC (PDF Accessibility Checker)
- Open the converted PDF in PAC
- Run the PDF/UA check
- Confirm no Checkpoint 25 failures appear
- Look for any "XFA" mentions in the report
-
Adobe Acrobat Accessibility Check
- Go to Tools > Accessibility > Accessibility Check
- Run with PDF/UA-1 selected
- Verify no XFA-related errors
- Check that all form fields have accessible names
Screen Reader Testing
Test the form with actual assistive technology:
-
NVDA (Free, Windows)
- Open the PDF in Adobe Reader with NVDA running
- Press Tab to move through form fields
- Verify each field is announced with its label
- Confirm you can enter data in all fields
-
JAWS (Windows)
- Open in Adobe Reader with JAWS running
- Use F5 to list all form fields
- Navigate and complete the form using keyboard only
- Verify all fields are accessible
-
VoiceOver (Mac)
- Open in Preview or Adobe Reader
- Enable VoiceOver (Command + F5)
- Navigate through the form
- Confirm all fields are announced correctly
Functional Testing
Ensure the converted form actually works:
- Complete the form using only keyboard navigation
- Verify calculations if the original had them (may need recreation)
- Test validation messages and required field indicators
- Submit the form to confirm data collection works
- Compare data from the new form to expected format
PDF Reader Compatibility
Test in multiple PDF readers to ensure broad compatibility:
- Adobe Acrobat Reader
- Chrome built-in PDF viewer
- Firefox built-in PDF viewer
- Microsoft Edge PDF viewer
- Preview (macOS)
- Mobile PDF readers (iOS, Android)
Verification Checklist
- PDF/UA validation passes (no Checkpoint 25 failures)
- No XFA elements detected in document structure
- All form fields have accessible names (tooltips)
- Tab order follows logical reading sequence
- Form can be completed using keyboard only
- Screen readers announce all fields correctly
- Form opens correctly in non-Adobe PDF readers
- Form data can be submitted/saved successfully
Additional Resources
Official Standards and Guidelines
- W3C WCAG 2.1 Success Criterion 4.1.2: Name, Role, Value
- PDF Association Matterhorn Protocol 1.02
- ISO 14289-1 (PDF/UA-1) Standard
- ISO 32000-2:2020 (PDF 2.0) - Note: XFA is deprecated
Adobe Documentation
Tutorials and Guides
- WebAIM: Creating Accessible Forms
- PDF Association: Forms in PDF/UA
- Section 508: PDF Form Accessibility
Tools
- PAC (PDF Accessibility Checker) - Free PDF/UA validation
- NVDA Screen Reader - Free screen reader for testing
- Adobe Acrobat Pro DC - For form conversion and remediation
Migration Resources
This documentation is based on the Matterhorn Protocol 1.02, the definitive reference for PDF/UA validation. XFA forms are fundamentally incompatible with accessibility standards and must be converted to AcroForms or recreated. For the most current information, consult the PDF Association and W3C WCAG guidelines.