Search code examples
icalendarrfc5545

ICalendar ICS file can a VEVENT contains a VTODO?


I searched far and wide for this but couldn't find the answer and maybe you guys can help.

http://www.ietf.org/rfc/rfc5545.txt

http://www.kanzaki.com/docs/ical/vevent.html

http://msdn.microsoft.com/en-us/library/ee219935(v=exchg.80).aspx

(Just to name a few site i visited)

What I want to achieve:

I am creating an web application that would allow users to create meetings and stuffs. (PHP, HTML, Javascript/JQuery, etc.). I found ics (ICalendars) to be very efficient and well structured and wanted to implement a variation of the ics standard in my application. But I wanted my meetings to have there own todos.

Question:

Can an .ics VEVENT contains a VTODO? Or is this not in the ics standards?

Something like this:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Foobar Corporation//NONSGML Foobar//EN
METHOD:REQUEST
CALSCALE:GREGORIAN
BEGIN:VEVENT
//Put VEVENT options and parameters here.
BEGIN:VTODO
//Put VTODO options and parameters here
END:VTODO
END:VEVENT
BEGIN:VEVENT
//Other VEVENT... Probably with its own VTODO
END:VEVENT
END:VCALENDAR

Solution

  • No, VEVENT may only contain VALARM.

    Since you probably want to associate tasks to events,

    You can use the RELATED-TO property for this. Using this property, you can relate events to todos. On the RELATED-TO property you can specify what type of relationship you want. The default relationshiptypes are PARENT, CHILD and SIBLING.

    RELATED-TO uses the UID to identify other components. This property is required for every component anyway.