XML i Unicode

Karakteri koji se koriste u XML dokumentima pripadaju Unicode karakter setu, tj. zadovoljavaju Unicode standard. Unicode predstavlja najvaลพniju ekstenziju svima poznatog ASCII karakter seta. Za samo uspostavljanje i objavljivanje Unicode standarda odgovoran je Unicode konzorcijum (Unicode Consortium – www.unicode.org). Isti standard obuhvaฤ‡en je i ISO specifikacijom, i to standardom ISO/IEC 10646. Unicode karakter set podrลพava karaktere gotovo svih govornih jezika, kao i matematiฤke i druge simbole. Pored engleskog i ostalih zapadnoevropskih jezika, podrลพava i japanski, kineski, kao i naลกu ฤ‡irilicu. Treba reฤ‡i i to da podrลกka svih subjekata Unicode standardu predstavlja najvaลพniji korak u internacionalizaciji Interneta.

Meฤ‘utim, da bi Unicode pokrio sve govorne jezike karakterima, potrebno mu je 16 bita po karakteru. Do sada ste verovatno koristili druge sliฤne karakter setove, kao ลกto je Latin-1 (podrazumevani Windows-ov karakter set), koji koristi samo 8 bita po karakteru. Kao ลกto znamo, 8 bita obezbeฤ‘uje samo 256 karaktera, ลกto nije dovoljno ni za pokrivanje japanskog jezika, a da ne govorimo joลก i o ostalim jezicima (kao ลกto su kineski, srpski, maฤ‘arski itd.). Poลกto svaki Unicode karakter zauzima 16 bita, ลกto je dva puta viลกe nego kod njegovog ekvivalenta Latin-1 set, i sami XML bi trebalo da su dva puta veฤ‡i od normalnih tekstualnih fajlova. Na svu sreฤ‡u, postoji reลกenje. U najveฤ‡em broju sluฤajeva nije nam potrebno svih 16 bita po karakteru, te XML dokumente moลพemo formirati sa 8-bitnim karakter setom.

Pri tome, XML procesor jednako mora da prepozna i UTF-8 set i UTF-16 set. Kao ลกto i sam naziv implicira, karakter set UTF-8 koristi 8 bita za karaktere i pokriva sve engleske karaktere. Veฤ‡ina XML procesora podrลพava i druge karakter setove. Tako na primer, zapadnoevropske jezike podrลพava karakter set ISO 8859-1, ลกto je oficijelni naziv za poznati Latin-1 set. XML dokumenti koji se formiraju razliฤitim setovima od UTF-8 ili UTF-16 seta, moraju poฤeti odreฤ‘enom deklaracijom. Deklaracija mora da sadrลพi atribut encoding, koji najavljuje koji ฤ‡e se set koristiti. Na primer, dokument napisan Latin-1 karakter setom trebalo bi da koristi sledeฤ‡u deklaraciju:


<?xml version="1.0" encoding="ISO-8859-1"?>
<ulaz>
<ime>Petar Petrovic<ime/>
<email href="mailto:pera@email.com"/>
</ulaz>

Pratite Krstaricu na www.krstarica.com