PRECIS Framework: Preparation, Enforcement, and Comparison of Internationalized Strings in Application Protocols
RFC 7564
Document | Type |
RFC - Proposed Standard
(May 2015; Errata)
Obsoleted by RFC 8264
Obsoletes RFC 3454
|
|
---|---|---|---|
Authors | Peter Saint-Andre , Marc Blanchet | ||
Last updated | 2015-12-20 | ||
Replaces | draft-blanchet-precis-framework | ||
Stream | IETF | ||
Formats | plain text html pdf htmlized bibtex | ||
Reviews | |||
Stream | WG state | Submitted to IESG for Publication | |
Document shepherd | Alexey Melnikov | ||
Shepherd write-up | Show (last changed 2014-02-10) | ||
IESG | IESG state | RFC 7564 (Proposed Standard) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Yes | ||
Telechat date | |||
Responsible AD | Pete Resnick | ||
IESG note | Please be aware of the note in the ballot, especially regarding the IAB Statement. | ||
Send notices to | (None) | ||
IANA | IANA review state | Version Changed - Review Needed | |
IANA action state | RFC-Ed-Ack |
Internet Engineering Task Force (IETF) P. Saint-Andre Request for Comments: 7564 &yet Obsoletes: 3454 M. Blanchet Category: Standards Track Viagenie ISSN: 2070-1721 May 2015 PRECIS Framework: Preparation, Enforcement, and Comparison of Internationalized Strings in Application Protocols Abstract Application protocols using Unicode characters in protocol strings need to properly handle such strings in order to enforce internationalization rules for strings placed in various protocol slots (such as addresses and identifiers) and to perform valid comparison operations (e.g., for purposes of authentication or authorization). This document defines a framework enabling application protocols to perform the preparation, enforcement, and comparison of internationalized strings ("PRECIS") in a way that depends on the properties of Unicode characters and thus is agile with respect to versions of Unicode. As a result, this framework provides a more sustainable approach to the handling of internationalized strings than the previous framework, known as Stringprep (RFC 3454). This document obsoletes RFC 3454. Status of This Memo This is an Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7564. Saint-Andre & Blanchet Standards Track [Page 1] RFC 7564 PRECIS Framework May 2015 Copyright Notice Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction ....................................................4 2. Terminology .....................................................7 3. Preparation, Enforcement, and Comparison ........................7 4. String Classes ..................................................8 4.1. Overview ...................................................8 4.2. IdentifierClass ............................................9 4.2.1. Valid ...............................................9 4.2.2. Contextual Rule Required ...........................10 4.2.3. Disallowed .........................................10 4.2.4. Unassigned .........................................11 4.2.5. Examples ...........................................11 4.3. FreeformClass .............................................11 4.3.1. Valid ..............................................11 4.3.2. Contextual Rule Required ...........................12 4.3.3. Disallowed .........................................12 4.3.4. Unassigned .........................................12 4.3.5. Examples ...........................................12 5. Profiles .......................................................13 5.1. Profiles Must Not Be Multiplied beyond Necessity ..........13 5.2. Rules .....................................................14 5.2.1. Width Mapping Rule .................................14 5.2.2. Additional Mapping Rule ............................14 5.2.3. Case Mapping Rule ..................................14 5.2.4. Normalization Rule .................................15 5.2.5. Directionality Rule ................................15 5.3. A Note about Spaces .......................................16 6. Applications ...................................................17 6.1. How to Use PRECIS in Applications .........................17 6.2. Further Excluded Characters ...............................18 6.3. Building Application-Layer Constructs .....................18Show full document text