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

Relax constraint that DELETE Cannot return data

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: V4.01_OS
    • Fix Version/s: V4.01_ERRATA01
    • Component/s: Protocol
    • Labels:
      None
    • Environment:

      Proposed

    • Proposal:
      Hide

      Allow clients to request, and services to return, responses from DELETE (i.e., if return=representation preference is specified).

      The response should be a representation of the deleted entity (i.e., a tombstone) 

      If the service supports $select/$expand on the DELETE, standard semantics apply (the same as would be specified in a delta response or delta update payload.)

      Also clarify, in the collection case, the response minimally includes the items requested to be deleted that were NOT deleted, and MAY also include tombstones for the ones that were successfully deleted.

      Show
      Allow clients to request, and services to return, responses from DELETE (i.e., if return=representation preference is specified). The response should be a representation of the deleted entity (i.e., a tombstone)  If the service supports $select/$expand on the DELETE, standard semantics apply (the same as would be specified in a delta response or delta update payload.) Also clarify, in the collection case, the response minimally includes the items requested to be deleted that were NOT deleted, and MAY also include tombstones for the ones that were successfully deleted.

      Description

      The current wording in [11.4.5 Delete an Entity](http://docs.oasis-open.org/odata/odata/v4.01/os/part1-protocol/odata-v4.01-os-part1-protocol.html#sec_DeleteanEntity) in [Protocol] states:

      On successful completion of the delete, the response MUST be 204 No Content and contain an empty body.

      This is overly restrictive. HTTP allows Delete to return a response, and since we added a preference header for clients to request a response from requests that typically may not return responses, we should allow clients to request, and services to return, responses from DELETE (i.e., if return=representation preference is specified).

      The response should be a representation of the deleted entity.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              mikep Michael Pizzo
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: