Donnerstag, 8. Januar 2009

News

präsentiert von: CREATE OR DIE
Montag, 31. März 2008

Web 2.0 += Web Forms 2.0

Mit dem vom World Wide Web Consortium (W3C) anerkannten und von der Web Hypertext Application Technology Working Group (WHATWG) entwickelten neuen HTML-5-Standard bekommt endlich auch die Spezifikation Web Forms 2.0 die Aufmerksamkeit, die sie eigentlich schon lange verdient hätte. Die einfache und sichere Handhabung von Webformularen spielt nicht nur beim Onlineshopping eine Schlüsselrolle, sondern bildet das Fundament für eine solide Verarbeitung von Benutzereingaben im Internet. An den Vorteilen von Web Forms 2.0 werden also nicht nur IT-Spezialisten ihre Freude haben – alle Internetbenutzer können in Zukunft davon profitieren.

Evolution statt Revolution(HTML 4)

Die heutige Web-Forms-2.0-Spezifikation nahm 2003 ihren Anfang und wurde ursprünglich von Ian Hickson als XForms Basic vorgeschlagen. Nach der Übernahme durch die WHATWG und der Umbenennung in Web Forms 2.0 im Jahr 2004, hatte das W3C 2006 endlich ein Ansehen und die Spezifikation als Standard anerkannt. Im Gegensatz zu den XForms des W3C handelt es sich bei den Web Forms 2.0 um eine weitgehend abwärtskompatible Erweiterung der bereits existierenden HTML-Formulare. Die Vereinfachung der Dateneingabe und der Datenauswertung wird mittels neuer Input-Elemente und -Attribute, regulärer Ausdrücke und dynamischer Ergänzung erreicht, und das ohne Hilfe von JavaScript.

Unterschiede zu Web Forms 1.0 (HTML 4)

Der Mangel an spezifischen Input-Typen in HTML 4.01 ist so alt wie der Standard selbst. Aktuell kennt HTML nur die Typen "text", "password", "checkbox", "radio", "submit", "reset", "file", "hidden", "image" und "button". Neu hinzugekommen sind nun vier spezielle Button-Variationen namens "add", "remove", "move-up" und "move-down". Ebenso nützlich erscheinen die sechs neuen kalendarischen Typen "datetime", "datetime-local", "date", "month", "week" und "time". Auch die zwei neuen numerischen Typen "number" und "range" gesellen sich dazu. Last but not least noch zwei neue Protokolltypen: "email" und "url". Ein echter Sprung nach vorn gelingt der Spezifikation aber erst durch die neuen Input-Attribute: "required", "pattern", "autocomplete", "autofocus", "step", "min" und "max".

Bei der herkömmlichen Validierung der Dateneingaben war man sowohl client- als auch serverseitig auf die Hilfe von Skriptsprachen angewiesen, da das ungeliebte Input-Element des Typs "text" zwangsweise für fast jede Art von Daten herhalten musste. Web Forms 2.0 implementiert die browserinterne Fähigkeit zur Validierung der Daten.

Die neuen Input-Attribute im Einzelnen:

  • "min" bestimmt den Mindest- und "max" den Höchstwert bei numerischen und kalendarischen Eingabetypen.
  • "step" bestimmt die Schrittweite bei numerischen und kalendarischen Eingabetypen.
  • "pattern" spezifiziert einen regulären Ausdruck, dem die Dateneingabe entsprechen mussk, und ermöglicht besonders in Zusammenhang mit "min", "max" und "step" viele individuelle Feldtypenkreationen.
  • "required" markiert Elemente als erforderlich.
  • "autofocus" setzt den Fokus selbständig auf das Element.
  • "autocomplete" ist entweder "on" oder "off" und unterstützt alle Zeichenketten und numerisch orientierten Typen.
Als Gegenstück zum Input-Element existiert nun auch ein simples Output-Element. Das neue Datalist-Element und sein korrespondierendes Input-Attribut "list" dienen als Ergänzung zum Select-Element. Ab sofort darf das Element "textarea" auf die Attribute "rows" und "cols" verzichten und "wrap" wurde nun endlich in die Spezifikation aufgenommen. Das Input-Element vom Typ "file" kann jetzt via "accept"-Attribut spezifische MIME-Typen festlegen, und das Attribut "disabled" ist endgültig auf alle Formularelemente anwendbar. Das umschließende Formelement darf nun auch andere Formelemente enthalten und bekam für das Attribut "action" die neuen URI-Schemata "mailto:" und "data:" spendiert. Ein vorlagenbasiertes Wiederholungsmodell hat ebenso Einzug in den neuen Formularstandard gehalten. Damit kann man ohne jeden Aufwand (und ohne JavaScript) mittels der Input-Elemente vom Typ "add" dem Formular Zeilen hinzufügen, mit "remove" wieder entfernen und durch "move-up" und "move-down" nach oben oder unten verschieben.

Fazit

Als einziger Browserhersteller hat Opera schon seit der Version 9.x eine grundlegende Unterstützung implementiert. Mozilla und Webkit richten ihr Augenmerk stärker auf andere Aspekte des HTML-5-Standards. So kann Safari in seiner jüngsten Inkarnation schon mit den <video>- und <audio>-Objekten umgehen und hat (ebenso wie Gecko) eine clientseitige Datenbank (persistent storage) integriert, aber von den 14 neuen Input-Typen wird bislang nur "range" unterstützt. Bei Mozilla hat man bisher augenscheinlich Web Forms 2.0 zugunsten von XForms links liegen gelassen. Ob der (noch in diesem Jahr erscheinende) Firefox 3 zumindest einen partiellen Support für die neuen Webformulare anbieten wird, steht noch in den Sternen.

In den öffentlich zugänglichen Entwicklerunterlagen zum Internet Explorer 8 Beta 1 wird kein Sterbenswörtchen zum Thema "Web Forms 2.0" verloren. Das könnte man als Beweis für Microsofts renitente Aversion gegen alte und neue Webstandards (die nicht aus dem eigenen Hause stammen) interpretieren. Somit bleibt für IE-User nur die Hoffnung, dass ein zukünftiger Internet Explorer 9 sich des Problems annimmt. Angesichts der Tatsache, dass heutzutage kaum noch jemand ohne JavaScript-Unterstützung im Netz unterwegs ist und mit Googles WebForms2 eine fast vollständige Cross-Browser-Implementierung in Software vorliegt, kann man also getrost damit anfangen, von den neuen Möglichkeiten in Formularen gebrauch zu machen.

Christian Effenberger ist diplomierter Industrie/Produkt-Designer und seit 1993 als selbständiger Web-Designer und Programmierer tätig. Als Amiga-Fan der ersten Stunde gehört er zur Fraktion der Open Source-Vertreter und ist ein strikter Befürworter patentfreier Standards.

Konferenzen

BASTA! Spring 2009

BASTA! Spring 2009

23.-27. Februar 2009
Maritim Rhein-Main Hotel Wissenschaftsstadt Darmstadt

Entwicklertage 2009

Entwicklertage 2009

23.-27. Februar 2009
Darmstadt

BASTA! Italia 2009

BASTA! Italia 2009

16.-18. März 2009
Holiday Inn EUR Parco dei Medici, Roma

PHPCon Italia 2009

PHPCon Italia 2009

18.-20. März 2009
Holiday Inn EUR Parco dei Medici, Roma

JAX 09

JAX 09

20.-24. April 2009
Rheingoldhalle Mainz

Eclipse Forum Europe 09

Eclipse Forum Europe 09

20.-24. April 2009
Rheingoldhalle Mainz

webinale 09

webinale 09

25.-27. Mai 2009
Berlin

RailsWayCon

RailsWayCon

25.-27. Mai 2009
Berliner Congress Center, Alexanderplatz, Berlin

Werbung
Top-Jobs

Signsoft GmbH

Java-Entwickler (m/w)

Software & Support Verlag GmbH

Redakteur (m/w), Vollzeit

Software & Support Verlag GmbH

Volontär (w/m) Redaktion, Vollzeit

Software & Support Verlag GmbH

Lektor (m/w), Vollzeit

Endress+Hauser GmbH+Co. KG

Entwickler Datenbanksysteme (m/w)
JAX 09

Magazine

Entwickler Magazin - Enterprise Technologies & Business Solutions

Entwickler Magazin

Enterprise Technologies & Business Solutions

dot.net magazin - die unabhängige Quelle für .NET-Technologien

dot.net magazin

Die Quelle für .NET-Technologien

Eclipse Magazin

Eclipse Magazin

Weltweit erstes Magazin für Eclipse-Entwickler

Java Magazin - Internet & Enterprise Technology

Java Magazin

Internet & Enterprise Technology

Ruby on Rails

RailsWay Magazin

Ruby on Rails

CREATE OR DIE - Ein Leben für die Kreativität

CREATE OR DIE

Ein Leben für die Kreativität

Business Technology - Management Magazin

Business Technology

Management Magazin

PHP Magazin - Professional PHP Development

PHP Magazin

Professional PHP Development

Bücher


hosted by HostEurope