Znakový model XML

  • XML dokumenty používají znakovou sadu ISO 10646

  • 21bitová znaková sada, v současné době je definováno přes 100 tisíc znaků

  • zcela shodné s Unicode

  • kódování: UTF-16 a UTF-8

  • UTF-16

    • 16bitové slovo přímo obsahuje kód znaku

    • další téměř milión znaků je dostupných pomocí surrogates – 1 znak = dvě 16bitová slova

  • UTF-8

    • text může být kódován jako sekvence bajtů

    • 1 znak = 1 až 4 bajty

    • kompatibilní s ASCII

Obrázek 1. Kódování UTF-8

Kódování UTF-8


  • standard XML vyžaduje, aby všechny aplikace podporovaly alespoň UTF-8 a UTF-16

  • lze použít i jiné kódování, musí se uvést v XML deklaraci

    <?xml version="1.0" encoding="iso-8859-2"?>

    musí být první řádka dokumentu

  • znak s libovolným kódem z ISO 10646 můžeme zapsat pomocí entity &#kód; (kód je číslo v desítkové soustavě) nebo &#xkód; (kód je číslo v šestnáctkové soustavě)