diff --git a/core/src/main/java/google/registry/idn/Latin-IDN.xml b/core/src/main/java/google/registry/idn/Latin-IDN.xml new file mode 100644 index 000000000..6163ce7a4 --- /dev/null +++ b/core/src/main/java/google/registry/idn/Latin-IDN.xml @@ -0,0 +1,954 @@ + + + + 1 + 2024-10-25 + und-Latn + 11.0.0 + +

INSTRUCTIONS

+ +

Please add or modify the following items in the XML source code for this file before + depositing the document in the IANA Repository. (https://www.iana.org/domains/idn-tables)

+

Meta Data

+

Note: version numbers start at 1. RFC 7940 recommends using simple integers. The version comment is optional, + please replace or delete the default comment. Version comments may be used by some tools as part of the page header.

+

<version comment="[Please replace (or delete) the optional comment]">[Please fill in version number, starting at 1]</version>

+

<date>[Please fill in with publication date, in YYYY-MM-DD format]</date>

+

<validity-start>[Please fill in effective date, in YYYY-MM-DD format]</validity-start>

+

Note: the scope element may be repeated, so that the same document can serve for multiple domains.

+

<scope type="domain">[Please provide, in ".domain" format]</scope>

+

Registry Contact Information:

+

Please fill in the Registry Contact Details.

+

Change History

+

If you made technical modifications to the LGR, please summarize them in the Change History (and also note the details in the appropriate section of the description).

+

PLEASE DELETE THESE INSTRUCTIONS BEFORE DEPOSITING THE DOCUMENT

+ +
+

Registry Contact Details

+
    +
  • Contact Name: [Please fill in Contact Name]
  • +
  • Email address: [Please fill in Email address]
  • +
  • Phone Number: [Please fill in optional Phone Number]
  • +
+
+ +

Label Generation Rules for the Latin Script

+ +

Overview

+ +

This document specifies a set of Label Generation Rules (LGR) for the Latin script for the second level domain or domains identified above. + The starting point for the development of this LGR can be found in the related Root Zone LGR [RZ-LGR-Latn]. + The format of this file follows [RFC 7940]. + This LGR is adapted from the “Reference LGR for the Second Level for the Latin Script” [Ref-LGR-und-Latn], for details, see Change History below.

+ +

For details and additional background on the Latin script, see “Proposal for a Latin Script Root Zone Label Generation Rule-Set (LGR)” [Proposal-Latin].

+ +

Repertoire

+ +

The repertoire contains the 197 letters needed to write hundreds of languages in the Latin script. + An additional 7 combining diacritical marks are available as part of 21 explicitly defined combining sequences. + The repertoire is a subset of [Unicode 11.0.0]. For details, see Section 5, “Repertoire” in [Proposal-Latin]. + (The proposal cited has been adopted for the Latin script portion of the Root Zone LGR.)

+ +

+ Compared to that source, an additional language is supported by adding the code point for the Middle Dot used + in the Catalan Ela Geminada: U+006C U+00B7 U+006C. Context rules limit U+00B7 MIDDLE DOT to being bracketed + by the letter “l”. (See also [280])

+ +

For the second level, the repertoire has been augmented with the ASCII digits, U+0030 to U+0039, plus U+002D HYPHEN-MINUS, for a total of 231 repertoire elements.

+ +

Any code points outside the Latin Script repertoire that are targets for + out-of-repertoire variants would be included here only if the variant is listed + in this file. In this case they are identified as a reflexive (identity) variant + of type “out-of-repertoire-var”. Whether or not they are listed, they do not + form part of the repertoire.

+ +

Repertoire Listing: Each code point or range is tagged with the script or scripts with which the code point is used and one or more other character categories. For each repertoire element, + one or more references document sufficient justification for inclusion in the repertoire; see the “References” below. + For code points that are part of the repertoire, comments identify the languages using the code point along with their [EGIDS] level.

+ +

Background on Script and Principal Languages Using It

+

The Latin script is a major writing system of the world, and the most widely used in terms of + the number of languages and speakers, with circa 70% of the world’s readers and writers making use of + this script. From a list of 1,189 languages using the Latin script [Omniglot] + the 212 languages that were taken into consideration contain all 182 languages with [EGIDS] + level 1–4 together with many languages with EGIDS level 5, each spoken by more than + 1 million estimated speakers. Altogether over 100 languages are cited here to justify + specific additions to the repertoire, but many other languages may also be written using + some subset of the repertoire of this LGR. In a few cases, code points were excluded in [MSR-5] due to + security concerns; for the affected languages, only a subrepertoire could be supported. + More details in Section 3, “Background on Script and Principal Languages Using It” + of [Proposal-Latin].

+ +

Variants

+ +

The variants defined in this LGR are limited to those required for use in zones not shared with any other script. + As such, this LGR does not define cross-script variants. However, using this LGR concurrently with any LGR for Armenian, Cyrillic, and Greek in the same zone will introduce some in-script variants due to cross-script variant transitivity. This will also create potential cross-script issues when used with the same LGRs. + For details, see Section 6, “Variants” in [Proposal-Latin]. + Mitigation of these in-script and cross-script variants can be addressed by using the Common LGR. + For details, see Section 3, “Use of Multiple Reference LGRs in the Same Zone” in [Level-2-Overview]. + In addition to variants defined by this LGR, the full variant information related to this script and added by concurrent use with the Armenian, Cyrillic, and Greek LGR(s) can be found + in the following LGR: [Ref-LGR-Latin-Full-Variant-Script] +

+ +

In particular, the Latin LGR contains a number of in-script variants resulting from transitivity with + variants needed if the LGR is used concurrently with other LGRs from the related scripts, primarily + due to variants with the Greek script. + These variant definitions are required when using this LGR together with the Common LGR in label processing, + but they also reflect a certain consistency in the approach to variants across typographically related scripts. + They can be removed if the LGR is used strictly as standalone.

+ +

All other in-script variants defined in this LGR largely follow the methodology defined in + Section 6, “Variants”, in [Proposal-Latin]. In a separate appendix that proposal identifies additional + candidates for visually confusable code points (see [Proposal-Latin-Appendices]). They provide data + on the basis of which additional variants, or fallback variants (see following) might be defined. However, + doing so would require additional review and analysis that has not been carried out for this version of the + LGR.

+ +

The LGR defines certain allocatable fallback variants as + described in Section 4.5.5 “Allocatable Fallback Variants” in [Level-2-Overview]. A fallback variant is a variant label that uses + substitute code points for code points or sequences not available (or not allowed) in some contexts, that would + otherwise be required for a linguistically accurate rendering of some label.

+ +

When “fallback” variants are defined, two labels may be allocated: a single label with the spelling preferred by the + applicant, plus a single fallback variant for that label. + The fallback exclusively uses the fallback characters for any characters for which fallbacks are defined, while the + “preferred” label may use any otherwise valid mix of code points. + If the fallback variant is the one applied for, no other variant label is allocatable.

+ +

An allocatable fallback variant exists for the following pairs where the second element of each pair is the fallback:

+ + + +

Some second level LGRs provide ASCII fallback variants for some or all accented Latin characters. + Likewise the U+0153 Small OE Ligature and U+00E6 Small AE ligature have ASCII fallbacks consisting of the + non-ligated “oe” and “ae” sequences. None of these fallbacks have been added to the current version of the LGR.

+ +

Overlapped Variant Sequence: Both “ss” and “s” coexist in the repertoire and “s” has variant + relationships on its own. These variants thus overlap: making the variant set well-behaved for + index variant calculation requires that the sequence “ss” also be given variants to all permutations of + variants for the letter s followed by itself, as well as all transitive variants due to other variants + for U+00DF.

+ +

In-script Variant Mapping Types

+

In each of the fallback variant pairs defined above, the mapping type from the first element to the second is of type + “fallback”, while the variant type for the other direction is “blocked”. In addition, the first element of each pair uses the + reflexive mapping “r-original”. + (By convention, the prefix “r-” marks a type used in a reflexive variant mapping, that is, it represents an instance + of the original code point at that location in a variant label, see Section 5.3.4 in [RFC 7940].)

+ +

Variant Disposition: Except for limited exceptions for the fallback variants defined above, variants defined here result + in a variant label disposition of “blocked”.

+ +

The specification of variants in this LGR follows the guidelines in [RFC 8228].

+ +

Character Classes

+

This LGR does not define named character classes.

+ +

Whole Label Evaluation (WLE) and Context rules

+ +

Default Whole Label Evaluation Rules and Actions

+ +

By default, the LGR includes the rules and actions to implement the following restrictions mandated by the IDNA protocol. They are marked with ⍟.

+ + +

Latin-specific Rules

+ +

The following context rule applies to U+00B7 MIDDLE DOT and its variants. + It ensures that the middle dot is part of an Ela Geminada sequence and variants between it and HYPHEN-MINUS are only defined in that context.

+ + +

The following WLE rule invalidates labels in which two Ela Geminada sequences overlap.

+ + +

Actions

+ +

Default Actions

+ +

This LGR includes the default actions for LGRs as well as the action needed to + invalidate labels with misplaced combining marks. They are marked with ⍟. + For a description see [RFC 7940].

+ +

Because this LGR defines allocatable fallback variants the following default actions are applicable.

+ + +

These actions resolve as “allocatable” any label where all variants are of type “fallback”, and as “valid” any label + where all variants are of type “r-original”. Labels with a mix of variant types are resolved as “blocked”.

+ +

To account for original code points in a permuted variant, reflexive variant + mappings with an “r-” prefix are used. (See [RFC 7940]). + In particular, the mapping type “r-original” is given to any code point that has a fallback mapping, + but that appears in its non-fallback form in the original label, and thus “maps to itself”.

+ +

Default actions that are + triggered by the LGR-specific variant types described above limit the “allocatable” variant + labels to those containing only “ss”, dotted “i” or hyphen variants, while + disallowing mixed use of “ss” and “ß”, Dotless i and “i”, or middle-dot and hyphen respectively, except + as in the original applied-for label.

+ +

Note that the mapping types for variants are not symmetric: they depend on which code point is considered + the source or the target in a given mapping. As specified in [RFC 7940], when mapping types are evaluated + code points in a label that are unchanged use the type of their “reflexive” mapping. + Per [RFC 7940] the actions are always applied one after the other, and the evaluation stops at the first + action that assigns a disposition to a given label.

+ +

Script-specific Actions

+

An action has been defined to invalidate labels containing the sequence U+00B7 U+006C U+00B7 which could otherwise result in two Ela Geminada sequences overlapping.

+ +

Methodology and Contributors

+ +

The LGR in this document has been adapted from the corresponding Reference LGR for the Second Level. The Second Level Reference LGR for the Latin Script was developed by Michel Suignard and Asmus Freytag, based on the Root Zone LGR for the Latin + script and information contained or referenced therein; see [RZ-LGR-Latn]. Suitable extensions for the second level have been applied according to the [Guidelines] and with community input. + The original proposal for a Root Zone LGR for the Latin script, that this LGR is based on, was developed by the Latin Generation Panel. + For more information on methodology and contributors to the underlying Root Zone LGR, see Sections 4 and 8 in [Proposal-Latin], as well as [RZ-LGR-Overview].

+ +
+

Changes from Version Dated 25 October 2024

+

Adopted from the Second Level Reference LGR for the Latin Script [Ref-LGR-und-Latn] without normative changes.

+
+ +

References

+

The following general references are cited in this document:

+
+
[EGIDS]
+
Lewis and Simons, “EGIDS: Expanded Graded Intergenerational Disruption Scale,” + documented in [SIL-Ethnologue] and summarized here: + https://en.wikipedia.org/wiki/Expanded_Graded_Intergenerational_Disruption_Scale_(EGIDS)
+ +
[Guidelines]
+
ICANN, “Guidelines for Developing Reference LGRs for the Second Level”, (Los Angeles, California: ICANN, 27 May 2020), https://www.icann.org/en/system/files/files/lgr-guidelines-second-level-27may20-en.pdf
+ +
[Level-2-Overview]
+
Internet Corporation for Assigned Names and Numbers, (ICANN),“Reference Label Generation Rules (LGR) for the Second Level: Overview and Summary” (PDF), + (Los Angeles, California: ICANN, 25 October 2024), https://www.icann.org/en/system/files/files/level2-lgr-overview-summary-25oct24-en.pdf +
+ +
[MSR-5]
+
Integration Panel, “Maximal Starting Repertoire — MSR-5 Overview and Rationale”, 24 June 2021, + https://www.icann.org/en/system/files/files/msr-5-overview-24jun21-en.pdf
+ +
[Omniglot]
+
Omniglot, “Writing Systems by Language”, https://www.omniglot.com/writing/langalph.htm (accessed on 13 January 2022)
+ +
[Proposal-Latin]
+
Latin Generation Panel, “Proposal for a Latin Script Root Zone Label Generation Rule-Set (LGR)”, 27 January 2022 (PDF), https://www.icann.org/en/system/files/files/proposal-latin-lgr-27jan22-en.pdf
+ +
[Proposal-Latin-Appendices]
+
Appendices to “Proposal for a Latin Script Root Zone Label Generation Rule-Set (LGR)”, + 27 January 2022 (ZIP), https://www.icann.org/en/system/files/files/proposal-latin-lgr-appendices-27jan22-en.zip
+ +
[Ref-LGR-und-Latn]
+
ICANN, Second Level Reference Label Generation Rules for the Latin Script (und-Latn), 25 October 2024 (XML) + https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-latin-script-25oct24-en.xml + non-normative HTML presentation: https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-latin-script-25oct24-en.html
+ +
[Ref-LGR-Latin-Full-Variant-Script]
+
ICANN, Second Level Reference Label Generation Rules for the Latin Script (und-Latn), 25 October 2024 (XML) + https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-latin-full-variant-script-25oct24-en.xml + non-normative HTML presentation: https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-latin-full-variant-script-25oct24-en.html
+ +
[RFC 7940]
+
Davies, K. and A. Freytag, “Representing Label Generation Rulesets Using XML”, + RFC 7940, August 2016, https://www.rfc-editor.org/info/rfc7940
+ +
[RFC 8228]
+
A. Freytag, “Guidance on Designing Label Generation Rulesets (LGRs) Supporting Variant Labels”, RFC 8228, August 2017, + https://www.rfc-editor.org/info/rfc8228
+ +
[RZ-LGR-Overview]
+
Integration Panel, “Root Zone Label Generation Rules (RZ LGR-5): Overview and Summary”, 26 May 2022 (PDF), https://www.icann.org/sites/default/files/lgr/rz-lgr-5-overview-26may22-en.pdf
+ +
[RZ-LGR-5]
+
Integration Panel, “Root Zone Label Generation Rules (RZ-LGR-5)”, 26 May 2022 (XML), https://www.icann.org/sites/default/files/lgr/rz-lgr-5-common-26may22-en.xml
+ non-normative HTML presentation: https://www.icann.org/sites/default/files/lgr/rz-lgr-5-common-26may22-en.html
+ +
[RZ-LGR-Latn]
+
ICANN, Root Zone Label Generation Rules for the Latin Script (und-Latn), 26 May 2022 (XML) + https://www.icann.org/sites/default/files/lgr/rz-lgr-5-latin-script-26may22-en.xml
+ +
[SIL-Ethnologue]
+
David M. Eberhard, Gary F. Simons & Charles D. Fennig (eds.). 2021. + Ethnologue: Languages of the World, Twenty fourth edition. Dallas, Texas: SIL + International. Online version available as https://www.ethnologue.com
+ +
[Unicode 11.0.0]
+
The Unicode Consortium. The Unicode Standard, Version 11.0.0, (Mountain View, CA: The Unicode Consortium, 2018. ISBN 978-1-936213-19-1) + https://www.unicode.org/versions/Unicode11.0.0/
+
+ +

For references consulted particularly in designing the repertoire for the Latin Script for the second level + please see details in the Table of References below.

+ +

References [0] and up refer to the Unicode Standard versions in which corresponding code points + were initially encoded. References [101] and up correspond to a source given in [Proposal-Latin] for justifying + the inclusion of the corresponding code points. In the listing of whole label evaluation and context rules, + reference [320] indicates the source for common rules.

+ +]]>
+ + The Unicode Standard, Version 1.1 + The Unicode Standard, Version 3.0 + The Unicode Standard, Version 5.0 + C0 Controls and Basic Latin, The Unicode Standard https://unicode.org/charts/PDF/U0000.pdf + ICANN, Second Level Reference Label Generation Rules for Spanish https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-spanish-30aug16-en.html (Accessed on 31 August 2018) + Omniglot, Czech (čeština) https://www.omniglot.com/writing/czech.htm (Accessed on 31 August 2018) + Omniglot, Icelandic (Íslenska) https://www.omniglot.com/writing/icelandic.htm (Accessed on 31 August 2018) + Omniglot, Faroese (føroyskt mál) https://www.omniglot.com/writing/faroese.htm (Accessed on 31 August 2018) + Omniglot, Chuukese (Chuuk) https://www.omniglot.com/writing/chuukese.htm (Accessed on 31 August 2018) + ScriptSource, Galician written with Latin script https://scriptsource.org/cms/scripts/page.php?item_id=wrSys_detail&key=gl-Latn (Accessed on 1 May 2023) + Omniglot, Lule Sámi (julevsámegiella) https://www.omniglot.com/writing/lulesami.htm (Accessed on 31 August 2018) + Wikipedia, Northern Sami https://en.wikipedia.org/wiki/Northern_Sami (Accessed on 4 September 2018) + Omniglot, Vietnamese (tiếng việt / 㗂越) https://www.omniglot.com/writing/vietnamese.htm (Accessed on 4 September 2018) + Omniglot, Romanian (limba română) https://www.omniglot.com/writing/romanian.htm (Accessed on 4 September 2018) + Omniglot, Skolt Sámi (Sääˊmǩiõll / Nuõrttsää’m) https://www.omniglot.com/writing/skoltsami.htm (Accessed on 4 September 2018) + Omniglot, French (français) https://www.omniglot.com/writing/french.htm (Accessed on 4 September 2018) + Omniglot, West Frisian (Frysk) https://www.omniglot.com/writing/westfrisian.htm (Accessed on 4 September 2018) + Omniglot, Friulian (furlan/marilenghe) https://www.omniglot.com/writing/friulian.htm (Accessed on 4 September 2018) + Summer Institute of Linguistics, Pequeno dicionário: Xavante-Português, Português-Xavante https://www.sil.org/resources/archives/17019 (Accessed on 1 October 2020) + Omniglot, German (Deutsch) https://www.omniglot.com/writing/german.htm (Accessed on 4 September 2018) + Omniglot, Finnish (suomi) https://www.omniglot.com/writing/finnish.htm (Accessed on 4 September 2018) + Omniglot, Turkmen (Türkmen dili / Түркмен дили) https://www.omniglot.com/writing/turkmen.htm (Accessed on 4 September 2018) + Omniglot, Estonian (eesti keel) https://www.omniglot.com/writing/estonian.htm (Accessed on 4 September 2018) + Omniglot, Swedish (svenska) https://www.omniglot.com/writing/swedish.htm (Accessed on 4 September 2018) + Omniglot, Yapese (Waab) https://www.omniglot.com/writing/yapese.htm (Accessed on 4 September 2018) + Omniglot, Dinka (Thuɔŋjäŋ) https://www.omniglot.com/writing/dinka.php (Accessed on 4 September 2018) + Omniglot, Kaqchikel (Kaqchikel Ch’ab’äl) https://www.omniglot.com/writing/kaqchikel.htm (Accessed on 4 September 2018) + Omniglot, Bashkir/Bashkort (Башҡорт теле / Başqort tele) https://www.omniglot.com/writing/bashkir.htm (Accessed on 4 September 2018) + Omniglot, Alsatian (Ëlsässisch) https://www.omniglot.com/writing/alsatian.htm (Accessed on 4 September 2018) + Wikipedia, Nuer language https://en.wikipedia.org/wiki/Nuer_language (Accessed on 4 September 2018) + Omniglot, Italian (italiano) https://www.omniglot.com/writing/italian.htm (Accessed on 4 September 2018) + Wikipedia, Italian orthography https://en.wikipedia.org/wiki/Italian_orthography (Accessed on 4 September 2018) + Omniglot, Wolof (Wollof) https://www.omniglot.com/writing/wolof.htm (Accessed on 4 September 2018) + Omniglot, Latvian (latviešu valoda) https://www.omniglot.com/writing/latvian.htm (Accessed on 4 September 2018) + Omniglot, Tongan (Faka-Tonga) https://www.omniglot.com/writing/tongan.htm (Accessed on 4 September 2018) + Omniglot, Hawaiian (ʻŌlelo Hawaiʻi) https://www.omniglot.com/writing/hawaiian.htm (Accessed on 4 September 2018) + Omniglot, Marshallese (kajin m̧ajeļ) https://www.omniglot.com/writing/marshallese.php (Accessed on 4 September 2018) + Omniglot, Polish (polski) https://www.omniglot.com/writing/polish.htm (Accessed on 4 September 2018) + Omniglot, Lithuanian (lietuvių kalba) https://www.omniglot.com/writing/lithuanian.htm (Accessed on 4 September 2018) + Omniglot, Danish (dansk) https://www.omniglot.com/writing/danish.htm (Accessed on 4 September 2018) + Omniglot, Chamorro (chamoru) https://www.omniglot.com/writing/chamorro.htm (Accessed on 4 September 2018) + Omniglot, Umbundu (Úmbúndú) https://www.omniglot.com/writing/umbundu.htm (Accessed on 4 September 2018) + Omniglot, Guaraní (Avañe’ẽ) https://www.omniglot.com/writing/guarani.htm (Accessed on 4 September 2018) + Wikipedia, Guarani alphabet https://en.wikipedia.org/wiki/Guarani_alphabet (Accessed on 4 September 2018) + Omniglot, Nauruan (Ekaiairũ Naoero) https://www.omniglot.com/writing/nauruan.htm (Accessed on 4 September 2018) + Omniglot, Khoekhoe (Khoekhoegowab) https://www.omniglot.com/writing/khoekhoe.htm (Accessed on 4 September 2018) + Omniglot, Nuer (Naath) https://www.omniglot.com/writing/nuer.htm (Accessed on 4 September 2018) + Omniglot, Hausa (Harshen Hausa / هَرْشَن هَوْسَ) https://www.omniglot.com/writing/hausa.htm (Accessed on 4 September 2018) + Omniglot, Dagaare https://www.omniglot.com/writing/dagaare.htm (Accessed on 4 September 2018) + Omniglot, Fula (Fulfulde, Pulaar, Pular’Fulaare) https://www.omniglot.com/writing/fula.htm (Accessed on 4 September 2018) + Omniglot, Croatian (Hrvatski) https://www.omniglot.com/writing/croatian.htm (Accessed on 4 September 2018) + Omniglot, Serbian (српски / srpski) https://www.omniglot.com/writing/serbian.htm (Accessed on 4 September 2018) + Wikipedia, Polish language https://en.wikipedia.org/wiki/Polish_language (Accessed on 4 September 2018) + Omniglot, Slovak (slovenčina) https://www.omniglot.com/writing/slovak.htm (Accessed on 4 September 2018) + Evertype Publishing, Lithuanian lietuvių kalba Version 1.1 https://www.evertype.com/alphabets/lithuanian.pdf (Accessed on 4 September 2018) + Omniglot, Turkish (Türkçe) https://www.omniglot.com/writing/turkish.htm (Accessed on 4 September 2018) + Omniglot, Kurdish (Kurdî / کوردی) https://www.omniglot.com/writing/kurdish.htm (Accessed on 4 September 2018) + Omniglot, Azerbaijani (آذربايجانجا ديلي / Азәрбајҹан дили / Azərbaycan dili) https://www.omniglot.com/writing/azeri.htm (Accessed on 4 September 2018) + Omniglot, Basque (euskara) https://www.omniglot.com/writing/basque.htm (Accessed on 4 September 2018) + Wikipedia, Basque language https://en.wikipedia.org/wiki/Basque_language#Writing_system (Accessed on 4 September 2018) + Omniglot, Maltese (Malti) https://www.omniglot.com/writing/maltese.htm (Accessed on 4 September 2018) + Omniglot, Venda (Tshivenḓa / Luvenḓa) https://www.omniglot.com/writing/venda.htm (Accessed on 4 September 2018) + Omniglot, Brahui (Bráhuí / براوی) https://www.omniglot.com/writing/brahui.htm (Accessed on 4 September 2018) + Wikipedia, Fon language https://en.wikipedia.org/wiki/Fon_language (Accessed on 4 September 2018) + Omniglot, Ewe (Eʋegbe) https://www.omniglot.com/writing/ewe.htm (Accessed on 4 September 2018) + Omniglot, Sorbian (hornjoserbsce/dolnoserbski) https://www.omniglot.com/writing/sorbian.htm (Accessed on 4 September 2018) + Peace corps, Botswana, An Introduction to Setswana Language https://files.peacecorps.gov/multimedia/audio/languagelessons/botswana/Bw_Setswana_Language_Lessons.pdf (Accessed on 4 September 2018) + Omniglot, Tswana (Setswana) https://www.omniglot.com/writing/tswana.php (Accessed on 4 September 2018) + Wikipedia, Afrikaans https://en.wikipedia.org/wiki/Afrikaans (Accessed on 4 September 2018) + Omniglot, Albanian (shqip / gjuha shqipe) https://www.omniglot.com/writing/albanian.htm (Accessed on 4 September 2018) + Wikipedia, Albanian alphabet https://en.wikipedia.org/wiki/Albanian_alphabet (Accessed on 4 September 2018) + Wikipedia, Uyghur Latin alphabet https://en.wikipedia.org/wiki/Uyghur_Latin_alphabet (Accessed on 4 September 2018) + Omniglot, Drehu (Deʼu) https://www.omniglot.com/writing/drehu.php (Accessed on 4 September 2018) + Omniglot, Haitian Creole (Kreyòl ayisyen) https://www.omniglot.com/writing/haitiancreole.htm (Accessed on 4 September 2018) + Wikipedia, Haitian Creole https://en.wikipedia.org/wiki/Haitian_Creole#Orthography (Accessed on 4 September 2018) + Omniglot, Minangkabau (Baso Minangkabau / باسو مينڠكاباو) https://www.omniglot.com/writing/minangkabau.htm (Accessed on 4 September 2018) + Omniglot, Palauan (a tekoi er a Belau) https://www.omniglot.com/writing/palauan.htm (Accessed on 4 September 2018) + Omniglot, Cubeo (pãmié) https://www.omniglot.com/writing/cubeo.htm (Accessed on 4 September 2018) + Editorial Alberto Lleras Camargo, Diccionario Ilustrado Bilingüe cubeo-español español-cubeo https://www.sil.org/system/files/reapdata/10/58/27/10582785843693992331766506069073895620/40337_01.pdf (Accessed on 4 September 2018) + Omniglot, Inari Saami (Anarâškielâ) https://www.omniglot.com/writing/inarisami.htm (Accessed on 4 September 2018) + Omniglot, Compiled by Wolfram Siegel, DAGBANI https://www.omniglot.com/charts/dagbani.pdf (Accessed on 4 September 2018) + Omniglot, Ewondo https://www.omniglot.com/writing/ewondo.php (Accessed on 4 September 2018) + Omniglot, Luganda (Oluganda) https://www.omniglot.com/writing/ganda.php (Accessed on 4 September 2018) + Omniglot, Adzera https://www.omniglot.com/writing/adzera.htm (Accessed on 4 September 2018) + Omniglot, Ga (Gã) https://www.omniglot.com/writing/ga.htm (Accessed on 4 September 2018) + Omniglot, Duala (Duálá) https://www.omniglot.com/writing/duala.php (Accessed on 4 September 2018) + Omniglot, Soga (Lusoga) https://www.omniglot.com/writing/soga.htm (Accessed on 4 September 2018) + Omniglot, Alur (Lur) https://www.omniglot.com/writing/alur.htm (Accessed on 4 September 2018) + Omniglot, Mandinka (Mandi’nka kango / لغة مندنكا) https://www.omniglot.com/writing/mandinka.htm (Accessed on 4 September 2018) + Omniglot, Acholi (Lwo) https://www.omniglot.com/writing/acholi.htm (Accessed on 4 September 2018) + Omniglot, Bambara (Bamanankan) https://www.omniglot.com/writing/bambara.htm (Accessed on 4 September 2018) + Omniglot, Raga (Hano) https://www.omniglot.com/writing/raga.htm (Accessed on 4 September 2018) + Omniglot, Tatar (tatarça / татарча / تاتارچا) https://www.omniglot.com/writing/tatar.htm (Accessed on 4 September 2018) + Omniglot, Zaza (Zazaki / زازاکی) https://www.omniglot.com/writing/zazaki.htm (Accessed on 4 September 2018) + Wikipedia, Turkish alphabet https://en.wikipedia.org/wiki/Turkish_alphabet (Accessed on 4 September 2018) + School of English, Adam Michiewicz University, Poznań, Poland, Poznań Studies in Contemporary Linguistics 43(1),2007, pp. 169-180, A Demographic Igbo Orthography https://www.degruyter.com/downloadpdf/j/psicl.2007.43.issue-1/v10010-007-0009-0/v10010-007-0009-0.pdf (Accessed on 4 September 2018) + Omniglot, Igbo (Asụsụ Igbo) https://www.omniglot.com/writing/igbo.htm (Accessed on 4 September 2018) + ItalianPod101, Italian Accents and Proper Italian Pronunciation https://www.italianpod101.com/italian-accents (Accessed on 4 September 2018) + Reverso Dictionary, venerdì translation | Italian-English dictionary https://dictionary.reverso.net/italian-english/venerd%C3%AC (Accessed on 4 September 2018) + Omniglot, Kikuyu (Gĩkũyũ) https://www.omniglot.com/writing/kikuyu.htm (Accessed on 4 September 2018) + Omniglot, Hixkaryána https://www.omniglot.com/writing/hixkaryana.htm (Accessed on 4 September 2018) + Omniglot, Maasai (ɔl Maa) https://www.omniglot.com/writing/maasai.htm (Accessed on 4 September 2018) + Omniglot, Mossi (Mòoré) https://www.omniglot.com/writing/mossi.htm (Accessed on 4 September 2018) + Omniglot, Jenesis. The Bible in Marshallese, 2009., Contributed by Wolfgang Kuhl https://www.omniglot.com/babel/marshallese.htm (Accessed on 4 September 2018) + Wikipedia, Cedilla https://en.wikipedia.org/wiki/Cedilla#Marshallese (Accessed on 4 September 2018) + Wikipedia, Marshallese language https://en.wikipedia.org/wiki/Marshallese_language#Display_issues (Accessed on 4 September 2018) + Trussel, Marshallese-English Online Dictionary https://www.trussel2.com/MOD/ (Accessed on 4 September 2018) + Omniglot, Susu (Sosoxi) https://www.omniglot.com/writing/susu.htm (Accessed on 4 September 2018) + Omniglot, Zarma (Zarmaciine) https://www.omniglot.com/writing/zarma.htm (Accessed on 4 September 2018) + Omniglot, Pitjantjatjara https://www.omniglot.com/writing/pitjantjatjara.htm (Accessed on 4 September 2018) + Omniglot, Spanish (español/castellano) https://www.omniglot.com/writing/spanish.htm (Accessed on 4 September 2018) + Omniglot, Filipino (wikang Filipino) https://www.omniglot.com/writing/filipino.htm (Accessed on 4 September 2018) + Omniglot, Chavacano https://www.omniglot.com/writing/chavacano.php (Accessed on 4 September 2018) + Wikipedia, Ilocano language https://en.wikipedia.org/wiki/Ilocano_language#Modern_alphabet (Accessed on 4 September 2018) + Omniglot, Quechua (Runasimi) https://www.omniglot.com/writing/quechua.htm (Accessed on 4 September 2018) + Wikipedia, Quechua alphabet https://en.wikipedia.org/wiki/Quechua_alphabet (Accessed on 4 September 2018) + Omniglot, Cape Verdean Creole (Kriolu) https://www.omniglot.com/writing/kriol.php (Accessed on 4 September 2018) + Omniglot, Waray-Waray https://www.omniglot.com/writing/waray.php (Accessed on 4 September 2018) + Omniglot, Lozi (siLozi) https://www.omniglot.com/writing/lozi.htm (Accessed on 4 September 2018) + africanlanguages.com, Sesotho sa Leboa (Northern Sotho) https://africanlanguages.com/northern_sotho/ (Accessed on 4 September 2018) + Wikipedia, Chechen language https://en.wikipedia.org/wiki/Chechen_language (Accessed on 4 September 2018) + Omniglot, Hungarian (magyar) https://www.omniglot.com/writing/hungarian.htm (Accessed on 4 September 2018) + Wikipedia, Hungarian alphabet https://en.wikipedia.org/wiki/Hungarian_alphabet (Accessed on 4 September 2018) + Omniglot, Lingala https://www.omniglot.com/writing/lingala.htm (Accessed on 4 September 2018) + Omniglot, Akan https://www.omniglot.com/writing/akan.htm (Accessed on 4 September 2018) + Wikipedia, Mossi language https://en.wikipedia.org/wiki/Mossi_language (Accessed on 4 September 2018) + SIL-Sudan, OCCASIONAL PAPERS in the study of SUDANESE LANGUAGES No. 9 (p. 75) https://www.sil.org/system/files/reapdata/10/06/46/100646256099282892829790816212446104791/OPSL_9.pdf (Accessed on 4 September 2018) + Omniglot, Kanuri https://www.omniglot.com/writing/kanuri.htm (Accessed on 4 September 2018) + Omniglot, Bugis (Basa Ugi ) https://www.omniglot.com/writing/bugis.htm (Accessed on 4 September 2018) + Omniglot, Mizo (Mizo ṭawng) https://www.omniglot.com/writing/mizo.htm (Accessed on 4 September 2018) + Omniglot, Miskito (Mískitu) https://www.omniglot.com/writing/miskito.htm (Accessed on 4 September 2018) + Wikipedia, Papiamento https://en.wikipedia.org/wiki/Papiamento (Accessed on 4 September 2018) + Omniglot, Papiamento (Papiamentu) https://www.omniglot.com/writing/papiamento.php (Accessed on 4 September 2018) + Omniglot, Chichewa (Chicheŵa) https://www.omniglot.com/writing/chichewa.php (Accessed on 4 September 2018) + Native Languages of the Americas website, Vocabulary in Native American Languages: Mam Words https://www.native-languages.org/mam_words.htm (Accessed on 4 September 2018) + Omniglot, Mam (Qyol Mam) https://www.omniglot.com/writing/mam.htm (Accessed on 4 September 2018) + Wikipedia, Pulaar language https://en.wikipedia.org/wiki/Pulaar_language (Accessed on 4 September 2018) + Wikipedia, Fula language https://en.wikipedia.org/wiki/Fula_language#Writing_systems (Accessed on 4 September 2018) + Wikipedia, Polish alphabet https://en.wikipedia.org/wiki/Polish_alphabet (Accessed on 4 September 2018) + Wikipedia, French orthography https://en.wikipedia.org/wiki/French_orthography (Accessed on 4 September 2018) + Omniglot, Yoruba (Èdè Yorùbá) https://www.omniglot.com/writing/yoruba.htm (Accessed on 4 September 2018) + Omniglot, Esperanto https://www.omniglot.com/writing/esperanto.htm (Accessed on 4 September 2018) + Omniglot, Welsh (Cymraeg) https://www.omniglot.com/writing/welsh.htm (Accessed on 4 September 2018) + Wikipedia, List of Latin-script letters https://en.wikipedia.org/wiki/List_of_Latin-script_letters (Accessed on 4 September 2018) + Omniglot, Montenegrin https://www.omniglot.com/writing/montenegrin.htm (Accessed on 20 March 2019) + Omniglot, Shavante https://www.omniglot.com/writing/shavante.php (Accessed on 24 September 2020) + Wikipedia, Malagasy Language https://en.wikipedia.org/wiki/Malagasy_language (Accessed on 24 September 2020) + Wikipedia, Serer language, https://en.wikipedia.org/wiki/Serer_language, accessed on 6 April 2021 + Wikipedia, Kpelle language, https://en.wikipedia.org/wiki/Kpelle_language, accessed on 6 April 2021 + Wikipedia, Catalan Orthography, https://en.wikipedia.org/wiki/Catalan_orthography, accessed on 28 November 2022 + Fundacio PuntCAT registry (.CAT), IDN table for CAT_ca Version 1.0, 12 February 2006, https://www.iana.org/domains/idn-tables/tables/cat_ca_1.0.html + Fundacio PuntCAT registry (.CAT), Rules of the .cat domain, https://domini.cat/en/rules-of-the-cat-domain/ + RFC 5891, Internationalized Domain Names in Applications (IDNA): Protocol https://tools.ietf.org/html/rfc5891 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +