OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

icom message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Mappings between iCalendar and ICOM Calendar, TaskList, and FreeBusy


ICOM TC members:

 

I have uploaded an updated draft specification that includes the following new extension modules:

 

Section 4.4. Presence Module, page 110

Section 4.6. Calendar Module, page 127

Section 4.7. FreeBusy Module, page 143

Section 4.8. TaskList Module, page 148

 

You can download the document from: 

http://www.oasis-open.org/committees/download.php/41087/icom-spec-draft-01d.doc

 

I have given below the mappings between the ICOM (Calendar, FreeBusy, TaskList) model and iCalendar model. Please provide feedbacks.

 

iCalendar http://tools.ietf.org/html/rfc5545#section-3.6

3.6.  Calendar Components

   The body of the iCalendar object consists of a sequence of calendar
   properties and one or more calendar components.  The calendar
   properties are attributes that apply to the calendar object as a
   whole.  The calendar components are collections of properties that
   express a particular calendar semantic.  For example, the calendar
   component can specify an event, a to-do, a journal entry, time zone
   information, free/busy time information, or an alarm.
 
   The body of the iCalendar object is defined by the following
   notation:
 
       icalbody   = calprops component
 
       calprops   = *(
                  ;
                  ; The following are REQUIRED,
                  ; but MUST NOT occur more than once.
                  ;
                  prodid / version /
                  ;
                  ; The following are OPTIONAL,
                  ; but MUST NOT occur more than once.
                  ;
                  calscale / method /
                  ;
                  ; The following are OPTIONAL,
                  ; and MAY occur more than once.
                  ;
                  x-prop / iana-prop
                  ;
                  )
 
       component  = 1*(eventc / todoc / journalc / freebusyc /
                    timezonec / iana-comp / x-comp)
 
       iana-comp  = "BEGIN" ":" iana-token CRLF
                    1*contentline
                    "END" ":" iana-token CRLF
 
       x-comp     = "BEGIN" ":" x-name CRLF
                    1*contentline
                    "END" ":" x-name CRLF
 

 

 

iCalendar

ICOM Calendar

ICOM TaskList

timezonec

timeZone

timeZone

eventc

occurrences,

recurrences

 

todoc

 

tasks

freebusyc

 

journalc

 

x-prop

properties,

viewerProperties

properties,

viewerProperties

iana-prop

Figure 2 Mapping icalendar to ICOM Calendar

 

 

Calendar.jpg

Figure 1 ICOM Calendar

 

 

TaskList.jpg

Figure 2 ICOM TaskList

 

 

iCalendar http://tools.ietf.org/html/rfc5545#section-3.6.1

3.6.1.  Event Component

   Component Name:  VEVENT

 

   Purpose:  Provide a grouping of component properties that describe an

      event.

 

   Format Definition:  A "VEVENT" calendar component is defined by the

      following notation:

 

       eventc     = "BEGIN" ":" "VEVENT" CRLF

                    eventprop *alarmc

                    "END" ":" "VEVENT" CRLF

 

       eventprop  = *(

                  ;

                  ; The following are REQUIRED,

                  ; but MUST NOT occur more than once.

                  ;
                  dtstamp / uid /
                  ;
                  ; The following is REQUIRED if the component
                  ; appears in an iCalendar object that doesn't
                  ; specify the "METHOD" property; otherwise, it
                  ; is OPTIONAL; in any case, it MUST NOT occur
                  ; more than once.
                  ;
                  dtstart /
                  ;
                  ; The following are OPTIONAL,
                  ; but MUST NOT occur more than once.
                  ;
                  class / created / description / geo /
                  last-mod / location / organizer / priority /
                  seq / status / summary / transp /
                  url / recurid /
                  ;
                  ; The following is OPTIONAL,
                  ; but SHOULD NOT occur more than once.
                  ;
                  rrule /
                  ;
                  ; Either 'dtend' or 'duration' MAY appear in
                  ; a 'eventprop', but 'dtend' and 'duration'
                  ; MUST NOT occur in the same 'eventprop'.
                  ;
                  dtend / duration /
                  ;
                  ; The following are OPTIONAL,
                  ; and MAY occur more than once.
                  ;
                  attach / attendee / categories / comment /
                  contact / exdate / rstatus / related /
                  resources / rdate / x-prop / iana-prop
                  ;
                  )
 
recurrence properties ("RRULE", "RDATE", "EXDATE")

 

 

iCalendar VEVENT

ICOM Occurrence

ICOM OccurrenceSeries

dtstamp

 

 

class

 

 

geo

 

 

seq

recurid

 

 

contact

 

 

resources

 

 

url

 

 

 

parent

parent

 

owner

owner

 

accessControlList

accessControlList

 

conference

conference

 

 

occurrences

 

occurrenceSeries,

 

 

fromRecurringOccurrenceSeries,

 

 

exceptionToOccurrenceSeries,

 

 

occurrenceStatus,

occurrenceStatus,

 

occurrenceType

occurrenceType,

uid

objectid

objectid

summary

name

name

description

description

description

comment

created

creationDate

creationDate

 

createdBy

createdBy

last-mod

lastModificationDate

lastModificationDate

 

lastModifiedBy

lastModifiedBy

categories

attachedMarkers

attachedMarkers

 

categoryApplications

categoryApplications

 

tagApplications

tagApplications

related

relationships

relationships

dtstart

startDate,

recurrenceStartDate

 

startDateResolution,

recurrenceStartDateResolution

dtend

endDate,

 

endDateResolution,

duration

 

duration

rrule

 

recurrenceRule

exdate

 

rstatus

 

rdate

 

 

organizer

organizer,

organizer,

 

participants,

participants,

location

location

location

attach

attachments,

attachments,

attendee

attendee,

attendee,

priority

attendeePriority,

attendeePriority,

status

attendeeParticipantStatus,

attendeeParticipantStatus,

transp

attendeeTransparency,

attendeeTransparency,

x-prop

attendeeProperties,

attendeeProperties,

iana-prop

Figure 3 Mapping iCalendar VEVENT to ICOM Occurrence and OccurrenceSeries

 

Occurrence.jpg

Figure 3 ICOM OccurrenceSeries and Occurrence

 

 

iCalendar To-Do http://tools.ietf.org/html/rfc5545#section-3.6.2

3.6.2.  To-Do Component

   Component Name:  VTODO
 
   Purpose:  Provide a grouping of calendar properties that describe a
      to-do.
 
   Format Definition:  A "VTODO" calendar component is defined by the
      following notation:
 
       todoc      = "BEGIN" ":" "VTODO" CRLF
                    todoprop *alarmc
                    "END" ":" "VTODO" CRLF
 
       todoprop   = *(
                  ;
                  ; The following are REQUIRED,
                  ; but MUST NOT occur more than once.
                  ;
                  dtstamp / uid /
                  ;
                  ; The following are OPTIONAL,
                  ; but MUST NOT occur more than once.
                  ;
                  class / completed / created / description /
                  dtstart / geo / last-mod / location / organizer /
                  percent / priority / recurid / seq / status /
                  summary / url /
                  ;
                  ; The following is OPTIONAL,
                  ; but SHOULD NOT occur more than once.
                  ;
                  rrule /
                  ;
                  ; Either 'due' or 'duration' MAY appear in
                  ; a 'todoprop', but 'due' and 'duration'
                  ; MUST NOT occur in the same 'todoprop'.
                  ; If 'duration' appear in a 'todoprop',
                  ; then 'dtstart' MUST also appear in
                  ; the same 'todoprop'.
                  ;
                  due / duration /
                  ;
                  ; The following are OPTIONAL,
                  ; and MAY occur more than once.
                  ;
                  attach / attendee / categories / comment / contact /
                  exdate / rstatus / related / resources /
                  rdate / x-prop / iana-prop
                  ;
                  )
 

iCalendar VTODO

ICOM Task

dtstamp

 

class

 

geo

 

seq

 

recurid

 

contact

 

url

 

resources

 

duration

 

rrule

 

exdate

 

rstatus

 

rdate

 

 

parent

 

owner

 

accessControlList

uid

objectid

summary

name

description

description

comment

created

creationDate

 

createdBy

last-mod

lastModificationDate

 

lastModifiedBy

categories

attachedMarkers

 

categoryApplications

 

tagApplications

related

relationships

attach

attachments

dtstart

startDate,

 

startDateResolution,

due

dueDate,

 

dueDateResolution,

location

location

organizer

organizer

status

taskStatus

attendee

assignee

completed

assigneeCompletionDate

 

assigneeCompletionDateResolution

percent

assigneePercentComplete

priority

assigneePriority

 

assigneeParticipationStatus

x-prop

assigneeProperties

iana-prop

Figure 2 Mapping ICOM Task to iCalendar VTODO

Task.jpg

Figure 4 ICOM Task

3.6.4.  Free/Busy Component

 
   Component Name:  VFREEBUSY
 
   Purpose:  Provide a grouping of component properties that describe
      either a request for free/busy time, describe a response to a
      request for free/busy time, or describe a published set of busy
      time.
 
   Format Definition:  A "VFREEBUSY" calendar component is defined by
      the following notation:
 
       freebusyc  = "BEGIN" ":" "VFREEBUSY" CRLF
                    fbprop
                    "END" ":" "VFREEBUSY" CRLF
 
       fbprop     = *(
                  ;
                  ; The following are REQUIRED,
                  ; but MUST NOT occur more than once.
                  ;
                  dtstamp / uid /
                  ;
                  ; The following are OPTIONAL,
                  ; but MUST NOT occur more than once.
                  ;
                  contact / dtstart / dtend /
                  organizer / url /
                  ;
                  ; The following are OPTIONAL,
                  ; and MAY occur more than once.
                  ;
                  attendee / comment / freebusy / rstatus / x-prop /
                  iana-prop
                  ;
                  )
 

iCalendar VFreeBusy

ICOM FreeBusy

ICOM FreeBusyInterval

dtstamp

creationDate

 

uid

 

 

contact

 

 

url

 

 

dtstart

startDate

startDate

dtend

endDate

endDate

 

 

freeBusyType

freebusy

intervals

 

organizer

participants

 

attendee

 

 

comment

 

 

rstatus

 

 

x-prop

 

 

iana-prop

 

 

 

 

FreeBusy.jpg

Figure 5 ICOM Free Busy

 

The following rich Presence model can be derived from FreeBusy:

 

Presence.jpg

Figure 6 ICOM Presence Model

 

 

Regards,

Eric

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]