Zum Inhalt springen

„XML Forms Architecture“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K WPCleaner v2.05 - Wikipedia:WPSK (Überschrift mit Doppelpunkt)
Bithisarea (Diskussion | Beiträge)
Inhaltliche Verbesserungen
Zeile 2: Zeile 2:


== Überblick ==
== Überblick ==
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.
XFA erweitert XML durch rechnergestützte Tags und ermöglicht eine flexible, modulare Gestaltung von Formularen. Alle aus einer XFA-Formularvorlage erstellten Instanzen behalten die ursprünglichen Spezifikationen zur Datenerfassung, Darstellung und Manipulation bei. Ein wesentlicher Vorteil von XFA ist seine Kompatibilität mit anderen Systemen und Technologiestandards, was insbesondere im Bereich der elektronischen Dokumentenverarbeitung und im Office-Umfeld von Bedeutung ist.<ref>{{Internetquelle |url=https://www.w3.org/submissions/1999/05/ |titel=XFA Submission |archiv-url=http://web.archive.org/web/20241201223520/https://www.w3.org/submissions/1999/05/ |archiv-datum=2024-12-01 |abruf=2025-02-04}}</ref> 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.“ Der Vorschlag wurde im Mai 1999 beim W3C eingereicht.


== Geschichte ==
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.“<ref>{{Internetquelle |url=https://www.w3.org/submissions/1999/05/ |titel=XFA Submission |archiv-url=http://web.archive.org/web/20241201223520/https://www.w3.org/submissions/1999/05/ |archiv-datum=2024-12-01 |abruf=2025-02-04}}</ref> Der Vorschlag wurde im Mai 1999 beim W3C eingereicht.
Die Entwicklung von XFA begann in den 1990er Jahren als Reaktion auf den steigenden Bedarf an interaktiven und dynamischen Webformularen. Ursprünglich von JetForm konzipiert, fand die Technologie rasch Anwendung in Geschäftsanwendungen, in denen herkömmliche HTML-Formulare an ihre Grenzen stießen. 2002 wurde JetForm von [[Adobe Systems]] übernommen, wodurch XFA in die breite Adobe-Produktpalette integriert werden konnte. Bereits 2003 fanden XFA-Formulare in den Acrobat-Versionen 6 und 7 ihren Einzug, was die Verbreitung und Akzeptanz der Technologie im Bereich digitaler Dokumente maßgeblich vorantrieb.<ref>{{Internetquelle |url=https://www.amgraf.com/PDFiles/Acroforms2.pdf |titel=A Quick Introduction to Acrobat Forms Technology |werk=amgraf.com |abruf=2025-02-04}}</ref>


== Technische Architektur und Funktionsweise ==
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.<ref>{{Internetquelle |url=https://www.amgraf.com/PDFiles/Acroforms2.pdf |titel=A Quick Introduction to Acrobat Forms Technology |werk=amgraf.com |abruf=2025-02-04}}</ref>
XFA basiert auf der Erweiterung von XML und nutzt spezielle Tags, um Formularstrukturen, Layouts, Datenbindungen, Validierungen und Formatierungen zu definieren. Diese Architektur erlaubt es, sowohl statische als auch dynamische Formulare zu erstellen, die sich flexibel an Nutzereingaben und variable Inhalte anpassen. Ein zentrales Element ist das XML Data Package (XDP), das als Container für Formularvorlagen, Daten und Layoutinformationen dient. XFA-Formulare können als integraler Bestandteil von PDF-Dokumenten oder als eigenständige XDP-Dateien gespeichert und mittels Adobe LiveCycle Designer bearbeitet werden.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/xml/index_arch.html |titel=Adobe XML Forms Architecture (XFA) |werk=Adobe |archiv-url=https://archive.ph/J4I16 |archiv-datum=2013-01-01 |abruf=2025-02-04}}</ref>

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.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/xml/index_arch.html |titel=Adobe XML Forms Architecture (XFA) |werk=Adobe |archiv-url=https://archive.ph/J4I16 |archiv-datum=2013-01-01 |abruf=2025-02-04}}</ref>


=== XFA-Formulartypen ===
=== XFA-Formulartypen ===
XFA unterscheidet zwischen statischen (seit XFA 2.0) und dynamischen Formularen (seit XFA 2.1 oder 2.2).
XFA unterscheidet grundsätzlich zwischen:
* '''Statischen Formularen''': Diese behalten ihr fest definiertes Layout bei, unabhängig vom Inhalt der Formularfelder. Sie sind besonders geeignet für standardisierte Formulare, bei denen ein konsistentes Erscheinungsbild erforderlich ist.

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.
* '''Dynamischen Formularen''': Diese passen sich automatisch dem eingegebenen Inhalt an, indem sie Felder vergrößern, verkleinern oder ganze Seiten ein- bzw. ausblenden. Diese Flexibilität ist besonders nützlich bei komplexen Formularen, in denen die Dateneingabe variabel ist.


== Verwendung mit PDF ==
== Verwendung mit PDF ==
PDF 1.7 unterstützt zwei Methoden zur Integration von Formulardaten:<ref>{{Internetquelle |url=http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=formsPDF_02.html |titel=About PDF forms |werk=Adobe |archiv-url=https://web.archive.org/web/20110429032948/http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=formsPDF_02.html |archiv-datum=2011-04-29 |abruf=2025-02-04}}</ref><ref>{{Internetquelle |url=https://pdfguru.com/de |titel=PDF Knowledge - Forms Data Format |werk=Gnu PDF |abruf=2025-02-04}}</ref>
PDF 1.7 unterstützt zwei grundlegende Methoden zur Integration von Formulardaten:<ref>{{Internetquelle |url=http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=formsPDF_02.html |titel=About PDF forms |werk=Adobe |archiv-url=https://web.archive.org/web/20110429032948/http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=formsPDF_02.html |archiv-datum=2011-04-29 |abruf=2025-02-04}}</ref><ref>{{Internetquelle |url=https://pdfguru.com/de |titel=PDF Knowledge - Forms Data Format |werk=Gnu PDF |abruf=2025-02-04}}</ref>
* '''AcroForms''' – eingeführt in der PDF-1.2-Spezifikation, basierend auf einer statischen Formularstruktur.
* '''Adobe XML Forms Architecture (XFA)''' – eingeführt in der PDF-1.5-Spezifikation, welche erweiterte und dynamische Formulare ermöglicht.


XFA-Formulare sind nicht mit AcroForms kompatibel und können nicht in einem Dokument gemischt werden. Das Erstellen von XFA-Formularen für die Anzeige in Adobe Reader erfordert den Einsatz von Adobe LiveCycle Designer.<ref>{{Internetquelle |url=http://www.adobe.com/products/livecycle/readerextensions/ |titel=Adobe LiveCycle Reader Extensions ES3 |werk=Adobe |archiv-url=https://archive.ph/EFmCB |archiv-datum=2013-01-08 |abruf=2025-02-04}}</ref>
* '''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.<ref>{{Internetquelle |url=http://www.adobe.com/products/livecycle/readerextensions/ |titel=Adobe LiveCycle Reader Extensions ES3 |werk=Adobe |archiv-url=https://archive.ph/EFmCB |archiv-datum=2013-01-08 |abruf=2025-02-04}}</ref>


=== Profiltypen ===
=== Profiltypen ===
Ab XFA 2.5 können Formulare eine Teilmenge der vollständigen XFA-Funktionen nutzen. Das derzeit einzige spezifizierte Profil ist XFAF.
Ab XFA 2.5 können Formulare eine Teilmenge der vollständigen XFA-Funktionalitäten nutzen. Das derzeit einzige spezifizierte Profil ist '''XFAF (XFA Foreground)'''. XFA kann in zwei grundlegenden Varianten verwendet werden:
* '''Vollständiges XFA''': Bei dieser Variante wird das gesamte Formular, inklusive statischer Elemente, direkt in XFA definiert. Dies kommt bei dynamischen Formularen (seit XFA 2.1) sowie bei traditionellen statischen Formularen zum Einsatz.

* '''XFAF (XFA Foreground)''': Eingeführt in XFA 2.5, wird hier jede Seite des XFA-Formulars über einen PDF-Hintergrund gelegt, was ausschließlich für statische XFA-Formulare geeignet ist.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/en/xml/xfa_spec_2_5.pdf |titel=XML Forms Architecture (XFA) Specification Version 2.5 |werk=Adobe |datum=2007-06-08 |archiv-url=https://web.archive.org/web/20101110133423/http://partners.adobe.com/public/developer/en/xml/xfa_spec_2_5.pdf |archiv-datum=2010-11-10 |abruf=2025-02-04}}</ref>
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.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/en/xml/xfa_spec_2_5.pdf |titel=XML Forms Architecture (XFA) Specification Version 2.5 |werk=Adobe |datum=2007-06-08 |archiv-url=https://web.archive.org/web/20101110133423/http://partners.adobe.com/public/developer/en/xml/xfa_spec_2_5.pdf |archiv-datum=2010-11-10 |abruf=2025-02-04}}</ref>


=== Struktur und Speicherung ===
=== Struktur und Speicherung ===
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.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/xml/index_arch.html |titel=Adobe XML Forms Architecture (XFA) |datum= |archiv-url=https://web.archive.org/web/20091223030550/http://partners.adobe.com/public/developer/xml/index_arch.html |archiv-datum=2009-12-23 |abruf=2025-02-04}}</ref>
XFA-Formulare können als Teil von PDF-Dateien (PDF 1.5 bis 1.7) oder als eigenständige XDP-Dateien gespeichert werden. Das XDP-Format bündelt XML-Formularvorlagen, Daten und Layoutinformationen in einem einzigen Paket, was insbesondere bei der digitalen Signatur von Formularen von Vorteil ist.<ref>{{Internetquelle |url=http://partners.adobe.com/public/developer/xml/index_arch.html |titel=Adobe XML Forms Architecture (XFA) |datum= |archiv-url=https://web.archive.org/web/20091223030550/http://partners.adobe.com/public/developer/xml/index_arch.html |archiv-datum=2009-12-23 |abruf=2025-02-04}}</ref>


==== Varianten der XFA-Formularstruktur ====
==== Varianten der XFA-Formularstruktur ====
* '''Als eigenständiges XML Data Package (XDP)''': Das Formular wird in einer .xdp-Datei gespeichert, die optional auch eine eingebettete PDF enthalten kann.
* '''Als Bestandteil eines regulären PDF-Dokuments''': Hier werden statische XFAF-Formulare direkt in das PDF-Dokument integriert.
* '''Innerhalb eines „Shell-PDFs“''': Diese Methode wird für vollständige XFA-Formulare (sowohl dynamisch als auch traditionell statisch) verwendet, wobei das XFA XML in ein vorhandenes PDF-Dokument eingebettet wird.


Das Einbetten eines XDP in ein PDF führt oft zu einer kompakteren Dateigröße, da [[Portable Document Format|PDF-Dateien]] komprimiert werden können. Zudem ermöglicht es die digitale Signierung des gesamten Pakets.
* '''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 ===
=== Kompatibilität mit PDF-Viewern ===
Die Unterstützung von XFA variiert stark zwischen verschiedenen PDF-Viewern. Während der Adobe Reader und einige spezialisierte Anwendungen XFA-Formulare korrekt darstellen können, fehlt vielen alternativen PDF-Readern diese Funktionalität. Um Benutzern, die einen inkompatiblen Viewer verwenden, ein möglichst hilfreiches Feedback zu geben, wird oft eine einseitige Warnung in das Dokument eingebettet, die auf die Notwendigkeit einer neueren Viewer-Version hinweist.
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“).<ref>{{Internetquelle |url=https://helpx.adobe.com/livecycle/help/mobile-forms/feature-differentiation-mobile-forms-pdf.html |titel=Feature differentiation between Mobile Forms and PDF Forms |werk=Adobe |datum=2021-04-27 |abruf=2025-02-04}}</ref><ref>{{Internetquelle |autor=Jeff Stanier |url=http://blogs.adobe.com/livecycle/2014/04/adobe-reader-mobile-and-xfa-forms-from-livecycle-designer.html |titel=Adobe Reader Mobile and XFA forms from LiveCycle Designer. |werk=Adobe |datum=2014-04-16 |archiv-url=https://archive.ph/02CZv |archiv-datum=2014-04-21 |abruf=2025-02-04}}</ref>
2013 entwickelte Adobe zusätzlich Softwarelösungen, um XFA-Formulare in HTML5-Formulare umzuwandeln ein Ansatz, der insbesondere für mobile Plattformen ohne native XFA-Unterstützung von Bedeutung ist.<ref>{{Internetquelle |url=https://helpx.adobe.com/livecycle/help/mobile-forms/feature-differentiation-mobile-forms-pdf.html |titel=Feature differentiation between Mobile Forms and PDF Forms |werk=Adobe |datum=2021-04-27 |abruf=2025-02-04}}</ref><ref>{{Internetquelle |autor=Jeff Stanier |url=http://blogs.adobe.com/livecycle/2014/04/adobe-reader-mobile-and-xfa-forms-from-livecycle-designer.html |titel=Adobe Reader Mobile and XFA forms from LiveCycle Designer. |werk=Adobe |datum=2014-04-16 |archiv-url=https://archive.ph/02CZv |archiv-datum=2014-04-21 |abruf=2025-02-04}}</ref>


=== Rich Text ===
=== Rich Text ===
Rich Text in XFA-Formularen ermöglicht es, Formatierungsinformationen in Formularfeldern zu speichern. Seit PDF 1.5 (XFA 2.02) können Texte in Formularfeldern Formatierungsinformationen enthalten, um verschiedene Schriftstile, Farben und Layouts darzustellen. Diese Rich-Text-Strings sind XML-Dokumente, die den Rich-Text-Konventionen der XML Forms Architecture entsprechen und basieren auf einer Teilmenge von XHTML 1.0 mit eingeschränkten CSS2-Attributen.<ref name=":1">{{Internetquelle |url=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf |titel=Document management — Portable document format — Part 1: PDF 1.7 |werk=Adobe |datum=2008-07-01 |archiv-url=https://web.archive.org/web/20100409113330/http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf |archiv-datum=2010-04-09 |abruf=2025-02-04}}</ref>
Rich Text kann in XFA-Formularen als Standardwert, Feldbeschriftung oder Inhalt vorkommen.
In PDF 1.6 wurden Rich-Text-Elemente aus der XFA-Spezifikation 2.2 übernommen, und in PDF 1.7 wurden die Rich-Text-Attribute weiter ergänzt.<ref name=":1" /> Ursprünglich sollte PDF 2.0 (ISO 32000 Part 2) XFA 3.1 referenzieren,<ref name=":2">{{Internetquelle |url=http://pdf.editme.com/files/pdfREF-meetings/ISO-TC171-SC2-WG8_N0603_SC2WG8_MtgRept_SLC.pdf |titel=ISO/TC 171/SC 2/WG 8 N 603 - Meeting Report |werk=pdf.editme.com |datum=2011-06-27 |archiv-url=https://web.archive.org/web/20121126013025/http://pdf.editme.com/files/pdfREF-meetings/ISO-TC171-SC2-WG8_N0603_SC2WG8_MtgRept_SLC.pdf |archiv-datum=2012-11-26 |abruf=2025-02-04}}</ref> jedoch wurde XFA in der endgültigen Version von PDF 2.0 als veraltet eingestuft.<ref>{{Internetquelle |url=https://pdfa.org/pdf-2-0-the-worldwide-standard-for-electronic-documents-has-evolved/ |titel=PDF 2.0: The worldwide standard for electronic documents has evolved – PDF Association |sprache=en-US |abruf=2025-02-04}}</ref>


=== PDF/A ===
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.<ref name=":1">{{Internetquelle |url=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf |titel=Document management — Portable document format — Part 1: PDF 1.7 |werk=Adobe |datum=2008-07-01 |archiv-url=https://web.archive.org/web/20100409113330/http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf |archiv-datum=2010-04-09 |abruf=2025-02-04}}</ref>
Beim Konvertieren eines XFA-Formulars in [[PDF/A]] werden sowohl das statische Layout als auch die Formularinhalte in einem PDF-Darstellungsstrom zusammengeführt. PDF/A verbietet aktive Inhalte und erlaubt nur das XML-Datenformular, in dem die vom Benutzer eingegebenen Daten gespeichert sind. Diese Konvertierung stellt sicher, dass das Dokument langfristig archivierungsfähig bleibt.


== Vergleich zu AcroForms ==
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.<ref name=":1" /> PDF 2.0 (ISO 32000 Part 2) sollte ursprünglich XFA 3.1 referenzieren,<ref name=":2">{{Internetquelle |url=http://pdf.editme.com/files/pdfREF-meetings/ISO-TC171-SC2-WG8_N0603_SC2WG8_MtgRept_SLC.pdf |titel=ISO/TC 171/SC 2/WG 8 N 603 - Meeting Report |werk=pdf.editme.com |datum=2011-06-27 |archiv-url=https://web.archive.org/web/20121126013025/http://pdf.editme.com/files/pdfREF-meetings/ISO-TC171-SC2-WG8_N0603_SC2WG8_MtgRept_SLC.pdf |archiv-datum=2012-11-26 |abruf=2025-02-04}}</ref> jedoch wurde XFA in der endgültigen Version von PDF 2.0 als veraltet eingestuft.<ref>{{Internetquelle |url=https://pdfa.org/pdf-2-0-the-worldwide-standard-for-electronic-documents-has-evolved/ |titel=PDF 2.0: The worldwide standard for electronic documents has evolved – PDF Association |sprache=en-US |abruf=2025-02-04}}</ref>
Während '''AcroForms''' als das traditionelle System zur Erstellung von PDF-Formularen gilt, bietet XFA erweiterte Funktionalitäten – vor allem im Bereich der dynamischen Anpassung und Rich-Text-Unterstützung. AcroForms beruhen auf einer statischen Struktur, die weniger flexibel auf sich ändernde Inhalte reagiert, während XFA-Formulare sich dynamisch anpassen können. Allerdings sind XFA-Formulare aufgrund ihrer proprietären Natur und der eingeschränkten Unterstützung durch viele PDF-Viewer oft auf Adobe-Produkte angewiesen, was in heterogenen IT-Umgebungen zu Kompatibilitätsproblemen führen kann.


== Kritik und Zukunftsperspektiven ==
=== PDF/A ===
Die Einführung von XFA hat in der Fachwelt zu intensiven Diskussionen geführt. Kritiker bemängeln die mangelnde Standardisierung und die eingeschränkte Unterstützung in Drittanbieter-PDF-Viewern. Zudem wird häufig kritisiert, dass XFA-Formulare stark an Adobe-Produkte gebunden sind, was die Interoperabilität einschränkt. Mit der offiziellen Einstufung von XFA als veraltet in PDF 2.0 steht die Technologie vor der Herausforderung, sich in einem zunehmend standardisierten und offenen Dokumentenumfeld zu behaupten. Zukünftige Entwicklungen könnten entweder auf einer Weiterentwicklung von XFA oder auf der verstärkten Nutzung alternativer, offener Formulardefinitionsstandards beruhen.
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 ==
== Standardisierung ==
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.<ref name=":2" /><ref name=":0" />
Obwohl die XFA-Spezifikation in der ISO-32000-1-Spezifikation (PDF 1.7) referenziert wird, wurde sie nie als offizieller [[Internationale Organisation für Normung|ISO]]-Standard anerkannt. Die Entscheidung, XFA in PDF 2.0 als veraltet einzustufen, unterstreicht den Trend zu offeneren und standardisierten Ansätzen in der digitalen Dokumentenverarbeitung.<ref name=":2"/><ref name=":0"/>


== Einzelnachweise ==
== Einzelnachweise ==
<references />


<references />
== Weblinks ==
== Weblinks ==
* [https://archive.ph/J4I16 Adobe XML Forms Architecture (XFA) – Entwicklerressourcen]


* [https://archive.ph/J4I16 Adobe XML Forms Architecture (XFA) – Entwicklerressourcen]
[[Kategorie:Beschreibungssprache]]
[[Kategorie:Beschreibungssprache]]
[[Kategorie:XML-basierte Sprache]]
[[Kategorie:XML-basierte Sprache]]

Version vom 7. Februar 2025, 22:23 Uhr

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]

Überblick

XFA erweitert XML durch rechnergestützte Tags und ermöglicht eine flexible, modulare Gestaltung von Formularen. Alle aus einer XFA-Formularvorlage erstellten Instanzen behalten die ursprünglichen Spezifikationen zur Datenerfassung, Darstellung und Manipulation bei. Ein wesentlicher Vorteil von XFA ist seine Kompatibilität mit anderen Systemen und Technologiestandards, was insbesondere im Bereich der elektronischen Dokumentenverarbeitung und im Office-Umfeld von Bedeutung ist.[2] 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.“ Der Vorschlag wurde im Mai 1999 beim W3C eingereicht.

Geschichte

Die Entwicklung von XFA begann in den 1990er Jahren als Reaktion auf den steigenden Bedarf an interaktiven und dynamischen Webformularen. Ursprünglich von JetForm konzipiert, fand die Technologie rasch Anwendung in Geschäftsanwendungen, in denen herkömmliche HTML-Formulare an ihre Grenzen stießen. 2002 wurde JetForm von Adobe Systems übernommen, wodurch XFA in die breite Adobe-Produktpalette integriert werden konnte. Bereits 2003 fanden XFA-Formulare in den Acrobat-Versionen 6 und 7 ihren Einzug, was die Verbreitung und Akzeptanz der Technologie im Bereich digitaler Dokumente maßgeblich vorantrieb.[3]

Technische Architektur und Funktionsweise

XFA basiert auf der Erweiterung von XML und nutzt spezielle Tags, um Formularstrukturen, Layouts, Datenbindungen, Validierungen und Formatierungen zu definieren. Diese Architektur erlaubt es, sowohl statische als auch dynamische Formulare zu erstellen, die sich flexibel an Nutzereingaben und variable Inhalte anpassen. Ein zentrales Element ist das XML Data Package (XDP), das als Container für Formularvorlagen, Daten und Layoutinformationen dient. XFA-Formulare können als integraler Bestandteil von PDF-Dokumenten oder als eigenständige XDP-Dateien gespeichert und mittels Adobe LiveCycle Designer bearbeitet werden.[4]

XFA-Formulartypen

XFA unterscheidet grundsätzlich zwischen:

  • Statischen Formularen: Diese behalten ihr fest definiertes Layout bei, unabhängig vom Inhalt der Formularfelder. Sie sind besonders geeignet für standardisierte Formulare, bei denen ein konsistentes Erscheinungsbild erforderlich ist.
  • Dynamischen Formularen: Diese passen sich automatisch dem eingegebenen Inhalt an, indem sie Felder vergrößern, verkleinern oder ganze Seiten ein- bzw. ausblenden. Diese Flexibilität ist besonders nützlich bei komplexen Formularen, in denen die Dateneingabe variabel ist.

Verwendung mit PDF

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

  • AcroForms – eingeführt in der PDF-1.2-Spezifikation, basierend auf einer statischen Formularstruktur.
  • Adobe XML Forms Architecture (XFA) – eingeführt in der PDF-1.5-Spezifikation, welche erweiterte und dynamische Formulare ermöglicht.

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

Profiltypen

Ab XFA 2.5 können Formulare eine Teilmenge der vollständigen XFA-Funktionalitäten nutzen. Das derzeit einzige spezifizierte Profil ist XFAF (XFA Foreground). XFA kann in zwei grundlegenden Varianten verwendet werden:

  • Vollständiges XFA: Bei dieser Variante wird das gesamte Formular, inklusive statischer Elemente, direkt in XFA definiert. Dies kommt bei dynamischen Formularen (seit XFA 2.1) sowie bei traditionellen statischen Formularen zum Einsatz.
  • XFAF (XFA Foreground): Eingeführt in XFA 2.5, wird hier jede Seite des XFA-Formulars über einen PDF-Hintergrund gelegt, was ausschließlich für statische XFA-Formulare geeignet ist.[8]

Struktur und Speicherung

XFA-Formulare können als Teil von PDF-Dateien (PDF 1.5 bis 1.7) oder als eigenständige XDP-Dateien gespeichert werden. Das XDP-Format bündelt XML-Formularvorlagen, Daten und Layoutinformationen in einem einzigen Paket, was insbesondere bei der digitalen Signatur von Formularen von Vorteil ist.[9]

Varianten der XFA-Formularstruktur

  • Als eigenständiges XML Data Package (XDP): Das Formular wird in einer .xdp-Datei gespeichert, die optional auch eine eingebettete PDF enthalten kann.
  • Als Bestandteil eines regulären PDF-Dokuments: Hier werden statische XFAF-Formulare direkt in das PDF-Dokument integriert.
  • Innerhalb eines „Shell-PDFs“: Diese Methode wird für vollständige XFA-Formulare (sowohl dynamisch als auch traditionell statisch) verwendet, wobei das XFA XML in ein vorhandenes PDF-Dokument eingebettet wird.

Das Einbetten eines XDP in ein PDF führt oft zu einer kompakteren Dateigröße, da PDF-Dateien komprimiert werden können. Zudem ermöglicht es die digitale Signierung des gesamten Pakets.

Kompatibilität mit PDF-Viewern

Die Unterstützung von XFA variiert stark zwischen verschiedenen PDF-Viewern. Während der Adobe Reader und einige spezialisierte Anwendungen XFA-Formulare korrekt darstellen können, fehlt vielen alternativen PDF-Readern diese Funktionalität. Um Benutzern, die einen inkompatiblen Viewer verwenden, ein möglichst hilfreiches Feedback zu geben, wird oft eine einseitige Warnung in das Dokument eingebettet, die auf die Notwendigkeit einer neueren Viewer-Version hinweist.

2013 entwickelte Adobe zusätzlich Softwarelösungen, um XFA-Formulare in HTML5-Formulare umzuwandeln – ein Ansatz, der insbesondere für mobile Plattformen ohne native XFA-Unterstützung von Bedeutung ist.[10][11]

Rich Text

Rich Text in XFA-Formularen ermöglicht es, Formatierungsinformationen in Formularfeldern zu speichern. Seit PDF 1.5 (XFA 2.02) können Texte in Formularfeldern Formatierungsinformationen enthalten, um verschiedene Schriftstile, Farben und Layouts darzustellen. Diese Rich-Text-Strings sind XML-Dokumente, die den Rich-Text-Konventionen der XML Forms Architecture entsprechen und basieren 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, und in PDF 1.7 wurden die Rich-Text-Attribute weiter ergänzt.[12] Ursprünglich sollte PDF 2.0 (ISO 32000 Part 2) XFA 3.1 referenzieren,[13] jedoch wurde XFA in der endgültigen Version von PDF 2.0 als veraltet eingestuft.[14]

PDF/A

Beim Konvertieren eines XFA-Formulars in PDF/A werden sowohl das statische Layout als auch die Formularinhalte in einem PDF-Darstellungsstrom zusammengeführt. PDF/A verbietet aktive Inhalte und erlaubt nur das XML-Datenformular, in dem die vom Benutzer eingegebenen Daten gespeichert sind. Diese Konvertierung stellt sicher, dass das Dokument langfristig archivierungsfähig bleibt.

Vergleich zu AcroForms

Während AcroForms als das traditionelle System zur Erstellung von PDF-Formularen gilt, bietet XFA erweiterte Funktionalitäten – vor allem im Bereich der dynamischen Anpassung und Rich-Text-Unterstützung. AcroForms beruhen auf einer statischen Struktur, die weniger flexibel auf sich ändernde Inhalte reagiert, während XFA-Formulare sich dynamisch anpassen können. Allerdings sind XFA-Formulare aufgrund ihrer proprietären Natur und der eingeschränkten Unterstützung durch viele PDF-Viewer oft auf Adobe-Produkte angewiesen, was in heterogenen IT-Umgebungen zu Kompatibilitätsproblemen führen kann.

Kritik und Zukunftsperspektiven

Die Einführung von XFA hat in der Fachwelt zu intensiven Diskussionen geführt. Kritiker bemängeln die mangelnde Standardisierung und die eingeschränkte Unterstützung in Drittanbieter-PDF-Viewern. Zudem wird häufig kritisiert, dass XFA-Formulare stark an Adobe-Produkte gebunden sind, was die Interoperabilität einschränkt. Mit der offiziellen Einstufung von XFA als veraltet in PDF 2.0 steht die Technologie vor der Herausforderung, sich in einem zunehmend standardisierten und offenen Dokumentenumfeld zu behaupten. Zukünftige Entwicklungen könnten entweder auf einer Weiterentwicklung von XFA oder auf der verstärkten Nutzung alternativer, offener Formulardefinitionsstandards beruhen.

Standardisierung

Obwohl die XFA-Spezifikation in der ISO-32000-1-Spezifikation (PDF 1.7) referenziert wird, wurde sie nie als offizieller ISO-Standard anerkannt. Die Entscheidung, XFA in PDF 2.0 als veraltet einzustufen, unterstreicht den Trend zu offeneren und standardisierten Ansätzen in der digitalen Dokumentenverarbeitung.[13][1]

Einzelnachweise

  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).