Content Management Interoperability Services


Content Management Interoperability Services is an open standard that allows different content management systems to inter-operate over the Internet. Specifically, CMIS defines an abstraction layer for controlling diverse document management systems and repositories using web protocols.

Concept

CMIS defines a domain model plus bindings that can be used by applications to manipulate content stored in a repository.
CMIS provides a common data model covering typed files and folders with generic properties that can be set or read. There is a set of services for adding and retrieving documents. There may be an access control system, a checkout and version control facility, and the ability to define generic relations. Three protocol bindings are defined, one using WSDL and SOAP, another using AtomPub, and a last browser-friendly one using JSON. The model is based on common architectures of document management systems.
The CMIS specification provides an API that is programming language-agnostic, as REST and SOAP are implemented in many languages.

Reasoning

Many of the original contributors to the specification believed
a simplified and standardized way to access unstructured content across all vendors would increase the adoption of ECM products, but only if the standard could remain compatible with existing deployed systems, much the way that ODBC Open Database Connectivity did for the relational database market in the 1990s.

History

The initial work of developing the momentum and use cases that led to the CMIS proposal was conducted by the iECM Initiative
sponsored by AIIM. This ongoing project to foster interoperability among ECM systems is supported by the collaborative efforts of governmental, commercial, vendor, and consulting organizations.
Although initiated by AIIM, CMIS is now administered by OASIS, a web standards consortium. Participants in the process include Adobe Systems Incorporated, Alfresco, EMC, eXo, FatWire, HP, IBM, ISIS Papyrus, Liferay, Microsoft, Nuxeo, OpenText, Oracle, Newgen OmniDocs and SAP. The standard is available for public comment at OASIS.
OASIS approved CMIS as an OASIS Specification on May 1, 2010. CMIS 1.1 has been approved as an OASIS specification on December 12, 2012.
The specification is currently approved as OASIS CMIS v1.1 standard.
There are public discussion lists.
The Technical Committee includes the following organizations:
Adobe Systems Incorporated, AIIM, Alfresco Software, ASG Software Solutions, Booz Allen Hamilton, Content Technologies, dotCMS, Ektron, EMC Corporation, Entropysoft, Exalead, Inc., FatWire, Fidelity Investments, GX Software, HP, IBM, ISIS Papyrus, Microsoft Corporation, Nuxeo, Open Text Corporation, Oracle Corporation, Quark, Pearson PLC, SAP AG, Sun Microsystems, Wells Fargo, WeWebU Software AG and Zia Consulting.
The TC was closed on May 9, 2017 and is no longer active.

Criticism

There is some discussion on the name of CMIS. Some blogs and authors say that it should be named "DMIS". D for Document since it is more targeted on ECM.
From the CMIS Specification 1.1, page: " this data model does not cover all the concepts that a full-function ECM repository transient entities, administrative entities, and extended concepts are not included."

List of implementations

CMIS Servers

A CMIS server stores content, and offers access via the CMIS protocol. Some servers also allow access via other protocols.
SoftwareOpen sourceNotes
Alfresco 3.3+
Apache Chemistry InMemory Server 0.3Holds all data in memory targeted for testing and development
Ceyoniq Technology GmbH nscale CMIS ConnectorSupports all bindings and mandatory functions, in addition there are a couple of optional functions implemented. They are documented in the manual.
Cincom ECM 2.1+ CMIS ConnectorCMIS interface of Cincom ECM, forked from NemakiWare.
Day Software CRX 2.1+
Doxis4
dotCMS 2.2Early commercial editions of dotCMS had CMIS support, however the open source community edition did not. Note that the latest v4.0 edition of dotCMS has removed support for CMIS entirely.
FabasoftProvides extensions to the core CMIS specification to support "aspects"
HP Autonomy Interwoven Worksite 8.5
IBM Content Manager On Demand 9.0+
IBM Connections Files 3.0Only documents are accessible via CMIS, other content types are inaccessible.
IBM LotusLive Files
IBM QuickFile
IBM Lotus Quickr 8.5 ListsOnly data lists are accessible via CMIS, other content types are inaccessible.
LogicalDOC 6.5.1+
Magnolia 4.5
mediacockpit Implemented to support Adobe Drive + Bridge, the CMIS interface has been used to interop with Web CMS systems and with CmisSync for DropBox-like functionality. Supports Navigation, Object creation, Object versioning, renditions, system ACLs, ChangeLog, with limited metadata and CMIS query support.
Microsoft SharePoint ServerCMIS 1.0 is supported out-of-the-box in SharePoint Server 2013. It requires installation of the Administration Toolkit in SharePoint Server 2010. Not available in Foundation version.
Nuxeo Platform 5.5+
O3Spaces 3.2+
OpenCms 8.5
OpenKM 6.3+
OpenTextSince ECM Suite 2010. Implemented through a CMIS Connector above Enterprise Library Services 10.2.0.
OpenText Documentum 7.x
OpenWGA 5.2+
Oracle Webcenter ContentContent Management REST Service Developer's Guide.
PTC Windchill
SAP HANA Cloud Document ServiceSAP HANA Cloud Platform Documentation.
Surround SCM 2011.1
Laserfiche 9.1 & 10Laserfiche Servers Workflow & Forms

Capabilities

Each CMIS server declares a set of capabilities. For instance, servers that allow documents to be filed in different places declare the capability "Multifiling". This mechanism allows clients to interact differently with servers that support or don't support a particular operation.
Some server products allow certain capabilities to be disabled or enabled by configuration. the table below lists maximum capabilities.
ServerACLAllVersions
Searchable
ChangesContentStream
Updatability
Get
Descendants
Get
FolderTree
MultifilingPWC
Searchable
PWC
Updatable
QueryRenditionsUnfilingVersion
Specific
Filing
Join
Acropolis
Alfresco
Ceyoniq Technology GmbH, nscale CMIS Connector
Chemistry InMemory Server
doXima
eXo Platform
IBM FileNet Content Manager
IBM Content Manager
IBM Content Manager OnDemand
ISIS Papyrus Objects
NemakiWare
Nuxeo
OpenText
OpenText Documentum
Laserfiche

Server libraries

A CMIS server library allows developers to create CMIS server applications.
SoftwareTechnologyOpen source
NCMIS.NET
OpenCMIS Server Framework Java
VB.CMIS.NET

Client applications

A CMIS client application typically allows users to browse, read and modify content.
SoftwareTechnologyOpen sourceNotes
Atlassian Confluence + Crowd 3.5+/2.2.2+)JavaAccess, list, display, edit, upload and delete Enterprise Alfresco files from Confluence. By AppFusions.
Connect-CMIS Pega 7Allows for connectivity to any CMIS compliant server from Pega 7
Drupal 7.xPHPCan be configured as a CMIS browser
Hippo CMSJavaCan be configured as a CMIS browser
HP Exstream LALJavaFramework to connect Live documents with CMIS repositories
LibreOffice 4.0C++
Liferay 6.1JavaSynchronizes Liferay's document repository with CMIS servers
TYPO3PHP
WordPressPHPCan be configured as a CMIS browser

Books and publications