Karakterkódolás ellenőrzése a validatorral

NOTE! This is a historical article. Nowadays, you can go to the Internationalization (i18n) Checker and it will tell you what the encoding is according to the declaration at the top of the file.

Kérdés

Hogy ellenőrizhetem a megfelelő karakterkódolását a dokumentumomnak a W3C HTML Validator használatával?

Válasz

Hogy biztosra menjünk abban, hogy egy dokumentumot mindenki megfelelően lát, fontos, hogy a karakterkódolás korrekt legyen. Ennek ellenőrzésére az egyik mód a W3C Markup Validator Szolgáltatás használata. A validator általában észleli a karakterkódolást a HTTP fejlécekből és a dokumentumban található információkból. Ha a validator nem tudja észlelni, kiválasztható a kódolás az 'Encoding' menüből (példa).

De gyakra a validator akkor sem jelez, ha rossz kódolás lett észlelve vagy detektálva. Ennek oka, hogy sok kódolás nagyon hasonló és a validator csak a leíró nyelvet ellenőrzi, azt viszont, hogy a szövegnek van értelme vagy sem, már nem. Hogy ennek helyességéről meggyőződjünk, a következő pontok segítenek:

Mellesleg

A validator nem működik a karakterkódolás információ nélkül, mert az SGML vagy XML ellenőrzése a karakterek sorozatainak elemzésén alapul, de amit a validator bemenetként kap az csak bájtok sorozata. A karakterkódolás ismeretében viszont a validator a bájtokat karakterekké konvertálja. általában ez jellemző az összes ilyen adatokkal dolgozó alkalmazásokra, beleértve a böngészőket is. Ha a megfelelő karaktereket nem sikerül azonosítani a böngészőben megjelenő oldal zavaros és értelmetlen lesz.

A validator az ellenőrzést úgy viszi véghez, hogy a jelzett kódolásból UTF-8-ba konvertálja a szöveget. Ha a konverzió nem sikerül, mert egy bizonyos bájtrész nem jelenik meg a bemeneti kódolásban, a validator hibaüzenet dob vissza.

Jegyezzük meg, hogy egy oldal vizuális ellenőrzése a validator nélkül nem mindig a legjobb, mert: