Javanese
Second-Level Reference Label Generation Rules, 13 August 2026 Current
Summary
| Version | 1 — Second Level Reference LGR |
|---|---|
| Date | |
| Tag |
und-Java (Javanese)
|
| Unicode | 16.0.0 |
| Source file | lgr-second-level-javanese-script-13aug26-en.xml (38.0kb) |
Description
INSTRUCTIONS
- These instructions cover how to adopt an LGR based on this reference LGR for a given zone and how to prepare the file for deposit in the IANA Repository of IDN Practices.
- As described in the IANA procedure (https://www.iana.org/help/idn-repository-procedure) an
LGR MUST contain the following elements in its header:
- Script or Language Designator (see below for guidance)
- Version Number (this must increase with each amendment to the LGR, even if the updates are limited to the header itself)
- Effective Date (the date at which the policy becomes applicable in operational use)
- Registry Contact Details (contact name, email address, and/or phone number)
- The following information is optional:
- Document creation date
- Applicable Domain(s)
- Changes made to the Reference LGR before adopting
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 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.
Read the rest of the description Show less
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]
Reference Label Generation Rules for the Javanese Script
Overview
This document specifies a set of Label Generation Rules (LGR) for the Javanese script using a script-specific repertoire for the second level domain or domains identified above. The format of this file follows [RFC 7940]. This LGR is adapted from the “Reference LGR for the Second Level for the Javanese Script” [Ref-LGR-und-Java]; for details, see Change History below.
Standalone LGR: This LGR is designed to be used in a zone that does not cater to IDNs other than those valid under this LGR. This LGR lacks features that would allow its use in the context of another LGR in the same zone, and it may contain other features incompatible with such use.
For details and additional background on the Javanese script, see "Javanese Script Reference Label Generation Rules for Second-Level Domain Names" [Proposal-Javanese].
Repertoire
The repertoire for the Javanese Script contains 52 characters as defined in Section 5.1, “Included Code Points” in [Proposal-Javanese].
The code point U+A9B3 JAVANESE SIGN CECAK TELU is defined implicitly as part of six Aksara-Rekan sequences defined in Section 7.3 of [Proposal-Javanese]. These sequences function like consonants. In addition, there are 20 sequences defined as part of the Aksara Murda and Aksara Wyanjana, two of which also contain U+A9B3 JAVANESE SIGN CECAK TELU, for a total of 26 sequences.
For the second level, the repertoire has been augmented with U+002D HYPHEN-MINUS, for a total of 78 repertoire elements.
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.
Excluded Characters
The following 23 code points from the Javanese block in [Unicode 16.0.0] have been excluded in the Reference LGR repertoire due to a variety of reasons; some are used only in Sanskrit or ancient manuscripts. The digits are excluded because many of them are homographs of letters.
- U+A980 JAVANESE SIGN PANYANGGA
- U+A985 JAVANESE LETTER I KAWI
- U+A987 JAVANESE LETTER II
- U+A98B JAVANESE LETTER NGA LELET RASWADI
- U+A996 JAVANESE LETTER CA MURDA
- U+A998 JAVANESE LETTER NYA MURDA
- U+A999 JAVANESE LETTER JA MAHAPRANA
- U+A99C JAVANESE LETTER TTA MAHAPRANA
- U+A99E JAVANESE LETTER DDA MAHAPRANA
- U+A9AC JAVANESE LETTER RA AGUNG
- U+A9B5 JAVANESE VOWEL SIGN TOLONG
- U+A9B7 JAVANESE VOWEL SIGN WULU MELIK
- U+A9B9 JAVANESE VOWEL SIGN SUKU MENDUT
- U+A9D0 JAVANESE DIGIT ZERO
- U+A9D1 JAVANESE DIGIT ONE
- U+A9D2 JAVANESE DIGIT TWO
- U+A9D3 JAVANESE DIGIT THREE
- U+A9D4 JAVANESE DIGIT FOUR
- U+A9D5 JAVANESE DIGIT FIVE
- U+A9D6 JAVANESE DIGIT SIX
- U+A9D7 JAVANESE DIGIT SEVEN
- U+A9D8 JAVANESE DIGIT EIGHT
- U+A9D9 JAVANESE DIGIT NINE
See Section 5.2, “Excluded Code Point” in [Proposal-Javanese].
Variants
The LGR defines a number of in-script variants. The variants are based on linguistic and orthographic analysis of the Javanese script, as well as contemporary and historical usage patterns. There are two sets of consonants in the Javanese script, Aksara Murda and Aksara Wyanjana, which are used to represent the same set of sounds but differ in whether they are used in a formal or informal context. Each set also includes ten sequences. Corresponding members of these sets are otherwise interchangeable; if any label containing one of these variants is selected first, all other equivalent variant labels must be blocked.
Digit Variants: The Javanese reference LGR does not include native digits, so there are no semantic variants defined.
Should an extension be contemplated that adds native digits, these might require variant relations. At the same time, however, any native digits would normally be semantic variants of the ASCII digits. In any zone containing multiple scripts, these two types of variant relations for digits may lead to complications once transitivity is applied.
This LGR does not define allocatable variants.
The specification of variants in this LGR follows the guidelines in [RFC 8228].
Character Classes
The LGR defines the following character classes:
- Consonants — The Javanese script is an abugida, a segmental writing system in which consonant–vowel sequences are written as units. Each consonant, like in other Brahmi scripts, constitutes a syllable with an inherent vowel /a/ that could be modified by following it with a Dependent Vowel Sign.
- Medial Consonants — A medial consonant functions to represent a semivowel sound that occurs within a single syllable.
- Independent Vowels — The independent vowels are mainly used for personal names and languages other than Javanese, for example, Indonesian, Sundanese, and English. In writing Javanese text, the independent vowel is usually replaced with the character U+A9B2 followed by the appropriate dependent vowel.
- Dependent Vowels — Dependent vowels are used to modify the inherent vowel of a consonant or independent vowel.
- Signs — This class collects various signs used in the Javanese script.
- Common-digits — the set of ASCII digits.
Section 5.1 in [Proposal-Javanese] lists "Category" values for both single code points and sequences. While the category values for single code points can be expressed as "tag" attributes in the LGR's XML source file, the desire to treat the sequences like consonants has to be expressed explicitly in context or WLE rules.
Whole Label Evaluation (WLE) and Context Rules
Common Rules
By default, the LGR includes the rules and actions to implement the following restrictions mandated by the IDNA protocol. They are marked with ⍟.
- Hyphen Restrictions — restrictions on the allowable placement of hyphens (no leading/ending hyphen and no hyphen in positions 3 and 4). These restrictions are described in Section 4.2.3.1 of RFC 5891 [5891]. They are implemented here as a context rule on U+002D (-) HYPHEN-MINUS.
- Leading Combining Marks — restrictions on the allowable placement of combining marks (no leading combining mark). This rule is described in Section 4.2.3.2 of RFC 5891 [5891].
Script-specific rules in this LGR already prevent combining marks in leading position, making the “leading-combining-mark” rule technically redundant. It is retained here for consistency.
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].
Script-specific Context Rules
The LGR defines the following script-specific context rules applicable to various classes of characters.
- follows-A9BA-or- A9BB — U+A9B4 VOWEL SIGN TARUNG must follow either U+A9BA JAVANESE VOWEL SIGN TALING or U+A9BB JAVANESE VOWEL SIGN DIRGA MURE.
- follows-cons-askara-rekan-med-vowel-dep — Various signs (U+A981, U+A982, U+A983) must follow a consonant, an aksara rekan sequence, a medial consonant, an independent vowel, or a dependent vowel.
- follows-cons-aksara-rekan-med-vowel — A dependent vowel other than U+A9B4 must follow a consonant, an aksara rekan sequence, a medial consonant, or an independent vowel.
- follows-cons-aksara-rekan-vowel — U+A9C0 pangkon must follow a consonant, an aksara rekan sequence, or an independent vowel.
- follows-cons-aksara-rekan — Medial consonants must follow a consonant or an aksara rekan sequence.
Any of the six sequences ending in U+A9B3, the so-called aksara rekan sequences, also act like consonants in the context rules. (This also applies in the two cases, where a longer sequence ends with an aksara-rekan subsequence.) See item 7 in Section 7.4, the [Proposal-Javanese]. However, as they cannot be represented by a class, they are represented by the rule:
- aksara-rekan — a rule representing the six Aksara Rekan sequences defined in the repertoire and referenced by the other rules.
Script-specific Whole Label Rules
The LGR defines the following script-specific whole label rules:
- pangkon-disallowed — According to Section 7.1 in [Proposal-Javanese], the pattern (consonant/independent vowel + U+A9C0 + consonant/independent vowel + U+A9C0 + consonant/independent vowel) is prohibited, as it would result in below-2-base stacking.
This rule is implemented as a whole-label rule that triggers a corresponding action, invalidating any label containing the full pattern. As this pattern also occurs within any triple-stack pattern, triple stacking is invalidated at the same time. For a WLE rule, it is immaterial whether the code points are part of a sequence or not; therefore, the special handling of sequences in Section 7.4 of [Proposal-Javanese] is implicit.
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].
Javanese-specific actions
The pangkon restriction rule triggers a Javanese-specific action that invalidates any original or variant labels not satisfying the constraints. See Section 7, “Whole Label Evaluation (WLE) Rules” in [Proposal-Javanese].
Methodology
This Second Level Reference LGR for the Javanese Script was developed based on the proposal from the Javanese Script Reference LGR Generation Panel and edited by Asmus Freytag based on community feedback and public review. See [Proposal-Javanese] for methodology and contributors.
Changes from Version Dated 13 August 2026
This is a placeholder to document any changes applied by the registry operator when adopting the reference LGR. If no change has been noted, the LGR is the same as the Second Level Reference LGR for the Javanese Script [Ref-LGR-und-Java] without normative changes.
References
This document cites the following general references.
- [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, 13 August 2026), https://www.icann.org/en/system/files/files/level2-lgr-overview-summary-13aug26-en.pdf
- [Proposal-Javanese]
- “Javanese Script Reference Label Generation Rules Reference for Second Level Domain Names”, 13 August 2026, https://www.icann.org/sites/default/files/packages/lgr/proposal-javanese-second-level-13aug26-en.pdf
- [Ref-LGR-und-Java]
- ICANN, Second Level Reference Label Generation Rules for the Javanese Script (und-Java), 13 August 2026 (XML) https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-javanese-script-13aug26-en.xml non-normative HTML presentation: https://www.icann.org/sites/default/files/packages/lgr/lgr-second-level-javanese-script-13aug26-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
- [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 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/
References [0] to [10] refer to the Unicode Standard versions in which the corresponding code points were initially encoded. References [110] and above correspond to sources given in [Proposal-Javanese] justifying the inclusion of the corresponding code points. Entries in the table may have multiple source reference values. In the listing of whole label evaluation and context rules, reference [5891] indicates the source for common rules.
Repertoire
| Glyph | Code point | Tags and context | Variants |
|---|---|---|---|
| - | U+002D HYPHEN-MINUS 0 110 111 112 113 HYPHEN-MINUS |
|
|
| ꦁ | U+A981 JAVANESE SIGN CECAK 10 110 111 112 113 JAVANESE SIGN CECAK = anusvara |
|
|
| ꦂ | U+A982 JAVANESE SIGN LAYAR 10 110 111 112 113 JAVANESE SIGN LAYAR = final r |
|
|
| ꦂꦟ | U+A982U+A99F sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER NA MURDA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER NA MURDA |
|
ꦂꦤ
U+A982 + U+A9A4
blocked
rna
|
| ꦂꦠ | U+A982U+A9A0 sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER TA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER TA |
|
ꦂꦡ
U+A982 + U+A9A1
blocked
rta
|
| ꦂꦡ | U+A982U+A9A1 sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER TA MURDA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER TA MURDA |
|
ꦂꦠ
U+A982 + U+A9A0
blocked
rta
|
| ꦂꦤ | U+A982U+A9A4 sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER NA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER NA |
|
ꦂꦟ
U+A982 + U+A99F
blocked
rna
|
| ꦂꦰ | U+A982U+A9B0 sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER SA MAHAPRANA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER SA MAHAPRANA |
|
ꦂꦱ
U+A982 + U+A9B1
blocked
rsa
|
| ꦂꦱ | U+A982U+A9B1 sequence of 2 JAVANESE SIGN LAYAR + JAVANESE LETTER SA 113 JAVANESE SIGN LAYAR + JAVANESE LETTER SA |
|
ꦂꦰ
U+A982 + U+A9B0
blocked
rsa
|
| ꦃ | U+A983 JAVANESE SIGN WIGNYAN 10 110 111 112 113 JAVANESE SIGN WIGNYAN = visarga |
|
|
| ꦄ | U+A984 JAVANESE LETTER A 10 110 111 112 113 JAVANESE LETTER A |
|
|
| ꦆ | U+A986 JAVANESE LETTER I 10 110 111 112 113 JAVANESE LETTER I |
|
|
| ꦈ | U+A988 JAVANESE LETTER U 10 110 111 112 113 JAVANESE LETTER U |
|
|
| ꦉ | U+A989 JAVANESE LETTER PA CEREK 10 110 111 112 113 JAVANESE LETTER PA CEREK = vocalic r; rě in Javanese |
|
|
| ꦊ | U+A98A JAVANESE LETTER NGA LELET 10 110 111 112 113 JAVANESE LETTER NGA LELET = vocalic l; lě in Javanese |
|
|
| ꦌ | U+A98C JAVANESE LETTER E 10 110 111 112 113 JAVANESE LETTER E |
|
|
| ꦍ | U+A98D JAVANESE LETTER AI 10 112 113 JAVANESE LETTER AI |
|
|
| ꦎ | U+A98E JAVANESE LETTER O 10 110 111 112 113 JAVANESE LETTER O |
|
|
| ꦏ | U+A98F JAVANESE LETTER KA 10 110 111 112 113 JAVANESE LETTER KA |
|
ꦑ
U+A991
blocked
|
| ꦏ꦳ | U+A98FU+A9B3 sequence of 2 JAVANESE LETTER KA + JAVANESE SIGN CECAK TELU 110 111 113 JAVANESE LETTER KA + JAVANESE SIGN CECAK TELU | ||
| ꦐ | U+A990 JAVANESE LETTER KA SASAK 10 113 JAVANESE LETTER KA SASAK = qa |
|
|
| ꦑ | U+A991 JAVANESE LETTER KA MURDA 10 110 111 112 113 JAVANESE LETTER KA MURDA = kha |
|
ꦏ
U+A98F
blocked
|
| ꦒ | U+A992 JAVANESE LETTER GA 10 110 111 112 113 JAVANESE LETTER GA |
|
ꦓ
U+A993
blocked
Ga
|
| ꦒ꦳ | U+A992U+A9B3 sequence of 2 JAVANESE LETTER GA + JAVANESE SIGN CECAK TELU 110 111 113 JAVANESE LETTER GA + JAVANESE SIGN CECAK TELU | ||
| ꦓ | U+A993 JAVANESE LETTER GA MURDA 10 110 111 112 113 JAVANESE LETTER GA MURDA = gha |
|
ꦒ
U+A992
blocked
Ga
|
| ꦔ | U+A994 JAVANESE LETTER NGA 10 110 111 112 113 JAVANESE LETTER NGA |
|
|
| ꦕ | U+A995 JAVANESE LETTER CA 10 110 111 112 113 JAVANESE LETTER CA |
|
|
| ꦗ | U+A997 JAVANESE LETTER JA 10 110 111 112 113 JAVANESE LETTER JA |
|
|
| ꦗ꦳ | U+A997U+A9B3 sequence of 2 JAVANESE LETTER JA + JAVANESE SIGN CECAK TELU 110 111 113 JAVANESE LETTER JA + JAVANESE SIGN CECAK TELU | ||
| ꦚ | U+A99A JAVANESE LETTER NYA 10 110 111 112 113 JAVANESE LETTER NYA |
|
|
| ꦚ꧀ꦕ | U+A99AU+A9C0U+A995 sequence of 3 JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER CA 113 JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER CA |
ꦤ꧀ꦕ
U+A9A4 + U+A9C0 + U+A995
blocked
Nca
|
|
| ꦚ꧀ꦗ | U+A99AU+A9C0U+A997 sequence of 3 JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER JA 113 JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER JA |
ꦤ꧀ꦗ
U+A9A4 + U+A9C0 + U+A997
blocked
Nja
|
|
| ꦚ꧀ꦗ꦳ | U+A99AU+A9C0U+A997U+A9B3 sequence of 4 JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER JA + JAVANESE SIGN CECAK TELU 113 |
ꦤ꧀ꦗ꦳
U+A9A4 + U+A9C0 + U+A997 + U+A9B3
blocked
Nza
|
|
| ꦛ | U+A99B JAVANESE LETTER TTA 10 110 111 112 113 JAVANESE LETTER TTA |
|
|
| ꦝ | U+A99D JAVANESE LETTER DDA 10 112 113 JAVANESE LETTER DDA |
|
ꦣ
U+A9A3
blocked
Dha
|
| ꦟ | U+A99F JAVANESE LETTER NA MURDA 10 110 111 112 113 JAVANESE LETTER NA MURDA = nna |
|
ꦤ
U+A9A4
blocked
Na
|
| ꦟ꧀ꦛ | U+A99FU+A9C0U+A99B sequence of 3 JAVANESE LETTER NA MURDA + JAVANESE PANGKON + JAVANESE LETTER TTA 113 JAVANESE LETTER NA MURDA + JAVANESE PANGKON + JAVANESE LETTER TTA |
ꦤ꧀ꦛ
U+A9A4 + U+A9C0 + U+A99B
blocked
ntha
|
|
| ꦟ꧀ꦝ | U+A99FU+A9C0U+A99D sequence of 3 JAVANESE LETTER NA MURDA + JAVANESE PANGKON + JAVANESE LETTER DDA 113 JAVANESE LETTER NA MURDA + JAVANESE PANGKON + JAVANESE LETTER DDA |
ꦤ꧀ꦝ
U+A9A4 + U+A9C0 + U+A99D
blocked
ndha
|
|
| ꦠ | U+A9A0 JAVANESE LETTER TA 10 110 111 112 113 JAVANESE LETTER TA |
|
ꦡ
U+A9A1
blocked
Ta
|
| ꦡ | U+A9A1 JAVANESE LETTER TA MURDA 10 110 111 112 113 JAVANESE LETTER TA MURDA = tha |
|
ꦠ
U+A9A0
blocked
Ta
|
| ꦢ | U+A9A2 JAVANESE LETTER DA 10 110 111 112 113 JAVANESE LETTER DA |
|
|
| ꦢ꦳ | U+A9A2U+A9B3 sequence of 2 JAVANESE LETTER DA + JAVANESE SIGN CECAK TELU 110 111 113 JAVANESE LETTER DA + JAVANESE SIGN CECAK TELU | ||
| ꦣ | U+A9A3 JAVANESE LETTER DA MAHAPRANA 10 110 111 112 113 JAVANESE LETTER DA MAHAPRANA = dha |
|
ꦝ
U+A99D
blocked
Dha
|
| ꦤ | U+A9A4 JAVANESE LETTER NA 10 110 111 112 113 JAVANESE LETTER NA |
|
ꦟ
U+A99F
blocked
Na
|
| ꦤ꧀ꦕ | U+A9A4U+A9C0U+A995 sequence of 3 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER CA 113 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER CA |
ꦚ꧀ꦕ
U+A99A + U+A9C0 + U+A995
blocked
Nca
|
|
| ꦤ꧀ꦗ | U+A9A4U+A9C0U+A997 sequence of 3 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER JA 113 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER JA |
ꦚ꧀ꦗ
U+A99A + U+A9C0 + U+A997
blocked
Nja
|
|
| ꦤ꧀ꦗ꦳ |
U+A9A4U+A9C0U+A997U+A9B3
sequence of 4
JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER JA + JAVANESE SIGN CECAK TELU
113
|
ꦚ꧀ꦗ꦳
U+A99A + U+A9C0 + U+A997 + U+A9B3
blocked
Nza
|
|
| ꦤ꧀ꦛ | U+A9A4U+A9C0U+A99B sequence of 3 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER TTA 113 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER TTA |
ꦟ꧀ꦛ
U+A99F + U+A9C0 + U+A99B
blocked
ntha
|
|
| ꦤ꧀ꦝ | U+A9A4U+A9C0U+A99D sequence of 3 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER DDA 113 JAVANESE LETTER NA + JAVANESE PANGKON + JAVANESE LETTER DDA |
ꦟ꧀ꦝ
U+A99F + U+A9C0 + U+A99D
blocked
ndha
|
|
| ꦥ | U+A9A5 JAVANESE LETTER PA 10 110 111 112 113 JAVANESE LETTER PA |
|
ꦦ
U+A9A6
blocked
Pa
|
| ꦥ꦳ | U+A9A5U+A9B3 sequence of 2 JAVANESE LETTER PA + JAVANESE SIGN CECAK TELU 110 111 113 JAVANESE LETTER PA + JAVANESE SIGN CECAK TELU | ||
| ꦦ | U+A9A6 JAVANESE LETTER PA MURDA 10 110 111 112 113 JAVANESE LETTER PA MURDA = pha |
|
ꦥ
U+A9A5
blocked
Pa
|
| ꦧ | U+A9A7 JAVANESE LETTER BA 10 110 111 112 113 JAVANESE LETTER BA |
|
ꦨ
U+A9A8
blocked
Ba
|
| ꦨ | U+A9A8 JAVANESE LETTER BA MURDA 10 110 111 112 113 JAVANESE LETTER BA MURDA =bha |
|
ꦧ
U+A9A7
blocked
Ba
|
| ꦩ | U+A9A9 JAVANESE LETTER MA 10 110 111 112 113 JAVANESE LETTER MA |
|
|
| ꦪ | U+A9AA JAVANESE LETTER YA 10 110 111 112 113 JAVANESE LETTER YA |
|
|
| ꦫ | U+A9AB JAVANESE LETTER RA 10 110 111 112 113 JAVANESE LETTER RA |
|
|
| ꦭ | U+A9AD JAVANESE LETTER LA 10 110 111 112 113 JAVANESE LETTER LA |
|
|
| ꦮ | U+A9AE JAVANESE LETTER WA 10 110 111 112 113 JAVANESE LETTER WA |
|
|
| ꦮ꦳ | U+A9AEU+A9B3 sequence of 2 JAVANESE LETTER WA + JAVANESE SIGN CECAK TELU 110 113 JAVANESE LETTER WA + JAVANESE SIGN CECAK TELU | ||
| ꦯ | U+A9AF JAVANESE LETTER SA MURDA 10 110 111 112 113 JAVANESE LETTER SA MURDA = sha |
|
ꦰ
U+A9B0
blocked
Sa
ꦱ
U+A9B1
blocked
Sa
|
| ꦰ | U+A9B0 JAVANESE LETTER SA MAHAPRANA 10 112 113 JAVANESE LETTER SA MAHAPRANA |
|
ꦯ
U+A9AF
blocked
Sa
ꦱ
U+A9B1
blocked
Sa
|
| ꦰ꧀ꦛ | U+A9B0U+A9C0U+A99B sequence of 3 JAVANESE LETTER SA MAHAPRANA + JAVANESE PANGKON + JAVANESE LETTER TTA 113 JAVANESE LETTER SA MAHAPRANA + JAVANESE PANGKON + JAVANESE LETTER TTA |
ꦱ꧀ꦛ
U+A9B1 + U+A9C0 + U+A99B
blocked
stha
|
|
| ꦰ꧀ꦝ | U+A9B0U+A9C0U+A99D sequence of 3 JAVANESE LETTER SA MAHAPRANA + JAVANESE PANGKON + JAVANESE LETTER DDA 113 JAVANESE LETTER SA MAHAPRANA + JAVANESE PANGKON + JAVANESE LETTER DDA |
ꦱ꧀ꦝ
U+A9B1 + U+A9C0 + U+A99D
blocked
sdha
|
|
| ꦱ | U+A9B1 JAVANESE LETTER SA 10 110 111 112 113 JAVANESE LETTER SA |
|
ꦯ
U+A9AF
blocked
Sa
ꦰ
U+A9B0
blocked
Sa
|
| ꦱ꧀ꦛ | U+A9B1U+A9C0U+A99B sequence of 3 JAVANESE LETTER SA + JAVANESE PANGKON + JAVANESE LETTER TTA 113 JAVANESE LETTER SA + JAVANESE PANGKON + JAVANESE LETTER TTA |
ꦰ꧀ꦛ
U+A9B0 + U+A9C0 + U+A99B
blocked
stha
|
|
| ꦱ꧀ꦝ | U+A9B1U+A9C0U+A99D sequence of 3 JAVANESE LETTER SA + JAVANESE PANGKON + JAVANESE LETTER DDA 113 JAVANESE LETTER SA + JAVANESE PANGKON + JAVANESE LETTER DDA |
ꦰ꧀ꦝ
U+A9B0 + U+A9C0 + U+A99D
blocked
sdha
|
|
| ꦲ | U+A9B2 JAVANESE LETTER HA 10 110 111 112 113 JAVANESE LETTER HA |
|
|
| ꦴ | U+A9B4 JAVANESE VOWEL SIGN TARUNG 10 110 111 112 113 JAVANESE VOWEL SIGN TARUNG |
|
|
| ꦶ | U+A9B6 JAVANESE VOWEL SIGN WULU 10 110 111 112 113 JAVANESE VOWEL SIGN WULU |
|
|
| ꦸ | U+A9B8 JAVANESE VOWEL SIGN SUKU 10 110 111 112 JAVANESE VOWEL SIGN SUKU |
|
|
| ꦺ | U+A9BA JAVANESE VOWEL SIGN TALING 10 110 111 112 JAVANESE VOWEL SIGN TALING |
|
|
| ꦻ | U+A9BB JAVANESE VOWEL SIGN DIRGA MURE 10 112 JAVANESE VOWEL SIGN DIRGA MURE |
|
|
| ꦼ | U+A9BC JAVANESE VOWEL SIGN PEPET 10 110 111 112 JAVANESE VOWEL SIGN PEPET |
|
|
| ꦽ | U+A9BD JAVANESE CONSONANT SIGN KERET 10 110 111 112 JAVANESE CONSONANT SIGN KERET |
|
|
| ꦾ | U+A9BE JAVANESE CONSONANT SIGN PENGKAL 10 110 111 112 JAVANESE CONSONANT SIGN PENGKAL |
|
|
| ꦿ | U+A9BF JAVANESE CONSONANT SIGN CAKRA 10 110 111 112 JAVANESE CONSONANT SIGN CAKRA |
|
|
| ꧀ | U+A9C0 JAVANESE PANGKON 10 110 111 112 JAVANESE PANGKON |
|
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+A982 + U+A99F ↔ ꦂꦤ U+A982 + U+A9A4 blocked 101 rna ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦂꦠꦂꦡ
Source Direction Target Disposition Ref Comment ꦂꦠ U+A982 + U+A9A0 ↔ ꦂꦡ U+A982 + U+A9A1 blocked 101 rta ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦂꦰꦂꦱ
Source Direction Target Disposition Ref Comment ꦂꦰ U+A982 + U+A9B0 ↔ ꦂꦱ U+A982 + U+A9B1 blocked 101 rsa ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦚ꧀ꦕꦤ꧀ꦕ
Source Direction Target Disposition Ref Comment ꦚ꧀ꦕ U+A99A + U+A9C0 + U+A995 ↔ ꦤ꧀ꦕ U+A9A4 + U+A9C0 + U+A995 blocked 101 Nca ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦚ꧀ꦗꦤ꧀ꦗ
Source Direction Target Disposition Ref Comment ꦚ꧀ꦗ U+A99A + U+A9C0 + U+A997 ↔ ꦤ꧀ꦗ U+A9A4 + U+A9C0 + U+A997 blocked 101 Nja ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦚ꧀ꦗ꦳ꦤ꧀ꦗ꦳
Source Direction Target Disposition Ref Comment ꦚ꧀ꦗ꦳ U+A99A + U+A9C0 + U+A997 + U+A9B3 ↔ ꦤ꧀ꦗ꦳ U+A9A4 + U+A9C0 + U+A997 + U+A9B3 blocked 101 Nza ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦟ꧀ꦛꦤ꧀ꦛ
Source Direction Target Disposition Ref Comment ꦟ꧀ꦛ U+A99F + U+A9C0 + U+A99B ↔ ꦤ꧀ꦛ U+A9A4 + U+A9C0 + U+A99B blocked 101 ntha ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦟ꧀ꦝꦤ꧀ꦝ
Source Direction Target Disposition Ref Comment ꦟ꧀ꦝ U+A99F + U+A9C0 + U+A99D ↔ ꦤ꧀ꦝ U+A9A4 + U+A9C0 + U+A99D blocked 101 ndha ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦰ꧀ꦛꦱ꧀ꦛ
Source Direction Target Disposition Ref Comment ꦰ꧀ꦛ U+A9B0 + U+A9C0 + U+A99B ↔ ꦱ꧀ꦛ U+A9B1 + U+A9C0 + U+A99B blocked 101 stha ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
-
ꦰ꧀ꦝꦱ꧀ꦝ
Source Direction Target Disposition Ref Comment ꦰ꧀ꦝ U+A9B0 + U+A9C0 + U+A99D ↔ ꦱ꧀ꦝ U+A9B1 + U+A9C0 + U+A99D blocked 101 sdha ↔ declared both ways ⇆ both ways, different disposition each way → one direction only
Character classes
Named sets of code points that the rules below refer to.
| Name | Definition |
|---|---|
consonant |
{tag Consonant}
101
Any Javanese consonant
|
medial-cons |
{tag Medial-Consonant}
101
Any Javanese medial consonant
|
vowel |
{tag Vowel}
101
Any Javanese independent vowel
|
dep-vowel |
{tag Dependent-Vowel}
101
Any Javanese dependent vowel
|
sign |
({tag Sign} ∪ {tag Hyphen})
101
Any Javanese sign, plus Hyphen
|
virama |
{tag Virama}
101
The Javanese virama (Pangkon)
|
aksara-rekan-base |
[U+A98F U+A992 U+A997 U+A9A2 U+A9A5 U+A9AE]
The base consonants in aksara rekan sequences
|
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.
hyphen-minus-disallowed MSR default 5891
RFC 5891 restrictions on placement of U+002D HYPHEN-MINUS
( ( (?<= ^ ) ◆ ) │ ( ◆ (?= $ ) ) │ ( (?<= ^ . . U+002D ) ◆ ) )
Structure
-
( ( (?<= ^ ) ◆ ) │ ( ◆ (?= $ ) ) │ ( (?<= ^ . . U+002D ) ◆ ) )choice-
(?<= ^ ) ◆rule-
(?<= ^ )look-behind-
^start
-
-
◆anchor
-
-
◆ (?= $ )rule-
◆anchor -
(?= $ )look-ahead-
$end
-
-
-
(?<= ^ . . U+002D ) ◆rule-
(?<= ^ . . U+002D )look-behind-
^start -
.any -
.any -
U+002Dchar
-
-
◆anchor
-
-
Referenced by 1 definition
- negative context of U+002D
leading-combining-mark MSR default 5891
RFC 5891 restrictions on placement of 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)
pangkon-disallowed 101
To prevent below 2-Base stacking, a U+A9C0 PANGKON following a consonant or independent vowel must not occur twice in a row if then followed by a third consonant or independent vowel.
( ({consonant} ∪ {vowel}) {virama} ){2} ({consonant} ∪ {vowel})
Structure
-
({consonant} ∪ {vowel}) {virama}{2}rule-
({consonant} ∪ {vowel})union-
{consonant}class -
{vowel}class
-
-
{virama}class
-
-
({consonant} ∪ {vowel})union-
{consonant}class -
{vowel}class
-
Referenced by 1 definition
- action 2 (invalid)
aksara-rekan 101
The Aksara Rekan sequences
( {aksara-rekan-base} U+A9B3 )
Structure
-
{aksara-rekan-base} U+A9B3rule-
{aksara-rekan-base}class -
U+A9B3char
-
Referenced by 4 definitions
- rule follows-cons-aksara-rekan-med-vowel-dep
- rule follows-cons-aksara-rekan-med-vowel
- rule follows-cons-aksara-rekan-vowel
- rule follows-cons-aksara-rekan
follows-A9BA-or-A9BB 101
U+A9B4 must follow U+A9BA or U+A9BB.
(?<= [A9BA-A9BB] ) ◆
Structure
-
(?<= [A9BA-A9BB] )look-behind-
[A9BA-A9BB]class
-
-
◆anchor
Referenced by 1 definition
- context of U+A9B4
follows-cons-aksara-rekan-med-vowel-dep 101
Various signs (U+A981, U+A982, U+A983) must follow a consonant, an aksara rekan sequence, a medial consonant, an independent vowel, or a dependent vowel.
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {medial-cons} │ {vowel} │ {dep-vowel} ) ) ◆
Structure
-
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {medial-cons} │ {vowel} │ {dep-vowel} ) )look-behind-
( {consonant} │ ⟨aksara-rekan⟩ │ {medial-cons} │ {vowel} │ {dep-vowel} )choice-
{consonant}class -
⟨aksara-rekan⟩rule -
{medial-cons}class -
{vowel}class -
{dep-vowel}class
-
-
-
◆anchor
Referenced by 9 definitions
- context of U+A981
- context of U+A982
- context of U+A982 U+A99F
- context of U+A982 U+A9A0
- context of U+A982 U+A9A1
- context of U+A982 U+A9A4
- context of U+A982 U+A9B0
- context of U+A982 U+A9B1
- context of U+A983
follows-cons-aksara-rekan-med-vowel 101
A dependent vowel other than U+A9B4 must follow a consonant. an aksara rekan sequence, a medial consonant, or an independent vowel.
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} │ {medial-cons} ) ) ◆
Structure
-
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} │ {medial-cons} ) )look-behind-
( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} │ {medial-cons} )choice-
{consonant}class -
⟨aksara-rekan⟩rule -
{vowel}class -
{medial-cons}class
-
-
-
◆anchor
Referenced by 5 definitions
- context of U+A9B6
- context of U+A9B8
- context of U+A9BA
- context of U+A9BB
- context of U+A9BC
follows-cons-aksara-rekan-vowel 101
A U+A9C0 PANGKON must follow a consonant, an aksara rekan sequence, or an independent vowel.
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} ) ) ◆
Structure
-
(?<= ( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} ) )look-behind-
( {consonant} │ ⟨aksara-rekan⟩ │ {vowel} )choice-
{consonant}class -
⟨aksara-rekan⟩rule -
{vowel}class
-
-
-
◆anchor
Referenced by 1 definition
- context of U+A9C0
follows-cons-aksara-rekan 101
Medial consonants must follow a consonant or an aksara rekan sequence.
(?<= ( {consonant} │ ⟨aksara-rekan⟩ ) ) ◆
Structure
-
(?<= ( {consonant} │ ⟨aksara-rekan⟩ ) )look-behind-
( {consonant} │ ⟨aksara-rekan⟩ )choice-
{consonant}class -
⟨aksara-rekan⟩rule
-
-
-
◆anchor
Referenced by 3 definitions
- context of U+A9BD
- context of U+A9BE
- context of U+A9BF
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 5891 by default, labels with leading combining marks are invalid MSR default |
| 2 |
invalid
|
label matches pangkon-disallowed 101 any label with disallowed pangkon placement is invalid |
| 3 |
invalid
|
any variant is out-of-repertoire-var any variant label with a code point out of repertoire is invalid MSR default |
| 4 |
blocked
|
any variant is blocked any variant label containing blocked variants is blocked MSR default |
| 5 |
valid
|
any label default catch all (default action) MSR default |
References
| Ref | Source |
|---|---|
| 0 | The Unicode Standard, Version 1.1 |
| 10 | The Unicode Standard, Version 5.2 |
| 101 | Section 7.4, “Summary of the WLE rule” in “Javanese Script Reference Label Generation Rules for Second-Level Domain Names”, 13 August 2026, https://www.icann.org/en/system/files/files/proposal-javanese-second-level-13aug26-en.pdf |
| 110 | Darusuprapta. (2002). Pedoman Penulisan Aksara Jawa. Yayasan Pustaka Nusatama |
| 111 | Koemisi Kasusatran. (1926) Wawaton Panjeratipoen Temboeng Djawi Mawi Sastra Djawi Dalasan Angka. Landsdrukkerij |
| 112 | W.J.S. Purwadarminta. (1931). Serat Mardikawi. De Bliksem |
| 113 | Tim Kongres Aksara Jawa I. (2021). Tata Tulis Aksara Jawa. Dinas Kebudayaan (Kundha Kabudayan) Daerah Istimewa Yogyakarta |
| 5891 | RFC 5891, Internationalized Domain Names in Applications(IDNA): Protocol https://tools.ietf.org/html/rfc5891 |

JAVANESE LETTER NYA + JAVANESE PANGKON + JAVANESE LETTER JA + JAVANESE SIGN CECAK TELU; Sequence ending with Aksara Rekan