ISO 639 macrolanguage
A macrolanguage is a book-keeping mechanism for the ISO 639 international standard for language codes. Macrolanguages are established to assist mapping between different sets of ISO language codes. Specifically, there may be a many-to-one correspondence between ISO 639-3, intended to identify all the thousands of languages of the world, and either of two other sets, ISO 639-1, established to identify languages in computer systems, and ISO 639-2, which encodes a few hundred languages for library cataloguing and bibliographic purposes. When such many-to-one ISO 639-2 codes are included in an ISO 639-3 context, they are called "macrolanguages" to distinguish them from the corresponding individual languages of ISO 639-3. According to the ISO,
ISO 639-3 is curated by SIL International, ISO 639-2 is curated by the Library of Congress.
The mapping often has the implication that it covers borderline cases where two language varieties may be considered strongly divergent dialects of the same language or very closely related languages ; it may also encompass situations when there are language varieties that are considered to be varieties of the same language on the grounds of ethnic, cultural, and political considerations, rather than linguistic reasons. However, this is not its primary function and the classification is not evenly applied.
For example, Chinese is a macrolanguage encompassing many languages that are not mutually intelligible, but the languages "Standard German", "Bavarian German", and other closely related languages do not form a macrolanguage, despite being more mutually intelligible. Other examples include Tajiki not being part of the Persian macrolanguage despite sharing much lexicon, and Urdu and Hindi not forming a macrolanguage despite forming a mutually intelligible dialect continuum. Even all dialects of Hindi are considered as separate languages. Basically, ISO 639-2 and ISO 639-3 use different criteria for dividing language varieties into languages, 639-2 uses shared writing systems and literature more whereas 639-3 focuses on mutual intelligibility and shared lexicon. The macrolanguages exist within the ISO 639-3 code set to make mapping between the two sets easier.
The use of macrolanguages was applied in Ethnologue, starting in the 16th edition., there are fifty-eight language codes in ISO 639-2 that are counted as macrolanguages in ISO 639-3, but new macrolanguages are no longer being created, as current databases are sufficient to indicated the relationships between codes.
Some of the macrolanguages had no individual language in ISO 639-2, e.g. "ara", but ISO 639-3 recognizes different varieties of Arabic as separate languages under some circumstances. Others, like "nor" had their two individual parts already in 639-2. That means some languages that were considered by ISO 639-2 to be dialects of one language are now in ISO 639-3 in certain contexts considered to be individual languages themselves. This is an attempt to deal with varieties that may be linguistically distinct from each other, but are treated by their speakers as forms of the same language, e.g. in cases of diglossia. For example,
- Generic Arabic, 639-2
- Standard Arabic, 639-3
Types of macrolanguages
- elements that have no ISO 639-2 code: 4
- elements that have no ISO 639-1 code: 29
- elements that do have ISO 639-1 codes: 33
- elements whose individual languages have ISO 639-1 codes: 4
- *
aka
–tw
- *
hbs
–bs
,hr
,sr
- *
msa
–id
- *
nor
–nb
,nn
List of macrolanguages
ISO 639-1 | ISO 639-2 | ISO 639-3 | Number of individual languages | Name of macrolanguage |
ak | aka | 2 | Akan language | |
ar | ara | 29 + retired 1 | Arabic language | |
ay | aym | 2 | Aymara language | |
az | aze | 2 | Azerbaijani language | |
bal | 3 | Baluchi language | ||
bik | 8 + retired 1 | Bikol language | ||
5 | Bontok language | |||
bua | 3 | Buriat language | ||
chm | 2 | Mari language | ||
cr | cre | 6 | Cree language | |
del | 2 | Delaware language | ||
den | 2 | Slavey language | ||
din | 5 | Dinka language | ||
doi | 2 | Dogri language | ||
et | est | 2 | Estonian language | |
fa | fas/per | 2 | Persian language | |
ff | ful | 9 | Fulah language | |
gba | 6 + retired 1 | Gbaya language | ||
gon | 3 + retired 1 | Gondi language | ||
grb | 5 | Grebo language | ||
gn | grn | 5 | Guaraní language | |
hai | 2 | Haida language | ||
4 | Serbo-Croatian | |||
hmn | 25 + retired 1 | Hmong language | ||
iu | iku | 2 | Inuktitut language | |
ik | ipk | 2 | Inupiaq language | |
jrb | 5 | Judeo-Arabic languages | ||
kr | kau | 3 | Kanuri language | |
9 | Kalenjin languages | |||
kok | 2 | Konkani language | ||
kv | kom | 2 | Komi language | |
kg | kon | 3 | Kongo language | |
kpe | 2 | Kpelle language | ||
ku | kur | 3 | Kurdish language | |
lah | 7 + retired 1 | Lahnda language | ||
lv | lav | 2 | Latvian language | |
14 | Luyia language | |||
man | 6 + retired 1 | Manding languages | ||
mg | mlg | 11 + retired 1 | Malagasy language | |
mn | mon | 2 | Mongolian language | |
ms | msa/may | 36 + retired 1 | Malay language | |
mwr | 6 | Marwari language | ||
ne | nep | 2 | Nepali language | |
no | nor | 2 | Norwegian language | |
oj | oji | 7 | Ojibwa language | |
or | ori | 2 | Oriya language | |
om | orm | 4 | Oromo language | |
ps | pus | 3 | Pashto language | |
qu | que | 43 + retired 1 | Quechua language | |
raj | 6 | Rajasthani language | ||
rom | 7 | Romany language | ||
sq | sqi/alb | 4 | Albanian language | |
sc | srd | 4 | Sardinian language | |
sw | swa | 2 | Swahili language | |
syr | 2 | Syriac language | ||
tmh | 4 | Tuareg languages | ||
uz | uzb | 2 | Uzbek language | |
yi | yid | 2 | Yiddish language | |
zap | 57 + retired 1 | Zapotec language | ||
za | zha | 16 + retired 2 | Zhuang languages | |
zh | zho/chi | 16 | Chinese language | |
zza | 2 | Zaza language | ||
33 | 58 | 62 | 440 + retired 13 | total codes |
ISO 639-1 | ISO 639-2 | ISO 639-3 | Number of individual languages | Name of macrolanguage |
List of macrolanguages and the individual languages
This is a complete list of the individual language codes that comprise the macrolanguages in the ISO 639-3 code tables as of 2020.aaa–ezz
aka
is the ISO 639-3 language code for Akan. Its ISO 639-1 code is ak. There are two individual language codes assigned:is the ISO 639-3 language code for Arabic language. Its ISO 639-1 code is ar. There are twenty-nine individual language codes assigned:
- – Algerian Saharan Arabic
- – Tajiki Arabic
- – Baharna Arabic
- – Mesopotamian Arabic
- – Ta'izzi-Adeni Arabic
- – Hijazi Arabic
- – Omani Arabic
- – Cypriot Arabic
- – Dhofari Arabic
- – Tunisian Arabic
- – Saidi Arabic
- – Gulf Arabic
- – South Levantine Arabic
- – North Levantine Arabic
- – Sudanese Arabic
- – Standard Arabic
- – Algerian Arabic
- – Najdi Arabic
- – Moroccan Arabic
- – Egyptian Arabic
- – Uzbeki Arabic
- – Eastern Egyptian Bedawi Arabic
- – Hadrami Arabic
- – Libyan Arabic
- – Sanaani Arabic
- – North Mesopotamian Arabic
- – Sudanese Creole Arabic
- – Chadian Arabic
- – Shihhi Arabic
is the ISO 639-3 language code for Aymara. Its ISO 639-1 code is ay. There are two individual language codes assigned:
- – Central Aymara
- – Southern Aymara
aze
is the ISO 639-3 language code for Baluchi. There are three individual language codes assigned:
is the ISO 639-3 language code for Bikol. There are eight individual language codes assigned:
- – Central Bikol
- – Rinconada Bikol
- – Northern Catanduanes Bikol
- – Southern Catanduanes Bikol
- – West Albay Bikol
- – Libon Bikol
- – Miraya Bikol
- – Buhi'non Bikol
- – Albay Bicolano
bnc
is the ISO 639-3 language code for Buriat. There are three individual language codes assigned:
- – China Buriat
- – Mongolia Buriat
- – Russia Buriat
chm
- – Eastern Mari
- – Western Mari
cre
In addition, there are six closely associated individual codes:
- – Naskapi
- – Montagnais
- – Atikamekw
- – Michif language
- – Ojibwa, Severn
- – Ojibwa, Western
is the ISO 639-3 language code for Delaware. There are two individual language codes assigned:
is the ISO 639-3 language code for Slave. There are two individual language codes assigned:
- – North Slavey
- – South Slavey
din
- – Northeastern Dinka
- – Northwestern Dinka
- – South Central Dinka
- – Southeastern Dinka
- – Southwestern Dinka
doi
- – Dogri
- – Kangri
est
- – Estonian
- – Võro
faa–jzz
fas
is the ISO 639-3 language code for Persian. Its ISO 639-1 code is fa. There are two individual language codes assigned:- – Dari Persian
- – Western Persian
ful
- – Adamawa Fulfulde
- – Bagirmi Fulfulde
- – Borgu Fulfulde
- – Central-Eastern Niger Fulfulde
- – Maasina Fulfulde
- – Nigerian Fulfulde
- – Pulaar
- – Pular
- – Western Niger Fulfulde
gba
The following code was previously part of gba:
- – Southwest Gbaya
gon
The following code was previously part of gon:
- – Southern Gondi
grb
is the ISO 639-3 language code for Guarani. Its ISO 639-1 code is gn. There are five individual language codes assigned:
- – Chiripá
- – Eastern Bolivian Guaraní
- – Mbyá Guaraní
- – Paraguayan Guaraní
- – Western Bolivian Guaraní
hai
- – Northern Haida
- – Southern Haida
hbs
- – Bosnian
- – Croatian
- – Montenegrin
- – Serbian
hmn
- – Central Huishui Hmong
- – Central Mashan Hmong
- – Chuanqiandian Cluster Miao
- – Eastern Huishui Hmong
- – Eastern Qiandong Miao
- – Eastern Xiangxi Miao
- – Ge
- – Hmong Daw
- – Hmong Njua
- – Horned Miao
- – Large Flowery Miao
- – Luopohe Hmong
- – Northern Guiyang Hmong
- – Northern Huishui Hmong
- – Northern Mashan Hmong
- – Northern Qiandong Miao
- – Small Flowery Miao
- – Southern Guiyang Hmong
- – Southern Mashan Hmong
- – Southern Qiandong Miao
- – Southwestern Guiyang Hmong
- – Southwestern Huishui Hmong
- – Western Mashan Hmong
- – Hmong Shua
- – Western Xiangxi Miao
- – Hmong Njua
iku
is the ISO 639-3 language code for Inupiaq. Its ISO 639-1 code is ik. There are two individual language codes assigned:
is the ISO 639-3 language code for Judeo-Arabic. There are five individual language codes assigned:
- – Judeo-Iraqi Arabic
- – Judeo-Moroccan Arabic
- – Judeo-Tripolitanian Arabic
- – Judeo-Tunisian Arabic
- – Judeo-Yemeni Arabic
kaa–ozz
kau
is the ISO 639-2 and ISO 639-3 language code for the Kanuri. Its ISO 639-1 code is kr. There are three individual language codes assigned in ISO 639-3 for varieties of Kanuri:There are two other related languages that are not considered part of the macrolanguage under ISO 639:
- – Bilma Kanuri
- – Kanembu
kln
is the ISO 639-3 language code for Konkani. There are two individual language codes assigned:
- – Goan Konkani
- – Konkani
kom
is the ISO 639-3 language code for Komi. Its ISO 639-1 code is kv. There are two individual language codes assigned:- – Komi-Permyak
- – Komi-Zyrian
kon
- – Koongo
- – Laari
- – San Salvador Kongo
kpe
- – Guinea Kpelle
- – Liberia Kpelle
kur
is the ISO 639-3 language code for Lahnda. There are seven individual language codes assigned.
- – Jakati
- – Khetrani
- – Northern Hindko
- – Pahari-Potwari
- – Saraiki
- – Southern Hindko
- – Western Panjabi
The following code was previously part of lah:
- – Mirpur Panjabi
lav
- – Latgalian
- – Standard Latvian
luy
- – Bukusu
- – East Nyala
- – Idakho-Isukha-Tiriki
- – Kabras
- – Khayo
- – Kisa
- – Logooli
- – Marachi
- – Marama
- – Nyore
- – Saamia
- – Tachoni
- – Tsotso
- – Wanga
man
- – Eastern Maninkakan
- – Kita Maninkakan
- – Konyanka Maninka
- – Mandinka
- – Sankaran Maninka
- – Western Maninkakan
- – Forest Maninka
mlg
- – Antankarana Malagasy
- – Bara Malagasy
- – Masikoro Malagasy
- – Northern Betsimisaraka Malagasy
- – Plateau Malagasy
- – Sakalava Malagasy
- – Southern Betsimisaraka Malagasy
- – Tesaka Malagasy
- – Tandroy-Mahafaly Malagasy
- – Tanosy Malagasy
- – Tsimihety Malagasy
- – Southern Betsimisaraka Malagasy
mon
is the ISO 639-3 language code for Malay. Its ISO 639-1 code is ms. There are thirty-six individual language codes assigned:
- – Bacanese Malay
- – Bangka
- – Banjar
- – Berau Malay
- – Brunei
- – Bukit Malay
- – Central Malay
- – Cocos Islands Malay
- – Col
- – Duano
- – Haji
- – Indonesian
- – Jakun
- – Jambi Malay
- – Kaur
- – Kedah Malay
- – Kerinci
- – Kota Bangun Kutai Malay
- – Kubu
- – Loncong
- – Lubu
- – Malay
- – Manado Malay
- – Minangkabau
- – Musi
- – Negeri Sembilan Malay
- – North Moluccan Malay
- – Orang Kanaq
- – Orang Seletar
- – Pattani Malay
- – Pekal
- – Sabah Malay
- – Standard Malay
- – Temuan
- – Tenggarong Kutai Malay
- – Urak Lawoi'
- – Malay
mwr
- – Dhundari
- – Marwari
- – Marwari
- – Merwari
- – Mewari
- – Shekhawati
nep
- – Dotyali
- – Nepali
nor
is the ISO 639-3 language code for Ojibwa. Its ISO 639-1 code is oj. There are seven individual language codes assigned:
- – Chippewa
- – Northwestern Ojibwa
- – Central Ojibwa
- – Eastern Ojibwa
- – Severn Ojibwa
- – Western Ojibwa
- – Ottawa
- – Algonquin language
- – Potawatomi language
- – Michif language
- Broken Ojibwa
- Bungee language
ori
- – Odia
- – Sambalpuri
orm
- – Borana-Arsi-Guji Oromo
- – Eastern Oromo
- – Orma
- – West Central Oromo
paa–zzz
pus
is the ISO 639-3 language code for Pushto. Its ISO 639-1 code is ps. There are three individual language codes assigned:- – Central Pashto
- – Northern Pashto
- – Southern Pashto
que
- – Ambo-Pasco Quechua
- – Arequipa-La Unión Quechua
- – Ayacucho Quechua
- – Cajamarca Quechua
- – Cajatambo North Lima Quechua
- – Calderón Highland Quichua
- – Cañar Highland Quichua
- – Chachapoyas Quechua
- – Chimborazo Highland Quichua
- – Chincha Quechua
- – Chiquián Ancash Quechua
- – Classical Quechua
- – Corongo Ancash Quechua
- – Cusco Quechua
- – Eastern Apurímac Quechua
- – Huallaga Huánuco Quechua
- – Huamalíes-Dos de Mayo Huánuco Quechua
- – Huaylas Ancash Quechua
- – Huaylla Wanca Quechua
- – Imbabura Highland Quichua
- – Jauja Wanca Quechua
- – Lambayeque Quechua
- – Loja Highland Quichua
- – Margos-Yarowilca-Lauricocha Quechua
- – Napo Lowland Quechua
- – North Bolivian Quechua
- – North Junín Quechua
- – Northern Conchucos Ancash Quechua
- – Northern Pastaza Quichua
- – Pacaraos Quechua
- – Panao Huánuco Quechua
- – Puno Quechua
- – Salasaca Highland Quichua
- – San Martín Quechua
- – Santa Ana de Tusi Pasco Quechua
- – Santiago del Estero Quichua
- – Sihuas Ancash Quechua
- – South Bolivian Quechua
- – Southern Conchucos Ancash Quechua
- – Southern Pastaza Quechua
- – Tena Lowland Quichua
- – Yanahuanca Pasco Quechua
- – Yauyos Quechua
- – Chilean Quechua
raj
is the ISO 639-3 language code for Romany. There are seven individual language codes assigned:
- – Balkan Romani
- – Baltic Romani
- – Carpathian Romani
- – Kalo Finnish Romani
- – Sinte Romani
- – Vlax Romani
- – Welsh Romani
- – Romano-Greek
- – Traveller Danish
- – Angloromani
- – Traveller Norwegian
- – Lomavren
- – Caló
- – Tavringer Romani
- – Romano-Serbian
- Erromintxela
sqi
is the ISO 639-3 language code for Sardinian. Its ISO 639-1 code is sc. There are four individual language codes assigned:
is the ISO 639-3 language code for Swahili. Its ISO 639-1 code is sw. There are two individual language codes assigned:
- – Congo Swahili
- – Swahili
syr
is the ISO 639-3 language code for Tamashek. There are four individual language codes assigned:
is the ISO 639-3 language code for Uzbek. Its ISO 639-1 code is uz. There are two individual language codes assigned:
- – Northern Uzbek
- – Southern Uzbek
yid
- – Eastern Yiddish
- – Western Yiddish
zap
- – Aloápam Zapotec
- – Amatlán Zapotec
- – Asunción Mixtepec Zapotec
- – Ayoquesco Zapotec
- – Cajonos Zapotec
- – Chichicapan Zapotec
- – Choapan Zapotec
- – Coatecas Altas Zapotec
- – Coatlán Zapotec
- – El Alto Zapotec
- – Elotepec Zapotec
- – Guevea De Humboldt Zapotec
- – Güilá Zapotec
- – Isthmus Zapotec
- – Lachiguiri Zapotec
- – Lachixío Zapotec
- – Lapaguía-Guivini Zapotec
- – Loxicha Zapotec
- – Mazaltepec Zapotec
- – Miahuatlán Zapotec
- – Mitla Zapotec
- – Mixtepec Zapotec
- – Ocotlán Zapotec
- – Ozolotepec Zapotec
- – Petapa Zapotec
- – Quiavicuzas Zapotec
- – Quioquitani-Quierí Zapotec
- – Rincón Zapotec
- – San Agustín Mixtepec Zapotec
- – San Baltazar Loxicha Zapotec
- – Western Tlacolula Valley Zapotec
- – San Pedro Quiatoni Zapotec
- – San Vicente Coatlán Zapotec
- – Santa Catarina Albarradas Zapotec
- – Santa Inés Yatzechi Zapotec
- – Santa María Quiegolani Zapotec
- – Santiago Xanica Zapotec
- – Santo Domingo Albarradas Zapotec
- – Sierra de Juárez Zapotec
- – Southeastern Ixtlán Zapotec
- – Southern Rincon Zapotec
- – Tabaa Zapotec
- – Tejalapan Zapotec
- – Texmelucan Zapotec
- – Tilquiapan Zapotec
- – Tlacolulita Zapotec
- – Totomachapan Zapotec
- – Xadani Zapotec
- – Xanaguía Zapotec
- – Yalálag Zapotec
- – Yareni Zapotec
- – Yatee Zapotec
- – Yatzachi Zapotec
- – Yautepec Zapotec
- – Zaachila Zapotec
- – Zaniza Zapotec
- – Zoogocho Zapotec
- – Lachirioag Zapotec
- – Ancient Zapotec
zha
- – Central Hongshuihe Zhuang
- – Dai Zhuang
- – Eastern Hongshuihe Zhuang
- – Guibei Zhuang
- – Guibian Zhuang
- – Lianshan Zhuang
- – Liujiang Zhuang
- – Liuqian Zhuang
- – Minz Zhuang
- – Nong Zhuang
- – Qiubei Zhuang
- – Yang Zhuang
- – Yongbei Zhuang
- – Yongnan Zhuang
- – Youjiang Zhuang
- – Zuojiang Zhuang
- – Northern Zhuang
- – Southern Zhuang
zho
- – Min Dong Chinese
- – Jinyu Chinese
- – Mandarin Chinese
- – Northern Ping Chinese
- – Pu-Xian Chinese
- – Southern Ping Chinese
- – Huizhou Chinese
- – Min Zhong Chinese
- – Gan Chinese
- – Hakka Chinese
- – Xiang Chinese
- – Literary Chinese
- – Min Bei Chinese
- – Min Nan Chinese
- – Wu Chinese
- – Yue Chinese
ISO 639 also lists codes for Old Chinese and Late Middle Chinese ). They are not listed under Chinese in ISO 639-3 because they are categorized as ancient and historical languages, respectively.