EMC, IBM, and Microsoft have drafted Content Management Interoperability Services ( CMIS), a proposed standard for a set of web services for sharing information among disparate content repositories. CMIS is designed to solve a difficult business problem—ensuring interoperability for people and applications using multiple content repositories.
CMIS focuses on the basic content capabilities of an ECM system—the create, read, write, delete, and query functions. When deployed, CMIS ensures interoperability by defining how these core content management capabilities function in a uniform manner over a variety of ECM systems. Beyond this limited (albeit important) set of operations, CMIS does not seek to standardize other capabilities of a content repository. Nor does CMIS seek to standardize the administrative functions supported by each ECM system.
Benefits
CMIS promises to simplify integration challenges and help provide three business benefits.
Knowledge workers can use a single application to interact with content stored and managed by several ECM systems. End users no longer need to use a unique application (based on a separate interactive experience) for managing each content repository.
A company can deploy an enterprise workflow that interacts with content managed by multiple ECM systems. The firm can create and manage business processes that transcend content repositories in a standardized fashion.
Application developers can rely on a standardized web-based, service-oriented interface to develop their applications once, and deploy them across multiple ECM systems. They then have the flexibility to quickly respond to new operational requirements. They can leverage a web services infrastructure to extend the reach of their distributed applications. They can easily modify the application once and continue to manage content across multiple repositories
CMIS Services
CMIS exposes services for:
Discovering object type definitions and other repository information (including the optional capabilities that are supported by a particular repository)
Creating, reading, updating, relating, and deleting objects
Filing documents into one or more folders (if the repository supports the optional multi-filing capability)
Navigating and traversing the hierarchy of folders in a repository
Creating and accessing versions of documents
Querying a repository to retrieve one or more objects matching user-specified search criteria, including full-text search
Technical Overview
CMIS defines functions as language-independent services that are not limited to a single programming language or a fixed transport protocol. CMIS currently specifies two separate protocol bindings, including one that is SOAP-based (Simple Object Access Protocol) and another that is REST-based (Representational State Transfer). CMIS provides a lightweight, loosely coupled interface to a repository, independent of the underlying platform and transport protocol.