Cmis Phpug

1,695 views

Published on

PHPUG Rheinhessen Vortrag

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,695
On SlideShare
0
From Embeds
0
Number of Embeds
212
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Cmis Phpug

  1. 1. C ontent M anagement I nteroperability S ervices Ein flexibler und plattformübergreifender Standard für ECM Systeme Lukas Giebel
  2. 2. Überblick <ul><li>ECM Systeme </li></ul><ul><ul><li>Motivation </li></ul></ul><ul><ul><li>Eigenschaften </li></ul></ul><ul><li>CMIS Standard </li></ul><ul><ul><li>Motivation </li></ul></ul><ul><ul><li>Übersicht </li></ul></ul><ul><ul><li>Eigenschaften </li></ul></ul><ul><li>Beispiele in PHP </li></ul><ul><ul><li>CMIS PHPLIB </li></ul></ul>
  3. 3. ECM Motivation Firma XY Erfassung Bereitstellung Verarbeitung Archivierung <ul><li>Probleme </li></ul><ul><li>großes Aufkommen von Dokumenten </li></ul><ul><li>schwierig zu Kontrollieren bzw. zu Verwalten </li></ul><ul><li>benötigt viele Ressourcen (Zeit, Personal, Material, ...) </li></ul>Aktionen im Unternehmen:
  4. 4. ECM Systeme <ul><li>Idee des papierlosen Büros </li></ul><ul><li>Akronym „ECMS“: </li></ul><ul><li>E nterprise C ontent </li></ul><ul><li>M anagement S ystem </li></ul><ul><li>ECM != CMS </li></ul>Definition nach AIIM International: Enterprise-Content-Management umfasst die Technologie zur Erfassung , Verwaltung , Speicherung , Bewahrung und Bereitstellung von Content und Dokumenten zur Unterstützung organisatorischer Prozesse. Dabei steht Enterprise für eine im Unternehmensbereich nutzbare Lösung, Content für beliebige elektronische Inhalte und Management für Verwaltung und Kontrolle eines Systems. (Quelle: aiim.org)
  5. 5. CMIS Motivation <ul><li>Problem: </li></ul><ul><li>Viele Anbieter mit verschiedenen ECMS </li></ul><ul><li>Die ECMS besitzen meist properitäre Schnittstellen </li></ul><ul><li>ECMS sind meist inkompatibel zueinander </li></ul><ul><li>Konsequenz: </li></ul><ul><li>Hoher Aufwand bei der Zusammenführung von Daten aus unterschiedlichen ECMS </li></ul><ul><li>Umständliche Nutzung/Integration von verschiedenen ECMS </li></ul><ul><li>Lösung: </li></ul><ul><li>Einheitliche Kommunikationsform durch Einführung eines Standards </li></ul>
  6. 6. CMIS Standard <ul><li>Allgemeines </li></ul><ul><li>Content Management Interoperability Services </li></ul><ul><li>OASIS Gremium (Adobe, Alfresco, Microsoft, OpenText, Oracle, SAP, ...) </li></ul><ul><li>Spezifikation aktuell in Version 1.0 </li></ul><ul><li>(http://docs.oasis-open.org/cmis/CMIS/v1.0/os/cmis-spec-v1.0.html) </li></ul><ul><li>Spezifikation </li></ul><ul><li>Datenmodell (Dokumente, Ordner, ...) </li></ul><ul><li>Dienste (generische Schnittstelle) </li></ul><ul><li>Query Language (Anfragen gegen das Datenmodell) </li></ul><ul><li>Bindings (SOAP, RESTful Atompub) </li></ul>
  7. 7. CMIS Datenmodell <ul><li>Erweiterbare Objekttypen wie Folder, Document, Policy, Relationship </li></ul><ul><li>Typen besitzen eine Sammlung von fest definierten Eigenschaften </li></ul><ul><li>Objekttypen können um Eigenschaften erweitert werden </li></ul><ul><li>ACL bzw. ACE können definiert werden </li></ul><ul><li>ObjectType </li></ul><ul><li>typId </li></ul><ul><li>baseTypeId </li></ul><ul><li>queryName </li></ul><ul><li>parentId </li></ul><ul><li>fulltextIndexed </li></ul><ul><li>... </li></ul>Document Folder Relationship Policy Content Stream Rendition <ul><li>Property </li></ul><ul><li>propertyId </li></ul><ul><li>queryName </li></ul><ul><li>propertyType </li></ul><ul><li>required </li></ul><ul><li>defaultValue </li></ul><ul><li>... </li></ul>
  8. 8. CMIS Dienste <ul><li>Repository-Dienste Informationen über das Repository und Objekttypen </li></ul><ul><li>getRepositoryInfo, getTypeChildren, getTypeDefinition, ... </li></ul><ul><li>Navigations-Dienste Navigation durch die Ordnerhierarchie </li></ul><ul><li>getChildren, getObject, getCheckedOutDocs, ... </li></ul><ul><li>Objekt-Dienste CRUD (Create, Retrieve, Update, Delete) Operationen </li></ul><ul><li>getContentStream, createDocument, ... </li></ul><ul><li>Versionierungs-Dienste Ein - und Auschecken von Dokumenten </li></ul><ul><li>checkIn, checkout, cancelCheckIn, ... </li></ul><ul><li>Query-Dienst Query-Anfragen gegen das Datenmodell stellen </li></ul>
  9. 9. CMIS Query Language <ul><li>Allgemeines </li></ul><ul><li>Basiert auf dem SQL-92 Standard </li></ul><ul><li>Erlaubt spezifische Suche nach Dokumenten </li></ul><ul><li>Volltextsuche und JOIN-Ausdrücke möglich </li></ul>SQL-Anfrage: <ul><li>SELECT cmis:creationDate FROM objekttyp WHERE cmis:versionLabel IN(1,2,3) </li></ul><ul><li>Spalte entspricht einer Eigenschaft eines Objekts </li></ul><ul><li>Tabelle entspricht dem Objekttyp </li></ul><ul><li>Zeile entspricht einem Objekt </li></ul>
  10. 10. CMIS in PHP <ul><li>CMIS PHP-Client Programming Library </li></ul><ul><li>http://code.google.com/p/cmis-php-client-programming/ </li></ul><ul><li>CMIS PHP LIB </li></ul><ul><li>http://code.google.com/p/cmis-phplib </li></ul><ul><li>Drupal CMIS Modul </li></ul><ul><li>http://drupal.org/project/cmis </li></ul><ul><li>Alfresco ECM System (GPL) </li></ul><ul><li>http://www.alfresco.com </li></ul>

×