I am not enjoying writing this article. It is a sad feeling that we have to choose between XFA and AcroForms technologies. It should not be this way. These technologies should not compete, but they do, and that’s the way it is.
Okay, more let’s get into facts:
Acroforms are the original PDF-based fillable forms, based on the PDF architecture (ISO 32000-1 standard). XFA forms are XML-based forms, embedded inside a PDF. So, what’s the difference—and more importantly, which should you use? Let’s dive into details.
Acroforms were introduced in 1996 as a part of PDF 1.2 specification. In parallel with PDF specification evolvement, Adobe acquired JetForm, who was using XFA in 2002. Adobe adopted the XFA format as the standard for PDF forms of a larger platform - Adobe LiveCycle. However, since XFA specification was proprietary standard, Adobe made it available to Acrobat-only users. And that’s where the frustration and confusion began—two PDF fillable form standards from the same vendor at the same time.
Last 5 years did not solve the confusion. Adobe announced retirement of Adobe LiveCycle and started transition to Adobe Digital Enterprise Platform. Basically, locking organizations to take a huge platform instead of separate modules. However, even you were adopting XFA you might not be ready to give up all your other platforms like Microsoft Office 365 or SharePoint. That leaves many customers understandably thinking about replacing their XFA forms with Acroforms. If you’re in that situation, here are some things to consider.
When discussing PDF fillable forms, we need to differentiate between several aspects:
- Form design or layout, aka, what the user sees on screen and on paper (print).
- Form development, aka, addition of fields, check boxes, buttons, logic, etc. This is what the user interacts with. It’s also the form “brains”.
PDF fillable forms can be very simple and they can be complex and smart. The logic can be extensive and include dynamic behavior, calculations, data validation, electronic data submission, lookup tables, version control, etc.
The main differences
There are many tools you can use to create AcroForms: Adobe Acrobat, PDF Share Forms, FoxIt, NitroPro. Usually this process consists of two steps:
First, you design form layout using Microsoft Word, Adobe InDesign, or Adobe Illustrator, etc. Then you add the form elements – fields, dropdown controls, checkboxes, script logic. Those elements are placed on top of the existing layout. The overall approach allows you easily to replace the form layout without affecting the form elements. This is a very important factor when designing form layout and implementing form logic are performed by different groups in your organization – Marketing and IT.
In case of XFA forms, you only can develop forms in Adobe Forms Designer. While the Adobe Forms Designer allows you to start with an existing PDF file, it bests its power when you design the layout from scratch. This approach relies on a single application to do everything: design and development. Depending on the project and the departments involved, it can be both good and bad.
We need to understand that XFA forms architecture was originally designed back in 1997. Idea was to output the same XFA form in PDF or in HTML using a forms server (depreciated now). And so XFA forms have inherited all the limitations of HTML.
Content reflow hype
Let’s say you need your form to dynamically re-write page content based on user input. This is a perfect task for XFA. XFA forms can do one thing that Acroforms can’t do: reflow PDF content.
Here is another example, you need the form to dynamically add more rows to accommodate varying data, while pushing the content layout down to make room for the new rows, XFA can do it. This solves some problems but creates other and not less critical ones.
Content reflowing is a great feature but it’s impractical if your form needs to be printed and its data is collected using an OCR-based system later. Even if your organization does not use OCR, your customers and partners might. Where is the problem? If printed form must pass through OCR- processing systems, it would expect to find the same data in the same place. If you move the data, OCR cannot recognize new areas and data gets lost. This issue has a solution – to use 2D barcodes. That eliminates the need for OCR and it’s significantly more accurate. But it’s still not perfect. 2D barcodes have fixed dimensions according to the amount of data they hold, and if you move the layout you may end up not being able to draw the 2D barcode at all. Again, no luck with reflow.
Alternatively, you can use tools like PDF Share Forms and send electronic data directly to the server. Or you can develop a custom solution that reads electronically submitted data from your PDF forms.
Another challenge with reflow content is complexity. It is not only “let’s add more rows as users wishes” but also to configure how all subsequent sections of the form should break when next page appears. If you ever tried to make HTML page to print perfectly, you would know how not trivial this task is.
What about markup the form in addition to filling fields?
There are real life scenarios when users require drawing (markup) on the form page to highlight text, circle an item on a diagram, or draw ad hoc shapes, for example, to sketch a street-corner in a police report. XFA forms have no concept of markup.
If you do, then there is no better technology than PDF. If you don’t, I suggest considering different technologies better suited for desktop and mobile devices.
Do you need your forms to be maximally accessible?
Acrobat forms have a well-established accessibility model, and when properly tagged, offer excellent performance in terms of accessibility to users with disabilities and compliant with Section 508. By contrast, XFA forms have many accessibility limitations.
What about all the United States government forms? IRS, etc.
Many forms created by the United States government are a mix of XFA and AcroForms. Let me introduce XFA Foreground (XFAF) – like it was not confusing enough before that.
XFAF is a subset of XFA specification that merges well with AcroForms. In other words, XFAF is an AcroForm that has some technical definitions of XFA forms. This mix approach downgrades all (even if only a few) benefits of XFA to all features that are available in AcroForms. So why all the fuss?
The US agencies create most of their forms and as such their personnel benefit from Adobe Forms Designer capabilities. However, to achieve maximum users they use XFAF so all PDF readers can form with such forms. As a result, you and I can fill-in tax forms (IRS 1040, W9), monitor injury reporting (OSHA 300 form).
If you are thinking of taking your PDF forms online, then you need to think VERY carefully. Standard PDF Acroforms are supported by dozens of different companies (yes, competition makes it less expensive J).
Loading data into an XFA form on the server, however, remains an Adobe-only thing (Adobe Digital Enterprise Platform), and as things stand, you’ll pay, pay and pay again.
For small and medium size businesses, departments and almost all enterprises, standard PDF forms applications offer remarkably cost-effective solutions in most “static page” forms implementations.
Looking into the future and PDF 2.0
PDF today is already a mature, broadly supported and universally accepted electronic document format at version 1.7, just as Adobe left it in 2008. Why, then, does the world need PDF 2.0?
There are many technical reasons but to put it simply: PDF 2.0 (ISO 32000-2) to make it easier for developers to create tools to manage electronic documents with more and better features at a reduced cost.
At this point, ISO 32000-2 has passed its DIS4 vote and if we have to guess, it will become a specification late 2017, early 2018.
In context of this discussion, one of the relevant changes in PDF 2.0 is …XFA forms are no longer part of PDF 2.0. While the clear majority of available PDF software doesn’t support XFA forms, it is another step in moving XFA to proprietary standard specific only to Adobe. And probably a good reason for many organizations to start transitioning from XFA.
So, which one is better?
If you use existing PDF fillable forms, stay with Acroforms. The support for Acroforms (what makes the form compatible across devices and viewrs) is much better than in XFA.
Want to convert XFA forms to Acroforms? There are many applications out there that will let you do it. It is unlikely that conversion can be automatic, yet those tools can be very helpful during the transition.
Still not sure? Contact PDFSF if you have doubts or planning to move your PDF forms to SharePoint.