Complete name of the project


Submitter information

Jean Parpaillon

Project purpose and summarization

Project information

erocci is a generic framework for building OCCI compatible APIs on top of existing applications or as unique API. OCCI offers a resource-oriented meta-model, independant from rendering (json, xml, text...), transport (HTTP...) and backend (Mnesia, riak, ...).

Description of the project and its goals

erocci aims at implementing the complete OCCI specification with support of multiple renderings and transports (HTTP 1.1, spdy, XMPP, etc...). It implements a formal XML description of OCCI models for easily building OCCI APIs.
An example application is provided and provides the OCCI infrastructure API.

Targeted audience

erocci is targeted at open cloud services providers. It focuses on extensibility, scalability and ease of integration.
Similar projects are:
- rOCCI: OCCI framework in ruby. Focus on OCCI Infrastructure model with multiple backends (OpenStack, OpenNebula, ...)
- pyOCNI: OCCI framework in Python.
- CompatibleOne: extensive use of OCCI, through an ad-hoc C implementation, not separated and not reusable. Focus on cloud services brokering.

Supporting team

erocci is developed in the frame of ITEA2-ICARE project. ICARE aims at building cloud services for broadcasting domain. erocci is a base for building interoperable transcoding web services.
erocci is also used by the Lizenn project, an open IoT platform.

Contributors are:
Jean Parpaillon <>

Business model

User community

erocci is being evaluated and extended by members of OCCI working group.
Building OCCI compatible APIs, erocci may be used by OCCI-based systems like CompatibleOne to create new connectors.
Any cloud based platform aiming at implementing OCCI standard may be interested: ProActive, OpenStack, Contrail, XWiki, etc.
Discussions have alrady started with University of Pisa for implementing OCCI/SNMP bridges with erocci.


erocci implements OCCI on top of HTTP and, as such, can use the internationalization features of HTTP ('accept-language' headers).


A development status is maintained at :

  • 0.1: complete JSON rendering, Mnesia backend, HTTP transport
  • 0.2: complete hook system for plugging on existing APIs
  • 0.3: complete XML, OCCI, plain renderings
  • 0.4: XMPP transport
  • 0.5: riak backend
  • 0.6: SQL backend



Your project and OW2

erocci aims at being a reference framework for implementing standards and open cloud services.

OW2 components


Possible synergies with CompatibleOne, ProActive, Contrail, and any other cloud platforms (IaaS, PaaS or SaaS).

Interested parties

From OCCI wg:
Augusto Ciuffoletti <>
"Metsch, Thijs" <>
Andy Edmonds <>

Technologies and standards

technology: erlang
standard: OCCI

Contribution to the OW2 Community

Hosting the first generic OCCI framework built on top of platform (erlang/OTP) particularly suited for cloud services: resilient, distributed, scalable, portable, open source.

Motivations to join the consortium and its community

erocci is already hosted in github.
I'd like to benefit from extensive platform (CI, website, maillists) provided by OW2. But, moreover, OW2 objectives are perfectly in line with erocci domain: open source middlewares for open cloud.

Other Information?


Apache Software License 2.0

Terms and conditions acceptance


Created by Jean Parpaillon on 2014/01/31 10:36
  • Daniele Gagliardi, Engineering Group.

Powered by XWiki Hosted by Xsalto Free PageRank Checker Creative Commons 2.0 license Legal Notice