XForms – Formulare im Zeitalter von XML

Die dazugehörige Präsentation ink. Notizseiten steht unter Uni (Link zum direkten Download).
Die Benutzbarkeit des Internet gründet sich vor allem auf zwei Interaktionsmittel. Zum einen sind das natürlich die Hyperlinks, ohne die ein surfen von Webseite zu Webseite überhaupt nicht ermöglichen wäre. Für die Interaktivität ausschlaggebend sind aber die Formulare.

Umso erstaunlicher ist es, dass sich mit der Entwicklung der Auszeichnungssprache HTML und der Einführung von XHTML 1.0 im Jahr 1999, nichts an den Formularen, ihrer Bearbeitung, Struktur oder Präsentation, geändert hat.

Den Umbruch bringt das kommende XHTML 2.0, mit dem 2003 verabschiedeten Standard XForms. Zu den grundlegenden Neuerungen zählen:

  • Saubere Trennung zwischen Präsentation und Struktur
  • Eingabeüberprüfung
  • Berechnungsmöglichkeiten und Bedingungsabfrage
  • Datenübermittlung mittels XML
  • Dynamische Anpassung ohne Script-Sprachen

Die dazu nötigen Änderungen, machen eine völlig neue Umsetzung notwendig. Als Konsequenz davon, ist XForms nicht abwärtskompatibel zu den alten HTML-Formularen. Es wurde aber darauf geachtet, alle bereits vorhandenen Möglichkeiten zu erhalten, um einen leichten Umstieg zu ermöglichen.

Einfacher wird vor allem die Initialisierung von Formularen mit vorgegebenen Daten und die Ausgabe von Datensätzen. Außerdem ist mit Hilfe von XML eine adäquate Repräsentation der zu übermittelnden Datenstruktur möglich.

Literatur:

Braun, Herbert (2005): Das neue Web. Internet-Seiten mit XHTML 2, in: c’t 15/2005, S. 172-178.

Braun, Herbert (2006): Webstandards im Wandel. Die Krise des W3C und die Lösungsansätze, in: c’t 01/2007, S. 162-169.

Dubinco, Micah (2003): XForms Essentials, Link .

Raman, T. V. (2003): XForms. XML Powered Web Forms, Link .

W3C – The Forms Working Group (Hrsg.): XForms – The Next Generation of Web Forms, Link .

--
Beitrag interessant? Ich freue mich über einen Kauf bei Amazon*.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

*

code