Home > Store > Programming
Unicode Standard, Version 4.0, The
- By The Unicode Consortium
- Published Aug 27, 2003 by Addison-Wesley Professional.
- Copyright 2004
- Dimensions: 8-1/2x11
- Pages: 1504
- Edition: 1st
- Book
- ISBN-10: 0-321-18578-1
- ISBN-13: 978-0-321-18578-5
Register your product to gain access to bonus material or receive a coupon.
The authoritative guide to universal character encoding
The official way to implement ISO/IEC 10646
The key to advancing global interoperability in information technology products
The Unicode Standard provides a unique code number for every character in electronic text, no matter what the platform, no matter what the application, no matter what the language. It is required for XML and is at the core of modern software products. Unicode 4.0 contains 96,248 characters covering languages of the world. The Unicode Standard contains extensive descriptions of each writing system, as well as definitions of character properties and detailed conformance requirements. It is the complete and definitive user's guide for novices and experts alike.
This edition, The Unicode Standard, Version 4.0, adds 47,188 new characters for minority and historic scripts, several sets of symbols, and a very large collection of additional CJK ideographs. It provides updated specifications covering structure, conformance, character behavior and semantics, as well as implementation guidelines, detailed discussions of writing systems, comprehensive charts, and an extensive glossary. The accompanying CD-ROM includes the text of all the Unicode Standard Annexes and the entire Unicode Character Database.
0321185781B07232003
|
10 of 11 people found the following review helpful
By
This review is from: The Unicode Standard, Version 4.0 (Hardcover)
The Unicode character set is among the most widely used and least known of the international software standards. Java programmers have used it every day for a decade or so, but barely one in ten appear to know anything about it.The content of ISO standard 10646 (successor to 8-bit ISO 646), goes way beyond just a charcter set. It contains information critical to the correctness of any program that steps outside the English-language world, i.e. every program on the Internet, and many others sooner or later. This is the basis for correct handling of numerals (there's a lot more than 0 to 9), letters, and text. It's also the explanation for some program behaviors that might otherwise baffle a programmer, or at least a programmer with the wit to be baffled. More than just crucial, the content of this standard is plain fun. Its snippets of information from every major world language give wonderful insight into how people express themselves. It drives home the delighful diversity of... Read more
12 of 14 people found the following review helpful
By
This review is from: The Unicode Standard, Version 4.0 (Hardcover)
Anyone dealing with XML or java soon runs into Unicode because this is the standard for representing characters in electronic form in those computer languages. Java, for instance, was designed from its inception to use Unicode. Earlier computer languages like C and C++ can have routines added to handle these, while C# uses XML and hence Unicode.But chances are, when you deal with Unicode, you only deal with a subset. Often only a small subset at that, unless you are using Chinese/Japanese. Typically you work with ascii and the codes for your spoken language if that is not a Western European language. Very few of us deal with much more than this. Which illustrates the appeal of the book. The Big Picture. ALL of Unicode. The breadth is stunning. It shows the written form of every major spoken language and many minor ones. Has the pictograms for Chinese [of course]. But also the symbols for Khmer, Canadian Aboriginal, Tamil, Syraic, et cetera, et cetera. Thumbing through this, you... Read more
6 of 8 people found the following review helpful
By
This review is from: The Unicode Standard, Version 4.0 (Hardcover)
This book is one that every programmer should have access to. Packed with all of information concerning the latest standards, with explanations, this is the reference that I use whenever I need data regarding Unicode mappings. I recommend it to all of my students and have asked all libraries where I have influence to add it to their collection.There is also a CD included with the book. It contains a database of the current and all past versions of the Unicode mappings, a series of Unicode technical reports and an installable version of the Unibook Character Browser, a small utility for viewing character charts and properties. Invaluable if you prefer electronic versions of the data. |
› See all 4 customer reviews...
Preface
This book, The Unicode Standard, Version 4.0, is the authoritative source of information on the Unicode character encoding standard.
Version 4.0 expands on and supersedes all other previous versions. The text of the standard has been extensively rewritten to improve its structure and clarity.
Major additions to Version 4.0 since Version 3.0 include:
- extensive additions of CJK characters to cover dictionaries and historic usage
- many new symbols for mathematical and technical publication
- substantially improved specification of conformance requirements, incorporating the character encoding model
- encoding of supplementary characters
- formalized policies for stability of the standard
- clarification of semantics of special characters, including the byte order mark
- major expansion of Unicode Character Database properties and of specifications for text boundaries and casing
- more minority scripts, including Limbu, Tai Le, Osmanya, and Philippine scripts
- more historic scripts, including Linear B, Cypriot, and Ugaritic
- tightened definition of encoding terms, including UTF-32
Furthermore, many individual characters were added to meet the requirements of users and implementers alike. The Unicode Standard maintains consistency with the international standard ISO/IEC 10646. Version 4.0 of the Unicode Standard corresponds to ISO/IEC 10646:2003.
0.1 About the Unicode Standard
This book, together with the Unicode Standard Annexes described in Appendix B, and the Unicode Character Database, defines Version 4.0 of the Unicode Standard. The book gives the general principles, requirements for conformance, and guidelines for implementers, followed by character code charts and names.
Concepts, Architecture, Conformance, and Guidelines
The first five chapters of Version 4.0 introduce the Unicode Standard and provide the fundamental information needed to produce a conforming implementation. Basic text processing, working with combining marks, and encoding forms are all described. A special chapter on implementation guidelines answers many common questions that arise when implementing Unicode.
Chapter 1 introduces the standard's basic concepts, design basis, and coverage, and discusses basic text handling requirements.
Chapter 2 sets forth the fundamental principles underlying the Unicode Standard and covers specific topics such as text processes, overall character properties, and the use of combining marks.
Chapter 3 constitutes the formal statement of conformance. This chapter also presents the normative algorithms for two processes: the canonical ordering of combining marks and the encoding of Korean Hangul syllables by conjoining jamo.
Chapter 4 describes character properties in detail, both normative (required) and informative. Tables giving additional character property information appear in the Unicode Character Database.
Chapter 5 discusses implementation issues, including compression, strategies for dealing with unknown and unsupported characters, and transcoding tother standards.
Character Block Descriptions
Chapters 6 through 15 contain the character block descriptions that give basic information about each script or group of symbols and may discuss specific characters or pertinent layout information. Some of this information is required in order to produce conformant implementations of these scripts and other collections of characters.
Chapter 6 introduces writing systems and describes the general punctuation characters.
Chapter 7 presents the European Alphabetic scripts, including Latin, Greek, Cyrillic, Armenian, Georgian, and associated combining marks.
Chapter 8 presents the Middle Eastern, right-to-left scripts: Hebrew, Arabic, Syriac, and Thaana.
Chapter 9 covers the South Asian scripts, including Devanagari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, Malayalam, Sinhala, Tibetan, and Limbu. Chapter 10 covers the Southeast Asian scripts, including Thai, Lao, Tai Le, Myanmar, Khmer, and Philippine scripts.
Chapter 11 presents the East Asian scripts, including Han, Hiragana, Katakana, Hangul, Bopomofo, and Yi.
Chapter 12 presents other scripts, including Ethiopic, Mongolian, Osmanya, Cherokee, Canadian Aboriginal Syllabics, Deseret, and Shavian.
Chapter 13 describes archaic scripts, including Ogham, Old Italic, Runic, Gothic, Ugaritic, Linear B, and Cypriot.
Chapter 14 presents symbols, including currency, letterlike and technical symbols, mathematical operators, and musical symbols.
Chapter 15 describes other topics such as private-use characters, surrogate code points, and special characters.
Charts and Han Radical-Stroke Index
The next two chapters document the Unicode Standard's character code assignments, their names and important descriptive information, and provide a Han radical-stroke index that aids in locating specific ideographs encoded in Unicode.
Chapter 16 gives the code charts and the Character Names List. The code charts contain the normative character encoding assignments, and the names list contains normative information as well as useful cross references and informational notes.
Chapter 17 provides a radical-stroke index to East Asian ideographs.
Appendices
The appendices contain detailed background information on important topics regarding the history of the Unicode Standard and its relationship to ISO/IEC 10646.
Appendix A describes the history of Han Unification in the Unicode Standard.
Appendix B provides abstracts of Unicode Technical Reports and lists other important Unicode resources.
Appendix C details the relationship between the Unicode Standard and ISO/IEC 10646.
Appendix D lists the changes to the Unicode Standard since Version 3.0.
The appendices are followed by a glossary of terms, a bibliography, and two indices: an index to Unicode characters and an index to the text of the book.
0.2 The Unicode Character Database and Technical Reports
The Unicode Character Database is a collection of data files that contain character code points, character names and character property data. It is described more fully in of the Unicode Character Database, are found on the Unicode Web site at: http://www.unicode.org/ucd/.
The files for Version 4.0.0 of the Unicode Character Database are also supplied on the CDROM that accompanies this book.
Information on versions of the Unicode Standard can be found on the Unicode Web site at: http://www.unicode.org/versions/.
All versions of all Unicode Technical Reports, Unicode Technical Standards, and Unicode Standard Annexes are available on the Unicode Web site http://www.unicode.org/reports/.
The latest available version of each document at the time of publication is included on the CD-ROM. See Appendix B for a summary overview of important Unicode Technical Standards, Unicode Technical Reports and Unicode Standard Annexes.
On the CD-ROM
The CD-ROM also contains additional information, such as sample code, which is maintained on the Unicode ftp site at: ftp.unicode.org or via http at: http://www.unicode.org/Public/. For the complete contents of the CD-ROM see its ReadMe.txt file.
0.3 Notational Conventions
Throughout this book, certain typographic conventions are used.
Code Points
In running text, an individual Unicode code point can be expressed as U+n, where n is from four to six hexadecimal digits, using the digits 0-9 and uppercase letters A-F (for 10 through 15, respectively). There should be no leading zeros, unless the code point would have fewer than four hexadecimal digits; for example, U+0001, U+0012, U+0123, U+1234, U+12345, U+102345.
- U+0416 is the Unicode code point for the character named .
In tables, the U+ may be omitted for brevity.
A range of Unicode code points is expressed as U+xxxx-U+yyyy or xxxx..yyyy, where xxxx and yyyy are the first and last Unicode values in the range, and the long dash or two dots indicate a contiguous range inclusive of the endpoints. For ranges involving supplementary characters, the code points in the ranges are expressed with five or six hexadecimal digits.
- The range U+0900-U+097F contains 128 Unicode code points.
- The Plane 16 private use characters are in the range 100000..10FFFD.
Character Names
All Unicode characters have unique names, which are identical to those of the English language edition of International Standard ISO/IEC 10646. Unicode character names contain only uppercase Latin letters A through Z, digits, space, and hyphen-minus; this convention makes it easy to generate computer-language identifiers automatically from the names. Unified CJK ideographs are named -X, where X is replaced with the hexadecimal Unicode code point--for example, -4E00.The names of Hangul syllables are generated algorithmically; for details, see Hangul Syllable Names in Section 3.12, Conjoining Jamo Behavior.
In running text, a formal Unicode name is shown in small capitals (for example, ), and alternative names (aliases) appear in italics (for example, umlaut).Italics are also used to refer to a text element that is not explicitly encoded (for example, pasekh alef) or to set off a non-English word (for example, the Welsh word ynghyd).
Sequences
A sequence of two or more code points may be represented by a comma-delimited list, set off by angle brackets. For this purpose angle brackets consist of U+003C - and U+003E - . Spaces are optional after the comma, and U+ notation for the code point is also optional; for example, "". When the usage is clear from the context, a sequence of characters may also be represented with generic short names, for example as in "", or the angle brackets may be omitted.
In contrast to sequences of code points, a sequence of one or more code units may be represented by a list set off by angle brackets, but without comma delimitation or U+ notation. For example, the notation "
Miscellaneous
Phonemic transcriptions are shown between slashes, as in Khmer /khnyom/.
Phonetic transcriptions are shown between square brackets, using the International Phonetic Alphabet. (Full details on the IPA can be found on the International Phonetic Association's Web site, http://www2.arts.gla.ac.uk/IPA/ipa.html.)
A leading asterisk is used to represent an incorrect or nonoccurring linguistic form.
The symbols used in the character names list are described at the beginning of Chapter 16, Code Charts.
In the text of this book, the word "Unicode" when used alone as a noun refers to the Unicode Standard.
Unambiguous dates of the current common era, such as 1999, are unlabeled. In cases of ambiguity, is used. Dates before the common era are labeled with .
The term byte, as used in this standard, always refers to a unit of eight bits. This corresponds to the use of the term octet in some other standards.
Extended BNF
The Unicode Standard and technical reports use an extended BNF format for describing syntax. As different conventions are used for BNF, Table 0-1, Extended BNF, lists the notation used here.
0.3 Notational Conventions
In other environments, such as programming languages or mark-up, alternative notation for sequences of code points or code units may be used.
Character Classes. A code point class is a specification of an unordered set of code points. Whenever the code points are all assigned characters, it can also be referred to as a character class. The specification consists of any of the following:
- A literal code point
- A range of literal code points
- A set of code points having a given Unicode character property value, as defined in the Unicode Character Database (see PropertyAliases.txt and PropertyValueAliases.txt)
- Non-boolean properties given as an expression
= or A, , such as "General_Category=Titlecase_Letter" - Boolean properties given as an expression
= true or A, true, such as "Uppercase=true" - Combinations of logical operations on classes
Further extensions to this specification of character classes are used in some Unicode Standard Annexes and Unicode Technical Reports. Such extensions are described in those documents, as appropriate.
A partial formal BNF syntax for character classes as used in this standard is given by the following.
char_class := "" char_class - char_class ""// set difference:= "" item_list ""
:= "" property ("=" | "A,") property_value ""
item_list := item (","? item)?
item := code_point // either literal or escaped
:= code_point - code_point // inclusive range
Whenever any character could be interpreted as a syntax character, it must be escaped. Where no ambiguity would result (with normal operator precedence), extra square brackets can be discarded. If a space character is used as a literal, it is escaped. Examples are found in Table 0-2, Character Class Examples.
Symbols Meaning
For more information about character classes, see Unicode Technical Report #18, "Unicode Regular Expression Guidelines."
Operators
Operators used in this standard are listed in Table 0-3, Operators.
0.4 Resources
The Unicode Consortium provides a number of online resources for obtaining information and data about the Unicode Standard, as well as updates and corrigenda. They are listed below.
- Unicode Web Site: http://www.unicode.org
- Unicode Anonymous FTP Site: ftp://ftp.unicode.org
- Unicode Email Discussion List: unicode@unicode.org
Subscription instructions for the email discussion list are posted on the Unicode Web site.
- a-z-c English lowercase letters except for c
- 0-9 European decimal digits
- \u0030-\u0039 (same as above, using Unicode escapes)
- 0-9,A-F,a-f hexadecimal digits
- {gc=letter},{gc=non-spacing_ mark} all letters and non-spacing marks
- {gc=L},{gc=Mn} (same as above, using abbreviated notation)
- {gcA,unassigned} all assigned Unicode characters
- \u0600-\u06FF-{gc=unassigned} all assigned Arabic characters
- Alphabetic=true all alphabetic characters
- Line_BreakA,Infix_Numeric all code points that do not have the line break property of Infix_Numeric
0.4 Resources
How to Contact the Unicode Consortium
Contact the Unicode Consortium for membership information and to order publications (including additional copies of this book).
Postal address:P.O. Box 391476
Mountain View, CA 94039-1476
USA
Please check the Web site for up-to-date contact information, including telephone, fax, and courier delivery address.
0321185781P05142003
Table of Contents
Acknowledgments.
Unicode Consortium Members and Directors.
Figures.
Tables.
Preface.
1. Introduction.
2. General Structure.
3. Conformance.
4. Character Properties.
5. Implementation Guidelines.
6. Writing Systems and Punctuation.
7. European Alphabetic Scripts.
8. Middle Eastern Scripts.
9. South Asian Scripts.
10. Southeast Asian Scripts.
11. East Asian Scripts.
12. Additional Modern Scripts.
13. Archaic Scripts.
14. Symbols.
15. Special Areas and Format Characters.
16. Code Charts.
17. Han Radical-Stroke Index.
A. Han Unification History.
B. Abstracts of Unicode Technical Reports.
C. Relationship to ISO/IEC 10646.
D. Changes from Unicode Version 3.0.
G. Glossary.
R. References.
I. Indices.
Book
This product currently is not for sale.
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.




