OData TC meeting #201 Thursday February 01, 2018

Acting chair: Ralf

Chat transcript from room: odatatc
2018-02-01 0800-1000 PST

1. Roll call

1.1 Members present

    George Ericson (Dell)
    Gerald Kraue (SAP SE)
    Hubert Heijkers (IBM)
    Mark Biamonte (Progress Software)
    Martin Zurmuehl (SAP SE)
    Matthew Borges (SAP SE) a.k.a. Matt
    Michael Pizzo (Microsoft) a.k.a. Mike
    Ralf Handl (SAP SE)
    Ramesh Reddy (Red Hat)
    Stefan Hagen (Individual)
    Ted Jones (Red Hat)

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

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

2. Approve agenda

Hubert: Proposal for a compact JSON format

Agenda approved with above changes

3. Approve minutes from previous meeting(s)

3.1 Minutes from January 25, 2018 TC meeting #200


Minutes approved unchanged as published.

4. Review action items [Link to Action item list]

4.1 Action items due


5. Ballot to approve V4.01 CS01 Specs

URL: https://www.oasis-open.org/apps/org/workgroup/odata/ballot.php?id=3170

Ralf: Closed, 11 yea votes for each of the four specifications, no nay votes, no abstain votes

Ralf: CS01 documents will be produced and published by TC Admin

6. Hubert and Compact JSON

Hubert walks all through the concept document

Mike and Hubert: introduce new value for odata.metadata=compact to avoid yet another format parameter and side-effects between format parameters

Mike: don't rely on order of properties in $metadata (not possible with CSDL JSON), instead have the context URL list all returned properties in the order they are filled into the arrays

George: Looks similar to protobuf

Mike: always use an array with an object at position 0 that contains the annotations

Ralf: could also do that on the outermost level, no wrapper object with "value" any more

Hubert: I move to request a starter document to start a new specification for the OData Compact JSON Format. Ralf seconds.

Ralf: No objections, motion passes

7. Committee Note on Google Protocol Buffers as an alternative data format

a.George: describe use case and purpose of the proposed committee note
i.Pro: PB is more efficient between services.
ii.Pro: PB has traction in the community
iii.Con: PB is not as expressive
iv.Con: JSON better for communication between servers.


v.Pro: no conversion of floating-point numbers to strings and back

George: PB more useful in server-to-server communication


vi.Pro: PB has code generation tools for lots of programming language

Hubert: need variable-length arrays, weren't possible in PB in the past

Mike: create an informal concept document first before we request a starter document

Hubert volunteers to be main/coordinating author of the ProtoBuf concept document

Ralf to create action item for Hubert

8. Structural Property with Type=Entity Type versus Containment Navigation Property

a.George: describe use case and why containment navigation properties arent sufficient
i.Sometimes want to store the values of an entities properties, for example storing representations of entities in a log message.
In that case, dont want the behavior features of the entity and no relationship, just a snapshot of the structural values.

George: can't have a relationship to the "snapshot instance" as it doesn't have an identity

George: also want Collection(entity type) as a type of a structural property

Ralf: Basically treat the entity type as if it were a complex type if used in a structural property

Mike: interesting step to reduce the differences between Entity Types and Complex Types

Hubert likes it

George will create a Jira issue

9. Issues

Ralf: Will skip due to lack of time

George updated ODATA-1064 - Add ability to annotate collections to return only count and NextLink

Ralf updated ODATA-1121 - Extend FilterExpressionRestrictions with "MultiPredicate"

10. Next meetings


Thursday February 08, 2018 during 8-10 am PST (17:00-19:00 CET) (already confirmed)
Thursday February 15, 2018 during 8-10 am PST

11. AOB and wrap up


Meeting adjourned by chair.