Progetto MADCOW Seminario Divulgativo di Base Relativo al Progetto MADCOW Roma, Italia, 25 Maggio 2010 Università degli Studi di Roma “La Sapienza” Dipartimento di Informatica Titolo del Seminario Progetto MADCOW: Annotando… Attività Formativa Complementare al Corso di Sistemi per L’Interazione Locale e Remota Docenti Prof. P. Bottoni & Prof.ssa A. Labella MADCOW’s Scientific Staff Ordine Alfabatico Dr. D. Avola Prof. P. Bottoni Prof. S. Levialdi Prof. E. Panizzi Argomenti: MADCOW: Multimedia Annotation of Digital Content Over the Web. A: Nuove Frontiere del WEB: Introduzione: Generalità sull’Evoluzione del WEB. B: I Sistemi di Annotazione Digitale: Introduzione: Generalità sui Sistemi di Annotazione. C: Il Sistema di Annotazione MADCOW: Introduzione: Generalità. Approfondimento: Funzionalità & Fattori Critici. Approfondimenti: Architettura & Sviluppi Futuri. D: Ambiti di Applicazione: 1 Introduzione: Ambienti Supportabili. Introduzione: Ottica Semplificata del WEB: insieme di risorse digitali (testi, stream audio/video, immagini, etc.); organizzate all’interno ambienti web-oriented (siti, portali, servizi, etc.) ; fruibili attraverso una tecnologia di interonnessione (internet e reletivi protocolli) per mezzo di un’applicazione di interpretazione (browser). Evoluzione del WEB (WEB 1.0 e oltre): 2 WEB 1.0:…dove i contenuti delle pagine WEB (i.e. risorse digitali) sono usualmente fruiti/gestiti in modo non interativo… ; WEB 2.0:…dove i contenuti delle pagine WEB sono usualmente fruiti/gestiti in modo interativo… ; WEB 3.0:…dove la fruizione/gestione dei contenuti delle pagine WEB è supportata attraverso l’uso di tecnologie semantiche (i.e. semantic web)…; WEB 4.0:…dove la fruizione/gestione dei contenuti delle pagine WEB è supportata attraverso l’uso di tecnologie intelligenti (i.e. web learning, intelligent network, etc)…. Introduzione: Alcune Note sull’Evoluzione del WEB: Tecnologie algoritmiche trasversali che supportano in modo indisitno le diverse evoluzioni del Web (e.g. trust models, authority models, etc.); Concetto di pervasività (anytime, anywhere) dovuto in particolar modo alla diffusione dei moderni dispositivi desktop (e.g. tablets, laptops) e mobile (e.g. smartphones, PDAs, palmtops). Le Conseguenze: Elevata e crescente disponibilità di ambienti web-oriented aventi contenuti sempre più ricchi, distinti e complessi (i.e. testi, video, immagini, elementi minori); Crescente eterogeneità degli ambienti web-oriented (e.g. news sites, learning sites/portals, e-commerce portals, digital library portals, thematic sites/portals, specialist sites/portals, private sites, entertainment sites/portals, heterogeneous services, informative sites/portals). Concludendo: 3 Entropia nella gestione della classificazione sia dei differenti ambienti weboriented sia dei relativi contentui. Introduzione: Una Prima Introduzione ai Sistemi di Annotazione: Esigenza: avere a disposizione uno strumento capace di classificare, catalogare, condividere e supportare sia gli ambienti web-oriented sia i loro contenuti. Sistemi di Annotazione: assolvono a tali esigenze e sono inoltre capaci di fornire ulteriori e molteplici funzionalità di tipo avanzato. Definizione dell’Ambito di Applicazione: Ambiente Web-Oriented: indipendentemente dal tipo specifico (i.e. sito, portale, servizio) un ambiente web-oriented può essere sempre visto come un insieme (semplice o complesso) di pagine web. Elementi che Definiscono il Contenuto delle Pagine Web: 4 Elementi caratterizzanti: Testo…; Streaming Audio e/o Video…; Elementi Grafici…; Elementi Minori…; Introduzione: Definizione del Dominio Tecnico: Basate su: HTML Like. (e.g. HTML 4.01 & 5 ; XHTML 1 & 2) Non Basate su: HTML Like. (e.g. Flash; SilverLight) Conclusione: 5 Basate su: HTML Like. È importante evidenziare sin da ora che: un sistema client-server; agisce direttamente sul codice HTML; logiche legate al dominio tecnico scelto. Introduzione: Generalità - Annotazioni su Documenti Cartacei: Un’annotazione tradizionale è una meta-informazione, associata ad un documento cartaceo, la quale “arricchisce” il contenuto informativo del documento stesso. Un Esempio Comune: La lettura approfondita di un testo (ad esempio per motivi di studio) comporta la sua comprensione e talvolta, la sua “rielaborazione”: • evidenziare parti di interesse… aggiungere interrogativi su parti mal comprese… • aggiungere “link” ad altri documenti di approfondimento… • aggiungere note testuali o schemi per chiarificare parti di interesse… • Un Elemento dominante: 6 La condivisione: le annotazioni sono finalizzate (a seconda delle esigenze) ad essere a carattere “privato” (solo per se stessi) o “pubblico” (atte ad essere condivide per differenti scopi). Introduzione: Generalità - Annotazioni su Documenti Cartacei: Uno sguardo più approfondito: sostanzialmente un’ annotazione è composta da tre elementi fondamentali: • contenuto dell’annotazione (solitamente testuale, che però può essere arricchito con schemi, disegni e simili)… • elementi chiave per classificare l’elemento oggetto di annotazione (solitamente testuale, e.g. parole chiave (tag))… • link/riferimenti a terze risorse (documenti di qualsiasi tipo e natura)… Il fine: è quello di arricchire un documento ed allo steso tempo di catalogarlo e renderlo reperibile (l’intero documento o parte di esso) per una successiva consultazione. Scopi Basilari dell’Annotazione: ricordare 7 chiarire pensare condividere Introduzione: Generalità – Annotazioni Digitali: Idea Base: poter effettuare ogni tipo di “azione” vista sino ad ora all’interno delle pagine Web (HTML like). • Classificazione dei Sistemi di Annotazione Digitali: tali sistemi possono essere classificati come non-integrati ed integrati. • I sistemi non integrati: Tali sistemi sono quelli che prevedono un’interazione esplicita e non trasparente dell’utente con il relativo servizio di annotazione. • I sistemi integrati: Tali sistemi sono quelli che prevedono che il browser sia arricchito con degli “strumenti” adatti (e.g. plug-in, estensioni) in modo da permettere all’utente una diretta esperineza di annotazione (attraverso l’uso di apposite interfacce). Osservazione: • 8 ossia: poter annotare ogni tipo di risorsa digitale: testo (di ogni tipo e formato), stream audio e/o video (di ogni tipo e formato), elementi grafici (di ogni tipo e formato), terze parti (e.g. links, icone, etc.). I sistemi integrati (come MADCOW) sono quelli che permettono di realizzare le annotazioni in modo più naturale, semplice ed intuitivo. Introduzione - Sistemi Specializzati sull’annotare il Testo: 9 UCAT Web ComMentor CoNote Highlighter [Bonifazi [Davis [Röscheisen &&[Philippot, Hutternlocher, Trinchese, et al., 2002] 2002] 1994] 1995] Introduzione - Sistemi Specializzati sull’Annotare le Immagini: 10 Oxalis I2CNet AnnoteImage [Ertman, (Image[Lober Indexing 2003]& Brinkley, by Content 1999 Network) ] [Zabulis et al., 1997] Introduzione – Sistemi Specializzati sull’Annotare i Video: 11 VideoAnnEx ANVIL MRAS [Bargeron [Kipp, [Ching-Yung 2001] et al., 1999] Lin et al., 2003] Introduzione: Generalità – Annotazioni Digitali: 12 Abbiamo dato un sguardo a quelli che sono i sistemi “storici” per ciò che concerne le annotazioni digitali. Oggi esistono nuovi ed evoluti “competitor” con i quali è necessario confrontarsi dal punto di vista delle features tecniche implementate: Introduzione: Generalità – Cosa è il Sistema MADCOW: Multimedia A nnotation of D igital C ontent O ver the Web 13 è un sistema finalizzato alla creazione e alla consultazione di annotazioni digitali all’interno di pagine WEB basate su tecnologia HTML like. Introduzione: Generalità – Cosa è il Sistema MADCOW: MADCOW è un sistema client-server distribuito che permette agli utenti di effettuare annotazioni digitali su pagine Web basate su tecnologia HTML-like. Gli Approcci e gli Algoritmi che sono stati utilizzati per la realizzazione di MADCOW sono basati sulle specifiche della W3C. Questo permetterà una migliore integrazione del sistema MADCOW con gli standard futuri che dominarenno il Word Wide Web (i.e. derivati XML). 14 MADCOW è basato su tecnologie implementative di sviluppo orientate al Web 2.0 (i.e. JQuery) le quali sono ottimizzate per fornire una esperienza di interazione semplice ed intuitiva. Introduzione: Approfondimento – Funzionalità: HTML Web Page MADCOW Main Functionalities Text Images Video/Audio Links/ Icons/etc 15 F u n z i o n a l i t à 16 T e x t A n n o t a t i o n F u n z i o n a l i t à 17 I m a g e A n n o t a t i o n F u n z i o n a l i t à 18 V i d e o A n n o t a t i o n Approfondimento: Funzionalità - La Semplice Integrazione del Sistema MADCOW: 19 Approfondimento: Fattori Critici: I sistemi di annotazione sono tra gli strumenti (intesi come web services) più complessi che si possano realizzare a causa dei seguenti aspetti: Forte dipendenza dalla struttura HTML del designer del sito, del portale o del servizio; Forte dipendenza dai cambiamenti tecnologici che investono il World Wide Web (i.e. tag html, browser, protocolli di accesso, API, etc.); Forte dipendenza dal sistema operativo e dal browser con il quale l’utente sta visualizzando la pagina che ha intenzione di annotare. Cosa Comportano tali “Classi” di Criticità: 20 Manutenzione Elevata di tutti quei processi critici che sono mirati al supporto della parte logico-implementativa del sistema di annotazione; Manutenzione Elevata di tutte le interfacce di comunicazione (e.g. protocolli di interscambio) nonché delle interfacce di collegamento (e.g. verso API) che regolano la vita in esercizio dell’applicazione. Approfondimenti: Architettura: DOM & HTML DOM (concetti preliminari) Il W3c DOM (Document Object Model) può essere considerato come un insieme di interfacce (API), indipendenti sia dalla piattaforma sia dal linguaggio, che permettono in modo dinamico di accedere e manipolare il contenuto, la struttura e lo stile di un documento (strutturato). • I Differenti Livelli: Core DOM – Standard model per ogni documento strutturato; • XML DOM – Standard model per i documenti XML; • HTML DOM – Standard model per i documenti HTML. Definizione Intuitiva: Il W3c HTLM DOM è: sia un modo per descrivere la struttura di un documento HTML (tipicamente: nodi e archi) sia un insieme di metodologie per manipolare (aggiungere, modificare o cancellare) gli elementi (detti nodi e archi) di tale struttura. • 21 • Evidenziamo: • MADCOW (sistemi di annotazione in genere) lavorano su una attenta e sofisticata manipolazione del HTML DOM. Approfondimenti: Architettura: HTML DOM Semplice Pagina Web <html> <head> <title>DOM Tutorial</title> </head> <body> <h1>DOM Lesson one</h1> <p>Hello world!</p> </body> </html> Osservazioni: • • 22 html DOM body head title “DOM Tutorial” valgono tutte le proprietà note degli alberi n-ari; Ogni elemento della pagina HTML è un nodo: • l’intero documento è un nodo; • Ogni TAG è un nodo (con attributi e proprietà); • Ogni Blocco di Testo è un nodo. h1 p “DOM “DOM Lesson one” Tutorial” Approfondimenti: Architettura - Una Architettura Semplificata: Client Side (Presentation Logic) Server Side (Business Logic) 23 MADCOW Platform: o Server Side: LAMP (Linux; Apache; MySQL; PHP) – Framework Zend 2.0; o Client Side: Javascript. Approfondimenti: Architettura – Architettura basata sul paradigma MVC: 24 o il ruolo del model (BL)… o il ruolo del view (PL)… o il ruolo del controller (BL)... Sviluppi Futuri: In Lavorazione: advanced groups management; duplicate documents identification; multi-structured annotations; etc... Prossime Features: semantic annotations; semantic search; annotations based on ontology data structure; etc... 25 Pianificate: Advanced Multimodal Interfaces: sketch-based interfaces; speech-based interfaces; vocal annotations; etc... Introduzione: Generalità – Alcuni Ambiti di Applicazione dei Sistemi di Annotazione: 26 Ambito privato di conoscenza… Ambito condiviso di conoscenza… Librerie Digitali… Ambienti di Learning… Ambienti Specialistici (e.g. medico)… Ambienti di scambio informativo… Ambienti di condivisione del lavoro (e.g. redazioni)… Ambienti di progettazione condivisa… Ambienti di supervisione assistita… etc…