4
Sommario
Indice delle figure ... 8
1. Introduzione alla problematica ... 12
1.1 Sistemi di document workflow ... 13
1.2 L’infrastruttura CART... 14
1.3 Obiettivi della tesi ... 16
2. Sistemi di gestione del contenuto ... 17
2.1 Terminologia ... 17
2.2.1 Electronic Document Management ... 18
2.2.2 Document Image ... 18
2.2.3 Digital Asset Management ... 18
2.2.4 Shared Drives ... 18
2.2.5 Version Control ... 19
2.2.6 Records Management ... 19
2.2.7 Collaborative Project Management Tools... 19
2.2.8 Knowledge Management ... 20
2.2.9 Web Content Management System ... 20
2.2.10 Document Management System ... 21
2.2.11 Enterprise Content Management ... 21
2.2 Prodotti conosciuti ... 23
2.2.1 Alfresco ... 23
2.2.2 Drupal ... 26
2.2.3 Joomla ... 26
2.2.4 DoQui ... 27
2.2.1 Nuxeo ... 29
2.3 Limiti attuali dei sistemi di gestione dei contenti ... 31
5
2.4 Drupal ... 31
2.4.1 Content Type ... 33
2.4.2 Integrazione di Drupal con servizi esterni ... 36
3. Web Services ... 37
3.1 Introduzione ai Web Services ... 38
3.2 Il protocollo SOAP ... 40
3.2.1 Analisi di un messaggio SOAP ... 41
3.3 I servizi UDDI ... 44
3.4 Il linguaggio WSDL ... 47
3.4.1 Struttura di un documento WSDL ... 48
3.4.2 Elemento <definition> ... 49
3.4.3 Elemento <import> ... 50
3.4.4 Elemento <types> ... 50
3.4.5 Elemento <message> ... 52
3.4.6 Gli elementi <portType> e <operation> ... 52
3.4.7 Elemento <binding> ... 54
3.4.8 Elemento <service> ... 54
3.5 Utilizzo di web service su PHP ... 55
3.5.1 La scelta di NuSOAP ... 57
3.5.2 Confronto tra web services e xml-rpc ... 57
4. Interfacce di Remote Call ... 59
4.1 Descrizione del problema ... 59
4.2 Soluzione ... 63
4.3 Caratteristiche ... 64
4.3.1 Definizione dei requisiti utente ... 64
4.3.2 Specifica dei requisiti utente ... 64
4.3.3 Analisi dei requisiti di sistema ... 66
6
5. Uso di web services in Drupal ... 68
5.1 Stato dell'arte dell'uso di Web Services su di Drupal ... 68
5.2 Generalità sull'implementazione ... 69
5.2.1 Menu ... 69
5.2.2 Generalità sul Database ... 70
5.2.3 Entity Relationship Model ... 72
5.2.4 Logica di funzionamento del modulo RemoteCCK ... 73
5.3 Inserimento ed analisi di un web service ... 74
5.4 Modalità di aggiunta di un'operazione ad un Content Type ... 77
5.4.1 Creazione di un Content Type ... 80
5.4.2 Update di un Content Type ... 83
5.4.3 Mappaggio manuale tra un Content Type ed un operazione ... 85
5.5 Gestione dell'operazioni di un content type ... 89
5.6 Aggregazione di più Web Service ... 90
5.6.1 Il concetto di aggregatore ... 91
5.6.2 La creazione di un template di aggregatore ... 93
5.7 Gestione di operazioni ed aggregatori ... 98
5.8 Richiesta di informazioni remote ... 102
6. Integrazione di RemoteCCK con sistemi di Document Workflow ... 106
6.1 Caso d'uso: ordine di missione ... 107
6.2 SMAIL ... 109
6.3 DruFlow ... 112
7. Conclusioni ... 116
7.1 Sviluppi futuri ... 116
Appendice A ... 118
Glossario dei termini ... 119
Riferimenti ... 121