idnits 2.17.1 draft-ietf-morg-collations-00.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? -- It seems you're using the 'non-IETF stream' Licence Notice instead 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 : ---------------------------------------------------------------------------- ** The document seems to lack an Introduction section. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (February 14, 2009) is 5550 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'RFC4790' is defined on line 228, but no explicit reference was found in the text == Unused Reference: 'RFC3501' is defined on line 234, but no explicit reference was found in the text -- Obsolete informational reference (is this intentional?): RFC 3501 (Obsoleted by RFC 9051) Summary: 2 errors (**), 0 flaws (~~), 4 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 IMAPEXT A. Melnikov 3 Internet-Draft Isode Limited 4 Intended status: Standards Track February 14, 2009 5 Expires: August 18, 2009 7 Additional collation algorithms for use in IMAP and Sieve 8 draft-ietf-morg-collations-00 10 Status of this Memo 12 This Internet-Draft is submitted to IETF in full conformance with the 13 provisions of BCP 78 and BCP 79. 15 Internet-Drafts are working documents of the Internet Engineering 16 Task Force (IETF), its areas, and its working groups. Note that 17 other groups may also distribute working documents as Internet- 18 Drafts. 20 Internet-Drafts are draft documents valid for a maximum of six months 21 and may be updated, replaced, or obsoleted by other documents at any 22 time. It is inappropriate to use Internet-Drafts as reference 23 material or to cite them other than as "work in progress." 25 The list of current Internet-Drafts can be accessed at 26 http://www.ietf.org/ietf/1id-abstracts.txt. 28 The list of Internet-Draft Shadow Directories can be accessed at 29 http://www.ietf.org/shadow.html. 31 This Internet-Draft will expire on August 18, 2009. 33 Copyright Notice 35 Copyright (c) 2009 IETF Trust and the persons identified as the 36 document authors. All rights reserved. 38 This document is subject to BCP 78 and the IETF Trust's Legal 39 Provisions Relating to IETF Documents 40 (http://trustee.ietf.org/license-info) in effect on the date of 41 publication of this document. Please review these documents 42 carefully, as they describe your rights and restrictions with respect 43 to this document. 45 Abstract 47 This document defines extra collation that were found useful when 48 searching for text in email messages. 50 Note 52 A revised version of this draft document will be submitted to the RFC 53 editor as a Proposed Standard for the Internet Community. Discussion 54 and suggestions for improvement are requested, and should be sent to 55 morg@ietf.org. 57 Table of Contents 59 1. Conventions used in this document . . . . . . . . . . . . . . 3 61 2. ASCII Signed Numeric Collation Description . . . . . . . . . 3 62 2.1. ASCII Signed Numeric Collation Registration . . . . . . . . . 4 64 3. ASCII Punctuation Ignore Numeric Collation Description . . . 4 65 3.1. ASCII Punctuation Ignore Numeric Collation Registration . . . 5 67 4. Other Collations . . . . . . . . . . . . . . . . . . . . . . 5 69 5. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 5 71 6. Security Considerations . . . . . . . . . . . . . . . . . . . 5 73 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 75 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 77 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 78 9.1. Normative References . . . . . . . . . . . . . . . . . . . . 6 79 9.2. Informative References . . . . . . . . . . . . . . . . . . . 6 81 Author's Address . . . . . . . . . . . . . . . . . . . . . . 6 83 1. Conventions used in this document 85 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 86 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 87 document are to be interpreted as described in RFC 2119 [Kwds]. 89 2. ASCII Signed Numeric Collation Description 91 The "i;ascii-signed-numeric" collation is a simple collation intended 92 for use with arbitrarily-sized, signed decimal integer numbers stored 93 as octet strings. US-ASCII digits (0x30 to 0x39) represent digits of 94 the numbers. The numbers can have an arbitrary number of leading US- 95 ASCII whitespace characters (0x20), optionally followed by the sign 96 ("+", "-") and then by digits of the number. If the "+" sign is 97 omitted, the number is considered to be positive. 99 Before converting from string to integer, all leading whitespace 100 characters are removed. If no "+" or "-" character is found, "+" is 101 then prepended to the string. And finally, the input string is 102 truncated at the first non-digit character, not counting the "+"/"-" 103 prefix. All input is valid for this collation; strings that do not 104 start (after whitespace removal) with a "+", "-" or a digit represent 105 positive infinity. 107 The collation supports equality and ordering, but does not support 108 the substring operation. 110 The equality operation returns "match" if the two strings represent 111 the same number (i.e., leading whitespaces, zeroes and trailing non- 112 digits are disregarded), and "no-match" if the two strings represent 113 different numbers. 115 The ordering operation returns "less" if the first string represents 116 a smaller number than the second, "equal" if they represent the same 117 number, and "greater" if the first string represents a larger number 118 than the second. 120 Some examples: " -500" is less than "-90", " 0" is less than "1M", 121 and "1" is less than "4294967298". "4294967298", "04294967298", and 122 "4294967298b" are all equal. "04294967298" is less than "". "+", "-", 123 "", "x", and "y" are equal. 125 2.1. ASCII Signed Numeric Collation Registration 127 128 129 130 i;ascii-signed-numeric 131 ASCII Signed Numeric 132 equality order 133 RFC XXXX 134 IETF 135 alexey.melnikov@isode.com 136 138 3. ASCII Punctuation Ignore Numeric Collation Description 140 The "i;ascii-punc-ignore-numeric" collation is a collation intended 141 for use with arbitrarily-sized, unsigned decimal integer numbers 142 stored as octet strings. US-ASCII digits (0x30 to 0x39) represent 143 digits of the numbers. Any digit of such numbers can be followed or 144 preceeded by any number of the following US-ASCII characters, which 145 are ignored for the purpose of comparison: " " (0x20), "-", "+", ",", 146 ";", ".". [[anchor5: The list of characters to ignore is to be 147 discussed.]] 149 Before converting from string to integer, all characters to be 150 ignored are removed from the string. After that, the input string is 151 truncated at the first non-digit character. All input is valid for 152 this collation; strings that do not start (after removal of all 153 characters to ignore) with a digit represent positive infinity. 155 The collation supports equality and ordering, but does not support 156 the substring operation. 158 The equality operation returns "match" if the two strings represent 159 the same number (i.e., leading whitespaces, zeroes and trailing non- 160 digits are disregarded), and "no-match" if the two strings represent 161 different numbers. 163 The ordering operation returns "less" if the first string represents 164 a smaller number than the second, "equal" if they represent the same 165 number, and "greater" if the first string represents a larger number 166 than the second. 168 Some examples: "+1-500" is less than "2 50.0", " 0" is less than 169 "1M", and "1" is less than "4294967298". "4294967298", "04294967298", 170 and "4294967298b" are all equal. "04294967298" is less than "". "+", 171 "-", "", "x", and "y" are equal. 173 3.1. ASCII Punctuation Ignore Numeric Collation Registration 175 176 177 178 i;ascii-punc-ignore-numeric 179 ASCII Punctuation Ignore Numeric 180 equality order 181 RFC XXXX 182 IETF 183 alexey.melnikov@isode.com 184 186 4. Other Collations 188 [[anchor8: Other collations to consider: case preserving version of 189 i;unicode-casemap defined in RFC 5051.]] 191 5. Formal Syntax 193 The following syntax specification uses the augmented Backus-Naur 194 Form (BNF) as described in [ABNF]. Terms not defined here are taken 195 from [ABNF]. 197 ascii-signed-numeric = *SP [("-" / "+")] 1*DIGIT 198 ; This production defines valid string prefixes 200 punc-ignore-unsigned-numeric = *punctuation DIGIT 201 *(punctuation / DIGIT) 202 ; This production defines valid string prefixes 204 punctuation = SP / "+" / "-" / "." / "," / ";" 206 6. Security Considerations 208 [[anchor9: TBD.]] 210 7. IANA Considerations 212 TBD. 214 8. Acknowledgements 216 TBD. 218 9. References 220 9.1. Normative References 222 [ABNF] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 223 Specifications: ABNF", RFC 5234, January 2008. 225 [Kwds] Bradner, S., "Key words for use in RFCs to Indicate 226 Requirement Levels", RFC 2119, March 1997. 228 [RFC4790] Newman, C., Duerst, M., and A. Gulbrandsen, "Internet 229 Application Protocol Collation Registry", RFC 4790, 230 March 2007. 232 9.2. Informative References 234 [RFC3501] Crispin, M., "INTERNET MESSAGE ACCESS PROTOCOL - VERSION 235 4rev1", RFC 3501, March 2003. 237 Author's Address 239 Alexey Melnikov 240 Isode Limited 241 5 Castle Business Village 242 36 Station Road 243 Hampton, Middlesex TW12 2BX 244 UK 246 Email: Alexey.Melnikov@isode.com 247 URI: http://www.melnikov.ca/