Gunnar Bittersmann: Default Charset?

Beitrag lesen

Hello out there!

Ich hab da ne Frage zu dem Thema. Wenn eine Seite im HTTP-Header keinen Zeichensatz angibt, welcher Zeichensatz gilt dann als default?

Du meinst, welche Zeichencodierung?

Bei XML-Dokumenten (also auch XHTML, 'application/xhtml+xml') ohne Angabe der Zeichencodierung in der XML-Deklaration und ohne BOM UTF-8, mit BOM je nach diesem UTF-8 oder UTF-16.

„Ebenso ist es ein Fehler, wenn ein Entity, das weder mit einer Byte-Order-Markierung noch mit einer Kodierungsdeklaration beginnt, eine andere Kodierung als UTF-8 benutzt. Beachten Sie, dass wegen der Tatsache, dass ASCII eine Teilmenge von UTF-8 ist, ASCII-Entities nicht unbedingt eine Kodierungsdeklaration brauchen.“ [XML §4.3.3]

Bei HTML-Dokumenten und XHTML-Dokumenten, die der UA für HTML hält ('text/html'), gilt ohne 'meta'-Angabe AFAIK ISO 8859-1.

Ist das dann wirklich notwendig das (X)HTML zu Parsen und nach <?xml version="1.0" encoding="UTF-8" ?>, bzw. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> zu suchen?

Ja, sonst würde ja der jeweilige Default gelten und bei von diesem abweichender Zeichencodierung das Dokument falsch decodiert werden.

See ya up the road,
Gunnar

--
„Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)