3.1.4.22.2.2 GetListItemChangesSinceTokenResponse

The GetListItemChangesSinceTokenResponse element contains the protocol server response for the GetListItemChangesSinceToken request (section 3.1.4.22).

 <s:element name="GetListItemChangesSinceTokenResponse">
   <s:complexType>
     <s:sequence>
       <s:element minOccurs="0" maxOccurs="1" name="GetListItemChangesSinceTokenResult">
         <s:complexType mixed="true">
           <s:sequence>
             <s:element name="listitems" >
               <s:complexType>
                 <s:sequence>
                   <s:element name="Changes" >
                     <s:complexType>
                       <s:sequence>
                         <s:element name="List" type="tns:ListDefinitionSchema"  
                                    minOccurs="0" />
                         <s:element name="Id" type="tns:ListItemChangeDefinition" minOccurs="0"/>                          
                       </s:sequence>
                       <s:attribute name="LastChangeToken" type="s:string" />
                       <s:attribute name="MoreChanges" type="core:TRUEFALSE" />      
                     </s:complexType>
                   </s:element>
                   <s:any />
                 </s:sequence> 
                 <s:attribute name="MinTimeBetweenSyncs" type="s:unsignedInt" />
                 <s:attribute name="RecommendedTimeBetweenSyncs" type="s:unsignedInt" />
                 <s:attribute name="MaxBulkDocumentSyncSize" type="s:unsignedInt" />
                 <s:attribute name="MaxRecommendedEmbeddedFileSize" type="s:unsignedInt" />
                 <s:attribute name="AlternateUrls" type="s:string" />
                 <s:attribute name="EffectivePermMask" type="s:string" />
               </s:complexType>
             </s:element>
           </s:sequence>
         </s:complexType>
       </s:element>
     </s:sequence>
   </s:complexType>
 </s:element>
  

GetListItemChangesSinceTokenResult: The top-level element, which contains a listitems element. listitems includes attributes describing the namespaces for the ADO 2.6 Persistence format, that MAY be ignored by the protocol client, as well as the Changes element. The following attributes are specified for Changes.

Attribute

Definition

LastChangeToken

Protocol clients SHOULD include the value of this attribute in subsequent requests to the protocol server. See notes in the changeToken parameter description for more information about paging of data with change tokens.

MoreChanges

The Changes element in the response MUST include the attribute MoreChanges set to "TRUE" if more changes are known to the protocol server than were returned to the protocol client. When the protocol client finds MoreChanges set to "TRUE", the protocol client can make another call to GetListItemChangesSinceToken by using the new change token value of LastChangeToken to retrieve subsequent changes. MoreChanges MUST be included in the result only if the changeToken parameter was specified by the protocol client in the request.

The inner XML of the Changes element MUST contain the full List element from the GetList operation (section 3.1.4.15) if no change token was passed in the request or if there have been schema changes made to the list after the change token.<70> The names of the attributes containing the list item data in inner z:row elements correspond to the Name attribute in the Field elements of GetList, and are prefixed by "ows_". Note that the set of fields returned by the method is restricted by the viewField or viewName parameter.

The ID element in the Changes element represents the change to a list item, as specified in section 2.2.4.13.

The following attributes are specified for listitems.

Attribute

Definition

MinTimeBetweenSyncs

Represents the minimum amount of time between user-initiated or automatic synchronization calls that is recommended by the server. The value represents a time, in minutes. Protocol clients can respect this value even if the user initiates synchronization manually. That is, if this is set to 5 minutes, protocol clients MAY only send one request per 5 minutes even if the user repeatedly clicks "send/receive".

RecommendedTimeBetweenSyncs

The recommended minimum amount of time in seconds between synchronizations. The clients can choose to respect this for automatic syncs and override it for user-initiated synchronizations.

MaxBulkDocumentSyncSize

The maximum total size of content that is recommended to be synchronized to the protocol client. The default is 500 megabytes. Setting this to a large value can degrade performance. See [MS-OUTSPS] section 3.2.4.2.6.

MaxRecommendedEmbeddedFileSize

Client applications that are capable of both embedding a document inside another document or linking between documents, and which are capable of using a server-defined value to control this behavior MUST NOT embed documents larger than this value in other documents. The default is 500 megabytes.<71>

AlternateUrls

Alternate URLs are listed in the following zone order, delimited by commas: Intranet,Default,Extranet,Internet,Custom.

EffectivePermMask

The permissions on the list. See [MS-WSSFO2] section 2.2.2.14.

The listitems element also contains an inner element named rs:data, which is of type DataDefinition ListItemCollectionPositionNext (section 2.2.4.7).

The following is an example response from a GetListItemChangesSinceToken request (section 3.1.4.22):

 <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><GetListItemChangesSinceTokenResponse xmlns="http://schemas.microsoft.com/sharepoint/soap/"><GetListItemChangesSinceTokenResult><listitems MinTimeBetweenSyncs='0' RecommendedTimeBetweenSyncs='180' MaxBulkDocumentSyncSize='500' AlternateUrls='http://siteaddress/' EffectivePermMask='FullMask' xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
      xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
      xmlns:rs='urn:schemas-microsoft-com:rowset'
      xmlns:z='#RowsetSchema'>
 <Changes LastChangeToken="1;3;e074e60a-0126-4446-a751-a5be7a55ed81;633374187828130000;243"><List excluded content that matches GetList call … > </List></Changes>
 <rs:data ItemCount="1">
    <z:row ows_ID='1' ows_Title='Test new entry' ows_MetaInfo='1;#' ows__ModerationStatus='0' ows__Level='1' ows_owshiddenversion='3' ows_UniqueId='1;#{078CAB5C-5FEA-43EA-B23A-FB93EF35397D}' ows_FSObjType='1;#0' ows_Created='2008-01-28 08:06:11' ows_FileRef='1;#Lists/TestListItem/1_.000' />