iCalendar RFC 2445

Recurrence Patterns in the Real World

A recurrence pattern describes the rules when the event occurs. A recurrence pattern engine such as Aspose.iCalendar is needed to calculate the dates and times of the occurrences for a given recurrence pattern. We encounter schedules or recurrence patterns in many situations, for example:

  • Ten team meetings, every Monday at 10am.
  • Process salary payment on the last work day every month.
  • Check patient’s temperature every day for two weeks.
  • Go to the gym on Monday, Wednesday and Friday.
  • Run backup every 4 hours on work days.
  • Generate sales report on …
  • Update website statistics every … Almost any event that occurs periodically can be represented as a recurrence pattern. For example, the following code will return an array containing ten occurrences of the previous team meeting example:



RecurrencePattern pattern = new RecurrencePattern(

 "DTSTART:20040301T100000\n" +

  "RRULE:FREQ=WEEKLY;COUNT=10;BYDAY=MO");

DateArray dates = pattern.GenerateOccurrences();