Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Fabrizio Baldini Carlo Torniai Enrico Vicario Dipartimento di Sistemi e Informatica Univsrsità di Firenze [email protected] [email protected] [email protected] Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Contenuti Utilizzo di basi di dati in applicazioni orientate al Semantic Web Scenario Problematiche Valutazione delle soluzioni Conclusioni e prospettive Tesi di Laurea per il corso di Ingegneria Informatica, A. Matteini e T. Papi “Semantic Web: analisi dei metodi e sperimentazione delle tecnologie” Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Web vs Semantic Web Web attuale le informazioni non hanno struttura semantica la semantica è human understandable le applicazioni possono ‘comprendere’ solo la sintassi Dipartimento di Sistemi e Informatica Univsrsità di Firenze Semantic Web associa alle risorse una struttura semantica caratterizza le risorse e le relazioni associandogli un significato particolare Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Il Semantic Web Benefici relativi allo sviluppo di applicazioni orientate al Semantic Web L’informazione machine understandable Relazioni semantiche tra i contenuti Interscambio dati Navigazioni tematiche e correlazioni dinamiche tra contenuti Capacità di retrieval semantico dei contenuti Capacità di arricchire la base di conoscenza con conoscenza inferita Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Problematiche Cosa implica sviluppare una applicazione orientata al Semantic Web? Linguaggi standardizzati Carenza di strumenti di sviluppo e best practices relative Basi di conoscenza prevalentemente relazionali La struttura relazionale non è consistente con la struttura semantica di una base di conoscenza Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Semantic Web e Database Il Semantic Web non richiede necessariamente interazione con dB i dati possono essere memorizzati in documenti RDF o OWL I database sono la soluzione più diffusa per la gestione di basi di conoscenza persistenti risulta importante prevedere un riuso di strutture dati preesistenti Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Semantic Web e Database Problema di mismatch tra l’organizzazione semantica delle risorse e quella relazionale dei database Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Semantic Web e Database Analisi delle soluzioni architetturali per: rendere persistente su un database una base di conoscenza semantica consentire modalità di accesso semantico a database relazionali Le soluzioni identificate ed implementate sono: database con schema semantico modelli persistenti di Jena D2RMap e D2RQ Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione A: Database con schema semantico Usa un database relazionale con schema che emula la struttura di documenti RDF Svantaggi: Non utilizza le tecnologie raccomandate dal W3C Non supporta interrogazioni RDQL (solo SQL) Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione B: Modelli di Jena¹ Jena è un framework per lo sviluppo di applicazioni orientate al Web Semantico Fornisce API per la creazione, gestione e interrogazione di documenti RDF Consente di gestire basi di conoscenza semantiche come modelli: in memoria persistenti (su dB) [¹] http://jena.sourceforge.net Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione B: Modelli di Jena A P I modello persistente di Jena Vantaggi: semplicità di gestione trasparenza nelle operazioni Svantaggi: errori di ridondanza nel modello difficoltà di manipolazione del result set Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione C: D2Rmap e D2RQ¹ I dati esistenti sono memorizzati in database Necessità di tecniche che consentano: riutilizzo dei dati e delle strutture associazione di una struttura semantica Tecniche di mapping disponibili: D2Rmap (batch) D2RQ (runtime) [¹] D2Rmap e D2RQ, http://www.wiwiss.fu-berlin.de/suhl/bizer Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione C1: D2Rmap Converte un database relazionale in una base di conoscenza semantica utilizza una mappa per la conversione genera un documento RDF a partire dai dati contenuti nel dB Mappa Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Soluzione C2: D2RQ Permette di interrogare un database relazionale utilizzando il linguaggio RDQL utilizza dinamicamente una mappa per l’accesso semantico al contenuto del database restituisce degli statement gestisce database relazionali come grafi RDF attraverso le API di Jena Mappa Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Riepilogo architetture A P I Soluzione A Database relazionale con schema semantico Soluzione B Modello Persistente Jena Mappa Mappa Soluzione C1 Mapping D2RMap Dipartimento di Sistemi e Informatica Univsrsità di Firenze Soluzione C2 Mapping D2RQ Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Sperimentazione architetture Sperimentazione delle diverse architetture per valutarne complessità di implementazione applicabilità (vincoli di legacy, compatibilità organizzativa) prestazioni Applicazione relativa ad un contesto reale e con requisiti definiti Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Contesto del SUAP Sportello unico per la gestione delle autorizzazioni necessarie alle imprese per la produzione di beni e servizi La struttura del dB del SUAP è stata utilizzata come riferimento sia in fase di progettazione che in fase di sviluppo Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Valutazione architetture Identificazione delle architetture possibili: (sem) Valutazione qualitativa e quantitativa Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Valutazione qualitativa Soluzione database con schema semantico Soluzione file RDF Complessità implementativa limitata Non utilizza gli strumenti del Semantic Web ma ne emula esclusivamente il funzionamento Ostacola l’interoperabilità dell’applicazione ? Complessità implementativa più elevata rispetto alla prima soluzione Utilizza strumenti del Semantic Web Poca flessibilità data dal tipo di modello persistente (file system) Soluzioni Jena e D2R Utilizzano appieno strumenti del Semantic Web Differiscono per complessità implementativa (gestione delle API di Jena + utilizzo di tools di mapping nel caso di D2R) Differiscono per prestazioni L’utilizzo di strumneti di mapping risponde a vincoli di legacy Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Valutazione prestazioni Architetture software analizzate: Cosa ci aspettiamo? tempi di risposta più elevati per la soluzione con D2RQ che prevede una funzione di mapping intermedia Analisi del tempo di riposta delle query: modello persistente di Jena, D2RQ e documento RDF con 8 query differenti, ognuna ripetuta per 50 volte, su KB contenenti 150.000 e 750.000 statements Analisi del tempo di caricamento in memoria dei dati: ripetuto 30 volte per ogni architettura, su KB contenenti 150.000 e 750.000 statements Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Valutazione prestazioni: risposta in msec La soluzione con D2RQ RDF comporta comporta i tempi tempi di di esecuzioni esecuzionemigliori molto elevatialla persoluzione il caricamento dei dati per le query ma mediamente migliori rispetto con Jena contrariamente alle aspettative! Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Sviluppo di una applicazione Implementazione di una applicazione orientata al Semantic Web Obiettivi: analizzare i problemi implementativi in un contesto con requisiti definiti che non imponesse vincoli di legacy utilizzare tecnologie di riferimento Strumenti: API Jena Protégé Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Schema architetturale Struttura MVC (persistent model, Jsp, Servlet) Soluzione con modelli persitenti di Jena Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Esplorazione Implementazione di un’applicazione Web che offre un’interfaccia grafica per l’esplorazione di una base di conoscenza semantica Funzionalità Barra di navigazione elaborare e formulare la query in base alla richiesta dell’utenteche si aggiorna in interrogare modelli, dopo averli importati in memoria base al validare i contenuti contenuto della pagina, machine estrarre le informazioni d’interesse understandable presentare le informazioni ricavate Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Transazioni Web application per aggiornamento di una KB sulla base di un’ontologia predefinita Requisiti: Conformità dai dati all’ontologia Implementazione: sono stati implementati i metodi per gestire la creazione del modulo di inserimento dati a partire dall’ontologia per validare ed inserire effettivamente i dati immessi dall’utente Modulo che viene creato in funzione dell’ontologia Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Conclusioni Abbiamo individuato e sperimentato architetture software che permettono lo sviluppo di applicazioni di Web Semantico su basi di conoscenza di dimensioni e caratteristiche realistiche La convenienza delle varie implementazioni dipende dai vincoli di legacy e dalla organizzazione del processo di alimentazione della base di conoscenza Il limite di prestazione non sembra costituire un ostacolo alla applicazione a contesti realistici Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006 Fabrizio Baldini, Carlo Torniai, Enrico Vicario Uso di basi di conoscenza relazionali in applicazioni di Web Semantico Prosepettive Applicazione alla creazione di portali di supporto alla aggregazione e cooperazione nello sviluppo di basi di conoscenza Capacità di adattamento all’evoluzione del modello ontologico Qualità dell’informazione Fattori umani e organizzativi La filosofia del Semantic Web e l’utilizzo di ontologie ha preso piede non solamente per la descrizioni di contenuti Web annotazione e retrieval di contenuti multimediali descrizione semantica di immagini, video, ecc. La combinazione di contenuti descritti e correlati semanticamente può portare alla realizzazione di applicazioni fortemente interattive e con alto livello di usabilità Dipartimento di Sistemi e Informatica Univsrsità di Firenze Le Ontologie in Campo Umanistico Archeologia, Architettura e Beni Culturali - Firenze 27 Gennaio 2006