Successfully reported this slideshow.
Costantino Landino Business Unit Manager [email_address] Interfacce applicative  al Sistema di Catalogazione del progetto ...
Il ruolo di ID Technology nel progetto MESSIH <ul><li>Progettazione e sviluppo dell’interfaccia di consultazione del siste...
Il contesto operativo: livello applicativo architettura MESSIAH Il contesto operativo in cui sono stati definiti gli obiet...
Interfaccia di consultazione al Sistema Catalografico (1/2) <ul><li>Concept </li></ul><ul><ul><ul><li>Look & Feel WEB 2.0 ...
Interfaccia di consultazione al Sistema Catalografico (1/2)
Interfaccia di consultazione al Sistema Catalografico (2/2) <ul><li>Architettura </li></ul><ul><li>Implementazione Model-V...
OAI Data Provider SPARQL per MESSIAH
Che cos’e’? L’OAI Data Provider  è un software che permette in pochi passaggi di rendere compatibile un database con il pr...
Portale della Cultura Italiana: Architettura ed interoperabilità <ul><li>Il Portale della Cultura Italiana vuole essere un...
Dettaglio dell’architettura MESSIAH ConnectionManager SPARQL MESSIAH SPARQL server
Procedura per rendere OAI compliant il server SPARQL <ul><li>La procedura preliminare per l'utilizzo dell'adapter consiste...
Identificazione del database sorgente Le tipologie di datasource testati sono  Oracle ,  SQL Server ,  MySQL ,  Access ,  ...
Configurazione sezione queries del mapping 1/3 <ul><li>La sezione queries serve a definire le query SPARQL da effettuare s...
Configurazione sezione queries SPARQL 2/3 <ul><li>SPARQL  è una specifica sviluppata W3C RDF Data Access Working Group a s...
Configurazione sezione queries del mapping 3/3 Esempio query SPARQL per il comando OAI-PMH  ListIdentifiers,  con mapping ...
Configurazione sezione transfRules del mapping La sezione transfRules contiene il mapping vero e proprio tra i dati recupe...
Generazione e pubblicazione dei metadati (1/2) La procedura di generazione dei metadati utilizza tutte le specifiche dei p...
Generazione e pubblicazione dei metadati (2/2) Esempio di richiesta:ListRecords
Milano   Corso di Porta Romana, 6 - 20122 Milano t +39 02 80 51 131 f +39 02 80 51 163 Roma   Via G. Bettolo, 3 - 00195 Ro...
Upcoming SlideShare
Loading in …5
×

Interfacce applicative al Sistema di Catalogazione del progetto MESSIAH

1,424 views

Published on

Progettazione e sviluppo dell’interfaccia di consultazione del sistema di catalogazione.
Concept Web 2.0
Interoperabilità del sistema di catalogazione con il Portale Italiano della Cultura (PICO) del Ministero dei Beni Culturali.
Framework di interoperabilità basata su standard OAI-PMH
Connettività basata su Web Services
Implementazione di Profili Applicativi su Metadati Dublin Core
Interrogazione di Ontologie dei beni culturali
Compatibilità verso standard descrittivi catalografici, geografici, documentali (ICCD, CIDOC, EXIF, DC,..)

Published in: Technology
  • Be the first to comment

Interfacce applicative al Sistema di Catalogazione del progetto MESSIAH

  1. 1. Costantino Landino Business Unit Manager [email_address] Interfacce applicative al Sistema di Catalogazione del progetto MESSIAH
  2. 2. Il ruolo di ID Technology nel progetto MESSIH <ul><li>Progettazione e sviluppo dell’interfaccia di consultazione del sistema di catalogazione. </li></ul><ul><ul><li>Tecnologia J2EE </li></ul></ul><ul><ul><li>Concept Web 2.0 </li></ul></ul><ul><ul><li>Architettura altamente estensibile </li></ul></ul><ul><li>Interoperabilità del sistema di catalogazione con il Portale Italiano della Cultura (PICO) del Ministero dei Beni Culturali. </li></ul><ul><ul><li>Framework di interoperabilità basata su standard OAI-PMH </li></ul></ul><ul><ul><li>Connettività basata su Web Services </li></ul></ul><ul><ul><li>Implementazione di Profili Applicativi su Metadati Dublin Core </li></ul></ul><ul><ul><li>Interrogazione di Ontologie dei beni culturali </li></ul></ul><ul><ul><li>Compatibilità verso standard descrittivi catalografici, geografici, documentali (ICCD, CIDOC, EXIF, DC,..) </li></ul></ul>
  3. 3. Il contesto operativo: livello applicativo architettura MESSIAH Il contesto operativo in cui sono stati definiti gli obiettivi specifici appena elencati, è stato definito a livello applicativo, il contesto del progetto dedicato alla definizione dei processi di gestione e valorizzazione del patrimonio censito, nella prospettiva della promozione del territorio, anche con finalità politiche rispetto al turismo culturale. Il Data Provider OAI-PMH interroga l’Ontologia MESSIAH mediante un server SPARQL, effettua la trasformazione delle informazioni in formato PICO e le invia al Portale Italiano della Cultura. L’interfaccia di consultazione interroga lo Schema concettuale integrato sotto forma di Domini Applicativi organizzati in Categorie e restituisce riferimenti alle risorse contenute in una base documentale integrata.
  4. 4. Interfaccia di consultazione al Sistema Catalografico (1/2) <ul><li>Concept </li></ul><ul><ul><ul><li>Look & Feel WEB 2.0 delle categorie </li></ul></ul></ul><ul><ul><ul><li>Profilazione per categoria </li></ul></ul></ul><ul><ul><ul><li>Architettura scalabile su più portali </li></ul></ul></ul><ul><li>Funzionalità </li></ul><ul><ul><ul><li>Ricerca full text </li></ul></ul></ul><ul><ul><ul><li>Ricerca avanzata </li></ul></ul></ul><ul><ul><ul><li>Ricerca multiportale </li></ul></ul></ul><ul><ul><ul><li>Filtro risultati per categorie </li></ul></ul></ul><ul><ul><ul><li>Feed RSS nuove pubblicazioni </li></ul></ul></ul><ul><ul><ul><li>Registrazione profilo utente </li></ul></ul></ul><ul><ul><ul><li>Autenticazione </li></ul></ul></ul>
  5. 5. Interfaccia di consultazione al Sistema Catalografico (1/2)
  6. 6. Interfaccia di consultazione al Sistema Catalografico (2/2) <ul><li>Architettura </li></ul><ul><li>Implementazione Model-View-Controller (MVC). </li></ul><ul><li>Integrazione di provider di servizi per garantire flessibilità. </li></ul><ul><li>Combinazione di provider di servizi per garantire scalabilità multiportale </li></ul><ul><li>Tecnologie di sviluppo </li></ul><ul><li>Java J2EE 5.0 </li></ul><ul><li>Frameworks Open Source utilizzati </li></ul><ul><ul><ul><li>JGuard (Gestione della sicurezza) </li></ul></ul></ul><ul><ul><ul><li>Jscontrolstags (Gestione dell’albero delle categorie) </li></ul></ul></ul><ul><ul><ul><li>DisplayTag (Presentazione risultati della ricerca) </li></ul></ul></ul><ul><ul><ul><li>Ehcache (Cache dei risultati delle interrogazioni) </li></ul></ul></ul><ul><ul><ul><li>Taglib (Multilinguismo) </li></ul></ul></ul>
  7. 7. OAI Data Provider SPARQL per MESSIAH
  8. 8. Che cos’e’? L’OAI Data Provider è un software che permette in pochi passaggi di rendere compatibile un database con il protocollo OAI-PMH . Questo software e' stato ideato e realizzato sfruttando le esperienze compiute in un progetto di ricerca calandole in un contesto operativo di integrazione reale. Lo sviluppo e' partito da un software open source esistente (UIUC OAI Metadata Harvesting Project) e si è realizzato un modulo di estrazione e gestione di metadati che fosse utilizzabile senza necessità di programmazione. I profili di metadati ad oggi utilizzabili sono Dublin Core (come da specifiche OAI) e PICO AP (Portale Italiano delle Cultura). La gestione e la configurazione dell’applicazione avviene attraverso file XML e XSL con i quali è possibile modificare i set di estrazione OAI, il mapping degli schemi xml Dublin Core e le decodifiche dei vari campi. L’OAI Data Provider è stato esteso per catturare e trasferire in formato PICO AP la conoscenza complessa ed eterogenea, inferita mediante il server SPARQL della Base di Conoscenza MESSIAH.
  9. 9. Portale della Cultura Italiana: Architettura ed interoperabilità <ul><li>Il Portale della Cultura Italiana vuole essere uno strumento per comunicare i vari aspetti della cultura italiana, dai beni culturali al territorio, dal cinema, alla musica, al teatro, alla letteratura. Esso offrirà due tipologie di contenuti, sotto forma di metadati: </li></ul><ul><ul><li>contenuti appositamente realizzati da un lavoro redazionale </li></ul></ul><ul><ul><li>contenuti provenienti da Banche Dati, Digital Library esterne di enti e istituti centrali connessi al MiBAC o alla cultura italiana in generale </li></ul></ul>
  10. 10. Dettaglio dell’architettura MESSIAH ConnectionManager SPARQL MESSIAH SPARQL server
  11. 11. Procedura per rendere OAI compliant il server SPARQL <ul><li>La procedura preliminare per l'utilizzo dell'adapter consiste nel configurare tutte le regole per l'estrazione e l'elaborazione dei dati per ciascuna applicazione sorgente. </li></ul><ul><li>I passaggi sono : </li></ul><ul><ul><li>1 - Identificazione del servizio da interrogare (datasource) </li></ul></ul><ul><ul><li>2 - Configurazione del mapping </li></ul></ul><ul><ul><ul><li><connection> </li></ul></ul></ul><ul><ul><ul><li>specifica i parametri di connessione al servizio </li></ul></ul></ul><ul><ul><ul><li><queries> </li></ul></ul></ul><ul><ul><ul><li>specifica le query SPARQL da effettuare per recuperare i metadati che verranno memorizzati nell'OAI repository. Nell'ambito di ciascuna query si effettua la dichiarazione di variabili al fine di effettuare elaborazioni sui dati estratti. </li></ul></ul></ul><ul><ul><ul><li><transfRules> </li></ul></ul></ul><ul><ul><ul><li>contiene il mapping vero e proprio tra metadati recuperati dal datasource e gli elementi PICO da dichiarare. </li></ul></ul></ul><ul><ul><li>3 - Generazione dei metadati </li></ul></ul><ul><ul><li>4 - Pubblicazione dei metadati </li></ul></ul>
  12. 12. Identificazione del database sorgente Le tipologie di datasource testati sono Oracle , SQL Server , MySQL , Access , Excel , Livelink Collection Server (Basis). Esempio di configurazione <connection> <tipo-datasource> SPARQL </tipo-datasource> <driver> messiah.cm.ConnectionManagerSPARQL </driver> <datasource> http://<IP>/rdfserver/messiah </datasource> <username> dbuid </username> <password> dbpwd </password> </connection>
  13. 13. Configurazione sezione queries del mapping 1/3 <ul><li>La sezione queries serve a definire le query SPARQL da effettuare sulla base di conoscenza per recuperare i metadati che saranno utilizzati per costruire i metadati Dublin Core o PICO. </li></ul><ul><li>Pattern di integrazione informativa tra le classi modellate nelle ontologie di riferimento per il progetto (ICCD, CIDOC, EXIF, DC, coordinate siti subacquei, ..) e la classe degli oggetti PICO Application Profile, per alimentare l’integrazione informativa in seno al protocollo di interoperabilità ed estendere l’ontologia MESSIAH. </li></ul><ul><li>Nella sezione queries ed in quella fields è possibile definire alcune operazioni come: </li></ul><ul><ul><li>Decod: indica che il valore calcolato deve essere decodificato secondo il mapping specificato da un file xml esterno; </li></ul></ul><ul><ul><li>id : consente di specificare l'ordinamento nelle dichiarazioni delle variabili e/o query; </li></ul></ul><ul><ul><li>nullify-if : indica che se l'espressione nella variabile assume uno dei valori specificati nell'attributo, allora alla variabile viene assegnato valore nullo. </li></ul></ul><ul><ul><li>Substring : indica la sottostringa che va estratta dal campo specificato. </li></ul></ul><ul><ul><li>Concat : indica che i valori vanno concatenati con il separatore indicato </li></ul></ul><ul><ul><li>Firstvalue : indica che il campo va valorizzato con il primo valore non vuoto. </li></ul></ul>
  14. 14. Configurazione sezione queries SPARQL 2/3 <ul><li>SPARQL è una specifica sviluppata W3C RDF Data Access Working Group a supporto dell'interrogazione dei documenti RDF. </li></ul><ul><li>Le query SPARQL adottano la sintassi Turtle e si basano sul meccanismo di &quot;pattern matching&quot; e in particolare su un costrutto, il &quot;triple pattern&quot;, che ricalca la configurazione a triple delle asserzioni RDF fornendo un modello flessibile per la ricerca di corrispondenze. </li></ul><ul><li>SPARQL è un linguaggio per recuperare informazioni da un determinato grafo RDF, secondo un formalismo sintattico che è analogo a quello utilizzato ai linguaggi di interrograzione SQL per le basi di dati e viene utilizzato per: </li></ul><ul><ul><ul><li>l’estrazione delle informazioni </li></ul></ul></ul><ul><ul><ul><li>estrarre il sottografo RDF. </li></ul></ul></ul><ul><ul><ul><li>costruire nuovi grafi RDF </li></ul></ul></ul><ul><li>La sintassi generica delle query SPARQL è del tipo: </li></ul><ul><ul><li>SELECT <elenco variabili da valorizzare> </li></ul></ul><ul><ul><li>FROM <risorsa contenente asserzioni> </li></ul></ul><ul><ul><li>WHERE {<elenco triple pattern>. } </li></ul></ul><ul><li>nella clausola SELECT vengono elencate le variabili da valorizzare ai fini del risultato, nella clausola FROM viene definita la base dati, documento RDF, su cui eseguire la query, nella clausola WHERE vengono elencati, tra parentesi graffe, i criteri di selezione, ovvero i triple pattern. </li></ul>
  15. 15. Configurazione sezione queries del mapping 3/3 Esempio query SPARQL per il comando OAI-PMH ListIdentifiers, con mapping PICO <query par=&quot;mdf&quot; value=&quot;pico&quot;> <body>#LISTRECORDS PREFIX dc: &lt;http://purl.org/dc/elements/1.1/&gt; PREFIX m: &lt;urn:gruppocm.it:messiah#&gt; PREFIX cidoc: &lt;http://cidoc.ics.forth.gr/rdfs/cidoc_v4.2.rdfs#&gt; PREFIX owl: &lt;http://www.w3.org/2002/07/owl#&gt; PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt; SELECT DISTINCT $identifier $date where{ {$identifier rdf:type cidoc:E70.Thing. $identifier dc:date $date. } UNION {$identifier rdf:type m:TargetSideScanSonar. $identifier dc:date $date.} </body> <condition par=&quot;from&quot;>$date &gt;= &quot;?&quot;</condition> <condition par=&quot;until&quot;>$date &lt;= &quot;?&quot;</condition> <transfRules>Mapping-PICO.xslt</transfRules> <mapping par=&quot;identifier&quot;>identifier</mapping> <mapping par=&quot;datestamp&quot;>date</mapping> </query>
  16. 16. Configurazione sezione transfRules del mapping La sezione transfRules contiene il mapping vero e proprio tra i dati recuperati dal datasource e gli elementi OAI Dublin Core da dichiarare. Il mapping viene realizzato con una trasformazione XSL. Una di regola di mapping per il campo dc:subject, che verrà istanziato con i metadati Dublin Core provenienti dall’ontologia MESSIAH per ottenere un metadato come nel seguente esempio: <dc:subject xsi:type=&quot;pico:Thesaurus&quot;>name=autori; id=123456</dc:subject> <xsl:apply-templates select=&quot;//field[@name='picoThesaurus']&quot; mode=&quot;tcustom&quot;> <xsl:with-param name=&quot;tag&quot;>dc:subject</xsl:with-param> <xsl:with-param name=&quot;lang&quot;>it</xsl:with-param> <xsl:with-param name=&quot;xtype&quot;>pico:Thesaurus</xsl:with-param> </xsl:apply-templates> <xsl:template match=&quot;field&quot; mode=&quot;tcustom&quot;> <xsl:param name=&quot;tag&quot;/> <xsl:param name=&quot;lang&quot;/> <xsl:param name=&quot;xtype&quot;/> </xsl:template>
  17. 17. Generazione e pubblicazione dei metadati (1/2) La procedura di generazione dei metadati utilizza tutte le specifiche dei passaggi precedenti e popola l’OAI Repository. A questo punto i metadati sono disponibili per l’Harvesting attraverso un sistema OAI-PMH compliant Per semplificare le operazioni di controllo dei risultati, si è sviluppata una semplice interfaccia di consultazione. L’interfaccia permette di eseguire le richieste OAI (GetRecord, Identify, ListIdentifiers, ListMetadataFormats, ListRecords, ListSets) e di avere la consistenza attuale del repository suddivisa per tipologia di Set e di Formati.
  18. 18. Generazione e pubblicazione dei metadati (2/2) Esempio di richiesta:ListRecords
  19. 19. Milano Corso di Porta Romana, 6 - 20122 Milano t +39 02 80 51 131 f +39 02 80 51 163 Roma Via G. Bettolo, 3 - 00195 Roma t + 39 06 37 29 945 f + 39 06 37 51 83 28 Cosenza Via Sabotino, 55 – 87100 Cosenza Tel +39 0984 21 84 2 www.idtech.it [email_address]

×