Zitat:
Zitat von bernhartdiener
Eine "normale" Programmiersprache wie C oder Java kann doch durch eine Grammatik (Begriff aus der theoretischen Informatik) beschrieben werden.
|
HTML ist keine Programmiersprache sondern eine Auszeichnungssprache (eine sehr komplexe noch dazu). Sie wird mindestens durch eine Typ-1-Grammatik beschrieben, meiner Meinung nach eher noch durch Typ-0.
Zitat:
Zitat von bernhartdiener
Kann XHTML5 auch durch eine Grammatik beschrieben werden ?
|
XHTML5 ist XML, d.h. es entfallen einige kontextsensitive Regeln (Attribute müssen immer in Anführungszeichen stehen und Elemente müssen immer geschlossen werden, etc.).
Nebenbei: HTML5 ist so ausgelegt, dass man HTML damit durchaus so streng prüfen kann, dass optionale Endtags als Fehler gemeldet würden. Einzig eine Implementierung dazu fehlt.
Aber, wie bereits gesagt gelten in (X)HTML5 einige Regeln, du du formal nicht darstellen kannst, z.B. die Anforderungen an den Inhalt des alt-Attributs bei img-Elementen.
Weiter kommt hinzu, dass HTML5 ein zweischneidiges Schwert ist: Einerseits gibt es die erlaubten Elemente und Attribute, die man als Autor verwenden darf; Andererseits ist genau festgelegt, wie veraltete (bzw. verbotene; dies gilt auch in XHTML!) aber auch unbekannte Elemente und Attribute behandelt werden müssen.
Henri Sivonen hat seine
Masterarbeit über HTML-Validierung geschrieben. Vielleicht findest du darin neue Denkansätze.