Websiteentwicklung: XHTML: Geschichte
Aus Wikibooks
HTML, also HyperText Markup Language wurde Hand in Hand mit dem World Wide Web (WWW) am CERN entwickelt. Maßgeblich für die Entwicklung beider Techniken war Tim Berners-Lee. Der ursprüngliche Sinn von HTML war nicht die grafische Gestaltung von Internetseiten, sondern die Zuordnung semantischer Funktionen zu einzelnen Dokumentteilen. So gibt es in HTML z. B. Elemente zur Auszeichnung von Absätzen, Überschriften unterschiedlicher Priorität usw. Anfangs gab es in HTML noch keine gestalterischen Möglichkeiten, doch mit HTML 3.2 hielten auch grafische Elemente Einzug in HTML. Da CSS zum Zeitpunkt der Entwicklung von HTML 3.2 noch nicht existierte, war das auch gar nicht anders möglich. So ging die ursprünglich geplante Trennung von Inhalt und Design immer mehr verloren.
Mit HTML 4.0 änderte sich das jedoch wieder. Inzwischen hatte das W3C Cascading Style Sheets (CSS) standardisiert. Mit dieser Sprache kann man global festlegen, wie Überschriften usw. formatiert werden sollen, was die Gestaltung von Websites wesentlich einfacher macht. So ist es mit CSS kein Problem, Seiten ein konsistentes Design zu verpassen, da Änderungen im Stylesheet automatisch in allen Seiten übernommen werden. Um die Akzeptanz des neuen Standards zu erhöhen, wurden drei Varianten standardisiert: Strict, Transitional und Frameset. Strict enthält ausschließlich semantische Elemente, während die Transitional-Variante weiterhin alle aus HTML 3.2 bekannten Tags zur optischen Gestaltung enthält. Die dritte Variante dient der Definition von Frames (Unterteilungen des Browserfensters. In jedem Teil werden unabhängige Dateien angezeigt).
Bis zu diesem Zeitpunkt wurde HTML mittels SGML definiert. 1999 entschied sich das W3C, HTML mit einer SGML-Untermenge namens XML neu zu formulieren. Das Ergebnis war XHTML 1.0, welches sich von HTML 4.01 nur in wenigen Details unterscheidet; es existieren nach wie vor drei Versionen. Mit XHTML 1.0 wurde die Modularisierung von XHTML eingeführt. Das heißt, dass ein Softwareentwickler unter Umständen nicht den gesamten XHTML-Standard, sondern bloß Teile davon implementiert. Das ist z. B. bei der Entwicklung von Software für Kleinstgeräte von Vorteil, da in diesen nur wenig Rechenleistung zur Verfügung steht. Ein weiterer Unterschied ist, dass die meisten Browser bei XML keine Syntaxfehler tolerieren. Während die SGML-Parser eines normalen Browsers Fehler ignorieren und versuchen, das beste daraus zu machen, wird ein XML-fähiger Browser bei einem Syntaxfehler nur eine Fehlermeldung ausgeben.
Mit XHTML 1.1 wurde das lang-Attribut durch xml:lang ersetzt, in <a>- und <map>-Elementen sollte anstelle von name jetzt id verwendet werden. Außerdem wurde das RUBY-Modul zum XHTML-Standard hinzugefügt. Des Weiteren darf für XHTML jetzt nicht mehr der text/html-MIME-Typ verwendet werden. Da für XHTML 1.1 keine Kompatibilität mit gewöhnlichen HTML-Browsern vorgesehen ist, sollen solche Dokumente gemäß einer W3C-Mitteilung nur als application/xhtml+xml-MIME-Typ ausgeliefert werden.