Try out our new RRULE tool for creating RRULE compatible strings.

The Calendaring and Scheduling Core Object is a collection of calendaring and scheduling information. Typically, this information will consist of an iCalendar stream with a single iCalendar object. However, multiple iCalendar objects can be sequentially grouped together in an iCalendar stream. The first line and last line of the iCalendar object MUST contain a pair of iCalendar object delimiter strings. The syntax for an iCalendar stream is as follows:

 icalstream = 1*icalobject

 icalobject = "BEGIN" ":" "VCALENDAR" CRLF
              "END" ":" "VCALENDAR" CRLF

The following is a simple example of an iCalendar object:

 PRODID:-//hacksw/handcal//NONSGML v1.0//EN
 SUMMARY:Bastille Day Party

This document was automatically converted to XHTML using an RFC to HTML converter with the original text document at the Internet Engineering Task Force web site at .  The original text document should be referred to if there are any errors or discrepancies found in this document.

Need to test your iCalendar feeds?

The iCalendar Validator provides developers and testers a method to validate their iCalendar feeds, which can take data from either a URL, file or text snippet and compare it against the RFC 5545 specification.  We believe we have one of the best iCalendar validation tools available on the internet. More information about the validator can be found here.