XML Forms Architecture

XFA (auch bekannt als XFA-Formulare) steht für XML Forms Architecture, eine Familie proprietärer XML-Spezifikationen, die von JetForm entwickelt wurden, um die Verarbeitung von Webformularen zu verbessern. Es kann auch in PDF-Dateien ab PDF 1.5 verwendet werden. Die XFA-Spezifikation wird als externe Spezifikation referenziert, die für die vollständige Anwendung der ISO-32000-1-Spezifikation (PDF 1.7) erforderlich ist. Die XML Forms Architecture wurde nicht als ISO-Standard anerkannt und wurde in PDF 2.0 als veraltet eingestuft.[1]

XFA erweitert XML durch rechnergestützte Tags. Zudem behalten alle aus einer XFA-Formularvorlage erstellten Instanzen die ursprünglichen Spezifikationen zur Datenerfassung, Darstellung und Manipulation bei. Ein wesentlicher Vorteil von XFA ist seine Kompatibilität mit anderen Systemen und Technologiestandards.

Laut JetForms' Einreichung beim World Wide Web Consortium ermöglicht XFA es Organisationen, „Informationen aus elektronischen Formularen sicher zu erfassen, darzustellen, zu übertragen, zu verarbeiten, auszugeben und zu drucken.“[2] Der Vorschlag wurde im Mai 1999 beim W3C eingereicht.

2002 wurde JetForm von Adobe Systems übernommen, die XFA-Formulare mit PDF 1.5 und den nachfolgenden Acrobat-Versionen (6 und 7) im Jahr 2003 einführte.[3]

XFA-Formulare werden intern in PDF-Dateien gespeichert oder als XDP-Dateien (XML Data Package), die mit LiveCycle Designer von Adobe geöffnet werden können. XDP kann eine PDF-Datei zusammen mit XML-Formular- und Vorlagendaten enthalten.[4]

XFA-Formulartypen

[Bearbeiten | Quelltext bearbeiten]

XFA unterscheidet zwischen statischen (seit XFA 2.0) und dynamischen Formularen (seit XFA 2.1 oder 2.2).

Statische Formulare behalten ihr Layout bei, unabhängig vom Feldinhalt. Dynamische Formulare hingegen passen sich dem Inhalt an, indem sie Felder erweitern oder Seiten ausblenden.

Verwendung mit PDF

[Bearbeiten | Quelltext bearbeiten]

PDF 1.7 unterstützt zwei Methoden zur Integration von Formulardaten:[5][6]

  • AcroForms – eingeführt in der PDF-1.2-Spezifikation.
  • Adobe XML Forms Architecture (XFA) – eingeführt in der PDF-1.5-Spezifikation.

XFA-Formulare sind nicht mit AcroForms kompatibel und können nicht gemeinsam in einem Dokument verwendet werden. Das Erstellen von XFA-Formularen für Adobe Reader erfordert Adobe LiveCycle Designer.[7]

Ab XFA 2.5 können Formulare eine Teilmenge der vollständigen XFA-Funktionen nutzen. Das derzeit einzige spezifizierte Profil ist XFAF.

XFA kann auf folgende Arten verwendet werden:

  • Vollständiges XFA – ein Format, bei dem das gesamte Formular, einschließlich statischer Elemente, direkt in XFA definiert wird (entweder ohne PDF-Hintergrund oder mit minimalem PDF-Markup). Es wird für dynamische XFA-Formulare (seit XFA 2.1) sowie für sogenannte „traditionelle“ statische XFA-Formulare verwendet.
  • XFAF (XFA Foreground) – eingeführt in XFA 2.5 – eine Architektur, bei der jede Seite des XFA-Formulars über einen PDF-Hintergrund gelegt wird. Sie kann nur für statische XFA-Formulare verwendet werden.[8]

Struktur und Speicherung

[Bearbeiten | Quelltext bearbeiten]

XFA-Formulare können als PDF-1.5–1.7-Dateien oder als XDP (XML Data Package) gespeichert werden. Das Format einer XFA-Ressource in PDF wird durch die XML Data Package Specification beschrieben.[9]

Varianten der XFA-Formularstruktur

[Bearbeiten | Quelltext bearbeiten]
  • als eigenständiges XML Data Package (XDP) (.xdp-Datei), das optional auch eine PDF-Datei enthalten kann.
  • als Bestandteil eines regulären PDF-Dokuments – für statische XFAF-Formulare.
  • innerhalb eines „Shell-PDFs“ – für vollständige XFA-Formulare (dynamisch oder traditionell statisch).

Das Einbetten eines XDP in ein PDF hat den Vorteil, dass die Datei kompakter ist, da PDFs komprimiert werden. Zudem kann XDP in PDF digital signiert werden, was mit einem eigenständigen XDP nicht möglich ist.

Kompatibilität mit PDF-Viewern

[Bearbeiten | Quelltext bearbeiten]

Die meisten PDF-Reader unterstützen XFA nicht. Beim Generieren eines Shell-PDFs wird empfohlen, eine einfache, einseitige PDF-Warnung anzuzeigen (z. B. „Zum Anzeigen des vollständigen Inhalts dieses Dokuments benötigen Sie eine neuere Version des PDF-Viewers.“).

2013 entwickelte Adobe als Lösung für Plattformen ohne XFA-Unterstützung eine Software zur Erstellung von HTML5-Formularen aus XFA („Adobe Mobile Forms“).[10][11]

Rich Text kann in XFA-Formularen als Standardwert, Feldbeschriftung oder Inhalt vorkommen.

Seit PDF 1.5 (XFA 2.02) können Texte in Formularfeldern Formatierungsinformationen enthalten, um verschiedene Stile darzustellen. Diese Rich-Text-Strings sind XML-Dokumente, die den Rich-Text-Konventionen der XML Forms Architecture (XFA) entsprechen. XFA basiert auf einer Teilmenge von XHTML 1.0 mit eingeschränkten CSS2-Attributen.[12]

In PDF 1.6 wurden Rich-Text-Elemente aus der XFA-Spezifikation 2.2 übernommen. In PDF 1.7 wurden die Rich-Text-Attribute der XFA-Spezifikation 2.4 ergänzt.[12] PDF 2.0 (ISO 32000 Part 2) sollte ursprünglich XFA 3.1 referenzieren,[13] jedoch wurde XFA in der endgültigen Version von PDF 2.0 als veraltet eingestuft.[14]

Beim Konvertieren eines XFA-Formulars in PDF/A werden sowohl das statische Layout als auch die Formularinhalte in einem PDF-Darstellungsstrom gespeichert. PDF/A verbietet aktive Inhalte und erlaubt nur das XML-Datenformular, also die vom Benutzer erstellten Formulardaten.

Standardisierung

[Bearbeiten | Quelltext bearbeiten]

Die XFA-Spezifikation wurde nicht als ISO-Standard anerkannt. Obwohl sie in der ISO-32000-1-Spezifikation referenziert wird, ist sie nicht offiziell Teil des PDF-Standards. 2017 wurde XFA in PDF 2.0 als veraltet eingestuft.[13][1]

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. a b PDF 2.0: The worldwide standard for electronic documents has evolved – PDF Association. Abgerufen am 4. Februar 2025 (amerikanisches Englisch).
  2. XFA Submission. Archiviert vom Original am 1. Dezember 2024; abgerufen am 4. Februar 2025.
  3. A Quick Introduction to Acrobat Forms Technology. In: amgraf.com. Abgerufen am 4. Februar 2025.
  4. Adobe XML Forms Architecture (XFA). In: Adobe. Archiviert vom Original am 1. Januar 2013; abgerufen am 4. Februar 2025.
  5. About PDF forms. In: Adobe. Archiviert vom Original am 29. April 2011; abgerufen am 4. Februar 2025.
  6. PDF Knowledge - Forms Data Format. In: Gnu PDF. Abgerufen am 4. Februar 2025.
  7. Adobe LiveCycle Reader Extensions ES3. In: Adobe. Archiviert vom Original am 8. Januar 2013; abgerufen am 4. Februar 2025.
  8. XML Forms Architecture (XFA) Specification Version 2.5. In: Adobe. 8. Juni 2007, archiviert vom Original am 10. November 2010; abgerufen am 4. Februar 2025.
  9. Adobe XML Forms Architecture (XFA). Archiviert vom Original am 23. Dezember 2009; abgerufen am 4. Februar 2025.
  10. Feature differentiation between Mobile Forms and PDF Forms. In: Adobe. 27. April 2021, abgerufen am 4. Februar 2025.
  11. Jeff Stanier: Adobe Reader Mobile and XFA forms from LiveCycle Designer. In: Adobe. 16. April 2014, archiviert vom Original am 21. April 2014; abgerufen am 4. Februar 2025.
  12. a b Document management — Portable document format — Part 1: PDF 1.7. In: Adobe. 1. Juli 2008, archiviert vom Original am 9. April 2010; abgerufen am 4. Februar 2025.
  13. a b ISO/TC 171/SC 2/WG 8 N 603 - Meeting Report. In: pdf.editme.com. 27. Juni 2011, archiviert vom Original am 26. November 2012; abgerufen am 4. Februar 2025.
  14. PDF 2.0: The worldwide standard for electronic documents has evolved – PDF Association. Abgerufen am 4. Februar 2025 (amerikanisches Englisch).