4

Problem

Some reoccurring events, that don't really end at some point (like club meetings?), depend on other conditions (like holiday season). However, manually adding these exceptions would be necessary every year, as the dates might differ.

Research

  • I have found out about exdate (see the image of "iCalendar components and their properties" on Wikipedia (2))
  • Also found some possible workaround: 'just writing a script to do process such events'. This would still mean I need to process a .ics manually and import it into my calendar, which implies some limitations:
    • can not be determined for all time spans (e.g. holidays not fixed for more than three years)
    • these events would probably be separate and not reoccurring/'grouped', which makes further edits harder

Question

Is there a way to specify recurring exceptions in iCal ?

  • To clarify, I have a recurring event and recurring exceptions.
  • So for instance I have a infinitely reoccurring weekly event, that depends on the month; where it might only take place if it's not e.g. January, August, or December.

Is there a way to use another event (/calendar) to filter events by boolean logic ?

If one could use a second event (or several) to plug into exdate this would solve the first problem and add some more possibilities.


note
if this question is too specific and the original problem could be solved by other means (other calendar-formats), feel free to comment/edit/answer

BadAtLaTeX
  • 614
  • 1
  • 9
  • 22

2 Answers2

5

RFC2445 defines an EXRULE (exception rule) property. You can use that in addition to the RRULE to define recurring exceptions.

However, RFC2445 was superseded by RFC5545, which unfortunately deprecates the EXRULE property. So, client support is questionable.

As you already proposed, automatically adding EXDATE properties is a possible solution.

Community
  • 1
  • 1
thet
  • 697
  • 12
  • 14
  • Thanks! Definitively good to know that it would be possible to use a rule instead of a list as an ‘EXDATE‘. Though, it is useless due to the second information and sadly does not solve the initial problem. Lets hope for an update that allows this usage again. – BadAtLaTeX Nov 22 '17 at 16:54
1

BYMONTH would be another possibility, e.g. here's a rule for a club meeting that occurs the first Wednesday of every month except December (which is their Christmas party, so no business meeting)

RRULE:FREQ=MONTHLY;BYDAY=1WE;BYMONTH=1,2,3,4,5,6,7,8,9,10,11
John Meyer
  • 465
  • 2
  • 11
  • Thank you for the answer! It is getting close to a proper solution. Is there an overview over these filters? For example, is there 'BYWEEK' ? Googling leads to something else. This way one could define most holiday-exceptions (a bit tediously maybe). – BadAtLaTeX Sep 27 '22 at 09:12