Skip to topic | Skip to bottom
Home
TechWeb06
TechWeb06.VersioneProtocollo0903r1.1 - 03 May 2006 - 13:50 - GioeleBarabuccitopic end

Start of topic | Skip to actions

ODALISK: Ontology-Driven, Ajax-Led Information System for Knowledge

Specifiche di protocollo

Versione 0.9.03 del 3 maggio 2006

Abstract

I protocolli AC-DS (Application Controller - Data Source) e AC-DF (Application Controller - Data Formatter) consentono ad una applicazione Web (lato server o lato client) di interrogare fonti informative per ottenere dati e di richiedere specifiche formattazioni di tali dati a moduli esterni per ottenere documenti riproducibili da visualizzatori. Consentono quindi di definire una netta distinzione fra la fase di reperimento delle informazioni da quella di gestione di opportuni layout per una loro adeguata presentazione.

Questo documento descrive le specifiche dei protocolli AC-DS e AC-DF di riferimento da adottare nella comunicazione fra l'Application Core (che sia uno script lato server o uno script lato client) e i moduli Data Source e Data Formatter. In questo documento sono quindi riportati sia il formato delle richieste da inoltrare verso i due moduli DS e DF, sia il formato delle risposte che possono essere ricevute, sia il protocollo di trasporto per l'invio di richieste/risposte.

Stato di questo documento

Questo documento Ŕ stato redatto da Fabio Vitali, Antonio Feliziani, Luca Furini, Nicola Gessa e modificato dai WG DS e DF. Deve essere utilizzato come materiale di riferimento per il progetto ODALISK per garantire l'interoperabilitÓ fra i gruppi.

IMPORTANTE: nella versione 0.9 (e successive) di questo protocollo lo scambio di dati avviene tramite documenti XML validati dai DTD descritti nel documento. La versione definitiva del protocollo, oltre a recepire i suggerimenti emersi dalle discussioni nel WG, dovrÓ utilizzare tecnologie e protocolli legati ad Ajax.

Sommario

1. Introduzione

Lo scopo del protocollo ODALISK Ŕ di permettere ad un'applicazione Web di

  • interrogare fonti informative (d'ora in poi Data Source o DS) per ottenere dati (tipicamente privi di indicazioni presentazionali) e di riorganizzarli in contenuti nuovi e rielaborati
  • richiedere ad un modulo di conversione (Data Formatter o DF) di generare un documento immediatamente mostrabile da un visualizzatore (ad esempio, un browser Web) sulla base di contenuti forniti in input oppure di generare una porzione di documento che dovrÓ essere inserita in una pagina da un Ajax Engine.

La distinzione tra formattazione di documenti interi e formattazione ddi porzioni di documenti Ŕ dovuta alla necessitÓ di creare due modelli di architettura:

  • una architettura in cui l'Application Core (AC) Ŕ uno script client-side implementato secondo la tecnica di programmazione Ajax. In questo caso il DF dovrÓ produrre frammenti di documenti che saranno inseriti all'interno delle pagine visualizzate manipolando dinamicamente il DOM
  • una architettura in cui l'AC Ŕ uno script server-side. Questo modello dovrÓ essere utilizzato nei casi in cui lo user-agent non supporta Ajax. In questo caso il DF dovrÓ produrre interi documenti pronti per essere visualizzati dallo user-agent.

In entrambi i casi il protocollo di comunicazione fra AC e DF Ŕ lo stesso ed Ŕ specificato in questo documento.

Il protocollo dunque si divide in due parti nettamente distinte, anche se con aspetti comuni. Nel seguito si indicherÓ con AC-DS il protocollo instaurato tra l'Application Controller e la fonte informativa DS, e con AC-DF il protocollo instaurato tra l'Application Controlelr e il modulo di conversione DF.

Tutte le comunicazioni avvengono su canali HTTP, e il formato del documento generato dal DS e richiesto in input dal DF sono variazioni dello stesso formato XML. Il formato XML contiene una parte comune ai due protocolli, alcune parti specifiche, e la possibilitÓ di personalizzare il formato in tutto o in parte.

2. Il protocollo di comunicazione

Per poter comunicare con i Data Source e i Data Formatter, l'applicazione fa riferimento ad alcuni formati specifici per le richieste/risposte. I formati di richiesta e risposta differisco nella comunicazione con un DS o un DF.

2.1 Applicazione <-> Data Source

L'AC comunica con i DS disponibili attraverso connessioni HTTP. Le richieste inoltrate sono di tipo GET, mentre i dati ricevuti in risposta sono sempre in formato XML.

Le richieste che possono essere inoltrate verso un DS sono di due tipi:

  • Richiesta di un elenco ragionato sui dati presenti nel DS (vedi sezione 3). La risposta sarÓ un elenco, in formato XML, dei dati che si trovano sul data source interrogato (vedi sezione 4), costruito in base ai parametri specificati nella richiesta.
  • Richiesta di una scheda di un documento presente nell'elenco fornito dal DS (vedi sezione 3). La risposta sarÓ una scheda, in formato XML, comprendente i dati che si trovano sul data source interrogato (vedi sezione 4), costruito in base ai parametri specificati nella richiesta.

2.2 Applicazione <-> Data Formatter

L'application controller comunica con i formatter disponibili attraverso connessioni HTTP. Le richieste inoltrate sono di tipo POST, mentre i dati ricevuti in risposta a tali richieste possono essere in formato testo o binario.

Le richieste che possono essere inoltrate verso un formatter sono di tre tipi:

  • Richiesta di un elenco di layout che il DF pu˛ fornire all'AC (vedi sezione 6.1). La risposta, in formato XML, elencherÓ tutte i possibili layout che possono essere applicate a dati ricevuti in ingresso in formato XML (vedi sezione 7.1).
  • Richiesta di esecuzione di una formattazione su dati in formato XML da parte di un AC server-side. Questa richiesta deve specificare sia il tipo di formattazione desiderata sia i dati su cui applicare tale formattazione (vedi sezione 6.2). La risposta del formatter comprende la versione finale del documento che deve essere inviato verso lo user agent da parte dell'application controller, comprensivo sia dei contenuti informativi sia delle specifiche di layout e presentazione(vedi sezione 7.2).
  • Richiesta di esecuzione di una formattazione su dati in formato XML da parte di un AC client-side (Ajax Engine). Questa richiesta deve specificare sia il tipo di formattazione desiderata sia i dati su cui applicare tale formattazione (vedi sezione 6.3). La risposta del formatter comprende la versione correttamente formattata secondo le specifiche di layout e presentazione dei contenuti informativi. I dati formattati saranno inseriti dall'Ajax Engine all'interno della pagina (vedi sezione 7.3).

3 e 4: Protocollo AC-DS

I capitoli che riguardano la comunicazione tra AC e DS versione 0.9.03, sono pubblicati come Protocollo AC-DS versione 2

5, 6 e 7: Protocollo AC-DF

I capitoli che riguardano la comunicazione tra AC e DF versione 0.9.03, sono pubblicati come Protocollo AC-DF versione 2

8. Registrazione di data source e formatter

I data-source (e i formatter) diventano attivi nel sistema ODALISK al momento della registrazione. La registrazione non avviene in maniera automatica ma modificando manualmente la pagina del wiki. I team sono tenuti ad aggiungere una riga nella tabella contenuta nelle pagine di registrazione ed indicare:

  • nome del data-source (o del formatter)
  • URL del catalogo in sintassi XML. Si noti che il catalogo contiene tutte le metainformazioni relative al data-source (o formatter), come indicato nelle sezioni 4.1 (DS) e 5 (DF).
  • URL di una pagina HTML che presenta le stesse informazioni in una versione human-readable.

I vari team, dopo aver comprato i data-source ed i formatter, inseriranno manualmente nel codice della loro applicazione gli URL dei cataloghi di queste componenti (e non dei singoli script per richiedere elenchi, schede e formattazione), leggendoli dalle pagine del wiki. L'AC estrae dal catalogo tutte le informazioni necessarie per comunicare con i DS ed i DF scelti.

Esistono due pagine separate per registrare i data-source e i formatter, rispettivamente RegistrazioneDataSource e RegistrazioneFormatter. Ad esempio la pagina RegistrazioneFormatter presenta questa tabella:

Nome formatter Catalogo XML Catalogo HTML Gruppo
-- nome formatter -- -- URL catalogo XML -- -- URL catalogo HTML -- -- nome gruppo --

Se il gruppo TW vuole registrare il formatter il cui catalogo Ŕ all'URL http://tw.web.cs.unibo.it/format.xml ed ha creato una pagina HTML (via trasformazione XSLT del catalogo XML) all'URL http://tw.web.cs.unibo.it/format.html deve editare la pagina wiki aggiungendo una riga alla tabella in questo modo:

Nome formatter Catalogo XML Catalogo HTML Gruppo
WOWFormatter http://tw.web.cs.unibo.it/format.xml http://tw.web.cs.unibo.it/format.html TW

9. Modifiche rispetto alle versioni precedenti

Da versione 0.9.02 a versione 0.9.03

  • Piccole modifiche al capitolo introduttivo per rendere pi¨ chiara la distinzione tra AC server-side e AC client-side.

Da versione 0.9.01 a versione 0.9.02

  • Il documento del protocollo Ŕ stato smembrato in tre parti: una parte comune (questa), la parte del Protocollo AC-DS e la parte relativa al protocollo AC-DF. I cambiamenti apportati dai singoli WG sono disponibili nelle pagine dei relativi protocolli.

  • Set ALLOWTOPICVIEW =
  • Set ALLOWTOPICCHANGE =

to top

You are here: TechWeb06 > VersioneProtocollo0903

to top

Copyright © Fabio Vitali + TechWeb students 2006