SlideShare uma empresa Scribd logo
1 de 34
CMIS in an
Interoperable World
      John Newton
     CTO, Alfresco
    AIIM Philadelphia
     March 26, 2009
Alfresco is…
Open           Open source, open standards
Source         Built with the latest, best-of-breed open
               source components
Enterprise     Enterprise-scale, enterprise-standards
Content        Content that runs the enterprise: Web,
               Office documents, rich media, images,
               records…
Management One of the most experienced enterprise
               software teams in the world
Agenda
    History of content management

    Classes of applications and problems

    A bigger pie?

    What is CMIS?

    Why not others?

    REST vs. SOAP

    Which standard is it?

    Before and After

    What could go wrong?

    What can go right?

    Where does it go from here?

    Joomla, Drupal, etc.

Challenges of Interoperability
    Up to dozens of ECM Systems with huge sunk

    cost
    Each ECM system is a silo

    Substantial operational and compliance risk to

    separate repositories
    System Integrators and Software Vendors need

    to write to very different APIs
    Previous standards failed to get adopted

  Yet there is a lot of commonality

 But there is “no adoptable standard”
What should a standard look like?
    Maps to existing systems

    Must play with major vendors systems

    Fit with behavior of the underlying system

    and little server logic
    Learn from previous successes

    Drive from real world use cases

    Keep it Simple Stupid!

    Build and learn

Standards Timeline
    1993 – ODMA

    1996 – DMA

    2002 – JSR-170

    2005 – iECM

    2005 – JSR-283

    Oct 2006 – CMIS

    August 2007 - Partner review begins

        Alfresco, EMC, IBM, Microsoft, Open Text, Oracle, and SAP
    
    October 2007 - Partner review complete

    December 2007 – Go to standards body

    2008 – Submission to OASIS

    2009 – Standard?

What is CMIS?
  Content Mgmt Interoperability Services

 SQL for Content Management
 Language Independent
 Target Content Apps and Collaboration
 New SQL query language
 Basic Operations thru REST and SOAP
 Simple Data Model
Goals of CMIS
    Create a new ecosystem for ECM

    Enable new classes of cross repo

    applications: eDiscovery, Publishing,
    Collaboration…
    Create a common understanding of ECM:

    Query, Inheritance, Properties, CRUD
    Versions, etc.
    To NOT expose ALL capabilities of a

    repository.
    To NOT expose admin/management

    functions.
Interoperable Content Application
                                                                        Application portability;
                                  (on any platform)
                                                                        Content reuse/integration


A mapping                                                                          Not all capabilities
                                       CMIS
interface;                                                                         of a repository are
                       (web-based, service-oriented interface)
Not a federation                                                                   necessarily
interface                                                                          exposed



         CMIS             CMIS             CMIS             CMIS                  CMIS         
     Implementation   Implementation   Implementation   Implementation        Implementation

                      DB2 Content
     Documentum                           FileNet       SharePoint              Alfresco
                       Manager



       Content &        Content &        Content &        Content &             Content &
       Metadata in      Metadata in      Metadata in      Metadata in           Metadata in
       Proprietary      Proprietary      Proprietary      Proprietary           Proprietary
          Form            Form             Form             Form                  Form

                                                                          9
Core Use Cases
    Collaborative Content Creation

        A set of users wish to work collaboratively to create one or more
    
        documents or web pages.
        Need: Authentication, Security, Versioning
    
    Portals

        Aggregated interface to viewing content from multiple sources.
    
        Need: Query
    
    Mash-ups

        Composite applications that integrates data/functionality from
    
        one or more sources.
        Need: Query, RESTful Access (call via URL)
    
    Search

        Support for “unified indexing” search engines
    
        Need: Change logs, ACL discovery
    
Use cases that can be built on top of
               CMIS
    Workflow & Business Process

    Management
        Need: Query, Reference-ability, ACL (SAP)
    
    Archival

        Need: Hi-volume ingestion
    
    Compound/virtual documents

        Need: Relationships, complex query
    
    E-Discovery

        Need: Query, Search, Hold
    
Not This Time
  Records Management

 Digital Asset Management
 Web Content Management
 Subscriptions / Notifications
 Aspects (Mixins)
 Tagging
Core Concepts of CMIS
  Object Types

 Object Identity
 Content Stream
 Query
 Versioning
 Folders and Hierarchy
 Relationships
 Services
A Flat Schema Model for Object
           Properties
CMIS-defined Properties        Repository/Application-defined Properties
  (Base Object Type)            (Added by implementation or subtype)




           Property

 Property attributes:name, type, single- or multi-valued, required,
                      updatability, queryability, etc.
 Property types:       string, decimal, integer, float, Boolean, datetime,
                       Object ID
                                                            14
Base Object Types
                                                           1             1
                                                                Source       Relationship Object Type
                             Data Objects                  1    Target   1
                                                                                  (not queryable,
                                   (virtual)               *                      not versionable)


                                                                     Child

                                                                     1
Document Object Type                                Folder Object Type
                               *                *
                                   Parent
(queryable, versionable, m                                (queryable,
                                               1                                 Note:
 ay have content stream)                                not versionable)
                                                                                 The relationship between
                                                                     *           Folder and Document is
                                                                                 many-to-many if
                                                    Parent
                                                                                 multi-filing is enabled.
                                                                                 Otherwise it is 1-to-many.


                  © Copyright 2007 by EMC, IBM, and Microsoft. All                 15
                                  rights reserved.
Versioning of Document Object
  Each version is a              Document objects that are
   separate object                 versions of each other
(has a separate OID)         (no history graph, only timestamp)

                                      Repository
                                                                    Given an OID, retrieve
                                                                    • the specific version
                                                                    • the current version
                                                                    • all versions
                                                                    Given an OID, delete
                                                                    • the specific version
                                                                    • all versions
                                            


                                                                             Current
                                                                             Version

                                                                             Non-Current
                                                                             Version

                 © Copyright 2007 by EMC, IBM, and Microsoft. All      16
                                 rights reserved.
Folders and Relationships
      Source                               Target
               Object Type Name
       Data                                 Data
      Object                               Object



                                  A folder object

                                  A document object

                                  A folder containment
                                  relationship




17
Query
Syntax                                                         Semantics
SQL-92 subset + Extensions for                                 SQL-92 + Extensions
  • Multi-valued property                                       + Relational View mapping
  • Fulltext search
  • Folder membership


                                                                         Relational View
                         Table(Object Type, Type Inheritance)
                         Row(Object)
                         Column(Property)

                                                                         CMIS Data Model
                           Object Type,Type Inheritance,
                           Object, Property, Content Stream,
                           Versioning



            © Copyright 2007 by EMC, IBM, and Microsoft. All                18
                            rights reserved.
Soap vs.and REST
    SOAP – Transactional Applications

      WSDL and Basic SOAP Faults
    
     WS-Security and WS-I compliance
     Base 64 encoded and MTOM content transfer
    REST – Web-based Applications

      Leverage ATOM and APP
    
     Authentication thru HTTP protocol
     Operations: Get, Post, Put for CRUD and
      Query
Common CMIS Data Representation
     Example:
     <resultSetxmlns=quot;http://www.cmis.org/ns/cmis10quot;>
     <object>
     <objectType>myDocumentType</objectType>
     <baseObjectType>document</baseObjectType>
     <objectId>DocumentAID</objectId>
     <uri>http://www.acme.com/001</uri>
     <createdBy>Cornelia Davis</createdBy>
     <creationDate>2007-06-30T12:29:29Z</creationDate>
     <lastModifiedBy>Cornelia Davis</lastModifiedBy>
     <lastModificationDate>2007-06-30T12:29:29Z</lastModificationDate>
     <name>My Document</name>
     <isCurrentVersion>true</isCurrentVersion>
     <isCheckedOut>false</isCheckedOut>
     <property name=quot;statusquot;>WIP</property>
     <property name=quot;keywordquot; index=quot;0quot;>XML</property>
     <property name=quot;keywordquot; index=quot;1quot;>standards</property>
     </object>
        ...
     </resultSet>


20                                       © Copyright 2007 by EMC, IBM, and Microsoft. All rights reserved.
Sea Mist
Alfresco’s CMIS
  First implementation based upon the 0.5

  Specification
 Supports both SOAP and REST protocols
 Basis for all future public APIs
 Used in integration with Drupal and
  Joomla
 Demonstrates Alfresco as a Content
  Services Platform as well as App
A Complete, Open Source Enterprise
     Content Mgmt System



        Image        Document
        Management   Management


                Content
               Repository
                Platform


        Records       Web Content
        Management    Management
Open Source Model Really Works
    1.5M downloads


    45,000 registered

    users
    30,000+ installations


    90 countries, 30

    languages
    800+ enterprise

    customers
    Major banks,

    governments, media
    and professional
    services
    Industry recognition

CMIS – Mash It Up!


Shared Drive   Portal        Web Page     Mash-ups     Mash-ups   Mash-ups   Office


                   URL, CMIS                                            CMIS, HTML, JSON
   URL                             HTML, ATOM, RSS, JSON

                             CMIS Dispatcher


                        Alfresco REST Infrastructure
                                             Rendition
    JavaScript
                                             Services

    Freemarker Templating                    Content
    Scripting Language                       Model
New Portlets and Apps
AIIM CMIS Demo
Drupal Integration
Joomla Integration
What Could Go Wrong?
  No one adopts it

 CMIS is not a good technical fit
 A big guy decides not to adopt it
 A big guy does an “embrace and extend”
 CMIS becomes irrelevant
What Could Go Right?
  Remember SQL-89 and SQL-92?

 Remember the recession of 1991?
 Remember the growth of the database
  industry?
 Remember client/server?
 Remember web applications?
Consistent Access Regardless of
           Repository




      32
Collaboration and Social
      Networking
CMIS
  The new SQL for content management

 Alfresco is the first CMIS implementation
 Alfresco is open source and free to try
 Get your “CMIS on a Stick” at Booth #542
 This presentation at
http://tinyurl.com/aiimjn09

Mais conteúdo relacionado

Mais procurados

Pal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schemaPal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schemaMustafa Jarrar
 
Pal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd'sPal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd'sMustafa Jarrar
 
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...Daniele Gianni
 
Pal gov.tutorial2.session1.xml basics and namespaces
Pal gov.tutorial2.session1.xml basics and namespacesPal gov.tutorial2.session1.xml basics and namespaces
Pal gov.tutorial2.session1.xml basics and namespacesMustafa Jarrar
 
M05 Metamodel
M05 MetamodelM05 Metamodel
M05 MetamodelDang Tuan
 
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issuesPal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issuesMustafa Jarrar
 
Pal gov.tutorial2.session0.outline
Pal gov.tutorial2.session0.outlinePal gov.tutorial2.session0.outline
Pal gov.tutorial2.session0.outlineMustafa Jarrar
 
Summer Training In Dotnet
Summer Training In DotnetSummer Training In Dotnet
Summer Training In DotnetDUCC Systems
 
JNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLJNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLKumar
 
M.c.a. (sem iv)- java programming
M.c.a. (sem   iv)- java programmingM.c.a. (sem   iv)- java programming
M.c.a. (sem iv)- java programmingPraveen Chowdary
 
Applying Semantic Extensions And New Services To Drupal Sem Tech June 2010
Applying Semantic Extensions And New Services To Drupal   Sem Tech June 2010Applying Semantic Extensions And New Services To Drupal   Sem Tech June 2010
Applying Semantic Extensions And New Services To Drupal Sem Tech June 2010AI4BD GmbH
 
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdfPal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdfMustafa Jarrar
 
Pal gov.tutorial2.session11.oracle
Pal gov.tutorial2.session11.oraclePal gov.tutorial2.session11.oracle
Pal gov.tutorial2.session11.oracleMustafa Jarrar
 
C:\fakepath\buildingblock bbmanifest
C:\fakepath\buildingblock bbmanifestC:\fakepath\buildingblock bbmanifest
C:\fakepath\buildingblock bbmanifestdil12345
 

Mais procurados (20)

Pal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schemaPal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schema
 
Pal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd'sPal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd's
 
ACE Logo
ACE LogoACE Logo
ACE Logo
 
JavaYDL19
JavaYDL19JavaYDL19
JavaYDL19
 
7494608
74946087494608
7494608
 
Pocket java
Pocket javaPocket java
Pocket java
 
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...
The DEVS-Driven Modeling Language: Syntax and Semantics Definition by Meta-Mo...
 
Pal gov.tutorial2.session1.xml basics and namespaces
Pal gov.tutorial2.session1.xml basics and namespacesPal gov.tutorial2.session1.xml basics and namespaces
Pal gov.tutorial2.session1.xml basics and namespaces
 
M05 Metamodel
M05 MetamodelM05 Metamodel
M05 Metamodel
 
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issuesPal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
 
Pal gov.tutorial2.session0.outline
Pal gov.tutorial2.session0.outlinePal gov.tutorial2.session0.outline
Pal gov.tutorial2.session0.outline
 
Summer Training In Dotnet
Summer Training In DotnetSummer Training In Dotnet
Summer Training In Dotnet
 
JNDI, JMS, JPA, XML
JNDI, JMS, JPA, XMLJNDI, JMS, JPA, XML
JNDI, JMS, JPA, XML
 
Oop
OopOop
Oop
 
M.c.a. (sem iv)- java programming
M.c.a. (sem   iv)- java programmingM.c.a. (sem   iv)- java programming
M.c.a. (sem iv)- java programming
 
Applying Semantic Extensions And New Services To Drupal Sem Tech June 2010
Applying Semantic Extensions And New Services To Drupal   Sem Tech June 2010Applying Semantic Extensions And New Services To Drupal   Sem Tech June 2010
Applying Semantic Extensions And New Services To Drupal Sem Tech June 2010
 
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdfPal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
 
Pal gov.tutorial2.session11.oracle
Pal gov.tutorial2.session11.oraclePal gov.tutorial2.session11.oracle
Pal gov.tutorial2.session11.oracle
 
C:\fakepath\buildingblock bbmanifest
C:\fakepath\buildingblock bbmanifestC:\fakepath\buildingblock bbmanifest
C:\fakepath\buildingblock bbmanifest
 
Core java questions
Core java questionsCore java questions
Core java questions
 

Semelhante a CMIS and Interoperability - AIIM 2009

FISL: Content Management Primer
FISL: Content Management PrimerFISL: Content Management Primer
FISL: Content Management PrimerRichard Esplin
 
Silicon valley nosql meetup april 2012
Silicon valley nosql meetup  april 2012Silicon valley nosql meetup  april 2012
Silicon valley nosql meetup april 2012InfiniteGraph
 
Open text content lifecycle management 2010
Open text content lifecycle management 2010Open text content lifecycle management 2010
Open text content lifecycle management 2010Carlo M
 
Best Practices to create High Load Websites
Best Practices to create High Load WebsitesBest Practices to create High Load Websites
Best Practices to create High Load WebsitesManfred Furuholmen
 
PLAT-1 CMIS in the Real World
PLAT-1 CMIS in the Real WorldPLAT-1 CMIS in the Real World
PLAT-1 CMIS in the Real WorldAlfresco Software
 
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011Cloudera, Inc.
 
Intergen Twilight - Corralling the Document Chaos
Intergen Twilight - Corralling the Document ChaosIntergen Twilight - Corralling the Document Chaos
Intergen Twilight - Corralling the Document ChaosIntergen
 
ALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 WorldALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 Worldoslc
 
Federated ECM Search with CMIS
Federated ECM Search with CMISFederated ECM Search with CMIS
Federated ECM Search with CMISAlfresco Software
 
On demand access to Big Data through Semantic Technologies
 On demand access to Big Data through Semantic Technologies On demand access to Big Data through Semantic Technologies
On demand access to Big Data through Semantic TechnologiesPeter Haase
 
Gilbane SF - Content Convergence Strategies
Gilbane SF - Content Convergence StrategiesGilbane SF - Content Convergence Strategies
Gilbane SF - Content Convergence StrategiesEric Barroca
 
Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Tail-f Systems
 
DrupalCamp ATL 2010: Not all CMSs are created equal
DrupalCamp ATL 2010: Not all CMSs are created equalDrupalCamp ATL 2010: Not all CMSs are created equal
DrupalCamp ATL 2010: Not all CMSs are created equalandrewmriley
 
Inaugural address manjusha - Indicthreads cloud computing conference 2011
Inaugural address manjusha -  Indicthreads cloud computing conference 2011Inaugural address manjusha -  Indicthreads cloud computing conference 2011
Inaugural address manjusha - Indicthreads cloud computing conference 2011IndicThreads
 
94670552 alfresco-aiim-2006-05-16
94670552 alfresco-aiim-2006-05-1694670552 alfresco-aiim-2006-05-16
94670552 alfresco-aiim-2006-05-16hishamfire
 
Oracle unified directory_11g
Oracle unified directory_11gOracle unified directory_11g
Oracle unified directory_11gOracleIDM
 
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data Services
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data ServicesSharePoint 2010 Managed Metadata vs SQL 2012 Master Data Services
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data ServicesHenry Ong
 

Semelhante a CMIS and Interoperability - AIIM 2009 (20)

FISL: Content Management Primer
FISL: Content Management PrimerFISL: Content Management Primer
FISL: Content Management Primer
 
IT Governance Portals
IT Governance   PortalsIT Governance   Portals
IT Governance Portals
 
Silicon valley nosql meetup april 2012
Silicon valley nosql meetup  april 2012Silicon valley nosql meetup  april 2012
Silicon valley nosql meetup april 2012
 
Open text content lifecycle management 2010
Open text content lifecycle management 2010Open text content lifecycle management 2010
Open text content lifecycle management 2010
 
Best Practices to create High Load Websites
Best Practices to create High Load WebsitesBest Practices to create High Load Websites
Best Practices to create High Load Websites
 
CMIS is here, did you know?
CMIS is here, did you know?CMIS is here, did you know?
CMIS is here, did you know?
 
PLAT-1 CMIS in the Real World
PLAT-1 CMIS in the Real WorldPLAT-1 CMIS in the Real World
PLAT-1 CMIS in the Real World
 
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011
Hadoop in the Enterprise - Dr. Amr Awadallah @ Microstrategy World 2011
 
Intergen Twilight - Corralling the Document Chaos
Intergen Twilight - Corralling the Document ChaosIntergen Twilight - Corralling the Document Chaos
Intergen Twilight - Corralling the Document Chaos
 
ALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 WorldALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 World
 
Federated ECM Search with CMIS
Federated ECM Search with CMISFederated ECM Search with CMIS
Federated ECM Search with CMIS
 
Lotus Notes to SharePoint Migration
Lotus Notes to SharePoint MigrationLotus Notes to SharePoint Migration
Lotus Notes to SharePoint Migration
 
On demand access to Big Data through Semantic Technologies
 On demand access to Big Data through Semantic Technologies On demand access to Big Data through Semantic Technologies
On demand access to Big Data through Semantic Technologies
 
Gilbane SF - Content Convergence Strategies
Gilbane SF - Content Convergence StrategiesGilbane SF - Content Convergence Strategies
Gilbane SF - Content Convergence Strategies
 
Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View
 
DrupalCamp ATL 2010: Not all CMSs are created equal
DrupalCamp ATL 2010: Not all CMSs are created equalDrupalCamp ATL 2010: Not all CMSs are created equal
DrupalCamp ATL 2010: Not all CMSs are created equal
 
Inaugural address manjusha - Indicthreads cloud computing conference 2011
Inaugural address manjusha -  Indicthreads cloud computing conference 2011Inaugural address manjusha -  Indicthreads cloud computing conference 2011
Inaugural address manjusha - Indicthreads cloud computing conference 2011
 
94670552 alfresco-aiim-2006-05-16
94670552 alfresco-aiim-2006-05-1694670552 alfresco-aiim-2006-05-16
94670552 alfresco-aiim-2006-05-16
 
Oracle unified directory_11g
Oracle unified directory_11gOracle unified directory_11g
Oracle unified directory_11g
 
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data Services
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data ServicesSharePoint 2010 Managed Metadata vs SQL 2012 Master Data Services
SharePoint 2010 Managed Metadata vs SQL 2012 Master Data Services
 

Último

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Último (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

CMIS and Interoperability - AIIM 2009

  • 1. CMIS in an Interoperable World John Newton CTO, Alfresco AIIM Philadelphia March 26, 2009
  • 2. Alfresco is… Open Open source, open standards Source Built with the latest, best-of-breed open source components Enterprise Enterprise-scale, enterprise-standards Content Content that runs the enterprise: Web, Office documents, rich media, images, records… Management One of the most experienced enterprise software teams in the world
  • 3. Agenda History of content management  Classes of applications and problems  A bigger pie?  What is CMIS?  Why not others?  REST vs. SOAP  Which standard is it?  Before and After  What could go wrong?  What can go right?  Where does it go from here?  Joomla, Drupal, etc. 
  • 4. Challenges of Interoperability Up to dozens of ECM Systems with huge sunk  cost Each ECM system is a silo  Substantial operational and compliance risk to  separate repositories System Integrators and Software Vendors need  to write to very different APIs Previous standards failed to get adopted  Yet there is a lot of commonality   But there is “no adoptable standard”
  • 5. What should a standard look like? Maps to existing systems  Must play with major vendors systems  Fit with behavior of the underlying system  and little server logic Learn from previous successes  Drive from real world use cases  Keep it Simple Stupid!  Build and learn 
  • 6. Standards Timeline 1993 – ODMA  1996 – DMA  2002 – JSR-170  2005 – iECM  2005 – JSR-283  Oct 2006 – CMIS  August 2007 - Partner review begins  Alfresco, EMC, IBM, Microsoft, Open Text, Oracle, and SAP  October 2007 - Partner review complete  December 2007 – Go to standards body  2008 – Submission to OASIS  2009 – Standard? 
  • 7. What is CMIS? Content Mgmt Interoperability Services   SQL for Content Management  Language Independent  Target Content Apps and Collaboration  New SQL query language  Basic Operations thru REST and SOAP  Simple Data Model
  • 8. Goals of CMIS Create a new ecosystem for ECM  Enable new classes of cross repo  applications: eDiscovery, Publishing, Collaboration… Create a common understanding of ECM:  Query, Inheritance, Properties, CRUD Versions, etc. To NOT expose ALL capabilities of a  repository. To NOT expose admin/management  functions.
  • 9. Interoperable Content Application Application portability; (on any platform) Content reuse/integration A mapping Not all capabilities CMIS interface; of a repository are (web-based, service-oriented interface) Not a federation necessarily interface exposed CMIS CMIS CMIS CMIS CMIS  Implementation Implementation Implementation Implementation Implementation DB2 Content Documentum FileNet SharePoint Alfresco Manager Content & Content & Content & Content & Content & Metadata in Metadata in Metadata in Metadata in Metadata in Proprietary Proprietary Proprietary Proprietary Proprietary Form Form Form Form Form 9
  • 10. Core Use Cases Collaborative Content Creation  A set of users wish to work collaboratively to create one or more  documents or web pages. Need: Authentication, Security, Versioning  Portals  Aggregated interface to viewing content from multiple sources.  Need: Query  Mash-ups  Composite applications that integrates data/functionality from  one or more sources. Need: Query, RESTful Access (call via URL)  Search  Support for “unified indexing” search engines  Need: Change logs, ACL discovery 
  • 11. Use cases that can be built on top of CMIS Workflow & Business Process  Management Need: Query, Reference-ability, ACL (SAP)  Archival  Need: Hi-volume ingestion  Compound/virtual documents  Need: Relationships, complex query  E-Discovery  Need: Query, Search, Hold 
  • 12. Not This Time Records Management   Digital Asset Management  Web Content Management  Subscriptions / Notifications  Aspects (Mixins)  Tagging
  • 13. Core Concepts of CMIS Object Types   Object Identity  Content Stream  Query  Versioning  Folders and Hierarchy  Relationships  Services
  • 14. A Flat Schema Model for Object Properties CMIS-defined Properties Repository/Application-defined Properties (Base Object Type) (Added by implementation or subtype) Property Property attributes:name, type, single- or multi-valued, required, updatability, queryability, etc. Property types: string, decimal, integer, float, Boolean, datetime, Object ID 14
  • 15. Base Object Types 1 1 Source Relationship Object Type Data Objects 1 Target 1 (not queryable, (virtual) * not versionable) Child 1 Document Object Type Folder Object Type * * Parent (queryable, versionable, m (queryable, 1 Note: ay have content stream) not versionable) The relationship between * Folder and Document is many-to-many if Parent multi-filing is enabled. Otherwise it is 1-to-many. © Copyright 2007 by EMC, IBM, and Microsoft. All 15 rights reserved.
  • 16. Versioning of Document Object Each version is a Document objects that are separate object versions of each other (has a separate OID) (no history graph, only timestamp) Repository Given an OID, retrieve • the specific version • the current version • all versions Given an OID, delete • the specific version • all versions  Current Version Non-Current Version © Copyright 2007 by EMC, IBM, and Microsoft. All 16 rights reserved.
  • 17. Folders and Relationships Source Target Object Type Name Data Data Object Object A folder object A document object A folder containment relationship 17
  • 18. Query Syntax Semantics SQL-92 subset + Extensions for SQL-92 + Extensions • Multi-valued property + Relational View mapping • Fulltext search • Folder membership Relational View Table(Object Type, Type Inheritance) Row(Object) Column(Property) CMIS Data Model Object Type,Type Inheritance, Object, Property, Content Stream, Versioning © Copyright 2007 by EMC, IBM, and Microsoft. All 18 rights reserved.
  • 19. Soap vs.and REST SOAP – Transactional Applications  WSDL and Basic SOAP Faults   WS-Security and WS-I compliance  Base 64 encoded and MTOM content transfer REST – Web-based Applications  Leverage ATOM and APP   Authentication thru HTTP protocol  Operations: Get, Post, Put for CRUD and Query
  • 20. Common CMIS Data Representation Example: <resultSetxmlns=quot;http://www.cmis.org/ns/cmis10quot;> <object> <objectType>myDocumentType</objectType> <baseObjectType>document</baseObjectType> <objectId>DocumentAID</objectId> <uri>http://www.acme.com/001</uri> <createdBy>Cornelia Davis</createdBy> <creationDate>2007-06-30T12:29:29Z</creationDate> <lastModifiedBy>Cornelia Davis</lastModifiedBy> <lastModificationDate>2007-06-30T12:29:29Z</lastModificationDate> <name>My Document</name> <isCurrentVersion>true</isCurrentVersion> <isCheckedOut>false</isCheckedOut> <property name=quot;statusquot;>WIP</property> <property name=quot;keywordquot; index=quot;0quot;>XML</property> <property name=quot;keywordquot; index=quot;1quot;>standards</property> </object> ... </resultSet> 20 © Copyright 2007 by EMC, IBM, and Microsoft. All rights reserved.
  • 22. Alfresco’s CMIS First implementation based upon the 0.5  Specification  Supports both SOAP and REST protocols  Basis for all future public APIs  Used in integration with Drupal and Joomla  Demonstrates Alfresco as a Content Services Platform as well as App
  • 23. A Complete, Open Source Enterprise Content Mgmt System Image Document Management Management Content Repository Platform Records Web Content Management Management
  • 24. Open Source Model Really Works 1.5M downloads  45,000 registered  users 30,000+ installations  90 countries, 30  languages 800+ enterprise  customers Major banks,  governments, media and professional services Industry recognition 
  • 25. CMIS – Mash It Up! Shared Drive Portal Web Page Mash-ups Mash-ups Mash-ups Office URL, CMIS CMIS, HTML, JSON URL HTML, ATOM, RSS, JSON CMIS Dispatcher Alfresco REST Infrastructure Rendition JavaScript Services Freemarker Templating Content Scripting Language Model
  • 30. What Could Go Wrong? No one adopts it   CMIS is not a good technical fit  A big guy decides not to adopt it  A big guy does an “embrace and extend”  CMIS becomes irrelevant
  • 31. What Could Go Right? Remember SQL-89 and SQL-92?   Remember the recession of 1991?  Remember the growth of the database industry?  Remember client/server?  Remember web applications?
  • 32. Consistent Access Regardless of Repository 32
  • 34. CMIS The new SQL for content management   Alfresco is the first CMIS implementation  Alfresco is open source and free to try  Get your “CMIS on a Stick” at Booth #542  This presentation at http://tinyurl.com/aiimjn09