2024 September 10 (Announcement)
STATUS: This is a preliminary draft page for an upcoming release. Some details may be missing or incorrect, and some links may be wrong or broken. During the beta review period, feedback on errors will be helpful and appreciated.
This page summarizes the important changes for the Unicode Standard, Version 16.0.0.
This version supersedes all previous versions of the Unicode Standard.
A. Summary
Unicode 16.0 adds 5185 characters,
for a total of 154,998 characters.
The new additions include seven new scripts:
- Garay is a modern-use script from West Africa.
- Gurung Khema, Kirat Rai, Ol Onal and Sunuwar are four modern-use
scripts from Northeast India and Nepal.
- Todhri is an historic script used for Albanian.
- Tulu-Tigalari is an historic script from Southwest India.
Other character additions include seven new emoji characters plus 3,995 additional Egyptian Hieroglyphs and over 700 symbols from legacy computing environments.
In addition to new characters, new “Moji Jōhō Kiban” (文字情報基盤) Japanese source references have been added for over 36,000 CJK unified ideographs. These are reflected in the code charts for virtually all CJK unified ideograph blocks by additional representative glyphs in the “J” column.
New Data Files for Unicode 16.0
- DoNotEmit.txt. This is a new file that collects information about
characters or character sequences that should not be emitted or generated
in newly authored text and for which a suitable alternative
sequence exists. This data could be used by applications such as input methods
or autocorrect.
- Unikemet.txt. This data file provides property and other character
information in support of Egyptian hieroglyphs.
Synchronization
Several other important Unicode specifications have been updated for Version 16.0.
The following four Unicode Technical Standards are versioned in
synchrony with the Unicode Standard, because their data files cover the same repertoire.
All have been updated to Version 16.0:
Some of the changes in Version 16.0 and associated Unicode Technical Standards
may require modifications
to implementations. For more information, see the migration and modification sections of
UTS #10, UTS #39, UTS #46, and UTS #51.
See Sections D through H below for additional details regarding the changes in this version of
the Unicode Standard, its associated annexes, and the other synchronized Unicode specifications.
See the following resource links for general information about Unicode versions
and other information about the Unicode Standard and other publications
of the Unicode Consortium.
B. Technical Overview
Version 16.0 of the Unicode Standard consists of:
- The core specification
- The code charts (delta and archival) for this version
- The Unicode Standard Annexes
- The Unicode Character Database (UCD)
The core specification gives the general principles,
requirements for conformance, and guidelines for implementers. The
code charts show representative glyphs for all the Unicode
characters. The Unicode Standard Annexes supply detailed normative
information about particular aspects of the standard. The Unicode
Character Database supplies normative and informative data for
implementers to allow them to implement the Unicode Standard.
Core Specification
The core specification for Version 16.0 is available for browsing online
as per-chapter web pages. Because the full table of contents for the core specification is provided,
with interactive links, no separate bookmarks page is provided for this release,
nor are separate chapter links provided directly in this summary page
for the Unicode Standard.
Anchors for chapters, sections, tables, and figures in the core specification are
shown with the convention of a "#" in the left margin of the heading or caption.
Those anchors can be clicked on to provide custom bookmarks to any particular
portion of the text, down to the level of subsections. Numbering of sections has
been extended down to the subsection level, as well, to improve referenceabiity
of precise content.
The HTML version of the core specification is authoritative. However, for
convenience of reference, an archival
version of core specification is also available as
a single pdf. (12 MB)
Code Charts
Several sets of code charts are available. They serve different
purposes:
Chart Type |
Description |
Latest Code Charts |
These charts are always the most current
code charts available, and may be updated at any time. The charts are organized by
scripts and blocks for easy reference.
An online index by character name
is also provided. |
Delta Code Charts |
These charts show the
new blocks and any blocks in which characters were added
specifically for Unicode 16.0.0. The new characters and any major updates to the
representative glyphs are visually highlighted in these charts. |
Archival Code Charts |
These charts contain
the entire set of characters, names and representative glyphs at the time of publication of Unicode 16.0.0.
|
The delta and archival code charts are a stable part of this release of the Unicode Standard. They will never be updated.
Han Radical-Stroke Indices
There are a number of radical-stroke indices available to assist in
the lookup of Han ideographs in the code charts.
Index Type |
Description |
Interactive |
An interactive CJK character lookup page that supports lookup
either by code point or by radical and stroke values. |
IICore (3.8 MB) |
A static radical-stroke index PDF file limited to only the
IICore repertoire. (This RS index is seldom updated.) |
Unihan Core 2020 (8.2 MB) |
A static radical-stroke index PDF file limited to only the
Unihan
Core 2020 repertoire. (This RS index is seldom updated.) |
Complete (43 MB) |
A static radical-stroke index PDF file that covers the entire
CJK ideograph repertoire for Unicode 16.0. |
Complete |
A static data file that corresponds to the complete radical-stroke index for Unicode 16.0. |
The complete radical-stroke index is a stable part of this release of the Unicode Standard. It will never be updated.
Unicode Standard Annexes
STATUS: During the alpha review and beta review periods,
links to individual UAXes (or UTSes) point to the proposed update for that document, if any.
If no proposed update has been posted for the document, links point to the last published
version of the document, for reference.
Links to the individual Unicode Standard Annexes for this
version are available in
Section I, List of Components below. The summary list of significant changes
in the content of each Unicode Standard Annex for Version 16.0 can be found
in Section G, Changes in the Unicode Standard Annexes below.
Unicode Character Database
Data files
for Version 16.0 of
the Unicode Character Database are available. The ReadMe.txt in that directory provides a roadmap
to the functions of the various subdirectories.
Detailed documentation about the data files can be found in
UAX #44, Unicode Character Database.
Zipped versions of the UCD
for bulk download are available, as well.
Version References
Version 16.0.0 of the Unicode Standard
should be referenced as:
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/
The terms “Version 16.0” or “Unicode 16.0” are abbreviations for the full version reference, Version 16.0.0.
The citation and permalink for the latest published version of the Unicode Standard is:
The Unicode Consortium. The Unicode Standard.
https://www.unicode.org/versions/latest/
A complete specification of the contributory files for Unicode
16.0 is found below in Section I, List of Components.
For examples of how to cite particular portions of the Unicode Standard, see also the Reference Examples.
Errata
Errata incorporated into Unicode 16.0 are listed by date in
a separate table. For corrigenda and errata after the release of Unicode 16.0, see the list of current
Updates and Errata.
C. Stability Policy Update
No significant updates to the Character Encoding Stability Policies have occurred in the interval since the last release of the Unicode Standard.
D. Textual Changes and Character Additions
Changes in the Unicode Standard Annexes are listed in Section G.
Character Assignment Overview
5185 characters have been added.
Most character additions are in new blocks, but there are also character additions to a number of existing blocks. For details, see the delta code charts.
New Blocks
The following blocks are newly defined in Version 16.0:
Range |
Block Name |
105C0..105FF |
Todhri |
10D40..10D8F |
Garay |
11380..113FF |
Tulu-Tigalari |
116D0..116FF |
Myanmar Extended-C |
11BC0..11BFF |
Sunuwar |
13460..1355F |
Egyptian Hieroglyphs Extended-A |
16100..1613F |
Gurung Khema |
16D40..16D7F |
Kirat Rai |
1CC00..1CEBF |
Symbols for Legacy Computing Supplement |
1E5D0..1E5FF |
Ol Onal |
E. Conformance Changes
There are no new conformance requirements for the core specification in Unicode 16.0.
F. Changes in the Unicode Character Database
The detailed listing of all changes to the contributory data files of the Unicode Character Database
for Version 16.0 can be found in
UAX #44, Unicode Character Database.
The changes listed there include character additions and property revisions to existing characters that will affect implementations.
Some of the important impacts on implementations migrating from earlier versions of the standard are highlighted in
Section M.
G. Changes in the Unicode Standard Annexes
In Version 16.0, some of the Unicode Standard Annexes have had significant revisions. The most important of these changes are listed below. For the full details of all changes, see the Modifications section
of each UAX, linked directly from the following list of UAXes.
Unicode Standard Annex |
Changes |
UAX #9 Unicode Bidirectional Algorithm
|
Textual clarification was added to Section 3.3.2, Explicit Levels and Directions. |
UAX
#11 East Asian Width |
The summary was updated. ED7 in Section 4 was updated. Section 4.3 was added to explain that variation sequences can be considered when resolving ambiguous width. The last bullet in Section 5 was removed. The East_Asian_Width property value of some characters was changed from N to W. |
UAX
#14 Unicode Line Breaking Algorithm |
The rules for line breaking of numbers, hyphens, and Simplified Chinese quotation marks were improved, bringing UAX #14 into alignment with the ICU implementation. |
UAX
#15 Unicode Normalization Forms
|
A new section was added regarding normalization contexts that require
care in optimization. The conformance clause UAX15-C4 was clarified by
explicit reference to the previously implied Stream-Safe Text Process. |
UAX
#24 Unicode Script Property
|
Documentation was added regarding the change in order
of entries in ScriptExtensions.txt. |
UAX
#29 Unicode Text Segmentation |
The definition of GCB=V was updated to include Kirat Rai vowels. The
description of rules GB6 - GB8 was updated. |
UAX
#31 Unicode Identifiers and Syntax
|
A clarification was added that NFD must be applied before toNFKC_Casefold in order to correctly meet requirements UAX31-R4 and UAX-R5 with NFKC and full case folding. A reference to definition D147 of the Unicode Standard was added. |
UAX
#34 Unicode Named Character Sequences |
No significant changes in this version. |
UAX
#38 Unicode Han Database (Unihan) |
The relationship between the Equivalent_Unified_Ideograph property and the Unihan database was clarified. The sorting algorithm examples have been updated. A reference to the new RSIndex.txt data file was added. The delimiter of the kAccountingNumeric property was updated. Two new provisional properties, kFanqie and kZhuang, were added. The provisional kFrequency property was removed. The syntax and description of the kIRG_GSource and kPhonetic properties were updated. The description of the kPrimaryNumeric property was updated. The syntax and description of the kRSUnicode property were updated to accommodate a second non-Chinese simplified radical. |
UAX
#41 Common References for Unicode Standard Annexes |
All references were updated for Unicode 16.0. |
UAX
#42 Unicode Character Database in XML |
New code point attributes, values, and patterns were added for Unicode 16.0. |
UAX
#44
Unicode Character Database |
The documentation was updated to describe the changes to the UCD for
Version 16.0.
Documentation was added for the new property Modifier_Combining_Mark. A clarification
was added regarding the derivation of Numeric_Value from various Unihan properties. The definition of Indic_Conjunct_Break was updated for correctness. Clarifying
text was added regarding stability issues for aliases. |
UAX #45
U-Source Ideographs |
No significant changes in this version. |
UAX #50
Unicode Vertical Text Layout |
Section 3.2.4 and Table 2 were added to explain the tailoring of fullwidth
quotation marks. |
UAX #53
Unicode Arabic Mark Rendering |
This specification was changed from a UTR to a UAX for Unicode 16.0.
The image for Example 3 was corrected. An implementation note was added after
the description of the algorithm. A section was added for U+10EFC ARABIC COMBINING ALEF OVERLAY. |
UAX #57
Unicode Egyptian Hieroglyph Database (Unikemet) |
This UAX is new for Unicode 16.0, and describes the Unikemet.txt data
file for the UCD. |
H. Changes in Synchronized Unicode Technical Standards
There are also significant revisions in the Unicode Technical Standards whose
versions are synchronized with the Unicode Standard. The most important of these changes are listed below.
For the full details of all changes, see the Modifications section
of each UTS, linked directly from the following list of UTSes.
Unicode Technical Standard |
Changes |
UTS #10 Unicode Collation Algorithm |
Table 18 in appendix B was extended to include a CTT Name column. Text was added
to Appendix B to enable ISO/IEC 14651 to refer to the CTT tables published (starting
with Unicode 16.0) on the Unicode website. A note was added to Section 10.1.3, Implicit Weights, explaining how the CTT for ISO/IEC 14651 uses the implicit weight calculated in Table 16. |
UTS #39 Unicode Security Mechanisms |
The definitions of skeleton and confusable were updated. |
UTS #46 Unicode IDNA Compatibility Processing |
The handling of UseSTD3ASCIIRules was simplified. The derivation of the Base Valid
Set was updated, along with the derivation of the base exclusion set. Section 7
was removed. |
UTS #51 Unicode Emoji |
All references were updated for Unicode 16.0. |
I. List of Components
This section lists the components of Version 16.0.0 of the Unicode
Standard. The version numbering and the role of each component are
explained in
Versions of The Unicode Standard.
M. Implications for Migration
There are a significant number of changes in Unicode 16.0 which may impact implementations upgrading
to Version 16.0 from earlier versions of the standard. The most important of these are listed
and explained here, to help focus on the issues most likely to cause unexpected trouble during upgrades.
Core Specification Changes
The core specification has been completely revamped for Unicode 16.0.0.
The text has all been converted to HTML, and has been deployed on a self-contained
subsite. The text is no longer published
as per-chapter pdf files, but prior bookmarked links into the chapter files resolve
correctly to the new per-chapter HTML files. An archival pdf version of the entire core
specification has been produced for this release, and looks and behaves very similarly
to the corresponding archival pdf files for prior releases.
Script-related Changes
There are seven new scripts encoded in Unicode 16.0. Some of these scripts,
such as Tulu-Tigalari, have complex layout.
There are 3,995 additional Egyptian hieroglyphs, particularly in support of
Ptolemaic texts. There is also a new data file, Unikemet.txt, with
source data, function, and phonetic information for hieroglyphs,
including the previously encoded repertoire. See the new
UAX #57,
Unicode Egyptian Hieroglyph Database (Unikemet) for details.
General Character Property Issues
- Starting with U+11F5A KAWI SIGN NUKTA in Unicode 16.0, newly encoded nukta characters use Canonical_Combining_Class (ccc) 0 or positional ccc values such as 220 or 230. Nukta characters encoded in earlier versions typically, but not always, use ccc=7. Software that needs to identify nuktas in Brahmic scripts should check for Indic_Syllabic_Category=Nukta.
- The ScriptExtensions.txt data file has had a format change for 16.0. Each individual entry is formatted
as before, but the overall order of entries has been changed to code point order.
Normalization Behavior
Several characters have been added in Unicode 16.0 which have subtle implications for
certain optimizations of normalization. These do not change the normalization algorithm,
but have implications for the derivation and use of Quick_Check properties for optimization
of normalization form detection. See UAX #15 for details.
Segmentation
There has been a change of linebreaking affecting U+2018 LEFT SINGLE QUOTATION MARK and similar directional quotation marks in specific East Asian contexts to correct for issues in simplified Chinese line breaking, as well as other rule changes to better align the specification with the behavior of ICU. See
UAX #14 for details.
There has also been a change to the Grapheme_Cluster_Break property data,
extending the use of GCB=V
to apply to certain non-Hangul vowels, and in particular for Kirat Rai vowels. This change
finesses the behavior of the segmentation of grapheme cluster breaks in such cases, while
respecting normalization requirements and canonical equivalence. Implementations should
take note that GCB=V and HST=V are no longer coextensive. See UAX #29 for details.
Numeric Property Issues
There are eight new sets of decimal digits added in Unicode 16.0. Five
of these sets are for newly encoded scripts: Garay, Sunuwar, Gurung Khema,
Kirat Rai, and Ol Onal. Two sets of digits constitute more region-specific
digit sets for the Myanmar script. Finally, there is one additional set,
consisting of stylistically outlined digits, intended for support of legacy
computer symbol sets for terminal emulations. Implementations of numeric values and numeric formatting
should take these new sets into account.
CJK/Unihan Changes
- Some kRSUnicode values now include triple-apostrophe radicals.
- One old provisional property has been removed.
- Two new provisional properties have been added.
See UAX
#38, Unicode Han Database (Unihan) for further details on these changes,
especially Section 4.2, Listing
by Date of Addition to the Unicode Standard, and Section 4.3, Listing by
Location within Unihan.zip.
UAX #38 also has updated regex values for three
Unihan properties. For the changes associated with the triple-apostrophe radicals, see:
Standardized Variation Sequences
- Four unused Egyptian hieroglyph variation sequences have been removed from
the data. Ten other new sequences have been added to deal with various rotations
of previously encoded hieroglyphs.
- Eight variation sequences have been added for curly quotation marks (U+2018, U+2019,
U+201C, U+201D) to deal with full-width layout considerations in Chinese text.
UTS #46 (IDNA) Changes
There have been a number of changes to the specification, in general to
bring it forward to better align with current practice and to simplify
no longer needed transitional features.
- The text of UTS #46 has been changed to simplify the base exclusion set and adjust the derivation of the mappings in IdnaMappingTable.txt. Previously, the base exclusion set had been derived from differences
between IDNA2003 data and the principles of UTS #46. It is no longer necessary to disallow characters on the basis of differences from
IDNA2003, so the base exclusion has been radically simplified.
- The handling of UseSTD3ASCIIRules has been simplified. Conditional data involving disallowed_STD3_* Status values has been replaced with simple checking for a subset of ASCII characters in the Validity Criteria. This simplifies the data format and data lookup, makes standard UseSTD3ASCIIRules=true handling consistent with custom UseSTD3ASCIIRules, and avoids unnecessarily disallowing certain labels that contain disallowed_STD3_mapped characters but which do not contain non-LDH ASCII characters when the mappings are applied.
- In Section 4, Processing, if the label starts with “xn--”, and the conversion from Punycode yields either an empty label or an all-ASCII label, then an error is now recorded, consistent with IDNA2008.
- In the test data file, there is a small addition to the syntax: "" means an empty string. There are also other test data corrections and improvements. For details see Section 8, Conformance Testing, Migration.
Changes to Code Charts
- There are a number of Han glyph updates, particularly for CJK Unified Ideographs
Extension B.
- Other glyph updates are listed explicitly in the
delta charts index page.
- There are also a very large number of J-Source (Japanese) additions to the CJK charts. These extensions are not individually highlighted in the code charts.
- The two code charts for Egyptian hieroglyphs contain extensive functional and phonetic
information derived from the new data file, Unikemet.txt.
Collation-related Changes
A significant new change for DUCET in Unicode 16.0 involves moving the non-decimal digits to sort after the main decimal digits. This change greatly reduces the superfluous differences between DUCET and the CLDR base tailoring of DUCET.
There has also been a small fix to correct the ordering for U+312C BOPOMOFO LETTER GN.
Emoji Changes
For details about emoji changes, see the Unicode 16.0 emoji charts and Emoji Recently Added, v16.0.