OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

odata message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] (ODATA-1057) Consider PATCH to /$delta for delta update rather than rely on context url


     [ https://issues.oasis-open.org/browse/ODATA-1057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ralf Handl updated ODATA-1057:
------------------------------

    Description: 
As of 4.01 we support PATCH to a collection of entities. The PATCH is either interpreted as a set operation (if the payload is a single entity) or applied as a delta payload (if the payload has a context URL of #$delta.

Rather than distinguishing on payload, what if we said that PATCH to a collection of entities is always interpreted as an operation on the set as a whole, and a new path segment /$each is used for an atomic operation on each of the entities, especially DELETE, and PATCH with a single-instance payload.

  was:
As of 4.01 we support PATCH to a collection of entities. The PATCH is either interpreted as a set operation (if the payload is a single entity) or applied as a delta payload (if the payload has a context URL of #$delta.

Rather than distinguishing on payload, what if we said that PATCH to a collection of entities is always interpreted as a set operation (same as PATCH to a collection of complex or primitive types) and to apply a delta to a collection of entities you would PATCH to the resource with /$delta appended.

       Proposal: 
Add path segment /$each to apply an operation on each item of a collection, executed all-or-nothing atomically:

DELETE Orders/$filter=@f/$each?@f=Age gt 3
PATCH Orders/$each - with single payload
PATCH Orders - with delta payload
POST Orders/$filter=@f/$each/Some.SingleAction?@f=Age gt 2 - binding parameter is single order
POST Orders/$filter=@f/Some.CollectionAction?@f=Age gt 2 - binding parameter is collection of orders

  was:State the a PATCH to a collection of entities is always interpreted as a set operation, and PATCH to a resource with /$delta appended applies the payload as a delta.


> Consider PATCH to /$delta for delta update rather than rely on context url
> --------------------------------------------------------------------------
>
>                 Key: ODATA-1057
>                 URL: https://issues.oasis-open.org/browse/ODATA-1057
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Bug
>          Components: Protocol
>    Affects Versions: V4.01_CSD01
>         Environment: [Proposed]
>            Reporter: Michael Pizzo
>             Fix For: V4.01_CSD02
>
>
> As of 4.01 we support PATCH to a collection of entities. The PATCH is either interpreted as a set operation (if the payload is a single entity) or applied as a delta payload (if the payload has a context URL of #$delta.
> Rather than distinguishing on payload, what if we said that PATCH to a collection of entities is always interpreted as an operation on the set as a whole, and a new path segment /$each is used for an atomic operation on each of the entities, especially DELETE, and PATCH with a single-instance payload.



--
This message was sent by Atlassian JIRA
(v6.2.2#6258)


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]