Znacznik identyfikacyjny języka IETF
Te etykiety identyfikacyjne język IETF (gdzie skrót wyznacza Internet Engineering Task Force ) pochodzą z standaryzowany kod , który umożliwia przypisanie strukturyzowanych i hierarchicznych etykiet umożliwiających identyfikację języków i rodzin zbiorów języków lub odmian językowych tych Języki. Nie są zarezerwowane tylko dla danych i dokumentów pisemnych, ale mogą również oznaczać pliki audio, treści multimedialne lub wszelkiego rodzaju dane lokalizacyjne w zależności od języka i innych parametrów o charakterze językowym.
Są one określone przez normę zalecenia BCP 47 w IETF , która jest regularnie aktualizowana i zawsze odwołuje się do najnowszych obowiązujących normatywnych RFC (oraz ewentualnych korekt i errata ), która określa ich normatywnego składni, definicji, ważności i zastosowania w oprogramowaniu (w szczególności ustalenie zgodności i równoważności między etykietami); to zalecenie składa się obecnie z RFC 5646 (następca RFC 4646) i RFC 4647.
Są one związane z rejestrem pierwiastków, które można wykorzystać do ich kompozycji; rejestr ten jest utrzymywany i obsługiwany przez IANA (obecnie zintegrowany z ICANN ). Inne informacyjne specyfikacje RFC są również publikowane podczas głównych aktualizacji rejestru, ale nie są one w pełni aktualizowane, a sam rejestr zapewnia w imieniu IETF utrzymanie zawartych w nim danych zgodnie z polityką i protokołami zdefiniowanymi w normatywnych specyfikacjach RFC.
Składnia
Pełny tag języka ( Tag-języka ) składa się z podtagów ( Subtag ), z których każdy zawiera od 1 do 8 znaków alfanumerycznych od 0 do 9 lub od a do z (zalecaną wielkością liter, o ile nie określono inaczej, są małe litery, nawet jeśli tak jest nieistotne) i oddzielone pojedynczymi myślnikami (-). Ogólna (uproszczona) składnia w ABNF odpowiada:
Language-Tag = Subtag *( "-" Subtag )
Subtag = 1*8alphanum
Jednak pełna etykieta musi dokładniej odpowiadać jednemu z formatów zdefiniowanych poniżej (wyczerpująca lista), rozpoznawalnej według pierwszej użytej podetykiety. Skonstruowane języki można również kodować lokalnie za pomocą subtagu x. Na przykład art-x-panduniamoże być stosowany do pandunii .
Standardowy format etykiety
Standardowe kody formatu, w kolejności, następujące zestawy tagów podrzędnych:
Etykiety podrzędne do wskazania i określenia języka podstawowego
- Język podetykieta (zazwyczaj pobierane z ISO 639 standardzie ale zarejestrowany w rejestrze IANA we wpisie Language:o Type:Subtag):
obowiązkowe, 2 lub 3 litery (na 4 Subtagi nas są zarezerwowane dla rozszerzeń przyszłości normą ISO 639), lub 5 do 8 liter; gdy istnieje kilka podtagów dla tego samego języka (lub jeśli podtag jest przestarzały), zwykle używany jest krótszy tag, a pozostałe są synonimami aliasów (ale nie są zalecane).
- Uwaga: kody języków są czasami usuwane z ISO 639. Jednak ze względu na stabilność tagów językowych odpowiednie podtagi języków pozostają ważne, ale są przestarzałe (rejestr wspomina o wpisie Deprecated:); te tagi podrzędne zachowane w celu zachowania zgodności z poprzednimi wersjami mogą następnie opcjonalnie stać się synonimami aliasów podtagu innego języka, o którym mowa w rejestrze IANA przez wpis Preferred:wspominający o nowej zalecanej wartości do użycia, jeśli jest ona unikalna (w przeciwnym razie należy unikać tych przestarzałych tagów podrzędnych, ponieważ ich interpretacja jest niejednoznaczna).
- Do trzech tagów podrzędnych rozszerzających język (wymienionych w IANA Rejestru we wpisie Extlang:o Type:Subtag):
opcjonalnie, 3 litery każdy. Te rozszerzenia są specyficzne dla subtagu języka (który może mieć tylko 2 lub 3 litery); Od czasu standaryzacji ISO 639-3 te podtagi rozszerzeń języka nie są już zalecane, a każdy dozwolony zestaw podtagów (język podstawowy plus rozszerzenia) stał się aliasem synonimicznym z innym znormalizowanym kodem języka ISO 639.
Precyzja podtag używanego systemu pisania
- Co najwyżej jednym zapisu subtag (normalnie z normą ISO 15924 , ale zarejestrowany w rejestrze IANA we wpisie Script:o Type:Subtag):
opcjonalnie, 4 liter (zalecany przypadek liter jest małymi literami z wyjątkiem pierwszego wielkimi literami). Wszystkie możliwe znaczniki podrzędne niekoniecznie odpowiadają językom pisanym lub odszyfrowanym skryptom, a niektóre znaczniki podrzędne odpowiadają rodzinom skryptów lub wariantom graficznym tego samego systemu zapisu.
Podtagi precyzji różnorodności językowej
- Co najwyżej jeden subtag regionu geograficznego (zwykle pochodzący z ISO 3166-1, ale ograniczony tylko do kodów krajów lub ze standardu UN M.49 dla regionów międzynarodowych z wyłączeniem krajów i regionów gospodarczych, ale zarejestrowany w rejestrze IANA we wpisie Region:z Type:Subtag):
opcjonalne , na 2 litery (zalecane wielkie litery) lub 3 cyfry; jeśli dla danego kraju lub regionu istnieje więcej niż jeden tag podrzędny, zwykle używany jest krótszy tag, a pozostałe są definiowane jako synonimiczne aliasy (ale nie są zalecane).
- Możliwe podtagi do kodowania wariantów dialektalnych lub ortograficznych (specyficzne dla jednego lub więcej języków, zarejestrowane w rejestrze IANA we wpisie Variant:z Type:Subtagi ze wskazaniem języków, do których wariant ma zastosowanie Prefix:):
od 4 do 8 alfanumerycznych znaków lub więcej każdy (ale minimum 5 znaków, jeśli subtag nie zaczyna się liczbą od 0 do 9). Niektóre z tych podtagów, używane po tagach języka i / lub regionu, stały się przestarzałe, a odpowiadający im zestaw (język + region geograficzny + warianty) został zastąpiony innym standardowym kodem języka, który stał się etykietą synonimiczną (niezalecane).
Podtagi rozszerzenia
- Możliwe zestawy sub-tagów dla standaryzowanych rozszerzeń :
1 pojedyncza litera (oprócz x) w pierwszym tzw „singleton” sub-tag zakodować typ znormalizowanych rozszerzenia (zarejestrowanej w rejestrze IANA z we wpisie Singleton:o Type:Subtag), a od 2 do 8 znaków alfanumerycznych w kolejnych podtagach do zakodowania wartości, które będą interpretowane zgodnie z typem znormalizowanego rozszerzenia; standardowe rozszerzenia mogą być zmieniane automatycznie według zestawu (najlepiej w kolejności rosnącej typów rozszerzeń), ale muszą pojawić się tylko raz (w razie potrzeby kilka kolejnych podtagów zostanie zakodowanych w tym samym rozszerzeniu). Podtagi po początkowym singletonie są zgodne ze składnią i kolejnością specyficzną dla każdego typu rozszerzenia. Uwagi:
- Od czasu standaryzacji ISO 639-3, geograficzne podtagi nie są już zalecane do reprezentacji ludzkich języków i odmian dialektów (ale nadal są używane do kodowania preferencji lokalizacyjnych innych niż sam język);
- Konsorcjum Unicode zastrzegło standardowy typ rozszerzenia w celu dodania danych lokalizacyjnych innych niż pojedynczy język (w szczególności dla projektu CLDR , na przykład konwencję sortowania lub wskazanie formatu lub liczb); używa subtagu typu "u" (w obecnym stanie standaryzacji ten typ rozszerzenia nie powinien być jeszcze używany w Wikipedii);
- Konsorcjum Unicode zastrzegło również inny rodzaj rozszerzenia standardu w celu dodania danych wskazujących na transformację tekstu (również używany w projekcie CLDR , na przykład ograniczenie metody wprowadzania danych lub wzmianka o oryginalnym pisaniu transliteracji i określenie zastosowanej metody); używa rozszerzenia typu subtag t.
- Możliwe rozszerzenie użytku prywatnego ( użytek prywatny , niezarejestrowany w rejestrze IANA):
stały podtag „x”, po którym następuje jeden lub więcej znaczników podrzędnych składających się z 1 do 8 znaków alfanumerycznych, przeznaczonych do kodowania wariantów dialektycznych i innych niż standardowa pisownia lub inne typy danych o lokalizacji, które nie mają charakteru językowego (tego typu prywatne rozszerzenie nie powinno być używane w Wikipedii).
Stary format etykiet w rejestrze IANA
Stary format używany w rejestrze IANA został użyty do kodowania języków, które nie były wtedy wymienione w ISO 639. Ten stary format składa się z następujących podtagów:
- Stały subtag „i” (dla rejestru „IANA”);
- Jeden lub więcej innych podtagów, każdy składający się z 1 do 8 znaków alfanumerycznych (musi być wpisany do rejestru IANA we wpisie Language:z Type:Tag), aby razem kodować (w kolejności podanej w rejestrze) określony język.
Te historyczne znaczniki są nadal ważne, ale stały się synonimami (niezalecane) aliasami znacznika standardowego formatu: wszystkie języki, które były wcześniej reprezentowane w rejestrze IANA tylko z tagami w tym formacie, są teraz reprezentowane za pomocą standardowej etykiety formatu, o której mowa w sam rejestr (ten stary format nie powinien już być używany w Wikipedii).
Format etykiety do użytku prywatnego
Format do użytku prywatnego ( użytek prywatny , niezarejestrowany w rejestrze IANA) składa się z następujących podtagów:
- Stały tag podrzędny „x” (dla „private eXtension”);
- Jeden lub więcej innych tagów podrzędnych, każdy o długości od 1 do 8 znaków alfanumerycznych (niezarejestrowanych w rejestrze IANA) do kodowania informacji prywatnych (niekoniecznie do identyfikacji języka).
Należy pamiętać, że standardowy format obejmuje również wszystkie podtagi do użytku prywatnego, zdefiniowane dla języków, rodzin i kolekcji języków, dla systemów pisma, stylów lub rodzin oraz dla regionów geograficznych (z norm ISO, w których zostały zdefiniowane jako identyfikatory przed zaimportowaniem do rejestru IANA ), a także podtagi rozszerzeń.
W większości witryn internetowych należy unikać tego formatu w celu identyfikacji języków (w tym na stronach Wikipedii, poza pewnymi wewnętrznymi zastosowaniami niewidocznymi dla czytelnika i niezależnymi od używanego oprogramowania), ponieważ nie pozwala on na współdziałanie bez wcześniejszej uznanej zgody i zaakceptowany przez zarówno czytelnika, jak i autora tych treści. Stosowanie takich etykiet jest raczej zarezerwowane dla innych specyficznych zastosowań (i generalnie lokalnych dla określonego przetwarzania wewnętrznego) niż prosta identyfikacja języków.
Inne zastrzeżone formaty etykiet
Żadna inna etykieta, która nie spełnia jednego z powyższych formatów, nie powinna być używana (nawet jeśli spełnia ogólną składnię ABNF), ponieważ pozostaje ona zarezerwowana dla ewentualnego wsparcia przyszłych standardów i ich integracji z aktualizacją. Przyszłość zalecenia BCP 47.
posługiwać się
Etykiety identyfikacyjne języka IETF umożliwiają odniesienie się do określonego języka lub odmiany tego języka, kategoryzację językową danych lub zastosowanie do nich określonego przetwarzania (czy to w celu klasyfikacji treści, ich ostatecznego renderowania, czy też różnych przekształceń).
Ich najbardziej znanymi zastosowaniami w informatyce są protokoły i standardy IETF (takie jak HTTP , poczta elektroniczna i jej rozszerzenia MIME ), W3C (takie jak HTML , XML , CSS ), Konsorcjum Unicode ( sam standard Unicode ). - nawet w swoich normatywnych lub informacyjnych bazach danych lub w projekcie CLDR ), a także niektórych rejestratorów tych protokołów (w tym rejestrów nazw domen do internacjonalizacji nazw domen) i standardów językowych IT (zwłaszcza ANSI i Ecma International ).
ISO opracowała standardy ISO 639 , ISO 3166 i ISO 15924 niezależny z celów innych niż IETF (szczególnie pod względem stabilności kodyfikacji, ponieważ normy te mają inne zastosowania, które w Internecie i nie były pierwotnie aktualizowane w celu zapewnienia kompatybilności wstecznej dla komputera Aplikacje); ale obie organizacje współpracują teraz w celu zapewnienia interoperacyjności (za pośrednictwem bazy rejestracji IANA dla etykiet językowych i monitorowania wzajemnej pracy, poprzez biuletyny wydawane przez rejestratorów norm ISO oraz publikację przez IETF informacyjnych RFC, nawet normatywnych w przypadku istotnej aktualizacji zalecenia BCP 47). Te normy ISO (datowane) są często preferowane przez krajowe i międzynarodowe publiczne organy normalizacyjne (takie jak ITU , różne agencje ONZ , UPU ) oraz do użytku bibliograficznego lub prawnego (w połączeniu z datą wygaśnięcia, odniesieniem i klasyfikacją treści).
Synonimiczne aliasy i preferowane etykiety
Gdy precyzja zapisu nie jest konieczna dla języka, ponieważ jest to jego preferowany system zapisu, rejestr IANA dodaje pole Suppress-Script:w rekordzie podtagu języka, które następnie wymienia Subtag tego skryptu: tworzy to aliasy dla wszystkich znaczników wskazujących oba ten język i pismo (i dowolną regionalną odmianę lub wariant tego języka) do preferowanego tagu bez wspominania o podtagu skryptu. Jednakże, można uczynić wyjątki dla niektórych odmian regionalnych, są one zawarte w rejestrze w dodatkowej rejestracji Type:Tag, odnoszącej się do pełnej etykiety z podaniem zarówno języka, jak i regionu.
Synonimiczne aliasy wymienione w poniższej sekcji jako przykłady nie są wyczerpujące: pełny zestaw aliasów dla każdego języka można wywnioskować z danych rejestru IANA, który wspomina o wszelkich przestarzałych (ale nadal ważnych) tagach lub tagach podrzędnych) oraz opcjonalnie wiąże je z preferowaną etykietą lub etykietą podrzędną (przez pole Preferred:dodane w rekordzie etykiety lub etykietę podrzędną zdefiniowaną ponownie jako alias).
Przykłady
- fr: francuski (współczesny), a priori zapisany w alfabecie łacińskim , ponieważ pismo to jest domyślnie wskazane w rejestrze IANA, w dowolnej z jego regionalnych lub międzynarodowych odmian (również aliasy „fr-Latn”, „fra” i „ fre ”, zdefiniowane jako niezalecane synonimy). Uwaga: francuski Cajun i większość kreoli francuskich można zidentyfikować oddzielnie.
- fr-BE: belgijski francuski , a priori zapisany w alfabecie łacińskim . Uwaga: Walonia można zidentyfikować oddzielnie.
- fr-CA: kanadyjski francuski
- fr-FR: francuski francuski , a priori zapisany w alfabecie łacińskim , w żadnej z jego regionalnych odmian, które nie są oddzielnie standaryzowane Uwaga: Picard można zidentyfikować osobno.
- be-cyrl: białoruski zapisany cyrylicą (uwaga: „być” oznacza tutaj „białoruski”, a nie „Belgia”).
- eo: Esperanto zapisane alfabetem łacińskim (w tym określone znaki akcentowane ).
- ht: haitański kreolski . Uwaga: ta etykieta różni się od „fr-HT”, które oznacza standardowy francuski używany na Haiti, a nie bardziej powszechny kreolski (często trudny do zrozumienia dla francuskojęzycznego, który nie pochodzi z Haiti).
- hy-arevela: wschodni ormiański, prawdopodobnie zapisany w alfabecie ormiańskim .
- ja: japoński , a priori zapisane w sinogramach kanji i / lub sylabarach kana ( hiragana i / lub katakana ) (również alias „ja-Jpan”, zdefiniowany jako synonim, ponieważ to potrójne pismo jest domyślnie wskazywane w rejestrze IANA).
- ja-Hrkt: japoński , zapisywany sylabariuszami kana (bez sinogramów kanji ).
- ja-Latn: japoński , przepisywany na alfabet łaciński w dowolnym systemie latynizacji.
- ja-Latn-hepburn: japoński , przepisywany na alfabet łaciński przy użyciu tradycyjnej metody Hepburn .
- ja-Latn-hepburn-heploc: japoński , przepisany na alfabet łaciński przy użyciu zmodyfikowanej metody Hepburn . Jednak IANA odradza jego stosowanie i zaleca zamiast tego używanie ja-Latn-alalc97.
- ncs: Nikaraguan Sign Language (również alias „sgn-NI”, zdefiniowany jako synonim, przestarzały i niezalecany).
- sr: serbski (może być zapisany alfabetem łacińskim i / lub cyrylicą , a nawet przepisany na inne „pismo”, w tym cyrylicę brajlowską i alfabet piśmienniczy w języku migowym, w formie ustnej lub transkrypcji fonetycznej).
- sr-Latn: serbski , zapisywany alfabetem łacińskim .
- sr-Latn-fonapi: serbski , zapisywany alfabetem łacińskim , w międzynarodowej transkrypcji fonetycznej.
- sr-Cyrl: serbski , zapisany cyrylicą .
- zh: język chiński dowolnego regionu lub kraju, zapisany a priori uproszczonymi sinogramami („Hans”), ponieważ ten zapis jest domyślnie wskazany w rejestrze IANA.
- yue: chiński kantoński , a priori zapisany tradycyjnymi sinogramami , ponieważ ten zapis jest domyślnie wskazany w rejestrze IANA (również alias „zh-yue”, zdefiniowany jako niezalecany synonim).
- cmn: chiński mandaryński (również aliasy „zh-cmn” i „zh-guoyu”, zdefiniowane jako niezalecane synonimy).
- zh-Latn: język chiński z dowolnego regionu lub kraju, przepisany na alfabet łaciński w dowolnym systemie latynizacji
- zh-Latn-pinyin: język chiński z dowolnego regionu lub kraju, przepisany na alfabet łaciński z systemem latynizacji pinyin .
- zh-Hant: język chiński z dowolnego regionu lub kraju, zapisywany tradycyjnymi sinogramami .
- cmn-Hant-TW: chiński mandaryński z Tajwanu , zapisywany tradycyjnymi sinogramami .
Uwagi i odniesienia
Uwagi
-
Jest to zatem w praktyce pierwiastek , a pozostałe podtagi zastępują przyrostki .
Bibliografia
-
(w) " Tagi do identyfikacji Języki " Request for Comments n o 5646,wrzesień 2009.
-
(w) " Tagi do identyfikacji Języki " Request for Comments n o 4646,Wrzesień 2006.
-
(w) " we wrześniu 2006 roku ," Prośba o komentarze n o 4647.
-
(nie) rejestru komponentów IANA znaczników językowych IETF .
-
(en) https://www.iana.org/ / - templates / hepburn .
-
(en) https://www.iana.org/ / - templates / heploc .
-
(en) https://www.ietf.org/ / - subtags- / - 20100209 .
-
(en) https://www.iana.org/ / - subtag- / - registry .
-
(en) http://www.alvestrand.no/pipermail/ietf-languages/2009-December/009822.html .
Zobacz też
Powiązane artykuły
Linki zewnętrzne