OData meeting in Zürich, Switzerland #23 F2F, Wednesday, 30 Jan 2013, 0900 - 1800 CET and Thursday, 31 Jan 2013, 0900 - 1800 CET

Note: For explanations of conventions and other formal aspects common to OData TC meeting minutes which are used in this document please cf. “Formal Aspects of Meeting Minutes”.

Day One

Meeting chaired by Barbara Hartel and Ram Jeyaraman

Acting Chair: Barbara Hartel

1 Roll call

1.1 Members Present:

    Andrew Eisenberg (IBM)
    Barbara Hartel (SAP AG)
    Dale Moberg (Axway Software)
    Diane Downie (Citrix Systems)
    Erik de Voogd (SDL)
    Gerald Krause (SAP AG)
    Graham Moore (BrightstarDB Ltd.)
    Hubert Heijkers (IBM)
    John Willson (Individual)
    Martin Zurmuehl (SAP AG)
    Matthew Borges (SAP AG) a.k.a. Matt
    Michael Pizzo (Microsoft) a.k.a. Mike
    Nuno Linhares (SDL)
    Ralf Handl (SAP AG)
    Ram Jeyaraman (Microsoft)
    Robert Richards (Mashery)
    Stefan Drees (Individual)
    Susan Malaika (IBM)
    Ted Jones (Red Hat) 

Quorum achieved. Details cf. normative attendance sheet for this meeting.

2 Approval of Minutes from Previous Meeting(s)

2.1 Approval of Minutes of 2013–01–24 Meeting#22:

Meeting minutes approved with no objections.

3 Approval of Agenda

Review and make necessary adjustments to the draft agenda based on progress made on issues and proposals.

Discussion:

Agenda for Day One approved as published with the above amendements.

4 Review of Action Items (AI) and Progress

List of ongoing actions before the meeting

Retrieval time stamp: 2013-01-29 21:05 +01:00.

AI#0005
“Come up with a first milestine for the temporal extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–01–31)
AI#0006
“Come up with estimate for first milestone for XML data extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–01–31)
AI#0007
“Come up with estimate for first milestone for JSON data extension” [owner: Susan Malaika] is Ongoing (Note: Due 2013–01–31)
AI#0018
“Prepare Working Draft 01 (WD01) version of OData Extension for Temporal Data” [owner: Andrew Eisenberg] is Ongoing
AI#0019
“Prepare Working Draft 01 (WD01) version of OData Extension for XML Data” [owner: Andrew Eisenberg] is Ongoing
AI#0020
“Prepare Working Draft 01 (WD01) version of OData Extension for JSON Data” [owner: Susan Malaika] is Ongoing

4.1 Action items due by 2013–01–31 (end of day)

4.1.1 AI#0005

AI#0005
“Come up with a first milestine for the temporal extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–01–31)

Discussion:

AI#0005
“Come up with a first milestine for the temporal extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–04–26)

4.1.2 AI#0006

AI#0006
“Come up with estimate for first milestone for XML data extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–01–31)

Discussion:

AI#0006
“Come up with estimate for first milestone for XML data extension” [owner: Andrew Eisenberg] is Ongoing (Note: Due 2013–04–26)

4.1.3 AI#0007

AI#0007
“Come up with estimate for first milestone for JSON data extension” [owner: Susan Malaika] is Ongoing (Note: Due 2013–01–31)

Discussion:

AI#0007
“Come up with estimate for first milestone for JSON data extension” [owner: Susan Malaika] is Ongoing (Note: Due 2013–04–26)

5 OData JSON Format Work Product

5.1 Review and accept the latest draft.

Context:

Mike has provided the latest draft for review on Jan 25, 2013: OData JSON Format Version 1.0 Working Draft 01

Discussion:

Update: Issue ODATA–221 has been created with summary “Flatten the message elemtn in the JSON Error Represention (Section 4.18 Representing Errors in a Response)” [OData JSON Format] is New.

Hubert:

I move to accept the new JSON format document as presented. Stefan seconds.

No further discussion. No objections. The motion passes.

6 Progress Issues

6.1 OData JSON Format

Ralf:

I move to accept ODATA–90 and ODATA–91 as applied. Hubert seconds.

No further discussion. No objections. The motion passes.

6.1.1 ODATA–91

ODATA–91
“2.1: explicitly state which format the server will return in response to each given set of headers” [component: OData JSON Format] is Applied.

Note:

Issue state has been progressed by grouping motion (cf. section [6.1])

ODATA–91
“2.1: explicitly state which format the server will return in response to each given set of headers” [component: OData JSON Format] is Closed as noted in the motion in section 6.1 with no objections.

6.1.2 ODATA–90

ODATA–90
“Section 2.1: define suffix ‘;odata=xxx’ for application/json and the possible values for xxx” [component: OData JSON Format] is Applied.

Note:

Issue state has been progressed by grouping motion (cf. section [6.1])

ODATA–90
“Section 2.1: define suffix ‘;odata=xxx’ for application/json and the possible values for xxx” [component: OData JSON Format] is Closed as noted in the motion in section 6.1 with no objections.

6.1.3 ODATA–93

ODATA–93
“3.4: add introductory paragraph” [component: OData JSON Format] is Applied.

Ralf:

I move to close ODATA–93 as applied. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–93
“3.4: add introductory paragraph” [component: OData JSON Format] is Closed with no objections.

6.1.4 ODATA–99

ODATA–99
“3.9 Advertisement for a Function or Action: add example and refer to ABNF rules” [component: OData JSON Format] is Applied.

Ralf:

I move to close ODATA–99 as applied. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–99
“3.9 Advertisement for a Function or Action: add example and refer to ABNF rules” [component: OData JSON Format] is Closed with no objections.

6.1.5 ODATA–105

ODATA–105
“Support instance annotations on errors in JSON” [component: OData JSON Format] is Applied.

Ralf:

I move to close ODATA–105 as applied. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–105
“Support instance annotations on errors in JSON” [component: OData JSON Format] is Closed with no objections.

6.1.6 ODATA–100

ODATA–100
“5.1 Response Body: explain security reasons leading to the object wrapper” [component: OData JSON Format] is Applied.

Stefan:

I move to close ODATA–100 since we always use objects. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–100
“5.1 Response Body: explain security reasons leading to the object wrapper” [component: OData JSON Format] is Closed with no objections.

6.2 OData JSON Format, OData Atom Format

6.2.1 ODATA–169

ODATA–169
“Representation of named entities in the service document” [components: OData JSON Format, OData ATOM Format] is Applied with no objections.

Ralf:

I move to close ODATA–169 as applied. Hubert seconds.

Discussion of motion:

Mike:

I move to amend motion to leave the issue open and note that it’s been resolved in json but needs to be resolved in atom.d. Hubert seconds.

No further discussion. No objections. The amendment passes.

No further discussion. No objections. The motion passes as amended.

ODATA–169
“Representation of named entities in the service document” [components: OData JSON Format, OData ATOM Format] is Open with no objections.

6.3 OData ABNF Construction Rules, OData ATOM Format, OData JSON Format, OData Protocol

6.3.1 ODATA–96

ODATA–96
“Need to define semantics, serialization format, etc. for Enums” [components: OData ABNF Construction Rules, OData ATOM Format, OData JSON Format, OData Protocol] is Resolved.

State is now Resolved

Discussion:

ODATA–96
“Need to define semantics, serialization format, etc. for Enums” [components: OData ABNF Construction Rules, OData ATOM Format, OData JSON Format, OData Protocol] is Resolved with no objections.

6.4 OData ABNF Construction Rules, OData Protocol, OData URL Conventions

6.4.1 ODATA–139

ODATA–139
“New system query option $search for free-text search within an entity set” [components: OData ABNF Construction Rules, OData Protocol, OData URL Conventions] is New.

Discussion

Ralf:

I move to resolve ODATA–139 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–139
“New system query option $search for free-text search within an entity set” [components: OData ABNF Construction Rules, OData Protocol, OData URL Conventions] is Resolved with no objections.

Update: Issue ODATA–222 has been created with summary “free-text search within a property” [OData URL Conventions] is New.

Update: Issue ODATA–223 has been created with summary “Specify Service behavior for not implemented functionality” [Unknown] is New.

6.4.2 ODATA–3

ODATA–3
“Use CQL standard for query instead of odata-specific filter query protocol” [component: OData Protocol] is New.

Ralf:

I move to close ODATA–3 without action. Mike seconds.

No further discussion. No objections. The motion passes.

ODATA–3
“Use CQL standard for query instead of odata-specific filter query protocol” [component: OData Protocol] is Closed with no objections.

6.5 Issues belonging to Annotations and References

Context:

Ralf has provided a discussion paper for review on Jan 25, 2013: CSDL References

Discussion:

Update: Issue ODATA–224 has been created with summary “Fill out Capabilities sections of an OData Service” [component: OData Protocol] is New.

Update: Issue ODATA–225 has been created with summary “Define Functions in Schema; reference in Container using FunctionImport.” [component: OData CSDL] is New.

Update: Issue ODATA–226 has been created with summary “Clarify that the root of the Path attribute of a element is rooted at the containing entity” [component: OData CSDL] is New.

Note:

Issues in this section 6.5 have partly been progressed out of sequence, but have been noted here to better group by components impacted as a service for the reader.

6.5.1 OData CSDL

6.5.1.1 ODATA–195
ODATA–195
“Simplify entity set qualification rules for NavigationPropertyBinding” [component: OData CSDL] is Open.

Ralf:

I move to resolve ODATA–195 as proposed. Mike seconds.

No further discussion. No objections. The motion passes.

ODATA–195
“Simplify entity set qualification rules for NavigationPropertyBinding” [component: OData CSDL] is Resolved with no objections.
6.5.1.2 ODATA–193
ODATA–193
“Allow function imports to return entities from a different service” [component: OData CSDL] is Open.

Ralf:

I move to resolve ODATA–193 as resolved. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–193
“Allow function imports to return entities from a different service” [component: OData CSDL] is Resolved with no objections.
6.5.1.3 ODATA–182
ODATA–182
“Define the term ‘model’” [component: OData CSDL] is New.

Ralf:

I move to resolve ODATA–182 as propsed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–182
“Define the term ‘model’” [component: OData CSDL] is Resolved with no objections.

6.5.1.4 ODATA–181

ODATA–181
“Referencing/reusing a model element from a different schema does not require to ‘include’” [component: OData CSDL] is Open.

Ralf:

I move to resolve ODATA–181 by defining the meaning of Reference and Using as proposed in the updated document “CSDL References” presented today. Stefan seconds.

ODATA–181
“Referencing/reusing a model element from a different schema does not require to ‘include’” [component: OData CSDL] is Resolved as noted in the motion with no objections.
6.5.1.5 ODATA–180
ODATA–180
“Remove Extends attribute from EntityContainer element” [component: OData CSDL] is Open.

Ralf:

I move to resolve ODATA–180 by clarifying the meaning of “Extends” as described in “CSDL References” presented today. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–180
“Remove Extends attribute from EntityContainer element” [component: OData CSDL] is Resolved as noted in the motion with no objections.
6.5.1.6 ODATA–205
ODATA–205
“Merge TypeAnnotation and ValueAnnotation into Annotation” [component: OData CSDL] is New.

Discussion:

Ralf:

I move to resolve ODATA–205 as proposed. Martin seconds.

No further discussion. No objections. The motion passes.

ODATA–205
“Merge TypeAnnotation and ValueAnnotation into Annotation” [component: OData CSDL] is Resolved with no objections.
6.5.1.7 ODATA–213
ODATA–213
“Allow all dynamic expressions of the appropriate type within edm:Collection expressions” [component: OData CSDL] is New.

Ralf:

I move to resolve ODATA–213 as propsed. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–213
“Allow all dynamic expressions of the appropriate type within edm:Collection expressions” [component: OData CSDL] is Resolved with no objections.
6.5.1.8 ODATA–225
ODATA–225
“Define Functions in Schema; reference in Container using FunctionImport.” [component: OData CSDL] is New.

Ralf:

I move to resolve ODATA–225 as propsed. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–225
“Define Functions in Schema; reference in Container using FunctionImport.” [component: OData CSDL] is Resolved with no objections.
6.5.1.9 ODATA–226
ODATA–226
“Clarify that the root of the Path attribute of a element is rooted at the containing entity” [component: OData CSDL] is New.

Ralf:

I move to resolve ODATA–226 as propsed. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–226
“Clarify that the root of the Path attribute of a element is rooted at the containing entity” [component: OData CSDL] is Resolved with no objections.
6.5.1.10 ODATA–109
ODATA–109
“Define rules for specifying annotations within annotations” [component: OData CSDL] is New.

Ralf:

I move to resolve ODATA–109 as proposed. Mike seconds.

No further discussion. No objections. The motion passes.

ODATA–109
“Define rules for specifying annotations within annotations” [component: OData CSDL] is Resolved with no objections.
6.5.1.11 ODATA–108
ODATA–108
“Define rules for the target of an annotation that supports implicit casting of relationships” [component: OData CSDL] is New.

Discussion:

Ralf:

I move to resolve ODATA–108 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–108
“Define rules for the target of an annotation that supports implicit casting of relationships” [component: OData CSDL] is Resolved with no objections.
6.5.1.12 ODATA–16
ODATA–16
“Define an Edm.AnyType to allow functions to apply to entity sets of any entity type” [component: OData CSDL] is New.

Discussion:

Ralf:

I move to resolve ODATA–16 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–16
“Define an Edm.AnyType to allow functions to apply to entity sets of any entity type” [component: OData CSDL] is Resolved with no objections.
6.5.1.13 ODATA–198
ODATA–198
“Allow Type=’Any’ and Type=’Collection(Any)’ for NavigationProperty elements” [component: OData CSDL] is New.

Ralf:

I move to close ODATA–198 without further action because it is covered by ODATA–16. Mike seconds.

No further discussion. No objections. The motion passes.

ODATA–198
“Allow Type=’Any’ and Type=’Collection(Any)’ for NavigationProperty elements” [component: OData CSDL] is Closed with no objections.
6.5.1.14 ODATA–12
ODATA–12
“create a data type for property names” [component: OData CSDL] is New.

Discussion:

Ralf:

I move to resolve ODATA–12 as proposed. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–12
“create a data type for property names” [component: OData CSDL] is Resolved with no objections.

Update: Issue ODATA–227 has been created with summary “Support of symbolic names in annotations” [component: OData CSDL] is New.

6.5.1.15 ODATA–197
ODATA–197
“Define standard functions for edm:Apply element” [component: OData CSDL] is New.

Discussion:

Mike:

I move we define the concat function as defined in ODATA–197. Ralf seconds.

No further discussion. No objections. The motion passes.

ODATA–197
“Define standard functions for edm:Apply element” [component: OData CSDL] is Resolved with no objections.

6.5.2 OData ABNF Construction Rules, OData URL Conventions

6.5.2.1 ODATA–172
ODATA–172
“EntitySet may be qualified with namespace or alias and EntityContainer” [component: OData CSDL] is Applied.

Ralf:

I move to close ODATA–172 as applied. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–172
“EntitySet may be qualified with namespace or alias and EntityContainer” [component: OData CSDL] is Closed with no objections.

6.5.3 OData Protocol, OData URL Conventions

6.5.3.1 ODATA–33
ODATA–33
“Allow $filter and $select to refer to annotations as if they were properties” [component: OData CSDL] is New.

Ralf:

I move to close ODATA–33 without action. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–33
“Allow $filter and $select to refer to annotations as if they were properties” [component: OData CSDL] is Closed with no objections.

6.5.4 OData Protocol

6.5.4.1 ODATA–25
ODATA–25
“Support Obtaining Changes (Deltas) from a result.” [component: OData CSDL] is New.

Mike:

I move we resolve OData–25 as proposed in the attached document “OData Delta Queries”. Stefan seconds.

No further discussion. No objections. The motion passes.

ODATA–25
“Support Obtaining Changes (Deltas) from a result.” [component: OData CSDL] is Resolved as noted in the motion with no objections.

7 OData Delta Queries and Flattened Result Set

7.1 Review design of Delta Queries

Context:

Mike has provided the latest draft for review on Jan 24, 2013: “OData Delta Queries

Discussion:

Note:

Issue state has been progressed by motion (cf. section [6.5.4.1]) accordingly.

7.2 Review design of Flattened Result Set

Context:

Mike has provided the latest draft for review on 2013–01–26 “Flattened Results in OData

Discussion:

Update: The document has been split as a result of the discussion. The current revision of the separated part “Entity References in OData” has been uploaded by Mike during meeting day two.

Note: For progress documentation of the relevant issue ODATA–199 cf. section 11.6.1.

8 OData Extension for XML Data

8.1 Discuss proposal

Context:

Andrew has provided a discussion paper/proposal for review on Jan 29, 2013: “OData Extension for XML Data

Discussion:

9 AOB

None.

Wednesday’s Meeting adjourned on 1802 CET

Day Two

Meeting day chaired by Barabara Hartel and Ram Jeyaraman

Acting chair: Ram Jeyaraman

Meeting Details cf. event page for this meeting day.

10 Approval of Agenda for Day Two

Discussion:

Agenda for Day Two approved as published with the above amendements.

11 Process Issues (Part 2)

Note:

Issues in section 11 have partly been progressed out of sequence, but have been noted here to better group by components impacted as a service for the reader.

11.1 Public Comments

11.1.1 c201301e00001

Context:

We received the public Comment #20130100001 on 2013–01–30 with title “Query String parsing in URIs”

Discussion:

Update: Issue ODATA–232 has been created with summary “Enhance description of normalization procedures (public comment c201301e00001)” [component: OData ABNF Conrstruction Rules] is New.

11.2 OData ABNF Construction Rules, OData CSDL, OData Protocol

11.2.1 ODATA–230

ODATA–230
“Support use of parameter aliases in $filter and $orderby” [components: OData ABNF Construction Rules, OData CSDL, OData Protocol] is New.

Mike:

I move we resolve OData–230 as proposed by making @param a valid common expression that can be used throughout the URL syntax and the parameter value must be a primitive value, complex value, or collection value. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–230
“Support use of parameter aliases in $filter and $orderby” [components: OData ABNF Construction Rules, OData CSDL, OData Protocol] is Resolved with no objections.

11.3 OData CSDL

11.3.1 ODATA–231

ODATA–231
“Define how to specify enumeration values in annotations” [component: OData CSDL] is New.

Mike:

I move we resolve ODATA–231 as proposed by adding an “EnumMember” attribute to the element and an child element for PropertyValue. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–231
“Define how to specify enumeration values in annotations” [component: OData CSDL] is Resolved with no objections.

11.3.2 ODATA–229

ODATA–229
“Allow annotations to target all model elements” [component: OData CSDL] is New.

Discussion:

Ralf:

I move to resolve ODATA–229 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–229
“Allow annotations to target all model elements” [component: OData CSDL] is Resolved with no objections.

11.4 OData Protocol

11.4.1 ODATA–31

ODATA–31
“Section 9.1.3: Describe call choreography for 202 Accepted (Async responses)” [component: OData Protocol] is New.

Cf. section 14.1 for discussion details including a link to the slides presented (format PPT).

Stefan:

I move to resolve ODATA–31 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–31
“Section 9.1.3: Describe call choreography for 202 Accepted (Async responses)” [component: OData Protocol] is Resolved with no objections.

11.4.2 ODATA–233

ODATA–233
“Change $batch response code from 202 Accepted to 200 OK” [component: OData Protocol] is New.

Discussion:

Stefan:

I move to resolve ODATA–233 as proposed. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–233
“Change $batch response code from 202 Accepted to 200 OK” [component: OData Protocol] Resolved with no objections.

11.5 OData CSDL, OData Protocol, OData URL Conventions

11.5.1 ODATA–126

Context:

Ralf has provided a draft of the ER model in format PNG - added to the issue’s proposal in November and after the Face to Face meeting) for a such a potential metadata service. The current svn-revision 169 has been slightly modified on 2013–01–25.

ODATA–126
“Metadata as an OData service” [components: OData CSDL, OData Protocol, OData URL Conventions] is New.

Discussion:

ODATA–126
“Metadata as an OData service” [components: OData CSDL, OData Protocol, OData URL Conventions] is Open with no objections.

11.6 OData ATOM Format, OData JSON Format

11.6.1 ODATA–199

ODATA–199
“$expand should be allowed to return only ids for already seen objects” [components: OData ATOM Format, OData JSON Format] is New.

Discussion:

Mike:

I move we resolve ODATA–199 as proposed, with a preference of odata.allow-references. Hubert seconds.

No further discussion. No objections. The motion passes.

ODATA–199
“$expand should be allowed to return only ids for already seen objects” [components: OData ATOM Format, OData JSON Format] is Resolved as noted in the motion with no objections.

Update: Mike uploaded the related current revision of: Entity References in OData

11.7 OData Extension for Data Aggregation

11.7.1 ODATA–164

ODATA–164
“$expand should be allowed to return only ids for already seen objects” [component: OData Extension for Data Aggregation] is New.
ODATA–164
“$expand should be allowed to return only ids for already seen objects” [component: OData Extension for Data Aggregation] is Open with no objections.

12 OData Extension for Temporal Data

12.1 Discuss proposal

Context:

Latest revision from 2012–07–27 “OData Extension for Temporal Data

Discussion:

13 Timeline review [TL_REF]

Discussion of our progress so far and the next steps.

Suggestions for classification of issues, w.r.t. core progression:

Wrap-Up:

Update:

A new action item has been created:

AI#0028
“Introduce fix target versions 4.0, minor and next major into JIRA” [owner: Ram Jeyaraman] is Ongoing (Note: Due 2013–02–07)

14 Async discussion

14.1 Discuss proposal

Context:

For background information cf. section 11.2 “Async” in the minutes of previous F2F meeting in Boston.

Discussion:

Update: Issue ODATA–233 has been created with summary “Change $batch response code from 202 Accepted to 200 OK” [component: OData Protocol] is New.

15 OData Extension for Data Aggregation Work Product

15.1 Review and accept the latest draft.

Context:

OData Extension for Data Aggregation Version 1.0 Working Draft 01

Discussion:

16 Core Vocabulary

Context:

In SVN there is a first draft of the core vocabulary

Discussion:

17 Next Meeting

Note: Due to resource issues the members agree to meet again by call on 2013–02–07.

18 AOB

None.

Face to Face Meeting adjourned on 1705 CET

Appendices

Timeline Reference

Draft timeline for OData core Work Products:

Draft timeline for extension Work Products: