idnits 2.17.1 draft-douglass-subscription-upgrade-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. 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 draft header indicates that this document updates RFC5545, but the abstract doesn't seem to mention this, which it should. -- The draft header indicates that this document updates RFC5546, but the abstract doesn't seem to mention this, which it should. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC5545, updated by this document, for RFC5378 checks: 2005-10-26) (Using the creation date from RFC5546, updated by this document, for RFC5378 checks: 2005-10-21) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 16, 2017) is 2625 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: 'I-D.ietf-calext-extensions' is defined on line 201, but no explicit reference was found in the text == Unused Reference: 'RFC2434' is defined on line 210, but no explicit reference was found in the text == Unused Reference: 'RFC3688' is defined on line 215, but no explicit reference was found in the text == Unused Reference: 'RFC4589' is defined on line 224, but no explicit reference was found in the text == Unused Reference: 'RFC5546' is defined on line 233, but no explicit reference was found in the text ** Obsolete normative reference: RFC 2434 (Obsoleted by RFC 5226) ** Obsolete normative reference: RFC 5988 (Obsoleted by RFC 8288) Summary: 2 errors (**), 0 flaws (~~), 6 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group M. Douglass 3 Internet-Draft Spherical Cow Group 4 Updates: 5545,5546 (if approved) February 16, 2017 5 Intended status: Standards Track 6 Expires: August 20, 2017 8 Calendar subscription upgrades 9 draft-douglass-subscription-upgrade-01 11 Abstract 13 This specification introduces an approach to allow subscribers to 14 calendar feeds to upgrade to a more performant protocol. 16 Status of This Memo 18 This Internet-Draft is submitted in full conformance with the 19 provisions of BCP 78 and BCP 79. 21 Internet-Drafts are working documents of the Internet Engineering 22 Task Force (IETF). Note that other groups may also distribute 23 working documents as Internet-Drafts. The list of current Internet- 24 Drafts is at http://datatracker.ietf.org/drafts/current/. 26 Internet-Drafts are draft documents valid for a maximum of six months 27 and may be updated, replaced, or obsoleted by other documents at any 28 time. It is inappropriate to use Internet-Drafts as reference 29 material or to cite them other than as "work in progress." 31 This Internet-Draft will expire on August 20, 2017. 33 Copyright Notice 35 Copyright (c) 2017 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. Code Components extracted from this document must 44 include Simplified BSD License text as described in Section 4.e of 45 the Trust Legal Provisions and are provided without warranty as 46 described in the Simplified BSD License. 48 Table of Contents 50 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 51 1.1. Conventions Used in This Document . . . . . . . . . . . . 2 52 2. Changes to the iCalendar specifications . . . . . . . . . . . 3 53 3. Discovering alternative access methods . . . . . . . . . . . 3 54 4. Link relation subscribe-caldav . . . . . . . . . . . . . . . 3 55 5. Link relation subscribe-caldav-auth . . . . . . . . . . . . . 3 56 6. Link relation subscribe-webdav-sync . . . . . . . . . . . . . 4 57 7. Link relation subscribe-something-else . . . . . . . . . . . 4 58 8. Security Considerations . . . . . . . . . . . . . . . . . . . 4 59 9. Privacy Considerations . . . . . . . . . . . . . . . . . . . 4 60 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 61 10.1. Link Relation Registrations . . . . . . . . . . . . . . 4 62 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 63 12. Normative References . . . . . . . . . . . . . . . . . . . . 5 64 Appendix A. Open issues . . . . . . . . . . . . . . . . . . . . 6 65 Appendix B. Change log . . . . . . . . . . . . . . . . . . . . . 6 66 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6 68 1. Introduction 70 Currently clients subscribe to calendar feeds as an ics file which is 71 often published as a resource accessible using the unofficial 72 'webcal' scheme. 74 The only available option for updating that resource is the usual 75 HTTP polling of cached resources using Etags. 77 There is the usual tension between clients wishing to see a timely 78 response to changes and servers not wishing to be overloaded by 79 frequent requests for possibly large amounts of data. 81 This specification introduces an approach whereby clients can 82 discover a more performant access method. Given the location of the 83 resource as an ics file, the client can perfom an OPTIONS request on 84 the resource and inspect the returned headers which will offer a 85 number of alternative access methods. 87 Given that many clients already support CalDAV this provides an easy 88 upgrade path for those clients. CalDAV and DAV subsets are specified 89 here to allow lighter weight implementations. 91 1.1. Conventions Used in This Document 93 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 94 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 95 "OPTIONAL" in this document are to be interpreted as described in 96 [RFC2119]. 98 2. Changes to the iCalendar specifications 100 This specification does not require any changes to [RFC5545] or its 101 extensions. However it does introduce the use of some properties to 102 provide more information about the resource, for example the time 103 range it covers. 105 3. Discovering alternative access methods 107 The advertising of other access points is achieved through the use of 108 the LINK header as defined in [RFC5988]. New link relation types are 109 defined in this specification - each being associated with a protocol 110 or protocol subset. 112 These LINK headers will be delivered when a client carries out an 113 OPTIONS request targeting the URL of the resource. 115 4. Link relation subscribe-caldav 117 This specifies an access point which is a full implementation of 118 caldav but requires no authentication. The end point allows the full 119 range of reports as defined by the CalDAV specification. 121 The client MUST follow the specification to determine exactly what 122 operations are allowed on the access point - for example to determine 123 if sync-report is supported. 125 The URL MAY include some form of token to allow write access to the 126 targeted collection. The client must check it's permissions to 127 determine whether or not it has been granted write access. 129 5. Link relation subscribe-caldav-auth 131 This specifies an access point which is a full implementation of 132 caldav and requires authentication. This may allow read-write access 133 to the resource. 135 The client MUST follow the specification to determine exactly what 136 operations are allowed on the access point - for example to determine 137 if sync-report is supported. 139 6. Link relation subscribe-webdav-sync 141 This specifies an access point which supports only webdav sync. 143 This allows the client to issue a sync-report on the resource to 144 obtain updates. 146 NOTE: say something about initial startup - use ics to populate? 147 Initial token? 149 The client MUST follow that specification. 151 7. Link relation subscribe-something-else 153 This specifies an access point which supports something new. 155 The client MUST follow that specification. 157 8. Security Considerations 159 Applications using these properties need to be aware of the risks 160 entailed in using the URIs provided as values. See [RFC3986] for a 161 discussion of the security considerations relating to URIs. 163 9. Privacy Considerations 165 Properties with a "URI" value type can expose their users to privacy 166 leaks as any network access of the URI data can be tracked. Clients 167 SHOULD NOT automatically download data referenced by the URI without 168 explicit instruction from users. This specification does not 169 introduce any additional privacy concerns beyond those described in 170 [RFC5545]. 172 10. IANA Considerations 174 10.1. Link Relation Registrations 176 This document defines the following new iCalendar properties to be 177 added to the registry defined in Section 8.2.3 of [RFC5545]: 179 +--------------------------+-------------+--------------------+ 180 | Relation Name | Description | Reference | 181 +--------------------------+-------------+--------------------+ 182 | subscribe-caldav | Current | RFCXXXX, Section 4 | 183 | subscribe-caldav_auth | Current | RFCXXXX, Section 5 | 184 | subscribe-webdav-sync | Current | RFCXXXX, Section 6 | 185 | subscribe-something-else | Current | RFCXXXX, Section 7 | 186 +--------------------------+-------------+--------------------+ 188 11. Acknowledgements 190 The author would also like to thank the members of the Calendaring 191 and Scheduling Consortium Calendar Sharing technical committee and 192 the following individuals for contributing their ideas and support: 194 ... 196 The authors would also like to thank the Calendaring and Scheduling 197 Consortium for advice with this specification. 199 12. Normative References 201 [I-D.ietf-calext-extensions] 202 Daboo, C., "New Properties for iCalendar", draft-ietf- 203 calext-extensions-05 (work in progress), August 2016. 205 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 206 Requirement Levels", BCP 14, RFC 2119, 207 DOI 10.17487/RFC2119, March 1997, 208 . 210 [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an 211 IANA Considerations Section in RFCs", RFC 2434, 212 DOI 10.17487/RFC2434, October 1998, 213 . 215 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 216 DOI 10.17487/RFC3688, January 2004, 217 . 219 [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform 220 Resource Identifier (URI): Generic Syntax", STD 66, 221 RFC 3986, DOI 10.17487/RFC3986, January 2005, 222 . 224 [RFC4589] Schulzrinne, H. and H. Tschofenig, "Location Types 225 Registry", RFC 4589, DOI 10.17487/RFC4589, July 2006, 226 . 228 [RFC5545] Desruisseaux, B., Ed., "Internet Calendaring and 229 Scheduling Core Object Specification (iCalendar)", 230 RFC 5545, DOI 10.17487/RFC5545, September 2009, 231 . 233 [RFC5546] Daboo, C., Ed., "iCalendar Transport-Independent 234 Interoperability Protocol (iTIP)", RFC 5546, 235 DOI 10.17487/RFC5546, December 2009, 236 . 238 [RFC5988] Nottingham, M., "Web Linking", RFC 5988, 239 DOI 10.17487/RFC5988, October 2010, 240 . 242 [W3C.REC-xml-20060816] 243 Bray, T., Paoli, J., Sperberg-McQueen, M., Maler, E., and 244 F. Yergeau, "Extensible Markup Language (XML) 1.0 (Fourth 245 Edition)", World Wide Web Consortium Recommendation REC- 246 xml-20060816, August 2006, 247 . 249 Appendix A. Open issues 251 restype values: Need to determine what if any registry of resource 252 types already exists and use that. 254 Appendix B. Change log 256 v01 2017-17-02 MD 258 o Add text abut OPTIONS 260 o Add text abut read/write CalDAV 262 v00 2017-15-02 MD 264 o First pass 266 Author's Address 268 Michael Douglass 269 Spherical Cow Group 270 226 3rd Street 271 Troy, NY 12180 272 USA 274 Email: mdouglass@sphericalcowgroup.com 275 URI: http://sphericalcowgroup.com