3.2.1.1 Appointments

Appointment items and event items are synonymous and both terms are interchangeable.

At a minimum, an appointment MUST have a starting date and time. Appointments SHOULD have a duration value and an ending date and time. If an appointment lacks either a duration value or an ending date, or both, then protocol clients MUST calculate the missing value from the other. If both are missing, then the protocol client SHOULD assume the duration to be zero, but can assume any duration. Duration MUST be positive or zero. The ending date and time MUST NOT precede the starting date and time.

Appointments MUST be one of four types:

  • Single.

  • Recurring.

  • An exception to a recurrence.

  • A deleted instance of a recurrence.

Appointments MUST be either all-day or not. All-day appointments are all-day in every time zone and are 24 hours long on every day they occur. All-day appointments MUST begin at midnight, 0 hours UTC. All-day appointments do not have time zones. It is up to clients to choose whether to display the appointment at midnight UTC, local, or some other time zone.