Just about any solution that is built using an Enterprise Content Management (ECM) System will require that a content model be designed. The content model in an ECM system is analogous to the Schema of a database system. It defines the structure of the content in the repository.
Now that the CMIS 1.0 Draft Specification is available for public review, many developers are starting to ask "How can I build applications that leverage CMIS?" If you are inclined to use SOAP, then you can probably use your favorite SOAP tools to build a client application. If you are looking to leverage the REST binding, then you may need to do a bit more work.
Recently I had the opportunity give a presentation on Content Management Interoperability Services (CMIS). This is a new Oasis standard which entered Public Review with the release of the "»
This is a PHP Code sample that I have posted. I have documented this in a blog post entitled "Building a CMIS REST Client Application using PHP".
In this final post of my Introduction to CMIS series, I will discuss the SOAP and REST protocol bindings for CMIS. This post should provide an overview of how CMIS leverages SOAP and REST (particularly the AtomPub). It is not a comprehensive reference on SOAP, REST or AtomPub.
CMIS is defined around the interactions between a client application and single repository. The repository is a container of objects (documents, folders etc..). In order to be CMIS compliant there is some mandatory functionality that the repository must support and there are some optional capabilities that the repository may support.
In order to get started, the client will need to know the starting URI needed to access the Repository via the desired binding (SOAP or REST). Armed with that URI, the client is then in a position to:
In two previous blog posts, I discussed the CMIS Domain Model and the CMIS Query Language. This post discusses the CMIS Services. The CMIS Services expose methods by which a client can:
The methods that are provided to the client are organized into 9 services.
The CMIS Query Language is the means by which any CMIS compliant repository provides a read only Relation View into the repository. As we saw in the CMIS Domain Model, support for queries is optional. Having said that, in my humble opinion, it is highly unlikely that any self respecting CMIS compliant repository would not support relational queries. Keep in mind that some repositories may require you to issue full text and metadata queries