molily: checkbox als Pflichtfeld AGB

Beitrag lesen

Hallo!

Wie krank ist das denn?

Willkommen im Web. Browserhersteller müssen einen großen Teil ihrer Zeit dafür aufwenden, Seitenerstellern die korrekte Nutzung von HTML, CSS und JavaScript beizubringen. Auch daran ist Opera letztlich gescheitert: Andere Browserhersteller mussten Quirks einbauen, damit sie das Web unterstützen, und Opera musste den Quirks mühselig nachbauen, damit das Web mit Opera nutzbar ist.

Ich sehe mich in meiner Ansicht bestärkt, dass die Abkehr von XHTML das Dümmste war, was der Webentwicklung passieren konnte.

Wie kommst du jetzt auf XML?

Wenn ich das richtig verstehe, hat eine wichtige Seite (U.S. Citizenship and Immigration Services) in seinem zentralen Formular offenbar ein damals nicht existentes Attribut (required) gesetzt, um es mit JavaScript auszulesen. Eine Technik, die schon 2005 kritisch diskutiert wurde, als es noch keine data-Attribute gab. Jetzt wurde die Sprache erweitert und das Attribut bekommt eine andere Semantik. Jetzt kamen Browser auf, die das required-Attribut erstmals umsetzen.

Was macht man da? Für die Webkit-Programmierer war es ein Fall für »DevRel«, Developer Relations. Sie haben die Seitenersteller aber nicht erreichen können, der Fehler ist immer noch im Code. Also denken sie aus Benutzersicht: Die Seite muss in unserem Browser unbedingt funktionieren, also bauen wir einen Workaround ein.

Man hätte einfache Regeln (XML) festgelegt und von Entwicklern erwartet, dass sie diese auch einhalten, weil ansonsten die Webseite nicht angezeigt wird, sondern der XML-Parser mit Fehlermeldung aussteigt, was zur unverzüglichen Behebung des Fehlers führt.

Ich denke, du verwechselst hier etwas. Hier geht es um Semantik, nicht um Syntax. Ein XML-Parser setzt Wohlgeformtheit voraus, nicht semantische Korrektheit. Im oben beschriebenen Szenario ist das Dokument wohlgeformt. Ein XML-Parser alleine hätte in dem Fall auch nicht geholfen. Vielleicht hätte eine Validierung ergeben, dass required="no" fehlerhaft ist, aber diese führt kein Browser durch.

Das ist ja das Fiese: XHTML 2 hätte eben nicht die Probleme wie das obige gelöst. Es hätte sie auch nicht verhindert.

Mathias