#72 Recurrences found improperly when DTSTART/UNTIL are mismatch

open
nobody
5
2012-09-15
2011-10-17
Doug Day
No

[icalvalid] Recurrences found improperly when DTSTART is DATE-TIME and UNTIL is DATE (#7)

This is from the Ann Arbor city calendar. Both events are in the past. The first produces no occurrences, as it should not. But the second does produce occurrences.

This might be both a DDay.iCal issue and a Validator issue, because the event violates this rule:

"The value of the UNTIL rule part MUST have the same value type as the "DTSTART" property."

Given that Google Calendar produced the calendar, I'm puzzled as to how this happened, because when you create a recurrence the DTSTART and UNTIL match. But maybe back in 2007 when this event was first recorded that wasn't true?

BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:AnnArbor City
X-WR-TIMEZONE:America/New_York
BEGIN:VTIMEZONE
TZID:America/New_York
X-LIC-LOCATION:America/New_York
BEGIN:DAYLIGHT
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=America/New_York:20070807T143000
DTEND;TZID=America/New_York:20070807T153000
RRULE:FREQ=WEEKLY;BYDAY=TU;UNTIL=20070828T183000Z;WKST=SU
DTSTAMP:20111017T134858Z
UID:p0dk3t0cscme1il8utdmd0kgkc@google.com
CLASS:PUBLIC
CREATED:20070725T201600Z
DESCRIPTION:For additional information\, call 734.769.5911 or visit www.a2g
ov.org/senior. Free.
LAST-MODIFIED:20070725T201600Z
LOCATION:Ann Arbor Senior Center\, 1320 Baldwin Ave.\, Ann Arbor\, MI
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Investment/Financial Planning
TRANSP:TRANSPARENT
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/New_York:20070703T143000
DTEND;TZID=America/New_York:20070703T153000
RRULE:FREQ=WEEKLY;BYDAY=TU;UNTIL=20070731;WKST=SU
DTSTAMP:20111017T134858Z
UID:rgvmht89mffbphlfjdbv9dnkq8@google.com
CLASS:PUBLIC
CREATED:20070622T175239Z
DESCRIPTION:For additional information\, call 734.769.5911 or visit www.a2g
ov.org/senior. Free.
LAST-MODIFIED:20070622T175239Z
LOCATION:Ann Arbor Senior Center\, 1320 Baldwin\, Ann Arbor\, MI
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Investment/Financial Planning
TRANSP:TRANSPARENT
END:VEVENT
END:VCALENDAR

--
Reply to this email directly or view it on GitHub:
https://github.com/dougrday/icalvalid/issues/7

Discussion

  • Doug Day
    Doug Day
    2011-10-17

    From that same Ann Arbor calendar. In this case DTSTART and UNTIL, so I guess that wasn't the problem. But recurrences are again found when they shouldn't be.

    This is using Event.GetOccurrences, BTW, not Calendar.GetOccurrences.

    BEGIN:VCALENDAR
    PRODID:-//Google Inc//Google Calendar 70.9054//EN
    VERSION:2.0
    CALSCALE:GREGORIAN
    METHOD:PUBLISH
    X-WR-CALNAME:AnnArbor City
    X-WR-TIMEZONE:America/New_York
    BEGIN:VTIMEZONE
    TZID:America/New_York
    X-LIC-LOCATION:America/New_York
    BEGIN:DAYLIGHT
    TZOFFSETFROM:-0500
    TZOFFSETTO:-0400
    TZNAME:EDT
    DTSTART:19700308T020000
    RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
    END:DAYLIGHT
    BEGIN:STANDARD
    TZOFFSETFROM:-0400
    TZOFFSETTO:-0500
    TZNAME:EST
    DTSTART:19701101T020000
    RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
    END:STANDARD
    END:VTIMEZONE
    BEGIN:VEVENT
    DTSTART;VALUE=DATE:20090707
    DTEND;VALUE=DATE:20090708
    RRULE:FREQ=DAILY;UNTIL=20090709;WKST=SU
    DTSTAMP:20111017T143917Z
    UID:f8v8bjpa5oc3sn4cihgdbah0as@google.com
    CLASS:PUBLIC
    CREATED:20090623T183052Z
    DESCRIPTION:For children ages 12 and under. Details: www.a2golf.org / 734.7
    94.6246.
    LAST-MODIFIED:20090623T183052Z
    LOCATION:Huron Hills Golf Course\, 3465 E. Huron River Drive\, Ann Arbor\,
    MI
    SEQUENCE:0
    STATUS:CONFIRMED
    SUMMARY:A2 City Junior Tigers Tournament
    TRANSP:TRANSPARENT
    END:VEVENT
    END:VCALENDAR

    --
    Reply to this email directly or view it on GitHub:
    https://github.com/dougrday/icalvalid/issues/8