Prerequisites: The default encoding for the browser must not be set to ISO 8859-15.

UTF-8 BOM vs XML declaration

Test passes if you see green.

Click here

Assertion: A page with a UTF-8 BOM will be recognized as UTF-8 even if the XML declaration declares a different encoding.


The XML declaration attempts to set the character encoding to ISO 8859-15. The page starts with a UTF-8 signature.

The test contains a div with a class name that contains the following sequence of bytes: 0xC3 0xBD 0xC3 0xA4 0xC3 0xA8. These represent different sequences of characters in ISO 8859-15, ISO 8859-1 and UTF-8. The external, UTF-8-encoded stylesheet contains a selector .test div.ýäè. This matches the sequence of bytes above when they are interpreted as UTF-8. If the class name matches the selector (ie. the BOM overrides the XML declaration) then the box will turn green.

If the test is unsuccessful, the characters  should appear at the top of the page. These represent the bytes that make up the UTF-8 signature when encountered in the ISO 8859-15 encoding.

Next test

Result summary & related tests
Detailed results for this test