| < draft-ietf-calext-subscription-upgrade-05.txt | draft-ietf-calext-subscription-upgrade-06.txt > | |||
|---|---|---|---|---|
| Network Working Group M. Douglass | Network Working Group M. Douglass | |||
| Internet-Draft 5 March 2022 | Internet-Draft 21 March 2022 | |||
| Updates: 5988 (if approved) | Updates: 5545 (if approved) | |||
| Intended status: Standards Track | Intended status: Standards Track | |||
| Expires: 6 September 2022 | Expires: 22 September 2022 | |||
| Calendar subscription upgrades | Calendar subscription upgrades | |||
| draft-ietf-calext-subscription-upgrade-05 | draft-ietf-calext-subscription-upgrade-06 | |||
| Abstract | Abstract | |||
| This specification updates RFC5545 to add the value DELETED to the | This specification updates RFC5545 to add the value DELETED to the | |||
| STATUS property. | STATUS property. | |||
| This specification also updates RFC7240 to add the subscribe- | This specification also adds values to the Preferences Registry | |||
| enhanced-get and limit preferences. | defined in RFC7240 to add the subscribe-enhanced-get and limit | |||
| preferences and to the link relations directory defined in RFC8288. | ||||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on 6 September 2022. | This Internet-Draft will expire on 22 September 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2022 IETF Trust and the persons identified as the | Copyright (c) 2022 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
| Please review these documents carefully, as they describe your rights | Please review these documents carefully, as they describe your rights | |||
| and restrictions with respect to this document. Code Components | and restrictions with respect to this document. Code Components | |||
| extracted from this document must include Revised BSD License text as | extracted from this document must include Revised BSD License text as | |||
| described in Section 4.e of the Trust Legal Provisions and are | described in Section 4.e of the Trust Legal Provisions and are | |||
| provided without warranty as described in the Revised BSD License. | provided without warranty as described in the Revised BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2.1. Terms and Definitions . . . . . . . . . . . . . . . . . . 3 | 2.1. Terms and Definitions . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Discovering alternative access methods . . . . . . . . . . . 3 | 3. Discovering alternative access methods . . . . . . . . . . . 4 | |||
| 4. Enhanced GET . . . . . . . . . . . . . . . . . . . . . . . . 4 | 4. Enhanced GET . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 4.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 4.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 4.2. Deletions . . . . . . . . . . . . . . . . . . . . . . . . 5 | 4.2. Deletions . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4.3. Handling of invalid sync tokens . . . . . . . . . . . . . 5 | 4.3. Handling of invalid sync tokens . . . . . . . . . . . . . 5 | |||
| 4.4. Paging the response . . . . . . . . . . . . . . . . . . . 5 | 4.4. Paging the response . . . . . . . . . . . . . . . . . . . 5 | |||
| 4.5. Caching of responses . . . . . . . . . . . . . . . . . . 6 | 4.5. Caching of responses . . . . . . . . . . . . . . . . . . 6 | |||
| 4.6. Examples . . . . . . . . . . . . . . . . . . . . . . . . 6 | 4.6. Examples . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5. Changes to the iCalendar specifications . . . . . . . . . . . 8 | 5. Changes to the iCalendar specifications . . . . . . . . . . . 8 | |||
| 5.1. Redefined Status property . . . . . . . . . . . . . . . . 8 | 5.1. Redefined Status property . . . . . . . . . . . . . . . . 9 | |||
| 6. Header Field: Sync-Token . . . . . . . . . . . . . . . . . . 10 | 6. Header Field: Sync-Token . . . . . . . . . . . . . . . . . . 11 | |||
| 7. New Prefer header field preferences . . . . . . . . . . . . . 10 | 7. New Prefer header field preferences . . . . . . . . . . . . . 11 | |||
| 7.1. Preference subscribe-enhanced-get . . . . . . . . . . . . 10 | 7.1. Preference subscribe-enhanced-get . . . . . . . . . . . . 11 | |||
| 7.2. Preference limit . . . . . . . . . . . . . . . . . . . . 10 | 7.2. Preference limit . . . . . . . . . . . . . . . . . . . . 11 | |||
| 8. Link relations . . . . . . . . . . . . . . . . . . . . . . . 10 | 8. Link relations . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 8.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 8.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 8.2. subscribe-caldav . . . . . . . . . . . . . . . . . . . . 11 | 8.2. subscribe-caldav . . . . . . . . . . . . . . . . . . . . 11 | |||
| 8.3. subscribe-caldav-auth . . . . . . . . . . . . . . . . . . 11 | 8.3. subscribe-caldav-auth . . . . . . . . . . . . . . . . . . 12 | |||
| 8.4. subscribe-webdav-sync . . . . . . . . . . . . . . . . . . 11 | 8.4. subscribe-webdav-sync . . . . . . . . . . . . . . . . . . 12 | |||
| 8.5. subscribe-enhanced-get . . . . . . . . . . . . . . . . . 11 | 8.5. subscribe-enhanced-get . . . . . . . . . . . . . . . . . 12 | |||
| 9. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 9. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
| 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | 10. Privacy Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
| 10.1. Sync-Token HTTP Header Field Registration . . . . . . . 12 | 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 10.2. Preference Registrations . . . . . . . . . . . . . . . . 12 | 11.1. Sync-Token HTTP Header Field Registration . . . . . . . 13 | |||
| 10.3. Link Relation Registrations . . . . . . . . . . . . . . 12 | 11.2. Preference Registrations . . . . . . . . . . . . . . . . 13 | |||
| 11. Normative References . . . . . . . . . . . . . . . . . . . . 13 | 11.3. Link Relation Registrations . . . . . . . . . . . . . . 13 | |||
| Appendix A. Open issues . . . . . . . . . . . . . . . . . . . . 14 | 12. Normative References . . . . . . . . . . . . . . . . . . . . 14 | |||
| Appendix B. Change log . . . . . . . . . . . . . . . . . . . . . 14 | Appendix A. Open issues . . . . . . . . . . . . . . . . . . . . 15 | |||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 14 | Appendix B. Change log . . . . . . . . . . . . . . . . . . . . . 15 | |||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 15 | ||||
| 1. Acknowledgements | 1. Acknowledgements | |||
| The author would also like to thank the members of the CalConnect | The author would also like to thank the members of the CalConnect | |||
| Calendar Sharing technical committee and the following individuals | Calendar Sharing technical committee and the following individuals | |||
| for contributing their ideas and support: | for contributing their ideas and support: | |||
| Marten Gajda, Ken Murchison, Garry Shutler | Marten Gajda, Ken Murchison, Garry Shutler | |||
| The authors would also like to thank CalConnect, the Calendaring and | The authors would also like to thank CalConnect, the Calendaring and | |||
| skipping to change at page 3, line 47 ¶ | skipping to change at page 4, line 10 ¶ | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| Additionally, the rule for URI is included from [RFC3986]. | Additionally, the rule for URI is included from [RFC3986]. | |||
| 3. Discovering alternative access methods | 3. Discovering alternative access methods | |||
| The advertising of other access points is achieved through the use of | The advertising of other access points is achieved through the use of | |||
| the LINK header as defined in [RFC5988]. New link relation types are | the LINK header as defined in [RFC8288]. New link relation types are | |||
| defined in this specification - each being associated with a protocol | defined in this specification - each being associated with a protocol | |||
| or protocol subset. | or protocol subset. | |||
| These LINK headers will be delivered when a client carries out a HEAD | These LINK headers will be delivered when a client carries out a HEAD | |||
| request targeting the URL of the resource. | request targeting the URL of the resource. | |||
| EXAMPLE | EXAMPLE | |||
| This is an example of a HEAD request and the response from a server | This is an example of a HEAD request and the response from a server | |||
| that supports the enhanced GET method. | that supports the enhanced GET method. | |||
| skipping to change at page 11, line 48 ¶ | skipping to change at page 12, line 42 ¶ | |||
| 8.5. subscribe-enhanced-get | 8.5. subscribe-enhanced-get | |||
| This specifies an access point which supports something new. | This specifies an access point which supports something new. | |||
| The client MUST follow that specification. | The client MUST follow that specification. | |||
| 9. Security Considerations | 9. Security Considerations | |||
| Applications using these properties need to be aware of the risks | Applications using these properties need to be aware of the risks | |||
| entailed in using the URIs provided as values. See [RFC3986] for a | entailed in using the URIs provided as values. See [RFC3986] for a | |||
| discussion of the security considerations relating to URIs. == | discussion of the security considerations relating to URIs. | |||
| Privacy Considerations | ||||
| 10. Privacy Considerations | ||||
| Properties with a "URI" value type can expose their users to privacy | Properties with a "URI" value type can expose their users to privacy | |||
| leaks as any network access of the URI data can be tracked. Clients | leaks as any network access of the URI data can be tracked. Clients | |||
| SHOULD NOT automatically download data referenced by the URI without | SHOULD NOT automatically download data referenced by the URI without | |||
| explicit instruction from users. This specification does not | explicit instruction from users. This specification does not | |||
| introduce any additional privacy concerns beyond those described in | introduce any additional privacy concerns beyond those described in | |||
| [RFC5545]. | [RFC5545]. | |||
| 10. IANA Considerations | 11. IANA Considerations | |||
| 10.1. Sync-Token HTTP Header Field Registration | 11.1. Sync-Token HTTP Header Field Registration | |||
| This specification updates the "Message Headers" registry entry for | This specification updates the "Message Headers" registry entry for | |||
| "Sync-Token" in [RFC3864] to refer to this document. | "Sync-Token" in [RFC3864] to refer to this document. | |||
| Header Field Name: Sync-Token | Header Field Name: Sync-Token | |||
| Protocol: http | Protocol: http | |||
| Status: standard | Status: standard | |||
| Reference: <this-document> | Reference: <this-document> | |||
| Figure 1 | Figure 1 | |||
| 10.2. Preference Registrations | 11.2. Preference Registrations | |||
| The following preferences have been added to the HTTP Preferences | The following preferences have been added to the HTTP Preferences | |||
| Registry defined in [RFC7240] | Registry defined in [RFC7240] | |||
| Preference subscribe-enhanced-get | Preference subscribe-enhanced-get | |||
| Value None. | Value None. | |||
| Description Marks the interaction as enhanced get and provides the | Description Marks the interaction as enhanced get and provides the | |||
| optional sync-token and page size. | optional sync-token and page size. | |||
| skipping to change at page 12, line 48 ¶ | skipping to change at page 13, line 42 ¶ | |||
| Preference limit | Preference limit | |||
| Value An integer page size. | Value An integer page size. | |||
| Description Provide a limit on the number of components in the | Description Provide a limit on the number of components in the | |||
| response. | response. | |||
| Reference this document | Reference this document | |||
| 10.3. Link Relation Registrations | 11.3. Link Relation Registrations | |||
| This document defines the following new iCalendar properties to be | The following link relation values have been added to the Reference | |||
| added to the registry defined in Section 8.2.3 of [RFC5545]: | Types Registry defined in Section 6.2.2 of [RFC8288]: | |||
| +========================+=============+=============+ | +========================+=============+=============+ | |||
| | Relation Name | Description | Reference | | | Relation Name | Description | Reference | | |||
| +========================+=============+=============+ | +========================+=============+=============+ | |||
| | subscribe-caldav | Current | Section 8.2 | | | subscribe-caldav | Current | Section 8.2 | | |||
| +------------------------+-------------+-------------+ | +------------------------+-------------+-------------+ | |||
| | subscribe-caldav_auth | Current | Section 8.3 | | | subscribe-caldav_auth | Current | Section 8.3 | | |||
| +------------------------+-------------+-------------+ | +------------------------+-------------+-------------+ | |||
| | subscribe-webdav-sync | Current | Section 8.4 | | | subscribe-webdav-sync | Current | Section 8.4 | | |||
| +------------------------+-------------+-------------+ | +------------------------+-------------+-------------+ | |||
| | subscribe-enhanced_get | Current | Section 8.5 | | | subscribe-enhanced_get | Current | Section 8.5 | | |||
| +------------------------+-------------+-------------+ | +------------------------+-------------+-------------+ | |||
| Table 1 | Table 1 | |||
| 11. Normative References | 12. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", RFC 2119, RFC 2119, | Requirement Levels", RFC 2119, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration | [RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration | |||
| Procedures for Message Header Fields", RFC 3864, RFC 3864, | Procedures for Message Header Fields", RFC 3864, RFC 3864, | |||
| DOI 10.17487/RFC3864, September 2004, | DOI 10.17487/RFC3864, September 2004, | |||
| <https://www.rfc-editor.org/info/rfc3864>. | <https://www.rfc-editor.org/info/rfc3864>. | |||
| skipping to change at page 13, line 41 ¶ | skipping to change at page 14, line 41 ¶ | |||
| [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
| Resource Identifier (URI): Generic Syntax", RFC 3986, | Resource Identifier (URI): Generic Syntax", RFC 3986, | |||
| RFC 3986, DOI 10.17487/RFC3986, January 2005, | RFC 3986, DOI 10.17487/RFC3986, January 2005, | |||
| <https://www.rfc-editor.org/info/rfc3986>. | <https://www.rfc-editor.org/info/rfc3986>. | |||
| [RFC5545] Desruisseaux, B., Ed., "Internet Calendaring and | [RFC5545] Desruisseaux, B., Ed., "Internet Calendaring and | |||
| Scheduling Core Object Specification (iCalendar)", RFC | Scheduling Core Object Specification (iCalendar)", RFC | |||
| 5545, RFC 5545, DOI 10.17487/RFC5545, September 2009, | 5545, RFC 5545, DOI 10.17487/RFC5545, September 2009, | |||
| <https://www.rfc-editor.org/info/rfc5545>. | <https://www.rfc-editor.org/info/rfc5545>. | |||
| [RFC5988] Nottingham, M., "Web Linking", RFC 5988, RFC 5988, | ||||
| DOI 10.17487/RFC5988, October 2010, | ||||
| <https://www.rfc-editor.org/info/rfc5988>. | ||||
| [RFC7240] Snell, J., "Prefer Header for HTTP", RFC 7240, RFC 7240, | [RFC7240] Snell, J., "Prefer Header for HTTP", RFC 7240, RFC 7240, | |||
| DOI 10.17487/RFC7240, June 2014, | DOI 10.17487/RFC7240, June 2014, | |||
| <https://www.rfc-editor.org/info/rfc7240>. | <https://www.rfc-editor.org/info/rfc7240>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", RFC 8174, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", RFC 8174, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8288] Nottingham, M., "Web Linking", RFC 8288, RFC 8288, | ||||
| DOI 10.17487/RFC8288, October 2017, | ||||
| <https://www.rfc-editor.org/info/rfc8288>. | ||||
| Appendix A. Open issues | Appendix A. Open issues | |||
| Vary Ensure we get that right. | Vary Ensure we get that right. | |||
| Appendix B. Change log | Appendix B. Change log | |||
| calext00 2019-06-05 MD | calext00 2019-06-05 MD | |||
| * First calext version | * First calext version | |||
| End of changes. 19 change blocks. | ||||
| 42 lines changed or deleted | 46 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||