IETF 언어 태그
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
IETF 언어 태그는 1995년 처음 정의된 이후 여러 차례 개정을 거쳐 현재 RFC 5646이 표준으로 사용되고 있으며, 언어, 문자 체계, 지역, 변이형, 확장, 개인용 하위 태그를 하이픈으로 연결하여 언어 정보를 표현한다. IETF 언어 태그는 ISO 639, ISO 15924, ISO 3166, UN M.49 등의 표준을 참조하며, 확장 하위 태그를 통해 변환된 콘텐츠나 유니코드 로케일 속성과 같은 추가 정보를 포함할 수 있다.
더 읽어볼만한 페이지
- RFC - 다이제스트 인증
다이제스트 인증은 HTTP 통신에서 클라이언트와 서버 간 사용자 인증 방식으로, 클라이언트가 사용자 이름, 비밀번호, nonce 등을 해싱한 응답 값을 서버에 전송하여 인증하며, RFC 2069의 취약점을 개선한 RFC 2617과 RFC 7616으로 강화되었으나, HTTPS 기본 인증에 비해 단점이 많아 사용이 줄고 있다. - RFC - RFC 1149
RFC 1149는 조류 운반체를 이용하여 IP 데이터그램을 전송하는 규격을 다룬 문서로, IPoAC 프로토콜을 통해 IP 데이터를 두루마리에 인쇄하여 조류의 다리에 부착, 전송하는 방식을 설명한다. - 국제화와 지역화 - 언어 현지화
언어 현지화는 특정 지역의 문화, 언어, 법률 등을 고려하여 제품이나 서비스를 적응시키는 포괄적인 과정으로, 세계화 전략의 핵심 단계인 국제화 이후에 수행되며, 다양한 기술과 방법으로 이루어져 시장에서의 성공적인 출시와 성장에 필수적이다. - 국제화와 지역화 - ISO 3166
ISO 3166은 국가, 속령, 특별 지역 및 그 하위 구분에 대한 코드를 정의하는 국제 표준으로, ISO 3166-1, ISO 3166-2, ISO 3166-3으로 구성되어 있으며 ISO 3166/MA에 의해 관리 및 업데이트된다. - 고유 식별자 - MAC 주소
MAC 주소는 네트워크 장치를 식별하는 고유한 48비트 식별자로, IEEE 802 MAC 주소로 알려져 있으며, 최근 스푸핑 악용 및 개인 정보 보호를 위한 랜덤화 기술이 논의되고 있다. - 고유 식별자 - 범용 상품 부호
범용 상품 부호(UPC)는 소매점에서 상품을 식별하기 위해 상품 포장에 인쇄되는 널리 사용되는 바코드의 일종으로, 12자리 숫자로 구성된 UPC-A를 포함한 다양한 변형이 존재한다.
IETF 언어 태그 | |
---|---|
일반 정보 | |
이름 | IETF 언어 태그 |
설명 | IETF (Internet Engineering Task Force)에서 정의한 언어 식별자 |
목적 | |
용도 | 컴퓨터 프로그램에서 텍스트나 다른 내용의 언어를 식별 HTTP의 `Accept-Language` 헤더 필드 HTML의 `lang` 속성 XML의 `xml:lang` 속성 PNG의 텍스트 청크 |
관련 RFC | RFC 5646: 언어 태그 구조 정의 RFC 4647: 언어 태그 매칭 정의 RFC 7231: HTTP에서 언어 태그 사용 규정 |
구조 | |
기본 구조 | language[-script][-region][-variant]*[-extension]*[-privateuse] |
언어 | 필수. ISO 639에 정의된 언어 코드 (예: `en` (영어), `ko` (한국어)) |
스크립트 | 선택 사항. ISO 15924에 정의된 문자 집합 (예: `Latn` (라틴 문자), `Hang` (한글)) |
지역 | 선택 사항. ISO 3166-1 alpha-2에 정의된 국가 코드 또는 UN M.49에 정의된 지역 코드 (예: `US` (미국), `029` (카리브 해)) |
변형 | 선택 사항. 언어의 특정 방언이나 변형을 나타냄 |
확장 | 선택 사항. 단일 문자 접두사 뒤에 오는 하위 태그 (예: `u` (Unicode), `x` (비공개 사용)) |
비공개 사용 | 선택 사항. `x-`로 시작하는 하위 태그로, 특정 당사자 간의 비공개 합의에 따라 사용 |
예시 | |
영어 | `en` |
스페인어 (라틴 아메리카) | `es-419` |
로만슈어 (수르실바 방언) | `rm-sursilv` |
세르비아어 (키릴 문자) | `sr-Cyrl` |
민난어 (중국어 번체, 대만) | `nan-Hant-TW` |
광둥어 (중국어 번체, 홍콩) | `yue-Hant-HK` |
스위스 독일어 (Unicode 확장, 추가 지역 정보) | `gsw-u-sd-chzh` |
추가 정보 | |
IANA 레지스트리 | 언어 하위 태그 레지스트리 언어 태그 확장 레지스트리 |
2. 역사
IETF 언어 태그는 1995년 5월에 발행된 RFC 1766에서 처음으로 정의되었다. 이후 2001년 1월에 RFC 3066으로 대체되었는데, ISO 639-2 코드가 추가되고(이전에는 ISO 639-1 코드만이 허용) 처음으로 하위 태그에 숫자를 사용하는 것이 허용되었다.
2006년 9월에는 RFC 4646(사양의 주요 부분)과 RFC 4647(매칭의 태도에 대해서)이 발행되었다. RFC 4646은 언어 태그에 구조화된 서식을 도입하고, 이전부터 사용되던 ISO 639(part 1과 2)와 ISO 3166에 더해서 ISO 15924와 UN M.49를 이용하였으며, 하위 태그의 레지스트리를 오래된 것에서 새로운 것으로 바꾸었다. 또한 이 이전에 정의되어 있던 태그 중 새로운 구조에 적합하지 않은 것에 대해서는 RFC 3066과의 호환성을 유지하기 위해서 계승되었다.
현재 IETF 워킹 그룹은 ISO 639-3을 언어 하위 태그 레지스트리에 포함시키는 것을 주요 목표로 하는 다음 버전의 사양을 준비하고 있으며, 승인 절차가 진행 중이다.[32]
2. 1. 초기 정의 및 발전 (RFC 1766, RFC 3066)
1995년 3월, Harald Tveit Alvestrand가 편집한 [http://tools.ietf.org/html/rfc1766 RFC 1766]에서 IETF 언어 태그가 처음 정의되었다. 이 태그는 ISO 639-1의 두 글자 언어 코드와 ISO 3166의 두 글자 국가 코드를 기반으로 했으며, 3~8자의 변형 또는 스크립트 하위 태그를 포함하는 전체 태그의 등록을 허용했다.[32]2001년 1월, [http://tools.ietf.org/html/rfc3066 RFC 3066]으로 업데이트되면서 ISO 639-2의 세 글자 언어 코드를 추가하고, 숫자 하위 태그 사용을 허용했다. 또한, HTTP/1.1에서 언어 태그의 일치를 돕기 위한 언어 범위 개념을 채택했다.[32]
2. 2. 구조화된 형식 도입 (RFC 4646, RFC 4647)
2006년 9월, RFC 4646 및 RFC 4647이 발표되면서 언어 태그의 구조가 더욱 정교해졌다. ISO 15924 (문자 체계 코드) 및 UN M.49 (지역 코드)가 추가되어 언어 태그의 표현 범위가 확장되었다. 이전 태그 레지스트리가 새로운 하위 태그 레지스트리로 대체되었으며, 이전 버전과의 호환성을 위해 일부 예외 조항이 마련되었다.[32]2. 3. ISO 639-3 통합 및 현재 표준 (RFC 5646)
2009년 9월에 발행된 현재 표준인 RFC 5646[10]은 ISO 639-3 및 639-5의 세 글자 코드를 언어 하위 태그 레지스트리에 통합하여 ISO 639와 BCP 47 간의 상호 운용성을 높였다.[11] BCP 47 (Best Current Practice 47)은 RFC 5646과 관련 RFC 문서들을 포함하는 IETF 언어 태그의 최신 표준을 나타낸다.3. 서식
IETF 언어 태그는 하이픈('-')으로 구분된 하나 이상의 '하위 태그(subtag)'로 구성되며, 각 하위 태그는 기본 라틴 문자 또는 숫자로만 구성된다.[31] 하위 태그는 대소문자를 구별하지 않지만, 지역 하위 태그는 모두 대문자, 문자 체계 하위 태그는 머리글자만 대문자, 그 외 모든 하위 태그는 소문자로 작성하는 것이 권장된다.
일반적으로 언어 태그는 언어 하위 태그만 사용하거나, 언어 하위 태그와 지역 하위 태그를 함께 사용한다. 예를 들어, `en`은 영어를 나타내며, `en-CA`는 캐나다 영어를 나타낸다. 언어 태그에 구별되는 정보를 추가하지 않는 경우, 스크립트 및 지역 하위 태그는 생략하는 것이 좋다. 예를 들어, 스페인어는 라틴 문자로 쓰이는 것이 일반적이므로 ''es-Latn''보다 ''es''가 더 선호된다.
3. 1. 하위 태그의 종류 및 순서
IETF 언어 태그는 하이픈(-)으로 구분된 하나 이상의 "하위 태그(subtag)"로 구성된다. 일반적으로 하위 태그는 다음 순서로 작성된다.[31]- language|언어영어
- script|문자 체계영어
- region|지역영어
- variant|변이형영어
- extension|확장영어
- private use|개인용영어
따라서 형식은 대략 다음과 같다. (이 중 language|언어영어 태그만 필수)
```
언어-문자 체계-지역-변이형-확장-개인용
```
각 하위 태그는 다음 표준에서 파생된다.[31]
- language|언어영어: ISO 639-1, ISO 639-2, ISO 639-3, ISO 639-5
- script|문자 체계영어: ISO 15924
- region|지역영어: ISO 3166-1 alpha-2, UN M.49
- variant|변이형영어: (독자적인 것이므로 파생 원본 표준 없음)
- extension|확장영어: (미래 확장을 위한 예약 영역이므로 파생 원본 표준 없음)
- privateuse|개인용영어: (사적 이용 부분이므로 파생 원본 표준 없음)
IANA에서 관리하는 [https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry 언어 하위 태그 레지스트리(Language Subtag Registry)]에는 현재 공개되어 있는 유효한 하위 태그 목록이 있다.
하위 태그에서는 알파벳의 대소문자를 구분하지 않지만, 사양에서는 언어 하위 태그 레지스트리와 동일한 방법으로, 즉, region|지역영어 하위 태그에 대해서는 모두 대문자로, script|문자 체계영어 하위 태그에 대해서는 머리글자만 대문자로, 그 외 모든 하위 태그에 대해서는 소문자로 표기하도록 권장하고 있다.
언어 태그의 사용법으로 자주 보이는 스타일은 단순히 language|언어영어 하위 태그만 사용하거나, language|언어영어 하위 태그와 region|지역영어 하위 태그를 사용하는 방법이다. 예를 들어, `en`은 단일 language|언어영어 하위 태그(ISO 639-1에서)로 구성되어 영어를 나타낸다. 한편, `en-CA`는 language|언어영어 하위 태그 다음에 region|지역영어 하위 태그 `CA`(ISO 3166-1에서)를 붙여서 구성되며, 캐나다 영어를 나타낸다.
3. 2. 하위 태그 표기 규칙
하위 태그는 대소문자 구분을 하지 않지만, 규약에서는 region|지역영어 하위 태그는 모두 대문자, script|문자 체계영어 하위 태그는 머리글자만 대문자, 그 외의 모든 하위 태그는 소문자로 작성하는 것을 권장하고 있다.[31] 이 대소문자 사용은 기본 ISO 표준의 권장 사항을 따른다.4. 언어 태그의 예시
BCP 47은 IETF 언어 태그의 표준이다. 다음은 BCP 47에서 제시하는 언어 태그의 예시이다.[33][26]
- 언어 하위 태그만 사용하는 경우:
- 독일어|독일어de
- 日本語|일본어일본어
- 언어-문자(language-script) 하위 태그:
- 언어-지역(language-region) 하위 태그:
- 언어-변형(language-variant) 하위 태그:
- 언어-지역-변형(language-region-variant) 하위 태그:
- 언어-문자-지역-변형(language-script-region-variant) 하위 태그:
- (권장되지 않음)
4. 1. 일반적인 언어 태그
IETF 언어 태그는 BCP47 표준을 따르며, 다양한 형태로 사용된다[33].[26]- 언어 하위 태그만 사용하는 경우:
- 독일어|독일어de
- 日本語|일본어일본어
- 언어-문자(language-script) 하위 태그:
- 언어-문자-지역(language-script-region) 하위 태그:
- 언어-변형(language-variant) 하위 태그:
- 언어-지역-변형(language-region-variant) 하위 태그:
- 언어-문자-지역-변형(language-script-region-variant) 하위 태그:
- (권장되지 않음)
- 언어-지역(language-region) 하위 태그:
다음은 일반적으로 사용되는 언어의 IETF 하위 태그를 나타낸 표이다[12].
영어 이름 | 원어 이름 | 하위 태그 |
---|---|---|
아프리칸스어 | Afrikaans|Afrikaansaf | af |
암하라어 | አማርኛ|암하라어am | am |
아랍어 | العربية|아랍어ar | ar |
마푸둥군어 | Mapudungun|마푸둥군어arn | arn |
모로코 아랍어 | الدارجة المغربية|모로코 아랍어ary | ary |
아삼어 | অসমীয়া|아삼어as | as |
아제르바이잔어 | Azərbaycan|아제르바이잔어az | az |
바시키르어 | Башҡорт|바시키르어ba | ba |
벨라루스어 | беларуская|벨라루스어be | be |
불가리아어 | български|불가리아어bg | bg |
벵골어 | বাংলা|벵골어bn | bn |
티베트어 | བོད་ཡིག|티베트어bo | bo |
브르타뉴어 | brezhoneg|브르타뉴어br | br |
보스니아어 | bosanski|보스니아어bs/ | bs |
카탈루냐어 | català|카탈루냐어ca | ca |
중앙 쿠르드어 | کوردیی ناوەندی|쿠르드어ckb | ckb |
코르시카어 | Corsu|코르시카어co | co |
체코어 | čeština|체코어cs | cs |
웨일스어 | Cymraeg|웨일스어cy | cy |
덴마크어 | dansk|덴마크어da | da |
독일어 | Deutsch|독일어de | de |
저지 소르브어 | dolnoserbšćina|저지 소르브어dsb | dsb |
디베히어 | ދިވެހިބަސް|디베히어디베히어 | dv |
그리스어 | Ελληνικά|그리스어el | el |
영어 | English | en |
스페인어 | español|스페인어es | es |
에스토니아어 | eesti|에스토니아어et | et |
바스크어 | euskara|바스크어eu | eu |
페르시아어 | فارسى|페르시아어fa | fa |
핀란드어 | suomi|핀란드어fi | fi |
필리피노어 | Filipino|필리핀어fil | fil |
페로어 | føroyskt|페로어fo | fo |
프랑스어 | français|프랑스어프랑스어 | fr |
프리지아어 | Frysk|프리지아어fy | fy |
아일랜드어 | Gaeilge|아일랜드어ga | ga |
스코틀랜드 게일어 | Gàidhlig|스코틀랜드 게일어gd | gd |
길버트어 | Taetae ni Kiribati | gil |
갈리시아어 | galego|갈리시아어gl | gl |
스위스 독일어 | Schweizerdeutsch|스위스 독일어gsw | gsw |
구자라트어 | ગુજરાતી|구자라트어gu | gu |
하우사어 | Hausa|하우사어ha | ha |
히브리어 | עברית|히브리어he | he |
힌디어 | हिंदी|힌디어hi | hi |
크로아티아어 | hrvatski|크로아티아어hr | hr |
세르보크로아티아어 | srpskohrvatski|세르보크로아티아어sh | hrv |
상 소르브어 | hornjoserbšćina|상 소르브어hsb | hsb |
헝가리어 | magyar|헝가리어hu | hu |
아르메니아어 | Հայերեն|아르메니아어hy | hy |
인도네시아어 | Bahasa Indonesia|인도네시아어id | id |
이그보어 | Igbo|이그보어ig | ig |
이족어 | ꆈꌠꁱꂷ|이족어ii | ii |
아이슬란드어 | íslenska|아이슬란드어is | is |
이탈리아어 | italiano|이탈리아어it | it |
이누이트어 | Inuktitut|이누이트어iu ᐃᓄᒃᑎᑐᑦ|이누이트어iu (ᑲᓇᑕ|캐나다iu) | iu |
일본어 | 日本語|일본어일본어 | ja |
조지아어 | ქართული|조지아어ka | ka |
카자흐어 | Қазақша|카자흐어kk | kk |
그린란드어 | kalaallisut|그린란드어kl | kl |
크메르어 | ខ្មែរ|크메르어km | km |
칸나다어 | ಕನ್ನಡ|칸나다어kn | kn |
한국어 | 한국어|한국어한국어 | ko |
콘칸어 | कोंकणी|콘칸어kok | kok |
쿠르드어 | / | ku |
키르기스어 | Кыргыз|키르기스어ky | ky |
룩셈부르크어 | Lëtzebuergesch|룩셈부르크어lb | lb |
라오어 | ລາວ|라오어lo | lo |
리투아니아어 | lietuvių|리투아니아어lt | lt |
라트비아어 | latviešu|라트비아어lv | lv |
마오리어 | Reo Māori|마오리어mi | mi |
마케도니아어 | македонски јазик|마케도니아어mk | mk |
말라얄람어 | മലയാളം|말라얄람어ml | ml |
몽골어 | Монгол хэл|몽골어mn | mn |
모호크어 | Kanien'kéha|모호크어moh | moh |
마라티어 | मराठी|마라티어mr | mr |
말레이어 | Bahasa Malaysia|말레이어ms | ms |
몰타어 | Malti|몰타어몰타어 | mt |
미얀마어 | မြန်မာဘာသာ|미얀마어my | my |
노르웨이어(부크몰) | norsk (bokmål)|노르웨이어(부크몰)nb | nb |
네팔어 | नेपाली (नेपाल)|네팔어ne | ne |
네덜란드어 | Nederlands|네덜란드어nl | nl |
노르웨이어(뉘노르스크) | norsk (nynorsk)|노르웨이어(뉘노르스크)nn | nn |
노르웨이어 | norsk|노르웨이어no | no |
오크어 | occitan|오크어oc | oc |
오리야어 | ଓଡ଼ିଆ|오리야어or | or |
파피아멘토어 | Papiamentu|파피아멘토어pap | pap |
펀자브어 | ਪੰਜਾਬੀ|펀자브어pa / پنجابی|펀자브어pnb | pa |
폴란드어 | polski|폴란드어pl | pl |
다리어 | درى|다리어prs | prs |
파슈토어 | پښتو|파슈토어ps | ps |
포르투갈어 | português|포르투갈어pt | pt |
키체어 | K'iche|키체어quc | quc |
케추아어 | runasimi|케추아어qu | qu |
로만슈어 | Rumantsch|로만슈어rm | rm |
루마니아어 | română|루마니아어ro | ro |
러시아어 | русский|러시아어ru | ru |
키냐르완다어 | Kinyarwanda|키냐르완다어rw | rw |
산스크리트어 | संस्कृत|산스크리트어sa | sa |
사하어 | саха|사하어sah | sah |
사미어(북부) | davvisámegiella|북부 사미어se | se |
신할라어 | සිංහල|신할라어si | si |
슬로바키아어 | slovenčina|슬로바키아어sk | sk |
슬로베니아어 | slovenski|슬로베니아어sl | sl |
사미어(남부) | åarjelsaemiengiele|남부 사미어sma | sma |
사미어(룰레) | julevusámegiella|룰레 사미어smj | smj |
사미어(이나리) | sämikielâ|이나리 사미어smn | smn |
사미어(콜트) | sääʹmǩiõll|콜트 사미어sms | sms |
알바니아어 | shqip|알바니아어sq | sq |
세르비아어 | srpski|세르비아어sr/српски|세르비아어sr | sr |
세소토어 | Sesotho|세소토어st | st |
스웨덴어 | svenska|스웨덴어sv | sv |
스와힐리어 | Kiswahili|스와힐리어sw | sw |
시리아어 | ܣܘܪܝܝܐ|시리아어syc | syc |
타밀어 | தமிழ்|타밀어ta | ta |
텔루구어 | తెలుగు|텔루구어te | te |
타지크어 | Тоҷикӣ|타지크어tg | tg |
태국어 | ไทย|태국어th | th |
투르크멘어 | türkmençe|투르크멘어tk | tk |
츠와나어 | Setswana|츠와나어tn | tn |
튀르키예어 | Türkçe|튀르키예어tr | tr |
타타르어 | Татарча|타타르어tt | tt |
타마지트어 | Tamazight|타마지트어tzm | tzm |
위구르어 | ئۇيغۇرچە|위구르어ug | ug |
우크라이나어 | українська|우크라이나어uk | uk |
우르두어 | اُردو|우르두어ur | ur |
우즈베크어 | Uzbek|우즈베크어uz/Ўзбек|우즈베크어uz | uz |
베트남어 | Tiếng Việt|베트남어vi | vi |
왈로프어 | Wolof|왈로프어wo | wo |
코사어 | isiXhosa|코사어xh | xh |
요루바어 | Yoruba|요루바어yo | yo |
중국어 | zh | |
줄루어 | isiZulu|줄루어zu | zu |
이 표는 전체 언어 하위 태그의 일부(약 2%)만 나타내며, 전체 정보는 언어 하위 태그 레지스트리를 직접 참조해야 한다.
4. 2. 복잡한 언어 태그
다음은 BCP47에서 발췌한 내용이다.[33][26]- language영어 하위 태그만:
- de|독일어영어
- ja|일본어영어
- i-enochian|grandfathered 태그의 예영어
- language영어-script영어:
- zh-Hant|중국어 (번체자)영어
- zh-Hans|중국어 (간체자)영어
- sr-Cyrl|세르비아어 (키릴 문자)영어
- sr-Latn|세르비아어 (라틴 문자)영어
- language영어-script영어-region영어:
- zh-Hans-CN|중국 대륙에서 사용되는 중국어 (간체자)영어
- sr-Latn-CS|세르비아 몬테네그로에서 사용되는 세르비아어 (라틴 문자)영어
- language영어-variant영어:
- sl-nedis|슬로베니아어 Nadiza 방언영어
- language영어-region영어-variant영어:
- de-CH-1901|스위스에서 사용되는 독일어, 1901년 맞춤법에 사용된 독일어영어
- sl-IT-nedis|이탈리아에서 사용되는 슬로베니아 Nadiza 방언영어
- language영어-script영어-region영어-variant영어:
- sl-Latn-IT-nedis|이탈리아에서 사용되는 슬로베니아어 (라틴문자) Nadiza 방언. 주: `sl`은 암묵한 가운데 `Latn`를 포함하고 있지만 이 태그는 권종하지 않는다영어
- language영어-region영어:
- en-US|영어 (미국)영어
- es-419|스페인어 (라틴 아메리카), UN 지역 코드 이용영어
5. 다른 표준과의 관계
IETF 언어 태그는 ISO나 UN의 표준을 일부 따르지만, 완전히 종속되지는 않는다. 시간이 지나면서 언어 태그의 의미가 변할 수 있기 때문이다.
ISO 639, ISO 15924, ISO 3166, UN M49에서 코드가 삭제되더라도, 이미 할당된 IETF 언어 하위 태그는 유효하게 유지된다. 심지어 해당 표준에서 코드가 다른 의미로 재사용되더라도, IETF 언어 하위 태그는 원래 의미를 유지한다. 이러한 안정성은 RFC 4646에서 도입되었다.
5. 1. ISO 639
ISO 639는 언어 코드에 대한 국제 표준이다. BCP 47은 ISO 639-1 (2자 코드), ISO 639-2 (3자 코드), ISO 639-3 (3자 코드), 그리고 ISO 639-5 (언어 집합 코드)를 사용한다.RFC 5645와 RFC 5646은 이미 레지스트리에 존재하지 않는 모든 언어에 대해 ISO 639-3 코드에 해당하는 기본 언어 하위 태그를 추가하였다. 또한, 특정 매크로 언어에 포함된 언어에 대한 코드는 확장 언어 하위 태그로 등록되었다.
ISO 639-5는 ISO 639-2에서 처음 인코딩된 방식과 다른 방식으로 알파-3 코드를 사용하여 언어 컬렉션을 정의한다. 특히, 언어 컬렉션은 이제 모두 ISO 639-5에서 배타적이지 않고 포괄적으로 정의된다.
BCP 47은 언어 컬렉션에 대한 하위 태그를 식별하기 위해 "범위" 속성을 정의한다. 그러나 어떤 컬렉션도 포괄적 또는 배타적으로 정의하지 않으며, ISO 639-5 그룹화 유형 속성을 사용하지 않는다.
반대로, ISO 639-3과 언어 하위 태그 레지스트리 모두에서 개별 언어의 매크로 언어 내 분류가 표준화되어 있다.
5. 2. ISO 15924
ISO 15924는 문자 체계 코드에 대한 국제 표준이다. BCP 47은 ISO 15924의 4자 코드를 문자 체계 하위 태그로 사용한다.[1]문자 체계 하위 태그는 RFC 4646이 발표되었을 때 처음 언어 하위 태그 레지스트리에 추가되었으며, 이는 ISO 15924에 정의된 코드 목록에서 가져온 것이다. 문자 체계 하위 태그는 기본 및 확장 언어 하위 태그 뒤에, 그리고 지역 및 변형 하위 태그를 포함한 다른 유형의 하위 태그 앞에 언어 태그에 인코딩된다.[1]
일부 기본 언어 하위 태그는 "Suppress-Script"라는 속성으로 정의되어 있는데, 이는 다른 스크립트로 작성될 수 있더라도 일반적으로 해당 언어에 대해 단일 스크립트가 기본적으로 가정될 수 있는 경우를 나타낸다. 이 경우, 성공적인 일치 가능성을 높이기 위해 스크립트 하위 태그를 생략하는 것이 좋다. 필요한 경우 다른 스크립트 하위 태그를 추가하여 구별할 수 있다. 예를 들어, 이디시어의 경우 히브리 문자 하위 태그가 가정되므로 대부분의 상황에서 ''yi-Hebr''보다 ''yi''가 선호된다.[1]
ISO 15924에는 유니코드 및 ISO/IEC 10646 내에서 통합된 스크립트 변형에 대한 일부 코드(예: 중국어 간체 및 번체에 대한 ''Hans'' 및 ''Hant'')가 포함되어 있다. 이러한 스크립트 변형은 주로 서지 목적으로 인코딩되지만 언어학적 관점에서는 항상 중요하지는 않다(예: 유니코드 및 ISO/IEC 10646에서 일반 라틴 문자로 주로 인코딩되는 라틴 스크립트의 프락투어 및 게일 변형에 대한 ''Latf'' 및 ''Latg'' 스크립트 코드). 때때로 언어 태그에서 문자의 다른 분석, 발음 구별 기호 및 이중/삼중 자음 클러스터(digraphs/trigraphs) 또는 대소문자 규칙의 차이와 함께, 철자법 또는 의미론적 차이를 드러내는 데 유용할 수 있다.[1]
5. 3. ISO 3166
ISO 3166-1에서 할당되거나 "예외적으로 예약된" 코드에 기반한 두 글자 지역 하위 태그가 사용된다.[1] ISO 3166 유지 관리 기관이 이전에 다른 국가에 할당되었던 코드를 재할당하는 경우, 해당 코드에 해당하는 기존 BCP 47 하위 태그는 그 의미를 유지하고, 새로운 국가에 대한 UN M.49를 기반으로 하는 새로운 지역 하위 태그가 등록된다.[1] UN M.49는 남아메리카의 `005`와 같은 지리적 지역에 대한 숫자 지역 하위 태그의 소스이기도 하다.[1] 경제 지역에 대한 UN M.49 코드는 허용되지 않는다.[1]지역 하위 태그는 특정 지역에서 사용되는 언어의 변형을 지정하는 데 사용된다.[1] 이는 변형이 본질적으로 지역적이며, 영국 영어 (''en-GB'')와 미국 영어 (''en-US'')를 구별하는 경우와 같이 관련된 국가를 식별하여 적절하게 포착할 수 있을 때 적합하다.[1] 차이점이 간체와 번체와 같은 스크립트 또는 스크립트 변형인 경우, 지역 하위 태그 대신 스크립트 하위 태그로 표현해야 한다.[1] 이 예에서 ''zh-CN/zh-SG/zh-MY'' 및 ''zh-TW/zh-HK/zh-MO'' 대신 ''zh-Hans'' 및 ''zh-Hant''를 사용해야 한다.[1]
지역적 변형으로 간주될 수 있는 언어에 대해 별도의 언어 하위 태그가 존재하는 경우, 언어-지역 조합 대신 더 구체적인 하위 태그를 사용하는 것이 더 좋다.[1] 예를 들어, ''ar-DZ'' (아랍어 알제리)는 알제리 구어 아랍어의 ''arq''로 더 잘 표현될 수 있다.[1]
5. 4. UN M.49
UN에서 사용하는 통계용 지역 코드이다. BCP 47은 UN M.49의 3자리 숫자 코드를 지역 하위 태그로 사용한다.[1] 경제 지역에 대한 UN M.49 코드는 허용되지 않는다.[1]UN M.49는 남아메리카의 `005`와 같은 지리적 지역에 대한 숫자 지역 하위 태그의 소스이기도 하다.[1]
6. 확장
확장 하위 태그('확장된 언어 하위 태그'와 혼동하지 않도록 주의)는 언어 식별에 필수적인 것은 아니지만, 언어 태그에 추가 정보를 제공한다. 확장의 한 가지 용도는 달력, 통화 등 로케일 정보를 담는 것이다.
확장 하위 태그는 '싱글톤'이라는 단일 문자(x 제외)로 시작해 하이픈으로 구분된 여러 문자열로 구성된다. 각 확장은 해당 확장의 데이터를 관리하는 등록 기관을 나타내는 자체 IETF RFC 문서에 설명되어 있다. IANA가 싱글톤 할당을 담당한다.
2014년 1월 기준으로 두 가지 확장이 할당되었다.
6. 1. 확장 T (Transformed Content)
확장 T는 언어 태그에 태그된 데이터가 음역, 전사 등 어떤 방식으로 변환되었는지에 대한 정보를 추가할 수 있게 한다. 예를 들어, 'en-t-jp' 태그는 일본어에서 영어로 번역된 콘텐츠를 나타낸다. 번역이 기계적으로 수행되었는지, 아니면 공개된 표준에 따라 수행되었는지를 나타내는 추가 하위 문자열이 사용될 수 있다.[18]확장 T는 2012년 2월에 발행된 정보 RFC 6497에 설명되어 있다.[18] 등록 기관은 유니코드 컨소시엄이다.
6. 2. 확장 U (Unicode Locale)
RFC 6067에 정의되어 있으며, 공통 로케일 데이터 저장소(CLDR)의 로케일 속성을 포함한다.[19] 국가, 달력, 시간대, 정렬 순서, 통화, 숫자 체계 등 다양한 정보를 포함할 수 있다.몇 가지 예시는 다음과 같다.
- gsw-u-sd-chzh|취리히 주에서 사용되는 스위스 독일어gsw
- ar-u-nu-latn|아랍 숫자(기본 라틴 숫자, 0에서 9까지) 대신 동부 아랍 숫자(٠에서 ٩까지)를 사용하는 아랍어 콘텐츠ar
- he-IL-u-ca-hebrew-tz-jeruslm|이스라엘에서 사용되는 히브리어로, 전통적인 히브리력을 사용하고 tz 데이터베이스에서 식별된 "Asia/Jerusalem" 시간대를 사용he
예를 들어, `ko-KR-u-ca-gregory`는 대한민국에서 사용되는 한국어로, 그레고리력을 사용함을 나타낸다.
참조
[1]
웹사이트
Information on BCP 47 » RFC Editor
https://tools.ietf.o[...]
2009-09
[2]
웹사이트
Language Subtag Registry
https://www.iana.org[...]
Internet Assigned Numbers Authority
2018-12-05
[3]
웹사이트
Language Tag Extensions Registry
https://www.iana.org[...]
Internet Assigned Numbers Authority
2018-12-06
[4]
웹사이트
IANA — Protocol Registries
https://www.iana.org[...]
2015-07-28
[5]
IETF
Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
2014-06
[6]
웹사이트
Language information and text direction
http://www.w3.org/TR[...]
2015-07-28
[7]
웹사이트
Extensible Markup Language (XML) 1.0 (Fifth Edition)
http://www.w3.org/TR[...]
2015-07-28
[8]
웹사이트
Portable Network Graphics (PNG) Specification (Second Edition)
http://www.w3.org/TR[...]
2015-07-28
[9]
웹사이트
RFC 4647 - Matching of Language Tags
https://datatracker.[...]
2006-09
[10]
웹사이트
RFC 5646 - Tags for Identifying Languages
https://datatracker.[...]
2009-09
[11]
웹사이트
Language Tag Registry Update charter
http://www.ietf.org/[...]
[12]
웹사이트
Letter Codes of Cultures - List
https://www.venea.ne[...]
2022-01-08
[13]
웹사이트
Tags for Identifying Languages (old draft for the revision of RFC 4646, now obsolete and may disappear soon)
http://tools.ietf.or[...]
IETF WG LTRU
2008-06-23
[14]
웹사이트
Update to the Language Subtag Registry (old draft for the revision of RFC 4645, now obsolete and may disappear soon)
http://tools.ietf.or[...]
IETF WG LTRU
2008-06-23
[15]
웹사이트
GetGeoInfoA function (winnls.h) - Win32 apps
https://learn.micros[...]
[16]
웹사이트
ISO 639-2 Language Code List - Codes for the representation of names of languages (Library of Congress)
https://www.loc.gov/[...]
2015-07-28
[17]
웹사이트
Re: [Ietf-languages] Punjabi language code fix recommendations
https://mailarchive.[...]
2022-08-12
[18]
IETF
BCP 47 Extension T - Transformed Content
https://www.rfc-edit[...]
RFC Editor
2022-06-24
[19]
IETF
BCP 47 Extension U
https://www.rfc-edit[...]
RFC Editor
2022-06-24
[20]
웹사이트
RFC 7231: Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content, section 3.1.3.1. Language Tags
https://datatracker.[...]
[21]
웹사이트
HTML Living Standard, section 3.2.6.2 The lang and xml:lang attributes
https://html.spec.wh[...]
[22]
웹사이트
Extensible Markup Language (XML) 1.0 (Fifth Edition), section 2.12
https://www.w3.org/T[...]
[23]
웹사이트
Portable Network Graphics (PNG) Specification (Second Edition), section 11.3.4.5
http://www.w3.org/TR[...]
[24]
웹사이트
RFC 5646, section 2.2.1
https://datatracker.[...]
[25]
웹사이트
Language Tag Registry Update charter
http://www.ietf.org/[...]
[26]
웹사이트
Examples of Language Tags
http://tools.ietf.or[...]
[27]
웹사이트
RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1, section 3.10
http://tools.ietf.or[...]
[28]
웹사이트
HTML 4.01 Specification, section 8.1
http://www.w3.org/TR[...]
[29]
웹사이트
Extensible Markup Language (XML) 1.0 (Fourth Edition), section 2.12
http://www.w3.org/TR[...]
[30]
웹사이트
Portable Network Graphics (PNG) Specification (Second Edition), section 11.3.4.5
http://www.w3.org/TR[...]
[31]
웹사이트
RFC 5646, section 2.2.1
http://tools.ietf.or[...]
[32]
웹인용
Language Tag Registry Update charter
http://www.ietf.org/[...]
2007-04-23
[33]
웹사이트
Examples of Language Tags
http://tools.ietf.or[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com