The iCalendar object is sort of the container that holds all of the calendaring and scheduling information in an iCalendar file. In an iCalendar file, it is required that there is at least one iCalendar object and that it must be the outer-most parent of all of the components and properties contained within the file. It is also required that there be at least one component within the iCalendar object for it to be valid.
The iCalendar object is represented in qCal by the qCal_Component_Vcalendar class.
The iCalendar object has two required properties and two optional properties.
Value type : Text
Default : "-//Luke Visinoni//qCal v0.1//EN"
Required : Yes
The prodid property specifies an identifier for the product which created the iCalendar file.
Value type : Text
Default : “2.0”
Required : Yes
The version property specifies the iCalendar specification version that the iCalendar object adheres to. As of right now, it defaults to 2.0 because that is the most current version of the spec. That may change in the future if newer versions of the spec become available.
Value type : Text
Default : None
Required : No
The iCalendar object is used for many purposes, from updating your calendaring/scheduling information to informing attendees of an event. This property defines the purpose the iCalendar object was created to fulfill. The iCalendar specification doesn't actually define any method values. That is left up to other specs such as the iCalendar Transport-Independent Interoperability Protocol.
Value type : Text
Default : “Gregorian”
Required : No
The calscale property defines the calendar scale used for calendar information contained within the object. As of right now there aren't any other scales defined within the specification, but there may be more in future versions.