draft-ietf-idn-nameprep-03.txt   draft-ietf-idn-nameprep-04.txt 
Internet Draft Paul Hoffman Internet Draft Paul Hoffman
draft-ietf-idn-nameprep-03.txt IMC & VPNC draft-ietf-idn-nameprep-04.txt IMC & VPNC
February 24, 2001 Marc Blanchet July 13, 2001 Marc Blanchet
Expires in six months ViaGenie Expires in six months ViaGenie
Preparation of Internationalized Host Names Preparation of Internationalized Host Names
Status of this memo Status of this memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Internet-Drafts are working documents of the Internet Engineering Task
Force (IETF), its areas, and its working groups. Note that other groups Force (IETF), its areas, and its working groups. Note that other groups
may also distribute working documents as Internet-Drafts. may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference material time. It is inappropriate to use Internet-Drafts as reference material
or to cite them other than as "work in progress." or to cite them other than as "work in progress."
To view the list Internet-Draft Shadow Directories, see The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Abstract
This document describes how to prepare internationalized host names for This document describes how to prepare internationalized host names for
use in the DNS. The steps include: use in the DNS. The steps include:
- mapping characters to other characters, such as to change their case - mapping characters to other characters, such as to change their case
- normalizing the characters - normalizing the characters
- excluding characters that are prohibited from appearing in - excluding characters that are prohibited from appearing in
internationalized host names internationalized host names
skipping to change at line 80 skipping to change at line 83
steps described here are applied to non-internationalized labels, the steps described here are applied to non-internationalized labels, the
label will not change. label will not change.
1.1 Terminology 1.1 Terminology
The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED", and The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED", and
"MAY" in this document are to be interpreted as described in RFC 2119 "MAY" in this document are to be interpreted as described in RFC 2119
[RFC2119]. [RFC2119].
Examples in this document use the notation for code points and names Examples in this document use the notation for code points and names
from the Unicode Standard [Unicode3] and ISO/IEC 10646 [ISO10646]. For from the Unicode Standard [Unicode3.1] and ISO/IEC 10646 [ISO10646]. For
example, the letter "a" may be represented as either "U+0061" or "LATIN example, the letter "a" may be represented as either "U+0061" or "LATIN
SMALL LETTER A". In the lists of prohibited characters, the "U+" is left SMALL LETTER A". In the lists of prohibited characters, the "U+" is left
off to make the lists easier to read. The names of character ranges are off to make the lists easier to read. The names of character ranges are
shown in square brackets (such as "[SYMBOLS]") and do not come from the shown in square brackets (such as "[SYMBOLS]") and do not come from the
standards. standards.
Note: A glossary of terms used in Unicode and ISO/IEC 10646 can be found Note: A glossary of terms used in Unicode and ISO/IEC 10646 can be found
in [Glossary]. Information on the 10646/Unicode character model can be in [Glossary]. Information on the 10646/Unicode character model can be
found in [CharModel]. found in [CharModel].
skipping to change at line 132 skipping to change at line 135
document for their processing. That is, if there is an error in the document for their processing. That is, if there is an error in the
tables, the tables must still be used. Future versions of this document tables, the tables must still be used. Future versions of this document
may include corrections and additions to the tables. may include corrections and additions to the tables.
3. Mapping 3. Mapping
Each character in the input stream is checked against the mapping table. Each character in the input stream is checked against the mapping table.
The mapping table can be found in Appendix E of this document. That The mapping table can be found in Appendix E of this document. That
table includes all the steps described in the subsections below. table includes all the steps described in the subsections below.
Note that the subsections below describe how Appendix E was formed.
They are there for people who want to understand more, but they should
be ignored by implementors. Nameprep implementations MUST map based
on Appendix E, not based on the descriptions in this section of how
Appendix E was created.
The mappings can be one-to-none, one-to-one, or one-to-many. That is, The mappings can be one-to-none, one-to-one, or one-to-many. That is,
some characters may be eliminated or replaced by more than one some characters may be eliminated or replaced by more than one
character, and the output of this step might be shorter or longer than character, and the output of this step might be shorter or longer than
the input. Because of this, an application MUST be prepared to receive a the input. Because of this, an application MUST be prepared to receive a
longer or shorter string than the one input in the nameprep algorithm. longer or shorter string than the one input in the nameprep algorithm.
Rationale: Characters that are not wanted in internationalized name Rationale: Characters that are not wanted in internationalized name
parts can either be mapped to nothing in the mapping step, or cause an parts can either be mapped to nothing in the mapping step, or cause an
error in the prohibition step. The general guideline used to pick error in the prohibition step. The general guideline used to pick
between the two outcomes was that removing alphabetic, non-protocol between the two outcomes was that removing alphabetic, non-protocol
skipping to change at line 153 skipping to change at line 162
in the prohibition step. This allows for simple linguistic errors on the in the prohibition step. This allows for simple linguistic errors on the
part of an input mechanism to be caught in the mapping step, but to not part of an input mechanism to be caught in the mapping step, but to not
hide serious errors such as entering protocol characters or invisible hide serious errors such as entering protocol characters or invisible
characters from the user. characters from the user.
3.1 Case mapping 3.1 Case mapping
The input string is case folded according to [UTR21]. For most The input string is case folded according to [UTR21]. For most
characters, this is the same thing as changing the input character to a characters, this is the same thing as changing the input character to a
lowercase character. For some characters, however, more complex lowercase character. For some characters, however, more complex
transformations occur. The mapping table in Appendix E is derived by transformations occur. The "CaseFolding.txt" file from the Unicode
applying the rules for equivalence classes from [UTR21]. database was used to prepare Appendix E.
Rationale: This step could have been "change all lowercase characters Rationale: This step could have been "change all lowercase characters
into uppercase characters". However, the upper-to-lower folding was into uppercase characters". However, the upper-to-lower folding was
chosen because most users of the Internet today enter host names in chosen because most users of the Internet today enter host names in
lowercase. lowercase.
3.2 Additional folding mappings 3.2 Additional folding mappings
There are some characters that do not have mappings in [UTR21] but still There are some characters that do not have mappings in [UTR21] but still
need processing. These characters include a few Greek characters and need processing. These characters include a few Greek characters and
many symbols that contain Latin characters. The list of characters to many symbols that contain Latin characters. The list of characters to
add to the mapping table were determined by the following algorithm: add to the mapping table were determined by the following algorithm:
b = NormalizeWithKC(Fold(a)); b = NormalizeWithKC(Fold(a));
c = NormalizeWithKC(Fold(b)); c = NormalizeWithKC(Fold(b));
if c is not the same as b, add a mapping for "a to c". if c is not the same as b, add a mapping for "a to c".
Because NormalizeWithKC(Fold(c)) always equals c, the table is stable Because NormalizeWithKC(Fold(c)) always equals c, the table is stable
from that point on. from that point on. The "DerivedNormalizationProperties.txt" file from
the Unicode database was used to prepare Appendix E.
3.3 Mapped out 3.3 Mapped out
The following characters are simply deleted from the input (that is, The following characters are simply deleted from the input (that is,
they are mapped to nothing) because their presence or absence should not they are mapped to nothing) because their presence or absence should not
make two domain names different. make two domain names different.
Some characters are only useful in line-based text, and are otherwise Some characters are only useful in line-based text, and are otherwise
invisible and ignored. invisible and ignored.
skipping to change at line 201 skipping to change at line 211
180B; MONGOLIAN FREE VARIATION SELECTOR ONE 180B; MONGOLIAN FREE VARIATION SELECTOR ONE
180C; MONGOLIAN FREE VARIATION SELECTOR TWO 180C; MONGOLIAN FREE VARIATION SELECTOR TWO
180D; MONGOLIAN FREE VARIATION SELECTOR THREE 180D; MONGOLIAN FREE VARIATION SELECTOR THREE
200C; ZERO WIDTH NON-JOINER 200C; ZERO WIDTH NON-JOINER
200D; ZERO WIDTH JOINER 200D; ZERO WIDTH JOINER
4. Normalization 4. Normalization
The output of the mapping step is normalized using form KC, as described The output of the mapping step is normalized using form KC, as described
in [UTR15]. Using form KC instead of form C causes many characters that in [UAX15]. Using form KC instead of form C causes many characters that
are identical or near-identical to be converted into a single character. are identical or near-identical to be converted into a single character.
Note that this specification refers to a specific version of [UTR15]. If Note that this specification refers to a specific version of [UAX15]. If
a later version of [UTR15] changes the algorithm used for normalizing, a later version of [UAX15] changes the algorithm used for normalizing,
that later version MUST NOT be used with this specification. Note that that later version MUST NOT be used with this specification. Note that
it is likely that this specification will be revised if UTR15 is it is likely that this specification will be revised if UAX15 is
changed, but until that happens, only the specified version of [UTR15] changed, but until that happens, only the specified version of [UAX15]
must be used. must be used.
5. Prohibited Output 5. Prohibited Output
Before the text can be emitted, it must be checked for prohibited code Before the text can be emitted, it must be checked for prohibited code
points. There is a variety of prohibited code points, as described in points. There is a variety of prohibited code points, as described in
this section. this section.
Note that the subsections below describe how Appendix F was formed.
They are there for people who want to understand more, but they should
be ignored by implementors. Nameprep implementations MUST map based
on Appendix F, not based on the descriptions in this section of how
Appendix F was created.
One of the goals of IDN is to allow the widest possible set of host One of the goals of IDN is to allow the widest possible set of host
names as long as those host names do not cause other problems, such as names as long as those host names do not cause other problems, such as
conflict with other standards. Specifically, experience with current DNS conflict with other standards. Specifically, experience with current DNS
names have shown that there is a desire for host names that include names have shown that there is a desire for host names that include
personal names, company names, and spoken phrases. A goal of this personal names, company names, and spoken phrases. A goal of this
section is to prohibit as few characters that might be used in these section is to prohibit as few characters that might be used in these
contexts as possible. contexts as possible.
The collected list of prohibited code points can be found in Appendix F The collected list of prohibited code points can be found in Appendix F
of this document. The list in Appendix F MUST be used by implementations of this document. The list in Appendix F MUST be used by implementations
skipping to change at line 255 skipping to change at line 271
005B-0060; [ASCII] 005B-0060; [ASCII]
007B-007F; [ASCII] 007B-007F; [ASCII]
5.2 Space characters 5.2 Space characters
Space characters would make visual transcription of URLs nearly Space characters would make visual transcription of URLs nearly
impossible and could lead to user entry errors in many ways. impossible and could lead to user entry errors in many ways.
0020; SPACE 0020; SPACE
00A0; NO-BREAK SPACE 00A0; NO-BREAK SPACE
1680; OGHAM SPACE MARK
2000; EN QUAD 2000; EN QUAD
2001; EM QUAD 2001; EM QUAD
2002; EN SPACE 2002; EN SPACE
2003; EM SPACE 2003; EM SPACE
2004; THREE-PER-EM SPACE 2004; THREE-PER-EM SPACE
2005; FOUR-PER-EM SPACE 2005; FOUR-PER-EM SPACE
2006; SIX-PER-EM SPACE 2006; SIX-PER-EM SPACE
2007; FIGURE SPACE 2007; FIGURE SPACE
2008; PUNCTUATION SPACE 2008; PUNCTUATION SPACE
2009; THIN SPACE 2009; THIN SPACE
200A; HAIR SPACE 200A; HAIR SPACE
202F; NARROW NO-BREAK SPACE 202F; NARROW NO-BREAK SPACE
3000; IDEOGRAPHIC SPACE 3000; IDEOGRAPHIC SPACE
1680; OGHAM SPACE MARK
200B; ZERO WIDTH SPACE
5.3 Control characters 5.3 Control characters
Control characters cannot be seen and can cause unpredictable results Control characters cannot be seen and can cause unpredictable results
when displayed. when displayed.
0000-001F; [CONTROL CHARACTERS] 0000-001F; [CONTROL CHARACTERS]
007F; DELETE 007F; DELETE
0080-009F; [CONTROL CHARACTERS] 0080-009F; [CONTROL CHARACTERS]
2028; LINE SEPARATOR 2028; LINE SEPARATOR
2029; PARAGRAPH SEPARATOR 2029; PARAGRAPH SEPARATOR
The following characters have been reserved for future use as control
characters, and are therefore prohibited now even though some of them
are not yet encoded.
2060-206F; [CONTROL CHARACTERS]
FFF0-FFFC; [CONTROL CHARACTERS]
E0000-E0FFF; [CONTROL CHARACTERS]
5.4 Private use and replacement characters 5.4 Private use and replacement characters
Because private-use characters do not have defined meanings, they are Because private-use characters do not have defined meanings, they are
prohibited. The private-use characters are: prohibited. The private-use characters are:
E000-F8FF; [PRIVATE USE, PLANE 0] E000-F8FF; [PRIVATE USE, PLANE 0]
F0000-FFFFD; [PRIVATE USE, PLANE 15] F0000-FFFFD; [PRIVATE USE, PLANE 15]
100000-10FFFD; [PRIVATE USE, PLANE 16] 100000-10FFFD; [PRIVATE USE, PLANE 16]
The replacement character (U+FFFD) has no known semantic definition in a The replacement character (U+FFFD) has no known semantic definition in a
skipping to change at line 305 skipping to change at line 328
rendered with three replacement characters. rendered with three replacement characters.
FFFD; REPLACEMENT CHARACTER FFFD; REPLACEMENT CHARACTER
5.5 Non-character code points 5.5 Non-character code points
Non-character code points are code points that have been assigned in Non-character code points are code points that have been assigned in
ISO/IEC 10646 but are not characters. Because they are already assigned, ISO/IEC 10646 but are not characters. Because they are already assigned,
they are guaranteed not to later change into characters. they are guaranteed not to later change into characters.
FDD0-FDEF; [NONCHARACTER CODE POINTS]
FFFE-FFFF; [NONCHARACTER CODE POINTS] FFFE-FFFF; [NONCHARACTER CODE POINTS]
1FFFE-1FFFF; [NONCHARACTER CODE POINTS] 1FFFE-1FFFF; [NONCHARACTER CODE POINTS]
2FFFE-2FFFF; [NONCHARACTER CODE POINTS] 2FFFE-2FFFF; [NONCHARACTER CODE POINTS]
3FFFE-3FFFF; [NONCHARACTER CODE POINTS] 3FFFE-3FFFF; [NONCHARACTER CODE POINTS]
4FFFE-4FFFF; [NONCHARACTER CODE POINTS] 4FFFE-4FFFF; [NONCHARACTER CODE POINTS]
5FFFE-5FFFF; [NONCHARACTER CODE POINTS] 5FFFE-5FFFF; [NONCHARACTER CODE POINTS]
6FFFE-6FFFF; [NONCHARACTER CODE POINTS] 6FFFE-6FFFF; [NONCHARACTER CODE POINTS]
7FFFE-7FFFF; [NONCHARACTER CODE POINTS] 7FFFE-7FFFF; [NONCHARACTER CODE POINTS]
8FFFE-8FFFF; [NONCHARACTER CODE POINTS] 8FFFE-8FFFF; [NONCHARACTER CODE POINTS]
9FFFE-9FFFF; [NONCHARACTER CODE POINTS] 9FFFE-9FFFF; [NONCHARACTER CODE POINTS]
skipping to change at line 344 skipping to change at line 368
FFF9; INTERLINEAR ANNOTATION ANCHOR FFF9; INTERLINEAR ANNOTATION ANCHOR
FFFA; INTERLINEAR ANNOTATION SEPARATOR FFFA; INTERLINEAR ANNOTATION SEPARATOR
FFFB; INTERLINEAR ANNOTATION TERMINATOR FFFB; INTERLINEAR ANNOTATION TERMINATOR
FFFC; OBJECT REPLACEMENT CHARACTER FFFC; OBJECT REPLACEMENT CHARACTER
5.8 Inappropriate for domain names 5.8 Inappropriate for domain names
The ideographic description characters allow different sequences of The ideographic description characters allow different sequences of
characters to be rendered the same way, which makes them inappropriate characters to be rendered the same way, which makes them inappropriate
for host names that must have a single canonical order. for host names that must have a single canonical representation.
2FF0-2FFF; [IDEOGRAPHIC DESCRIPTION CHARACTERS] 2FF0-2FFF; [IDEOGRAPHIC DESCRIPTION CHARACTERS]
5.9 Change display properties 5.9 Change display properties
The following characters, some of which are deprecated in ISO/IEC 10646, The following characters, some of which are deprecated in ISO/IEC 10646,
can cause changes in display or the order in which characters appear can cause changes in display or the order in which characters appear
when rendered. when rendered.
200E; LEFT-TO-RIGHT MARK 200E; LEFT-TO-RIGHT MARK
skipping to change at line 377 skipping to change at line 401
5.10 Inappropriate characters from common input mechanisms 5.10 Inappropriate characters from common input mechanisms
U+3002 is used as if it were U+002E in many input mechanisms, U+3002 is used as if it were U+002E in many input mechanisms,
particularly in Asia. This prohibition allows input mechanisms to safely particularly in Asia. This prohibition allows input mechanisms to safely
map U+3002 to U+002E before doing nameprep without worrying about map U+3002 to U+002E before doing nameprep without worrying about
preventing users from accessing legitimate host name parts. preventing users from accessing legitimate host name parts.
3002; IDEOGRAPHIC FULL STOP 3002; IDEOGRAPHIC FULL STOP
5.11 Tagging characters
The following characters are used for tagging text and are invisible.
E0000-E007F; [TAGGING CHARACTERS]
6. Unassigned Code Points 6. Unassigned Code Points
All code points not assigned in ISO/IEC 10646 are called "unassigned All code points not assigned in [Unicode3.1] are called "unassigned code
code points". Authoritative name servers MUST NOT have internationalized points". Authoritative name servers MUST NOT have internationalized name
name parts that contain any unassigned code points. DNS requests MAY parts that contain any unassigned code points. DNS requests MAY contain
contain name parts that contain unassigned code points. Note that this name parts that contain unassigned code points. Note that this is the
is the only part of this document where the requirements for queries only part of this document where the requirements for queries differs
differs from the requirements for names in DNS zones. from the requirements for names in DNS zones.
Note: For this section, Unicode 3.1 is the base repertoire of unassigned
code points. The reason Unicode 3.1 was chosen instead of a version of
ISO/IEC 10646 is that ISO/IEC 10646 is expected to be updated soon after
this document becomes an RFC. Unicode 3.1 has the exact repertoire that
is expected in the next version of ISO/IEC 10646, and is therefore used
here.
Using two different policies for where unassigned code points can appear Using two different policies for where unassigned code points can appear
in the DNS prevents the need for versioning the IDN protocol [IDNrev]. in the DNS prevents the need for versioning the IDN protocol [IDNrev].
This is very useful since it makes the overall processing simpler and do This is very useful since it makes the overall processing simpler and do
not impose a "protocol" to handle versioning. It is expected that ISO/IEC not impose a "protocol" to handle versioning. It is expected that
10646 will be updated fairly frequently; recently, it has happened ISO/IEC 10646 will be updated fairly frequently; recently,
approximately once a year. Each time a new version of ISO/IEC 10646 appears, it has happened approximately once a year. Each time a new version of
a new version of this document can be created. Some end users will want ISO/IEC 10646 appears, a new version of this document can be
to use the new code points as soon as they are defined. created. Some end users will want to use the new code points as soon as
they are defined.
The list of unassigned code points can be found in Appendix G of this The list of unassigned code points can be found in Appendix G of this
document. The list in Appendix G MUST be used by implementations of this document. The list in Appendix G MUST be used by implementations of this
specification. If there are any discrepancies between the list in specification. If there are any discrepancies between the list in
Appendix G and the ISO/IEC 10646 specification, the list Appendix G Appendix G and the Unicode 3.1 specification, the list Appendix G
always takes precedence. always takes precedence.
Due to the way that versioning is handled in this section, host names Due to the way that versioning is handled in this section, host names
that are embedded in structures that cannot be changed (such as the that are embedded in structures that cannot be changed (such as the
signed parts of digital certificates) MUST NOT have internationalized signed parts of digital certificates) MUST NOT have internationalized
name parts that contain any unassigned code points. name parts that contain any unassigned code points.
6.1 Categories of code points 6.1 Categories of code points
Each code point in ISO/IEC 10646 can be categorized by how it acts in the Each code point in ISO/IEC 10646 can be categorized by how it acts in the
skipping to change at line 577 skipping to change at line 615
[RFC2396] Tim Berners-Lee, et. al., "Uniform Resource Identifiers (URI): [RFC2396] Tim Berners-Lee, et. al., "Uniform Resource Identifiers (URI):
Generic Syntax", August 1998, RFC 2396. Generic Syntax", August 1998, RFC 2396.
[RFC2732] Robert Hinden, et. al., Format for Literal IPv6 Addresses in [RFC2732] Robert Hinden, et. al., Format for Literal IPv6 Addresses in
URL's, December 1999, RFC 2732. URL's, December 1999, RFC 2732.
[STD13] Paul Mockapetris, "Domain names - concepts and facilities" (RFC [STD13] Paul Mockapetris, "Domain names - concepts and facilities" (RFC
1034) and "Domain names - implementation and specification" (RFC 1035, 1034) and "Domain names - implementation and specification" (RFC 1035,
STD 13, November 1987. STD 13, November 1987.
[Unicode3] The Unicode Consortium, "The Unicode Standard -- Version [Unicode3.1] The Unicode Standard, Version 3.1.0: The Unicode
3.0", ISBN 0-201-61633-5. Described at Consortium. The Unicode Standard, Version 3.0. Reading, MA,
<http://www.unicode.org/unicode/standard/versions/Unicode3.0.html>. Addison-Wesley Developers Press, 2000. ISBN 0-201-61633-5, as amended
by: Unicode Standard Annex #27: Unicode 3.1
<http://www.unicode.org/unicode/reports/tr27/tr27-4.html>.
[URIs] For example: Roy Fielding et. al., "Uniform Resource Identifiers: [URIs] For example: Roy Fielding et. al., "Uniform Resource Identifiers:
Generic Syntax", August 1998, RFC 2396; Robert Hinden et. al, "IPv6 Generic Syntax", August 1998, RFC 2396; Robert Hinden et. al, "IPv6
Literal Addresses in URL's", December 1999, RFC 2732. Literal Addresses in URL's", December 1999, RFC 2732.
[UTR15] Mark Davis and Martin Duerst. Unicode Normalization Forms. [UAX15] Mark Davis and Martin Duerst. Unicode Standard Annex #15:
Unicode Technical Report;15. Unicode Normalization Forms, Version 3.1.0.
<http://www.unicode.org/unicode/reports/tr15/>. <http://www.unicode.org/unicode/reports/tr15/tr15-21.html>
[UTR21] Mark Davis. Case Mappings. Unicode Technical Report;21. [UTR21] Mark Davis. Case Mappings. Unicode Technical Report;21.
<http://www.unicode.org/unicode/reports/tr21/>. <http://www.unicode.org/unicode/reports/tr21/>.
A. Acknowledgements A. Acknowledgements
Many people from the IETF IDN Working Group and the Unicode Technical Many people from the IETF IDN Working Group and the Unicode Technical
Committee contributed ideas that went into the first draft of this Committee contributed ideas that went into the first draft of this
document. Mark Davis and Patrik Faltstrom were particularly helpful in document. Mark Davis and Patrik Faltstrom were particularly helpful in
some of the ideas, such as the versioning description. some of the ideas, such as the versioning description.
skipping to change at line 618 skipping to change at line 658
Martin Duerst Martin Duerst
Patrik Faltstrom Patrik Faltstrom
Paul Hoffman Paul Hoffman
Additional significant improvements were proposed by: Additional significant improvements were proposed by:
Jonathan Rosenne Jonathan Rosenne
Kent Karlsson Kent Karlsson
Scott Hollenbeck Scott Hollenbeck
B. Differences Between -02 and -03 Drafts B. Differences Between -03 and -04 Drafts
Throughout: Changed "ISO 10646" to "ISO/IEC 10646". Changed "codepoint" Throughout: updated references from Unicode 3.0 to Unicode 3.1.
to "code point".
Abstract: Added last sentence. 3: Added the second paragraph explaining the purpose of the explanations
in the section.
1: Removed the sentence about [IDNComp] in the first paragraph. 3.1: Changed the first paragraph to describe the use of the
Clarified the design goals in the third paragraph. Added new last "CaseFolding.txt" file.
paragraph about processing name parts.
3: Added sentence at the end of the second paragraph about accepting 3.2: Added the description of the use of the
shorter or longer responses. Changed "Design note" to "Rationale". DerivedNormalizationProperties.txt file to the end of the section.
3.1: Revised the first paragraph to make it clearer that the mapping is 4: Changed the references from "[UTR15]" to "[UAX15]".
not simple lowercasing. Changed "Design note" to "Rationale".
3.2: Made it clearer that the normalization is with form KC. 5: Added the second paragraph explaining the purpose of the explanations
in the section.
5: Removed the previous third paragraph, which discussed the DNS service 5.2: Sorted the list. Removed 200B from prohibited list because it is
interface. already mapped out in section 3.3; this causes no change to the list of
characters allowed in IDN name parts.
5.1: Added references for URIs. 5.3: Added three ranges that are reserved for future control character
use.
5.4: Changed the sentence about the replacement character to read 5.5: Added FDD0-FDEF to the list.
"...and is often displayed by renderers to indicate...".
5.10: Added this section, which prohibits U+3002. 5.8: Changed "order" to "representation" in the last sentence.
6: Removed "yet" from the first sentence. 5.11: Added this section of prohibited characters.
8: Fixed the reference for [IDNReq] and [STD13]. Removed the reference 6: Changed this section to point to Unicode 3.1 instead of ISO/IEC 10646
to [IDNComp]. Added the reference for [URIs]. due to timing reasons for the repertoire.
C: Changed wording of the section. 8: Changed the reference for [UAX15] to a specific version. Changed the
reference for [Unicode3] to [Unicode3.1] and changed the title and URL
for this specific version.
E, F, G: Added tags to the beginning and end of the tables. E: Updated the table for changes in section 3, which reflects the
changes in Unicode 3.1.
F: Added 3002 (from section 5.10). Added FDD0-FDEF, which were omitted F: Removed 200B from prohibited table because it is already mapped out
in error. in section 3.3; this causes no change to the list of characters allowed
in IDN name parts. Added new characters that were added in this
revision.
G: Revised the table based on date from Unicode 3.1.
C. IANA Considerations C. IANA Considerations
None. None.
D. Author Contact Information D. Author Contact Information
Paul Hoffman Paul Hoffman
Internet Mail Consortium and VPN Consortium Internet Mail Consortium and VPN Consortium
127 Segre Place 127 Segre Place
skipping to change at line 935 skipping to change at line 982
0398; 03B8; Case map 0398; 03B8; Case map
0399; 03B9; Case map 0399; 03B9; Case map
039A; 03BA; Case map 039A; 03BA; Case map
039B; 03BB; Case map 039B; 03BB; Case map
039C; 03BC; Case map 039C; 03BC; Case map
039D; 03BD; Case map 039D; 03BD; Case map
039E; 03BE; Case map 039E; 03BE; Case map
039F; 03BF; Case map 039F; 03BF; Case map
03A0; 03C0; Case map 03A0; 03C0; Case map
03A1; 03C1; Case map 03A1; 03C1; Case map
03A3; 03C2; Case map 03A3; 03C3; Case map
03A4; 03C4; Case map 03A4; 03C4; Case map
03A5; 03C5; Case map 03A5; 03C5; Case map
03A6; 03C6; Case map 03A6; 03C6; Case map
03A7; 03C7; Case map 03A7; 03C7; Case map
03A8; 03C8; Case map 03A8; 03C8; Case map
03A9; 03C9; Case map 03A9; 03C9; Case map
03AA; 03CA; Case map 03AA; 03CA; Case map
03AB; 03CB; Case map 03AB; 03CB; Case map
03B0; 03C5 0308 0301; Case map 03B0; 03C5 0308 0301; Case map
03C2; 03C2; Case map 03C2; 03C3; Case map
03C3; 03C2; Case map
03D0; 03B2; Case map 03D0; 03B2; Case map
03D1; 03B8; Case map 03D1; 03B8; Case map
03D2; 03C5; Additional folding 03D2; 03C5; Additional folding
03D3; 03CD; Additional folding 03D3; 03CD; Additional folding
03D4; 03CB; Additional folding 03D4; 03CB; Additional folding
03D5; 03C6; Case map 03D5; 03C6; Case map
03D6; 03C0; Case map 03D6; 03C0; Case map
03DA; 03DB; Case map 03DA; 03DB; Case map
03DC; 03DD; Case map 03DC; 03DD; Case map
03DE; 03DF; Case map 03DE; 03DF; Case map
03E0; 03E1; Case map 03E0; 03E1; Case map
03E2; 03E3; Case map 03E2; 03E3; Case map
03E4; 03E5; Case map 03E4; 03E5; Case map
03E6; 03E7; Case map 03E6; 03E7; Case map
03E8; 03E9; Case map 03E8; 03E9; Case map
03EA; 03EB; Case map 03EA; 03EB; Case map
03EC; 03ED; Case map 03EC; 03ED; Case map
03EE; 03EF; Case map 03EE; 03EF; Case map
03F0; 03BA; Case map 03F0; 03BA; Case map
03F1; 03C1; Case map 03F1; 03C1; Case map
03F2; 03C2; Case map 03F2; 03C3; Case map
03F4; 03B8; Case map
03F5; 03B5; Case map
0400; 0450; Case map 0400; 0450; Case map
0401; 0451; Case map 0401; 0451; Case map
0402; 0452; Case map 0402; 0452; Case map
0403; 0453; Case map 0403; 0453; Case map
0404; 0454; Case map 0404; 0454; Case map
0405; 0455; Case map 0405; 0455; Case map
0406; 0456; Case map 0406; 0456; Case map
0407; 0457; Case map 0407; 0457; Case map
0408; 0458; Case map 0408; 0458; Case map
0409; 0459; Case map 0409; 0459; Case map
skipping to change at line 1566 skipping to change at line 1614
FF31; FF51; Case map FF31; FF51; Case map
FF32; FF52; Case map FF32; FF52; Case map
FF33; FF53; Case map FF33; FF53; Case map
FF34; FF54; Case map FF34; FF54; Case map
FF35; FF55; Case map FF35; FF55; Case map
FF36; FF56; Case map FF36; FF56; Case map
FF37; FF57; Case map FF37; FF57; Case map
FF38; FF58; Case map FF38; FF58; Case map
FF39; FF59; Case map FF39; FF59; Case map
FF3A; FF5A; Case map FF3A; FF5A; Case map
10400; 10428; Case map
10401; 10429; Case map
10402; 1042A; Case map
10403; 1042B; Case map
10404; 1042C; Case map
10405; 1042D; Case map
10406; 1042E; Case map
10407; 1042F; Case map
10408; 10430; Case map
10409; 10431; Case map
1040A; 10432; Case map
1040B; 10433; Case map
1040C; 10434; Case map
1040D; 10435; Case map
1040E; 10436; Case map
1040F; 10437; Case map
10410; 10438; Case map
10411; 10439; Case map
10412; 1043A; Case map
10413; 1043B; Case map
10414; 1043C; Case map
10415; 1043D; Case map
10416; 1043E; Case map
10417; 1043F; Case map
10418; 10440; Case map
10419; 10441; Case map
1041A; 10442; Case map
1041B; 10443; Case map
1041C; 10444; Case map
1041D; 10445; Case map
1041E; 10446; Case map
1041F; 10447; Case map
10420; 10448; Case map
10421; 10449; Case map
10422; 1044A; Case map
10423; 1044B; Case map
10424; 1044C; Case map
10425; 1044D; Case map
1D400; 0061; Additional folding
1D401; 0062; Additional folding
1D402; 0063; Additional folding
1D403; 0064; Additional folding
1D404; 0065; Additional folding
1D405; 0066; Additional folding
1D406; 0067; Additional folding
1D407; 0068; Additional folding
1D408; 0069; Additional folding
1D409; 006A; Additional folding
1D40A; 006B; Additional folding
1D40B; 006C; Additional folding
1D40C; 006D; Additional folding
1D40D; 006E; Additional folding
1D40E; 006F; Additional folding
1D40F; 0070; Additional folding
1D410; 0071; Additional folding
1D411; 0072; Additional folding
1D412; 0073; Additional folding
1D413; 0074; Additional folding
1D414; 0075; Additional folding
1D415; 0076; Additional folding
1D416; 0077; Additional folding
1D417; 0078; Additional folding
1D418; 0079; Additional folding
1D419; 007A; Additional folding
1D434; 0061; Additional folding
1D435; 0062; Additional folding
1D436; 0063; Additional folding
1D437; 0064; Additional folding
1D438; 0065; Additional folding
1D439; 0066; Additional folding
1D43A; 0067; Additional folding
1D43B; 0068; Additional folding
1D43C; 0069; Additional folding
1D43D; 006A; Additional folding
1D43E; 006B; Additional folding
1D43F; 006C; Additional folding
1D440; 006D; Additional folding
1D441; 006E; Additional folding
1D442; 006F; Additional folding
1D443; 0070; Additional folding
1D444; 0071; Additional folding
1D445; 0072; Additional folding
1D446; 0073; Additional folding
1D447; 0074; Additional folding
1D448; 0075; Additional folding
1D449; 0076; Additional folding
1D44A; 0077; Additional folding
1D44B; 0078; Additional folding
1D44C; 0079; Additional folding
1D44D; 007A; Additional folding
1D468; 0061; Additional folding
1D469; 0062; Additional folding
1D46A; 0063; Additional folding
1D46B; 0064; Additional folding
1D46C; 0065; Additional folding
1D46D; 0066; Additional folding
1D46E; 0067; Additional folding
1D46F; 0068; Additional folding
1D470; 0069; Additional folding
1D471; 006A; Additional folding
1D472; 006B; Additional folding
1D473; 006C; Additional folding
1D474; 006D; Additional folding
1D475; 006E; Additional folding
1D476; 006F; Additional folding
1D477; 0070; Additional folding
1D478; 0071; Additional folding
1D479; 0072; Additional folding
1D47A; 0073; Additional folding
1D47B; 0074; Additional folding
1D47C; 0075; Additional folding
1D47D; 0076; Additional folding
1D47E; 0077; Additional folding
1D47F; 0078; Additional folding
1D480; 0079; Additional folding
1D481; 007A; Additional folding
1D49C; 0061; Additional folding
1D49E; 0063; Additional folding
1D49F; 0064; Additional folding
1D4A2; 0067; Additional folding
1D4A5; 006A; Additional folding
1D4A6; 006B; Additional folding
1D4A9; 006E; Additional folding
1D4AA; 006F; Additional folding
1D4AB; 0070; Additional folding
1D4AC; 0071; Additional folding
1D4AE; 0073; Additional folding
1D4AF; 0074; Additional folding
1D4B0; 0075; Additional folding
1D4B1; 0076; Additional folding
1D4B2; 0077; Additional folding
1D4B3; 0078; Additional folding
1D4B4; 0079; Additional folding
1D4B5; 007A; Additional folding
1D4D0; 0061; Additional folding
1D4D1; 0062; Additional folding
1D4D2; 0063; Additional folding
1D4D3; 0064; Additional folding
1D4D4; 0065; Additional folding
1D4D5; 0066; Additional folding
1D4D6; 0067; Additional folding
1D4D7; 0068; Additional folding
1D4D8; 0069; Additional folding
1D4D9; 006A; Additional folding
1D4DA; 006B; Additional folding
1D4DB; 006C; Additional folding
1D4DC; 006D; Additional folding
1D4DD; 006E; Additional folding
1D4DE; 006F; Additional folding
1D4DF; 0070; Additional folding
1D4E0; 0071; Additional folding
1D4E1; 0072; Additional folding
1D4E2; 0073; Additional folding
1D4E3; 0074; Additional folding
1D4E4; 0075; Additional folding
1D4E5; 0076; Additional folding
1D4E6; 0077; Additional folding
1D4E7; 0078; Additional folding
1D4E8; 0079; Additional folding
1D4E9; 007A; Additional folding
1D504; 0061; Additional folding
1D505; 0062; Additional folding
1D507; 0064; Additional folding
1D508; 0065; Additional folding
1D509; 0066; Additional folding
1D50A; 0067; Additional folding
1D50D; 006A; Additional folding
1D50E; 006B; Additional folding
1D50F; 006C; Additional folding
1D510; 006D; Additional folding
1D511; 006E; Additional folding
1D512; 006F; Additional folding
1D513; 0070; Additional folding
1D514; 0071; Additional folding
1D516; 0073; Additional folding
1D517; 0074; Additional folding
1D518; 0075; Additional folding
1D519; 0076; Additional folding
1D51A; 0077; Additional folding
1D51B; 0078; Additional folding
1D51C; 0079; Additional folding
1D538; 0061; Additional folding
1D539; 0062; Additional folding
1D53B; 0064; Additional folding
1D53C; 0065; Additional folding
1D53D; 0066; Additional folding
1D53E; 0067; Additional folding
1D540; 0069; Additional folding
1D541; 006A; Additional folding
1D542; 006B; Additional folding
1D543; 006C; Additional folding
1D544; 006D; Additional folding
1D546; 006F; Additional folding
1D54A; 0073; Additional folding
1D54B; 0074; Additional folding
1D54C; 0075; Additional folding
1D54D; 0076; Additional folding
1D54E; 0077; Additional folding
1D54F; 0078; Additional folding
1D550; 0079; Additional folding
1D56C; 0061; Additional folding
1D56D; 0062; Additional folding
1D56E; 0063; Additional folding
1D56F; 0064; Additional folding
1D570; 0065; Additional folding
1D571; 0066; Additional folding
1D572; 0067; Additional folding
1D573; 0068; Additional folding
1D574; 0069; Additional folding
1D575; 006A; Additional folding
1D576; 006B; Additional folding
1D577; 006C; Additional folding
1D578; 006D; Additional folding
1D579; 006E; Additional folding
1D57A; 006F; Additional folding
1D57B; 0070; Additional folding
1D57C; 0071; Additional folding
1D57D; 0072; Additional folding
1D57E; 0073; Additional folding
1D57F; 0074; Additional folding
1D580; 0075; Additional folding
1D581; 0076; Additional folding
1D582; 0077; Additional folding
1D583; 0078; Additional folding
1D584; 0079; Additional folding
1D585; 007A; Additional folding
1D5A0; 0061; Additional folding
1D5A1; 0062; Additional folding
1D5A2; 0063; Additional folding
1D5A3; 0064; Additional folding
1D5A4; 0065; Additional folding
1D5A5; 0066; Additional folding
1D5A6; 0067; Additional folding
1D5A7; 0068; Additional folding
1D5A8; 0069; Additional folding
1D5A9; 006A; Additional folding
1D5AA; 006B; Additional folding
1D5AB; 006C; Additional folding
1D5AC; 006D; Additional folding
1D5AD; 006E; Additional folding
1D5AE; 006F; Additional folding
1D5AF; 0070; Additional folding
1D5B0; 0071; Additional folding
1D5B1; 0072; Additional folding
1D5B2; 0073; Additional folding
1D5B3; 0074; Additional folding
1D5B4; 0075; Additional folding
1D5B5; 0076; Additional folding
1D5B6; 0077; Additional folding
1D5B7; 0078; Additional folding
1D5B8; 0079; Additional folding
1D5B9; 007A; Additional folding
1D5D4; 0061; Additional folding
1D5D5; 0062; Additional folding
1D5D6; 0063; Additional folding
1D5D7; 0064; Additional folding
1D5D8; 0065; Additional folding
1D5D9; 0066; Additional folding
1D5DA; 0067; Additional folding
1D5DB; 0068; Additional folding
1D5DC; 0069; Additional folding
1D5DD; 006A; Additional folding
1D5DE; 006B; Additional folding
1D5DF; 006C; Additional folding
1D5E0; 006D; Additional folding
1D5E1; 006E; Additional folding
1D5E2; 006F; Additional folding
1D5E3; 0070; Additional folding
1D5E4; 0071; Additional folding
1D5E5; 0072; Additional folding
1D5E6; 0073; Additional folding
1D5E7; 0074; Additional folding
1D5E8; 0075; Additional folding
1D5E9; 0076; Additional folding
1D5EA; 0077; Additional folding
1D5EB; 0078; Additional folding
1D5EC; 0079; Additional folding
1D5ED; 007A; Additional folding
1D608; 0061; Additional folding
1D609; 0062; Additional folding
1D60A; 0063; Additional folding
1D60B; 0064; Additional folding
1D60C; 0065; Additional folding
1D60D; 0066; Additional folding
1D60E; 0067; Additional folding
1D60F; 0068; Additional folding
1D610; 0069; Additional folding
1D611; 006A; Additional folding
1D612; 006B; Additional folding
1D613; 006C; Additional folding
1D614; 006D; Additional folding
1D615; 006E; Additional folding
1D616; 006F; Additional folding
1D617; 0070; Additional folding
1D618; 0071; Additional folding
1D619; 0072; Additional folding
1D61A; 0073; Additional folding
1D61B; 0074; Additional folding
1D61C; 0075; Additional folding
1D61D; 0076; Additional folding
1D61E; 0077; Additional folding
1D61F; 0078; Additional folding
1D620; 0079; Additional folding
1D621; 007A; Additional folding
1D63C; 0061; Additional folding
1D63D; 0062; Additional folding
1D63E; 0063; Additional folding
1D63F; 0064; Additional folding
1D640; 0065; Additional folding
1D641; 0066; Additional folding
1D642; 0067; Additional folding
1D643; 0068; Additional folding
1D644; 0069; Additional folding
1D645; 006A; Additional folding
1D646; 006B; Additional folding
1D647; 006C; Additional folding
1D648; 006D; Additional folding
1D649; 006E; Additional folding
1D64A; 006F; Additional folding
1D64B; 0070; Additional folding
1D64C; 0071; Additional folding
1D64D; 0072; Additional folding
1D64E; 0073; Additional folding
1D64F; 0074; Additional folding
1D650; 0075; Additional folding
1D651; 0076; Additional folding
1D652; 0077; Additional folding
1D653; 0078; Additional folding
1D654; 0079; Additional folding
1D655; 007A; Additional folding
1D670; 0061; Additional folding
1D671; 0062; Additional folding
1D672; 0063; Additional folding
1D673; 0064; Additional folding
1D674; 0065; Additional folding
1D675; 0066; Additional folding
1D676; 0067; Additional folding
1D677; 0068; Additional folding
1D678; 0069; Additional folding
1D679; 006A; Additional folding
1D67A; 006B; Additional folding
1D67B; 006C; Additional folding
1D67C; 006D; Additional folding
1D67D; 006E; Additional folding
1D67E; 006F; Additional folding
1D67F; 0070; Additional folding
1D680; 0071; Additional folding
1D681; 0072; Additional folding
1D682; 0073; Additional folding
1D683; 0074; Additional folding
1D684; 0075; Additional folding
1D685; 0076; Additional folding
1D686; 0077; Additional folding
1D687; 0078; Additional folding
1D688; 0079; Additional folding
1D689; 007A; Additional folding
1D6A8; 03B1; Additional folding
1D6A9; 03B2; Additional folding
1D6AA; 03B3; Additional folding
1D6AB; 03B4; Additional folding
1D6AC; 03B5; Additional folding
1D6AD; 03B6; Additional folding
1D6AE; 03B7; Additional folding
1D6AF; 03B8; Additional folding
1D6B0; 03B9; Additional folding
1D6B1; 03BA; Additional folding
1D6B2; 03BB; Additional folding
1D6B3; 03BC; Additional folding
1D6B4; 03BD; Additional folding
1D6B5; 03BE; Additional folding
1D6B6; 03BF; Additional folding
1D6B7; 03C0; Additional folding
1D6B8; 03C1; Additional folding
1D6B9; 03B8; Additional folding
1D6BA; 03C3; Additional folding
1D6BB; 03C4; Additional folding
1D6BC; 03C5; Additional folding
1D6BD; 03C6; Additional folding
1D6BE; 03C7; Additional folding
1D6BF; 03C8; Additional folding
1D6C0; 03C9; Additional folding
1D6D3; 03C3; Additional folding
1D6E2; 03B1; Additional folding
1D6E3; 03B2; Additional folding
1D6E4; 03B3; Additional folding
1D6E5; 03B4; Additional folding
1D6E6; 03B5; Additional folding
1D6E7; 03B6; Additional folding
1D6E8; 03B7; Additional folding
1D6E9; 03B8; Additional folding
1D6EA; 03B9; Additional folding
1D6EB; 03BA; Additional folding
1D6EC; 03BB; Additional folding
1D6ED; 03BC; Additional folding
1D6EE; 03BD; Additional folding
1D6EF; 03BE; Additional folding
1D6F0; 03BF; Additional folding
1D6F1; 03C0; Additional folding
1D6F2; 03C1; Additional folding
1D6F3; 03B8; Additional folding
1D6F4; 03C3; Additional folding
1D6F5; 03C4; Additional folding
1D6F6; 03C5; Additional folding
1D6F7; 03C6; Additional folding
1D6F8; 03C7; Additional folding
1D6F9; 03C8; Additional folding
1D6FA; 03C9; Additional folding
1D70D; 03C3; Additional folding
1D71C; 03B1; Additional folding
1D71D; 03B2; Additional folding
1D71E; 03B3; Additional folding
1D71F; 03B4; Additional folding
1D720; 03B5; Additional folding
1D721; 03B6; Additional folding
1D722; 03B7; Additional folding
1D723; 03B8; Additional folding
1D724; 03B9; Additional folding
1D725; 03BA; Additional folding
1D726; 03BB; Additional folding
1D727; 03BC; Additional folding
1D728; 03BD; Additional folding
1D729; 03BE; Additional folding
1D72A; 03BF; Additional folding
1D72B; 03C0; Additional folding
1D72C; 03C1; Additional folding
1D72D; 03B8; Additional folding
1D72E; 03C3; Additional folding
1D72F; 03C4; Additional folding
1D730; 03C5; Additional folding
1D731; 03C6; Additional folding
1D732; 03C7; Additional folding
1D733; 03C8; Additional folding
1D734; 03C9; Additional folding
1D747; 03C3; Additional folding
1D756; 03B1; Additional folding
1D757; 03B2; Additional folding
1D758; 03B3; Additional folding
1D759; 03B4; Additional folding
1D75A; 03B5; Additional folding
1D75B; 03B6; Additional folding
1D75C; 03B7; Additional folding
1D75D; 03B8; Additional folding
1D75E; 03B9; Additional folding
1D75F; 03BA; Additional folding
1D760; 03BB; Additional folding
1D761; 03BC; Additional folding
1D762; 03BD; Additional folding
1D763; 03BE; Additional folding
1D764; 03BF; Additional folding
1D765; 03C0; Additional folding
1D766; 03C1; Additional folding
1D767; 03B8; Additional folding
1D768; 03C3; Additional folding
1D769; 03C4; Additional folding
1D76A; 03C5; Additional folding
1D76B; 03C6; Additional folding
1D76C; 03C7; Additional folding
1D76D; 03C8; Additional folding
1D76E; 03C9; Additional folding
1D781; 03C3; Additional folding
1D790; 03B1; Additional folding
1D791; 03B2; Additional folding
1D792; 03B3; Additional folding
1D793; 03B4; Additional folding
1D794; 03B5; Additional folding
1D795; 03B6; Additional folding
1D796; 03B7; Additional folding
1D797; 03B8; Additional folding
1D798; 03B9; Additional folding
1D799; 03BA; Additional folding
1D79A; 03BB; Additional folding
1D79B; 03BC; Additional folding
1D79C; 03BD; Additional folding
1D79D; 03BE; Additional folding
1D79E; 03BF; Additional folding
1D79F; 03C0; Additional folding
1D7A0; 03C1; Additional folding
1D7A1; 03B8; Additional folding
1D7A2; 03C3; Additional folding
1D7A3; 03C4; Additional folding
1D7A4; 03C5; Additional folding
1D7A5; 03C6; Additional folding
1D7A6; 03C7; Additional folding
1D7A7; 03C8; Additional folding
1D7A8; 03C9; Additional folding
1D7BB; 03C3; Additional folding
----- End Mapping Table ----- ----- End Mapping Table -----
F. Prohibited Code Point List F. Prohibited Code Point List
----- Start Prohibited Table ----- ----- Start Prohibited Table -----
0000-002C 0000-002C
002E-002F 002E-002F
003A-0040 003A-0040
005B-0060 005B-0060
007B-007F 007B-007F
skipping to change at line 1590 skipping to change at line 2124
2001 2001
2002 2002
2003 2003
2004 2004
2005 2005
2006 2006
2007 2007
2008 2008
2009 2009
200A 200A
200B
200E 200E
200F 200F
2028 2028
2029 2029
202A 202A
202B 202B
202C 202C
202D 202D
202E 202E
202F 202F
206A 2060-206F
206B
206C
206D
206E
206F
2FF0-2FFF 2FF0-2FFF
3000 3000
3002 3002
D800-DFFF D800-DFFF
E000-F8FF E000-F8FF
FFF9 FFF0-FFFC
FFFA
FFFB
FFFC
FFFD FFFD
FFFE-FFFF FFFE-FFFF
1FFFE-1FFFF 1FFFE-1FFFF
2FFFE-2FFFF 2FFFE-2FFFF
3FFFE-3FFFF 3FFFE-3FFFF
4FFFE-4FFFF 4FFFE-4FFFF
5FFFE-5FFFF 5FFFE-5FFFF
6FFFE-6FFFF 6FFFE-6FFFF
7FFFE-7FFFF 7FFFE-7FFFF
8FFFE-8FFFF 8FFFE-8FFFF
9FFFE-9FFFF 9FFFE-9FFFF
AFFFE-AFFFF AFFFE-AFFFF
BFFFE-BFFFF BFFFE-BFFFF
CFFFE-CFFFF CFFFE-CFFFF
DFFFE-DFFFF DFFFE-DFFFF
E0000-E0FFF
EFFFE-EFFFF EFFFE-EFFFF
F0000-FFFFD F0000-FFFFD
FFFFE-FFFFF FFFFE-FFFFF
100000-10FFFD 100000-10FFFD
10FFFE-10FFFF 10FFFE-10FFFF
----- End Prohibited Table ----- ----- End Prohibited Table -----
NOTE WELL: Software that follows this specification that will be used to NOTE WELL: Software that follows this specification that will be used to
check names before they are put in authoritative name servers MUST add check names before they are put in authoritative name servers MUST add
all unassigned code pints to the list of characters that are prohibited. all unassigned code pints to the list of characters that are prohibited.
skipping to change at line 1660 skipping to change at line 2186
034F-035F 034F-035F
0363-0373 0363-0373
0376-0379 0376-0379
037B-037D 037B-037D
037F-0383 037F-0383
038B 038B
038D 038D
03A2 03A2
03CF 03CF
03D8-03D9 03D8-03D9
03F4-03FF 03F6-03FF
0487 0487
048A-048B 048A-048B
04C5-04C6 04C5-04C6
04C9-04CA 04C9-04CA
04CD-04CF 04CD-04CF
04F6-04F7 04F6-04F7
04FA-0530 04FA-0530
0557-0558 0557-0558
0560 0560
0588 0588
skipping to change at line 1981 skipping to change at line 2507
FB07-FB12 FB07-FB12
FB18-FB1C FB18-FB1C
FB37 FB37
FB3D FB3D
FB3F FB3F
FB42 FB42
FB45 FB45
FBB2-FBD2 FBB2-FBD2
FD40-FD4F FD40-FD4F
FD90-FD91 FD90-FD91
FDC8-FDEF FDC8-FDCF
FDFC-FE1F FDFC-FE1F
FE24-FE2F FE24-FE2F
FE45-FE48 FE45-FE48
FE53 FE53
FE67 FE67
FE6C-FE6F FE6C-FE6F
FE73 FE73
FE75 FE75
FEFD-FEFE FEFD-FEFE
FF00 FF00
FF5F-FF60 FF5F-FF60
FFBF-FFC1 FFBF-FFC1
FFC8-FFC9 FFC8-FFC9
FFD0-FFD1 FFD0-FFD1
FFD8-FFD9 FFD8-FFD9
FFDD-FFDF FFDD-FFDF
FFE7 FFE7
FFEF-FFF8 FFEF-FFF8
10000-1FFFD 10000-102FF
20000-2FFFD 1031F
10324-1032F
1034B-103FF
10426-10427
1044E-1CFFF
1D0F6-1D0FF
1D127-1D129
1D1DE-1D3FF
1D455
1D49D
1D4A0-1D4A1
1D4A3-1D4A4
1D4A7-1D4A8
1D4AD
1D4BA
1D4BC
1D4C1
1D4C4
1D506
1D50B-1D50C
1D515
1D51D
1D53A
1D53F
1D545
1D547-1D549
1D551
1D6A4-1D6A7
1D7CA-1D7CD
1D800-1FFFD
2A6D7-2F7FF
2FA1E-2FFFD
30000-3FFFD 30000-3FFFD
40000-4FFFD 40000-4FFFD
50000-5FFFD 50000-5FFFD
60000-6FFFD 60000-6FFFD
70000-7FFFD 70000-7FFFD
80000-8FFFD 80000-8FFFD
90000-9FFFD 90000-9FFFD
A0000-AFFFD A0000-AFFFD
B0000-BFFFD B0000-BFFFD
C0000-CFFFD C0000-CFFFD
D0000-DFFFD D0000-DFFFD
E0000-EFFFD E0000
E0002-E001F
E0080-EFFFD
10FFFE-10FFFF
----- End Unassigned Table ----- ----- End Unassigned Table -----
 End of changes. 49 change blocks. 
78 lines changed or deleted 638 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/