Arabic
Root Zone Label Generation Rules, 1st Edition
Summary
| Version | 1 — Root Zone LGR |
|---|---|
| Date | |
| Tag |
und-Arab (Arabic)
|
| Unicode | 6.3.0 |
| Scope | DNS root zone |
| Source file | lgr-1-arabic-script-24feb16-en.xml (39.9kb) |
Description
Root Zone Label Generation Ruleset for the Arabic Script
Overview
This document specifies an element LGR for a specific script that forms part of an integrated set of Label Generation Rules for the Root Zone. For more details on the Root Zone LGR and their development see "Root Zone Label Generation Rules - LGR-1: Overview and Summary", Integration Panel, 24 February 2016 [LGR-1].
For more details on this element LGR and its development see TF-AIDN, "Proposal for Arabic Script Root Zone LGR", Version 3.4, 2015 November 18 [Proposal].
Repertoire
The repertoire for this element LGR for the Arabic script is based on Section 3.2 in [Proposal] and only includes code points used by languages that are actively written in the Arabic script. It excludes code points for which TF-AIDN was unable to find sufficient evidence of use (see Appendix F in [Proposal]). The repertoire is based on [MSR-2], which is a subset of Unicode 6.3 [Unicode 6.3].
Read the rest of the description Show less
This LGR does not include combining marks or code point sequences. All combining marks have been excluded for these reasons:
First, they can significantly overproduce and would require additional rules to contain them effectively, complicating the design.
Second, even where they are required for some languages, they are optional for others.
Third, this also circumvents the issue raised by [IAB].
As part of the Root Zone, this LGR includes neither digits nor the HYPHEN-MINUS.
For further details, see Section 3.2 "Code point repertoire included", in [Proposal].
Each code point or range is tagged with the script or scripts that the code point is used with, and one or more references documenting sufficient justification for inclusion in the repertoire, see "References" below.
Variants
This LGR includes "blocked" and "allocatable" variants, assigned according to Section 4 "Final recommendation of variants for Top Level Domains (TLDs)" in [Proposal]. These recommendations balance the desire to minimize the number of possible allocatable variants with the need to keep the definition of variants simple. See also the comments given in the listing.
Whole Label Evaluations Rules
This LGR includes Whole Label Evaluation rules specific to the Arabic script. See Section 5 "Whole Label Evaluation (WLE) rules", in [Proposal]. As specified, the rules serve to prevent the mixing of two variants of the same code point within the same label. This has the effect of reducing overproduction of variant labels. See also the comments given for each rule or action.
Default Whole Label Evaluation Rules
The LGR includes the set of required default WLE rules and actions applicable to the Root Zone and defined in [MSR-2]. They are marked with ⍟.
Methodology and Contributors
The proposal for an Arabic Script Root Zone LGR [Proposal] that this LGR is based on, was developed by the Task Force for Arabic Script IDNs [TF-AIDN], based on multiple open public consultations.
For more information and for methodology and contributors see [Proposal].
References
In the listing of the repertoire, references [0] to [12] refer to Unicode Standard versions in which the corresponding code points were initially encoded. References [100] and above correspond to sources justifying the inclusion of the corresponding code points. Single code point or ranges may have multiple source reference values.
In addition the following references are cited in this document:
- [IAB]
- Internet Architecture Board (IAB), "IAB Statement on Identifiers and Unicode 7.0.0" https://www.iab.org/documents/correspondence-reports-documents/2015-2/iab-statement-on-identifiers-and-unicode-7-0-0/
- [LGR-1]
- Integration Panel, "Root Zone Label Generation Rules - LGR-1: Overview and Summary", https://www.icann.org/sites/default/files/lgr/lgr-1-overview-24feb16-en.pdf
- [MSR-2]
- Integration Panel, "Maximal Starting Repertoire — MSR-2 Overview and Rationale", 14 April 2015 https://www.icann.org/en/system/files/files/msr-2-overview-14apr15-en.pdf
- [Proposal]
- TF-AIDN, "Proposal for Arabic Script Root Zone LGR", Version 3.4, 18 November 2015 https://www.icann.org/en/system/files/files/arabic-lgr-proposal-18nov15-en.pdf
- [RFC 6365]
- RFC 6365, "Terminology Used in Internationalization in the IETF", https://tools.ietf.org/html/rfc6365
- [Unicode 6.3]
- The Unicode Consortium. The Unicode Standard, Version 6.3.0, (Mountain View, CA: The Unicode Consortium, 2013. ISBN 978-1-936213-08-5) http://www.unicode.org/versions/Unicode6.3.0/
- [TF-AIDN]
- Blog, "Task Force for Arabic Script IDNs" https://www.icann.org/news/blog/what-is-the-task-force-on-arabic-script-idns-tf-aidn-up-to
For more details for references [100] and up and [0] and up refer to the Table of References below.
Repertoire
| Glyph | Code point | Tags and context | Variants |
|---|---|---|---|
| ؠ | U+0620 ARABIC LETTER KASHMIRI YEH 11 115 |
|
|
| ء | U+0621 ARABIC LETTER HAMZA 0 100 |
|
|
| آ | U+0622 ARABIC LETTER ALEF WITH MADDA ABOVE 0 100 |
|
أ
U+0623
blocked
إ
U+0625
blocked
ا
U+0627
allocatable
U+0622 ALEF WITH MADDA ABOVE is simplified to U+0627 ALEF in the Arabic language
ٲ
U+0672
blocked
|
| أ | U+0623 ARABIC LETTER ALEF WITH HAMZA ABOVE 0 100 |
|
آ
U+0622
blocked
إ
U+0625
blocked
ا
U+0627
allocatable
U+0623 ALEF WITH HAMZA ABOVE is simplified to U+0627 ALEF in the Arabic language
ٲ
U+0672
blocked
|
| ؤ | U+0624 ARABIC LETTER WAW WITH HAMZA ABOVE 0 100 |
|
و
U+0648
allocatable
U+0624 WAV WITH HAMZA ABOVE is simplified to U+0648 WAV in the Arabic language
|
| إ | U+0625 ARABIC LETTER ALEF WITH HAMZA BELOW 0 100 |
|
آ
U+0622
blocked
أ
U+0623
blocked
ا
U+0627
allocatable
U+0625 ALEF WITH HAMZA BELOW is simplified to U+0627 ALEF in the Arabic language
ٲ
U+0672
blocked
|
| ئ | U+0626 ARABIC LETTER YEH WITH HAMZA ABOVE 0 100 |
|
ى
U+0649
blocked
ي
U+064A
blocked
ٻ
U+067B
blocked
ی
U+06CC
blocked
ۍ
U+06CD
blocked
ې
U+06D0
blocked
+1 more
|
| ا | U+0627 ARABIC LETTER ALEF 0 100 |
|
آ
U+0622
blocked
أ
U+0623
blocked
إ
U+0625
blocked
ٲ
U+0672
blocked
|
| ب | U+0628 ARABIC LETTER BEH 0 100 |
|
|
| ة | U+0629 ARABIC LETTER TEH MARBUTA 0 100 |
|
ه
U+0647
allocatable
In the Arabic language, U+0647 HEH may be substituted for U+0629 TEH MARBUTA. [RFC 6365]
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
blocked
ۂ
U+06C2
blocked
ۃ
U+06C3
allocatable
+1 more
|
| ت | U+062A ARABIC LETTER TEH 0 100 |
|
ٺ
U+067A
blocked
|
| ث | U+062B ARABIC LETTER THEH 0 100 |
|
ٽ
U+067D
blocked
|
| ج | U+062C–U+063A 15 code points ARABIC LETTER JEEM 0 100 |
|
|
| ف | U+0641 ARABIC LETTER FEH 0 100 |
|
ق
U+0642
blocked
ڢ
U+06A2
allocatable
Used interchangeably in Africa for languages using Western (African) orthography
ڧ
U+06A7
blocked
|
| ق | U+0642 ARABIC LETTER QAF 0 100 |
|
ف
U+0641
blocked
ڢ
U+06A2
blocked
ڧ
U+06A7
allocatable
Used interchangeably in Africa for languages using Western (African) orthography
|
| ك | U+0643 ARABIC LETTER KAF 0 100 |
|
ک
U+06A9
allocatable
U+06AA
allocatable
|
| ل | U+0644–U+0645 2 code points ARABIC LETTER LAM 0 100 |
|
|
| ن | U+0646 ARABIC LETTER NOON 0 100 |
|
ں
U+06BA
allocatable
Used interchangeably in Africa for languages using Western (African) orthography
|
| ه | U+0647 ARABIC LETTER HEH 0 100 |
|
ة
U+0629
blocked
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
allocatable
U+06C2
blocked
ۃ
U+06C3
blocked
+1 more
|
| و | U+0648 ARABIC LETTER WAW 0 100 |
|
ؤ
U+0624
blocked
|
| ى | U+0649 ARABIC LETTER ALEF MAKSURA 0 100 |
|
ئ
U+0626
blocked
ي
U+064A
blocked
ٻ
U+067B
blocked
ی
U+06CC
blocked
ۍ
U+06CD
blocked
ې
U+06D0
blocked
+1 more
|
| ي | U+064A ARABIC LETTER YEH 0 100 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ٻ
U+067B
blocked
ی
U+06CC
allocatable
U+06CD
blocked
ې
U+06D0
blocked
+1 more
|
| ٲ | U+0672 ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE 0 102 |
|
آ
U+0622
blocked
أ
U+0623
blocked
إ
U+0625
blocked
ا
U+0627
allocatable
U+0672 ALEF WITH WAVY HAMZA ABOVE is simplified to U+0627 ALEF in the Kashmiri language
|
| ٹ | U+0679 ARABIC LETTER TTEH 0 112 |
|
ڻ
U+06BB
blocked
|
| ٺ | U+067A ARABIC LETTER TTEHEH 0 111 |
|
ت
U+062A
blocked
|
| ٻ | U+067B ARABIC LETTER BEEH 0 111 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ي
U+064A
blocked
ی
U+06CC
blocked
ۍ
U+06CD
blocked
ې
U+06D0
blocked
+1 more
|
| ټ | U+067C ARABIC LETTER TEH WITH RING 0 108 |
|
|
| ٽ | U+067D ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS 0 111 |
|
ث
U+062B
blocked
|
| پ | U+067E ARABIC LETTER PEH 0 109 |
|
ڽ
U+06BD
blocked
ۑ
U+06D1
blocked
ݒ
U+0752
blocked
|
| ٿ | U+067F–U+0680 2 code points ARABIC LETTER TEHEH 0 111 |
|
|
| ځ | U+0681 ARABIC LETTER HAH WITH HAMZA ABOVE 0 108 138 |
|
|
| ڃ | U+0683 ARABIC LETTER NYEH 0 111 |
|
ڄ
U+0684
blocked
|
| ڄ | U+0684 ARABIC LETTER DYEH 0 111 |
|
ڃ
U+0683
blocked
|
| څ | U+0685 ARABIC LETTER HAH WITH THREE DOTS ABOVE 0 108 138 |
|
|
| چ | U+0686 ARABIC LETTER TCHEH 0 109 |
|
|
| ڇ | U+0687 ARABIC LETTER TCHEHEH 0 111 |
|
|
| ڈ | U+0688 ARABIC LETTER DDAL 0 112 |
|
|
| ډ | U+0689 ARABIC LETTER DAL WITH RING 0 108 138 |
|
|
| ڊ | U+068A ARABIC LETTER DAL WITH DOT BELOW 0 111 |
|
|
| ڋ | U+068B ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH 0 110 139 |
|
|
| ڌ | U+068C–U+068D 2 code points ARABIC LETTER DAHAL 0 111 |
|
|
| ڎ | U+068E ARABIC LETTER DUL 0 137 |
|
ڏ
U+068F
blocked
|
| ڏ | U+068F ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS 0 111 |
|
ڎ
U+068E
blocked
|
| ڑ | U+0691 ARABIC LETTER RREH 0 112 |
|
|
| ړ | U+0693 ARABIC LETTER REH WITH RING 0 108 138 |
|
|
| ڕ | U+0695 ARABIC LETTER REH WITH SMALL V BELOW 0 106 140 |
|
|
| ږ | U+0696 ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE 0 108 138 |
|
|
| ڗ | U+0697 ARABIC LETTER REH WITH TWO DOTS ABOVE 0 119 146 |
|
|
| ژ | U+0698 ARABIC LETTER JEH 0 112 |
|
|
| ڙ | U+0699 ARABIC LETTER REH WITH FOUR DOTS ABOVE 0 111 143 |
|
|
| ښ | U+069A ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE 0 108 138 |
|
|
| ڟ | U+069F ARABIC LETTER TAH WITH THREE DOTS ABOVE 0 121 123 130 |
|
|
| ڠ | U+06A0 ARABIC LETTER AIN WITH THREE DOTS ABOVE 0 107 129 144 |
|
|
| ڢ | U+06A2 ARABIC LETTER FEH WITH DOT MOVED BELOW 0 101 130 131 132 |
|
ف
U+0641
allocatable
ق
U+0642
blocked
ڧ
U+06A7
blocked
|
| ڤ | U+06A4 ARABIC LETTER VEH 0 106 107 127 140 |
|
ڨ
U+06A8
blocked
|
| ڦ | U+06A6 ARABIC LETTER PEHEH 0 111 |
|
|
| ڧ | U+06A7 ARABIC LETTER QAF WITH DOT ABOVE 0 101 130 131 132 |
|
ف
U+0641
blocked
ق
U+0642
allocatable
ڢ
U+06A2
blocked
|
| ڨ | U+06A8 ARABIC LETTER QAF WITH THREE DOTS ABOVE 0 124 |
|
ڤ
U+06A4
blocked
|
| ک | U+06A9 ARABIC LETTER KEHEH 0 112 |
|
ك
U+0643
allocatable
ڪ
U+06AA
allocatable
|
| ڪ | U+06AA ARABIC LETTER SWASH KAF 0 111 |
|
ك
U+0643
allocatable
ک
U+06A9
allocatable
|
| ګ | U+06AB ARABIC LETTER KAF WITH RING 0 108 138 |
|
ڭ
U+06AD
blocked
گ
U+06AF
blocked
U+06AB KAF WITH RING interchangeably used in Pashto with U+06AF GAF
ݣ
U+0763
blocked
|
| ڭ | U+06AD ARABIC LETTER NG 0 105 114 133 134 |
|
ګ
U+06AB
blocked
گ
U+06AF
blocked
ݣ
U+0763
blocked
|
| ڮ | U+06AE ARABIC LETTER KAF WITH THREE DOTS BELOW 0 116 |
|
|
| گ | U+06AF ARABIC LETTER GAF 0 109 |
|
ګ
U+06AB
blocked
ڭ
U+06AD
blocked
ݣ
U+0763
blocked
|
| ڰ | U+06B0 ARABIC LETTER GAF WITH RING 0 110 |
|
|
| ڱ | U+06B1 ARABIC LETTER NGOEH 0 111 |
|
|
| ڳ | U+06B3 ARABIC LETTER GUEH 0 111 |
|
|
| ڵ | U+06B5 ARABIC LETTER LAM WITH SMALL V 0 106 140 |
|
|
| ں | U+06BA ARABIC LETTER NOON GHUNNA 3 112 |
|
ن
U+0646
allocatable
|
| ڻ | U+06BB ARABIC LETTER RNOON 3 111 |
|
ٹ
U+0679
blocked
|
| ڼ | U+06BC ARABIC LETTER NOON WITH RING 3 108 138 |
|
|
| ڽ | U+06BD ARABIC LETTER NOON WITH THREE DOTS ABOVE 0 107 |
|
پ
U+067E
blocked
ۑ
U+06D1
blocked
ݒ
U+0752
blocked
|
| ھ | U+06BE ARABIC LETTER HEH DOACHASHMEE 0 112 |
|
ة
U+0629
blocked
ه
U+0647
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
blocked
ۂ
U+06C2
blocked
ۃ
U+06C3
blocked
+1 more
|
| ۀ | U+06C0 ARABIC LETTER HEH WITH YEH ABOVE 0 116 140 |
|
ة
U+0629
blocked
ه
U+0647
blocked
ھ
U+06BE
blocked
ہ
U+06C1
blocked
ۂ
U+06C2
blocked
ۃ
U+06C3
blocked
+1 more
|
| ہ | U+06C1 ARABIC LETTER HEH GOAL 0 112 |
|
ة
U+0629
blocked
ه
U+0647
allocatable
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ۂ
U+06C2
blocked
ۃ
U+06C3
blocked
|
| ۂ | U+06C2 ARABIC LETTER HEH GOAL WITH HAMZA ABOVE 0 125 135 141 |
|
ة
U+0629
blocked
ه
U+0647
blocked
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
allocatable
U+06C2 HEH GOAL WITH HAMZA ABOVE is simplified to U+06C1 HEH GOAL in Urdu
ۃ
U+06C3
blocked
+1 more
|
| ۃ | U+06C3 ARABIC LETTER TEH MARBUTA GOAL 0 126 |
|
ة
U+0629
allocatable
ه
U+0647
blocked
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
blocked
ۂ
U+06C2
blocked
+1 more
|
| ۄ | U+06C4 ARABIC LETTER WAW WITH RING 0 102 |
|
|
| ۆ | U+06C6 ARABIC LETTER OE 0 102 140 142 |
|
|
| ۋ | U+06CB ARABIC LETTER VE 0 103 114 136 |
|
|
| ی | U+06CC ARABIC LETTER FARSI YEH 0 112 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ي
U+064A
allocatable
ٻ
U+067B
blocked
ۍ
U+06CD
blocked
ې
U+06D0
blocked
+1 more
|
| ۍ | U+06CD ARABIC LETTER YEH WITH TAIL 0 108 138 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ي
U+064A
blocked
ٻ
U+067B
blocked
ی
U+06CC
blocked
ې
U+06D0
blocked
+1 more
|
| ێ | U+06CE ARABIC LETTER YEH WITH SMALL V 0 127 140 |
|
|
| ۏ | U+06CF ARABIC LETTER WAW WITH DOT ABOVE 3 107 |
|
|
| ې | U+06D0 ARABIC LETTER E 0 108 138 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ي
U+064A
blocked
ٻ
U+067B
blocked
ی
U+06CC
blocked
ۍ
U+06CD
blocked
+1 more
|
| ۑ | U+06D1 ARABIC LETTER YEH WITH THREE DOTS BELOW 0 122 |
|
پ
U+067E
blocked
ڽ
U+06BD
blocked
ݒ
U+0752
blocked
|
| ے | U+06D2 ARABIC LETTER YEH BARREE 0 112 |
|
ئ
U+0626
blocked
ى
U+0649
blocked
ي
U+064A
blocked
ٻ
U+067B
blocked
ی
U+06CC
blocked
ۍ
U+06CD
blocked
+1 more
|
| ە | U+06D5 ARABIC LETTER AE 0 106 114 140 |
|
ة
U+0629
blocked
ه
U+0647
blocked
ھ
U+06BE
blocked
ۀ
U+06C0
blocked
ہ
U+06C1
blocked
ۂ
U+06C2
blocked
+1 more
|
| ݑ | U+0751 ARABIC LETTER BEH WITH DOT BELOW AND THREE DOTS ABOVE 7 121 128 130 147 |
|
|
| ݒ | U+0752 ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW 7 113 130 |
|
پ
U+067E
blocked
ڽ
U+06BD
blocked
ۑ
U+06D1
blocked
|
| ݖ | U+0756 ARABIC LETTER BEH WITH SMALL V 7 113 120 130 |
|
|
| ݠ | U+0760 ARABIC LETTER FEH WITH TWO DOTS BELOW 7 121 130 |
|
|
| ݢ | U+0762 ARABIC LETTER KEHEH WITH DOT ABOVE 7 118 129 |
|
|
| ݣ | U+0763 ARABIC LETTER KEHEH WITH THREE DOTS ABOVE 7 118 |
|
ګ
U+06AB
blocked
ڭ
U+06AD
blocked
گ
U+06AF
blocked
|
| ݦ | U+0766 ARABIC LETTER MEEM WITH DOT BELOW 7 116 121 |
|
|
| ݧ | U+0767 ARABIC LETTER NOON WITH TWO DOTS BELOW 7 113 120 |
|
ࢩ
U+08A9
blocked
|
| ݨ | U+0768 ARABIC LETTER NOON WITH SMALL TAH 7 145 |
|
|
| ݪ | U+076A ARABIC LETTER LAM WITH BAR 7 113 116 120 |
|
|
| ݮ | U+076E–U+0771 4 code points ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH BELOW 9 104 |
|
|
| ࢠ | U+08A0 ARABIC LETTER BEH WITH SMALL V BELOW 12 117 |
|
|
| ࢢ | U+08A2 ARABIC LETTER JEEM WITH TWO DOTS ABOVE 12 117 |
|
|
| ࢣ | U+08A3 ARABIC LETTER TAH WITH TWO DOTS ABOVE 12 113 117 |
|
|
| ࢤ | U+08A4–U+08A7 4 code points ARABIC LETTER FEH WITH DOT BELOW AND THREE DOTS ABOVE 12 116 |
|
|
| ࢨ | U+08A8 ARABIC LETTER YEH WITH TWO DOTS BELOW AND HAMZA ABOVE 12 121 |
|
|
| ࢩ | U+08A9 ARABIC LETTER YEH WITH TWO DOTS BELOW AND DOT ABOVE 12 121 |
|
ݧ
U+0767
blocked
|
Variants
Code points grouped into sets of mutual variants. Every member of a set produces the same set of variant labels, so a registration of one has implications for all the others. Sets of a single member are omitted, as are the identity mappings RFC 7940 requires each member to declare.
-
ئىيٻیۍېے
Source Direction Target Disposition Ref Comment ئ U+0626 ↔ ى U+0649 blocked ئ U+0626 ↔ ي U+064A blocked ئ U+0626 ↔ ٻ U+067B blocked ئ U+0626 ↔ ی U+06CC blocked ئ U+0626 ↔ ۍ U+06CD blocked ئ U+0626 ↔ ې U+06D0 blocked ئ U+0626 ↔ ے U+06D2 blocked ى U+0649 ↔ ي U+064A blocked ى U+0649 ↔ ٻ U+067B blocked ى U+0649 ↔ ی U+06CC blocked ى U+0649 ↔ ۍ U+06CD blocked ى U+0649 ↔ ې U+06D0 blocked ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ةهھۀہۂۃە
Source Direction Target Disposition Ref Comment ة U+0629 ⇆ ه U+0647 → allocatable ← blocked In the Arabic language, U+0647 HEH may be substituted for U+0629 TEH MARBUTA. [RFC 6365] ة U+0629 ↔ ھ U+06BE blocked ة U+0629 ↔ ۀ U+06C0 blocked ة U+0629 ↔ ہ U+06C1 blocked ة U+0629 ↔ ۂ U+06C2 blocked ة U+0629 ↔ ۃ U+06C3 allocatable
The two are visually identical and the same label could be typed using one or the other based on the set language settings and keyboard layout of a user. Labels in the Arabic language using U+0629 TEH MARBUTA in the final and isolated positions will be typed in other languages using U+06C3 TEH MARBUTA GOAL (Urdu, etc.) which is identical in isolated and has a variant glyph or identical glyph form in final positionة U+0629 ↔ ە U+06D5 blocked ه U+0647 ↔ ھ U+06BE blocked ه U+0647 ↔ ۀ U+06C0 blocked ه U+0647 ↔ ہ U+06C1 allocatable
Labels in the Arabic language using U+0647 HEH in the final and isolated positions will be typed in other languages using U+06C1 HEH GOAL (Urdu, Pashto, Saraiki, etc.) which is identical in isolated and has a variant glyph or identical glyph form in final positionه U+0647 ↔ ۂ U+06C2 blocked ه U+0647 ↔ ۃ U+06C3 blocked ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
آأإاٲ
Source Direction Target Disposition Ref Comment آ U+0622 ↔ أ U+0623 blocked آ U+0622 ↔ إ U+0625 blocked آ U+0622 ⇆ ا U+0627 → allocatable ← blocked U+0622 ALEF WITH MADDA ABOVE is simplified to U+0627 ALEF in the Arabic language آ U+0622 ↔ ٲ U+0672 blocked أ U+0623 ↔ إ U+0625 blocked أ U+0623 ⇆ ا U+0627 → allocatable ← blocked U+0623 ALEF WITH HAMZA ABOVE is simplified to U+0627 ALEF in the Arabic language أ U+0623 ↔ ٲ U+0672 blocked إ U+0625 ⇆ ا U+0627 → allocatable ← blocked U+0625 ALEF WITH HAMZA BELOW is simplified to U+0627 ALEF in the Arabic language إ U+0625 ↔ ٲ U+0672 blocked ا U+0627 ⇆ ٲ U+0672 → blocked ← allocatable U+0672 ALEF WITH WAVY HAMZA ABOVE is simplified to U+0627 ALEF in the Kashmiri language ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
فقڢڧ
Source Direction Target Disposition Ref Comment ف U+0641 ↔ ق U+0642 blocked ف U+0641 ↔ ڢ U+06A2 allocatable Used interchangeably in Africa for languages using Western (African) orthography ف U+0641 ↔ ڧ U+06A7 blocked ق U+0642 ↔ ڢ U+06A2 blocked ق U+0642 ↔ ڧ U+06A7 allocatable Used interchangeably in Africa for languages using Western (African) orthography ڢ U+06A2 ↔ ڧ U+06A7 blocked ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
پڽۑݒ
Source Direction Target Disposition Ref Comment پ U+067E ↔ ڽ U+06BD blocked پ U+067E ↔ ۑ U+06D1 blocked پ U+067E ↔ ݒ U+0752 blocked ڽ U+06BD ↔ ۑ U+06D1 blocked ڽ U+06BD ↔ ݒ U+0752 blocked ۑ U+06D1 ↔ ݒ U+0752 blocked ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ګڭگݣ
Source Direction Target Disposition Ref Comment ګ U+06AB ↔ ڭ U+06AD blocked ګ U+06AB ↔ گ U+06AF blocked U+06AB KAF WITH RING interchangeably used in Pashto with U+06AF GAF ګ U+06AB ↔ ݣ U+0763 blocked ڭ U+06AD ↔ گ U+06AF blocked ڭ U+06AD ↔ ݣ U+0763 blocked گ U+06AF ↔ ݣ U+0763 blocked
Iraqi Arabic uses U+06AF GAF, whereas Moroccan Arabic uses U+0763 KEHEH WITH THREE DOTS ABOVE↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
كکڪ
Source Direction Target Disposition Ref Comment ك U+0643 ↔ ک U+06A9 allocatable
The two have identical shapes in initial and medial positions and are used by different language communities to refer to the same letterك U+0643 ↔ ڪ U+06AA allocatable
The two have similar (interchangeable) shapes in initial and medial positions and are used by different language communities to refer to the same letterک U+06A9 ↔ ڪ U+06AA allocatable
The two have similar (interchangeable) shapes in initial and medial positions and are used by different language communities to refer to the same letter↔ declared both ways ⇆ both ways, different disposition each way → one direction only
Rules
Conditions evaluated against a whole label, or against the context around a
single code point. The notation borrows from regular expressions:
^ and $ anchor to the start and end of a label,
. matches any code point, (?= ) and
(?<= ) look ahead and behind, and * and
+ repeat. Two symbols are specific to rulesets:
◆ is the code point being tested, and
⟨name⟩ refers to another rule.
leading-combining-mark MSR default
default WLE rule matching labels with leading combining marks
^ ({gc:Mn} ∪ {gc:Mc})
Structure
-
^start -
({gc:Mn} ∪ {gc:Mc})union-
{gc:Mn}class -
{gc:Mc}class
-
Referenced by 1 definition
- action 1 (invalid)
no-mix-teh-marbuta-goal
do not mix Arabic letters TEH MARBUTA and FEH WITH DOT MOVED BELOW in the same label
( ( U+0629 .* U+06C3 ) │ ( U+06C3 .* U+0629 ) )
Structure
-
( ( U+0629 .* U+06C3 ) │ ( U+06C3 .* U+0629 ) )choice-
U+0629 .* U+06C3rule-
U+0629char -
.*any -
U+06C3char
-
-
U+06C3 .* U+0629rule-
U+06C3char -
.*any -
U+0629char
-
-
Referenced by 1 definition
- action 3 (invalid)
no-mix-feh-with-dot-moved-below
do not mix Arabic letters FEH and FEH WITH DOT MOVED BELOW in the same label
( ( U+0641 .* U+06A2 ) │ ( U+06A2 .* U+0641 ) )
Structure
-
( ( U+0641 .* U+06A2 ) │ ( U+06A2 .* U+0641 ) )choice-
U+0641 .* U+06A2rule-
U+0641char -
.*any -
U+06A2char
-
-
U+06A2 .* U+0641rule-
U+06A2char -
.*any -
U+0641char
-
-
Referenced by 1 definition
- action 4 (invalid)
no-mix-feh-qaf-with-dot-above
do not mix Arabic letters FEH and QAF WITH DOT ABOVE in the same label
( ( U+0641 .* U+06A7 ) │ ( U+06A7 .* U+0641 ) )
Structure
-
( ( U+0641 .* U+06A7 ) │ ( U+06A7 .* U+0641 ) )choice-
U+0641 .* U+06A7rule-
U+0641char -
.*any -
U+06A7char
-
-
U+06A7 .* U+0641rule-
U+06A7char -
.*any -
U+0641char
-
-
Referenced by 1 definition
- action 5 (invalid)
no-mix-qaf-with-dot-above
do not mix Arabic letters QAF and QAF WITH DOT ABOVE in the same label
( ( U+0642 .* U+06A7 ) │ ( U+06A7 .* U+0642 ) )
Structure
-
( ( U+0642 .* U+06A7 ) │ ( U+06A7 .* U+0642 ) )choice-
U+0642 .* U+06A7rule-
U+0642char -
.*any -
U+06A7char
-
-
U+06A7 .* U+0642rule-
U+06A7char -
.*any -
U+0642char
-
-
Referenced by 1 definition
- action 6 (invalid)
no-mix-kaf-keheh
do not mix Arabic letters KAF and KEHEH in the same label
( ( U+0643 .* U+06A9 ) │ ( U+06A9 .* U+0643 ) )
Structure
-
( ( U+0643 .* U+06A9 ) │ ( U+06A9 .* U+0643 ) )choice-
U+0643 .* U+06A9rule-
U+0643char -
.*any -
U+06A9char
-
-
U+06A9 .* U+0643rule-
U+06A9char -
.*any -
U+0643char
-
-
Referenced by 1 definition
- action 7 (invalid)
no-mix-kaf-swash
do not mix Arabic letters KAF and SWASH KAF in the same label
( ( U+0643 .* U+06AA ) │ ( U+06AA .* U+0643 ) )
Structure
-
( ( U+0643 .* U+06AA ) │ ( U+06AA .* U+0643 ) )choice-
U+0643 .* U+06AArule-
U+0643char -
.*any -
U+06AAchar
-
-
U+06AA .* U+0643rule-
U+06AAchar -
.*any -
U+0643char
-
-
Referenced by 1 definition
- action 8 (invalid)
no-mix-heh-doachashmee
do not mix Arabic letters HEH and HEH DOACHASHMEE in the same label
( ( U+0647 .* U+06BE ) │ ( U+06BE .* U+0647 ) )
Structure
-
( ( U+0647 .* U+06BE ) │ ( U+06BE .* U+0647 ) )choice-
U+0647 .* U+06BErule-
U+0647char -
.*any -
U+06BEchar
-
-
U+06BE .* U+0647rule-
U+06BEchar -
.*any -
U+0647char
-
-
Referenced by 1 definition
- action 9 (invalid)
no-mix-heh-goal
do not mix Arabic letters HEH and HEH GOAL in the same label
( ( U+0647 .* U+06C1 ) │ ( U+06C1 .* U+0647 ) )
Structure
-
( ( U+0647 .* U+06C1 ) │ ( U+06C1 .* U+0647 ) )choice-
U+0647 .* U+06C1rule-
U+0647char -
.*any -
U+06C1char
-
-
U+06C1 .* U+0647rule-
U+06C1char -
.*any -
U+0647char
-
-
Referenced by 1 definition
- action 10 (invalid)
no-mix-heh-ae
do not mix Arabic letters HEH and AE in the same label
( ( U+0647 .* U+06D5 ) │ ( U+06D5 .* U+0647 ) )
Structure
-
( ( U+0647 .* U+06D5 ) │ ( U+06D5 .* U+0647 ) )choice-
U+0647 .* U+06D5rule-
U+0647char -
.*any -
U+06D5char
-
-
U+06D5 .* U+0647rule-
U+06D5char -
.*any -
U+0647char
-
-
Referenced by 1 definition
- action 11 (invalid)
no-mix-alef-maksura-farsi-yeh
do not mix Arabic letters ALEF MAKSURA and FARSI YEH in the same label
( ( U+0649 .* U+06CC ) │ ( U+06CC .* U+0649 ) )
Structure
-
( ( U+0649 .* U+06CC ) │ ( U+06CC .* U+0649 ) )choice-
U+0649 .* U+06CCrule-
U+0649char -
.*any -
U+06CCchar
-
-
U+06CC .* U+0649rule-
U+06CCchar -
.*any -
U+0649char
-
-
Referenced by 1 definition
- action 12 (invalid)
no-mix-peh-noon-with-three-dots-above
do not mix Arabic letters PEH and NOON WITH THREE DOTS ABOVE in the same label
( ( U+067E .* U+06BD ) │ ( U+06BD .* U+067E ) )
Structure
-
( ( U+067E .* U+06BD ) │ ( U+06BD .* U+067E ) )choice-
U+067E .* U+06BDrule-
U+067Echar -
.*any -
U+06BDchar
-
-
U+06BD .* U+067Erule-
U+06BDchar -
.*any -
U+067Echar
-
-
Referenced by 1 definition
- action 13 (invalid)
no-mix-kaf-with-ring-gaf
do not mix Arabic letters KAF WITH RING and GAF in the same label
( ( U+06AB .* U+06AF ) │ ( U+06AF .* U+06AB ) )
Structure
-
( ( U+06AB .* U+06AF ) │ ( U+06AF .* U+06AB ) )choice-
U+06AB .* U+06AFrule-
U+06ABchar -
.*any -
U+06AFchar
-
-
U+06AF .* U+06ABrule-
U+06AFchar -
.*any -
U+06ABchar
-
-
Referenced by 1 definition
- action 14 (invalid)
no-mix-kaf-with-ring-keheh-with-three-dots-above
do not mix Arabic letters KAF WITH RING and KEHEH WITH THREE DOTS ABOVE
( ( U+06AB .* U+0763 ) │ ( U+0763 .* U+06AB ) )
Structure
-
( ( U+06AB .* U+0763 ) │ ( U+0763 .* U+06AB ) )choice-
U+06AB .* U+0763rule-
U+06ABchar -
.*any -
U+0763char
-
-
U+0763 .* U+06ABrule-
U+0763char -
.*any -
U+06ABchar
-
-
Referenced by 1 definition
- action 15 (invalid)
no-mix-gaf-keheh-with-three-dots-above
do not mix Arabic letters GAF and KEHEH WITH THREE DOTS ABOVE in the same label
( ( U+06AF .* U+0763 ) │ ( U+0763 .* U+06AF ) )
Structure
-
( ( U+06AF .* U+0763 ) │ ( U+0763 .* U+06AF ) )choice-
U+06AF .* U+0763rule-
U+06AFchar -
.*any -
U+0763char
-
-
U+0763 .* U+06AFrule-
U+0763char -
.*any -
U+06AFchar
-
-
Referenced by 1 definition
- action 16 (invalid)
no-mix-noon-with-three-dots-above-yeh-with-three-dots-below
do not mix Arabic letters NOON WITH THREE DOTS ABOVE and YEH WITH THREE DOTS BELOW in the same label
( ( U+06BD .* U+06D1 ) │ ( U+06D1 .* U+06BD ) )
Structure
-
( ( U+06BD .* U+06D1 ) │ ( U+06D1 .* U+06BD ) )choice-
U+06BD .* U+06D1rule-
U+06BDchar -
.*any -
U+06D1char
-
-
U+06D1 .* U+06BDrule-
U+06D1char -
.*any -
U+06BDchar
-
-
Referenced by 1 definition
- action 17 (invalid)
no-mix-heh-goal-ae
do not mix Arabic letters HEH GOAL and AE in the same label
( ( U+06C1 .* U+06D5 ) │ ( U+06D5 .* U+06C1 ) )
Structure
-
( ( U+06C1 .* U+06D5 ) │ ( U+06D5 .* U+06C1 ) )choice-
U+06C1 .* U+06D5rule-
U+06C1char -
.*any -
U+06D5char
-
-
U+06D5 .* U+06C1rule-
U+06D5char -
.*any -
U+06C1char
-
-
Referenced by 1 definition
- action 18 (invalid)
Actions
Actions are evaluated in the order shown. The first action whose conditions match determines the disposition of the label.
| # | Disposition | Conditions |
|---|---|---|
| 1 |
invalid
|
label matches leading-combining-mark labels with leading combining marks are invalid MSR default |
| 2 |
invalid
|
any variant is out-of-repertoire-var any variant label with a code point out of repertoire is invalid MSR default |
| 3 |
invalid
|
label matches no-mix-teh-marbuta-goal do not mix Arabic letters TEH MARBUTA and FEH WITH DOT MOVED BELOW in the same label |
| 4 |
invalid
|
label matches no-mix-feh-with-dot-moved-below do not mix Arabic letters FEH and FEH WITH DOT MOVED BELOW in the same label |
| 5 |
invalid
|
label matches no-mix-feh-qaf-with-dot-above do not mix Arabic letters FEH and QAF WITH DOT ABOVE in the same label |
| 6 |
invalid
|
label matches no-mix-qaf-with-dot-above do not mix Arabic letters QAF and QAF WITH DOT ABOVE in the same label |
| 7 |
invalid
|
label matches no-mix-kaf-keheh do not mix Arabic letters KAF and KEHEH in the same label |
| 8 |
invalid
|
label matches no-mix-kaf-swash do not mix Arabic letters KAF and SWASH KAF in the same label |
| 9 |
invalid
|
label matches no-mix-heh-doachashmee do not mix Arabic letters HEH and HEH DOACHASHMEE in the same label |
| 10 |
invalid
|
label matches no-mix-heh-goal do not mix Arabic letters HEH and HEH GOAL in the same label |
| 11 |
invalid
|
label matches no-mix-heh-ae do not mix Arabic letters HEH and AE in the same label |
| 12 |
invalid
|
label matches no-mix-alef-maksura-farsi-yeh do not mix Arabic letters ALEF MAKSURA and FARSI YEH in the same label |
| 13 |
invalid
|
label matches no-mix-peh-noon-with-three-dots-above do not mix Arabic letters PEH and NOON WITH THREE DOTS ABOVE in the same label |
| 14 |
invalid
|
label matches no-mix-kaf-with-ring-gaf do not mix Arabic letters KAF WITH RING and GAF in the same label |
| 15 |
invalid
|
label matches no-mix-kaf-with-ring-keheh-with-three-dots-above do not mix Arabic letters KAF WITH RING and KEHEH WITH THREE DOTS ABOVE |
| 16 |
invalid
|
label matches no-mix-gaf-keheh-with-three-dots-above do not mix Arabic letters GAF and KEHEH WITH THREE DOTS ABOVE in the same label |
| 17 |
invalid
|
label matches no-mix-noon-with-three-dots-above-yeh-with-three-dots-below do not mix Arabic letters NOON WITH THREE DOTS ABOVE and YEH WITH THREE DOTS BELOW in the same label |
| 18 |
invalid
|
label matches no-mix-heh-goal-ae do not mix Arabic letters HEH GOAL and AE in the same label |
| 19 |
blocked
|
any variant is blocked variant labels containing blocked variants are blocked MSR default |
| 20 |
allocatable
|
all variants are allocatable variant labels with all variants allocatable are allocatable MSR default |
| 21 |
valid
|
any label default catch all (default action) MSR default |

The two are visually identical and the same label could be typed using one or the other based on the set language settings and keyboard layout of a user. Labels in the Arabic language using U+0629 TEH MARBUTA in the final and isolated positions will be typed in other languages using U+06C3 TEH MARBUTA GOAL (Urdu, etc.) which is identical in isolated and has a variant glyph or identical glyph form in final position