Call for Participation: OData Technical Committee
OASIS members & interested parties,
A new OASIS technical committee is being formed. The OASIS Open Data Protocol (OData) Technical Committee has been proposed by the members of OASIS listed in the charter below. The TC name, statement of purpose, scope, list of deliverables, audience, IPR mode and language specified in the proposal will constitute the TC's official charter. Submissions of technology for consideration by the TC, and the beginning of technical discussions, may occur no sooner than the TC's first meeting.
The first meeting of the Technical Committee will be a face-to-face meeting to be held in Redmond, Washington on July 26-27, 2012 from 9 AM PT to 5 PM PT. This meeting will be sponsored by Microsoft. Dial-in conference calling bridge numbers will be available for those unable to attend in person.
The eligibility requirements for becoming a participant in the TC at the first meeting are:
(a) you must be an employee of an OASIS member organization or an individual member of OASIS, and
(b) you must join the Technical Committee, which members may do by using the "Join this TC" button on the TC's home page at [a].
To be considered a voting member at the first meeting, you must:
(a) join the Technical Committee at least 7 days prior to the first meeting (on or before 19 July); and
(b) you must attend the first meeting of the TC, at the time and date fixed below.
Participants also may join the TC at a later time. OASIS and the TC welcomes all interested parties.
Non-OASIS members who wish to participate may contact us about joining OASIS [b]. In addition, the public may access the information resources maintained for each TC: a mail list archive, document repository and public comments facility, which will be linked from the TC's public home page.
Please feel free to forward this announcement to any other appropriate lists. OASIS is an open standards organization and we encourage participation in Technical Committee work by all interested parties.
[b] See http://www.oasis-open.org/join/
(1) Charter for OASIS Open Data Protocol (OData) Technical Committee
(1) (a) Name of the TC
OASIS Open Data Protocol (OData) Technical Committee (TC)
(1) (b) Statement of Purpose
The purpose of the Open Data Protocol (OData) Technical Committee (TC) is to define an open data protocol for sharing data and exposing data models interoperably on the Web.
The work will focus on enabling:
- The creation of REST-ful HTTP-based data services, allowing resources identified using Uniform Resource Identifiers (URIs) and defined in an abstract data model, to be published and edited by Web clients using simple HTTP messages.
- Exposure and access of information from a variety of sources including, but not limited to, relational databases, file systems, content management systems, and traditional Web sites.
(1) (c) Scope of Work
The TC will accept as input the following OData V3 core specifications published on 27 April 2012:
- OData URL Conventions
- ABNF for OData
- OData Common Schema Definition Language (CSDL)
- OData ATOM Format
- OData Verbose JSON Format
- Open Data Protocol (OData) Batch Processing
And the following OData V3 extension contributions dated 18 May 2012 (see below for links):
- OData Extension for Data Aggregation
- OData Extension for Temporal Data
- OData Extension for XML Data
- OData Extension for JSON Data
The TC will refine these initial contributions to produce OASIS standard specifications, including necessary supporting documentation.
Other contributions will be accepted for consideration without any prejudice or restrictions and evaluated based on technical merit in so far as they conform to this charter.
The scope of the TC's work is limited to technical refinements to the features defined in the input contributions and the following features and capabilities.
The features in scope for the TC have been divided into the following categories:
4. Patterns and Guidance
The TC will focus on delivering the core functionality first, followed by extensions (including any necessary changes to core), followed by patterns and guidance and additional considerations, not precluding parallel work.
Description of a Data-Oriented Service:
- Description of the underlying entity model comprising:
- Types of entities that may be returned from the service
- Properties of entities that may be Simple types, Complex Types, Collections, Spatial types, Enumerations, Stream or navigation properties
- Open entity types whose instances may expose properties not defined in metadata
- Relationships between entities that may be returned from the service
- Sets of entities that may be enumerated, queried, or inserted into
- Nesting of sets of entities within other sets (containment scenarios)
- Functions and Actions exposed by the service
- Containers of sets, functions and actions exposed by the service
- Additional annotations, such as visualization hints and updatability, which may be applied to metadata elements as well as individual data entries
- Binding of a particular ontology provided by shared vocabularies to an entity or property description or instance
- An addressing scheme for addressing metadata elements as required
Interaction Semantics (request types and associated responses) for a REST-ful Data-Oriented Service:
- Hypermedia-driven mechanisms for enumerating, navigating, and updating resources exposed by the service
- Mechanisms to:
- Retrieve entity sets, entries, service documents, individual properties, links between entities, and metadata and service documents
- Navigate through responses split across multiple pages
- Create new entries, media link entries
- Update entries, individual properties
- Delete entries
- Create, remove, and replace links between entries
- Invoke operations (functions and actions) on resources in the service
- Retrieve changes (deltas) from a result, including tombstones for deleted or removed entries
- Batch a group of requests to send to an OData service in a single request
- Conventions for constructing URIs to obtain metadata, identify, query, and navigate resources exposed by an OData service
- Conventions for querying resources exposed by the data-oriented service, including:
- Select, Filter, OrderBy, Expand, Count, Top, Skip
- Built-in String, Math, and Date functions
- Custom functions
- Any/All operations on collections
- Filter by type, casting operators
The core OData protocol shall be designed to support multiple formats. The TC will focus on specific representations for Data-Oriented Service request / response payloads in the following formats:
- Versioning mechanism for understanding rules for processing requests/responses
- Resiliency to future payload and URL convention extensions
- Extensibility points for describing (i.e., through metadata annotations), invoking (i.e., through headers or URI extensibility), and representing (i.e., through payload extensibility) custom behaviors and content
- Namespacing mechanism for vendor-specific extensions
- Capabilities such as queryability/sortability defined through additional metadata.
- Representation and semantics for aggregation of data supporting multidimensional modeling
- Annotate entity sets and /or entity types with annotations representing analytic concepts such as dimensions, hierarchies, measures and key performance indicators
- Define semantics and operations for querying aggregated data
- Define results format for queries containing aggregated data
- Representation and semantics for temporal data
- Annotate entity sets and/or entity types as representing temporal data with application time periods and/or system time periods
- Support querying temporal types as of a particular time or time range
- Support operations on, navigating between, and updating of temporal entities
- Retrieval and manipulation of properties representing XML documents in OData
- Identify properties that represent XML documents using annotations
- Define query and update operations over XML properties
- Retrieval and manipulation of properties representing JSON documents in OData
- Identify properties that represent JSON documents using annotations
- Define query and update operations over JSON properties
- Use of free text search across entities and entity sets and representation of results
4. Patterns and Guidance:
- Patterns and guidance for how to do repeatable requests using OData
- Guidance around data authorization model and secure authenticated access to an OData Service
- Guidance for using OData endpoints with cross-origin access (e.g. CORS)
- Prevention of Cross Site Request Forgery attacks (XSRF) when exposing OData endpoints
Out of Scope
The following is a non-exhaustive list provided only for the sake of clarity. If some function, mechanism or feature is not mentioned here, and it is not mentioned as in-scope in the Scope of Work section, then it will be deemed to be out of scope.
The following items are specifically out of scope of the work of the TC:
- Mapping to models, representations or protocols not scoped above
- Adding unnecessary complication to the protocol by extending beyond the scope described above or redefining mechanisms for authentication, encryption, security, cross-origin access, etc.
- State based protocol
Contributions to this TC which are out of scope for this charter may be accumulated and taken into consideration for potential development of a charter for another technical committee that may be created to address future extensions or modifications to OData.
(1) (d) List of Deliverables
The TC has the following set of deliverables:
- OASIS standards track OData core specification(s) to be completed by the TC within nine months after the initial TC meeting:
- OData Protocol
- OData Conceptual Schema Definition Language (CSDL)
- OData ABNF Construction Rules
- OData URL Conventions
- OASIS standards track OData format specifications to be completed by the TC within nine months after the initial TC meeting:
- A JSON representation for OData request / response payloads
- An AtomPub representation for OData request / response payloads
- A Batch processing format
- OASIS standards track OData extension specifications, to be completed by the TC within twelve months after the initial TC meeting:
- An OData extension defining the representation and semantics for aggregation of data supporting multidimensional modeling
- An OData extension defining representation and semantics of temporal data
- An OData extension defining retrieval and manipulation of properties representing XML documents in OData
- An OData extension defining retrieval and manipulation of properties representing JSON documents in OData
Optionally, such other non-standards track deliverables within the scope outlined above, such as tutorials, within twelve months after the initial TC meeting.
Once the TC has successfully produced the deliverables, the TC will enter into a maintenance mode. The purpose of the maintenance mode is to provide minor revisions to previously adopted deliverables, in order to clarify ambiguities, inconsistencies, and obvious errors. The maintenance mode will not functionally enhance a previously adopted deliverable, or extend its functionality.
(1) (e) IPR Mode
This TC will operate under the "RF (Royalty Free) on RAND" IPR mode as defined in the OASIS Intellectual Property Rights (IPR) Policy effective 15 October 2010.
(1) (f) Anticipated Audience
The anticipated audience for this work includes:
- Vendors and service providers offering products that produce data services.
- Vendors and application developers who consume data services.
- Software architects who design, write and deploy data producers and/or consumers.
- End users implementing solutions that require an interoperable solution for querying and updating data.
(1) (g) Language
TC business will be conducted in English. The output documents will be written in (US) English.
(2) Non-normative information regarding the startup of the TC
(2) (a) Similar or Applicable Work
OData adopts Representational State Transfer (REST) principles for exposing and consuming data from a data-oriented service over Hypertext Transfer Protocol (HTTP) based systems. It is based on, and extends, the Atom Publishing Protocol (AtomPub), and defines both ATOM and JSON based formats for representing data to/from the data-oriented service.
OData provides a vocabulary mechanism for defining common ontologies. Schema.org is oriented around defining common schemas for consumer oriented searchable items.
(2) (b) Date, Time, and Location of First Meeting
The first meeting of the OData TC will be a face-to-face meeting to be held in Redmond, Washington on July 26-27, 2012 from 9 AM PT to 5 PM PT. This meeting will be sponsored by Microsoft.
(2)(c) On-Going Meeting Plans & Sponsors
It is anticipated that the OData TC will meet via teleconference every week for 60 minutes at a time determined by the TC members during the TC's first meeting. It is anticipated that the OData TC will meet face-to-face every 2-3 months at a time and location to be determined by the TC members. The actual pace of face-to-face and teleconference meetings will be determined by TC members. One of the proposers, as listed below, will sponsor the teleconferences unless other TC members offer to donate their own facilities.
(2)(d) Proposers of the TC
Shishir Pardikar, Shishir.Pardikar@citrix.com, Citrix
Mark Biamonte, Mark.Biamonte@progress.com, Progress Software
Jonathan Bruce, Jonathan.Bruce@progress.com, Progress Software
Jesse Davis, Jesse.Davis@progress.com, Progress Software
Michael Johnson, Michael.Johnson@progress.com, Progress Software
(2)(e) Statements of Support
Paul Lipton, Paul.Lipton@ca.com
VP, Industry Standards and Open Source, CA Technologies
As CA Technologies' Primary Representative to OASIS, I am pleased to approve the OData TC Charter, and to endorse our proposers (listed above) as named co-proposers.
Shishir Pardikar, Shishir.email@example.com
OData specification is an important development in the arena of interoperable web standards. Citrix is excited to support OData and as the primary OASIS representative from Citrix I support creating a Technical committee for this purpose. I approve of the OData TC-charter and am happy to be listed as a co-proposer.
Dave Ings, firstname.lastname@example.org
Emerging Software Standards, IBM
As IBM's primary OASIS rep, I approve the OData TC Charter, and endorse our proposers (listed above) as named co-proposers.
Ram Jeyaraman, email@example.com
As Microsoft's Primary Representative, I am excited to support the creation of the OASIS OData Technical Committee and its goal of providing open data for the open Web. I approve the OASIS OData TC Charter, and endorse our proposers (listed above) as named co-proposers.
Jaime Meritt, firstname.lastname@example.org
Progress Software has reviewed the OData charter and recommends the formation of a technical committee to drive it towards standardization.
Sanjay Patil, email@example.com
Industry Standards & Open Source, SAP AG
As SAP's Primary Representative to OASIS, I approve the OASIS OData TC Charter, and endorse our proposers (listed above) as named co-proposers.
Paul Fremantle, firstname.lastname@example.org
As WSO2's Primary Representative, I strongly support the creation of the OASIS OData Technical Committee and its goal of providing open data for the open Web. I approve the OASIS OData TC Charter,
(2)(f) TC Convener
The TC Convener for the first meeting will be Barbara Hartel from SAP.
(2)(g) Affiliation to Member Section
(2)(h) Initial contributions:
OData V3 (27 April 2012):
- OData: http://www.odata.org/media/30002/OData.html
- OData URL Conventions: http://www.odata.org/media/30002/OData%20URL%20Conventions.html
- ABNF for OData: http://www.odata.org/media/30002/OData%20ABNF.html
- OData Common Schema Definition Language (CSDL): http://www.odata.org/media/30002/OData%20CSDL%20Definition.html
- OData ATOM Format: http://www.odata.org/media/30002/OData%20Atom%20Format.html
- OData Verbose JSON Format: http://www.odata.org/media/30002/OData%20JSON%20Verbose%20Format.html
- Open Data Protocol (OData) Batch Processing: http://www.odata.org/media/30002/OData%20Batch%20Processing%20Format.html
OData V3 extensions, located at dated 18 May 2012:
- OData Extension for Data Aggregation: http://www.oasis-open.org/committees/download.php/46084/ODataExtensionfo...
- OData Extension for Temporal Data: http://www.oasis-open.org/committees/download.php/46086/ODataExtensionfo...
- OData Extension for XML Data: http://www.oasis-open.org/committees/download.php/46087/ODataExtensionfo...
- OData Extension for JSON Data: http://www.oasis-open.org/committees/download.php/46085/ODataExtensionfo...