idnits 2.17.1 draft-ietf-idnabis-mappings-05.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** The document seems to lack a License Notice according IETF Trust Provisions of 28 Dec 2009, Section 6.b.i or Provisions of 12 Sep 2009 Section 6.b -- however, there's a paragraph with a matching beginning. Boilerplate error? (You're using the IETF Trust Provisions' Section 6.b License Notice from 12 Feb 2009 rather than one of the newer Notices. See https://trustee.ietf.org/license-info/.) Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to contain a disclaimer for pre-RFC5378 work, but was first submitted on or after 10 November 2008. The disclaimer is usually necessary only for documents that revise or obsolete older RFCs, and that take significant amounts of text from those RFCs. If you can contact all authors of the source material and they are willing to grant the BCP78 rights to the IETF Trust, you can and should remove the disclaimer. Otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 19, 2009) is 5301 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Outdated reference: A later version (-18) exists of draft-ietf-idnabis-protocol-16 Summary: 1 error (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 IDNABIS P. Resnick 3 Internet-Draft Qualcomm Incorporated 4 Intended status: Informational P. Hoffman 5 Expires: April 22, 2010 VPN Consortium 6 October 19, 2009 8 Mapping Characters in IDNA 9 draft-ietf-idnabis-mappings-05 11 Status of this Memo 13 This Internet-Draft is submitted to IETF in full conformance with the 14 provisions of BCP 78 and BCP 79. This document may contain material 15 from IETF Documents or IETF Contributions published or made publicly 16 available before November 10, 2008. The person(s) controlling the 17 copyright in some of this material may not have granted the IETF 18 Trust the right to allow modifications of such material outside the 19 IETF Standards Process. Without obtaining an adequate license from 20 the person(s) controlling the copyright in such materials, this 21 document may not be modified outside the IETF Standards Process, and 22 derivative works of it may not be created outside the IETF Standards 23 Process, except to format it for publication as an RFC or to 24 translate it into languages other than English. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF), its areas, and its working groups. Note that 28 other groups may also distribute working documents as Internet- 29 Drafts. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 The list of current Internet-Drafts can be accessed at 37 http://www.ietf.org/ietf/1id-abstracts.txt. 39 The list of Internet-Draft Shadow Directories can be accessed at 40 http://www.ietf.org/shadow.html. 42 This Internet-Draft will expire on April 22, 2010. 44 Copyright Notice 46 Copyright (c) 2009 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents in effect on the date of 51 publication of this document (http://trustee.ietf.org/license-info). 52 Please review these documents carefully, as they describe your rights 53 and restrictions with respect to this document. 55 Abstract 57 In the original version of the Internationalized Domain Names in 58 Applications (IDNA) protocol, any Unicode code points taken from user 59 input were mapped into a set of Unicode code points that "make 60 sense", which were then encoded and passed to the domain name system 61 (DNS). The current version of IDNA presumes that the input to the 62 protocol comes from a set of "permitted" code points, which it then 63 encodes and passes to the DNS, but does not specify what to do with 64 the result of user input. This document describes the actions that 65 can be taken by an implementation between user input and passing 66 permitted code points to the new IDNA protocol. 68 1. Introduction 70 This document describes the operations that can be applied to user 71 input in order to get it into a form acceptable by the 72 Internationalized Domain Names in Applications (IDNA) protocol 73 [I-D.ietf-idnabis-protocol]. A general implementation procedure for 74 mapping is given in section 2. 76 It should be noted that this document does not specify the behavior 77 of a protocol that appears "on the wire". It describes an operation 78 that is to be applied to user input in order to prepare that user 79 input for use in an "on the network" protocol. As unusual as this 80 may be for an IETF protocol document, it is a necessary operation to 81 maintain interoperability. 83 2. The General Procedure 85 This section defines a general algorithm that applications ought to 86 implement in order to produce Unicode code points that will be valid 87 under the IDNA protocol. An application might implement the full 88 mapping as described below, or can choose a different mapping. In 89 fact, an application might want to implement a full mapping that is 90 substantially compatible with the original IDNA protocol instead of 91 the algorithm given here. 93 The general algorithm that an application (or the input method 94 provided by an operating system) ought to use is relatively 95 straightforward: 97 1. Upper case characters are mapped to their lower case equivalents 98 by using the algorithm for mapping case in Unicode characters. 100 2. Full-width and half-width characters (those defined with 101 Decomposition Types and ) are mapped to their 102 decomposition mappings as shown in the Unicode character 103 database. 105 3. All characters are mapped using Unicode Normalization Form C 106 (NFC). 108 4. [I-D.ietf-idnabis-protocol] is specified such that the protocol 109 acts on the indvidual labels of the domain name. If an 110 implementation of this mapping is also performing the step of 111 separation of the parts of a domain name into labels by using the 112 FULL STOP character (U+002E), the following character can be 113 mapped to the FULL STOP before label separation occurs: 115 * IDEOGRAPHIC FULL STOP (U+3002) 117 There are other characters that are used as "full stops" that one 118 could consider mapping as label separators, but their use as such 119 has not been investigated thoroughly. 121 Definitions for the rules in this algorithm can be found in 122 [Unicode51]. Specifically: 124 o Unicode Normalization Form C can be found in Annex #15 of 125 [Unicode51]. 127 o In order to map upper case characters to their lower case 128 equivalents (defined in section 3.13 of [Unicode51]), first map 129 characters to the "Lowercase_Mapping" property (the "" 130 entry in the second column) in 131 , if any. 132 Then, map characters to the "Simple_Lowercase_Mapping" property 133 (the fourteenth column) in 134 , if any. 136 o In order to map full-width and half-width characters to their 137 decomposition mappings, map any character whose 138 "Decomposition_Type" (contained in the first part of of the sixth 139 column) in 140 is either "" or "" to the "Decomposition_Mapping" of 141 that character (contained in the second part of the sixth column) 142 in . 144 o The web page has 145 useful descriptions of the contents of these files. 147 If the mappings in this document are applied to versions of Unicode 148 later than Unicode 5.1, the later versions of the Unicode Standard 149 should be consulted. 151 These form a minimal set of mappings that an application should 152 strongly consider doing. Of course, there are many others that might 153 be done. 155 3. IANA Considerations 157 This memo includes no request to IANA. 159 4. Security Considerations 161 This document suggests creating mappings that might cause confusion 162 for some users while alleviating confusion in other users. Such 163 confusion is not covered in any depth in this document (nor in the 164 other IDNA-related documents). 166 5. Acknowledgements 168 This document is the product of the IDNAbis Working Group and 169 contains contributions from many people in the Working Group. 171 6. Normative References 173 [I-D.ietf-idnabis-protocol] 174 Klensin, J., "Internationalized Domain Names in 175 Applications (IDNA): Protocol", 176 draft-ietf-idnabis-protocol-16 (work in progress), 177 September 2009. 179 [Unicode51] 180 The Unicode Consortium, "The Unicode Standard, Version 181 5.1.0", 2008. 183 defined by: The Unicode Standard, Version 5.0, Boston, MA, 184 Addison-Wesley, 2007, ISBN 0-321-48091-0, as amended by 185 Unicode 5.1.0 186 (). 188 Authors' Addresses 190 Peter W. Resnick 191 Qualcomm Incorporated 192 5775 Morehouse Drive 193 San Diego, CA 92121-1714 194 US 196 Phone: +1 858 651 4478 197 Email: presnick@qualcomm.com 198 URI: http://www.qualcomm.com/~presnick/ 200 Paul Hoffman 201 VPN Consortium 202 127 Segre Place 203 Santa Cruz, CA 95060 204 US 206 Phone: 1-831-426-9827 207 Email: paul.hoffman@vpnc.org