IRI (Internationalized Resource Identifier)
IRI – skrót od Internationalized Resource Identifier (pol. międzynarodowy identyfikator zasobów) – jest rozszerzeniem tradycyjnego URI umożliwiającym użycie w adresie znaków spoza podstawowego zestawu ASCII, w tym znaków z Unicode. Dzięki IRI można w pełni wykorzystywać alfabety narodowe w adresach internetowych, co przyczynia się do internacjonalizacji sieci oraz zwiększenia dostępności treści cyfrowych.
Historia
Początkowo w 1995 roku wprowadzono URI jako podstawowy sposób identyfikacji zasobów w HTTP. W miarę rozwoju Internetu i rosnącej potrzeby obsługi wielojęzycznych nazw domen, IETF rozpoczął prace nad rozszerzeniem umożliwiającym użycie znaków narodowych. W RFC 3987 opublikowanym w 2005 roku po raz pierwszy zdefiniowano standard IRI.
Składnia i zasady
- IRI składa się z tych samych elementów co URI: schemat, hierarchia, ścieżka, zapytanie i fragment.
- Dozwolone są znaki z pełnego zakresu Unicode, w tym litery z alfabetów łacińskiego, cyrylicy, arabskiego, chińskiego i innych.
- W procesie transmisji IRI musi być przekształcone na URI przy użyciu mechanizmu punycode (dla części domenowej) oraz percent‑encoding (dla części ścieżki i zapytania).
- Nie wszystkie znaki są dopuszczalne – muszą spełniać reguły składniowe określone w RFC 3987.
Zastosowanie
IRI znalazły zastosowanie w wielu obszarach:
- Adresy stron internetowych – pozwalają na użycie nazw w językach lokalnych, np.
https://pl.wikipedia.org/wiki/Święty_Mikołaj. - Systemy XML i HTML – umożliwiają definiowanie odnośników i identyfikatorów z międzynarodowymi znakami.
- Serwisy REST i API – przyjmują i zwracają zasoby opisane IRI, co zwiększa ich dostępność na rynkach zagranicznych.
- Systemy zarządzania treścią (CMS) – pozwalają na tworzenie przyjaznych adresów w językach użytkowników.
Powiązane pojęcia
Warto zapoznać się również z innymi pojęciami z zakresu identyfikacji zasobów w Internecie:
- URI – podstawowy identyfikator zasobów w formacie ASCII.
- URL – specyficzny rodzaj URI określający lokalizację zasobu.
- Punycode – metoda kodowania znaków Unicode w domenach.
- IDN (Internationalized Domain Names) – nazwy domen międzynarodowe, bazujące na IRI.
- W3C – organizacja standaryzacyjna, wspierająca rozwój IRI.
Przykłady
Przykładowy IRI w języku polskim:
https://pl.wikipedia.org/wiki/Święty_Mikołaj
Po konwersji do URI:
https://pl.wikipedia.org/wiki/%C5%9Awi%C4%99ty_Miko%C5%82aj