imapext-2007
diff docs/rfc/rfc5032.txt @ 0:ada5e610ab86
imap-2007e
author | yuuji@gentei.org |
---|---|
date | Mon, 14 Sep 2009 15:17:45 +0900 |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/docs/rfc/rfc5032.txt Mon Sep 14 15:17:45 2009 +0900 1.3 @@ -0,0 +1,283 @@ 1.4 + 1.5 + 1.6 + 1.7 + 1.8 + 1.9 + 1.10 +Network Working Group E. Burger, Ed. 1.11 +Request for Comments: 5032 BEA Systems, Inc. 1.12 +Updates: 3501 September 2007 1.13 +Category: Standards Track 1.14 + 1.15 + 1.16 + WITHIN Search Extension to the IMAP Protocol 1.17 + 1.18 +Status of This Memo 1.19 + 1.20 + This document specifies an Internet standards track protocol for the 1.21 + Internet community, and requests discussion and suggestions for 1.22 + improvements. Please refer to the current edition of the "Internet 1.23 + Official Protocol Standards" (STD 1) for the standardization state 1.24 + and status of this protocol. Distribution of this memo is unlimited. 1.25 + 1.26 +Abstract 1.27 + 1.28 + This document describes the WITHIN extension to IMAP SEARCH. IMAP 1.29 + SEARCH returns messages whose internal date is within or outside a 1.30 + specified interval. The mechanism described here, OLDER and YOUNGER, 1.31 + differs from BEFORE and SINCE in that the client specifies an 1.32 + interval, rather than a date. WITHIN is useful for persistent 1.33 + searches where either the device does not have the capacity to 1.34 + perform the search at regular intervals or the network is of limited 1.35 + bandwidth and thus there is a desire to reduce network traffic from 1.36 + sending repeated requests and redundant responses. 1.37 + 1.38 +1. Introduction 1.39 + 1.40 + This extension exposes two new search keys, OLDER and YOUNGER, each 1.41 + of which takes a non-zero integer argument corresponding to a time 1.42 + interval in seconds. The server calculates the time of interest by 1.43 + subtracting the time interval the client presents from the current 1.44 + date and time of the server. The server then either returns messages 1.45 + older or younger than the resultant time and date, depending on the 1.46 + search key used. 1.47 + 1.48 +1.1. Conventions Used in This Document 1.49 + 1.50 + In examples, "C:" and "S:" indicate lines sent by the client and 1.51 + server, respectively. 1.52 + 1.53 + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 1.54 + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 1.55 + document are to be interpreted as described in RFC 2119 [RFC2119]. 1.56 + 1.57 + 1.58 + 1.59 + 1.60 + 1.61 +Burger Standards Track [Page 1] 1.62 + 1.63 +RFC 5032 Search Within September 2007 1.64 + 1.65 + 1.66 + When describing the general syntax, we omit some definitions, as RFC 1.67 + 3501 [RFC3501] defines them. 1.68 + 1.69 +2. Protocol Operation 1.70 + 1.71 + An IMAP4 server that supports the capability described here MUST 1.72 + return "WITHIN" as one of the server supported capabilities in the 1.73 + CAPABILITY command. 1.74 + 1.75 + For both the OLDER and YOUNGER search keys, the server calculates a 1.76 + target date and time by subtracting the interval, specified in 1.77 + seconds, from the current date and time of the server. The server 1.78 + then compares the target time with the INTERNALDATE of the message, 1.79 + as specified in IMAP [RFC3501]. For OLDER, messages match if the 1.80 + INTERNALDATE is less recent than or equal to the target time. For 1.81 + YOUNGER, messages match if the INTERNALDATE is more recent than or 1.82 + equal to the target time. 1.83 + 1.84 + Both OLDER and YOUNGER searches always result in exact matching, to 1.85 + the resolution of a second. However, if one is doing a dynamic 1.86 + evaluation, for example, in a context [CONTEXT], one needs to be 1.87 + aware that the server might perform the evaluation periodically. 1.88 + Thus, the server may delay the updates. Clients MUST be aware that 1.89 + dynamic search results may not reflect the current state of the 1.90 + mailbox. If the client needs a search result that reflects the 1.91 + current state of the mailbox, we RECOMMEND that the client issue a 1.92 + new search. 1.93 + 1.94 +3. Formal Syntax 1.95 + 1.96 + The following syntax specification uses the Augmented Backus-Naur 1.97 + Form (ABNF) notation. Elements not defined here can be found in the 1.98 + formal syntax of ABNF [RFC4234] and IMAP [RFC3501]. 1.99 + 1.100 + This document extends RFC 3501 [RFC3501] with two new search keys: 1.101 + OLDER <interval> and YOUNGER <interval>. 1.102 + 1.103 + search-key =/ ( "OLDER" / "YOUNGER" ) SP nz-number 1.104 + ; search-key defined in RFC 3501 1.105 + 1.106 +4. Example 1.107 + 1.108 + C: a1 SEARCH UNSEEN YOUNGER 259200 1.109 + S: a1 * SEARCH 4 8 15 16 23 42 1.110 + 1.111 + Search for all unseen messages within the past 3 days, or 259200 1.112 + seconds, according to the server's current time. 1.113 + 1.114 + 1.115 + 1.116 + 1.117 +Burger Standards Track [Page 2] 1.118 + 1.119 +RFC 5032 Search Within September 2007 1.120 + 1.121 + 1.122 +5. Security Considerations 1.123 + 1.124 + The WITHIN extension does not raise any security considerations that 1.125 + are not present in the base protocol. Considerations are the same as 1.126 + for IMAP [RFC3501]. 1.127 + 1.128 +6. IANA Considerations 1.129 + 1.130 + Per the IMAP RFC [RFC3501], registration of a new IMAP capability in 1.131 + the IMAP Capability registry requires the publication of a standards- 1.132 + track RFC or an IESG approved experimental RFC. The registry is 1.133 + currently located at 1.134 + <http://www.iana.org/assignments/imap4-capabilities>. This 1.135 + standards-track document defines the WITHIN IMAP capability. IANA 1.136 + has added this extension to the IANA IMAP Capability registry. 1.137 + 1.138 +7. References 1.139 + 1.140 +7.1. Normative References 1.141 + 1.142 + [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1.143 + Requirement Levels", RFC 2119, BCP 14, March 1997. 1.144 + 1.145 + [RFC3501] Crispin, M., "Internet Message Access Protocol - Version 1.146 + 4rev1", RFC 3501, March 2003. 1.147 + 1.148 + [RFC4234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 1.149 + Specifications: ABNF", RFC 4234, October 2005. 1.150 + 1.151 +7.2. Informative References 1.152 + 1.153 + [CONTEXT] Melnikov, D. and C. King, "Contexts for IMAP4", Work 1.154 + in Progress, May 2006. 1.155 + 1.156 + 1.157 + 1.158 + 1.159 + 1.160 + 1.161 + 1.162 + 1.163 + 1.164 + 1.165 + 1.166 + 1.167 + 1.168 + 1.169 + 1.170 + 1.171 + 1.172 + 1.173 +Burger Standards Track [Page 3] 1.174 + 1.175 +RFC 5032 Search Within September 2007 1.176 + 1.177 + 1.178 +Appendix A. Contributors 1.179 + 1.180 + Stephane Maes and Ray Cromwell wrote the original version of this 1.181 + document as part of P-IMAP, as well as the first versions for the 1.182 + IETF. From an attribution perspective, they are clearly authors. 1.183 + 1.184 +Appendix B. Acknowledgements 1.185 + 1.186 + The authors want to thank all who have contributed key insight and 1.187 + who have extensively reviewed and discussed the concepts of LPSEARCH. 1.188 + They also thank the authors of its early introduction in P-IMAP. 1.189 + 1.190 + We also want to give a special thanks to Arnt Gilbrandsen, Ken 1.191 + Murchison, Zoltan Ordogh, and most especially Dave Cridland for their 1.192 + review and suggestions. A special thank you goes to Alexey Melnikov 1.193 + for his choice submission of text. 1.194 + 1.195 +Author's Address 1.196 + 1.197 + Eric W. Burger (editor) 1.198 + BEA Systems, Inc. 1.199 + USA 1.200 + 1.201 + EMail: eric.burger@bea.com 1.202 + URI: http://www.standardstrack.com 1.203 + 1.204 + 1.205 + 1.206 + 1.207 + 1.208 + 1.209 + 1.210 + 1.211 + 1.212 + 1.213 + 1.214 + 1.215 + 1.216 + 1.217 + 1.218 + 1.219 + 1.220 + 1.221 + 1.222 + 1.223 + 1.224 + 1.225 + 1.226 + 1.227 + 1.228 + 1.229 +Burger Standards Track [Page 4] 1.230 + 1.231 +RFC 5032 Search Within September 2007 1.232 + 1.233 + 1.234 +Full Copyright Statement 1.235 + 1.236 + Copyright (C) The IETF Trust (2007). 1.237 + 1.238 + This document is subject to the rights, licenses and restrictions 1.239 + contained in BCP 78, and except as set forth therein, the authors 1.240 + retain all their rights. 1.241 + 1.242 + This document and the information contained herein are provided on an 1.243 + "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1.244 + OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1.245 + THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1.246 + OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1.247 + THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1.248 + WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1.249 + 1.250 +Intellectual Property 1.251 + 1.252 + The IETF takes no position regarding the validity or scope of any 1.253 + Intellectual Property Rights or other rights that might be claimed to 1.254 + pertain to the implementation or use of the technology described in 1.255 + this document or the extent to which any license under such rights 1.256 + might or might not be available; nor does it represent that it has 1.257 + made any independent effort to identify any such rights. Information 1.258 + on the procedures with respect to rights in RFC documents can be 1.259 + found in BCP 78 and BCP 79. 1.260 + 1.261 + Copies of IPR disclosures made to the IETF Secretariat and any 1.262 + assurances of licenses to be made available, or the result of an 1.263 + attempt made to obtain a general license or permission for the use of 1.264 + such proprietary rights by implementers or users of this 1.265 + specification can be obtained from the IETF on-line IPR repository at 1.266 + http://www.ietf.org/ipr. 1.267 + 1.268 + The IETF invites any interested party to bring to its attention any 1.269 + copyrights, patents or patent applications, or other proprietary 1.270 + rights that may cover technology that may be required to implement 1.271 + this standard. Please address the information to the IETF at 1.272 + ietf-ipr@ietf.org. 1.273 + 1.274 + 1.275 + 1.276 + 1.277 + 1.278 + 1.279 + 1.280 + 1.281 + 1.282 + 1.283 + 1.284 + 1.285 +Burger Standards Track [Page 5] 1.286 +