VeryPDF PDF Form Filler Home  PDF Form Filler  Document

What is XFDF?

ANSWER: XFDF stands for "XML Forms Data Format." XFDF is an XML-based file format for representing form data and annotations that are contained in a PDF form.

The XFDF format can be used in a variety of workflows. Here are a just couple of examples:
Sending form data to a server and receiving modified form data back from the server. This workflow would look something like this:

Archiving form data. This workflow would look something like this:

You might be wondering why you'd want to archive an XFDF file containing the data for a PDF form instead of simply archiving a uniquely named version of the entire PDF form with the data included in it. There are two reasons:

  1. An XFDF file containing form data for a PDF form is much smaller than the file containing the PDF form itself, so archiving XFDF files requires less storage space than archiving PDF forms.

  2. Some software that people use to view and interact with PDF forms does not allow the user to save a filled-in PDF form. For example, the free "Adobe Reader" software does not allow this.

IMPORTANT NOTE TO DEVELOPERS: An XFDF file contains the filename and location of the PDF form from which the form data in that particular XFDF file was exported. Adobe Acrobat (and any PDF-viewing/editing application that supports PDF forms) relies on that filename and location in order to retrieve and open the appropriate PDF form when opening an XFDF file. In other words: when opening an XFDF file, a PDF viewing/editing application assumes that the PDF form from which the form data was exported is available at the specified location.

Therefore, if you are a developer that is considering implementation of a system that archives XFDF data, you'll want to make sure that your system has a reliable method of storing the required PDF forms in known locations. Otherwise, it will not always be possible for PDF-viewing/editing applications to retrieve and open the PDF Forms when they are needed.


*Some PDF-viewing/editing applications do not support all features and functionality related to PDF forms.

Creating your own XFDF files

As mentioned, the two workflows described above are just examples of how you can utilize XFDF data. Both of those workflows rely on a PDF-viewing/editing application such as Adobe Acrobat for creation of the XFDF data.

However, you don't have to rely on a PDF-viewing/editing application to generate XFDF data ?it is possible to generate XFDF data yourself, and depending upon what you need to accomplish, it might make sense to do just that. For example, if you have data stored in a database, it would be possible (if you are a programmer or if you have access to someone with programming skills) to extract data from your database and put it in XFDF format. Or, if you have a Web site where site visitors enter data into an HTML form, you or your programmer could write a script to convert the data entered by users to XFDF format. As stated below, the XFDF format is described in detail in Adobe's XML Forms Data Format Specification, so you'd need to read that document to gain an understanding of the XFDF format before you'd be able to generate your own XFDF data.

Populating PDF forms with XFDF data dynamically

You don't have to rely on a PDF-viewing/editing application to load XFDF data into PDF forms. Instead, you (or your programmer) can use a programmer's toolkit to put XFDF data into your PDF forms automatically. VeryPDF sells three programmer's toolkits that allow you populate PDF forms with FDF data automatically: PDF Form Filler Command Line, PDF Form Filler SDK, FDF Merger.

Depending on which of these programmer's toolkits you're using, you might even be able to put graphics as well as text into your PDF forms!

How to get more information about the XFDF format

The XFDF format is described in Adobe's XML Forms Data Format Specification.


VeryPDF.com | VeryDOC.com | VeryPCL.com | Links | Contact

Copyright ?2000-2007 by VeryPDF.com, Inc.
Send comments about this site to the webmaster.