Plone Web Services – What About CMIS?
About a year ago, EMC, IBM, Microsoft, Alfresco, Open Text, Oracle, and SAP announced a draft specification for a web services standard for content management – Content Management Interoperability Services (CMIS). Both SOAP and REST bindings were proposed, with the REST binding specified as extensions to Atom and AtomPub. The draft spec went to OASIS for ratification. In September, the CMIS OASIS Technical Committee voted CMIS specification draft 0.70b to be the official Committee Draft and approved it for submission to the OASIS public review process.
Given the debate, hype, buzz and industry reaction to the CMIS announcement, it was natural to convene a Plone Web Services Birds of a Feather session at last year’s Plone Conference in Washington, DC. Attendees included Alec Mitchell, Reed O’Brien, Matt Hamilton, Chris Shenton, myself, and others. A clear consensus emerged that Plone should wait until CMIS is fully baked into a standard before pursuing adoption, and meanwhile to embrace Atom and AtomPub – well-defined and approved standards in common use today.
It’s a year later, and time to ask what’s been happening with CMIS. In addition to creating a draft that’s ready for public review, TC members have created working code and sponsored PlugFests to test compatibility between servers and clients. Interoperability testing has focused on the SOAP bindings. Alfresco, IBM, SAP, OpenText, Nuxeo, and EMC have been particularly active, and many other vendors have announced support.
Some open source communities have hopped on the CMIS bandwagon as well.
- Alfresco has been a major player on the TC and with the interoperability testing. Their goal is to the first “Enterprise CMS” that is fully CMIS compliant. They have provided examples of integrations with a number of other content management vendors including Drupal, Joomla, eZ Publish, and Confluence, which gives them a great Switch story. Alfresco Community 3.2 (imminent) will be fully compliant with CMIS 0.61, the latest version of the proposed standard.
- The Apache Foundation has an incubator project called Chemistry, which aims to produce a generic, Java language, open-source reference implementation of CMIS. Chemistry aims to cover both the AtomPub (REST) and SOAP bindings defined by the CMIS specifications. The effort is led by Florent Guillaume of Nuxeo and many of the initial committers are paid to work on the project.
- Drupal has a CMIS API plugin. There are vendor specific modules (such as one for Alfresco) that use the API to enable content sharing with specific repositories. The project is a joint effort between Optaros, Acquia, and Alfresco.
Maybe it’s time for the Plone Foundation to consider sponsoring some of the gurus in our community to do a serious review of the CMIS public draft – and maybe even a Plone CMIS implementation. Due to limitations in the Zope 2 publisher (it only does FTP, HTTP GET/POST (“browser web”), and WebDAV), a REST implementation is not possible, but SOAP could be done and is more popular with the corporate world anyway.