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

Allow $expand, $select and $filter with modifying requests that return a collection in combination with return=representation to specify the response shape

    XMLWordPrintable

    Details

    • Proposal:
      Hide

      Extend allowing use of $select, $filter and $expand to data modification requests that return a collection
      1) if $expand/$select/$filter are present, implies return=representation
      2) if $expand/$select/$filter are present and return=minimal is specified, then service SHOULD NOT return a result and MUST include preference-applied if they DON'T return a result
      3) if it returns a result, $expand and $filter MUST be applied if specified and MUST include at least the $selected columns
      4) the service MUST NOT fail the request due to the $expand/$select/$filter; if the service cannot return a result with the appropriate $expand, $filter and $select it MUST return No Content

      Show
      Extend allowing use of $select, $filter and $expand to data modification requests that return a collection 1) if $expand/$select/$filter are present, implies return=representation 2) if $expand/$select/$filter are present and return=minimal is specified, then service SHOULD NOT return a result and MUST include preference-applied if they DON'T return a result 3) if it returns a result, $expand and $filter MUST be applied if specified and MUST include at least the $selected columns 4) the service MUST NOT fail the request due to the $expand/$select/$filter; if the service cannot return a result with the appropriate $expand, $filter and $select it MUST return No Content
    • Resolution:
      Show
      https://www.oasis-open.org/committees/download.php/60366/odata-v4.01-wd02-part1-protocol-2017-03-24.docx https://www.oasis-open.org/committees/download.php/60367/odata-v4.01-wd02-part2-url-conventions-2017-03-24.docx

      Description

      This is a clone of ODATA-614 in which we allowed to use $expand and $select already for single entities.
      While discussing this in our meeting on December 1st, we concluded that there is no reason to not allow this for collections either.

      The proposed solution is pretty much just allowing what we already allowed for requests returning a single resource to collections as well. Re-reading the proposal though I wonder if it is obvious that returning 'No Content' implies it couldn't return what was requested but still executed the request. I'm not proposing to fail the request just not sure if the response is in line with what one expects/what a GET request would do if it were asked the same???

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              hubert.heijkers Hubert Heijkers (Inactive)
            • Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: