3 Protocol Details

The WS-Enumeration: Directory Services Protocol Extensions [MS-WSDS] extend how the WS-Enumeration [WSENUM] protocol operates between an application and a directory server. The requestor that is the client for the protocol sends a SOAP message containing a request of an Enumerate, Pull, Renew, GetStatus or Release operation to the server, and the server responds with a SOAP message, containing the response, or a SOAP fault, if an error occurred during server processing.<2>

The WS-Enumeration [WSENUM] specification of the simple SOAP-based protocol consists of multiple operations that are served by the WSDL port types: an Enumerate operation to begin the request, one or more Pull operations to retrieve the results, and a Release operation to terminate the query. In subsequent sections, extensions to some of these operations have been specified.

In the WS-Enumeration [WSENUM] specification, all the Enumerate operations are tied together by an enumeration context that represents a logical cursor through a sequence of data items. The enumeration context is just an identifier that the server returns in response to the WS-Enumeration [WSENUM] Enumerate operation and which the client is responsible for passing back while performing subsequent WS-Enumeration [WSENUM] operations. Thus, the requestor MUST initiate an Enumerate operation to create new enumeration contexts for subsequent traversal/retrieval of result items through Pull operation or performing other WS-Enumeration [WSENUM] operations. At the same time, WS-Enumeration [WSENUM] mandates that the state regarding the progress of the iteration MUST be maintained between requests by the server being enumerated or by the requestor.

Besides the requirements for WS-Enumeration [WSENUM], this protocol extension is simply a pass-through on the client side. That is, no additional timers or other state is required on the client side of this protocol. Calls made by the higher-layer protocol or application are passed directly to the transport, and the results returned by the transport are passed directly back to the higher-layer protocol or application.

Note  The server implementation of the WS-Enumeration: Directory Services Protocol Extensions MAY<3> limit the maximum validity of an enumeration context. This limit, if implemented, applies across the Renew operation (section