CMIS + Documentum Web Services Integrations, Extensions and Mash-Ups... But Which Should You Use When? Ameet Jani 12.11.2009 Process based services (xCP)
Goal for Today See how Documentum’s web services pulls together CMIS for standards based interoperability and integrations, DFS for building and extending your client applications, and RESTful services for Rich Internet Application mash-ups.
Technical Detail of each service Overview Web Service Technical Detail of each service Roadmap Examples Ideal use case
Principal Product Manager About your Presenters AMEET JANI Principal Product Manager The son of Zeus and Hera. He is also the product manager for Web Services at Documentum, including DFS and CMIS services; He has been with EMC since 2007.
Enterprise Content Services Overview DOCUMENTUM WEB SERVICES DOCUMENTUM FOUNDATION SERVICES REST based services Exposes functionality as Resources DOCUMENTUM RESTful SERVICES CMIS Documentum’s existing Web Services API Rich set of functionality Interoperability standard for ECM Allows for basic operations on content > Mention RESTful services
Services Architecture Centerstage Media Workspace Custom C# App DOCUMENTUM PLATFORM Documentum Foundation Services & CMIS Documentum Foundation Classes Content Server FILE STORE RDBMS FULL TEXT XML STORE
Enterprise Content Services Overview DOCUMENTUM WEB SERVICES DOCUMENTUM FOUNDATION SERVICES REST based services Exposes functionality as Resources DOCUMENTUM RESTful SERVICES CMIS SOAP/WSDL based Provides out of the box services to quickly build applications Interoperability standard for ECM Allows for basic operations on content > Mention RESTful services
Documentum Foundation Services Exposing Documentum Functionality as Services: Schema Service Data Dictionary Support Object Service create, update, delete, copy, move,etc. Version Control Service checkin, checkout, cancelCheckout, etc Query Service Search Service supports multiple repositories Workflow Service startProcess, getProcessInfo, etc Exposes APIs as Web Services Content Services delivered first Deconstruct functionality and re-aggregate APIs at higher level Standards-based interface Greatly shortens time to develop Easily content-enable applications Documentum Foundation Services
Full Documentum Functionality Access Control Service create, update, delete, get ACL Lifecycle Service attach, detach, execute, getLifecycle Virtual Document Service create, retrieve, addChildren, etc. Query Store Service saveQuery, loadSavedQuery, etc. Task Management Service start, stop, release, suspend, etc. Comment Service create, enum, markRead, markUnread, etc. Analytics Service analyze Content Delivery Service publish, ingest, etc Profile Service (CTS) add, get, remove, update, etc. Transformation Service transformJob, addJob, deleteJob, etc. Policy Service apply, remove, getAppliedPolicies, etc. Electronic Signature Service add, verify ERP Integration Services executeAction, executeAgent, etc. Formal Record Service createFormalRecord, declare, etc.
DFS Technology Documentum Foundation Services are SOAP-based services { DataObject(folderIdentity, "dm_folder"); PropertySet properties = new PropertySet(); String folderName = "aTestFolder“; properties.set("object_name", folderName); dataObject.setProperties(properties); DataPackage dataPackage = new DataPackage(dataObject); return objectService.create(dataPackage, operationOptions); }
Short-term Long-term What’s Next for DFS? Administration services Collaboration services Search services XML services BPM services Long-term “xCP services” Business services Easy composition of services
Ideal DFS Usage Characteristics Documentum Foundation Services are ideal for System to System integration Strongly typed languages Applications that need an explicit contract WSDL, policies, security Example Applications Business Process Management
Enterprise Content Services Overview DOCUMENTUM WEB SERVICES DOCUMENTUM FOUNDATION SERVICES REST based services Exposes functionality as Resources DOCUMENTUM RESTful SERVICES CMIS SOAP/WSDL based Provides out of the box services to quickly build applications Interoperability standard for ECM Allows for basic operations on content > Mention RESTful services
Documentum RESTful Services It is a new RESTful HTTP interface to Documentum The Documentum REST API builds on the DFS conceptual model and semantics It supports XML and JSON resource representation Any Language with HTTP and XML or JSON capability could consume the REST API
RESTful Service Example Top resource is Repositories http://server/resources/core/repositories.xml <core:representation> <core:repository href="http://server/resources/core/repositories/TaskSpace.xml"> <core:name>TaskSpace</core:name> <core:repositoryType>managed</core:repositoryType> <core:uri> http://server/resources/core/repositories/TaskSpace.xml </core:uri> <core:objects href="http://server/resources/core/repositories/TaskSpace/objects.xml"/> <core:folders href="http://server/resources/core/repositories/TaskSpace/folders.xml"/> <core:queries href="http://server/resources/core/repositories/TaskSpace/queries.xml"/> <core:types href="http://server/resources/core/repositories/TaskSpace/types.xml"/> </core:repository> </core:representation>
Documentum RESTful Services Core Resources Objects Repositories Folders Folder Repository Queries Query Versions Types Type Object RelationshipTypes relationshipType Formats Format Relationships Users User Relationship Groups Group Content Checkedout
RESTful copies the Internet Linking Model Internet action follows concept of “linking” Bank Account Balance History
Documentum RESTful Services Today: “Core” RESTful resources available on Early Access community on EMC Community Basic Content Management functionality Tomorrow: Customer feedback to update services More product functionality exposed as RESTful services xCP BPM Important note: Goal is not parity between DFS and REST. Often, these services serve very different purposes
Ideal RESTful Usage Characteristics RESTful Services are ideal for System to Application integration Dynamic Languages Applications that can discover next resource Example Applications Mobile Clients
Enterprise Content Services Overview DOCUMENTUM WEB SERVICES DOCUMENTUM FOUNDATION SERVICES REST based services Exposes functionality as Resources DOCUMENTUM RESTful SERVICES CMIS SOAP/WSDL based Provides out of the box services to quickly build applications Interoperability standard for ECM Allows for basic operations on content > Mention RESTful services
Content Management Interoperability Standard Web services standard for exchanging content with multiple Enterprise Content Management (ECM) systems Oasis standard currently v0.9 spec EMC, IBM, Microsoft founding members OpenText, Alfresco, SAP, Oracle, etc invited to join Tech Pubs Engineering Sales
CMIS Value CMIS functionality includes: Create, Read, Update and Delete Security CMIS includes both a SOAP and REST interface for developers
Ideal CMIS Usage Characteristics Interoperability
Documentum Services and CMIS DFS: Rich security model ACLs Workflows of content stored in Documentum Collaboration Services XML Full Text Search Compliance Interactive Media ERP CMIS Basic object svcs Read, write Basic security model
Four Main Use Cases of CMIS Multi-Repository Application + ECM Integration Build Once, Use Often Migration
Four Main Use Cases of CMIS Multi-Repository Typical User: Corporate IT An organization that has multiple types of repositories Acquisitions, homegrown ECMs, intra-departmental Some content stored in multiple places, need to consolidate into one place
Four Main Use Cases of CMIS Application + ECM Integration Typical User: Application Developer Combine Content with Business Data Example: Combine Invoice number stored in SAP ERP system with invoice stored in ECM
Four Main Use Cases of CMIS Build Once, Use Often Typical User: System Integrations (e.g. Capgemini) System Integrator builds ECM Solution they want to reuse at many customers, regardless of customer ECM choice
Four Main Use Cases of CMIS Migration Typical User: Documentum Administrator Need to migrate content from multiple ECM systems into one Any CMIS supported vendor can read content from another CMIS vendor into their local ECM system
Documentum usage of CMIS Title Month Year Documentum usage of CMIS Virtual Content Management uses CMIS to find content in other repositories and put retention rules through Documentum DOCUMENTUM CLIENT Documentum acts as a “master” repository – a centralized view of all content DCTM CMIS Adapter Content continues to be stored in local CMIS - supported repositories
Documentum web services layer Summary Documentum web services layer SOAP Server based applications WSDL is an explicit contract Such as messages, operations, bindings, and location of the web service. Not restricted to HTTP protocol (applicable for Java/ .NET) Documentum REST API Client application (Requires less client-side software to be written) Simple CRUD type of application No resource discovery mechanism required (hyperlinks in resources) SOAP REST CMIS CMIS CMIS is about interoperability Content collaboration / aggregation; BCS Basic content services (CRUD+ Query) ISV applications that plug into multiple repositories
Get Active in the EMC CMA Communities WHY? Collaborate and share best practices Network with other innovators across the globe, 24/7 Help shape the direction of EMC products Join Now!! community.EMC.com/go/Documentum community.EMC.com/go/SourceOne developer.EMC.com/Documentum developer.EMC.com/XMLtech
Thank you