Thanks for your answer Doug, but my question was only about the use of EXDATE. For simplicity lets say we are only dealing with appointments (no attendees). I know that I need to include the second VEVENT for the changed occurrence and I know how to deal with SEQUENCE and RECURRENCE-ID. My question was if I need to create an EXDATE property in the base event for the changed occurrence.
As is the idea that you can add instances by sending a new object containing a RECURRENCE-ID as a substitute for METHOD:ADD. I do not know how evolution does it, I do know that it is not portable. I do know that there is no such specification or documentation for doing it that way. Some point to a sentence or paragraph in 2445 or 2446 and ignore the section title that is describing something else.
The 2nd VEVENT is not for changed instances, its for details that can not be described in the 1st VEVENT. You can not make one VEVENT that says for the first three Mondays use LOCATEION:X and for the next 3 Mondays use LOCATION:Y. So you have to create two VEVENTS that have the SAME UID one METHOD:PUBLISH the 2nd METHOD:ADD. ADD adds all instances from the 2nd into the 1st to make the one meeting set. ADD is also used to add (DTSTAMP/RRULE/RDATE) or subtract out (EXRULE/EXDATE) one or more instances to an existing VEVENT or describe unique -other- properties that can not be described in one VEVENT.
The reason I am asking is that I am doing some testing with Evolution and our server (which currently does not create EXDATEs for changed occurrences, only for deleted ones). Evolution obviously expects those and will display two entries because of the missing EXDATE: one for the original occurrence and one for the changed one. I would like to know who is right here.
If the newer VEVENT has a higher SEQUENCE, then the old one is obsolete and ALL of its OLD instances MUST be tossed (except if the newer is METHOD:ADD).
The primary reason for EXDATE was to say 'this meeting is every Monday (except 'this' one).
evolution is still showing 'B', then evolution is not 2445/24546
compliant. And the organizer should never need to have sent a
CANCEL.(B) If you are saying that UID:SEQUENCE:1 says there are appointments
at A-8am-Mon, B-8am-Tue, C-8am-Wed, D-8am-Thu.METHOD:PUBLISH SEQUENCE:1 RRULE:FREQ=DAILY;COUNT=4
Then you get UID:SEQUENCE:2 that says: A-8am-Mon, B-3PM-Tue,
C-8am-Wed, D-8am-Thu.METHOD:PUBLISH SEQUENCE:2 RRULE:FREQ=DAILY;COUNT=4 EXDATE:B-8am-Tue RDATE:B-3pm-Tue
and evolution is ALSO showing B-8am-Tue, then evolution is not
2445/2446 compliant. NOTHING from UID:SEQUENCE:1 should be used after METHOD:PUBLISH
UID:SEQUENCE:2 has been received. No matter how they use RRULE or
EXRULE. UID:SEQUENCE:2 does NOT need to specifically CANCEL
the b-8am-Tue meeting. It can just send a new VEVENT with the new
times.(C) OR they could: send UID:SEQUENCE:1 A-8am-Mon, B-8am-Tue,
C-8am-Wed, D-8am-Thu.METHOD:PUBLISH SEQUENCE:1 RRULE:FREQ=DAILY;COUNT=4
METHOD:CANCEL SEQUENCE:2 RECURRENCE-ID:B-8am-Tue
Followed by METHOD:ADD UID:SEQUENCE:3 B-3PM-Tue. METHOD:ADD SEQUENCE:3 DTSTART:B-3PM-Tue.
This is one of the reasons that CALSIFY exists, I can provide several more way that vendors can do exactly the same thing when the USER using the GUI simply changes B-8am-Tue to B-3PM-Tue.
METHOD:PUBLISH SEQUENCE:1 RRULE:FREQ=DAILY;COUNT=4
METHOD:PUBLISH SEQUENCE:2 RRULE:FREQ=DAILY;COUNT=4 EXDATE:B-8am-Tue
METHOD:ADD SEQUENCE:3 DTSTART:B-3PM-Tue
And I am not even going to list the details of how some add instance using METHOD:PUBLISH and RECURRENCE-ID as there is no RFC or draft documentation for that method.
So if I have not yet answered your question :-) Send a snippet of the METHOD / SEQUENCE and DTSTAMP / RRULE / EXRULE / whatever that is being done on each side of the change and maybe I can hit the mark.
Doug Royer | http://INET-Consulting.com -------------------------------|-----------------------------
begin:vcard fn:Doug Royer n:Royer;Doug org:INET-Consuiting.com adr:;;2756 N. GreenValley Pkwy #845;Henderson;NV;89014;U.S.A email;internet:Doug@xxxxxxxxx title:CEO tel;work:208-612-4638 tel;fax:866-494-8574 tel;cell:208-520-4044 x-mozilla-html:TRUE url:http://Royer.com version:2.1 end:vcard
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature