3.1.5.1 Finding the Calendar Object
Several actions require finding the Calendar object to which a meeting-related object is referring. To find Calendar objects, the client searches in the Calendar special folder of the mailbox that the event was intended for. This is typically the mailbox of the user who is logged on, but for the delegate, the client searches the delegator's folder for objects received on behalf of the delegator.
To look for the object, the client first looks for a Calendar object for which the PidLidGlobalObjectId property (section 2.2.1.27) matches the value of the PidLidCleanGlobalObjectId property (section 2.2.1.28) of the meeting-related object.
If the action is being applied to an exception to a recurring series, the following additional operations are required, depending on whether a matching recurring series object was found:
If a recurring series object was found, the client attempts to find the Exception Attachment object within a Calendar object by comparing the value of the PidLidExceptionReplaceTime property (section 2.2.10.2.5) from the meeting-related object with either the PidTagExceptionReplaceTime property (section 2.2.10.1.6) on the Exception Attachment object or the PidLidExceptionReplaceTime property on the Exception Embedded Message object, as specified in section 2.2.10.2. Note that the PidTagExceptionReplaceTime property might not be present on the Exception Attachment object. In the case where the Exception Attachment object cannot be found, the client can create a new one.
If the recurring series object was not found, the client looks for a recurring series object for which the PidLidGlobalObjectId property matches the value of the PidLidGlobalObjectId property of the meeting-related object. This would be the case, for example, if a user has been invited only to an exception to a recurring series.