Uploaded image for project: 'OASIS Open Data Protocol (OData) TC'
  1. OASIS Open Data Protocol (OData) TC
  2. ODATA-1154

Clarify which OData-Version a service should return

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: V4.01_CS01
    • Fix Version/s: V4.01_CS02
    • Component/s: Protocol
    • Labels:
      None
    • Environment:

      Applied

    • Proposal:
      Hide

      The service MUST respond with a payload compliant with the greatest supported version of the protocol that is less than or equal to the request's OData-MaxVersion, if specified.

      The same request should return the same response, so in the absence of an odata-maxversion header, the service should return the same payload over time. "If OData-MaxVersion is not specified, then the service SHOULD interpret the request as having an OData-MaxVersion equal to the initial default version produced by the service".

      Client is allowed to use 4.01 without specifying an OData-Version or OData-MaxVersion of 4.01. If a request has a payload, a compliant client MUST specify the OData-Version of the request body.

      If the client inspects the metadata to determine the service supports 4.01, and requests a maxversion of 4.01, the proposed general rule requires that the service return 4.01 (we can introduce a min version in the future, if required).

      Request and response payloads are independent. The service must honor OData-MaxVersion in a response regardless of the version of the request payload.

      CLARIFICATION FROM 2018-5-4: Regarding "initial default version"; our intention was that the behavior of the service did not change over time with respect to a client that does not specify an OData-MaxVersion header.

      Show
      The service MUST respond with a payload compliant with the greatest supported version of the protocol that is less than or equal to the request's OData-MaxVersion, if specified. The same request should return the same response, so in the absence of an odata-maxversion header, the service should return the same payload over time. "If OData-MaxVersion is not specified, then the service SHOULD interpret the request as having an OData-MaxVersion equal to the initial default version produced by the service". Client is allowed to use 4.01 without specifying an OData-Version or OData-MaxVersion of 4.01. If a request has a payload, a compliant client MUST specify the OData-Version of the request body. If the client inspects the metadata to determine the service supports 4.01, and requests a maxversion of 4.01, the proposed general rule requires that the service return 4.01 (we can introduce a min version in the future, if required). Request and response payloads are independent. The service must honor OData-MaxVersion in a response regardless of the version of the request payload. CLARIFICATION FROM 2018-5-4: Regarding "initial default version"; our intention was that the behavior of the service did not change over time with respect to a client that does not specify an OData-MaxVersion header.
    • Resolution:
      Show
      https://www.oasis-open.org/committees/download.php/64119/odata-v4.01-wd06-part1-protocol-2018-10-19.docx  

      Description

      Which OData-Version should a server respond if the client specifies a OData-MaxVersion of 4.01 and the service supports both 4.0 and 4.01?

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              handl Ralf Handl
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: