HTML 5


HTML 5

HTML 5 ist die noch nicht erschienene Weiterentwicklung der Auszeichnungssprache HTML (aktuell: Version 4.01).

Inhaltsverzeichnis

Entstehung

Ein erster Vorschlag für HTML 5 wurde zunächst Mitte 2004 von der WHATWG unter dem Namen Web Applications 1.0 veröffentlicht.

Ende 2006 hat Tim Berners-Lee angekündigt, dass eine neue Arbeitsgruppe entstehen wird, die HTML weiterentwickeln soll.[1] Damit hat sich das W3C Konkurrenz im eigenen Hause geschaffen, da man hier auch an der HTML-ähnlichen Sprache XHTML 2.0 arbeitet, ein rein XML-basiertes Format zur Seitenauszeichnung.

Zwischen November 2006 und März 2007 wurden daher die vorhandenen Arbeitsgruppen beim W3C umgestaltet. Die neue HTML-Arbeitsgruppe soll eine Sprache entwickeln, die sich an der klassischen HTML-Syntax orientiert, aber auch als XML-Formulierung verwendet werden kann. Zudem sollen beide Sprachvarianten eine sehr ähnliche Speicherabbildung der Sprache ermöglichen (d. h. eine Wiedergabe durch das DOM). Vermutlich hat man hier schon mit dem Entwurf der WHATWG geliebäugelt, denn dieser hat diese Vorgabe zu diesem Zeitpunkt bereits erfüllt.

In einer Abstimmung im Mai 2007 haben die Mitglieder der HTML-Arbeitsgruppe entschieden, dass die Spezifikation Web Applications 1.0 der WHATWG als Startpunkt zur Diskussion und Weiterentwicklung von HTML verwendet wird.[2]

Am 22. Januar 2008 hat das W3C den ersten Working Draft (Arbeitsentwurf) von HTML5 veröffentlicht.[3] Am 10. Juni 2008 folgte der zweite Arbeitsentwurf, in den erstmals die Web-Forms-2.0-Spezifikation eingebunden wurde. Am 12. Februar 2009 der Dritte. Am 23. April der Vierte.

Die Spezifikation selbst weist darauf hin, dass bestimmte Abschnitte ausgereifter sind als andere. Von den reiferen Neuentwicklungen sind einige bereits in aktuellen Browserversionen enthalten und dürfen ausdrücklich verwendet werden.[4]

Ziele

HTML 5 möchte die vorhandenen Spezifikationen (HTML 4.01, XHTML 1.0 und DOM 2 HTML) ersetzen. Der Entwurf definiert daher drei Sprachformen: HTML 5, XHTML 5 und DOM 5.

Bei der Entstehung der HTML-Arbeitsgruppe wurde festgelegt, welche Ziele verfolgt werden und was die Spezifikation enthalten soll.[5] Ein kurzer und unvollständiger Überblick:

  • Eine Sprache die sich aus HTML 4.01 entwickelt hat.
    • Diese Sprache muss als klassisches HTML, als XML-Formulierung und als DOM-Abbildung verwendet werden können.
    • Für die Variante auf Basis von klassischem HTML soll ein Fehlerüberprüfungswerkzeug zur Verfügung stehen.
    • Die DOM-Abbildung der Sprache muss Programmierschnittstellen zur dynamischen Arbeit mit dieser Sprache besitzen.
  • Schnittstellen zur Arbeit mit verknüpften Multimediainhalten
  • u. v. m.

Als ersten öffentlichen Arbeitsentwurf hat die HTML-Arbeitsgruppe inzwischen die „HTML Design Principles“ (Sprachgestaltungsprinzipien) veröffentlicht. Diese enthalten weitere Ziele und Richtlinien, anhand derer entschieden werden soll, ob etwas Altes verbessert werden kann oder ob etwas neu entwickelt werden soll. In letzterem Fall gibt es Richtlinien, was eine Neuentwicklung können muss (z. B. alternativen Inhalt für Multimediaobjekte zur Verfügung stellen).

Aufbau

Die aktuelle HTML-Version (4.01) wurde 1997 zur W3C-Empfehlung gekürt und definiert nur die Sprache als SGML-Anwendung. Zu HTML 4.01 gesellten sich in den letzten Jahren weitere Empfehlungen, beispielsweise XML und das DOM.

HTML 4.01 wurde mit Hilfe von XML neu formuliert, woraus XHTML 1.0 entstand. Beide Sprachen besitzen ein nahezu identisches Vokabular. Zudem wurde auf DOM-Basis ein HTML-DOM spezifiziert, das die dynamische Manipulation von HTML-Dokumenten erlaubte.

Als Ergebnis dieser zahlreichen Veröffentlichungen gibt es drei Spezifikationen, die sich mit HTML, XHTML und dem DOM beschäftigen.

HTML 5 ändert dies. Der aktuelle Entwurf definiert nicht nur HTML 5 als eigene Sprache, sondern ein allgemeines Vokabular, das als HTML, XHTML und als DOM-Abbildung nutzbar ist.

Ziel ist es, die Unterschiede zwischen den Sprachausprägungen zu verringern und eine bessere Zusammenarbeit der Komponenten zu erreichen.

HTML 5

HTML ist bis einschließlich Version 4.01 eine SGML-Anwendung, jedoch verfügen selbst moderne Webbrowser über keine „echten“ SGML-Parser, sondern nur über HTML- bzw. Tag-Soup-Parser. Daher können bestimmte syntaktische SGML-Regeln in HTML nicht angewendet werden. Außerdem haben die Browser verschiedene Ansichten, wie ein HTML-Parser funktioniert.

HTML 5 versucht nicht länger auf SGML zu basieren, stattdessen wird eine eigene HTML-Syntax definiert, die sich zwar an dem klassischen, SGML-inspirierten HTML orientiert, aber auch Bereiche wie Fehlerbehandlung neu definiert. Gerade dabei versucht die Spezifikation, sich an den bereits vorhandenen Implementierungen der Browser zu orientieren, damit die Syntax rückwärtskompatibel bleibt. So werden die Browser zwar Veränderungen vornehmen müssen, damit die Sprache browserweit identisch verarbeitet werden kann, aber auch heute schon können viele HTML-5-Features zumindest theoretisch (da noch nicht implementiert) von den aktuellen Browsern verarbeitet werden.

XHTML 5

Die Spezifikation von XHTML 1.0 erlaubt es unter Berücksichtigung einiger Regeln, Dokumente dieser Version mit dem Medientyp text/html zu versenden. Das ist notwendig, damit XHTML-Dokumente auch von Browsern wie Microsofts Internet Explorer und Lynx verarbeitet werden können (sie werden dann jedoch als HTML verarbeitet).

In der Praxis gibt es einige Unterschiede zwischen „echtem“ XHTML und solchem XHTML, das als text/html versendet wird. HTML 5 möchte diese Unterschiede verringern um einen problemlosen Übergang zwischen den Sprachvarianten zu ermöglichen.

XHTML 5 ist ein XML-Format und unterliegt als solches den Regeln zur Verarbeitung von XML-Dokumenten. Auf diese hat die HTML5-Arbeitsgruppe keinen Einfluss, daher werden Kompromisse für die HTML-Formulierung und dem DOM gemacht.

Das bedeutet beispielsweise, dass die in XML erlaubte selbstschließende Schreibweise leerer Elemente in HTML5 erlaubt sein wird, obwohl sie nach HTML 4.01 ausgelegt einem Fehler entspricht.

Die WHATWG hat eine Seite mit Unterschieden zwischen HTML 5 und XHTML 5 erstellt. Siehe [6].

DOM 5

Die gesamte HTML-5-Spezifikation ist durch die DOM-Terminologie geprägt.

Zwar sind nicht alle Benutzeragenten (Darstellungsprogramme, Suchmaschinen) DOM-fähig, HTML 5 definiert jedoch auch, wie diese Programme sich verhalten müssen, wenn sie auf HTML-5-Dokumente stoßen.

Das Dokumentobjektmodell selbst erfährt ebenfalls Anpassungen und Erweiterungen in der Spezifikation.

Zukünftig sollen alle HTML-Elemente (die im Gegensatz zu XHTML-Elementen über keinen Namensraum verfügen) dem XHTML-Namensraum (http://www.w3.org/1999/xhtml) angehören.

Der Sprachumfang

HTML 5 definiert zahlreiche Elemente und Attribute, die als Sprachkern aufgefasst werden können. Vergleichbar ist dieser mit der HTML-4.01-Variante Strict.

Die Spezifikation möchte aber in Zukunft auch definieren, wie ältere Elemente und Attribute verarbeitet werden sollen. Denn ein HTML-5-Browser soll auch problemlos mit bereits vorhandenen Webseiten umgehen können, die nicht mit den Regeln dieser Sprache geschrieben wurden.

Das bedeutet: missbilligte Elemente und Attribute sind dies weiterhin und dürfen nicht verwendet werden. Würden sie aber verwendet werden, müsste ein Browser sie wie beabsichtigt verarbeiten. Das Ganze wäre vergleichbar mit der HTML-4.01-Variante Transitional.

Unterschiede zu HTML 4.01

Die bisher zu erwartenden Unterschiede sind:

Strukturierende Elemente

article
Das article-Element umfasst einen unabhängigen Abschnitt, der jedoch im Kontext zu den Vorfahrelementen steht. Damit sind z. B. Nachrichtenartikel, Blog- oder Foreneinträge gemeint.
aside
Bezeichnet Inhalt, der thematisch zum umschließenden Inhalt passt, aber nicht direkt dazugehört. Ein politischer Nachrichtentext könnte in einem aside-Element Querverweise zu ähnlichen Nachrichten beinhalten.
dialog
Ein speziell für Dialoge eingeführtes Element.
figure
Das figure-Element erlaubt es, ein bestimmtes Medium (z. B. Bilder, Videos etc.) mit einer Bildunterschrift zu versehen.
footer
Das footer-Element definiert eine Fußzeile für den aktuellen Abschnitt (z. B. in einem article-Element) und gibt z. B. Auskunft über den Autor oder die Erstellungszeit des Textes.
header
Das header-Element definiert den Kopfbereich für den aktuellen Abschnitt (z. B. in einem section-Element). Neben einer Überschrift kann es auch weitere Informationen, z. B. Versionsdaten enthalten.
nav
Dieses Element umschließt einen Navigationsbereich. Damit sind nicht nur Verweise zu anderen Seiten eines Webauftritts gemeint, sondern z. B. auch Verweise die auf Abschnitte innerhalb eines Dokuments zeigen (wie in der Wikipedia).
section
Ein section-Element gruppiert thematisch zusammenhängenden Inhalt und besitzt meist einen Kopf- und Fußbereich. Anhand einer typischen Webseite wären Beispiele für ein section-Element ein Vorstellungs-, ein Nachrichten- und ein Kontaktbereich.

Elemente zur Datendarstellung

audio, video
Audio- und Videodateien sollen zukünftig mit diesen Elementen eingebunden werden. HTML 5 stellt zu diesen Elementen einige Schnittstellen bereit, z. B. um die Wiedergabe steuern zu können.
embed
Mit dem embed-Element sollen Anwendungen und interaktive Inhalte eingefügt werden. Das Element ist die Standardisierung eines bisher proprietären Elements.
mark
Das mark-Element stellt hervorgehobenen Text dar. Dies ist nicht zu verwechseln mit betonten Texten. Stattdessen geht es hier z. B. um Text, der von einer Suchmaschine gefunden wurde und sichtbar markiert wird, sodass er schnell von Benutzern und deren Darstellungsprogrammen gefunden werden kann.
meter
Das meter-Element stellt einen Anteil seinem Maximum gegenüber. Verwenden kann man dieses Element z. B. um anzuzeigen, wie gut ein Suchergebnis im Vergleich zum Suchwort ist, wie gut ein Produkt im Vergleich zur Besten Bewertung bewertet wurde etc.
source
Mit diesem Element können für ein Medienelement verschiedene Quellen angegeben werden, aus denen das Darstellungsprogramm die passende aussucht.
time
Das time-Element wird verwendet, um Zeitangaben auszuzeichnen und Zeitangaben mit Metadaten auszustatten, sodass ein Browser damit z. B. einen interaktiven Kalender erzeugen kann.

Anwendungselemente

canvas
Das canvas-Element erzeugt eine Zeichenoberfläche auf der mit Hilfe von DOM-Methoden gezeichnet werden kann. Die Spezifikation sieht nur eine zweidimensionale Zeichenoberfläche vor, geht aber davon aus, dass in Zukunft auch dreidimensionale Kontexte eingeführt werden könnten.
progress
Das progress-Element gibt den Fortschritt einer bestimmten Aufgabe wieder. Das Element wird ebenfalls mit dem DOM gesteuert. Anwendungsbeispiele sind z. B. der Fortschritt bei einer mehrseitigen Umfrage.

Formulare

Die WHATWG und das W3C arbeiten zusammen an einer weiteren Spezifikation, genannt Web Forms 2.0, welche die aus HTML bekannten Formulare erweitern soll. Diese Spezifikation ist bereits sehr ausgereift und soll in die HTML-5-Spezifikation eingefügt werden, wenn diese ebenfalls reifer ist. Web Forms 2.0 bringt z. B. diese neuen Features:

  • Neue Eingabetypen, z. B. für E-Mails, Internetadressen, Zeitangaben, etc. so dass diese vom Browser geprüft werden können.
  • Eingabefelder können als Pflichtfeld definiert werden
  • Eingabetemplates können erstellt werden und dynamisch hinzugefügt werden (z. B. um ein Bestellformular um mögliche Einträge zu erweitern).
  • Datenlisten, z. B. um ein verstellbares Kontrollobjekt zu erzeugen mit dem beispielsweise die Lautstärke eines audio- oder video-Elements bestimmt werden kann.
  • Klärung wie CSS-Eigenschaften sich auf Formularelemente auswirken.

Umdefinierte Elemente

Der WHATWG ist klar, dass bestimmte Elemente, die nur der Präsentation dienen, nicht mehr vermieden werden können. Daher wurden diese Elemente umdefiniert, um ihrer Anwendung zu entsprechen und ihren Sinn allen Benutzern zugänglich zu machen.

i
Früher erzeugte das Element kursiven Text. Jetzt sollen damit Texte gekennzeichnet werden, die üblicherweise kursiv geschrieben werden, z. B. Text in einer anderen Stimm- oder Stimmungslage, Gedanken, Schiffsnamen etc.
b
Früher formatierte das Element Text fett. Nun soll damit Text gekennzeichnet werden, der zwar stilistisch hervorgehoben werden soll, jedoch keine wichtigere Bedeutung hat als der Rest des Textes, z. B. Schlüsselwörter, Produktnamen etc.
em
Dieses Element zeichnet weiterhin Text aus, der betont werden soll. Die Betonung verstärkt sich jetzt jedoch, wenn dieses Element ineinander verschachtelt wird.
hr
Diente zunächst der Erzeugung einer Trennlinie. Nun symbolisiert diese Trennlinie einen thematischen Umbruch zwischen Absätzen.
small
Früher wurde damit Text kleiner als normal formatiert. Jetzt soll Kleingedrucktes damit ausgezeichnet werden, z. B. Urheberechtshinweise, Nachteile durch Sternchenreferenzierung, Rechtseinschränkungen.
strong
Früher bedeutete diese Auszeichnung starke Betonung. Diese wird nun von verschachtelten em-Elementen übernommen. Das strong-Element zeichnet jetzt große Wichtigkeit aus.

Wieder erlaubte Elemente

Das Attribut start des ol-Elements und das Attribut value des li-Element sind nun wieder Teil der Kernsprache, da sie nicht präsentationeller Natur sind.

Neue DOM-Methoden

Neben den Methoden zur Steuerung von audio- und video-Elementen wurde auch eine neue Methode namens getElementsByClassName hinzugefügt. Diese Methode findet alle Elemente im Dokument, die als Klasse den Argumentnamen besitzen (dabei sind auch mehrere Klassenangaben möglich). Sie wird bereits von einigen Skriptbibliotheken bereitgestellt, doch eine im Browser implementierte Version könnte die Aufgabe wesentlich schneller und effizienter erledigen.

Entfernte Elemente und Attribute

Folgende Elemente wurden entfernt:

  • acronym
    • Stattdessen soll nur noch das abbr-Element für Abkürzungen verwendet werden, da es allgemeiner ist und das acronym-Element alleine ebenso wenig die vielseitigen Akronyme wiedergeben kann.
  • big
  • tt

Auch einige Attribute wurden entfernt. Stark kritisiert wurde in dieser Hinsicht das Fehlen der Attribute summary des header-Elements und axis, welche Tabellen zugänglicher machen sollen. Da die Spezifikation jedoch noch ein Entwurf ist, ist unklar, ob diese Attribute noch hinzugefügt werden.

In XHTML 5 (Mime-Type application/xhtml+xml ) ist das noscript-Element nicht mehr erlaubt, da das Elementmodell nicht mit den XML-Verarbeitungsregeln vereinbar ist. In HTML 5 (Mime-Type text/html) ist noscript weiterhin erlaubt.[7]

Quellen

  1. Tim Berners-Lees Blogeintrag „Reinvent HTML“ http://dig.csail.mit.edu/breadcrumbs/node/166
  2. Abstimmungsergebnis zur Frage ob die WHATWG-Entwürfe (HTML 5 bzw Web Applications 1.0 und Web Forms 2.0) als Startpunkt der Arbeitsgruppe dienen soll. http://www.w3.org/2002/09/wbs/40318/htmlbg/results
  3. Pressemitteilung zur Veröffentlichung des ersten HTML5-Arbeitsentwurfes. http://www.w3.org/2008/02/html5-pressrelease
  4. WHATWG-Antwort auf die Frage wann HTML-5-Features verwendet werden dürfen. http://wiki.whatwg.org/wiki/FAQ#When_will_we_be_able_to_start_using_these_new_features.3F
  5. Zielsetzung im Gründungsdokument der HTML-Arbeitsgruppe. http://www.w3.org/2007/03/HTML-WG-charter#deliverables
  6. Unterschiede zwischen HTML 5 und XHTML 5 http://wiki.whatwg.org/wiki/HTML_vs._XHTML
  7. Noscript-element in der Spezifikation No-Scriptelement in der Spezifikation

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • HTML — (HyperText Markup Language) Desarrollador World Wide Web Consortium WHATWG Información general …   Wikipedia Español

  • HTML — Расширение .html, .htm MIME text/html Ра …   Википедия

  • HTML 5 — HTML5 (Hypertext Markup Language) Расширение файла: HTML: .html, .htm XHTML: .xhtml, .xht, .xml Тип MIME: HTML: text/html XHTML: application/xhtml+xml, application/xml Type code: TEXT UTI: public.html Разработчик …   Википедия

  • HTML 5 — HTML (HyperText Markup Language) Extension de fichier HTML5: .html, .htm XHTML5: .xhtml, .xht, .xml Type MIME HTML5: text/html XHTML5: application/xhtml+xml, application/xml Développé par W3C Type de format Hypertexte …   Wikipédia en Français

  • HTML 5 — Saltar a navegación, búsqueda HTML5 (Hypertext Markup Language) Desarrollador W3C HTML WG, WHATWG Información general Extensión de archivo …   Wikipedia Español

  • HTML 2 — HTML 2.0 (RFC 1866), editado por Tim Berners Lee y Dan Conolly, es la primera versión oficial del lenguaje informático HTML, y supone una formalización de las anteriores versiones de HTML en uso que Tim Berners Lee publica y mantiene en discusión …   Wikipedia Español

  • HTML + — HTML+ es un conjunto de extensiones de HTML formalizado por David Raggett en 1993, previamente a la primera especificación formal de HTML, y como recopilación, unificación, replanteamiento y mejora del conjunto de diferentes dialectos de HTML… …   Wikipedia Español

  • HTML — noun [uncountable] COMPUTING Hypertext Markup Language; a computer language for creating documents on the World Wide Web, using a system of codes to design the document and create link S to other documents: • You can convert Quark documents into… …   Financial and business terms

  • HTML — [ aʃteɛmɛl ] n. m. • 1994; sigle anglais, de Hypertext Markup Language « langage hypertexte à balises » ♦ Inform. Langage de structuration et de mise en pages de documents, utilisé pour la création de pages web. Il « potasse le HTML (langage… …   Encyclopédie Universelle

  • HTML 2.0 — (от англ. HyperText Markup Language  «язык разметки гипертекста»)  простой язык создания данных, используемый для создания гипертекстовых документов, которые могут быть прочтены разными платформами. HTML документ SGML документ с… …   Википедия