Введение

Компьютерный формат файла для информации о календаре.
Календарное приложение Apple, ранее известное как iCal.

Спецификация основных объектов интернет-календаря и планирования (iCalendar) – это тип данных, позволяющий пользователям хранить и обмениваться информацией о календаре и планировании, такой как события, задачи, записи в журнале и сведения о доступности, а вместе со связанными стандартами является основой стандартизации и совместимости цифровых календарей различных производителей. Файлы, отформатированные в соответствии со спецификацией, обычно имеют расширение .ics. При наличии поддерживающего программного обеспечения, такого как почтовый клиент или календарное приложение, получатели файла данных iCalendar могут легко ответить отправителю или предложить другую дату и время встречи. Формат файла определен в предлагаемом интернет-стандарте (RFC 5545) для обмена календарными данными. Стандарт и тип файла иногда называют "iCal", что было названием программы-календаря Apple Inc. до 2012 года (см. iCal), которая предоставляет одну из реализаций стандарта. iCalendar используется и поддерживается многими продуктами, включая:
для широкого круга пользователей: Apple Calendar (ранее iCal), eM Client, Google Calendar, Yahoo! Calendar;
для корпоративных пользователей: HCL Domino (ранее IBM Notes и Lotus Notes);
свободное программное обеспечение: GNOME Evolution, GNU Emacs, Mozilla Thunderbird и SeaMonkey.
Стоит также отметить, что он частично поддерживается Microsoft Outlook и Novell GroupWise. iCalendar разработан таким образом, чтобы быть независимым от протокола передачи данных. Например, отдельные события могут быть отправлены по электронной почте, а целые файлы календаря могут быть совместно использованы и отредактированы с помощью сервера WebDav или SyncML. Простые веб-серверы (использующие только протокол HTTP) часто используются для распространения данных iCalendar о событии и публикации информации о занятости. Издатели могут встраивать данные iCalendar в веб-страницы, используя hCalendar – микроформатное представление iCalendar в семантическом (X)HTML в формате 1:1.

История

iCalendar был впервые создан в 1998 году Рабочей группой по календарю и планированию Целевой группы по инженерным разработкам в Интернете (Internet Engineering Task Force), под председательством Аника Гангули из Open Text Corporation, а авторами стали Фрэнк Доусон из Lotus Development Corporation и Дерик Стенерсон из Microsoft Corporation. Файлы данных iCalendar – это обычные текстовые файлы с расширением .ics или .vcs (для файлов, содержащих только информацию о доступности). RFC 5545 заменил RFC 2445 в сентябре 2009 года и теперь определяет стандарт. iCalendar во многом основан на более раннем vCalendar, разработанном Internet Mail Consortium (IMC), и имеет расширение файла .vcs. После выпуска iCalendar, Internet Mail Consortium заявил, что "надеется, что все разработчики vCalendar воспользуются этими новыми открытыми стандартами и сделают свое программное обеспечение совместимым как с vCalendar 1.0, так и с iCalendar". Меморандум "Протокол доступа к календарю" (RFC 4324) был первоначальной попыткой создания универсальной системы для создания календарей в реальном времени, но в конечном итоге был заброшен. Вместо этого iCalendar получил некоторое распространение для этих целей, с появлением ad hoc расширений, таких как GroupDAV и CalDAV, которые стали неформальными стандартами и нашли применение как в клиентском, так и в серверном программном обеспечении. Первая попытка упростить стандарты iCalendar, предпринятая Рабочей группой по календарю и планированию IETF (ietf calsify WG), завершилась в январе 2011 года без принятия. Затем работа была продолжена Рабочей группой по расширению календаря (ietf calext WG).

Список компонентов, свойств и параметров

Наименование Вид Раздел RFC (RFC 5545 подразделы) VCALENDARComponent3.4. iCalendar Object1.1 VEVENT Component3.6.1. Компонент события1.1.20 VTODO Component3.6.2. Компонент "Дело" VJOURNAL Component3.6.3. Компонент журнала VFREEBUSYComponent3.6.4. Компонент "Свободное время/Занятость" VTIMEZONEComponent3.6.5. Компонент часового поясаSTANDARDComponent3.6.5. Компонент часового пояса1.1.19.2DAYLIGHTComponent3.6.5. Компонент часового пояса1.1.19.3VALARMComponent3.6.6. Компонент будильника VAVAILABILITYComponentRFC 7953 раздел 3.1. Компонент доступности AVAILABLEComponentRFC 7953 раздел 3.1. Компонент доступности PARTICIPANTComponentRFC 9073 раздел 7.1. Участник VLOCATIONComponentRFC 9073 раздел 7.2. Местоположение VRESOURCEComponentRFC 9073 раздел 7.3. Ресурс CALSCALE Свойство 3.7.1. Масштаб календаря METHOD Свойство 3.7.2. Метод1.1.1 PRODID Свойство 3.7.3. Идентификатор продукта1.1.2 VERSION Свойство 3.7.4. Версия1.1.3 CALENDProperty1.1.4 CALSTARTProperty1.1.5 CLIPENDProperty1.1.6 CLIPSTARTProperty1.1.7 MICROSOFT CALSCALEProperty1.1.8 MS OLK FORCEINSPECTOROPENProperty1.1.9 MS WKHRDAYSProperty1.1.10 MS WKHRENDProperty1.1.11 MS WKHRSTARTProperty1.1.12 OWNERProperty1.1.13 PRIMARY CALENDARProperty1.1.14 PUBLISHED TTLProperty1.1.15 WR CALDESC Свойство 1.1.16 WR CALNAME Свойство 1.1.17 WR RELCALID Свойство 1.1.18 ATTACH Свойство 3.8.1.1. Вложение1.1.20.1 CATEGORIES Свойство 3.8.1.2. Категории, RFC 7986 раздел 5.6. CLASS Свойство 3.8.1.3. Классификация1.1.20.4 COMMENT Свойство 3.8.1.4. Комментарий1.1.20.5 DESCRIPTION Свойство 3.8.1.5. Описание, RFC 7986 раздел 5.2. DESCRIPTION Свойство1.1.20.11, 1.1.20.62.3 GEO Свойство 3.8.1.6. Географическое положение LOCATION Свойство 3.8.1.7. Местоположение1.1.20.15 PERCENT COMPLETE Свойство 3.8.1.8. Процент завершения PRIORITY Свойство 3.8.1.9. Приоритет1.1.20.17 RESOURCES Свойство 3.8.1.10. Ресурсы1.1.20.21 STATUS Свойство 3.8.1.11. Статус1.1.20.23 SUMMARY Свойство 3.8.1.12. Резюме1.1.20.24 COMPLETED Свойство 3.8.2.1. Дата и время завершения DTEND Свойство 3.8.2.2. Дата и время окончания1.1.20.8 DUE Свойство 3.8.2.3. Дата и время истечения срока действия DTSTART Свойство 3.8.2.4. Дата и время начала1.1.19.2.1, 1.1.19.3.1, 1.1.20.10 DURATION Свойство 3.8.2.5. Продолжительность1.1.20.12 FREEBUSY Свойство 3.8.2.6. Свободное/Занятое время TRANSP Свойство 3.8.2.7. Прозрачность времени1.1.20.25 TZID Свойство 3.8.3.1. Идентификатор часового пояса1.1.19.1 TZNAME Свойство 3.8.3.2. Название часового пояса1.1.19.2.3, 1.1.19.3.3 TZOFFSETFROM Свойство 3.8.3.3. Смещение часового пояса от1.1.19.2.4, 1.1.19.3.4 TZOFFSETTO Свойство 3.8.3.4. Смещение часового пояса к1.1.19.2.5, 1.1.19.3.5 TZURL Свойство 3.8.3.5. URL часового пояса ATTENDEE Свойство 3.8.4.1. Участник1.1.20.2 CONTACT Свойство 3.8.4.2. Контакт1.1.20.6 ORGANIZER Свойство 3.8.4.3. Организатор1.1.20.16 RECURRENCE ID Свойство 3.8.4.4. Идентификатор повторения1.1.20.20 RELATED TO Свойство 3.8.4.5. Связан с, RFC 9253 раздел 9.1. RELATED TO URL Свойство 3.8.4.6. Универсальный указатель ресурсов, RFC 7986 раздел 5.5. URL Свойство UID Свойство 3.8.4.7. Уникальный идентификатор, RFC 7986 раздел 5.3. UID Свойство1.1.20.26 EXDATE Свойство 3.8.5.1. Дата и время исключения1.1.20.13 RDATE Свойство 3.8.5.2. Дата и время повторения1.1.20.18 RRULE Свойство 3.8.5.3. Правило повторения1.1.19.2.2, 1.1.19.3.2, 1.1.20.19 ACTION Свойство 3.8.6.1. Действие1.1.20.62.2 REPEAT Свойство 3.8.6.2. Количество повторений TRIGGER Свойство 3.8.6.3. Триггер1.1.20.62.1 CREATED Свойство 3.8.7.1. Дата и время создания1.1.20.7 DTSTAMP Свойство 3.8.7.2. Дата и время1.1.20.9 LAST MODIFIED Свойство 3.8.7.3. Последнее изменение, RFC 7986 раздел 5.4. LAST MODIFIED Свойство1.1.20.14 SEQUENCE Свойство 3.8.7.4. Номер последовательности1.1.20.22 REQUEST STATUS Свойство 3.8.8.3. Статус запросаX ALT DESCProperty1.1.20.27X MICROSOFT CDO ALLDAYEVENTProperty1.1.20.28 X MICROSOFT CDO APPT SEQUENCE Свойство 1.1.20.29 X MICROSOFT CDO ATTENDEE CRITICAL CHANGE Свойство 1.1.20.30 X MICROSOFT CDO BUSYSTATUS Свойство 1.1.20.31 X MICROSOFT CDO IMPORTANCE Свойство 1.1.20.32 X MICROSOFT CDO INSTTYPE Свойство 1.1.20.33 X MICROSOFT CDO INTENDEDSTATUS Свойство 1.1.20.34 X MICROSOFT CDO OWNERAPPTID Свойство 1.1.20.35 X MICROSOFT CDO OWNER CRITICAL CHANGE Свойство 1.1.20.36 X MICROSOFT CDO REPLYTIME Свойство 1.1.20.37 X MICROSOFT DISALLOW COUNTER Свойство 1.1.20.38 X MICROSOFT EXDATE Свойство 1.1.20.39 X MICROSOFT ISDRAFT Свойство 1.1.20.40 X MICROSOFT MSNCALENDAR ALLDAYEVENT Свойство 1.1.20.41 X MICROSOFT MSNCALENDAR BUSYSTATUS Свойство 1.1.20.42 X MICROSOFT MSNCALENDAR IMPORTANCE Свойство 1.1.20.43 X MICROSOFT MSNCALENDAR INTENDEDSTATUS Свойство 1.1.20.44 X MICROSOFT RRULE Свойство 1.1.20.45 X MS OLK ALLOWEXTERNCHECK Свойство 1.1.20.46 X MS OLK APPTLASTSEQUENCE Свойство 1.1.20.47 X MS OLK APPTSEQTIME Свойство 1.1.20.48 X MS OLK AUTOFILLLOCATION Свойство 1.1.20.49 X MS OLK AUTOSTARTCHECK Свойство 1.1.20.50 X MS OLK COLLABORATEDOC Свойство 1.1.20.51 X MS OLK CONFCHECK Свойство 1.1.20.52 X MS OLK CONFTYPE Свойство 1.1.20.53 X MS OLK DIRECTORY Свойство 1.1.20.54 X MS OLK MWSURL Свойство 1.1.20.55 X MS OLK NETSHOWURL Свойство 1.1.20.56 X MS OLK ONLINEPASSWORD Свойство 1.1.20.57 X MS OLK ORGALIAS Свойство 1.1.20.58 X MS OLK SENDER Свойство 1.1.20.61BUSYTYPEPropertyRFC 7953 раздел 3.2. Тип занятостиNAMEPropertyRFC 7986 раздел 5.1. NAME PropertyREFRESH INTERVALPropertyRFC 7986 раздел 5.7. REFRESH INTERVAL PropertySOURCEPropertyRFC 7986 раздел 5.8. SOURCE PropertyCOLORPropertyRFC 7986 раздел 5.9. COLOR PropertyIMAGEPropertyRFC 7986 раздел 5.10. IMAGE PropertyCONFERENCEPropertyRFC 7986 раздел 5.11. CONFERENCE PropertyCALENDAR ADDRESSPropertyRFC 9073 раздел 6.4. Адрес календаряLOCATION TYPEPropertyRFC 9073 раздел 6.1. Тип местоположенияPARTICIPANT TYPEPropertyRFC 9073 раздел 6.2. Тип участникаRESOURCE TYPEPropertyRFC 9073 раздел 6.3. Тип ресурсаSTRUCTURED DATAPropertyRFC 9073 раздел 6.6. Структурированные данныеSTYLED DESCRIPTIONPropertyRFC 9073 раздел 6.5. Стильное описаниеACKNOWLEDGEDPropertyRFC 9074 раздел 6.1. Подтверждено PropertyPROXIMITYPropertyRFC 9074 раздел 8.1. Свойство близостиCONCEPTPropertyRFC 9253 раздел 8.1. КонцепцияLINKPropertyRFC 9253 раздел 8.2. СсылкаREFIDPropertyRFC 9253 раздел 8.3. Перезагрузка параметра ALTREP 3.2.1. Альтернативное текстовое представление1.1.20.15.1 Параметр CN 3.2.2. Общее имя1.1.13.1, 1.1.20.2.1, 1.1.20.16.1, 1.1.20.61.1 CUTYPE Параметр 3.2.3. Тип пользователя календаря1.1.20.2.2 DELEGATED FROM Параметр 3.2.4. Делегаты DELEGATED TO Параметр 3.2.5. Делегированные параметры DIR Параметр 3.2.6. Справочная запись каталога ENCODING Параметр 3.2.7. Встроенное кодирование1.1.20.1.1 FMTTYPE Параметр 3.2.8. Тип формата1.1.20.1.2, 1.1.20.27.1 FBTYPE Параметр 3.2.9. Тип свободного/занятого времени LANGUAGE Параметр 3.2.10. Язык1.1.20.11.1, 1.1.20.15.2, 1.1.20.24.1 MEMBER Параметр 3.2.11. Членство в группе или списке PARTSTAT Параметр 3.2.12. Статус участия1.1.20.2.3 RANGE Параметр 3.2.13. Диапазон идентификаторов повторения RELATED Параметр 3.2.14. Связь с триггером сигнала RELTYPE Параметр 3.2.15. Тип связи, RFC 9074 раздел 7.1. ROLE Параметр 3.2.16. Роль участия1.1.20.2.4 RSVP Параметр 3.2.17. Ожидание ответа1.1.20.2.5 SENT BY Параметр 3.2.18. Отправлено TZID Параметр 3.2.19. Идентификатор часового пояса1.1.4.1, 1.1.5.1, 1.1.6.1, 1.1.7.1, 1.1.11.1, 1.1.12.1, 1.1.20.8.1, 1.1.20.9.1, 1.1.20.10.1, 1.1.20.13.1, 1.1.20.18.1, 1.1.20.20.1, 1.1.20.48.1 VALUE Параметр 3.2.20. Типы данных значений1.1.20.1.3, 1.1.20.8.2, 1.1.20.10.2, 1.1.20.13.2, 1.1.20.18.2, 1.1.20.20.2, 1.1.20.39.1, 1.1.20.45.1X FILENAMEParameter1.1.20.1.4X MS OLK RESPTIMEParameter1.1.20.2.6X MICROSOFT ISLEAPMONTHParameter1.1.20.45.2DISPLAYParameterRFC 7986 раздел 6.1. DISPLAY Property ParameterEMAILParameterRFC 7986 раздел 6.2. EMAIL Property ParameterFEATUREParameterRFC 7986 раздел 6.3. FEATURE Property ParameterLABELParameterRFC 7986 раздел 6.4. LABEL Property P...

Другие представления

xCal — это XML-представление данных iCalendar, как определено в
jCal — это JSON-представление данных iCalendar, как определено в
hCalendar — это (x)HTML-представление подмножества данных iCalendar с использованием микроформатов. hEvent — это HTML-представление подмножества данных iCalendar с использованием микроформатов, разработанное для решения некоторых проблем доступности формата hCalendar.