Protocole technique CMIS

Catégories Système d'information

Plusieurs applications peuvent gérer vos documents (via un outil de GED  – Gestion électronique de Documents) dans votre système d’information en fonction de la stratégie définie (plusieurs outils de GED dans le cadre d’une approche verticale ou un seul outil de GED dans le cadre d’une approche plus transversale).

En fonction toujours de la stratégie, il peut être nécessaire d’intégrer ces outils de gestion de documents (c’est-à-dire établir une communication entre ces applications) avec des applications métiers ou d’intégrer les différents outils de GED. Cela est possible via le protocole CMIS et l’objectif de cet article est de vous présenter de manière compréhensible ce qu’est le CMIS.

Le protocole CMIS (Content Management Interoperability Services) permet de gérer et manipuler les données / documents dans ces applications selon une approche interopérable. Pour rappel, l’interopérabilité désigne la capacité des systèmes à pouvoir communiquer et opérer ensemble. Les GED compatibles CMIS reposent donc sur un standard qui assure un niveau de communication avec les autres applications (ou niveau d’ouverture à communiquer avec d’autres outils).

Le CMIS décrit les services web qui sont utilisables pour manipuler les documents stockés dans les outils de GED. Exemples de fonctionnalités :

  • Lister les dossiers d’un plan de classement,
  • Lire les métadonnées d’un document
  • Voir les droits d’accès,

Les fonctionnalités du CMIS peuvent être complétées avec celles proposées par les API REST des applications.

Le CMIS repose sur plusieurs principes :

  • Repository (entrepôt) : Les documents et données sont stockés sous forme d’arbre, il faut donc parcourir les nœuds pour accéder aux éléments recherchés.
  • Des services sont utilisables pour accéder aux différentes « fonctionnalités » via SOAP ou Atom
  • Les requêtes sont basées sur SQL-92
  • Modèle d’objets : Des types prédéfinis sont associés aux objets

Pourquoi prendre en compte le protocole CMIS dans votre projet de gestion documentaire ?

  • Pérennisation et décloisonnement des applications qui gèrent ces documents,
  • Fédération des systèmes qui intègre le CMIS et ainsi centraliser l’information sans mettre en place un dispositif complexe sensé couvrir l’ensemble des besoins exprimés.

 

ANNEXE : Exemple de code qui reprend les principes associés au CMIS (en python) :

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#ADD FILEPATH IN ALFRESCO ECM INTO A CSV FILE

###LIB###
from cmislib import CmisClient, Repository, Folder
from cmislib.model import CmisId
from cmislib.exceptions import CmisException, UpdateConflictException
import os, sys, time
import csv
###END LIB###

###VAR###
URL=’http://127.0.0.1:8080/share/page/’ #Repository path
ID = « foo »
MDP = « bar »
###END VAR###

def main() :
     try:
         client = CmisClient(‘http://127.0.0.1:8080/alfresco/cmisatom’, ‘ID’, ‘MDP’)    #service CMIS Atom
          repo = client.defaultRepository
    except:
         « Error : Repo connection »
          quit()

     Image = repo.getObjectByPath(chemin[0:-1]) # LIST FILE IN DIR STORE IN ALFRESCO
     children = Image.getChildren()
     for elem in children :
         Appel des actions à appliquer pour chaque élément

if __name__ == « __main__ » : main()

 

#systèmes d'information / #transformation numérique / #transformation des organisations / #digitalisation des processus / #humanités digitales

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *