Network Working Group M. Douglass Internet-Draft 7 May 2024 Intended status: Standards Track Expires: 8 November 2024 iTip using PARTICIPANT only draft-douglass-itip-participants-00 Abstract This specification specifies updates to RFC5546 iTip which allow scheduling using the PARTICIPANT components specified in RFC9073. New properties are also defined for use within the PARTICIPANT component. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on 8 November 2024. Copyright Notice Copyright (c) 2024 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 (https://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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Douglass Expires 8 November 2024 [Page 1] Internet-Draft iTip participants May 2024 Table of Contents 1. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 2 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Terms and definitions . . . . . . . . . . . . . . . . . . . . 3 3.1. participant . . . . . . . . . . . . . . . . . . . . . . . 3 3.2. publishable . . . . . . . . . . . . . . . . . . . . . . . 4 3.3. schedulable . . . . . . . . . . . . . . . . . . . . . . . 4 4. iCalendar Extensions . . . . . . . . . . . . . . . . . . . . 4 4.1. New Property Parameters . . . . . . . . . . . . . . . . . 4 4.1.1. Required . . . . . . . . . . . . . . . . . . . . . . 4 4.1.2. Stay-Informed . . . . . . . . . . . . . . . . . . . . 4 4.1.3. Reply-URL . . . . . . . . . . . . . . . . . . . . . . 5 5. New Participant Properties for iTip . . . . . . . . . . . . . 5 5.1. Kind . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.2. Redefined participation type . . . . . . . . . . . . . . 6 5.3. Participation-status . . . . . . . . . . . . . . . . . . 10 5.4. Participation delegated from . . . . . . . . . . . . . . 10 5.5. Participation delegated to . . . . . . . . . . . . . . . 11 5.6. Member of . . . . . . . . . . . . . . . . . . . . . . . . 12 5.7. Lang . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.8. Expect reply . . . . . . . . . . . . . . . . . . . . . . 13 5.9. Scheduling-agent . . . . . . . . . . . . . . . . . . . . 13 5.10. Scheduling-force-send . . . . . . . . . . . . . . . . . . 14 5.11. Scheduling-status . . . . . . . . . . . . . . . . . . . . 14 5.12. Scheduling-dtstamp . . . . . . . . . . . . . . . . . . . 15 5.13. Invited-by . . . . . . . . . . . . . . . . . . . . . . . 15 6. Attendee parameters mapping . . . . . . . . . . . . . . . . . 16 7. Security Considerations . . . . . . . . . . . . . . . . . . . 17 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 8.1. Parameter Registrations . . . . . . . . . . . . . . . . . 17 8.2. Property Registrations . . . . . . . . . . . . . . . . . 17 8.3. Updated Participant Type Registrations . . . . . . . . . 18 9. Normative References . . . . . . . . . . . . . . . . . . . . 19 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 20 1. Acknowledgements The authors would like to thank the members of the Calendaring and Scheduling Consortium (CalConnect) for contributing their ideas and support. Douglass Expires 8 November 2024 [Page 2] Internet-Draft iTip participants May 2024 2. Introduction This specification details how the PARTICIPANT component introduced in [RFC9073] may be used for scheduling in place of [RFC5545] ATTENDEE and ORGANIZER properties. Additionally, some properties are defined in this specification to be used within the PARTICIPANT component. For all existing schedulable and publishable components, VEVENT, VTODO, VFREEBUSY, and VAVAILABILITY; the ORGANIZER and ATTENDEE properties MUST be supplied as appropriate. For new components such as VPOLL, defined elsewhere, only PARTICIPANT components MUST be used. A participant object that takes part in group scheduling MUST have the following characteristics: * It MUST have a calendar address as definied in Section 6.4 of [RFC9073]. * It must have one or more scheduling roles defined in PARTICIPANT- TYPE Scheduling with PARTICIPANT components behaves exactly as with ATTENDEE and ORGANIZER properties. When iTip specifies the setting of ATTENDEE or ORGANIZER parameters then the appropriate PARTICIPANT property will be set. 3. Terms and definitions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. The notation used in this memo to (re-)define iCalendar elements is the ABNF notation of [RFC5234] as used by [RFC5545]. Any syntax elements shown below that are not explicitly defined in this specification come from iCalendar [RFC5545]. Additionally, the following terms are used: 3.1. participant Represents an agent that takes part in scheduling or publishing. A participant may be a human, for example an attendee, or a resource, for example a conference room. Douglass Expires 8 November 2024 [Page 3] Internet-Draft iTip participants May 2024 3.2. publishable A component which takes part in [RFC5546] publishing operations. 3.3. schedulable A component which takes part in [RFC5546] scheduling operations. 4. iCalendar Extensions 4.1. New Property Parameters 4.1.1. Required Parameter name REQUIRED Purpose To specify whether the associated property is required in the current context. Format Definition This parameter is defined by the following notation: requirededparam = "REQUIRED" "=" ("TRUE" / "FALSE") ; Default is FALSE Description This parameter MAY be specified on REPLY-URL and, if the value is TRUE, indicates the organizer requires all replies to be made via the specified service rather than iTip replies. 4.1.2. Stay-Informed Parameter name STAY-INFORMED Purpose To specify the voter also wants to be added as an ATTENDEE when the poll is confirmed. Format Definition This parameter is defined by the following notation: stayinformedparam = "STAY-INFORMED" "=" ("TRUE" / "FALSE") ; Default is FALSE Description This parameter MAY be specified on the CALENDAR-ADDRESS property in the PARTICIPANT component and, if the value is TRUE, indicates the voter wishes to be added to the final choice as a non-participant. Douglass Expires 8 November 2024 [Page 4] Internet-Draft iTip participants May 2024 4.1.3. Reply-URL Property name REPLY-URL Purpose This property may be used in scheduling messages to indicate additional reply methods, for example a web-service. Value type URI Property Parameters Non-standard, required or iana parameters can be specified on this property. Conformance This property MAY be specified in any schedulable component. Description When used in a scheduling message this property indicates additional or required services that can be used to reply. Typically, this would be a web service of some form. Format Definition This property is defined by the following notation: reply-url = "REPLY-URL" reply-urlparams ":" uri CRLF reply-urlparams = *( (";" requiredparam) / (";" other-param) ) 5. New Participant Properties for iTip The following properties are defined to be used within PARTICIPANT during scheduling and take the place of ATTENDEE and ORGANIZER properties and parameters. 5.1. Kind Property name KIND Purpose This is what kind of entity this participant is, if known. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in a PARTICIPANT component. Description When used in a PARTICIPANT component this property Douglass Expires 8 November 2024 [Page 5] Internet-Draft iTip participants May 2024 indicates the kind of entity, individual, group etc. It takes the va;ues hown below which are a redefinition of the CUTYPE parameter values defined in [RFC5545] and aligned with [RFC8984] . Format Definition This property is defined by the following notation: kind = "KIND" kindparams ":" "INDIVIDUAL" ; An individual / "GROUP" ; A group of individuals / "RESOURCE" ; A physical resource / "LOCATION" ; A location resource e.g a room known iana-token ("," iana-token) CRLF kindparams = *(";" other-param) 5.2. Redefined participation type This specification redefines the PARTICIPATION-TYPE property allowing it to take multiple values and extending those values to align with [RFC8984] roles. There are also changes to the description to clarify its use defining the roles that participant takes. Property name PARTICIPANT-TYPE Purpose This property is equivalent to the [RFC5545] ATTENDEE ROLE parameter but includes more values to align with [RFC8984]. Value Type The value type for this property is TEXT. The allowable values are defined below. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MUST be specified once within a "PARTICIPANT" component. Description This property defines the type of participation, that is the roles the participant takes. It includes the values defined in [RFC8984]. Note that the kind of participant, for example individual or group, is defined in the KIND property specified here. Douglass Expires 8 November 2024 [Page 6] Internet-Draft iTip participants May 2024 Some of the roles are required for the participant to be a schedulable object. These are the roles that are shown below. Format Definition This property is defined by the following notation: participanttype = "PARTICIPANT-TYPE" partvalueparam ":" partvalue *("," partvalue) CRLF partvalue = ("OWNER" / "ATTENDEE" / "OPTIONAL" / "INFORMATIONAL" / "CHAIR" / "ACTIVE" / "INACTIVE" / "SPONSOR" / "CONTACT" / "BOOKING-CONTACT" / "EMERGENCY-CONTACT" / "PUBLICITY-CONTACT" / "PLANNER-CONTACT" / "PERFORMER" / "SPEAKER" / iana-token) ; Other IANA-registered ; values partvalueparam = *(";" other-param) The values have the same meaning as defined in [RFC8984] and [RFC9073]. Other roles defined here have no direct equivalent in [RFC5545] To map [RFC5545] ATTENDEE ROLE values to PARTICIPANT-TYPE values use the following. Douglass Expires 8 November 2024 [Page 7] Internet-Draft iTip participants May 2024 +=================+==================+ | RFC5545 ROLE | PARTICIPANT-TYPE | +=================+==================+ | CHAIR | CHAIR | +-----------------+------------------+ | REQ-PARTICIPANT | ATTENDEE | +-----------------+------------------+ | OPT-PARTICIPANT | OPTIONAL | +-----------------+------------------+ | NON-PARTICIPANT | INFORMATIONAL | +-----------------+------------------+ Table 1 The following table shows those roles that MUST appear in the PARTICIPANT-TYPE for group-scheduling. Additionally, the mapping for PARTICIPANT-TYPE to [RFC5545] ATTENDEE and ORGANIZER values are shown. Douglass Expires 8 November 2024 [Page 8] Internet-Draft iTip participants May 2024 +=============================+==================+ | PARTICIPANT-TYPE | RFC5545 ROLE | +=============================+==================+ | OWNER | Create ORGANIZER | +-----------------------------+------------------+ | ATTENDEE | REQ-PARTICIPANT | +-----------------------------+------------------+ | OPTIONAL | OPT-PARTICIPANT | +-----------------------------+------------------+ | INFORMATIONAL | NON-PARTICIPANT | +-----------------------------+------------------+ | CHAIR | CHAIR | +-----------------------------+------------------+ | Subsequent values have no [RFC5545] equivalent | +-----------------------------+------------------+ | CONTACT | | +-----------------------------+------------------+ | VOTER | | +-----------------------------+------------------+ | ACTIVE | | +-----------------------------+------------------+ | INACTIVE | | +-----------------------------+------------------+ | SPONSOR | | +-----------------------------+------------------+ | BOOKING-CONTACT | | +-----------------------------+------------------+ | EMERGENCY-CONTACT | | +-----------------------------+------------------+ | PUBLICITY-CONTACT | | +-----------------------------+------------------+ | PLANNER-CONTACT | | +-----------------------------+------------------+ | PERFORMER | | +-----------------------------+------------------+ | SPEAKER | | +-----------------------------+------------------+ Table 2 Examples * PARTICIPANT-TYPE=OWNER,"…" (HORIZONTAL ELLIPSIS, U+2026)"" (ZERO WIDTH SPACE, U+200B) equivalent to an ORGANIZER * PARTICIPANT-TYPE=ATTENDEE,"…" (HORIZONTAL ELLIPSIS, U+2026)"" (ZERO WIDTH SPACE, U+200B) equivalent to the ATTENDEE property Douglass Expires 8 November 2024 [Page 9] Internet-Draft iTip participants May 2024 5.3. Participation-status Property name PARTICIPATION-STATUS Purpose This property is used in the PARTICIPANT component to indicate the participation status - if any. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in a PARTICIPANT component. Description When used in a PARTICIPANT component this property indicates what status, if any, the participant has. It takes the same values as the PARTSTAT parameter defined in [RFC5545]. Format Definition This property is defined by the following notation: participation-status = "PARTICIPATION-STATUS" participation-statusparams ":" NEEDS-ACTION / ; No status ; has yet been set by the participant. ACCEPTED / ; The invited ; participant will participate. DECLINED / ; The invited ; participant will not participate. TENTATIVE / ; The invited participant ; may participate. DELEGATED / ; The invited participant ; has delegated their attendance to ; another participant, as specified ; in the PARTICIPATION-DELEGATED-TO property. iana-token ("," iana-token) CRLF participation-statusparams = *(";" other-param) 5.4. Participation delegated from Property name PARTICIPATION-DELEGATED-FROM Purpose This property is used in the PARTICIPANT component to indicate who has delegated their participation to this participant. Douglass Expires 8 November 2024 [Page 10] Internet-Draft iTip participants May 2024 Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in a PARTICIPANT component. Description This property specifies those calendar users that have delegated their participation in a group-scheduled component to the calendar user specified by the component. Format Definition This property is defined by the following notation: participation-delfrom = "PARTICIPATION-DELEGATED-FROM" participation-delfromparams ":" CAL-ADDRESS *("," CAL-ADDRESS) iana-token ("," iana-token) CRLF participation-delfromparams = *(";" other-param) 5.5. Participation delegated to Property name PARTICIPATION-DELEGATED-TO Purpose To specify the calendar users to whom the calendar user specified by the component has delegated participation. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in a PARTICIPANT component. Description This property specifies those calendar users that have been delegated participation in a group-scheduled component by the calendar user specified by the component. Format Definition This property is defined by the following notation: participation-delto = "PARTICIPATION-DELEGATED-TO" participation-deltoparams ":" CAL-ADDRESS *("," CAL-ADDRESS) iana-token ("," iana-token) CRLF participation-deltoparams = *(";" other-param) Douglass Expires 8 November 2024 [Page 11] Internet-Draft iTip participants May 2024 5.6. Member of Property name MEMBER-OF Purpose To specify the group or list membership of the calendar user specified by the component. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in a PARTICIPANT component. Description This property identifies the groups or list membership for the calendar user specified by the component. The value is one or more calendar addresses. Format Definition This property is defined by the following notation: member-of = "MEMBER-OF" member-ogparams ":" CAL-ADDRESS *("," CAL-ADDRESS) iana-token ("," iana-token) CRLF memberofparams = *(";" other-param) 5.7. Lang Property name LANG Purpose This is the language tag, as defined in [RFC5646], that best describes the participant's preferred language, if known. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in any appropriate component. Format Definition This property is defined by the following notation: lang = "LANG" langparams ":" TEXT CRLF langparams = *(";" other-param) Douglass Expires 8 November 2024 [Page 12] Internet-Draft iTip participants May 2024 5.8. Expect reply Property name EXPECT-REPLY Purpose If true, the organizer is expecting the participant to notify them of their participation status. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified once in the PARTICIPANT component. Format Definition This property is defined by the following notation: expect-reply = "EXPECT-REPLY" expect-replyparams ":" ( "TRUE" / "FALSE") CRLF expect-replyparams = *(";" other-param) 5.9. Scheduling-agent Property name SCHEDULING-AGENT Purpose This is who is responsible for sending scheduling messages with this calendar object to the participant. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified once in the PARTICIPANT component. Format Definition This property is defined by the following notation: scheduling-agent = "SCHEDULING-AGENT" scheduling-agentparams ":" ( "SERVER" / "CLIENT" / "NONE") CRLF scheduling-agentparams = *(";" other-param) Douglass Expires 8 November 2024 [Page 13] Internet-Draft iTip participants May 2024 The value MUST be one of the following values, another value registered in the IANA "JSCalendar Enum Values" registry, or a vendor-specific value. SERVER The calendar server will send the scheduling messages. CLIENT The calendar client will send the scheduling messages. NONE No scheduling messages are to be sent to this participant. 5.10. Scheduling-force-send Property name SCHEDULING-FORCE-SEND Purpose A client may set the property on a participant to true to request that the server send a scheduling message to the participant when it would not normally do so (e.g., if no significant change is made the object or the scheduleAgent is set to client). The property MUST NOT be stored in the JSCalendar object on the server or appear in a scheduling message. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified once in the PARTICIPANT component. Format Definition This property is defined by the following notation: scheduling-force-send = "SCHEDULING-FORCE-SEND" scheduling-force-sendparams ":" ( "TRUE" / "FALSE") CRLF scheduling-force-sendparams = *(";" other-param) 5.11. Scheduling-status Property name SCHEDULING-STATUS Purpose This is a list of status codes, returned from the processing of the most recent scheduling message sent to this participant. The status codes MUST be valid statcode values as defined in the ABNF in Section 3.8.8.3 of [RFC5545]. Servers MUST only add or change this property when they send a scheduling message to the participant. Clients SHOULD NOT change or remove this property if it was provided by the server. Clients Douglass Expires 8 November 2024 [Page 14] Internet-Draft iTip participants May 2024 MAY add, change, or remove the property for participants where the client is handling the scheduling.This property MUST NOT be included in scheduling messages. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in any appropriate component. Format Definition This property is defined by the following notation: scheduling-status = "SCHEDULING-STATUS" scheduling-statusparams ":" TEXT CRLF scheduling-statusparams = *(";" other-param) 5.12. Scheduling-dtstamp Property name SCHEDULING-DTSTAMP Purpose This is the timestamp for the most recent response from this participant. This is the updated property of the last response when using iTIP. It can be compared to the updated property in future responses to detect and discard older responses delivered out of order. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in any appropriate component. Format Definition This property is defined by the following notation: scheduling-dtstamp = "SCHEDULING-DTSTAMP" scheduling-dtstampparams ":" DATE-TIME CRLF scheduling-dtstampparams = *(";" other-param) 5.13. Invited-by Property name INVITED-BY Douglass Expires 8 November 2024 [Page 15] Internet-Draft iTip participants May 2024 invitedBy: Id (optional) Purpose:: This is calendar address of the participant who added this participant to the entity, if known. Property Parameters Non-standard or iana parameters can be specified on this property. Conformance This property MAY be specified in any appropriate component. Format Definition This property is defined by the following notation: invited-by = "INVITED-BY" invited-byparams ":" CAL-ADDRESS CRLF invited-byparams = *(";" other-param) 6. Attendee parameters mapping +================+===========================================+ | Parameter | iCalendar PARTICIPANT | +================+===========================================+ | CN | NAME (defined in [RFC7986] | +----------------+-------------------------------------------+ | CUTYPE | KIND (defined here) | +----------------+-------------------------------------------+ | DELEGATED-FROM | PARTICIPATION-DELEGATED-FROM Section 5.4 | +----------------+-------------------------------------------+ | DELEGATED-TO | PARTICIPATION-DELEGATED-TO (Defined here) | +----------------+-------------------------------------------+ | DIR | LINK [RFC9253] | +----------------+-------------------------------------------+ | LANGUAGE | LANG (defined here) | +----------------+-------------------------------------------+ | MEMBER | MEMBER-OF (defined here) | +----------------+-------------------------------------------+ | PARTSTAT | PARTICIPATION-STATUS (defined here) | +----------------+-------------------------------------------+ | ROLE | PARTICIPATION-TYPE (Updated here) | +----------------+-------------------------------------------+ | RSVP | EXPECT-REPLY (Defined here) | +----------------+-------------------------------------------+ | SENT-BY | | +----------------+-------------------------------------------+ Table 3 Douglass Expires 8 November 2024 [Page 16] Internet-Draft iTip participants May 2024 7. Security Considerations There should be no new security risks additional to those noted in [RFC5546]. 8. IANA Considerations 8.1. Parameter Registrations This document defines the following new iCalendar property parameters to be added to the registry defined in Section 8.2.4 of [RFC5545]: +====================+=========+===============+ | Property Parameter | Status | Reference | +====================+=========+===============+ | REQUIRED | Current | Section 4.1.1 | +--------------------+---------+---------------+ | STAY-INFORMED | Current | Section 4.1.2 | +--------------------+---------+---------------+ Table 4 8.2. Property Registrations This document defines the following new iCalendar properties to be added to the registry defined in Section 8.2.3 of [RFC5545]: Douglass Expires 8 November 2024 [Page 17] Internet-Draft iTip participants May 2024 +==============================+=========+===============+ | Property | Status | Reference | +==============================+=========+===============+ | ACCEPT-RESPONSE | Current | Section 4.1.3 | +------------------------------+---------+---------------+ | EXPECT-REPLY | Current | Section 5.8 | +------------------------------+---------+---------------+ | INVITED-BY | Current | Section 5.13 | +------------------------------+---------+---------------+ | KIND | Current | Section 5.1 | +------------------------------+---------+---------------+ | LANG | Current | Section 5.7 | +------------------------------+---------+---------------+ | MEMBER-OF | Current | Section 5.6 | +------------------------------+---------+---------------+ | PARTICIPATION-DELEGATED-FROM | Current | Section 5.4 | +------------------------------+---------+---------------+ | PARTICIPATION-DELEGATED-TO | Current | Section 5.5 | +------------------------------+---------+---------------+ | PARTICIPATION-STATUS | Current | Section 5.3 | +------------------------------+---------+---------------+ | SCHEDULING-AGENT | Current | Section 5.9 | +------------------------------+---------+---------------+ | SCHEDULING-DTSTAMP | Current | Section 5.12 | +------------------------------+---------+---------------+ | SCHEDULING-FORCE-SEND | Current | Section 5.10 | +------------------------------+---------+---------------+ | SCHEDULING-STATUS | Current | Section 5.11 | +------------------------------+---------+---------------+ Table 5 8.3. Updated Participant Type Registrations This updates the participant types registry defined in Section 11.2.1 of [RFC9073] Douglass Expires 8 November 2024 [Page 18] Internet-Draft iTip participants May 2024 +==================+=========+====================================+ | Participant Type | Status | Reference | +==================+=========+====================================+ | OWNER | Current | RFC8984 Section 4.4.6 of [RFC8984] | +------------------+---------+------------------------------------+ | ATTENDEE | Current | RFC8984 Section 4.4.6 of [RFC8984] | +------------------+---------+------------------------------------+ | OPTIONAL | Current | RFC8984 Section 4.4.6 of [RFC8984] | +------------------+---------+------------------------------------+ | INFORMATIONAL | Current | RFC8984 Section 4.4.6 of [RFC8984] | +------------------+---------+------------------------------------+ | CHAIR | Current | RFC8984 Section 4.4.6 of [RFC8984] | +------------------+---------+------------------------------------+ Table 6 9. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", RFC 5234, RFC 5234, DOI 10.17487/RFC5234, January 2008, . [RFC5545] Desruisseaux, B., Ed., "Internet Calendaring and Scheduling Core Object Specification (iCalendar)", RFC 5545, RFC 5545, DOI 10.17487/RFC5545, September 2009, . [RFC5546] Daboo, C., Ed., "iCalendar Transport-Independent Interoperability Protocol (iTIP)", RFC 5546, RFC 5546, DOI 10.17487/RFC5546, December 2009, . [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for Identifying Languages", RFC 5646, RFC 5646, DOI 10.17487/RFC5646, September 2009, . [RFC7986] Daboo, C., "New Properties for iCalendar", RFC 7986, RFC 7986, DOI 10.17487/RFC7986, October 2016, . Douglass Expires 8 November 2024 [Page 19] Internet-Draft iTip participants May 2024 [RFC8984] Jenkins, N. and R. Stepanek, "JSCalendar: A JSON Representation of Calendar Data", RFC 8984, RFC 8984, DOI 10.17487/RFC8984, July 2021, . [RFC9073] Douglass, M., "Event Publishing Extensions to iCalendar", RFC 9073, RFC 9073, DOI 10.17487/RFC9073, August 2021, . [RFC9253] "", RFC 9253, RFC 9253, . Author's Address Michael Douglass Email: mdouglass@bedework.com Douglass Expires 8 November 2024 [Page 20]