A few weeks ago we started the development of a proof-of-concept CMIS client based on Enterprise Connect. Enterprise Connect is a framework that hooks into desktop applications including Outlook, Microsoft Office and the Window Explorer. It provides a plug-in architecture to extend these applications.
The client can connect to CMIS repositories with an AtomPub or a SOAP binding that implement the CMIS draft 0.61. It presents the folder tree and file list in the look and feel of the application it is embedded in. Since it is a proof-of-concept we only implemented a selected set of features:
- folder browse
- display of object metadata, allowable actions and list of versions
- documents open with double-click
- documents can be downloaded via context menu
- folders can be created via context menu
- drag-and-drop works from and to CMIS repositories
- folders and documents can be deleted and renamed
- some document types can be opened in a preview pane
- search is supported to some degree
In addition to this end-user orientated plug-in, we also built a plug-in for administrators and developers. It provides access to all logical repositories a CMIS endpoint exposes and lets the user browse the type and property type definitions.
We have tested the client at the CMIS plug-fest end of April in Basel and it worked quite nicely with most of the available repositories (see screenshots). We also found interoperability issues with a few servers during that event. Most of them were caused by incomplete implementations. So we are confident that those issues will be solved until the next plug-fest.
Although the proof-of-concept just provides limited functionality, it already demonstrates the potential of this approach. A complete implementation would allow users to drag an email directly into a CMIS repository without leaving Outlook. A CMIS repository would be browsable with a tool all users are familiar with: the Windows Explorer. Word, Excel and Powerpoint could open documents directly from a CMIS repository and the user would be able to set the appropriate CMIS metadata for that document in the Save dialog.
The idea of the proof-of-concept turned out to be really compelling. The seamless integration into applications the users already know could fosters the adoption of CMIS. We will do more experiments with it over time.