[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 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]