calendarthunderbirdcaldavnextcloudlightning

CalDav: Different category assignment in Nextcloud and Thunderbird Lightning


If creating an Event via the nextcloud Ui, the Caldav server response looks like this (output shortened):

BEGIN:VCALENDAR

VERSION:2.0

PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN

BEGIN:VTIMEZONE

TZID:Europe/Berlin

BEGIN:DAYLIGHT

TZOFFSETFROM:+0100

TZOFFSETTO:+0200

TZNAME:CEST

DTSTART:19700329T020000

RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3

END:DAYLIGHT

BEGIN:STANDARD

SUMMARY:Test
.....

CATEGORIES:Jg. 5  <-- // here

CATEGORIES:Jg. 6  <-- // here

....

END:VEVENT

END:VCALENDAR

If the event is created in Thunderbird it looks like this (output shortened):

BEGIN:VCALENDAR

VERSION:2.0

CALSCALE:GREGORIAN

PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN

DTSTART:19700329T020000

RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU

DTSTART:19701025T030000

RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU

END:STANDARD

END:VTIMEZONE

BEGIN:VEVENT

CREATED:20200813T111910Z

LAST-MODIFIED:20200817T084432Z

DTSTAMP:20200817T084432Z

UID:584589d3-54a6-4f5a-bd4c-03e478938b07

SUMMARY:Test

CATEGORIES:Jg. 5,Jg. 6 <-- // here

....    
END:VEVENT

END:VCALENDAR

As you can see, Nextcloud creates for each category it's own field, while Thunderbird separates each category with a comma (,).

Is this right?


Solution

  • As per rfc 5545 section 3.8.1.2, the CATEGORIES property can have multiple, comma-separated values. This is what Thunderbird does.

    At the same time, there are a number of rfc 5545 properties that are allowed to be specified more than once, e.g. ATTENDEE. Therefore parsers have learned to deal with multiple properties. Looking at rfc 7986 section 5.6, multiple properties for CATEGORIES are explicitly allowed.

    It is possible that some parsers may internally turn multiple CATEGORIES properties into a single one (or vice versa?), which would be noticeable when editing the event.