Sinhala

Sinhala

Root Zone Label Generation Rules, 6th Edition Current

Summary

Version6 — Root Zone LGR for the Sinhala Script
Date
Tag und-Sinh (Sinhala)
Unicode16.0.0
ScopeDNS root zone
Source filerz-lgr-6-sinhala-script-23sep25-en.xml (20.2kb)
This ruleset in other editions: 6th Edition 5th Edition 4th Edition 3rd Edition 2nd Edition 1st Edition

This ruleset is integrated into the Common (integrated set) ruleset of this release.

Description

Root Zone Label Generation Rules for the Sinhala Script

Overview

This file contains a set of Label Generation Rules (LGR) for the Sinhala script for the Root Zone. For more details on this LGR and additional background on the script, see “Proposal for a Sinhala Script Root Zone Label Generation Rules-Set (LGR)” [Proposal-Sinhala]. This file is one of a set of LGR files that together form an integrated LGR for the DNS Root Zone [RZ-LGR-6]. The format of this file follows [RFC 7940].

Repertoire

According to Section 5, “Repertoire” in [Proposal-Sinhala], the Sinhala LGR contains 72 single code points, in addition to 4 sequences used in the definition of variants, for a total of 76 repertoire elements. The repertoire covers the Sinhala language as written with the Sinhala script.

The repertoire is contained in [MSR-6], which is a subset of [Unicode 16.0.0].

Read the rest of the description Show less

As part of the Root Zone, this LGR includes neither decimal digits nor the HYPHEN-MINUS nor ZWJ.

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.

Variants

According to Section 6, “Variants”, in [Proposal-Sinhala], this LGR defines variants within Sinhala which can cause confusion for even a careful observer. There are no cross-script variants, though some confusing cases are identified in [Proposal-Sinhala].

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 equivalent labels should be blocked. There is no preference among these labels.

This LGR does not define allocatable variants.

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

Context Rules for Variants: for some of the variants defined in this LGR the sequences or code points making up source and target are constrained by explicit context rules on the code points (or by implicit context rules defined for the adjacent code points). In such a case, any variants may require context rules that match the intersection between the effective contexts for both source and target; otherwise, a sequence might be considered valid in some variant label when it would not be valid in an equivalent context in an original label. Symmetry requires the same context rule for both forward and reverse mappings.

Character Classes

As most Brahmi-derived scripts, Sinhala is an alphasyllabary writing system written from left to right. All the categories of Consonants, Vowels, Matras, Halant, Anusvara, Visarga and Sannjakas are discussed below.

Consonants: There are 40 consonants in Sinhala alphabet and 38 of them are selected for inclusion. Its consonants imply inherent vowel a(අ) when they are used without dependent vowels. Absence of the inherent vowel is marked by adding hal kirima (remover of the inherent vowel) to the consonant; thus ක /ka/ but ක් /k/, and ව /va/ but ව් /v/. More details in Section 3.3.1, “The Consonants” in [Proposal-Sinhala].

Vowels and Matras: There are separate symbols (dependent vowels) for all the vowels except the inherent vowel අ in Sinhala. Independent vowels are used at the beginning of a word and dependent vowels (matras) are used after consonants. More details in Section 3.3.2, “The Vowels” in [Proposal-Sinhala].

Halanta: The Halanta, which is also called halkirima or hallakuna, is encoded as U+0DCA ( ් ) SINHALA SIGN AL-LAKUNA. This sign is used to remove the inherent vowel of the consonants in Sinhala, and to join consonants and form conjunct characters. More details in Section 3.3.3, “Halanta: The Inherent Vowel Remover” in [Proposal-Sinhala].

Anusvara: U+0D82 ( ං ) SINHALA SIGN ANUSVARAYA, pronounced /ŋ/, represents all the nasals. It can be preceded by any sign except halanta (U+0DCA). More details in Section 3.3.4, “The Anusvara” in [Proposal-Sinhala].

Visarga: U+0D83 ( ඃ ) SINHALA SIGN VISARGAYA is a rarely used sign and pronounced as /h/. It can be preceded by any sign except halanta (U+0DCA). More details in Section 3.3.5, “The Visarga” in [Proposal-Sinhala].

Sannjakas: There are five separate letters for prenasalized voiced stops called sannjakas in Sinhala. From among these, ඦ is not frequently used. Sannjakas cannot be followed by halanta. More details in Section 3.3.6, “Sannjakas” in [Proposal-Sinhala].

Whole Label Evaluation (WLE) and Context Rules

Default Whole Label Evaluation Rules and Actions

The LGR includes the set of required default WLE rules and actions applicable to the Root Zone and defined in [MSR-6]. 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. The actions compute a label disposition based on WLE rules or variant mapping types.

Sinhala-specific Rules

These rules have been formulated so that they can be adopted for LGR specification.

The following symbols are used in the WLE rules:
C → Consonant
M → Matra / Vowel Signs
V → Vowel
B → Anusvara (Bindu)
X → Visarga
H → Halanta / Virama
J → Sannjaka

The rules are:

  • 1. H: must be preceded by C
  • 2. M: must be preceded by C or J
  • 3. X: must be preceded by either V, C, or M
  • 4. B: must be preceded by either V, C, J or M

The following context rules apply to code points in variant sets to ensure the variant transitivity.

  • 5. variants are undefined preceding a Halant or Matra
  • 6. variants are undefined preceding an Anusvara, Visarga, Halant or Matra

More details in Section 7, “Whole Label Evaluation Rules (WLE)” in [Proposal-Sinhala]

Methodology and Contributors

The Root Zone LGR for the Sinhala Script was developed by the Sinhala Generation Panel in consultation with the Neo-Brahmi Generation Panel (NBGP). For details on methodology and contributors, see Sections 4 and 8 in [Proposal-Sinhala], as well as [RZ-LGR-6-Overview].

References

The following general references are cited in this document:

[MSR-6]
Integration Panel, “Maximal Starting Repertoire — MSR-6 Overview and Rationale”, 23 September 2025, https://www.icann.org/en/system/files/files/msr-6-overview-23sep25-en.pdf
[Proposal-Sinhala]
Sinhala Generation Panel, “Proposal for a Sinhala Script Root Zone Label Generation Ruleset (LGR)”, 22 April 2019, https://www.icann.org/en/system/files/files/proposal-sinhala-lgr-22apr19-en.pdf
[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-6-Overview]
Integration Panel, “Root Zone Label Generation Rules (RZ LGR-6): Overview and Summary”, 23 September 2025, https://www.icann.org/sites/default/files/lgr/rz-lgr-6-overview-23sep25-en.pdf
[RZ-LGR-6]
Integration Panel, “Root Zone Label Generation Rules (RZ-LGR-6)”, 23 September 2025 (XML), https://www.icann.org/sites/default/files/lgr/rz-lgr-6-common-23sep25-en.xml
non-normative HTML presentation: https://www.icann.org/sites/default/files/lgr/rz-lgr-6-common-23sep25-en.html
[Unicode 16.0.0]
The Unicode Consortium. The Unicode Standard, Version 16.0.0, (South San Francisco: The Unicode Consortium, 2024. ISBN 978-1-936213-34-4) https://www.unicode.org/versions/Unicode16.0.0/

For references consulted, particularly in designing the repertoire for the Sinhala script for the Root Zone, please see details in the Table of References below. Reference [3] refers to the Unicode Standard version in which the corresponding code points were initially encoded. References [102] and above correspond to sources given in [Proposal-Sinhala] justifying the inclusion of the corresponding code points. Entries in the table may have multiple source reference values.

Repertoire

Glyph Code point Tags and context Variants
ං U+0D82 SINHALA SIGN ANUSVARAYA 3 102 201 TagAnusvaraTagsc:Sinh Contextfollows-V-C-J-or-M
ඃ U+0D83 SINHALA SIGN VISARGAYA 3 102 201 Tagsc:SinhTagVisarga Contextfollows-V-C-or-M
අ U+0D85 SINHALA LETTER AYANNA 3 102 201 Tagsc:SinhTagVowel
ආ U+0D86 SINHALA LETTER AAYANNA 3 102 201 Tagsc:SinhTagVowel
ඇ U+0D87 SINHALA LETTER AEYANNA 3 102 201 Tagsc:SinhTagVowel
ඈ U+0D88 SINHALA LETTER AEEYANNA 3 102 201 Tagsc:SinhTagVowel
ඉ U+0D89 SINHALA LETTER IYANNA 3 102 201 Tagsc:SinhTagVowel
ඊ U+0D8A SINHALA LETTER IIYANNA 3 102 201 Tagsc:SinhTagVowel
උ U+0D8B SINHALA LETTER UYANNA 3 102 201 Tagsc:SinhTagVowel
ඌ U+0D8C SINHALA LETTER UUYANNA 3 102 201 Tagsc:SinhTagVowel
ඍ U+0D8D SINHALA LETTER IRUYANNA 3 102 201 Tagsc:SinhTagVowel ඝෘ U+0D9D + U+0DD8 blocked සෘ U+0DC3 + U+0DD8 blocked
එ U+0D91 SINHALA LETTER EYANNA 3 102 201 Tagsc:SinhTagVowel ඵ U+0DB5 blocked
ඒ U+0D92 SINHALA LETTER EEYANNA 3 102 201 Tagsc:SinhTagVowel ඵ් U+0DB5 + U+0DCA blocked
ඓ U+0D93 SINHALA LETTER AIYANNA 3 102 201 Tagsc:SinhTagVowel ඵෙ U+0DB5 + U+0DD9 blocked
ඔ U+0D94 SINHALA LETTER OYANNA 3 102 201 Tagsc:SinhTagVowel ඹ U+0DB9 blocked
ඕ U+0D95 SINHALA LETTER OOYANNA 3 102 201 Tagsc:SinhTagVowel
ඖ U+0D96 SINHALA LETTER AUYANNA 3 102 201 Tagsc:SinhTagVowel
ක U+0D9A SINHALA LETTER ALPAPRAANA KAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඛ U+0D9B SINHALA LETTER MAHAAPRAANA KAYANNA 3 102 201 TagConsonantTagsc:Sinh බ U+0DB6 blocked
ග U+0D9C SINHALA LETTER ALPAPRAANA GAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඝ U+0D9D SINHALA LETTER MAHAAPRAANA GAYANNA 3 102 201 TagConsonantTagsc:Sinh ස U+0DC3 blocked
ඝෘ U+0D9DU+0DD8 sequence of 2 SINHALA LETTER MAHAAPRAANA GAYANNA + SINHALA VOWEL SIGN GAETTA-PILLA 3 102 201 variant of IRUYANNA ඍ U+0D8D blocked සෘ U+0DC3 + U+0DD8 blocked
ඟ U+0D9F SINHALA LETTER SANYAKA GAYANNA 3 102 201 TagSannjakaTagsc:Sinh
ච U+0DA0 SINHALA LETTER ALPAPRAANA CAYANNA 3 102 201 TagConsonantTagsc:Sinh ව U+0DC0 blocked
ඡ U+0DA1 SINHALA LETTER MAHAAPRAANA CAYANNA 3 102 201 TagConsonantTagsc:Sinh
ජ U+0DA2 SINHALA LETTER ALPAPRAANA JAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඣ U+0DA3 SINHALA LETTER MAHAAPRAANA JAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඤ U+0DA4 SINHALA LETTER TAALUJA NAASIKYAYA 3 102 201 TagConsonantTagsc:Sinh
ඥ U+0DA5 SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA 3 102 201 TagConsonantTagsc:Sinh
ට U+0DA7 SINHALA LETTER ALPAPRAANA TTAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඨ U+0DA8 SINHALA LETTER MAHAAPRAANA TTAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඩ U+0DA9 SINHALA LETTER ALPAPRAANA DDAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඪ U+0DAA SINHALA LETTER MAHAAPRAANA DDAYANNA 3 102 201 TagConsonantTagsc:Sinh
ණ U+0DAB SINHALA LETTER MUURDHAJA NAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඬ U+0DAC SINHALA LETTER SANYAKA DDAYANNA 3 102 201 TagSannjakaTagsc:Sinh
ත U+0DAD SINHALA LETTER ALPAPRAANA TAYANNA 3 102 201 TagConsonantTagsc:Sinh
ථ U+0DAE SINHALA LETTER MAHAAPRAANA TAYANNA 3 102 201 TagConsonantTagsc:Sinh
ද U+0DAF SINHALA LETTER ALPAPRAANA DAYANNA 3 102 201 TagConsonantTagsc:Sinh
ධ U+0DB0 SINHALA LETTER MAHAAPRAANA DAYANNA 3 102 201 TagConsonantTagsc:Sinh
න U+0DB1 SINHALA LETTER DANTAJA NAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඳ U+0DB3 SINHALA LETTER SANYAKA DAYANNA 3 102 201 TagSannjakaTagsc:Sinh
ප U+0DB4 SINHALA LETTER ALPAPRAANA PAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඵ U+0DB5 SINHALA LETTER MAHAAPRAANA PAYANNA 3 102 201 TagConsonantTagsc:Sinh එ U+0D91 blocked
ඵ් U+0DB5U+0DCA sequence of 2 SINHALA LETTER MAHAAPRAANA PAYANNA + SINHALA SIGN AL-LAKUNA 3 102 201 variant of EEYANNA ඒ U+0D92 blocked
ඵෙ U+0DB5U+0DD9 sequence of 2 SINHALA LETTER MAHAAPRAANA PAYANNA + SINHALA VOWEL SIGN KOMBUVA 3 102 201 variant of AIYANNA ඓ U+0D93 blocked
බ U+0DB6 SINHALA LETTER ALPAPRAANA BAYANNA 3 102 201 TagConsonantTagsc:Sinh ඛ U+0D9B blocked
භ U+0DB7 SINHALA LETTER MAHAAPRAANA BAYANNA 3 102 201 TagConsonantTagsc:Sinh හ U+0DC4 blocked
ම U+0DB8 SINHALA LETTER MAYANNA 3 102 201 TagConsonantTagsc:Sinh
ඹ U+0DB9 SINHALA LETTER AMBA BAYANNA 3 102 201 TagSannjakaTagsc:Sinh ඔ U+0D94 blocked
ය U+0DBA SINHALA LETTER YAYANNA 3 102 201 TagConsonantTagsc:Sinh
ර U+0DBB SINHALA LETTER RAYANNA 3 102 201 TagConsonantTagsc:Sinh
ල U+0DBD SINHALA LETTER DANTAJA LAYANNA 3 102 201 TagConsonantTagsc:Sinh
ව U+0DC0 SINHALA LETTER VAYANNA 3 102 201 TagConsonantTagsc:Sinh ච U+0DA0 blocked
ශ U+0DC1 SINHALA LETTER TAALUJA SAYANNA 3 102 201 TagConsonantTagsc:Sinh
ෂ U+0DC2 SINHALA LETTER MUURDHAJA SAYANNA 3 102 201 TagConsonantTagsc:Sinh
ස U+0DC3 SINHALA LETTER DANTAJA SAYANNA 3 102 201 TagConsonantTagsc:Sinh ඝ U+0D9D blocked
සෘ U+0DC3U+0DD8 sequence of 2 SINHALA LETTER DANTAJA SAYANNA + SINHALA VOWEL SIGN GAETTA-PILLA 3 102 201 variant of IRUYANNA ඍ U+0D8D blocked ඝෘ U+0D9D + U+0DD8 blocked
හ U+0DC4 SINHALA LETTER HAYANNA 3 102 201 TagConsonantTagsc:Sinh භ U+0DB7 blocked
ළ U+0DC5 SINHALA LETTER MUURDHAJA LAYANNA 3 102 201 TagConsonantTagsc:Sinh
ෆ U+0DC6 SINHALA LETTER FAYANNA 3 102 201 TagConsonantTagsc:Sinh
් U+0DCA SINHALA SIGN AL-LAKUNA 3 102 201 TagHalantTagsc:Sinh Contextfollows-C
ා U+0DCF SINHALA VOWEL SIGN AELA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ැ U+0DD0 SINHALA VOWEL SIGN KETTI AEDA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෑ U+0DD1 SINHALA VOWEL SIGN DIGA AEDA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ි U+0DD2 SINHALA VOWEL SIGN KETTI IS-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ී U+0DD3 SINHALA VOWEL SIGN DIGA IS-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ු U+0DD4 SINHALA VOWEL SIGN KETTI PAA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ූ U+0DD6 SINHALA VOWEL SIGN DIGA PAA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෘ U+0DD8 SINHALA VOWEL SIGN GAETTA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෙ U+0DD9 SINHALA VOWEL SIGN KOMBUVA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ේ U+0DDA SINHALA VOWEL SIGN DIGA KOMBUVA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෛ U+0DDB SINHALA VOWEL SIGN KOMBU DEKA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ො U+0DDC SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෝ U+0DDD SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෞ U+0DDE SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J
ෲ U+0DF2 SINHALA VOWEL SIGN DIGA GAETTA-PILLA 3 102 201 TagMatraTagsc:Sinh Contextfollows-C-or-J

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.

9 variant sets, containing 22 variants.

Character classes

Named sets of code points that the rules below refer to.

NameDefinition
C {tag Consonant} Any Sinhala consonant
V {tag Vowel} Any Sinhala independent vowel
M {tag Matra} Any Sinhala vowel sign (matra)
J {tag Sannjaka} Any Sinhala Sannjaka
H {tag Halant} The Sinhala Al-Lakuna (Halant)
B {tag Anusvara} The Sinhala Anusvara
X {tag Visarga} The Sinhala Visarga

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)

follows-C

Section 7, WLE 1: Halanta/Virama must be preceded by C

(?<= {C} ) ◆
Structure
  • (?<= {C} ) look-behind
    • {C} class
  • ◆ anchor
Referenced by 1 definition
  • context of U+0DCA

follows-C-or-J

Section 7, WLE 2: Matra must be preceded by C or J

(?<= ( {C} │ {J} ) ) ◆
Structure
  • (?<= ( {C} │ {J} ) ) look-behind
    • ( {C} │ {J} ) choice
      • {C} class
      • {J} class
  • ◆ anchor
Referenced by 15 definitions
  • context of U+0DCF
  • context of U+0DD0
  • context of U+0DD1
  • context of U+0DD2
  • context of U+0DD3
  • context of U+0DD4
  • context of U+0DD6
  • context of U+0DD8
  • context of U+0DD9
  • context of U+0DDA
  • context of U+0DDB
  • context of U+0DDC
  • and 3 more

follows-V-C-or-M

Section 7, WLE 3: Visarga must be preceded by V, C or M

(?<= ( {V} │ {C} │ {M} ) ) ◆
Structure
  • (?<= ( {V} │ {C} │ {M} ) ) look-behind
    • ( {V} │ {C} │ {M} ) choice
      • {V} class
      • {C} class
      • {M} class
  • ◆ anchor
Referenced by 1 definition
  • context of U+0D83

follows-V-C-J-or-M

Section 7, WLE 4: Anusvara (Bindu) must be preceded by V, C, J or M

(?<= ( {V} │ {C} │ {J} │ {M} ) ) ◆
Structure
  • (?<= ( {V} │ {C} │ {J} │ {M} ) ) look-behind
    • ( {V} │ {C} │ {J} │ {M} ) choice
      • {V} class
      • {C} class
      • {J} class
      • {M} class
  • ◆ anchor
Referenced by 1 definition
  • context of U+0D82

followed-by-H-or-M

variants are undefined preceding a Halant or Matra

◆ (?= ( {H} │ {M} ) )
Structure
  • ◆ anchor
  • (?= ( {H} │ {M} ) ) look-ahead
    • ( {H} │ {M} ) choice
      • {H} class
      • {M} class
Referenced by 10 definitions
  • negative variant condition on U+0D8D
  • negative variant condition on U+0D8D
  • negative variant condition on U+0D91
  • negative variant condition on U+0D93
  • negative variant condition on U+0D9D U+0DD8
  • negative variant condition on U+0D9D U+0DD8
  • negative variant condition on U+0DB5
  • negative variant condition on U+0DB5 U+0DD9
  • negative variant condition on U+0DC3 U+0DD8
  • negative variant condition on U+0DC3 U+0DD8

followed-by-B-X-H-or-M

variants are undefined preceding an Anusvara, Visarga, Halant or Matra

◆ (?= ( {B} │ {X} │ {H} │ {M} ) )
Structure
  • ◆ anchor
  • (?= ( {B} │ {X} │ {H} │ {M} ) ) look-ahead
    • ( {B} │ {X} │ {H} │ {M} ) choice
      • {B} class
      • {X} class
      • {H} class
      • {M} class
Referenced by 2 definitions
  • negative variant condition on U+0D92
  • negative variant condition on U+0DB5 U+0DCA

Actions

Actions are evaluated in the order shown. The first action whose conditions match determines the disposition of the label.

Actions in precedence order
# 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 blocked any variant is blocked any variant label containing blocked variants is blocked MSR default
4 allocatable all variants are allocatable variant labels with all variants allocatable are allocatable MSR default
5 valid any label default catch all (default action) MSR default

References

RefSource
3 The Unicode Standard, Version 3.0
Any code point originally encoded in Unicode Version 3.0
102 Disanayaka, JB. 2006. Sinhala Akshara Vicharaya (Sinhala Graphology), Sumitha Publishers, Kalubovila. ISBN: 955-1146-44-1
201 Omniglot: The on-line encyclopedia of writing system and Languages, “Sinhala” https://www.omniglot.com/writing/sinhala.htm