SlideShare a Scribd company logo
1 of 48
Breaking down content
silo's with CMIS
Bas Peters
Open Source Conference 2011
Bas Peters

UvA, Information Science
UL, Dutch Language and Literature
Started career in academic publishing
Worked for large consultancy firm and for many
customers in publishing, government, retail
banking, industry
Currently Solutions Architect focusing on
ECM, Alfresco and open source at Incentro
Breaking down content silo's with CMIS

INTRODUCTION
ECM
Enterprise Content Management
Capture, manage, store, preserve, and
deliver content and documents related to
organizational processes
Allow the management of an organization's
unstructured information, wherever that
information exists
Content as a service


                     CMS Implementation

 Document    Collaboration &   Web Content     Records    E-mail
Management    Social Media     Management    Management   Archive
Improve ECM interoperability
CMIS goals
Enable applications to target different ECM
repositories uniformly
Provide a set of basic services enabling richer ECM
applications and use cases
Allow for loose coupling of an ECM application and
the underlying repository
Use popular protocol bindings
 REST / AtomPub
 Web Services / SOAP
Some say that...

“CMIS is as important to content
management applications as the
standardization of SQL was to
database applications in the late
1980’s and early 1990’s”
OASIS
OASIS was founded under the name "SGML Open" in 1993
Organization for the Advancement of Structured
Information Standards
Not-for-profit consortium that drives the
development, convergence and adoption of open
standards for the global information society
Standards:
   Darwin Information Typing Architecture (DITA)
   DocBook v5.0
   ebXML Business Process
   OpenDocument Format for Office Applications
   SWS (Search Web Services)
CMIS timeline
Committee members included
Microsoft, EMC, IBM, SAP, Alfresco, Oracle, Day and
OpenText




  http://www.slideshare.net/alfresco/cmis-spec-uncovered
Providers   Consumers
Vendor support
Breaking down content silo's with CMIS

USE CASES
Use Cases

Laurence Hart compiled a list of CMIS use
cases:
 Repository-to-Repository (R2R)
 Application-to-Repository (A2R)
 Federated Repositories
Repository-to-Repository (R2R)

Managing Records centrally that are stored
in other repositories
Publishing content from one repository to
another


                CMIS
Application-to-Repository (A2R)
SharePoint or Alfresco Share as a front-end
Enterprise Software Applications
(BPM, CRM, Capture)
Content Enabled Vertical Applications
(CEVA)
Productivity applications (Office integration)

                 CMIS
Federated Repositories

Federated Search
 CMIS Client searches multiple repositories
 CMIS Client crawls multiple repositories
Federation instead of migration


                    CMIS
Breaking down content silo's with CMIS

THE STANDARD
Parts

Domain model
Services
Query language
Protocol bindings
 REST / AtomPub
 Web Services / SOAP
Breaking down content silo's with CMIS

DOMAIN MODEL
Domain model




Copyright ©2011 Alfresco Software Inc.
Base object type properties
Custom types
Custom types can extend the CMIS types




  Copyright ©2011 Alfresco Software Inc.
Folder hierarchy

Document objects live in a folder hierarchy




Copyright ©2011 Alfresco Software Inc.
Versions

Document Objects are the only object type
that can be versioned




  Copyright ©2011 Alfresco Software Inc.
Content access
Document Objects provide access to content
streams and enable retrieval of renditions

    Document                 Rendition
     Mime Type               Kind
                              Mime Type




            Content Stream
             Stream Id
Policy object

A policy object represents an administrative
policy that can be enforced by a repository
 ACL (Access Control Lists)
 Retention policies
 Aspects in Alfresco
Breaking down content silo's with CMIS

CMIS SERVICES
CMIS services
Create folder
http://localhost:8080/alfresco/s/cmis/p/children
 Content-Type: application/atom+xml
 Request Body:
Breaking down content silo's with CMIS

QUERY LANGUAGE
Query language
Based on SQL 92, with ECM extensions and
support for metadata and full text
   SELECT       with a target list
   FROM         with the object types being queried
   JOIN         to perform a join between object types
   WHERE        with the predicate
   IN and ANY   to query multi-value properties
   CONTAINS     to specify a full-text qualification
   IN_FOLDER    to search children within a folder
   IN_TREE      to search within a folder hierarchy
   ORDER BY     to sort the results
Query
http://localhost:8080/alfresco/s/cmis/queries
 Content-Type: application/cmisquery+xml
 Request Body:
Non-strict queries
Retrieve aspects in Alfresco
SELECT d.*, t.*, a.* FROM cmis:document AS d
JOIN cm:titled AS t ON d.cmis:objectId = t.cmis:objectId
JOIN cm:author AS a ON d.cmis:objectId = a.cmis:objectId
WHERE IN_FOLDER(d, 40312a4b-7767-4586-a58b-18d050ffe0ca')
AND CONTAINS(d,'sample')
Breaking down content silo's with CMIS

PROTOCOL BINDINGS
Requirements

Neutral
 Any Programming Language
 Any Operating System
 Any Environment
Required
 Web Service Client Library
 HTTP Client Library There are client libraries available in all
                              general languages including
                              Java, PHP, .NET, JavaScript and Python
Web Services /SOAP binding

Service-oriented binding
CMIS-specified XML schema
Capable for system-to-system access
Use MTOM to transfer content stream
Recommend Basic Authentication and WS
Security UsernameToken
Transactional Applications
REST / AtomPub binding

Resource-based binding
AtomPub format with OpenSearch and CMIS
extensions
Browse-able by standard Atom feed readers
Suitable for RESTful-style application-to-
system access
Recommend HTTP Basic Authentication
Web-based Applications
Breaking down content silo's with CMIS

FUTURE DIRECTIONS
Future directions

Browser binding (1.1)
Secondary Object Types (1.1)
Type Mutability (1.1)
Retention policies
Annotations
Browser binding

Simplify uploading documents from a
browser application (e.g. using HTML Form)
Simplify parsing (e.g. using JSON instead of
XML)
Does not require a JavaScript library
Simplify construction of required object
metadata (e.g. constructing links)
Secondary object types

Additional metadata has to be attached
after the document has been created.
Some common and crosscutting concepts
such as tags, comments and ratings can be
implemented with secondary types.
Properties of secondary types can also
reveal the status of an object.
Type mutability

CMIS Application needs to install its own metadata
and uninstall if removed.
CMIS Repository migration application would not
only migrate documents from one repository to
another; but would be able to migrate and
preserve the metadata as well.
General purpose Administration applications that
allow administrators to author metadata for new
systems.
Retention policies
The rules for retention policies on invoices are maintained
in the ERP system
When a fax image is attached to the invoice data in the ERP
system, the ERP system
 Creates the appropriate CMIS Policy for the retention if it does not
  already exist
 Applies the CMIS Policy for the retention to the CMIS Document with
  the fax image



                     CMIS
Annotations

Ability to create and retrieve annotations
associated to documents:
 To highlight a section of text
 Pinpoint a specific item in an image
 Provide a small note or comment during a
  particular stage within the process of the
  document's lifecycle
Conclusion

CMIS is a well designed standard
It supports relevant use cases
All big vendors are involved, although open
source seems to be leading
It remains to be seen if it will become as big
as SQL
Breaking down content silo's with CMIS

QUESTIONS?

More Related Content

Viewers also liked

[2012 02 03]clean_code 4장
[2012 02 03]clean_code 4장[2012 02 03]clean_code 4장
[2012 02 03]clean_code 4장
Jong Pil Won
 
C.t.e. primera sesion.
C.t.e. primera sesion.C.t.e. primera sesion.
C.t.e. primera sesion.
Victor Cortes
 
การท่องเที่ยวเชิงนิเวศ
การท่องเที่ยวเชิงนิเวศการท่องเที่ยวเชิงนิเวศ
การท่องเที่ยวเชิงนิเวศ
Sareenakache
 
米国Clean tech状況091022f.ppt
米国Clean tech状況091022f.ppt米国Clean tech状況091022f.ppt
米国Clean tech状況091022f.ppt
Hiroshi Yagi
 
在MBA 课堂没教的一门课
在MBA 课堂没教的一门课 在MBA 课堂没教的一门课
在MBA 课堂没教的一门课
DavidDan
 
Lesson 1 point of view (fiction)
Lesson 1 point of view (fiction)Lesson 1 point of view (fiction)
Lesson 1 point of view (fiction)
rfitzwater
 
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
Elisa Hu
 
Mini2440 Um 20090817
Mini2440 Um 20090817Mini2440 Um 20090817
Mini2440 Um 20090817
guestadf50c
 

Viewers also liked (20)

2014/07/20 能源與科學研討會 邱教授的投影片
2014/07/20 能源與科學研討會 邱教授的投影片2014/07/20 能源與科學研討會 邱教授的投影片
2014/07/20 能源與科學研討會 邱教授的投影片
 
[2012 02 03]clean_code 4장
[2012 02 03]clean_code 4장[2012 02 03]clean_code 4장
[2012 02 03]clean_code 4장
 
C.t.e. primera sesion.
C.t.e. primera sesion.C.t.e. primera sesion.
C.t.e. primera sesion.
 
Realta' aumentata, mappatura intelligente moda e tecnologia insieme
Realta' aumentata, mappatura intelligente   moda e tecnologia insiemeRealta' aumentata, mappatura intelligente   moda e tecnologia insieme
Realta' aumentata, mappatura intelligente moda e tecnologia insieme
 
Edison salazar
Edison salazarEdison salazar
Edison salazar
 
RISD ID 2006
RISD ID  2006RISD ID  2006
RISD ID 2006
 
Rombc medley
Rombc medleyRombc medley
Rombc medley
 
跨文化公关项目
跨文化公关项目跨文化公关项目
跨文化公关项目
 
Calder
CalderCalder
Calder
 
baby owner book
baby owner bookbaby owner book
baby owner book
 
A03610104
A03610104A03610104
A03610104
 
制造业公关项目
制造业公关项目制造业公关项目
制造业公关项目
 
การท่องเที่ยวเชิงนิเวศ
การท่องเที่ยวเชิงนิเวศการท่องเที่ยวเชิงนิเวศ
การท่องเที่ยวเชิงนิเวศ
 
米国Clean tech状況091022f.ppt
米国Clean tech状況091022f.ppt米国Clean tech状況091022f.ppt
米国Clean tech状況091022f.ppt
 
在MBA 课堂没教的一门课
在MBA 课堂没教的一门课 在MBA 课堂没教的一门课
在MBA 课堂没教的一门课
 
Lesson 1 point of view (fiction)
Lesson 1 point of view (fiction)Lesson 1 point of view (fiction)
Lesson 1 point of view (fiction)
 
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
Prenotazioni on line di alberghi e biglietti aerei per viaggi d’affari nel 2013
 
Quintin Oliver presentation to October 2009 CBI (NI)/ Stratagem Conference
Quintin Oliver presentation to October 2009 CBI (NI)/ Stratagem ConferenceQuintin Oliver presentation to October 2009 CBI (NI)/ Stratagem Conference
Quintin Oliver presentation to October 2009 CBI (NI)/ Stratagem Conference
 
20130339广州
20130339广州20130339广州
20130339广州
 
Mini2440 Um 20090817
Mini2440 Um 20090817Mini2440 Um 20090817
Mini2440 Um 20090817
 

Similar to PowerPoint Presentation

Introducing Alfresco Community Edition 3.2
Introducing Alfresco Community Edition 3.2Introducing Alfresco Community Edition 3.2
Introducing Alfresco Community Edition 3.2
Alfresco Software
 
Documentum introduction
Documentum introductionDocumentum introduction
Documentum introduction
otnawrup
 
Adopting AnswerModules ModuleSuite
Adopting AnswerModules ModuleSuiteAdopting AnswerModules ModuleSuite
Adopting AnswerModules ModuleSuite
AnswerModules
 
Lecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentationLecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentation
IKS - Project
 

Similar to PowerPoint Presentation (20)

EMC World 2009 - Standards: CMIS
EMC World  2009 - Standards: CMISEMC World  2009 - Standards: CMIS
EMC World 2009 - Standards: CMIS
 
TYPO3 and CMIS
TYPO3 and CMISTYPO3 and CMIS
TYPO3 and CMIS
 
Relational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric AppsRelational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric Apps
 
Introducing Alfresco Community Edition 3.2
Introducing Alfresco Community Edition 3.2Introducing Alfresco Community Edition 3.2
Introducing Alfresco Community Edition 3.2
 
Integrating Drupal and Alfresco using CMIS
Integrating Drupal and Alfresco using CMISIntegrating Drupal and Alfresco using CMIS
Integrating Drupal and Alfresco using CMIS
 
Documentum introduction
Documentum introductionDocumentum introduction
Documentum introduction
 
Improving Infrastructure Governance on AWS
Improving Infrastructure Governance on AWSImproving Infrastructure Governance on AWS
Improving Infrastructure Governance on AWS
 
Improving Infrastructure Governance on AWS - AWS June 2016 Webinar Series
Improving Infrastructure Governance on AWS - AWS June 2016 Webinar SeriesImproving Infrastructure Governance on AWS - AWS June 2016 Webinar Series
Improving Infrastructure Governance on AWS - AWS June 2016 Webinar Series
 
Improving Infrastructure Governance on AWS by Henrik Johansson, Solutions Ar...
 Improving Infrastructure Governance on AWS by Henrik Johansson, Solutions Ar... Improving Infrastructure Governance on AWS by Henrik Johansson, Solutions Ar...
Improving Infrastructure Governance on AWS by Henrik Johansson, Solutions Ar...
 
Alfresco: What every developer should know
Alfresco: What every developer should knowAlfresco: What every developer should know
Alfresco: What every developer should know
 
Adopting AnswerModules ModuleSuite
Adopting AnswerModules ModuleSuiteAdopting AnswerModules ModuleSuite
Adopting AnswerModules ModuleSuite
 
Chapter 2 - Enterprise Application Integration.pdf
Chapter 2 - Enterprise Application Integration.pdfChapter 2 - Enterprise Application Integration.pdf
Chapter 2 - Enterprise Application Integration.pdf
 
Moss Governance Guidelines
Moss Governance GuidelinesMoss Governance Guidelines
Moss Governance Guidelines
 
CMIS Spec Uncovered
CMIS Spec UncoveredCMIS Spec Uncovered
CMIS Spec Uncovered
 
CM Pros CMIS Overview - Jan 2011
CM Pros CMIS Overview  - Jan 2011CM Pros CMIS Overview  - Jan 2011
CM Pros CMIS Overview - Jan 2011
 
Nuxeo Fact Sheet
Nuxeo Fact SheetNuxeo Fact Sheet
Nuxeo Fact Sheet
 
INFOGOV14 - Trusting Your KM & ECM Strategy to SharePoint
INFOGOV14 - Trusting Your KM & ECM Strategy to SharePointINFOGOV14 - Trusting Your KM & ECM Strategy to SharePoint
INFOGOV14 - Trusting Your KM & ECM Strategy to SharePoint
 
Jonathan Ralton - Trusting Your KM & ECM Strategy To SharePoint
Jonathan Ralton - Trusting Your KM & ECM Strategy To SharePointJonathan Ralton - Trusting Your KM & ECM Strategy To SharePoint
Jonathan Ralton - Trusting Your KM & ECM Strategy To SharePoint
 
A social computing strategy for an enterprise content ecosystem
A social computing strategy for an enterprise content ecosystemA social computing strategy for an enterprise content ecosystem
A social computing strategy for an enterprise content ecosystem
 
Lecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentationLecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentation
 

PowerPoint Presentation

  • 1.
  • 2.
  • 3. Breaking down content silo's with CMIS Bas Peters Open Source Conference 2011
  • 4. Bas Peters UvA, Information Science UL, Dutch Language and Literature Started career in academic publishing Worked for large consultancy firm and for many customers in publishing, government, retail banking, industry Currently Solutions Architect focusing on ECM, Alfresco and open source at Incentro
  • 5. Breaking down content silo's with CMIS INTRODUCTION
  • 6. ECM Enterprise Content Management Capture, manage, store, preserve, and deliver content and documents related to organizational processes Allow the management of an organization's unstructured information, wherever that information exists
  • 7. Content as a service CMS Implementation Document Collaboration & Web Content Records E-mail Management Social Media Management Management Archive
  • 9. CMIS goals Enable applications to target different ECM repositories uniformly Provide a set of basic services enabling richer ECM applications and use cases Allow for loose coupling of an ECM application and the underlying repository Use popular protocol bindings  REST / AtomPub  Web Services / SOAP
  • 10. Some say that... “CMIS is as important to content management applications as the standardization of SQL was to database applications in the late 1980’s and early 1990’s”
  • 11. OASIS OASIS was founded under the name "SGML Open" in 1993 Organization for the Advancement of Structured Information Standards Not-for-profit consortium that drives the development, convergence and adoption of open standards for the global information society Standards:  Darwin Information Typing Architecture (DITA)  DocBook v5.0  ebXML Business Process  OpenDocument Format for Office Applications  SWS (Search Web Services)
  • 12. CMIS timeline Committee members included Microsoft, EMC, IBM, SAP, Alfresco, Oracle, Day and OpenText http://www.slideshare.net/alfresco/cmis-spec-uncovered
  • 13. Providers Consumers Vendor support
  • 14. Breaking down content silo's with CMIS USE CASES
  • 15. Use Cases Laurence Hart compiled a list of CMIS use cases:  Repository-to-Repository (R2R)  Application-to-Repository (A2R)  Federated Repositories
  • 16. Repository-to-Repository (R2R) Managing Records centrally that are stored in other repositories Publishing content from one repository to another CMIS
  • 17. Application-to-Repository (A2R) SharePoint or Alfresco Share as a front-end Enterprise Software Applications (BPM, CRM, Capture) Content Enabled Vertical Applications (CEVA) Productivity applications (Office integration) CMIS
  • 18. Federated Repositories Federated Search  CMIS Client searches multiple repositories  CMIS Client crawls multiple repositories Federation instead of migration CMIS
  • 19. Breaking down content silo's with CMIS THE STANDARD
  • 20. Parts Domain model Services Query language Protocol bindings  REST / AtomPub  Web Services / SOAP
  • 21. Breaking down content silo's with CMIS DOMAIN MODEL
  • 22. Domain model Copyright ©2011 Alfresco Software Inc.
  • 23. Base object type properties
  • 24. Custom types Custom types can extend the CMIS types Copyright ©2011 Alfresco Software Inc.
  • 25. Folder hierarchy Document objects live in a folder hierarchy Copyright ©2011 Alfresco Software Inc.
  • 26. Versions Document Objects are the only object type that can be versioned Copyright ©2011 Alfresco Software Inc.
  • 27. Content access Document Objects provide access to content streams and enable retrieval of renditions Document Rendition  Mime Type  Kind  Mime Type Content Stream  Stream Id
  • 28. Policy object A policy object represents an administrative policy that can be enforced by a repository  ACL (Access Control Lists)  Retention policies  Aspects in Alfresco
  • 29. Breaking down content silo's with CMIS CMIS SERVICES
  • 32. Breaking down content silo's with CMIS QUERY LANGUAGE
  • 33. Query language Based on SQL 92, with ECM extensions and support for metadata and full text  SELECT with a target list  FROM with the object types being queried  JOIN to perform a join between object types  WHERE with the predicate  IN and ANY to query multi-value properties  CONTAINS to specify a full-text qualification  IN_FOLDER to search children within a folder  IN_TREE to search within a folder hierarchy  ORDER BY to sort the results
  • 35. Non-strict queries Retrieve aspects in Alfresco SELECT d.*, t.*, a.* FROM cmis:document AS d JOIN cm:titled AS t ON d.cmis:objectId = t.cmis:objectId JOIN cm:author AS a ON d.cmis:objectId = a.cmis:objectId WHERE IN_FOLDER(d, 40312a4b-7767-4586-a58b-18d050ffe0ca') AND CONTAINS(d,'sample')
  • 36. Breaking down content silo's with CMIS PROTOCOL BINDINGS
  • 37. Requirements Neutral  Any Programming Language  Any Operating System  Any Environment Required  Web Service Client Library  HTTP Client Library There are client libraries available in all general languages including Java, PHP, .NET, JavaScript and Python
  • 38. Web Services /SOAP binding Service-oriented binding CMIS-specified XML schema Capable for system-to-system access Use MTOM to transfer content stream Recommend Basic Authentication and WS Security UsernameToken Transactional Applications
  • 39. REST / AtomPub binding Resource-based binding AtomPub format with OpenSearch and CMIS extensions Browse-able by standard Atom feed readers Suitable for RESTful-style application-to- system access Recommend HTTP Basic Authentication Web-based Applications
  • 40. Breaking down content silo's with CMIS FUTURE DIRECTIONS
  • 41. Future directions Browser binding (1.1) Secondary Object Types (1.1) Type Mutability (1.1) Retention policies Annotations
  • 42. Browser binding Simplify uploading documents from a browser application (e.g. using HTML Form) Simplify parsing (e.g. using JSON instead of XML) Does not require a JavaScript library Simplify construction of required object metadata (e.g. constructing links)
  • 43. Secondary object types Additional metadata has to be attached after the document has been created. Some common and crosscutting concepts such as tags, comments and ratings can be implemented with secondary types. Properties of secondary types can also reveal the status of an object.
  • 44. Type mutability CMIS Application needs to install its own metadata and uninstall if removed. CMIS Repository migration application would not only migrate documents from one repository to another; but would be able to migrate and preserve the metadata as well. General purpose Administration applications that allow administrators to author metadata for new systems.
  • 45. Retention policies The rules for retention policies on invoices are maintained in the ERP system When a fax image is attached to the invoice data in the ERP system, the ERP system  Creates the appropriate CMIS Policy for the retention if it does not already exist  Applies the CMIS Policy for the retention to the CMIS Document with the fax image CMIS
  • 46. Annotations Ability to create and retrieve annotations associated to documents:  To highlight a section of text  Pinpoint a specific item in an image  Provide a small note or comment during a particular stage within the process of the document's lifecycle
  • 47. Conclusion CMIS is a well designed standard It supports relevant use cases All big vendors are involved, although open source seems to be leading It remains to be seen if it will become as big as SQL
  • 48. Breaking down content silo's with CMIS QUESTIONS?

Editor's Notes

  1. When SQL was introduced the CEVA use case enabled the growth of enterprise business software like ERP