Unicode Character Database

# UNICODE CHARACTER DATABASE

Revision | 3.1.0
Authors | Mark Davis and Ken Whistler
Date | 2001-02-28
This Version | http://www.unicode.org/Public/3.1-Update/UnicodeCharacterDatabase-3.1.0.html
Previous Version | http://www.unicode.org/Public/3.0-Update1/UnicodeCharacterDatabase-3.0.1.html
Latest Version | http://www.unicode.org/Public/UNIDATA/UnicodeCharacterDatabase.html

###
Summary

> This document describes the format and content of the Unicode Character Database (UCD)

### Status

> The file and the files described herein are part of the Unicode Character Database and are governed by the UCD Terms of Use given below.

> The References provide related information that is useful in understanding this document.

> Warning: the information in this file does not completely describe the use and interpretation of Unicode character properties and behavior. It must be used in conjunction with the data in the other files in the Unicode Character Database, and relies on the notation and definitions supplied in The Unicode Standard. All chapter references are to Version 3.1.0 of the standard.

## Introduction

The Unicode Character Database (UCD) is a set of files that define the Unicode character properties and internal mappings. This document describes the files that are part of The Unicode Standard, Version 3.1 [U3.1]. The main changes in this version are:

- All of the data files have been updated to account for the large number of additional characters in Unicode 3.1.
- PropList.txt has been extensively reorganized and reformatted.
- Scripts.txt has been added to the UCD.
- A large number of informative derived property files have been added to the UCD.

Files in the UCD use a common format unless otherwise specified. For details, see UCD File Format.

## Conformance

For information on the meaning and application of the terms normative and informative, see "Chapter 4, Character Properties (revision)" in UAX #27, Unicode 3.1.

Some informative data files contain derived properties, properties that can be derived from other properties in the UCD. The derived properties that are computed from solely normative properties are themselves normative, while the others are informative.

## UCD Files

The following table summarizes the files in the Unicode Character Database. For more information about these files, see the referenced technical report(s), files, or section of Unicode Standard, Version 3.1.

".txt" File | Description | N/I | Summary
--- | --- | --- | ---
ArabicShaping | Section 8.2 | N | Basic Arabic and Syriac character shaping properties, such as initial, medial and final shapes.
BidiMirroring | UAX #9 | I | Properties for substituting characters in an implementation of bidirectional mirroring.
Blocks | Chapter 14 | N | List of block names.
CaseFolding | UTR #21 | N | Mapping from characters to their case-folded forms. This is an informative file containing normative derived properties. Derived from UnicodeData and SpecialCasing.
CompositionExclusions | UAX #15 | N | Properties for normalization.
DerivedXXX | DerivedProperties.html | N/I | Various informative derived files, described in the documentation file. Some of the derived properties are normative and some are informative.
EastAsianWidth | UAX #11 | I | Properties for determining the choice of wide vs. narrow glyphs in East Asian contexts.
Index | Chapter 14 | I | Index to Unicode characters, as printed in the Unicode Standard. (See Update Note.)
Jamo | Chapter 4 | N | List of Jamo short names, used in deriving HANGUL SYLLABLE names algorithmically.
LineBreak | UAX #14 | N/I | Properties for line breaking.
NamesList | Chapter 14 | I | This file duplicates some of the material in the UnicodeData file, and adds annotations used in the character charts.
NormalizationTest | UAX #15 | N | Test file for conformance to Unicode Normalization Forms.
PropList | PropList.html | N/I | Extended character properties
Scripts | UTR #24 | I | Default scripts values for use in regular expressions.
SpecialCasing | Chapter 4, UTR #21 | N | List of properties required for full case mapping.
UnicodeData | UnicodeData.html, Chapter 4, UTR #21, UAX #15 | N/I | The main file in the UCD.
Unihan | Unihan.txt | N/I | Extended properties of Han (CJK) characters. (See Format Note.)

> Update Note: The information in Index.txt files matches the appropriate version of the book. Changes in the Unicode Character Database since then may not be reflected in these files, since they are primarily of archival interest.

> Format Note: The file data format differs from the standard format, and is described in the header of the file. The header also describes which properties are informative and which are normative.

## UCD File Format

Files in the UCD use the following format, unless otherwise specified.

- Each line of data consists of fields separated by semicolons. The fields are numbered starting with zero. Code points are expressed as hexadecimal numbers with four to six digits. They are written without "U+". Within a sequence of code points, spaces are used for separation. Leading and trailing spaces within a field are not significant.

- The first field (0) of each line in the Unicode Character Database files represents a code point or range. The remaining fields (1..n) are properties associated with that code point.

- A range of code points is specified by the form "X..Y". Each code point from X to Y has the associated properties. For example:

>     0000..007F; Basic Latin
>     0080..00FF; Latin-1 Supplement

>     1680      ; White_space # Zs OGHAM SPACE MARK
>     2000..200A; White_space # Zs [11] EN QUAD..HAIR SPACE

- Hash marks ("#") are used to indicate comments: all characters from the hash mark to the end of the line are comments, and disregarded when parsing data. In many files, the comments on data lines use a common format.

>     00BC..00BE ; numeric # No [3] VULGAR FRACTION ONE QUARTER..VULGAR FRACTION THREE QUARTERS

- The first part of the comment is the UCD general category. The symbol "L&" indicates characters of type Lu, Ll, or Lt. The code point ranges are calculated so that they all have the same General Category (or L&). While this results in more ranges than are strictly necessary, it makes the contents of the ranges clearer. The second part of the comment (in square brackets), indicates the number of items in a range, if there is one. The third part is the name of the character in field zero: if it is a range, then the character names for the ends of the range are separated by "..".

However, the comments are purely informational, and may change format or be omitted in the future. They should not be parsed for content.

## References

[FAQ] | Unicode Frequently Asked Questions http://www.unicode.org/unicode/faq/ For answers to common questions on technical issues.
[Glossary] | Unicode Glossary http://www.unicode.org/glossary/ For explanations of terminology used in this and other documents.
[Reports] | Unicode Technical Reports http://www.unicode.org/unicode/reports/ For information on the status and development process for technical reports, and for a list of technical reports.
[U3.1] | Unicode Standard Annex #27: Unicode 3.1 http://www.unicode.org/unicode/reports/tr27/
[Versions] | Versions of the Unicode Standard http://www.unicode.org/unicode/standard/versions/ For details on the precise contents of each version of the Unicode Standard, and how to cite them.

##
UCD Terms of Use

### Disclaimer

> The Unicode Character Database is provided as is by Unicode, Inc. No claims are made as to fitness for any particular purpose. No warranties of any kind are expressed or implied. The recipient agrees to determine applicability of information provided. If this file has been purchased on magnetic or optical media from Unicode, Inc., the sole remedy for any claim will be exchange of defective media within 90 days of receipt.

> This disclaimer is applicable for all other data files accompanying the Unicode Character Database, some of which have been compiled by the Unicode Consortium, and some of which have been supplied by other sources.

### Limitations on Rights to Redistribute This Data

> Recipient is granted the right to make copies in any form for internal distribution and to freely use the information supplied in the creation of products supporting the UnicodeTM Standard. The files in the Unicode Character Database can be redistributed to third parties or other organizations (whether for profit or not) as long as this notice and the disclaimer notice are retained. Information can be extracted from these files and used in documentation or programs, as long as there is an accompanying notice indicating the source.