3.1.4.1 Common Rules for All Requests

Requests sent by clients MUST NOT specify any of the HTTP headers or tokens defined in HTTP Header Fields (section 2.2.5) or [RFC2616] which are defined for use only in responses.

In order to make use of the versioning scheme defined in Versioning and Capability Negotiation (section 1.7), a client SHOULD specify the DataServiceVersion (section 2.2.5.3) and MaxDataServiceVersion (section 2.2.5.7) headers in all requests.

For all request types in which the response can include a response body, the client SHOULD specify the Accept (section 2.2.5.1) header or Format System Query Option ($format) (section 2.2.3.6.1.5) to control the content type of the response. If no Accept (section 2.2.5.1) header or $format query string option is specified, the data service SHOULD return an application/atom+xml (section 2.2.5.1.1)-based response. If an application/atom+xml (section 2.2.5.1.1) response, as specified in AtomPub Format (section 2.2.6.2), is not defined for the target resource, then the service SHOULD use application/xml as the response format (see XML Format (section 2.2.6.5)).

After sending a request, the client MUST wait for another higher-layer triggered event or for the response to the request to be received.