Re: Questions regarding recurrence rules

Reinhold Kainhofer <[email protected]> Fri, 3 Jun 2005 17:26:41 +0200
Newsgroups gmane.ietf.calendar
Organization FAM, Vienna University of Technology
Message-ID <[email protected]>
--nextPart2044280.BZFBn4X8K7
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Friday 03 June 2005 16:46, Laird Nelson wrote:
> > -----Original Message-----
> > From: [email protected]
> > [mailto:[email protected]] On Behalf Of
> > Reinhold Kainhofer
> > 2) All VTIMEZONEs (at least those used by Exchange, Apple's
> > iCal, and by libical and so by evolution, korganizer etc.)
> > use RRULE:FREQ=3DYEARLY;BYMONTH=3D10;BYDAY=3D-1SU
>
> (Mr. Kainhofer is implying that they got it wrong;=20

No, I'm not implying that it is wrong. I simply don't know how it's correct=
=2E=20
That's why I'm asking here to get some clarification on how the rfc should =
be=20
correctly interpreted.

Initially, I thought that -1SU always means the last sunday in the frequenc=
y.=20
But after reading rfc 2445 over and over again (and after looking in the=20
internet for examples and other comment), I don't think that this is the=20
correct interpretation. Actually, I really think now that the correct=20
behavior is that the n-th day in the the BYDAY rule is really relative to t=
he=20
set generated by BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY and the weekday=20
given in BYDAY.


> If this is correct and can be generalized, then it implies that BYDAY
> modifiers apply to the current set of evaluated occurrences, not to the
> FREQ. =20

Actually, thinking a bit more about this: Such an interpretation (which I n=
ow=20
tend to think is the right way) would mean that the +n/-n in the BYDAY is=20
similar to the BYSETPOS values, only that it operates on a date-basis (i.e.=
=20
before all times are evaluated, but after all rules for the date have been=
=20
processed). To me that sounds as if there was some kind of redundancy=20
involved here...
(Okay, there are some things that cannot be done with BYSETPOS alone, like =
the=20
second-to-last wednesday and the last friday of the month.)


> The upshot is
> that I'm very confused.  Perhaps my recurrence rule expansion library will
> need to be written to operate in one of two different modes?

I'm in the process of rewriting our old recurrence class (which was origina=
lly=20
written for vCalendar-style recurrences, and so was missing the BYSETPOS=20
altogether, and it was impossible to include it without a complete rewrite)=
,=20
so I'd like to get everything right now rather than having to rewrite it=20
again.

BTW, is there an FAQ about such issues with RFC 2445 somewhere? Maybe even =
a=20
wiki page where I can add the answers to these questions myself (once we ge=
t=20
a definitive answer)?

Cheers,
Reinhold
=2D-=20
=2D-----------------------------------------------------------------
Reinhold Kainhofer, Vienna University of Technology, Austria
email: [email protected], http://reinhold.kainhofer.com/
 * Financial and Actuarial Mathematics, TU Wien, http://www.fam.tuwien.ac.a=
t/
 * K Desktop Environment, http://www.kde.org, KOrganizer / KPilot maintainer

--nextPart2044280.BZFBn4X8K7
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQBCoHazTqjEwhXvPN0RAowOAKCsxm8Ev9Ly4pgvxXCexELG5FVjugCgv/AH
9rEHFvqGQMKD8mxxz7CTrD8=
=XXW5
-----END PGP SIGNATURE-----

--nextPart2044280.BZFBn4X8K7--