This week, over in Seattle, the OASIS CMIS Technical Committee is getting together for face-to-face meetings complete with plugfests every afternoon. It promises to be fun, but they are trying to accomplish some real work during all of this. The largest piece is the thought they are giving to what is going to be in the next version of CMIS.
Now I have some definite opinions which I am going to share. In order to facilitate disagreements, I am publishing the list of items they are taking under advisement. I have added bold to the ones that I care about the most.
- Browser binding
- Cross-Site Request Forgery (CSRF) defense
- Secondary type, type mutability
- Retention policy, legal hold
- Query: templated, virtual folder, Lucene syntax
- External content
- More definition of Users and some associated services
I was going to talk about my favorites, but I realized that I wrote that post last year! Back in June of 2010, I talked about CMIS 2.0, The Next Generation. That actually covers what I want a fair bit and I highly recommend viewing it. I’m going to reproduce one of the two lists here and add some additional commentary.
- Semantic Support: We need the ability to query off of relationships. This will allow for more advanced relationship management. Mind you, more support for that management directly off of the CMIS domain model would be nice as well but being able to query against relationships may suffice for now.
- Records Management: Scale this down to retention management. We aren’t trying to build a complete DoD 5015.2 system using CMIS. All we really need to support the standard Application-to-Repository model is the ability to apply retention policies and legal holds to content. This is important to enable so that users can do this from their business applications. Retrieving the Retention Policies and Holds applied to content would also be critical so the end-user knows what is happening.
- Support for Defined Data Models: Would love this, but it can wait until the next item is implemented.
- Create Content Types: Here is the basic problem. Using CMIS, companies can develop a specialized application that can leverage any content repository without writing multiple integrations. The problem is that they still have to write vendor specific installation applications to create their specialized object types. That is a pain. While this feature isn’t required for true interoperability, it is something that would help spur-on adoption by those developing Composite Content Applications.
- New Bindings: Creation of a browser binding is more important every month as we start aggregating information from more and more sources.
That’s it. I could come up with things all day, but I think these are the more important ones.