Content Interactive Delivery

Content Interactive Delivery (CID) est une proposition de protocole dont l'enjeu est d'encadrer les transactions de documents et/ou de métadonnées entre deux systèmes. L'enjeu est de proposer une surcouche d'information et de décision au dessus des modalités d'échanges (requêtes HTTP, FTP, etc. correspondant à la couche applicative du modèle ISO) afin de permettre à deux systèmes de choisir les modalités d'une interaction.

Le principe du protocole consiste à imposer à un serveur de décrire ses processus fonctionnels et les modalités de transport acceptées au sein d'un manifeste librement accessible par une requête HTTP. Un client peut donc récupérer le manifeste, l'interpréter et sélectionner un processus fonctionnel (téléversement, mise à jour, sélection d'un fichier distant, etc.) et les modalités de transport l'accompagnant (par exemple, une requête HTTP POST avec des métadonnées stockées dans un formulaire).

La définition d'un processus fonctionnel se fait en définissant des métadonnées et des étapes (facultatives ou non) à enchaîner. Ces étapes peuvent être un simple échange de données (exchange), le téléversement d'un fichier (upload) ou une interaction entre le serveur et l'usager du client (interact).

La couche transport peut en principe définir plusieurs modalités de transport mais seul le transport web (requêtes HTTP) est défini dans le cœur du protocole.

La conception du protocole est prévue pour être enrichie par de nouvelles modalités de transport permettant de définir l'usage d'autres protocoles (FTP, SSH, etc.).

Cette section présente les développements réalisés autour du protocole CID. Une première section est dédiée au modèle du manifeste, une seconde à la partie client développée dans Scenari et une troisième et dernière dédiée au client et aux serveurs génériques développés comme démonstrateurs.