Topic Maps Un’introduzione Federico Meschini – 06/05/2006 Dati&Metadati “The 21st century will be the century of metadata” Daniela Florescu – W3C XML Query Working Group Perché, a cosa servono? Tanto la quantità d’informazione è maggiore tanto il ruolo dei metadati diventa fondamentale, per la riduzione dell’entropia… Ricerca Alla Biblioteca Centrale Vittorio Emanuele II (Ma anche in una qualsiasi altra biblioteca) cerchereste un libro solo per sentito dire o tramite degli appunti trovati casualmente? Questo è quello che succede sul WorldWideWeb, anche se le cose stanno cambiando… http://www.google.it/search?hl=it&q=failure http://www.google.it/search?hl=it&q=beatles http://buy.ebay.com/beatles (http://kelty.rice.edu/375/images/taxonomy/bacon.jpg) http://base.google.com/base/search?q=beatles http://en.wikipedia.org/wiki/Godfather http://del.icio.us/search/?all=godfather http://www.flickr.com/photos/tags/library/ Tipi di Metadati Diversi tipi di metadati, a seconda del tipo di oggetto a cui ci si riferisce. La variegata tipologia di rappresentazione digitale, sia a livello di contenuto sia di formato, moltiplica il numero e la natura dei metadati necessari. http://opac.uniroma1.it/ http://www.bibliotecaitaliana.it/dlib/catalogo/search.xq?start=1&display=d etails&max=15 http://padis.uniroma1.it http://www.repubblica.it/servizi/rss/index.html?ref=hpser http://news.google.com Abbiamo quindi metadati bibliografici, archivistici, strutturali, amministrativi, semantici… SemanticWeb1 Lo stereo stava suonando la canzone dei beatles "we can work it out" quando il telefono squillò. Quando Pete rispose, il suo telefono abbassò il volume dello stereo mandando un messaggio a tutti i dispositivi dotati di un controllo di volume. La sorella di Pete, Lucy, era appena uscita dall'ufficio del dottore: "La mamma ha bisogno di farsi visitare da uno specialista e di sedute di terapia circa 2 volte a settimana. Sto per chiedere al mio agente di prenotare gli appuntamenti". Lucy istruì il proprio Semantic Web Agent usando il suo palmare. L'agente si mise immediatamente a cercare informazioni sul web riguardo al trattamento prescritto dall'agente del dottore. Consultò diverse cliniche e si concentrò su quelle coperte dall'assicurazione della mamma che si trovassero entro un raggio di 20 miglia dalla propria casa. Scarto' quelli che avevano una valutazione inferiore ad eccellente o molto buono. Immediatamente l'agente si mise a cercare una corrispondenza tra gli orari di appuntamento disponibili (recuperati dai siti web delle cliniche) e gli orari di lavoro di Lucy o Pete. “The Semantic Web. A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities”, Tim Berners-Lee, James Hendler, Ora Lassila. Scientific American, May 2001 issue., SemanticWeb2 Le informazioni attualmente presenti sul WWW sono: • scritte in linguaggio naturale • destinate agli esseri umani • multimediali (testo, immagini, audio, video) • incomprensibili alle macchine Ma se si superasse quest’ultimo limite? SemanticWeb3 Progetto del W3C Tecnologie chiave: RDF, RDFSchema, OWL (TopicMaps). Concetto chiave: Ontologia Ontologia Studio dell'essere o dell'esistenza (filosofia) schema concettuale esaustivo e rigoroso nell'ambito di un dato dominio “una specificazione di una concettualizzazione” (scienze dell’informazione) Esempio CIDOC-CRM per il Cultural Heritage Un' ontologia di 81 classi e 132 proprietà per il contesto culturale. Sviluppata dall’ICOM/CIDOC Documentation Standards Group Descrive in modo formale le caratteristiche e le relazioni esistenti tra le risorse culturali, permettendo così l’integrazione tra digital asset diversi. esempio CIDOC-CRM per il Cultural Heritage Topic Maps Standard ISO (13250:2003) Knowledge Representation and Management Basate sul principio Topic Association Occurrence (TAO) (http://www.ontopia.net/topicmaps/materials/tao.html) Evoluzione di Indici, Thesauri e Tassonomie Topic Maps Perché? Dopo Prima Infoglut Information / Knowledge Management Topic Maps Topic: un qualsiasi concetto, una persona, un evento, un’opera letteraria. Association: le relazioni tra i vari topic Occurence: le relazioni tra i topic e le risorse informative da cui sono rappresentati Topic Maps topic map resources Word doc web page XML database record XML image video audio Topic Maps • Ogni Topic ha un nome • I Topic sono collegati tra di loro tramite le Associazioni • Un Topic può appartenere ad un numero qualsiasi di Tipi • I Tipi sono Topic con un livello elevato di astrazione • Anche le Associazioni possono avere un Tipo • Le Occorrenze possono essere interne o esterne alla Mappa • L’ambiguità dei Topic può essere eliminata tramite l’uso di Indicatori Pubblici Topic Maps Cavalleria Rusticana, 71, 203-204 The Girl of the Golden West, vedi La fanciulla del West Leoncavallo, Ruggiero I Pagliacci, 71-72, 122, 247-249, 326 Diversi tipi di Topic Madama Butterfly, 70-71, 234-236, 326 (corsivo) Manon Lescaut, 294 Mascagni, Pietro Diversi tipi di Occorrenza Cavalleria Rusticana, 71, 203-204 (grassetto) Puccini, Giacomo, 69-71 La Bohème, 10, 70, 197-198, 326 Sinonimi La fanciulla del West, 291 Madama Butterfly, 70-71, 234-236, 326 Associazioni tra diversi Manon Lescaut, 294 Topic (autore - opera) Cantanti, 39-52, Vedi anche i singoli nomi baritono, 46 Relazioni di classe basso, 46-47 soprano, 41-42, 337 (Supertipo – Sottotipo) tenore, 44-45 soprano, 41-42, 337 Turandot, 70, 282-284, 326 Rustic Chivalry, see Cavalleria Rusticana Topic Maps Ok, ma in concreto? Partiamo da un semplice enunciato: Dante Alighieri è l’autore de “La Divina Commedia” e del “Convivio”. Dante, Divina Commedia, e Convivio, sono tutti Topic… … ma anche Autore e Opera lo sono… … inoltre tra Autore e Opera c’è una relazione evidente bidirezionale (“un autore scrive opere” – “le opere sono scritte da un autore”) e anche questa è un Topic. Topic Maps T A AUTORE A SCRITTURA T OPERA I T DANTE T I I T = Topic A = Associations I = InstanceOf T COMMEDIA CONVIVIO T Topic Maps E di conseguenza… T T T DANTE A A COMMEDIA SCRITTURA A CONVIVIO T Questo però è ancora un livello astratto. Ad un livello più materiale, i Topic si manifestano nelle Occorrenze, che sono delle risorse “tangibili”. Topic Maps Cos’è un Occorrenza? (risposta empirica) Per il Topic “Divina Commedia” un’occorrenza può essere l’edizione elettronica su LiberLiber o quella su Biblioteca Italiana, l’edizione multimediale su cd-rom de L’Espresso ma anche la versione a stampa a cura di Giorgio Petrocchi e edita da Mondadori. Ogni occorrenza deve poter essere identificabile (ed eventualmente recuperabile) tramite un URI. Ogni occorrenza ha una sua tipologia (file html, xml, cd rom, libro a stampa), che è a sua volta rappresentata da un Topic. Topic Maps HTML T I T Divina Commedia (LiberLiber) http://www.liberliber.it/biblioteca/a/alighieri/la_divina_commedia/html/ O COMMEDIA Divina Commedia (Cd-Rom) http://shop.sussidiario.it/scheda.asp?id=2078&r=sussidia I T = Topic O = Occurences I = InstanceOf CD-ROM T O Topic Maps O T T I DANTE JPG http://upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Portrait_de_Dante.jpg/401px-Portrait_de_Dante.jpg T = Topic O = Occurences I = InstanceOf Topic Maps Come identificare in maniera univoca un Topic? Problema dell’ambiguità dei nomi (etichette testuali) Dante Alighieri Totò Dante (Johnny Stecchino) Toto (Mago di Oz) Topic Maps Soluzione: utilizzo di identità di soggetto (Subject Identity). Una Subject Identity a sua voltà utilizzerà un indicatore di soggetto (Subject Identicator) per indicare in maniera univoca e non ambigua (URI) ciò di cui si sta parlando. Il nome(i) del Topic diventa quindi una semplice etichetta. “Forse che quella che chiamiamo rosa cesserebbe d’avere il suo profumo se la chiamassimo con altro nome?” W. Shakespeare – Giulietta e Romeo Topic Maps T DANTE S DANTE ALIGHIERI SU WIKIPEDIA http://it.wikipedia.org/wiki/Dante T = Topic S = Subject Identity Wikipedia è un’ottima fonte di Indicatori di Soggetto Topic Maps Una volta indicato il soggetto, senza possibilità di ambiguità, è possibile utilizzare “n” etichette testuali. TOTÒ SU WIKIPEDIA http://it.wikipedia.org/wiki/Toto T S T O I TOTÒ JPG T = Topic O = Occurences TOTÒ N ANTONIO DE CURTIS N DE CURTIS, ANTONIO N I = InstanceOf N = Name S = Subject Identity Topic Maps Ambito: i nomi e le occorrenze possono avere un ambito di validità, uno “scope”, che è a sua volta rappresentato da un Topic. T N SC T TOTÒ CINEMA ANTONIO DE CURTIS ANAGRAFE TOTÒ SC T = Topic N = Name SC = Scope N T Topic Maps Come trasformare tutto questo in qualcosa di Machine-Understandable? Tramite l’utilizzo di una sintassi basata su delle regole ben precise XML… 2001 – XML Topic Maps (XTM) (http://www.topicmaps.org/xtm/1.0/xtm1.dtd) Parte di un insieme più grande (modello dei dati, linguaggio d’interrogazione, …) Topic Maps Elemento radice <topic Map> <topic>[…]</topic> <association>[…]</association> <mergeMap>[…]</mergeMap> </topicMap> Topic Maps <topic id=“opera” /> <topic id=“autore” /> <topic id=“scritto_da” /> <topic id=“altro_nome” /> <topic id=“descrizione” /> <topic id=“html” /> <topic id=“xml” /> <topic id=“jpg” /> Definizione dei Tipi di Topic, gli elementi astratti, di alto livello, che servono a definire il tipo di ISTANZA. Topic Maps <topic id=“commedia"> <instanceOf> <topicRef xlink:href=“#opera"/> </instanceOf> <baseName> <baseNameString>Commedia</baseNameString> </baseName> <baseName> <scope> <topicRef xlink:href=“#altro_nome"/> </scope> <baseNameString>Divina Commedia </baseNameString> </baseName> </topic> Topic Maps <topic id=“commedia"> […] <occurrence> <instanceOf> <topicRef xlink:href=“#html"/> </instanceOf> <resourceRef xlink:href="http://www.bibliotecaitaliana.it:6336/dy naweb/bibit/autori/a/alighieri/commedia"/> </occurrence> </topic> Topic Maps <topic id=“commedia"> […] <occurrence> <instanceOf> <topicRef xlink:href=“#xml"/> </instanceOf> <resourceRef xlink:href="http://www.bibliotecaitaliana.it/archivio /alighieri/commedia/alighieri_commedia.xml"/> </occurrence> </topic> Topic Maps <topic id=“commedia"> […] <occurrence> <instanceOf> <topicRef xlink:href=“#descrizione"/> </instanceOf> <resourceData>Titolo originale: Comedia. Poema in tre cantiche (Inferno · Purgatorio · Paradiso) di Dante Alighieri… </resourceData> </occurrence> </topic> Topic Maps <topic id=“convivio"> <instanceOf> <topicRef xlink:href=“#opera"/> </instanceOf> <baseName> <baseNameString>Convivio</baseNameString> </baseName> <occurrence> <instanceOf> <topicRef xlink:href=“#html"/> </instanceOf> <resourceRef xlink:href="http://www.bibliotecaitaliana.it:6336/dynawe b/bibit/autori/a/alighieri/convivio"/> </occurrence> </topic> Topic Maps <topic id=“dante"> <instanceOf> <topicRef xlink:href=“#persona"/> </instanceOf> <subjectIdentity> <subjectIndicatorRef xlink:href="http://it.wikipedia.org/wiki/Dante_Alighieri"/> </subjectIdentity> <baseName> <baseNameString>Dante Alighieri</baseNameString> </baseName> </topic> Topic Maps <topic id="dante"> […] <occurrence> <instanceOf> <topicRef xlink:href="#jpg"/> </instanceOf> <resourceRef xlink:href=" http://it.wikipedia.org/wiki/Immagine:Portrait_de_Dant e.jpg "/> </occurrence> </topic> Topic Maps <association> <instanceOf><topicRef xlink:href="#scritto_da"/> </instanceOf> <member> <roleSpec><topicRef xlink:href="#autore"/></roleSpec> <topicRef xlink:href="#dante"/> </member> <member> <roleSpec><topicRef xlink:href="#opera"/></roleSpec> <topicRef xlink:href="#commedia"/> </member> <member> <roleSpec><topicRef xlink:href="#opera"/></roleSpec> <topicRef xlink:href="#convivio"/> </member> </association> TopicMaps in azione • • • • http://www.ontopia.net/operamap/index.jsp http://www.ontopia.net/omnigator/models/index.jsp http://www.nzetc.org http://jncicancerspectrum.oxfordjournals.org/ Interfacce di visualizzazione adatte a rappresentare il modello logico delle Topic Maps • http://www.medialab.nl/pop.asp?sub=maindemo • http://www.visualthesaurus.com/