OData TC meeting #129 Thursday Apr 21, 2016

Acting chair: Ralf

Chat transcript from room: odatatc
2016-04-21 0800-1000 PDT

1. Roll call

1.1 Members present

        Gerald Krause (SAP SE)
        Hubert Heijkers (IBM)
        Ken Baclawski (Northeastern University)
        Mark Biamonte (Progress Software)
        Martin Zurmuehl (SAP SE)
        Michael Pizzo (Microsoft) a.k.a. Mike
        Ralf Handl (SAP SE)
        Ramesh Reddy (Red Hat)
        Stefan Hagen (Individual)
        Susan Malaika (IBM)
        Ted Jones (Red Hat)

Regrets from Ram.

Quorum achieved. Details cf. normative attendance sheet for this meeting (event_id=41459).

Notes taken by all and subsequently edited for readability by Stefan.

2. Approve agenda

Agenda item 5 will be deferred as Martin cannot attend today. Updated Agenda approved as published.

3. Approve minutes from previous meeting(s)

3.1 Minutes from April 14, 2016 TC meeting #128

https://www.oasis-open.org/committees/download.php/57959/odata-meeting-128_on-20160414-minutes.html

Minutes approved unchanged as published

4. Review action items

Postponed as Ram also cannot join today

4.1 Action items due May 19, 2016

4.1.1 AI#0032 - "Overview presentation on HTTP/2 features"

Ongoing. AI#0032 still OPEN.

4.2 Action items due March 31, 2016

4.2.1 AI#0035 - "Identify the right open source license for the OASIS Open Source repositories for vocabularies and libraries"

Ongoing. AI#0035 still OPEN.

5. Review of HTTP/2 features by Martin Zurmuehl

Postponed.

6. V4.0 Errata 3

6.1 ODATA-932 - Typo in example 44: missing T in duration literal

Ralf:

 
<Annotation Term="org.example.task.duration"> 
  <Duration>P11DT23H59M59.999999999999S</Duration> 
</Annotation>

Ralf: ODATA-932 is OPEN

Hubert: I move to resolve ODATA-932 as proposed. Mark seconds.

ODATA-932 is RESOLVED as proposed

7. V4.01 issues - Issues for V4.01_WD01 in New or Open state

7.1 OData protocol

7.1.1 ODATA-920 - Specify overflow for int data types

Ralf: Java INT roll over from MAXINT to MININT without error message

Ralf: Postpone until we have more insight into behavior of mainstream programming languages

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

Ralf: Postpone until we have more insight into behavior of mainstream programming languages

7.1.3 ODATA-918 - Add operator "divideby" that always results in a decimal.

Ralf: ODATA-918 is OPEN

Ralf: Add operator "divideby" that does mathematical division and always results in a decimal (as if both operands were promoted to decimal).

Ralf: a divideby b is identical to cast(a,Edm.Decimal) div cast(b,Edm.Decimal)

Ralf: Services that support div and cast SHOULD also support divideby

Ralf: Services MAY advertise it with Capabilities.FilterFunctions

Ralf: Alternative shorter names:

Ralf: divby

Ralf: div2

Ralf: ddiv for decimal div

Ramesh: divd

Ralf: divby is the agreed name

Ralf: ODATA-918 is OPEN

Ralf: Amended proposal:
Add operator "divby" that does mathematical division and always results in a decimal (as if both operands were promoted to decimal).
a divbyb is identical to cast(a,Edm.Decimal) div cast(b,Edm.Decimal)
Services that support div and cast SHOULD also support divby
Services MAY advertise it with Capabilities.FilterFunctions

Hubert: I move to resolve ODATA-918 as per the amended proposal. Mark seconds.

Ralf: ODATA-918 is RESOLVED as proposed

7.1.4 ODATA-921 - Specify operations for keyless nav props

Ralf: ODATA-921 is already RESOLVED - remove from agenda

7.1.5 ODATA-925 - Add a Core term for a service/schema/model version.

Ralf:

<Term Name="SchemaVersion" Type="String" AppliesTo="Schema"> 
  <Annotation Term="Core.Description" String="Version of the schema (not to be confused with the protocol version)" /> 
</Term>

Ralf: Is already RESOLVED

7.1.6 ODATA-928 - Allow client to use OData-SchemaVersion header to indicate the metadata version it is using

Ralf: Client can set an OData-SchemaVersion header in requests.

Server may (these are example possibilities, possibilities, not requirements) use this information in a number of ways:
(1) Refuse requests from the client if the server's metadata version is now incompatible with the version the client has indicated it is using.
(2) Include extra metadata in responses, e.g. "@odata.type" for properties which weren't in the client's versin of the metadata, but now exist in the server's version (e.g. this allows the client to correctly treat those properties as dynamic, while knowing their proper type).

Ralf: ODATA-928 is OPEN

Mike volunteers to flesh out proposal

Ralf: Ideas: allow incompatible changes at same service root

Ralf: Allow clients to request a specific schema version

7.1.7 ODATA-812 - Allow omitting namespaces for unambiguous functions/actions

Ralf: Reconsider choice of annotation versus XML element/attribute: clients have to change their interpretation of JSON payloads depending on this flag anyway.

Ralf: Going with an annotation allows keeping the XML schema stable

Ralf: Check with mainstream clients whether they specify odata-maxversion:4.0

Ralf: Mike to check .NET clients

Ralf: Ralf to check Olingo clients

7.2 Simplified Payload

7.1.7 ODATA-818 - Omit properties whose value is null or the $metadata-defined default value

Ramesh: default value being payload or not I see as completely different issue

Hubert: make this a preference

Ralf: Prefer: omit-default-values

Ralf: Prefer: omit-null-values

Ralf: Proposal: specify preferences odata.omit-default-values and odata.omit-null-values to indicate that the client is able to fill in the blanks. odata.omit-default-values implies odata.omit-null-values

7. Next meeting

7.1 Next Meeting Thursday April 28, 2016 0800-1000 PDT

Agreed

8. AOB and wrap up

None.

Meeting adjourned by chair.