Validome: Korrekte Zeichensatzkodierung ermitteln

Beitrag lesen

Hallo,
im Zuge der Weiterentwicklung von Validome wühle ich mich schon seit Tagen durch die W3C-Specs ohne klärende Antworten zu erhalten.
Diesbezügliche Mails an das W3C blieben unbeantwortet oder wurden nicht sonderlich kompetent beantwortet.
Deshalb möchte ich die Thematik hier zur Diskussion stellen wie denn ein Validator (oder sonstige Software) die für ein Dokument zu verwendete Zeichensatzkodierung ermitteln soll.
Zum Ersten handelt es sich um die Spezifikation zu HTML:
http://edition-w3.de/TR/1999/REC-html401-19991224/charset.html#h-5.2.2.

Zur Ermittlung der Zeichensatzcodierung wird dort folgende Reihenfolge angegeben:
1. HTTP-"charset"-Parameter in einem "Content-Type"-Feld.
2. ine META-Deklaration mit "http-equiv", gesetzt auf "Content-Type" und einem gesetzten Wert für "charset".

Folgende Fragen tun sich nun auf:
1. Wenn ein Dokument z.B. in UTF-16 mit Byte order Mark (BOM) kodiert ist, was bei HTML durchaus erlaubt ist, hat dann die BOM-Kodierung Vorrang vor der Meta-Angabe, oder sogar vor der Angabe des HTTP-Header (eher Unwahrscheinlich, wäre aber praktikabel)?
2. Die Spezifikation lässt einen im Unklaren, welche Zeichensatzkodierung zu benutzen ist wenn überhaupt keine diesbezüglichen Informationen geliefert werden (kein HTTP-Charset, kein BOM, kein Meta-Charset). Dort steht das in solchen Fällen RFC2616 zu ignorieren ist (welches für solche Fälle ISO-8859-1 vorsieht) und kein Standardwert angenommen werden soll. Wenn dem so ist, müsste dann ein Fehler gemeldet werden?! Der W3C-Validator führt in solchen Fällen einen Fallback zu US-ASCII durch, was sicherlich falsch sein dürfte (Validome momentan ISO-8859-1).
Wie geht man in solchen Fällen korrekt vor?

Und dann habe ich noch Klärungsbedarf bei XML/XHTMLhttp://edition-w3c.de/TR/2000/REC-xml-20001006/#sec-guessing:
1. Wie ist zu Verfahren wenn z.B. der Byte order Mark UTF-8 "sagt", aber das binäre Muster (automatische Erkennung) UTF-16?
2. Was muss passieren wenn in der XML-Deklaration ein anderer Zeichensatz steht als im BOM/automatische Erkennung/HTTP-Header?

Im Grunde reduzieren sich meine Fragen auf die Prioritätenreihenfolge der möglichen Zeichensatzkodierungen (HTTP/BOM/automatische Erkennung/XML-Deklaration/Meta-Tag) in Abhängigkeit zu HTML oder XML/XHTML, und die zu verwendende Zeichensatzkodierung wenn überhaupt keine Deklariert wurde.

Viele Grüße
Thomas Mell