[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Changes to RECUR



Here is the current proposed text for changes to recurrence rules. Please
read and comment. 

BTW, I still need to rework the text to use MUST and MUST not. 

eric. 

------------------------------------------------------------------------


[This proposed text is an addition to RFC2445, section 4.3.10]

There are two types of BYxxx rules; date BYxxx rule parts that
specify time periods equal to or longer than a day, and time BYxxx
rule parts that specify the time within a day. The day BYxxx rule
parts are : BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY and BYDAY. The
time BYxxx rule parts are BYHOUR, BYMINUTE, and BYSECOND. BYSETPOS is
neither a date rule part nor  time rule part. 

Not all date BYxxx rule parts can appear simultaneously in a
single recurrence rule. Date BYxxx rule part restrictions are:

	If the BYYEARDAY appears, no other date rule part may appear. 
   
	BYWEEKNO and BYMONTH rule parts may not both appear. 

Furthermore, not all date rule parts may be used with all
recurrence intervals. 

	For MONTHLY recurrences (FREQ=MONTHLY) neither BYYEARDAY nor
	BYWEEKNO may appear.

	For WEEKLY recurrences (FREQ=WEEKLY) neither BYMONTHDAY nor
	BYYEARDAY may appear.

	For DAILY recurrences (FREQ=DAILY) BYYEARDAY may not appear.

( BYYEARDAY may only appear in YEARLY recurrences ) 
 
A rule may not have a BYxxx rule part that conflicts with the
recurrence interval.
	
	A SECONDLY recurrence may not have both a BYSECOND rule part and
	an INTERVAL that is greater than 1

	An HOURLY recurrence may not have both a BYHOUR rule part and
	an INTERVAL that is greater than 1

	A MINUTELY recurrence may not have both a BYMINUTE rule part and
	an INTERVAL that is greater than 1

	A WEEKLY recurrence may not have both a BYWEEKNO rule part and
	an INTERVAL that is greater than 1

	A MONTHLY recurrence may not have both a BYMONTH rule part and	
	an INTERVAL that is greater than 1

There are no restrictions regarding use of date rule parts and
time rule parts. There are no restrictions with using any combination
of time rule parts

[ The following is a change to section 4.3.10]

Change:

   The BYSETPOS rule part specifies a COMMA character (US-ASCII decimal
   44) separated list of values which corresponds to the nth occurrence
   within the set of events specified by the rule. Valid values are 1 to
   366 or -366 to -1. It MUST only be used in conjunction with another
   BYxxx rule part

To: 

   The BYSETPOS rule part specifies a COMMA character (US-ASCII decimal
   44) separated list of values which corresponds to the nth occurrence
   within the set of events specified by the rule. Valid values are 1 to
   31622401 or -31622401 to -1. It MUST only be used in conjunction
   with another BYxxx rule part

[31622401 is the number of seconds in a year plus a leap second, 366 *
24 * 60 * 60 + 1]