ISO 8859-n pontosabban ISO 8859 illetve ISO/IEC 8859, az ISO és az IEC szervezetek egy közös szabványa a 8 bites karakterkódolásra, számítógépes felhasználás céljából. A szabvány több egymástól függetlenül megjelent, és saját kiegészítő számmal rendelkező formában jelent meg, mint például ISO/IEC 8859-1, ISO/IEC 8859-2 stb., de mindegyik önmagában is egy teljes szabvány. 2006-ig 15 része létezik, kivéve a megszüntetett ISO/IEC 8859-12-es szabványt.

Összefoglalás

szerkesztés

Míg a 95 nyomtatható ASCII karakter bitmintái elegendőek a modern angolnak az információcserére, több olyan nyelvnek, amely ugyan latin ábécét használ, szüksége van olyan szimbólumokra, amelyeket az ASCII nem tartalmaz, mint a ß (németben), a ñ (spanyolban) és az å (svédben és más északi nyelvekben). Az ISO 8859 úgy gondolta megoldani ezt a problémát, hogy kihasználja a byte mind a 8 bitjét, ezzel még 128 további karakterhelyet biztosítva.

Az ISO 8859-n csak nyomtatható karakterek kódjait tartalmazza, és úgy tervezték, hogy együtt lehessen használni azokat a vezérlő karakterekkel kódütközés nélkül. Az IANA és a C0 készlete (a 0 és decimális 31 közé eső kódok) a ISO 646 szerint, valamint a C1 készlete (a decimális 127 és 159 közé eső kódok) az ISO 6429 szerint, egy olyan teljes 8 bites kódtáblát kapunk, amelyben a legtöbb, ha nem is minden, byte ki van használva. Ezek a készletek (kódtáblák) az ISO-8859-n-ek, vagy gyakran emlegetik még ezeket MIME néven is. A legtöbb ember az ISO 8859-n kifejezést vagy felcserélhető ISO-8859-n kifejezést használja. Az ISO 8859-11 készlet nagyjából a TIS 620-nak felel meg.

Karakterek

szerkesztés

Az ISO 8859 szabvány tervezésekor a cél az információcsere támogatása volt, nem pedig a tipográfiai minőség elérése; a szabvány nem foglalkozik a betűk tipográfia szempontú minőségével, mint opcionális ligatúrák, hullámos idézőjelek, hullámvonalak stb. Az eredményt, egy jó minőségű nyomtatható karakterkészletet, gyakran tekintik az ASCII vagy az ISO 8859 szabvány egy bővítésének, vagy helyette inkább a Unicode-ot használják.

Ökölszabály szerint, ha a karakter vagy szimbólum nem része egy széles körben elterjedt, adatfeldolgozásnál használt kódkészletnek, vagy nem található a nemzeti nyelv leírására használt billentyűzeten, akkor az nem kerül be a kódtáblába. Ennélfogva az irányított kettős idézőjelek (« és »), amelyet több európai nyelv használ, bekerült a kódtáblába, míg a és szintén irányított kettős idézőjel nem, annak ellenére, hogy az angol és még néhány nyelv használja. A franciába nem kerültek be az œ és Œ ligatúrák, mivel azokat a 'oe' tökéletesen helyettesíteni tudja. Az Ÿ, amiből kis- és nagybetű is van, szintén kimaradt. Bár ezek a karakterek mégis csak bekerültek később a ISO 8859-15 szabványba, amelyben megjelent az új eurójel karaktere, az „€”. hasonlóképen kimaradtak a holland 'ij' és 'IJ' betűk, mivel a hollandul beszélők is gyakran írják ezeket a jeleket két betűvel. A románba nem kerültek be a 'Ș/ș' és 'Ț/ț' (vesszővel) betűk, mivel ezek a betűk megfelelnek az 'Ş/ş' és 'Ţ/ţ' (kampóval) betűknek az Unicode Consortium szerint. Bár a betűk a hozzájuk tartozó vesszővel később bekerültek az Unicode szabványba, és így a ISO 8859-16 szabványba is.

A legtöbb ISO 8859 kódkészlet a különböző európai nyelvek igényeinek kielégítésére készült. Vannak azonban a nem latin, hanem saját ábécét használó nyelvek: görög, cirill, héber, arab és thai. A legtöbb kódkészlet csak üres karaktert jelenít meg a héber vagy arab betűk helyett, illetve csak különféle karakterkombinációkkal lehet azokat megjeleníteni. A szabvány nem támogatja a kelet-ázsiai nyelveket (CJK), pontosabban azok képírási rendszerét, mivel ahhoz több ezer jelre lenne szükség. Bár a vietnámi latin betűkön alapul, a 96 hely nem elegendő (csak a különböző hangsúlyokat jelentő karakterkombinációk nélkül) a betűk megjelenítésére. A japán kana jeleket ugyan lehetne egy kódtáblába foglalni, azonban amint a világ sok más ábécéjét, az ISO 8859 ezt sem támogatja.

Az ISO 8859 részei

szerkesztés

Az ISO 8859 a következő részekre osztható:

Part 1 Latin-1
nyugat-európai
Talán az ISO 8859 egyik legbővebb része, lefedi a legtöbb nyugat-európai nyelvet: dán, holland (részben[1]), angol, feröeri, finn (részben[2]), francia (részben[2]), német, izlandi, ír, olasz, norvég, portugál, rétoromán, skót, spanyol és svéd, valamint a kelet-európai albán, illetve az afrikai nyelvek közül az afrikaans és szuahéli. A hiányzó eurójel és a nagy Ÿ a felülvizsgált ISO 8859-15 változatba került. Az IANA által jóváhagyott ISO-8859-1 készletre tekintettel ez az alap kódolása a meglévő HTML dokumentumoknak és azoknak a dokumentumoknak, amelyeket MIME üzenetként továbbítanak.
Part 2 Latin-2
közép-európai
Támogatja a latin ábécét használó közép- és kelet-európai nyelveket, ideértve a bosnyákot, a lengyelt, a horvátot, a csehet, a szlovákot, a szlovént és a magyart.[3] A hiányzó eurójel az ISO 8859-16 változatban található.
Part 3 Latin-3
dél-európai
török, máltai és eszperantó. Feleslegessé tette az ISO 8859-9 a törökre és a Unicode az eszperantóra.
Part 4 Latin-4
észak-európai
észt, lett, litván, grönlandi és számi.
Part 5 latin/cirill Lefedi a legtöbb cirill ábécét használó szláv nyelvet, ideértve a beloruszt, a bolgárt, a macedont, az oroszt, a szerbet és az ukránt (részben[4]).
Part 6 latin/arab Lefedi a legtöbb arab nyelvhez tartozó karaktert. Nem támogatja az arab írást használó egyéb nyelveket. Szükséges a megjelenítéséhez a BiDi és a kurzív illesztés megvalósítása.
Part 7 latin/görög Lefedi a modern görög nyelvet (monotonikus írás). Szintén használható ó-görög írásra, ékezetek nélkül vagy monotonikus írással, de a hiányozni fognak a hangsúlyok politonikus írás. Megtalálhatók viszont a Unicode-ban.
Part 8 latin/héber Lefedi a modern héber ábécét amit Izraelben használnak. A gyakorlatban két kódolás létezik, a logikai sorrend szerinti (szükséges a BiDi eljárás a megjelenítéshez) és a vizuális (balról jobbra) sorrend szerinti (a valóságban a bidi feldolgozás és sortörések után).
Part 9 Latin-5
török
Nagyjából megfelel az ISO 8859-1-nek, a ritkán használt izlandi betűket török betűkkel helyettesítve. Használható még a kurd nyelvre is.
Part 10 Latin-6
északi
A Latin-4 átrendezése, a északi nyelvek számára hasznos módon. A balti nyelvek a Latin-4 ábécét használják inkább.
Part 11 latin/thai Tartalmazza a thai nyelvhez szükséges glifákat. Hasonló a TIS 620-hoz.
Nem létezik
Part 12
latin/dévanágari Azt a munkát, ami a 8859 dévanágarit lefedő részének kidolgozására folyt, 1997-ben hivatalosan leállították. Az ISCII és a Unicode/ISO/IEC 10646 lefedi a dévanágarit.
Part 13 Latin-7
balti római
A balti nyelvek által használt és a Latin-4-ből és a Latin-6-ból hiányzó karakterek.
Part 14 Latin-8
kelta
Lefedi a kelta nyelveket, mint a skót gael és a breton nyelv.
Part 15 Latin-9 A 8859-1 felülvizsgálata eltávolított néhány alig használt szimbólumot, és helyettesítette azokat az eurójellel és a következő betűkkel: Š, š, Ž, ž, Œ, œ és Ÿ, így teljes lett a francia, a finn és az észt.
Part 16 Latin-10
délkelet-európai
A következő nyelvek lefedésére készült: albán, horvát, magyar, olasz, lengyel, román és szlovén, de megfelel a finn, francia, német és ír (új írású) számára is. A fókusz inkább a betűre, mint a szimbólumokra irányult. A pénz jelet az eurójellel helyettesítették.
  1. Csak a IJ/ij (IJ betűk) hiányoznak, amelyeket általában I-vel és J-vel helyettesítenek.
  2. a b A hiányzó karakterek az ISO 8859-15-ben vannak.
  3. A kis és nagy hosszú ő, ű betűk kivételével az ISO-8859-1 is lefedi a magyart, ekkor a hullámos ö, kalapos ü betűket szokták használni helyettük (õ, û).
  4. A hiányzó Ґ/ґ karakterek 1991-ben kerültek vissza az ukránba.

Az ISO 8859 tervezésekor arra törekedtek, hogy a nyelvek lehetőleg egymás betűit használhassák.

A különböző ISO 8859 összehasonlításához
Bin. Okt. Dec. Hex. 1 2 3 4 5 6 7 8 9 10 11 13 14 15 16
10100000 240 160 A0 Nem törhető szóköz (Non break space – NBSP)
10100001 241 161 A1 ¡ Ą Ħ Ą Ё     ¡ Ą ¡ Ą
10100010 242 162 A2 ¢ ˘ ĸ Ђ   ¢ ¢ Ē ¢ ¢ ą
10100011 243 163 A3 £ Ł £ Ŗ Ѓ   £ Ģ £ Ł
10100100 244 164 A4 ¤ Є ¤ ¤ Ī ¤ Ċ
10100101 245 165 A5 ¥ Ľ   Ĩ Ѕ   ¥ Ĩ ċ ¥
10100110 246 166 A6 ¦ Ś Ĥ Ļ І   ¦ Ķ ¦ Š
10100111 247 167 A7 § Ї   § §
10101000 250 168 A8 ¨ Ј   ¨ Ļ Ø š
10101001 251 169 A9 © Š İ Š Љ   © Đ ©
10101010 252 170 AA ª Ş Ē Њ   ͺ × ª Š Ŗ ª Ș
10101011 253 171 AB « Ť Ğ Ģ Ћ   « Ŧ « «
10101100 254 172 AC ¬ Ź Ĵ Ŧ Ќ ، ¬ Ž ¬ ¬ Ź
10101101 255 173 AD opcionális elválasztójel (SHY – soft hyphen) SHY
10101110 256 174 AE ® Ž   Ž Ў     ® Ū ® ź
10101111 257 175 AF ¯ Ż ¯ Џ   ¯ Ŋ Æ Ÿ ¯ Ż
10110000 260 176 B0 ° А   ° ° °
10110001 261 177 B1 ± ą ħ ą Б   ± ą ± ±
10110010 262 178 B2 ² ˛ ² ˛ В   ² ē ² Ġ ² Č
10110011 263 179 B3 ³ ł ³ ŗ Г   ³ ģ ³ ġ ³ ł
10110100 264 180 B4 ´ Д   ΄ ´ ī Ž
10110101 265 181 B5 µ ľ µ ĩ Е   ΅ µ ĩ µ µ
10110110 266 182 B6 ś ĥ ļ Ж   Ά ķ
10110111 267 183 B7 · ˇ · ˇ З   · · ·
10111000 270 184 B8 ¸ И   Έ ¸ ļ ø ž
10111001 271 185 B9 ¹ š ı š Й   Ή ¹ đ ¹ ¹ č
10111010 272 186 BA º ş ē К   Ί ÷ º š ŗ º ș
10111011 273 187 BB » ť ğ ģ Л ؛ » ŧ » »
10111100 274 188 BC ¼ ź ĵ ŧ М   Ό ¼ ž ¼ Œ
10111101 275 189 BD ½ ˝ ½ Ŋ Н   ½ ½ œ
10111110 276 190 BE ¾ ž   ž О   Ύ ¾ ū ¾ Ÿ
10111111 277 191 BF ¿ ż ŋ П ؟ Ώ   ¿ ŋ æ ¿ ż
11000000 300 192 C0 À Ŕ À Ā Р   ΐ   À Ā Ą À
11000001 301 193 C1 Á С ء Α   Á Į Á
11000010 302 194 C2 Â Т آ Β   Â Ā Â
11000011 303 195 C3 Ã Ă   Ã У أ Γ   Ã Ć Ã Ă
11000100 304 196 C4 Ä Ф ؤ Δ   Ä Ä
11000101 305 197 C5 Å Ĺ Ċ Å Х إ Ε   Å Å Ć
11000110 306 198 C6 Æ Ć Ĉ Æ Ц ئ Ζ   Æ Ę Æ
11000111 307 199 C7 Ç Į Ч ا Η   Ç Į Ē Ç
11001000 310 200 C8 È Č È Č Ш ب Θ   È Č Č È
11001001 311 201 C9 É Щ ة Ι   É É
11001010 312 202 CA Ê Ę Ê Ę Ъ ت Κ   Ê Ę Ź Ê
11001011 313 203 CB Ë Ы ث Λ   Ë Ė Ë
11001100 314 204 CC Ì Ě Ì Ė Ь ج Μ   Ì Ė Ģ Ì
11001101 315 205 CD Í Э ح Ν   Í Ķ Í
11001110 316 206 CE Î Ю خ Ξ   Î Ī Î
11001111 317 207 CF Ï Ď Ï Ī Я د Ο   Ï Ļ Ï
11010000 320 208 D0 Ð Đ   Đ а ذ Π   Ğ Ð Š Ŵ Ð
11010001 321 209 D1 Ñ Ń Ñ Ņ б ر Ρ   Ñ Ņ Ń Ñ Ń
11010010 322 210 D2 Ò Ň Ò Ō в ز     Ò Ō Ņ Ò
11010011 323 211 D3 Ó Ķ г س Σ   Ó Ó
11010100 324 212 D4 Ô д ش Τ   Ô Ō Ô
11010101 325 213 D5 Ő Ġ Õ е ص Υ   Õ Ő
11010110 326 214 D6 Ö ж ض Φ   Ö Ö
11010111 327 215 D7 × з ط Χ   × Ũ × × Ś
11011000 330 216 D8 Ø Ř Ĝ Ø и ظ Ψ   Ø Ų Ø Ű
11011001 331 217 D9 Ù Ů Ù Ų й ع Ω   Ù Ų Ł Ù
11011010 332 218 DA Ú к غ Ϊ   Ú Ś Ú
11011011 333 219 DB Û Ű Û л   Ϋ   Û   Ū Û
11011100 334 220 DC Ü м   ά   Ü   Ü
11011101 335 221 DD Ý Ŭ Ũ н   έ   İ Ý   Ż Ý Ę
11011110 336 222 DE Þ Ţ Ŝ Ū о   ή   Ş Þ   Ž Ŷ Þ Ț
11011111 337 223 DF ß п   ί ß ฿ ß
11100000 340 224 E0 à ŕ à ā р ـ ΰ א à ā ą à
11100001 341 225 E1 á с ف α ב á į á
11100010 342 226 E2 â т ق β ג â ā â
11100011 343 227 E3 ã ă   ã у ك γ ד ã ć ã ă
11100100 344 228 E4 ä ф ل δ ה ä ä
11100101 345 229 E5 å ĺ ċ å х م ε ו å å ć
11100110 346 230 E6 æ ć ĉ æ ц ن ζ ז æ ę æ
11100111 347 231 E7 ç į ч ه η ח ç į ē ç
11101000 350 232 E8 è č è č ш و θ ט è č č è
11101001 351 233 E9 é щ ى ι י é é
11101010 352 234 EA ê ę ê ę ъ ي κ ך ê ę ź ê
11101011 353 235 EB ë ы ً λ כ ë ė ë
11101100 354 236 EC ì ě ì ė ь ٌ μ ל ì ė ģ ì
11101101 355 237 ED í э ٍ ν ם í ķ í
11101110 356 238 EE î ю َ ξ מ î ī î
11101111 357 239 EF ï ď ï ī я ُ ο ן ï ļ ï
11110000 360 240 F0 ð đ   đ ȑ ِ π נ ğ ð š ŵ ð đ
11110001 361 241 F1 ñ ń ñ ņ ё ّ ρ ס ñ ņ ń ñ ń
11110010 362 242 F2 ò ň ò ō ђ ْ ς ע ò ō ņ ò
11110011 363 243 F3 ó ķ ѓ   σ ף ó ó
11110100 364 244 F4 ô є   τ פ ô ō ô
11110101 365 245 F5 ő ġ õ ѕ   υ ץ õ ő
11110110 366 246 F6 ö і   φ צ ö ö
11110111 367 247 F7 ÷ ї   χ ק ÷ ũ ÷ ÷ ś
11111000 370 248 F8 ø ř ĝ ø ј   ψ ר ø ų ø ű
11111001 371 249 F9 ù ů ù ų љ   ω ש ù ų ł ù
11111010 372 250 FA ú њ   ϊ ת ú ś ú
11111011 373 251 FB û ű û ћ   ϋ   û ū û
11111100 374 252 FC ü ќ   ό   ü   ü
11111101 375 253 FD ý ŭ ũ §   ύ LRM ı ý   ż ý ę
11111110 376 254 FE þ ţ ŝ ū ў   ώ RLM ş þ   ž ŷ þ ț
11111111 377 255 FF ÿ ˙ џ       ÿ ĸ   ÿ

A 0xA0 helyen minden esetben nem törhető szóköz, a 0xAD pozíción az opcionáli elválasztójel van, amelyek csak sortöréskor látszanak. Az egyéb üres helyek vagy nem használtak, vagy a rendszer nem képes megjeleníteni azokat.

Léteznek az új bővítések ISO/IEC 8859-7:2003 és az ISO/IEC 8859-8:1999 változatok. LRM (left-to-right-mark) a balról jobbra jelző (U+200E) és RLM (right-to-left-mark) a jobbról balra jelző (U+200F).

Fejlesztési állapot

szerkesztés

Az ISO/IEC 8859 szabványt az ISO/IEC 1-es közös technikai bizottságának – Joined Technical Committee 1, 2-es albizottsága -Subcommittee 2, 3-as munkacsoportja – Working Group 3 (ISO/IEC JTC 1/SC 2/WG 3) tartja karban. 2004 júniusában a 3-as munkacsoport felbomlott, így a karbantartást a 2-es albizottság végzi. A szabvány aktuálisan nincsen naprakész állapotban, mivel a albizottság és amunkacsoport maradéka inkább a ISO/IEC 10646 szabvány fejlesztésére koncentrál.

Referenciák (angol nyelven)

szerkesztés
  • Az ISO/IEC 8859 nyilvános változatainak minden része szabadon hozzáférhető a következő forrásokból:
  • PDF versions of the final drafts of some parts of ISO/IEC 8859 as submitted for review & publication by ISO/IEC JTC 1/SC 2/WG 3 are available at the WG 3 web site:
    • ISO/IEC 8859-1:1998 – 8-bit single-byte coded graphic character sets, Part 1: Latin alphabet No. 1 (draft dated February 12 1998, published April 15 1998)
    • ISO/IEC 8859-4:1998 – 8-bit single-byte coded graphic character sets, Part 4: Latin alphabet No. 4 (draft dated February 12 1998, published July 1 1998)
    • ISO/IEC 8859-7:1999 – 8-bit single-byte coded graphic character sets, Part 7: Latin/Greek alphabet (draft dated June 10 1999; superseded by ISO/IEC 8859-7:2003, published October 10 2003)
    • ISO/IEC 8859-10:1998 – 8-bit single-byte coded graphic character sets, Part 10: Latin alphabet No. 6 (draft dated February 12 1998, published July 15 1998)
    • ISO/IEC 8859-11:1999 – 8-bit single-byte coded graphic character sets, Part 11: Latin/Thai character set (draft dated June 22 1999; superseded by ISO/IEC 8859-11:2001, published 15 December 2001)
    • ISO/IEC 8859-13:1998 – 8-bit single-byte coded graphic character sets, Part 13: Latin alphabet No. 7 (draft dated April 15 1998, published October 15 1998)
    • ISO/IEC 8859-15:1998 – 8-bit single-byte coded graphic character sets, Part 15: Latin alphabet No. 9 (draft dated August 1 1997; superseded by ISO/IEC 8859-15:1999, published March 15 1999)
    • ISO/IEC 8859-16:2000 – 8-bit single-byte coded graphic character sets, Part 16: Latin alphabet No. 10 (draft dated November 15. 1999; superseded by ISO/IEC 8859-16:2001, published July 15 2001)
  • European Computer Manufacturers Association|ECMA standards, which in intent correspond exactly to the ISO/IEC 8859 character set standards, can be found at:
    • Standard ECMA-94: 8-Bit Single Byte Coded Graphic Character Sets – Latin Alphabets No. 1 to No. 4 2nd edition (June 1986)
    • Standard ECMA-113: 8-Bit Single-Byte Coded Graphic Character Sets – Latin/Cyrillic Alphabet 3rd edition (December 1999)
    • Standard ECMA-114: 8-Bit Single-Byte Coded Graphic Character Sets – Latin/Arabic Alphabet 2nd edition (December 2000)
    • Standard ECMA-118: 8-Bit Single-Byte Coded Graphic Character Sets – Latin/Greek Alphabet (December 1986)
    • Standard ECMA-121: 8-Bit Single-Byte Coded Graphic Character Sets – Latin/Hebrew Alphabet 2nd edition (December 2000)
    • Standard ECMA-128: 8-Bit Single-Byte Coded Graphic Character Sets – Latin Alphabet No. 5 2nd edition (December 1999)
    • Standard ECMA-144: 8-Bit Single-Byte Coded Character Sets – Latin Alphabet No. 6 3rd edition (December 2000)
  • ISO/IEC 8859-1 to Unicode mapping tables as plain text files are at the Unicode FTP site.
  • Informal descriptions and code charts for most ISO 8859 standards are available in ISO 8859 Alphabet Soup (Mirror)