Filename extension | .pdf, .xdp |
---|---|
Internet media type | application/pdf, application/vnd.adobe.xdp+xml [1] |
Developed by | JetForm (acquired by Adobe Systems in 2002) |
Initial release | 1999 |
Latest release | 3.3 9 January 2012 |
Container for | PDF, XML |
Contained by | PDF, XDP, FCDT [2] |
Extended from | XML, XHTML, CSS, XSL-FO, PDF |
Standard | No |
Open format? | No |
Website | Adobe XML Forms Architecture |
XFA (also known as XFA forms) stands for XML Forms Architecture, a family of proprietary XML specifications that was suggested and developed by JetForm to enhance the processing of web forms. It can be also used in PDF files starting with the PDF 1.5 specification. The XFA specification is referenced as an external specification necessary for full application of the ISO 32000-1 specification (PDF 1.7). The XML Forms Architecture was not standardized as an ISO standard, [3] and has been deprecated in PDF 2.0. [4]
XFA's main extension to XML are computationally active tags. In addition, all instances created from a given XFA form template keep the specification of data capture, rendering, and manipulation rules from the original. Another major advantage of XFA is that its data format allows compatibility with other systems, and with changes to other technology, applications and technology standards.
According to JetForm's submission to the World Wide Web Consortium, "XFA addresses the needs of organizations to securely capture, present, move, process, output and print information associated with electronic forms." [5] The XFA proposal was submitted to the W3C in May 1999.
In 2002, the JetForm Corporation was acquired by Adobe Systems, and the latter introduced XFA forms with PDF 1.5 and the subsequent Acrobat releases (6 and 7) in 2003. [6]
XFA forms are saved internally in PDF files or as XDP (XML Data Package) files which can be opened in Adobe's LiveCycle Designer software. An XDP can package a PDF file, along with XML form and template data. [7] XDP provides a mechanism for packaging form components within a surrounding XML container.
Although XFA can make use of PDF, XFA is not tied to a particular page description language.
The XFA specification includes an appendix that discusses details of the Adobe-specific XFA implementation and behaviors of Adobe products that deviate from the XFA specification.
Data filled in an XFA form may be submitted to a host using an HTTP POST operation in XDP format, PDF format, XFDF format, XML 1.0 format or as an URL-encoded format.
XFA supports the use of XSLT to transform the XML data before it is loaded to XFA Data DOM or after it is unloaded from XFA Data DOM.
One of XFA approaches to pagination duplicates the pagination logic and much of the syntax of XSL-FO.
XFA forms are synonymous with SmartForms in the Australian government.
XFA defines static forms (since XFA 2.0 and before) and dynamic forms (since XFA 2.1 or 2.2).
In a static form the form’s appearance and layout is fixed, regardless of the field content. Any unfilled fields are present in the form. By default, static forms do not require re-rendering. XFA recognises two types of static forms: "old-style static forms" (using "full XFA") and XFAF (a subset of full XFA, defined since XFA 2.5).
Dynamic forms (defined since XFA 2.1 or 2.2) can change in appearance in several ways in response to changes in the data. Dynamic form requires rendering of its content on file opening. Dynamic forms may also be designed to change structure to accommodate changes in the structure of the data supplied to the form. For example, a page of a form may be omitted if there is no data for it. Another example is a field that may occupy a variable amount of space on the page, resizing itself to efficiently hold its content. Dynamic form cannot rely on a PDF representation of its boilerplate, because the positioning and layout of the boilerplate change as the fields grow and shrink or as subforms are omitted and included.
PDF 1.7 supports two different methods for integrating data and PDF forms. [3] [8]
Adobe XFA Forms are not compatible with AcroForms. When an XFA is packaged inside a PDF file, it is placed in the AcroForm document resources dictionary ("Shell PDF") or referenced from the AcroForm entry in the document catalog.
Creating XFA Forms for use in Adobe Reader requires Adobe LiveCycle Designer. [9] Adobe Reader contains "disabled features" for use of XFA Forms, that will activate only when opening a PDF document that was created using enabling technology available only from Adobe. [10] [11] The XFA Forms are not compatible with Adobe Reader prior to version 6.
Starting with XFA 2.5 forms can use a subset of the full XFA capability. Currently the only specified is the XFAF profile.
XFA can be used as:
XFA forms can be created and used as PDF 1.5 - 1.7 files or as XDP (XML Data Package). The format of an XFA resource in PDF is described by the XML Data Package Specification. [13] PDF may contain XFA in XDP format, but XFA may also contain PDF. [7]
When the XFA (XML Forms Architecture) grammars used for an XFA form are moved from one application to another, they must be packaged as an XML Data Package. The XDP may be a standalone document or it may in turn be carried inside a PDF document. [12]
XFA Form packaging variants (using XDP):
Packaging an XDP within PDF has the advantage that it is more compact, because PDF is compressed. XDP in PDF can be digitally signed in ways that a standalone XDP cannot.
In contrast, packaging form components within an XML container (XDP) makes it easy for standard XML applications to work with XFA forms. The XML components are human readable and easy editable (in contrast with PDF source code). When in XDP form, an XFA document may be validated using schemas attached to XFA specification.
Most PDF processors do not handle XFA content. When generating a shell PDF it is recommended to include in the PDF markup a simple one-page PDF image displaying a warning message (e.g. "To view the full contents of this document, you need a later version of the PDF viewer.", "The full content of this file cannot be displayed with your current PDF viewer.", "Please wait... If this message is not eventually replaced by the proper contents of the document, your PDF viewer may not be able to display this type of document.", etc.). PDF processors that can render XFA content should either not display the supplied warning page image or replace it quickly with the dynamic form content.
In 2013, as a solution for mobile platforms and desktop platforms without XFA support, Adobe created software that creates online HTML5 fillable forms from XFA (known as Adobe "Mobile Forms"). Mobile Forms are not a single file like a PDF or XDP. [14] [15]
Rich text may appear in data supplied to the XFA forms, in XFA templates as default text values, as field captions, or as boilerplate (draw) content.
Starting with PDF 1.5 (XFA 2.02), the text contents of variable text form fields, as well as markup annotations, may include formatting information (style information). These rich text strings are XML documents that conform to the rich text conventions specified for the XML Forms Architecture specification, which is itself a subset of the XHTML 1.0 specification, augmented with a restricted set of CSS2 style attributes. [13]
In PDF 1.6, PDF supports the rich text elements and attributes specified in the XML Forms Architecture (XFA) Specification, 2.2. In PDF 1.7, PDF supports the rich text elements and attributes specified in the XML Forms Architecture (XFA) Specification, 2.4. [13] It was announced in 2011 that PDF 2.0 (ISO 32000 Part 2) would reference XFA 3.1, [16] but when published, PDF 2.0 deprecated it. [4]
When an XFA form is converted to PDF/A, both the boilerplate and field content are flattened into a PDF appearance stream. PDF/A forbids active content and all XFA content except, optionally, the XML Data Document (forms data created by a user).
The XML Forms Architecture specification is not included in the PDF 1.7 standard (ISO 32000-1:2008) and it is only referenced as an external proprietary specification created and published by Adobe. However, the ISO 32000-1 references XFA as normative and indispensable for the application of the ISO 32000-1 specification. XFA was not standardized as an ISO standard.
Since 2007, development of PDF standard has been conducted by ISO's Technical Committee 171/Subcommittee 2/Working Group 8 (TC 171/SC 2/WG 8).
In 2011 the ISO Committee urged Adobe Systems to submit the XFA Specification, XML Forms Architecture (XFA), to ISO for standardization, and requested that Adobe Systems stabilize the XFA specification. The Committee expressed its concerns about the stability of the XFA specification. [16]
In 2017 the ISO Committee deprecated XFA from PDF 2.0. [4]
XFA version | Year of publication | Referenced in PDF version | New features | Adobe Acrobat version | Adobe Designer version |
---|---|---|---|---|---|
2.02 | 2003 | 1.5 | XFA 2.0 supports only static forms | 6.0 | 6 |
2.1 | Connection Set DOM, Connection Data DOM, Data Description DOM, Layout DOM, Connection Set DOM, Connection Data DOM, Data Description DOM, Layout DOM, Special Object Models, Exclusion group element’s capability expanded, Hide/reveal containers depending on relevance, Growable containers, Paragraph formatting, Barcode formatting, Image aspect, Noninteractive fields, Support for Web Services ('doc-literal' SOAP operations over HTTP; the Web Service's WSDL defines SOAP binding operations), Submission of form parts to a target URI, Subforms may include calculations, Calculations may specify override conditions, Scripts specify whether they should be executed on the client, server or both, Document variables, Validation checks against validation-specific picture clauses, Event source included as an event attribute, Use of data description when writing out XML, Dynamic forms, Repeating subforms, Explicit data references, Subform sets, Record processing, Global fields, Data description element, Default data binding to include attribute data, Subform scope option, Automatically breaking layout, Dynamic layout, Flowing layout strategy, Flowing layout support for tables and table-rows, Rich text: Embedded objects, Subscript and superscript support, New Widget Types, Support for Asian-Language Representations, Scripting Object Model: Referencing objects by their class names, FormCalc: New functions to access locale | ||||
2.2 | 2004 | 1.6 | Connection Set DOM, Connection Data DOM, Event for populating drop-down choice list widgets, W3C XML digital signatures, Uniquely identifying templates, Document variables used as named script objects | 7.0 | 7 |
2.4 | 2006 | 1.7 and ISO 32000-1 | Form fragments, Bar code encryption, Barcode character encoding, URL-encoded option for submit, Choice-list enter and exit events pair up, Manifests as scripting variables, Complex binding, Conditional binding, Support for right-to-left text flow, Conditional breaking, Nesting tables, Captions can differ between views | 7.0 | 7.1 |
2.5 | 2007 | 1.7 Adobe Extension Level 1 | Secure submit, Index change event, XFA Foreground (XFAF), Change to initial page selection, Explicit control of printer pagination, Widget functionality: Control over scrolling, Checkmark shapes, Button highlight, Explicit control over number of cells in combs, Security and Control: MDP+ document signatures | 8.0 | 8 |
2.6 | 2008 | 1.7 Adobe Extension Level 2 | Adobe XMP documented, Adobe configuration syntax documented, Template version control, Adobe legacy flags documented (for backward compatibility), Image storage in PDF (images stored as resources in the PDF container), New barcode types (UPS Maxicode, Aztec, Data Matrix, and the RSS14 family) | 8.1, 8.1.1 | ES 8.1 |
2.7 | 2008 | 1.7 Adobe Extension Level 3 | Locale set typefaces, New set of rules for picking alternate fonts | 8.1, 8.1.1 | ES 8.1.2 |
2.8 | 2008 | 1.7 Adobe Extension Level 3 | New variables dataset, Form fragments declaring traversals, Access property extended to subforms, Improved orphan and widow control, Keep property extended to fields and draws, Authentication policy for web services, Submit via WSDL/SOAP, Pre- and post-submit events standardized, Pre-sign and post-sign events added, Pre- events may cancel the associated action, Change in keep behavior, Pair kerning support, Hyphenation support, Rich text: Outbound hyperlinks | 9.0 | ES 8.2 |
3.0 | 2009 | 1.7 Adobe Extension Level 5 | Compatibility flag override in LiveCycle, Inactive presence, Event propagation (upward to their ancestral objects), Validation events added, Global validation handling control | 9.1 | |
3.1 | 2009 | 1.7 Adobe Extension Level 6 | Support for relational data, Data injection into data description, Barcode examples expanded and illustrated, Automation Examples expanded and corrected, Control over duplex imposition, Rendering: Support for long or short edge duplexing, Support for more label printers | X (10) | ES 2 |
3.3 | 2012 | 1.7 Adobe Extension Level 8 | Bulleted List, Numbered List and Nested List Support, Support for Right To Left flowed content Subforms and Tables, Deprecating legacy rendering, XML Encryption and Decryption Support, autoSave element added, ADBE_JSConsole and ADBE_JSDebugger elements added, Flash (SWF) Integration in XFA | X (10) | ES 3 |
Portable Document Format (PDF), standardized as ISO 32000, is a file format developed by Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating systems. Based on the PostScript language, each PDF file encapsulates a complete description of a fixed-layout flat document, including the text, fonts, vector graphics, raster images and other information needed to display it. PDF has its roots in "The Camelot Project" initiated by Adobe co-founder John Warnock in 1991. PDF was standardized as ISO 32000 in 2008. The last edition as ISO 32000-2:2020 was published in December 2020.
A de facto standard is a custom or convention that has achieved a dominant position by public acceptance or market forces. De facto is a Latin phrase, here meaning "in practice but not necessarily ordained by law" or "in practice or actuality, but not officially established".
A document file format is a text or binary file format for storing documents on a storage media, especially for use by computers. There currently exist a multitude of incompatible document file formats.
Open XML Paper Specification is an open specification for a page description language and a fixed-document format. Microsoft developed it as the XML Paper Specification (XPS). In June 2009, Ecma International adopted it as international standard ECMA-388.
Adobe LiveCycle Designer was a forms authoring tool published by Adobe Systems, intended as a one-stop design tool to render XML forms as PDF or HTML files.
PDF/A is an ISO-standardized version of the Portable Document Format (PDF) specialized for use in the archiving and long-term preservation of electronic documents. PDF/A differs from PDF by prohibiting features unsuitable for long-term archiving, such as font linking and encryption. The ISO requirements for PDF/A file viewers include color management guidelines, support for embedded fonts, and a user interface for reading embedded annotations.
Poppler is a free software utility library for rendering Portable Document Format (PDF) documents. Its development is supported by freedesktop.org. It is commonly used on Linux systems, and is used by the PDF viewers of the open source GNOME and KDE desktop environments.
A proprietary file format is a file format of a company, organization, or individual that contains data that is ordered and stored according to a particular encoding-scheme, designed by the company or organization to be secret, such that the decoding and interpretation of this stored data is easily accomplished only with particular software or hardware that the company itself has developed. The specification of the data encoding format is not released, or underlies non-disclosure agreements. A proprietary format can also be a file format whose encoding is in fact published, but is restricted through licences such that only the company itself or licensees may use it. In contrast, an open format is a file format that is published and free to be used by everybody.
GeoPDF refers to map and imagery products created by TerraGo software applications. GeoPDF products use geospatial PDF as a container for maps, imagery, and other data used to deliver an enhanced user experience in TerraGo applications. However, GeoPDF products conform to published specifications including both the OGC best practice for PDF georegistration as well as Adobe's proposed geospatial extensions to ISO 32000, making them readable by applications such as Adobe Acrobat, Adobe Reader, Avenza PDF Maps, Global Mapper, and others.
PDF/UA, formally ISO 14289, is an International Organization for Standardization (ISO) standard for accessible PDF technology. A technical specification intended for developers implementing PDF writing and processing software, PDF/UA provides definitive terms and requirements for accessibility in PDF documents and applications. For those equipped with appropriate software, conformance with PDF/UA ensures accessibility for people with disabilities who use assistive technology such as screen readers, screen magnifiers, joysticks and other technologies to navigate and read electronic content.
The Open Packaging Conventions (OPC) is a container-file technology initially created by Microsoft to store a combination of XML and non-XML files that together form a single entity such as an Open XML Paper Specification (OpenXPS) document. OPC-based file formats combine the advantages of leaving the independent file entities embedded in the document intact and resulting in much smaller files compared to normal use of XML.
The following is a comparison of e-book formats used to create and publish e-books.
XML Data Package (XDP) is an XML file format created by Adobe Systems in 2003. It is intended to be an XML-based companion to PDF. It allows PDF content and/or Adobe XML Forms Architecture (XFA) resources to be packaged within an XML container.
PDF-XChange Viewer is a freemium PDF reader for Microsoft Windows. It supports saving PDF forms (AcroForms) and importing or exporting form data in FDF/XFDF format. Since version 2.5, there has been partial support for XFA, and exporting form data in XML Data Package (XDP) or XML format. OCR support was also added in version 2.5.
EPUB is an e-book file format that uses the ".epub" file extension. The term is short for electronic publication and is sometimes stylized as ePub. EPUB is supported by many e-readers, and compatible software is available for most smartphones, tablets, and computers. EPUB is a technical standard published by the International Digital Publishing Forum (IDPF). It became an official standard of the IDPF in September 2007, superseding the older Open eBook (OEB) standard.
Geospatial PDF is a set of geospatial extensions to the Portable Document Format (PDF) 1.7 specification to include information that relates a region in the document page to a region in physical space — called georeferencing. A geospatial PDF can contain geometry such as points, lines, and polygons. These, for example, could represent building locations, road networks and city boundaries, respectively. The georeferencing metadata for geospatial PDF is most commonly encoded in one of two ways: the OGC best practice; and as Adobe's proposed geospatial extensions to ISO 32000. The specifications also allow geometry to have attributes, such as a name or identifying type.
PDF/VT is an international standard published by ISO in August 2010 as ISO 16612-2. It defines the use of PDF as an exchange format optimized for variable and transactional printing. Built on top of PDF/X-4, it is the first variable-data printing (VDP) format which ensures modern International Color Consortium-based (ICC) color management through the use of ICC Output Intents. It adds the notion of encapsulated groups of graphic objects to support optimized efficient processing for repeating text, graphic or image content. Introducing the concept of document part metadata (DPM), it enables reliable and dynamic management of pages for High Volume Transactional Output (HVTO) print data, like record selection or postage optimization based on metadata.
Datalogics is a computer software company formed in 1967 and based in Chicago, IL. The company licenses software development kits for working with PDF and other document file types. They have previously developed their own typesetting and database publishing software. Since 1996, Datalogics has also acted as a channel for several SDKs from Adobe Systems. These include the Adobe PDF Library, Adobe Experience Reader Extensions, Adobe Content Server, Adobe InDesign Server, Adobe PDF Converter, Adobe PDF Print Engine and Adobe Reader Mobile SDK. In 2022, Datalogics launched a new business unit called pdfRest, an API toolkit for PDF processing.
The Portable Document Format (PDF) was created by Adobe Systems, introduced at the Windows and OS/2 Conference in January 1993 and remained a proprietary format until it was released as an open standard in 2008. Since then, it has been under the control of an International Organization for Standardization (ISO) committee of industry experts.
Apparently Adobe introduced something newer called XFA (XML Forms Architecture) which doesn't seem standardized.
Adobe Reader Mobile does not support XFA based PDF's created in the LiveCycle Designer and it will not provide this support in the future.
XFA is not to be ISO standard just yet. ... The Committee urges Adobe Systems to submit the XFA Specification, XML Forms Architecture (XFA), to ISO for standardization ... The Committee is concerned about the stability of the XFA specification ... Part 2 will reference XFA 3.1