Введение
CalDAV, или расширения для работы с календарями в WebDAV, — это интернет-стандарт, обеспечивающий доступ и управление календарными данными, а также возможность планировать встречи с пользователями на локальных или удаленных серверах. Он позволяет нескольким пользователям, находящимся в разных местах, совместно использовать, искать и синхронизировать данные календаря. CalDAV расширяет спецификацию WebDAV (протокол на основе HTTP для манипулирования данными) и использует формат iCalendar для представления данных календаря. Расширения CalDAV, определяющие протокол доступа и планирование, стандартизованы, и этот протокол используется многими важными приложениями с открытым исходным кодом.
Calendaring Extensions to WebDAV, or CalDAV, is an Internet standard allowing a client to access and manage calendar data along with the ability to schedule meetings with users on the same or on remote servers. It lets multiple users in different locations share, search and synchronize calendar data. It extends the WebDAV (HTTP based protocol for data manipulation) specification and uses the iCalendar format for the calendar data. The access protocol is defined by Extensions to CalDAV for scheduling are standardized as The protocol is used by many important open source applications.
История
Спецификация CalDAV была впервые опубликована в 2003 году как черновик интернет-стандарта, представленный в Internet Engineering Task Force (IETF) Лизой Дюссо. В марте 2007 года спецификация CalDAV была завершена и опубликована IETF в качестве RFC 4791, авторами которой являются Сайрус Дабу (Apple), Бернард Десрусса (Oracle) и Лиза Дюссо (CommerceNet). CalDAV предназначен для реализации любым программным обеспечением для совместной работы, клиентом или сервером, которому необходимо поддерживать, получать доступ или обмениваться коллекциями событий. Он разработан как открытый стандарт для обеспечения совместимости программного обеспечения от различных производителей.
Спецификация
Архитектура CalDAV (частично унаследованная от базовых спецификаций) организует данные (события, задачи, информацию о свободных и занятых временных интервалах, заметки) в каталогах (коллекциях), где хранятся отдельные элементы (ресурсы). Один или несколько пользователей могут получать доступ к ресурсам и коллекциям, используя стандартную семантику HTTP и DAV для выявления конфликтующих изменений или обеспечения блокировки. Для управления доступом используется концепция ACL, что позволяет запретить или разрешить выполнение каждой операции (просмотр, редактирование, удаление и т.д.) для конкретного пользователя. Таким образом, спецификация требует, чтобы серверы CalDAV поддерживали "Протокол управления доступом WebDAV" (RFC 3744). Календарные ресурсы должны использовать формат iCalendar, что позволяет серверу понимать и обрабатывать данные. Анализ элементов iCalendar необходим, поскольку сервер должен поддерживать ряд операций, специфичных для календарей, таких как формирование отчетов о свободных и занятых временных интервалах и развертывание повторяющихся событий. Благодаря этой функциональности пользователь может синхронизировать свой календарь с сервером CalDAV и обмениваться им между несколькими устройствами или с другими пользователями. Протокол также поддерживает неперсональные календари, например, календари для веб-сайтов или организаций.