This file contains Label Generation Rules (LGR) for the Gurmukhi script for the Root Zone. For more details on this LGR and its development, see "Proposal for a Gurmukhi Script Root Zone Label Generation Ruleset (LGR)" [Proposal]. The format of this file follows [RFC 7940].
According to Section 5, "Repertoire" in [Proposal], the Gurmukhi script LGR contains 56 unique code-points. This Repertoire covers the Punjabi language written using the Gurmukhi script. Punjabi ([EGIDS] level 2) is the only language currently using the Gurmukhi script.
The repertoire is based on [MSR-4], which is a subset of [Unicode 6.3].
Code points outside the Gurmukhi script that are listed in this file are targets for out-of-script variants and are identified by a reflexive (identity) variant of type "out-of-repertoire-var". They do not form part of the repertoire.
Each code point is tagged with the script or scripts that the code point is used with, a category value, and one or more references documenting sufficient justification for inclusion in the repertoire, see "References" below. Comments identify alternate names for some code points.
The Gurmukhi and Devanagari scripts are closely related to each other and there are many code points in both scripts which can be confused with code points in the other script. Five sequences of Devanagari code points are defined as variants of single Gurmukhi code points. Additional cross-script variant analysis identified a smaller set of code points from the Bengali script. Where these can cause confusion even to a careful observer, they have been defined as variants. There are no in-script variants defined for Gurmhukhi. See Section 6, "Variants", in [Proposal].
Variant Disposition: All variants are of type “blocked”, making labels that differ only by these variants mutually exclusive: whichever label containing either of these variants is chosen earlier would be delegated, while any other variant labels should be blocked.
This LGR does not define allocatable variants.
The specification of variants in the Root Zone LGR follows the guidelines in [RFC 8228].
Gurmukhi is an alphasyllabary and the heart of the writing system is the Akshar. This is the unit which is instinctively recognized by users of the script. The writing system of Gurmukhi could be summed up as composed of Consonants, Implicit Vowel Killer: Halant, Vowels, Bindi, Tippi, Addak, Nukta and Visarga.
Consonants: Gurmukhi consonants contain an implicit schwa /ə/. But these consonants are also used to represent consonant sounds where /ə/ vowel is not incorporated with them without any modification. More details in Section 3.3.1, "The Consonants" of the [Proposal].
Virama: Unlike the Halant in other Neo-Brahmi scripts, U+094D ( ् ) GURMUKHI SIGN VIRAMA is not used in general to strip a consonant letter’s implicit vowel. The Virama is only used to create a conjunct where the letter U+0A39 HA, U+0A30 RA or U+0A35 VA is the second element in a conjunct. More details in Section 3.3.2, "The Implicit Vowel Killer: Virama" of the [Proposal].
Vowels and Matras: Punjabi has seven long vowels and three short vowels (ਅ /ə/, ਇ /I/, and ਉ /U/) . Each of them, except U+0A05 have a corresponding vowel sign, or matra, which is used to modify the vowel inherent in the preceding consonant. More details in Section 3.3.3 "Vowels" of the [Proposal].
Bindi: Bindi represents a homo-organic nasal. Bindi is used with all long vowels and the short vowel U+0A09, as well as with the matras of long vowels, except the matra U+0A42. More details in Section 3.3.4.1, "The Bindi" of the [Proposal].
Tippi: Tippi is used to nasalize short vowels /ə/ and /I/ at all places, as well as /U/ and /u/ after a consonant. That means, Tippi comes after consonants without a vowel sign (representing the mātrā of /ə/ "mukta") and after the mātrā of /I/ ( ਿ ) following vowel carriers and consonants, such as in ਸੰ and ਸਿੰ. The mātrās of /U/ ( ੁ,) and /u/ ( ੂ ) following a consonant also take a Tippi. In addition, Tippi is used in gemination for nasal consonants ਙ, ਞ, ਨ and ਮ. More details in Section 3.3.4.2 "The Tippi" of the [Proposal].
Addak: Addak is used to mark the gemination of the following consonant. In Punjabi, addak usually can follow mukta, aunkar ( ੁ ) and sihari ( ਿ ), , and the vowel signs of the short vowels /ə/, /u/ and /i/. It geminates the consonant which follows it; therefore it cannot occur at the end of a label. More details in "3.3.4.3 The Addak" of the [Proposal].
Nukta: Called pairin bindi in Punjabi, Nukta is used with the six consonants (ਸ, ਖ, ਗ, ਜ, ਫ and ਲ ) defined as set C1 to represent the phonemes of words of Sanskrit and Perso-Arabic sources. More details in Section 3.3.4.4 "Nukta" of the [Proposal].
The LGR includes the set of required default WLE rules and actions applicable to the Root Zone and defined in [MSR-4]. They are marked with ⍟. The default prohibition on leading combining marks is equivalent to ensuring that a label only starts with a consonant or vowel.
These rules have been drafted to ensure that the prospective Gurmukhi label conforms to akshar formation norms as desired in Gurmukhi script. These norms are exclusively presented as context rules.
The following symbols are used in the WLE rules:
C → Consonant
M → Matra
V → Vowel
B → Bindi
D → Tippi
A → Addak
H → Virama / Halant
N → Nukta
M1 → { ਿ(U+0A3F), ੁ (U+0A41) } (Short matras)
M2 → M - M1 (Long matras)
V1 → { ਅ (U+0A05), ਇ (U+0A07), ਉ (U+0A09)} (Short Vowels)
V2 → V - V1 (Long Vowel)
C1 → {ਖ (U+0A16), ਗ (U+0A17), ਜ (U+0A1C), ਫ (U+0A2B), ਲ (U+0A32), ਸ (U+0A38)}
C2 → { ਰ (U+0A30), ਵ (U+0A35), ਹ (U+0A39)}
C3 → C – {ਙ (U+0A19), ਞ (U+0A1E), ਣ (U+0A23), ਹ (U+0A39), ੜ (U+0A5C)}
The rules are:
More details in Section 7, "Whole Label Evaluation Rules (WLE)" of the [Proposal].
The LGR for the Gurmukhi script was developed by the Neo-Brahmi Generation Panel (NBGP) the members of which have experience in linguistics and computational linguistics in a wide variety of languages written with Neo-Brahmi scripts. Under the Neo-Brahmi Generation Panel, there are nine scripts belonging to separate Unicode blocks. Each of these scripts has been assigned a separate LGR, with the Neo-Brahmi GP ensuring that the fundamental philosophy behind building those LGRs are in sync with all other Brahmi derived scripts. For further details on methodology and contributors, see Sections 4 and 8 of [Proposal].
References [0] refers to the Unicode Standard version in which corresponding code points were initially encoded. Reference [105] and up correspond to sources given in [Proposal] for justifying the inclusion of for the corresponding code points. Single code point or ranges may have multiple source reference values.
In addition, the following general references are cited in this document: