2.2.5.1 ChangeTypeEnum

The ChangeTypeEnum simple type specifies the type of changes returned when a protocol client requests changes to list items.

 <s:simpleType name="ChangeTypeEnum">
   <s:restriction base="s:string">
     <s:enumeration value="Delete" />
     <s:enumeration value="InvalidToken" />
     <s:enumeration value="Restore" />
     <s:enumeration value="MoveAway" />
     <s:enumeration value="SystemUpdate" />
     <s:enumeration value="Rename" />
   </s:restriction>
 </s:simpleType>

A change token could be invalid, expired, or subject to other errors such as those described in the following table, which is indicated in the response.

Change

Description

 <Id   ChangeType=
 "InvalidToken"   />

Specifies that the changeToken parameter for the GetListItemChangesSinceToken operation (section 3.1.4.22) is either invalid or expired, or the knowledge parameter for the GetListItemChangesWithKnowledge operation (section 3.1.4.23) is too old and cannot be used by the protocol server to enumerate changes in the list.

 <Id   ChangeType="Restore" />

Specifies that the list has been restored from a protocol server-specific backup such as a Recycle Bin.

In the prior cases, the protocol client MUST discard any copy of the list items that it has cached. The protocol client MUST then do a full reconciliation with the protocol server by calling GetListItemChangesSinceToken with an empty changeToken parameter or GetListItemChangesWithKnowledge with a null knowledge parameter.

The Changes element could include other changes that have been made to a list item or file or folder that is not a list item or view or file fragment. A protocol client SHOULD recognize these and treat them as follows:

Change Type

Description

 Delete

Specifies that the item with the specified identification is no longer present. Note, delete changes are sent even if the list item was filtered out by the query.

 MoveAway

Specifies that the item be treated in the same manner as a delete.

 SystemUpdate

Specifies that changes have been made on the protocol server such that a protocol client MAY get the updated fields for the item in a subsequent GetListItemChangesSinceToken or GetListItemChangesWithKnowledge call by specifying the returned identification using the ExtraIds query option for list items. If the change was made to a view, the updated view can be obtained from the server by calling GetListAndView operation, as specified in section 3.1.4.16.

 Rename

Specifies that changes have been made on the protocol server such that a protocol client MAY get the updated fields for the list item in a subsequent GetListItemChangesSinceToken or GetListItemChangesWithKnowledge call by specifying the returned identification using the ExtraIds query option for list items.

 Restore

Specifies that the item with the specified identification and any items beneath it in the hierarchy (for example, items under an item that represents a folder) were restored.