Microsoft recently released an MSDN article written by Trent Swanson and Bhushan Nene from Microsoft, along with independent SharePoint MVP Scot Hiler. The article demonstrates how to implement an external content repository as a document library-like construct within SharePoint. The authors also released the underlying code, which you can download into your own environment.
This article represents, for Microsoft, the first "real" attempt to demonstrate how SharePoint might leverage the CMIS spec. While the specification was released last year by the likes of Microsoft, IBM and EMC, no real guidance was given by Microsoft regarding how this would impact SharePoint (in fact none of the vendors gave any guidance on how this specification would directly impact their product architectures).
It now seems that Microsoft will approach CMIS like it approaches many mid-product cycle changes (i.e., industry trends, new product acquisitions very visible request from customers): it hires external agencies or individuals to work with product team members to build a demo.
I haven't dug deeply into the samples or the actual implementation, but it looks like a decent start. The authors take time to explain the various elements of the sample and how they play both into the CMIS specification and SharePoint. They address many of the scenarios one would expect: basic access to content outside of SharePoint, managing metadata, searching external data, and running a workflow. It's unclear if they've adhered to best practices in every case (e.g., can you add an existing site column to the new external document library), but it's not bad.
There is a lot more to say about this particular sample and I will continue to report on it. However, if you own SharePoint and have the need to represent a single view of content across several content systems, you may want to review the article and the code. As SharePoint Report 2009 readers know, it's possible -- but not certain -- that Microsoft will use such an approach to construct a commercially-ready version of this integration.
Thank you to Andrew Connell for publishing a blog entry pointing to the MSDN article.