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: RE: [odata] Agenda for OData TC meeting on 2016-08-16 - chat transcript


Room information was updated by: Stefan Hagen
Register: https://www.oasis-open.org/apps/org/workgroup/odata/event.php?event_id=41476  (please do so as usual, thanks).
Agenda draft: https://www.oasis-open.org/apps/org/workgroup/odata/email/archives/201608/msg00075.html

 

Stefan Hagen: ParticipationInfo: Voting Members: 1 of 12 (8%) (used for quorum calculation)
Stefan Hagen: ParticipationInfo(OnOasisSite): Unchanged ...
Stefan Hagen: ParticipationInfo: Voting Members: 3 of 12 (25%) (used for quorum calculation)

 

Ralf Handl (SAP): ParticipationInfo: Voting Members: 7 of 12 (58%) (used for quorum calculation)

 

anonymous morphed into Mark Biamonte (Progress)

 

Ralf Handl (SAP): Achieved Quorum: yes
Ralf Handl (SAP): 2.Approve agenda [8:05am PT]
Ralf Handl (SAP): Agenda is approved
Ralf Handl (SAP): 3.Approve minutes from previous meeting(s) [8:10am PT]
a.Minutes from August 11, 2016 TC meeting: https://www.oasis-open.org/committees/download.php/58706/odata-meeting-141_on-20160811-minutes.html
Ralf Handl (SAP): Minutes are approved
Ralf Handl (SAP): 4.Review action items [Action item list: https://www.oasis-open.org/apps/org/workgroup/odata/members/action_items.php] [8:15am PT]
a.Action items due
i.0036 Register the OData- headers and preferences with IANA
Ralf Handl (SAP): Postponed
Ralf Handl (SAP): Ralf to ask Ram for status
Ralf Handl (SAP): 5.V4.01 [9:20am PT]
a.Issues for V4.01_WD01 in New or Open state
i.New Query Capabilities
1.ODATA-614 Allow $expand, $select, ... with POST/PATCH/PUT in combination with return=representation to specify the response shape
Ralf Handl (SAP): Notes from Meeting on 2016-08-04:
Ralf Handl (SAP): Ralf: Agreement on general direction
 
Ralf: Doubts about usefulness of an additional capabilities annotation
Ralf Handl (SAP): 8.2.8.7 Preference return=representation and return=minimal
 
The return=representation and return=minimal preferences are defined in [RFC7240].
In OData, return=representation or return=minimal is defined for use with a POST, PUT, or PATCH Data Modification Request other than to a stream property, or to an Action Request. Specifying a preference of return=representation or return=minimal in a GET or DELETE request, or any request to a stream property, SHOULD return a 4xx Client Error.
A preference of return=representation or return=minimal is allowed on an individual Data Modification Request or Action Request within a batch, subject to the same restrictions, but SHOULD return a 4xx Client Error if specified on the batch request itself.
A preference of return=minimal requests that the service invoke the request but does not return content in the response. The service MAY apply this preference by returning 204 No Content in which case it MAY include a Preference-Applied response header containing the return=minimal preference.
A preference of return=representation requests that the service invokes the request and returns the modified resource. The service MAY apply this preference by returning the representation of the successfully modified resource in the body of the response, formatted according to the rules specified for the requested format. In this case the service MAY include a Preference-Applied response header containing the return=representation preference.
Ralf Handl (SAP): $select can always be applied
Ralf Handl (SAP): $expand may be difficult
Ralf Handl (SAP): ODATA-615
Allow PATCH and DELETE with $filter on collections to modify or delete all (and only) the matching entities

 

Mike Pizzo: Clarifications re: return=representation 
1) if $expand/$select are present, implies return=representation
2) if $expand/$select are present and return=minimal, service MUST include preference-applied if they DON'T return a result

 

Ralf Handl (SAP): $filter in combination with bundle insert via POST: $filter is interpreted against the after-image of the collection, no other correlation with the request body

 

Mike Pizzo: $filter against the after-image of a bulk insert would imply return=representation without $filter would return the entire result, which seems inconsistent with return=representation of a POST to a single entity which returns only that entity.

 

Ralf Handl (SAP): Actually we don't define bundle-insert with POST, but with PATCH and the delta format, and we disallow $filter etc., see ODATA-613 - Allow PATCH to entity sets using the delta-response format
Ralf Handl (SAP): PATCH to a collection of entities can take a delta payload (interpreted as deltas if body represents a collection of entities) ODATA-613 
a.MUST NOT have $filter, $select, $orderby, etc. 
 
For PATCH, you don't specify a $expand so the extent of that graph is undefined. Therefore, it is valid to have added/deleted links to anything (at least anything reachable from the target; service probably wouldn't bother validating). So Clients SHOULD make sure added/deleted links are reachable from target, but services need not validate. 
 
Response, if requested, should be a delta representation, in the same structure and order as the request payload, representing changes.
Ralf Handl (SAP): PATCH with delta payload: no query options allowed
Ralf Handl (SAP): PATCH with single (partial) instance: $filter identifies instances to be updated, $expand, $select etc. allowed to shape the response
Ralf Handl (SAP): What about $top and $skip?
Ralf Handl (SAP): https://lists.oasis-open.org/archives/odata/201603/msg00018.html

 

Mike Pizzo: 3)can't be applied to PATCH with a delta payload
Mike Pizzo: (i.e., PATCH to a collection)

 

Ralf Handl (SAP): Rescope ODATA-614 to requests that return a single instance, then only $select and $expand make sense
Ralf Handl (SAP): I move to rescope ODATA-614 to requests that return a single instance and only allow $select, $expand, $format

 

Hubert Heijkers: I second

 

Ralf Handl (SAP): Allow $expand, $select, $format with modifying requests that return a single instance in combination with return=representation to specify the response shape
Ralf Handl (SAP): Revised title: Allow $expand and $select with modifying requests that return a single instance in combination with return=representation to specify the response shape
Ralf Handl (SAP): Proposal: Applies only to requests that return a single resource, and only to $select and $expand (and $format) 
1) if $expand/$select are present, implies return=representation 
2) if $expand/$select are present and return=minimal, service MUST include preference-applied if they DON'T return a result

 

Mike Pizzo: 3) if it returns a result, $expand MUST be applied if specified and MUST include at least the $selected columns
Mike Pizzo: 4) the service MUST NOT fail the request due to the $expand/$select; if the service cannot return a result with the appropriate $expand it MUST return No Content
Mike Pizzo: Really, $expand and $select are being treated as preferences; they are just in the URL for convenience.  Should we perhaps put it in the preference?
Mike Pizzo: i.e., return=representation+$expand=...&$select=...
Mike Pizzo: After discussion, we decided to continue to use the query options and not expand the preference header.
Mike Pizzo: Applies only to requests that return a single resource, and only to $select and $expand (and $format)
1) if $expand/$select are present, implies return=representation
2) if $expand/$select are present and return=minimal, service MUST include preference-applied if they DON'T return a result
3) if it returns a result, $expand 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; if the service cannot return a result with the appropriate $expand and $select it MUST return No Content

 

Hubert Heijkers: I move to resolve ODATA-614 as per the amended proposal.

 

Stefan Hagen: I second

 

Ralf Handl (SAP): ODATA-614 is RESOLVED as proposed
Ralf Handl (SAP): 2.ODATA-827 introduce $compute query option
Ralf Handl (SAP): computeTrafo = 'compute' OPEN BWS computeExpr *( BWS COMMA BWS computeExpr ) BWS CLOSE     
computeExpr  = commonExpr asAlias
Ralf Handl (SAP): asAlias         = RWS 'as' RWS expressionAlias
expressionAlias = odataIdentifier

 

Mike Pizzo: Note: once defined, the alias MAY be used in the $filter _expression_.

 

Ralf Handl (SAP): OData defines a number of system query options that allow refining the request. The result of the request MUST be as if the system query options were evaluated in the following order.
Prior to applying any server-driven paging:
$search
$filter
$count
$orderby
$skip
$top
After applying any server-driven paging:
$expand
$select
$format

 

Mike Pizzo: $compute would be first in the list.
Mike Pizzo: Could also be used in $orderby.
Mike Pizzo: $compute columns SHOULD be added to the default selection (in absence of $select) and can be explicitly $selected
Mike Pizzo: Does $select=* include computed columns?  -- yes, for non-entity (or collections of entity) types
Mike Pizzo: $expand=* should then include computed entities/collections of entities
Mike Pizzo: (current _expression_ restricts to simple results)
Mike Pizzo: How does $compute affect contextUrl (if at all)?
Mike Pizzo: Doesn't affect the contextUrl. If included in $select, then the alias appears.
Mike Pizzo: Like any other dynamic property, it would have it's type annotation in the payload.
Mike Pizzo: Remove restriction that _expression_ restricts to a simple value
Mike Pizzo: Can be nested within $expand...
Mike Pizzo: ~Customers?$expand=Orders($compute=price*qty as totalprice;$select=name,price,qty,totalprice)

 

Ralf Handl (SAP): Postponed to September 15
Ralf Handl (SAP): 6.Next meeting [9:50am PT]
a.Thursday September 08, 2016 during 8-10am PT?
Ralf Handl (SAP): 7.AOB and wrap up [9:55am PT]
Ralf Handl (SAP): Meeting is adjourned

 

 

From: odata@lists.oasis-open.org [mailto:odata@lists.oasis-open.org] On Behalf Of Handl, Ralf
Sent: Dienstag, 16. August 2016 13:57
To: odata@lists.oasis-open.org
Subject: [odata] Agenda for OData TC meeting on 2016-08-16

 

Here [1] is a draft agenda for the OData TC (Technical Committee) meeting scheduled on Thursday August 18, 2016 during 8-10am PDT (17:00-19:00 CEST). For additional information, such as dial-in details and chat room, refer to [2]. For TC timeline, see [3]. Feel free to suggest additions or modifications.

 

Thanks.

 

[1] Agenda

 

1.        Roll call [8:00am PT]

a.     Self-registration link: https://www.oasis-open.org/apps/org/workgroup/odata/event.php?event_id=41476

 

2.        Approve agenda [8:05am PT]

 

3.        Approve minutes from previous meeting(s) [8:10am PT]

a.     Minutes from August 11, 2016 TC meeting: https://www.oasis-open.org/committees/download.php/58706/odata-meeting-141_on-20160811-minutes.html

 

4.        Review action items [Action item list: https://www.oasis-open.org/apps/org/workgroup/odata/members/action_items.php] [8:15am PT]

a.     Action items due

                                  i.    0036 Register the OData- headers and preferences with IANA

 

5.        V4.01 [9:20am PT]

a.     Issues for V4.01_WD01 in New or Open state

                                  i.    New Query Capabilities

1.     ODATA-614 Allow $expand, $select, ... with POST/PATCH/PUT in combination with return=representation to specify the response shape

2.     ODATA-827 introduce $compute query option

3.     ODATA-933 Allow using instance annotations in $filter

4.     ODATA-953 Consider deprecating structural casting

5.     ODATA-954 Key-As-Segment for multi-part keys

6.     ODATA-963 Make query options case insensitivite

                                 ii.    Set Operations

1.     ODATA-836 Allow applying actions to a filtered collection of entities

                                iii.    OData Protocol

1.     ODATA-854 Consider use of OPTIONS for discovering formats, other capabilities and features

2.     ODATA-900 Cross-service naviation and service versioning

3.     ODATA-965 UpdateGeoJSON Reference to RFC7946

                                iv.    Enumerations

1.     ODATA-494 Define inheritance for enumeration types

2.     ODATA-849 Add possibility for enumeration types to "extend" another enumeration type

3.     ODATA-874 Allow Edm.String as underlying type for enumeration types

                                 v.    Annotations

1.     ODATA-811 Define propagation and (partial) overriding of annotations

2.     ODATA-817 Add client-side function odata.matchesRegularExpression

                                vi.    OData CSDL

1.     ODATA-618 Allow using term names in positions that allow type names

2.     ODATA-674 Specify navigation property binding combined with containment

3.     ODATA-879 Support Arrays of Arrays

4.     ODATA-929 Nullable facet should default to false for collection types, rather than being unspecified

5.     ODATA-935 Allow singletons to be members of an entity set

6.     ODATA-959 Allow path in an edm:key to also use a primitive property of a non null-able navigation property (recursively) of the entity type.

7.     ODATA-966 13.4 Add example for navigation property bindings for containment navigation property

                               vii.    OData JSON Format

1.     ODATA-557 Allow exponential notation for Edm.Decimal

2.     ODATA-868 Describe HTTP encoding for streamed requests and responses

                              viii.    Interfaces

1.     ODATA-619 Attach action and function signatures to terms, i.e. make a term definition an interface definition

                                ix.    Waiting for refined proposal

1.     ODATA-735 Enhance the CSDL for instance annotations

2.     ODATA-760 Add to depth restrictions to Capabilities Vocabulary

3.     ODATA-884 Add term ErrorCodes to describe possible codes in error messages (public comment c201510e00019)

4.     ODATA-919 Specify the result type for each operation based on operator types

5.     ODATA-923 $expand (or $include) for $metadata to include referenced schemas

6.     ODATA-950 Clarify what requests can be delta enabled

7.     ODATA-964 Need to clarify nested delta representation

 

6.        Next meeting [9:50am PT]

a.     Thursday September 08, 2016 during 8-10am PT?

 

7.        AOB and wrap up [9:55am PT]

 

[2] References

·         Conference call details: https://www.oasis-open.org/apps/org/workgroup/odata/download.php/56760/TC%20meeting%20dial-in%20details.htm

·         Chat room: http://webconf.soaphub.org/conf/room/odatatc

 

[3] Timeline

·         https://www.oasis-open.org/committees/document.php?document_id=56024&wg_abbrev=odata

 

 

 



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