ISO/IEC 8859‑10
Wprowadzenie
ISO/IEC 8859‑10, znany również jako Latin 6 lub Nordic, jest częścią serii standardów ISO/IEC 8859 opracowanych przez Międzynarodową Organizację Normalizacyjną (ISO) we współpracy z Międzynarodową Komisją Elektrotechniczną (IEC). Standard określa jednobajtowy zestaw znaków (kodowanie 8‑bitowe) przeznaczony głównie dla języków skandynawskich: duńskiego, norweskiego, szwedzkiego, fińskiego, islandzkiego oraz języka lapońskiego (Saami).
Historia
W odpowiedzi na potrzebę jednolitego kodowania znaków dla północno‑europejskich języków, w latach 1992 przyjęto projekt ISO/IEC 8859‑10. Został on opublikowany w 1992 roku jako kolejny członek serii „Latin” po ISO/IEC 8859‑1 (Latin‑1) i ISO/IEC 8859‑4 (Latin‑4). Standard zastąpił wcześniejsze, mniej jednoznaczne rozwiązania używane w Skandynawii, takie jak IBM 850 czy Windows‑1252.
Zakres znaków
Zestaw składa się z 256 kodów bajtowych (0x00‑0xFF). Pierwsze 128 kodów (0x00‑0x7F) jest identyczne z ASCII. Pozostała część (0xA0‑0xFF) zawiera znaki specyficzne dla języków nordyckich oraz dodatkowe symbole interpunkcyjne i walutowe.
Przykładowa tabela znaków (wybrane pozycje)
| Kod (hex) | Symbol | Opis |
|---|---|---|
| A0 | spacja niełamiąca (NBSP) | |
| A1 | ¡ | odwrócony wykrzyknik |
| A2 | ¢ | symbol centa |
| A3 | Ł | duża litera L z kreską (polski) |
| A4 | ¤ | symbol waluty |
| A5 | § | znak paragrafu |
| A6 | Š | duża litera S z haachem (czeski, słoweński) |
| A7 | š | mała litera s z haachem |
| A8 | ° | stopień |
| A9 | © | znak copyright |
| AA | Ä | duża litera A z dwoma kropkami (niemiecki, szwedzki) |
| AB | Å | duża litera A z okręgiem (duński, norweski, szwedzki) |
| AC | Æ | duża litera AE (duński, norweski) |
| AD | Ê | duża litera E z daszkiem (francuski) |
| AE | Ø | duża litera O z ukośnikiem (duński, norweski) |
| AF | ø | mała litera o z ukośnikiem |
| B0 | Ð | duża litera Eth (islandzki) |
| B1 | ð | mała litera eth |
| B2 | Þ | duża litera Thorn (islandzki) |
| B3 | þ | mała litera thorn |
| B4 | Ħ | duża litera H z kreską (maltański) |
| B5 | ħ | mała litera h z kreską |
| B6 | Ŋ | duża litera N z haczykiem (języki saamskie) |
| B7 | ŋ | mała litera n z haczykiem |
| B8 | Ŧ | duża litera T z kreską (norweski) |
| B9 | ŧ | mała litera t z kreską |
| BA | Ŋ | duża litera N z haczykiem (alternatywa) |
| BB | IJ | duża litera IJ (holenderski) |
| BC | ij | mała litera ij |
| BD | Ø | duża litera O z ukośnikiem (alternatywa) |
| BE | ø | mała litera o z ukośnikiem (alternatywa) |
| BF | ß | duża litera Eszett (niemiecki) |
Zastosowanie
Standard jest wykorzystywany głównie w następujących obszarach:
- Systemy operacyjne i oprogramowanie biurowe w krajach skandynawskich (np. Finlandia, Szwecja, Norwegia, Dania, Islandia).
- Usługi internetowe i strony WWW publikowane przed latami 2000, zanim powszechnie przyjęto Unicode.
- Urządzenia wbudowane (np. drukarki, telefony komórkowe) przeznaczone na rynek nordycki.
Powiązania z innymi kodowaniami
ISO/IEC 8859‑10 jest blisko spokrewniony z innymi członkami serii ISO/IEC 8859:
- Latin‑1 – ogólnoeuropejski zestaw znaków, nie zawiera znaków islandzkich.
- Latin‑4 – przeznaczony dla języków bałtyckich; nie obejmuje niektórych znaków skandynawskich, które znajdują się w Latin‑6.
- Latin‑9 – rozszerzenie Latin‑1 o znak euro i kilka liter francuskich; nie jest używany w Skandynawii.
Relacja z Unicode
Wraz z rozwojem Unicode i kodowania UTF‑8, użycie ISO/IEC 8859‑10 stopniowo maleje. Wszystkie znaki z Latin‑6 mają bezpośrednie odpowiedniki w Unicode (zakres U+00A0‑U+00FF oraz dodatkowe pozycje U+0100‑U+017F). Dlatego współczesne aplikacje zazwyczaj konwertują teksty z Latin‑6 na UTF‑8, aby zapewnić kompatybilność z międzynarodowymi standardami.
Specyfikacja techniczna
Pełna specyfikacja definiuje:
- Mapowanie bajtu → znak Unicode (tzw. code page).
- Reguły dotyczące kodowania znaków kontrolnych (0x00‑0x1F oraz 0x7F‑0x9F).
- Wymagania dotyczące implementacji w sprzęcie i oprogramowaniu.
Patenty i prawa autorskie
Standard jest udostępniany na zasadach otwartych; nie ma opłat licencyjnych za jego implementację. Jednakże niektóre implementacje (np. czcionki) mogą podlegać osobnym licencjom.
Patrzenie w przyszłość
Mimo rosnącej dominacji Unicode, ISO/IEC 8859‑10 pozostaje istotny w kontekście archiwizacji danych historycznych oraz w systemach, w których zasoby sprzętowe nie pozwalają na użycie wielobajtowych kodowań.