Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Corso di Laurea Specialistica in Ingegneria Informatica INTEGRAZIONE MULTILINGUA DI SORGENTI DATI POSTGRESQL DELLA PUBBLICA AMMINISTRAZIONE: ACCOPPIAMENTO DEI SISTEMI MOMIS E SIAM Relatore: Chiar.mo Prof. Sonia Bergamaschi Candidato: Saponi Riccardo Correlatori: PhD. Ing. Mirko Orsini PhD. Ing Laura Po Anno Accademico 2008 - 2009 Sommario Obiettivo della Tesi Il Progetto MOMIS Il SIAM (Sistema Informativo AMbientale) Integrazione MOMIS - SIAM Wrapper JDBC / PostgreSQL Sviluppo di un database multilingua per l’utilizzo in MOMIS Materializzazione dello Schema Globale Test, conclusioni e sviluppi futuri Obiettivo MOMIS DataRiver 1. 2. 3. SIAM Ipotesi : poter disporre di una vista integrata dei dati presenti negli Uffici del settore Ambiente di diverse province, attraverso l’ accoppiamento del progetto MOMIS “DataRiver” e del programma SIAM. Sono state eseguite 3 fasi: Creazione di un Wrapper per sorgenti PostgreSQL; Analisi e integrazione del database lessicale multilingua MultiWordNet; Implementazione di funzioni per la materializzazione dello Schema Virtuale Globale(GS) all’interno della versione DataRiver di MOMIS; MOMIS (Mediator envirOnment for Multiple Information Sources) MOMIS e' un sistema per l'integrazione intelligente di informazioni per sorgenti dati strutturate e semi - strutturate nato fra una collaborazione dell’Università degli Studi di Modena e Reggio Emilia (DbGroup) e l’Università di Milano. OBIETTIVO: Integrare le informazioni ricavate da sorgenti eterogenee costruendo uno Schema Globale Virtuale che consenta all’utente di sottomettere delle query e che conservi i dati nelle sorgenti locali. Approccio opposto rispetto quello di un Data Warehouse, dove invece i dati sono duplicati su un database interrogabile dall’utente. MOMIS (Mediator envirOnment for Multiple Information Sources) SIAM (Sistema Informativo AMbientale) Prodotto web-based sviluppato da QUIX s.r.l. che si occupa di gestire il flusso completo di tutte le pratiche elaborate dall’Ufficio Ambiente delle Province. •Si pone come strumento di integrazione e collaborazione fra i vari soggetti coinvolti nei processi amministrativi che regolano la gestione dell’ambiente (Operatori, Imprese, Assessori). •Piena compatibilità e possibilità di scambio di informazioni con altri strumenti informatici presenti nell’Ente(software di protocollazione; GIS; sportello SUAP..). Wrapper JDBC / PostgreSQL Un Wrapper è un modulo che si occupa di rendere le diverse sorgenti di informazione conformi ad uno standard interno o esterno. In particolar modo si occupa di : Tradurre la descrizione della sorgente nel linguaggio del mediatore; Tradurre l’interrogazione ricevuta dal mediatore in una query in linguaggio locale ( ODLI3 ) Trasferire i risultati parziali al mediatore Wrapper JDBC / PostgreSQL PostgreSQL è un object – relational database management system (ORDBMS) open source, seguito del progetto Ingres. E’ un sistema per la gestione di database relazionali che assume caratteristiche tipiche dei Linguaggi Orientati agli Oggetti Definizione di Oggetti e Classi; Ereditarietà; Consente di implementare funzioni e procedure tramite il linguaggio nativo PL / pgSQL e i linguaggi di programmazione più comuni: C++, Ruby, Perl, Python. Tipi di dato JDBC compatibili. Open source, multipiattaforma e ampia community di sviluppo. Wrapper JDBC / PostgreSQL Creazione della classe WrapperJdbcCore_PostgreSQL, estensione delle interfacce Java già presenti. Interfaccia grafica per l’inserimento dei parametri per la connessione JDBC: Domain; Port; User; Password; Scelta del database; Generazione automatica della stringa di connessione JDBC; Scelta dei database presenti sul server mediante il reperimento delle informazioni dalla tabella di sistema PG_CATALOG Sviluppo di un database multilingua per l’utilizzo in MOMIS Stato dell’ arte: WordNet : Database lessicale di riferimento in lingua inglese che definisce i concetti della conoscenza e le relazioni che intercorrono fra di essi. Caratteristiche: Categoria Sintattica: categorie in cui sono suddivisi i termini (nomi, aggettivi,verbi,avverbi) Lemma: parola e/o termine a cui vengono associati uno o più significati Synset: insieme di termini associati ad un medesimo significato ed appartenenti alla stessa categoria sintattica Glossa: descrizione a parole di un significato preciso. Associata a ciascun synset Relazione Semantica: relazione che lega due synset appartenenti alla stessa categoria sintattica Relazione Lessicale: relazione tra due lemmi appartenenti a synset distinti Sviluppo di un database multilingua per l’utilizzo in MOMIS WordNet concorre alla generazione del Common Thesaurus durante il Processo di Integrazione, contribuendo alla definizione di relazioni terminologiche attraverso il processo di annotazione. Word form Book Volume Catalog Meaning (synset) a w r it t e n b e e n w o r k p u b lis h e d o r c o m p o s it io n ( p r in t e d o n t h a t p a g e s h a s b o u n d t o g e t h e r ) physical objects consisting of a number of pages bound together; "he used a large book as a doorstop" a book or pamphlet containing an enumeration of things Book SYN Volume Book BT Catalog Sviluppo di un database multilingua per l’utilizzo in MOMIS Per una maggior compatibilità con la versione di WordNet presente in MOMIS è stato analizzato e scelto MultiWordNet come database lessicale multilingua. MultiWordNet mira a creare un database lessicale strettamente legato a Princeton WordNet che consenta un facile inserimento di nuove lingue. • Relazioni semantiche : invariate rispetto WN. Si procede con degli add on; • Relazioni lessicali : re – mapping dei lemmi basato sulla lingua; Si compone di una parte comune (relazioni semantiche) e di parti specifiche a ciascuna lingua (relazioni lessicali) Sviluppo di un database multilingua per l’utilizzo in MOMIS Allineamento di MultiWordNet 1.6 a WordNet 2.0: Aggiornamento coerente dei record (Thanks to Rada Mihalcea, University of Texas) Integrazione di MultiWordNet e WordNet 2.0: Inserimento di nuovi tipi di Relazione e di Extender Procedura di integrazione basata sulla lingua del record. Modifiche al software: Nuovi parametri di configurazione per Torque; Enum AnnotationLanguage; Gestione lingua lato Backend: synset e lemma recuperati mediante la lingua di Annotazione; Gestione lingua lato Frontend: menù di scelta per la lingua in fase di inserimento e ricerca del record; Modifiche agli algoritmi WNFS e WND per la gestione della lingua di Annotazione. Implementazione di uno Stemmer Algorithm per la lingua italiana e refactoring delle classi di Stemming Materializzazione dello Schema Globale MOMIS Versione “DataRiver” Progetto Open Source che si prefigge di “prodottizzare” MOMIS. Sviluppato da “Datariver S.r.l.”, una spin-off nata per iniziativa di professori e ricercatori del DbGroup del Dipartimento di Ingegneria dell’Informazione di Modena e della ditta QUIX S.r.l. Caratteristiche: GUI sviluppate mediante Eclipse – RCP Gestione di WordNet tramite file originali o JPA (Java Persistence API) DataBase HSQLDB per supporto a Query Manager Gestione del progetto mediante il tool MAVEN …MA… STESSO PROCESSO DI INTEGRAZIONE DI MOMIS! Interrogazione di uno Schema Globale generato con MOMIS Materializzazione dello Schema Globale Creazione del modulo QUERY MANAGER EXPORT DATA; Tramite il modulo QUERYMANAGER si invocano le interfacce per la gestione della connessione ad un target database; Inserimento dei parametri “Wrapper – like” per la connessione JDBC al target database; Chiamata alla classe QueryManagerExportData per la gestione delle funzioni di materializzazione a partire dallo Schema Globale; Esecuzione di script SQL creati runtime per la creazione di tabelle e l’inserimento dei dati sulla base delle Classi Globali ricavate dallo schema e salvataggio sul target database Test e analisi dei risultati Test effettuati su schemi di prova e sul database di produzione del SIAM della Provincia di Ancona (90 tabelle, 1711 attributi) Wrapper : importate con successo sorgenti relazionali site su server locali o remoti. Integrazione database lessicale Multilingua: annotazione eseguita in base alla scelta della AnnotationLanguage. Combinando le diverse tecniche di annotazione automatica si arriva ad avere il 62 % dei termini presenti annotati(1069 su 1711). Stemmer: Problemi con la gestione delle forme flesse della lingua italiana. Materializzazione dello Schema Globale: test eseguito con successo su una sorgente locale, fallito con più sorgenti. Diversi scenari di sviluppo Conclusioni e sviluppi futuri Concludendo: Wrapper per sorgenti PostgreSQL sviluppato e testato con successo; Integrazione di un database lessicale multilingua sviluppata e testata con successo. Alcuni miglioramenti riguardo lo stemmer italiano Materializzazione dello Schema Globale non completato sebbene testato con successo su una sorgente; Sviluppi futuri Rifinitura delle funzioni e della logica di gestione di lingue differenti Completamento delle funzioni di materializzazione dello Schema Globale Prevedere l’integrazione di diversi schemi Prevedere dei controlli sulla creazione e sull’aggiornamento temporale dei dati Grazie per l’attenzione