incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Klevenz, Stephan" <>
Subject Re: [PROPOSAL] OData Proposal for Incubator
Date Tue, 18 Jun 2013 11:17:52 GMT

Thanks for your hint. I do understand Marmotta as an implementation of the
Linked Data Platform (LDP). Linked Data is a concept for building a
semantic web where things are identified by URIs. Links can be used to
explore things.

OData is a data centric protocol which describes metadata and allows data
queries. It can be seen as the SQL for the web. One main use case is to
open data silos to be accessible over the web. Apache OData is a
implementation of the OData protocol.

Although LDP and OData make use of REST principles both do address
different uses cases. I don't see overlap here.


On 17.06.13 18:59, "Rob Vesse" <> wrote:

>What overlap (if any) do you see with the existing Marmotta podling?
>They are building out an implementation of the Linked Data Platform which
>is a ongoing W3C standardization effort
>( and can be thought of as a
>more RDF/Semantic Web centric alternative to the MS/Oasis OData standard.
>On 6/17/13 8:35 AM, "Klevenz, Stephan" <> wrote:
>>Dear ASF members,
>>We would like to propose the OData project to the Incubator.
>>The OData Proposal is available at:
>>We welcome your feedback and suggestions.
>>Stephan Klevenz
>>= Apache OData =
>>=== Abstract ===
>>Apache OData is a generic Java language implementation of the OData 2.0
>>specification which will serve as a code base for the upcoming OASIS
>>OData specification.
>>=== Proposal ===
>>The Open Data Protocol (OData) [1] is a Web protocol for querying and
>>updating data that provides a way to unlock your data and free it from
>>silos that exist in applications today. OData does this by applying and
>>building upon Web technologies such as HTTP, Atom Publishing Protocol
>>(AtomPub) and JSON to provide access to information from a variety of
>>applications, services, and stores.
>>The Apache OData is a library which enables developers to implement OData
>>producers and OData consumers. Basic principles of the library are to
>>provide an OData 2.0 specification compliant OData Library, enhancements
>>shall be possible in a compatible manner, have a clear separation between
>>Core and API, to provide an option to build extensions on top. This
>>library should be base for implementing future releases of the
>>=== Background ===
>>OData was originally developed by Microsoft and is released in a version
>>2.0 under an Open Specification Promise [2]. A lot of companies did show
>>interests in this protocol, used it in products and gave feedback back to
>>Microsoft. This joined effort resulted in a new release OData 3.0 in
>>2012, this version became the basis for the OASIS technical committee [3]
>>which is currently working on a new version of the specification. This
>>OASIS standard release is expected this year.
>>The initial Java code of this project was developed by a development team
>>that had already experience with other OData 2.0 and 3.0 implementations
>>at SAP AG. The current code base implements OData 2.0 and because of this
>>version is widely used it is a good starting point to build an open
>>source community for the OData standard.
>>The current code also comes up with an implementation of an OData sample
>>service. On the one side this is an example for users which want to use
>>the library to expose their own data and on the other side it illustrates
>>how implemented features work.
>>Additionally, the code base includes an extension which is called JPA
>>processor. With this extension it is easy to expose any JPA persistence
>>model via OData protocol without a lot of coding.
>>=== Rationale ===
>>More software vendors moving to OData means more choice for customers who
>>will be able to use different implementations. For the standard to
>>succeed, however, ensuring interoperability is paramount: in order to
>>manage an ever growing context and leverage the enormous portability and
>>interoperability issues that a globally adopted standard brings, it is
>>necessary to think about how to make the related ecosystem healthy and
>>sustainable. Successful modern standards are driven by:
>> * Clear documentation, built iteratively with continuous feedback from
>> * A clearly defined compatibility process, enforced by tools that allow
>>to gauge how implementations can be compatible and interoperable
>> * Accurate compliance criteria, documented in writing as well as in
>>actual testing code that measure how tools and libraries are able to
>> * A sample implementation to clear up potential doubts and ensure that
>>the standard can actually be implemented in real life scenarios
>>The above mentioned pieces are able to make the development activity,
>>towards an OData implementation, easier and more successful. Having an
>>healthy ecosystem will ensure a smoother implementation process, more
>>compliant products, and ultimately, a wider adoption of the standard.
>>The OData ecosystem has been successful in creating and documenting early
>>versions of the standard, yet it might potentially lack two very
>>important aspects, that is a exhaustive implementation of the complete
>>protocol that can be used productively and to ensure interoperability. As
>>much as such artifacts can be developed independently by any OData
>>proponent, the value of having a neutral party as a steward of actual
>>code is to be considered. The Apache Software Foundation has been playing
>>this kind of role for many years, and can provide the perfect environment
>>to foster contributions on the OData theme with a great amount of
>>=== Initial Goals ===
>> * Implement OData 2.0, make it final and mature
>> * Start implementation of OASIS OData draft specification
>> * Provide input and feedback for the draft specification to the OASIS
>>OData TC based on implementation
>> * Implement OData add-ons (library extensions and toolset)
>>== Current Status ==
>>=== Meritocracy ===
>>Most of the initial committers are open source developers with different
>>experience levels and many of them have already worked in other open
>>source or Apache projects. We will follow standard Apache procedures in
>>accepting new contributors to the project team.
>>=== Community ===
>>Managed by an OASIS Technical Committee, the OData standard definition
>>should be based on the idea of a community driven effort.
>>Apache OData aims to be a community driven initiative in developing a
>>Java OData implementation. Such an approach is allowing more transparency
>>and direct feedback even within the definition and improvement of OData
>>We encourage everyone interested in OData to join the Apache OData
>>=== Core Developers ===
>>The development team is international and they have all strong skills in
>>OData protocol. Jens Huesken who is member of the OASIS OData TC is
>>providing specification feedback since OData 2.0. Stephan Klevenz, also a
>>OASIS OData TC member, was a committer of the Apache Chemistry project.
>>He has experience with the Incubator and Apache and was also a speaker on
>>ApacheCon 2012 in Vancouver. Christian Amend, Michael Bolz and Tamara
>>Boehm did implement core parts of the library. Chandan V A, Anirban Roy,
>>Chitresh Chauhan, Jobin John and Joerg Singler are working on the JPA
>>processor add on.
>>=== Alignment ===
>>The project builds with Apache Maven, the core runtime requires Apache
>>CXF for REST binding (JAX-RS) and the sample scenario can be deployed
>>into any compliant Servlet or J2EE container like Apache Tomcat.
>>Furthermore we see OData protocol as an option to be supported by other
>>Apache projects that have to expose data via a standardized protocol
>>based interface.
>>== Known Risks ==
>>=== Orphaned products ===
>>Apache OData is a fresh new codebase that targets the still moving OData
>>standardization effort. Thus the future of this project depends heavily
>>on the success of the standard. We hope and expect that our
>>implementation efforts will strengthen and support the OData standard.
>>=== Inexperience with Open Source ===
>>Some of the initial committers are experienced open source developers.
>>But there are also committers which are new to open source.
>>=== Homogenous Developers ===
>>The initial committers are from SAP working in different teams. One team
>>is from Germany and has implemented the core parts of the library and the
>>other team is from India and has implemented the JPA processor add-on.
>>=== Reliance of Salaried Developers ===
>>All of the initial committers are paid by SAP to work on this or related
>>=== Relationships with Other Apache Products ===
>>Apache OData will directly use at least the following projects:
>> * Apache CXF - for REST bindings
>> * Apache Commons - for encoding/decoding
>>Other Apache projects may be interested in using Apache OData to add
>>OData support once the standard is final.
>>=== An Excessive Fascination with the Apache Brand ===
>>We value Apache as a neutral place where diverse communities can work
>>together on implementing shared standards. We hope that this part of the
>>Apache brand helps attract contributions from many potential OData
>>standard consumers. However, the brand value is not the main reason why
>>we prefer to have this project at Apache.
>>== Documentation ==
>>This project is still at an early stage, so there is not much
>>documentation available. See the OASIS OData page and web site
>>for information about the OData standardization effort.
>>== Initial Source ==
>> * [[]]
>> * [[]]
>>== Source and Intellectual Property Submission Plan ==
>>The complete code is under Apache Software License 2.
>>== External Dependencies ==
>>All the external dependencies of the initial codebases comply with Apache
>>licensing policies.
>>== Cryptography ==
>>Apache OData is not expected to implement or use cryptographic code.
>>== Required Resources ==
>>=== Mailing lists ===
>> * odata-dev'at'
>> * odata-commits'at'
>> * odata-private'at'
>>=== Subversion Directory ===
>>writeable Git Repository (preferred)
>>    [[git://]]
>>or SVN Directory
>>    [[]]
>>=== Issue Tracking ===
>>    JIRA OData (OData)
>>=== Other Resources ===
>>    none
>>== Initial Committers ==
>>|| '''Name'''       || '''Email'''                 ||
>>|| Stephan Klevenz  || sklevenz'at'      ||
>>|| Jens Huesken     || jens.huesken'at'     ||
>>|| Christian Amend  || christian.amend'at'  ||
>>|| Michael Bolz     || michael.bolz'at'     ||
>>|| Tamara Boehm     || tamara.boehm'at'     ||
>>|| Chandan V A      || chandan.v.a'at'      ||
>>|| Anirban Roy      || anirban.roy'at'      ||
>>|| Chitresh Chauhan || chitresh.chauhan'at' ||
>>|| Jobin John       || jobin.john'at'       ||
>>|| Joerg Singler    || joerg.singler'at'    ||
>>== Affiliations ==
>>|| '''Name'''          || '''Affilitation''' ||
>>|| Stephan Klevenz     || SAP AG       ||
>>|| Jens Huesken        || SAP AG       ||
>>|| Christian Amend     || SAP AG       ||
>>|| Michael Bolz        || SAP AG       ||
>>|| Tamara Boehm        || SAP AG       ||
>>|| Chandan V A         || SAP AG       ||
>>|| Anirban Roy         || SAP AG       ||
>>|| Chitresh Chauhan    || SAP AG       ||
>>|| Jobin John          || SAP AG       ||
>>|| Joerg Singler       || SAP AG       ||
>>== Sponsors ==
>> * Florian Mueller
>>Nominated Mentors
>> * Florian Mueller
>> * tbd.
>>Sponsoring Entiy
>> * Incubator PMC
>>==== Links ====
>> * [1] [[]]
>> * [2] 
>> * [3] 
>> * [4] 
>To unsubscribe, e-mail:
>For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message