standards - iCalendar UNTIL rule must be of the same type as DTSTART property? -
in icalendar rfc 5545, section 3.3.10, see following until parameter description:
the value of until rule part must have same value type "dtstart" property. furthermore, if "dtstart" property specified date local time, until rule part must specified date local time. if "dtstart" property specified date utc time or date local time , time zone reference, until rule part must specified date utc time.
however, in 3.8.5.3 recurrence rule paragraph, until specified in utc, regrdless of dtstart property:
dtstart;tzid=america/new_york:19970902t090000 rrule:freq=daily;until=19971224t000000z dtstart;tzid=america/new_york:19970902t090000 rrule:freq=weekly;until=19971007t000000z;wkst=su;byday=tu,th
there 5 of such examples in total.
i found @ least 2 caldav clients (ios , mozilla lightning) submit until parameter in utc, regardless of dtstart property.
the place until must in utc rrule in vtimezone. or not getting something?
the cited paragraph has 3 parts:
part 1
the value of until rule part must have same value type "dtstart" property.
this refers value type i.e. value=date
vs. value=date-time
. if event all-day event until
date has specified all-day date well, otherwise until
date must have time component.
part 2
furthermore, if "dtstart" property specified date local time, until rule part must specified date local time.
in context "local time" means "floating time" specified in section 3.3.5 (form #1), says:
form #1: date local time
the date local time form date-time value not contain utc designator nor reference time zone. example, following represents january 18, 1998, @ 11 pm:
19980118t230000
date-time values of type said "floating" , not bound time zone in particular.
that includes value=date
dates.
if dtstart
floating, i.e. not anchored in specific time zone, until
value can't absolute time, otherwise actual end of rule depend on current time zone.
as noted, doesn't apply rrule
s inside of vtimezone
definitions.
part 3
if "dtstart" property specified date utc time or date local time , time zone reference, until rule part must specified date utc time.
the key difference sentence talks absolute dtstart
time, either in utc or in local time with time zone reference (like in quoted examples).
this refers form #2 , form #3 of section 3.3.5. if value of dtstart
corresponds of these forms, until
value has specified in utc time. think reasoning behind don't need specify time zone until
date if use "zulu" notation (and can not assume can use time zone of dtstart
until
).
edit
since "floating time" not common in calendar clients, you'll barely see non-utc until
dates. in thunderbird/lightning can explicitly select "local time" event, creates floating event. in case should until
value in local time well.
Comments
Post a Comment