Heim

XForms

Dieser Artikel beschreibt XForms, die Beschreibungssprache für Formulare, und nicht XForms, das Widget-Toolkit für X11 oder die kommerzielle Plattform für digitale Formulare und management, Capevo XForm.

XForms ist ein W3C-Standard für elektronische Formulare zur Datenerfassung, das heißt, interaktive Fragebögen, insbesondere im World Wide Web. XForms ist plattformunabhängig und kann eine Vielfalt von Geräten bedienen, vom Computer über Mobiltelefone bis hin zum interaktiven Fernsehen.

XForms wurde entworfen, um die Unterstützung für Formulare in HTML bzw. dem XML basierten Nachfolger XHTML zu ersetzen und mit der übrigen XML-Technologie zu verbinden. XForms ist aber nicht an XHTML gebunden. XForms ist ein Bestandteil des noch in der Entwicklung befindlichen XHTML-2.0-Standards.

Inhaltsverzeichnis

Standardisierung

XForms 1.0 wurde im Oktober 2003 ein W3C-Standard. Im Oktober 2007 erschien mit XForms 1.0 (Third Edition) eine korrigierte Version des Standards. Seit November 2004 existiert eine „Working Draft“ für XForms 1.1, die zum letzten Mal im November 2007 aktualisiert wurde und inzwischen Kandidat für eine Recommendation geworden ist.

Funktionsweise

XForms hält sich an das MVC-Architekturmuster. So wird das Modell getrennt als XML beschrieben, bevor die Darstellungs- und Steuerungsinformationen gegeben werden.

Die Darstellung ist dabei sehr lose beschrieben und hängt zum größten Teil von der Implementierung und der Beschreibungssprache ab, in die XForms eingebettet wurden. Die Elemente des Modells werden mit unterschiedlichen Widget-Typen verknüpft, die weitere Angaben über die Darstellung (zum Beispiel verkleinert etc.), Wichtigkeit und XML-Schema-Datentypen enthalten. Besonders letzteres ist wichtig, da die Implementierung dem Benutzer direkt Informationen über die einzugebenen Daten liefern kann, ohne die Daten erst aufwändig validieren zu müssen. Dies erspart in Webanwendungen zum Beispiel den Einsatz von JavaScript. Besonders für kleinere Geräte wie Mobiltelefone ist diese Funktion wichtig, da viele Ressourcen gespart werden können.

Dies erspart aber nicht die Validierung der Daten auf dem Server, bevor sie weiter verarbeitet werden. Bösartigen Benutzern ist es nämlich möglich, die Validierungsinformationen in den XForms zu ignorieren und beliebige Daten in den Datenkanal einzuspielen.

Unterstützung

Bisher unterstützen nur wenige Webbrowser die Spezifikation, lediglich der Firefox-Browser (Funktion muss derzeit noch durch eine Extension [1] aktiviert werden), der unabhängige Java-Browser X-Smiles und die Internet-Explorer-Plugins formsPlayer [2] und Novell XForms Technology Preview können mit XForms umgehen. Da XForms ein Bestandteil des noch in der Entwicklung befindlichen XHTML-2.0-Standards sein wird, könnte sich die Unterstützung aber schnell verbessern.

Es gibt auch einige JavaScript-Lösungen, die XForms clientseitig in HTML bzw. XHTML umwandeln und einige Anwendungen, wie Chiba [3], die dies auf der Serverseite erledigen.

Eine weitere Implementierung von XForms bietet Mozquito DENG [4] von Claus Wahlers. OpenOffice.org unterstützt und benutzt ab Version 2.0 ebenfalls XForms [5]. Der von Roman Huditsch entwickelte XHTML to XForms Converter [6] bietet Web-Autoren eine einfache Möglichkeit, ihre Web-Formulare über XSLT in gültige XForms-Dokumente zu transformieren.

Literatur