CMIS provides a set of services to access and manage the content or repository. These services include:
Name | Description |
---|---|
Repository Services | Discovers information about the repository and the object types defined for the repository. |
Navigation Services | Traverses the folder hierarchy in a CMIS repository, and to locate documents which are checked out. |
Object Services | Executes ID-based CRUD functions (Create, Retrieve, Update, Delete) on objects in a repository. |
Multi-filing Services (optional) | Puts an object in more than one folder (multi-filing), or outside the folder hierarchy (unfiling). |
Discovery Services | Searches for queryable objects in a repository. |
Versioning Services |
Checks out, navigates to documents, or updates a Document Version Series (checkOut, cancelCheckOut, getPropertiesOfLatestVersion, getAllVersions, deleteAllVersions). |
Relationship Services (optional) | Retrieves an object for its relationships. |
Policy Services (optional) | Applies, removes, or queries for policies. |
ACL Services | Returns and manages the Access Control List (ACL) of an object. ACL Services are not supported by all repositories. |
Some repositories might not implement certain optional capabilities, but they are still considered as CMIS-compliant. Each service has binding which defines the way messages will be serialized and wired. Binding is based on HTTP and uses the Atom Publishing Protocol.