Facoltà di Scienze MM. FF. NN.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Facoltà di Scienze MM. FF. NN."

Transcript

1 UNIVERSITÀ DEGLI STUDI DI PALERMO Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Linked Open Data: un caso di studio sui dati del CISI Tesi di laurea di Giovanni Panascì Matricola Relatore Dott. Biagio Lenzitti Correlatore Ing. Davide Taibi Anno Accademico 2010/2011

2 Sommario Indice figure... 4 Prefazione... 5 Capitolo I... 7 Il Web Semantico... 7 Rappresentazione della conoscenza RDF Sintassi per il linguaggio RDF Il modello dei dati in RDF RDFS Ontologie OWL FOAF SIOC SKOS Capitolo II Linked Open Data Accesso ai dati nel Linked Open Data Applicazioni nel Linked Open Data I principi del Linked Open Data Creare collegamenti tra i dati Linked Open Data in Italia

3 Capitolo III Il progetto DBpedia Estrazione dei dati da Wikipedia Estrazione dump-based Estrazione live Estrazione delle informazioni dagli infobox Creazione della base di conoscenza Classificazione delle entità Descrizione delle entità Accesso alla base della conoscenza Interconnessione dei contenuti Il ruolo di DBpedia nel Web of Data Le tecnologie adottate nel progetto DBpedia Capitolo IV Il Linked Open Data nelle università Il prototipo realizzato Estrazione dei dati dal Database Creazione della base di conoscenza Interfaccia di accesso alla base di conoscenza Valutazione del prototipo Conclusioni Bibliografia

4 Indice figure Figura 1 : Architettura del Semantic Web... 9 Figura 2 : Esempio di grafo RDF Figura 3 : Cloud del Linked Open Data Figura 4 : Architettura di Sesame Figura 5: Architettura di D2R Figura 6 : Architettura di Triplify Figura 7 : Il processo di estrazione dei dati da Wikipedia Figura 8: Tabella proprietà di DBpedia Figura 9 : Architettura del prototipo realizzato Figura 10 : Struttura del database utilizzato Figura 11 : Interfaccia di Sesame Figura 12: Statistica delle triple presenti nel triple store realizzato Figura 13 : Grafo dell'ontologia realizzato con Protegé Figura 14 : Interfaccia di accesso alla base di conoscenza

5 Prefazione Questo lavoro di tesi si pone come obiettivo il collegamento dei dati dei Corsi di Laurea (CdL) del Consiglio Interclasse delle Scienze Informatiche (CISI) della facoltà di Scienze MM. FF. NN. dell Università degli studi di Palermo al Linked Open Data, una delle applicazioni più recenti e più promettenti delle tecnologie del Semantic Web. Il Linked Open Data rende i dati disponibili sul web in formati standard e accessibili fornendo una descrizione semantica in accordo con gli obiettivi del Semantic Web. Questo lavoro di tesi pone le sue fondamenta sullo studio degli elementi chiave del Semantic Web, quali i formati ed i linguaggi utilizzati per fornire una semantica ai dati. Percorrendo le tappe dell evoluzione del Semantic Web e delle sue applicazioni, particolare attenzione è stata posta nei riguardi del Linked Open Data e delle tecniche utilizzate per generare Linked Data, cioè dati aperti e collegati fra loro. Gli studi effettuati hanno permesso di sottolineare come di recente è sempre più diffusa, da parte delle università, la tendenza a pubblicare i propri dati sul web seguendo le regole del Linked Open Data. Prendendo in considerazione l esperienza di DBpedia, nodo principale del Linked Open Data, che ha come obiettivo l inserimento nel Linked Open Data dei dati presenti su Wikipedia, si è sviluppata un applicazione che, basandosi sulle tecniche analizzate, avesse l obiettivo di generare Linked Data a partire dai dati presenti sul Web relativi ai CdL del CISI. 5

6 Il capitolo I di questo lavoro descrive il Semantic Web, definendone gli elementi fondamentali su cui si basa la sua struttura e descrivendo i formati utilizzati per rappresentare le entità e generare le ontologie. Nel capitolo II è stato descritto il Linked Open Data, evoluzione più recente ed interessante del Semantic Web, e il Web Of Data, cioè il web generato attraverso la creazione di dati che siano aperti e collegati fra loro, analizzando le regole basilari per creare Linked Data e sottolineando l importanza di avere a disposizione dati aperti. Nel capitolo III è stato analizzato l esempio di DBpedia, fornendo una descrizione dettagliata degli algoritmi che hanno permesso e permettono, in un sistema in continua evoluzione, di convertire tutte le informazioni presenti in Wikipedia in dati legati ad una ontologia e con una semantica associata. Nel capitolo IV, infine, viene descritto il prototipo realizzato basato sulle applicazioni e sulle tecnologie analizzate. Viene inoltre fornita una descrizione dettagliata delle operazioni effettuate per rendere i dati presenti nei database dei Corsi di Laurea del CISI, semanticamente collegati al Linked Open Data. Possibili sviluppi futuri dell applicazione sono riportati nelle conclusioni. 6

7 Capitolo I Il Web Semantico Internet e il Web sono stati concepiti in modo tale che il loro contenuto fosse comprensibile, semanticamente, cioè dal punto di vista del significato, per l uomo e non per i computer. Se su un qualsiasi motore di ricerca sul web viene ricercata la parola albero, si otterranno nei risultati collegamenti a pagine relative a svariati argomenti quali l informatica, la botanica, la nautica, e viene lasciato all utente il compito di riconoscere i collegamenti che gli sono utili e scartare gli altri. Tutto questo è indice del fatto che i collegamenti sul web fra i vari dati non si basano sulla semantica ma esclusivamente sulla sintassi. Questo è l ostacolo che, nel suo concepimento, il Semantic Web si pose di superare. In generale, i computer non possiedono un metodo per processare la semantica dei dati presenti nelle pagine web. L idea del Semantic Web è quella di un Web non separato da quello classico ma che sia una sua estensione nella quale le informazioni abbiano un ben definito significato, ed in cui le macchine possano comprendere i dati in esso contenuti. Nel Web la potenza del link ipertestuale è di poter collegare tutto con tutto e le informazioni sono di natura diversa ma per la maggior parte esse non sono processabili automaticamente dalle macchine. Lo schema del Semantic Web nasce quindi con l idea di creare link che descrivano il significato del contenuto dei link stessi. Perché esso funzioni, i computer 7

8 devono avere accesso a collezioni di informazioni ed insiemi di regole che possano condurre all elaborazione automatica dei dati, ma devono anche essere definite le relazioni e i vincoli che intercorrono fra i dati stessi. Parlò di Semantic Web per la prima volta Tim Berners-Lee che, insieme ai ricercatori del W3C, nel 2001 definì la pila del Semantic Web, un architettura che definisce il Semantic Web attraverso i seguenti livelli, dal basso verso l alto [1]: URI (Uniform Resource Identifiers), che permettono di identificare i concetti ed i termini fondamentali per la codifica delle informazioni, collegando ogni concetto alla sua definizione, rinvenibile sul Web attraverso gli URI stessi. XML (extensible Markup Language), un linguaggio di marcatura che permette di creare dei propri tag per la strutturazione delle informazioni. RDF (Resource Description Framework), insieme a RDF Schema, permette di effettuare interscambio di dati sul Web. L informazione è codificata in triple che consentono di descrivere le risorse e i tipi di dato. Livello Ontologico, dove si trovano le Ontologie, ovvero quei documenti che definiscono formalmente la relazione fra i termini, le Regole, e SPARQL, linguaggio di interrogazione che permette di effettuare le richieste nell ambiente web. 8

9 Livello Logico, al di sopra di quello ontologico, in cui vengono utilizzate le asserzioni definite nei livelli sottostanti per derivare nuova conoscenza. Trust e Proof, ultimi due livelli della pila, ancora in fase di studio da parte del W3C. Figura 1 : Architettura del Semantic Web Parlando di URI e URL si fa spesso confusione. Durante gli anni 90 fu definita una suddivisione fra gli URL, identificatori che specificavano la localizzazione di una risorsa e gli URN, nomi delle risorse che erano indipendenti dalla localizzazione delle risorse stesse. Secondo questa visione definita classica dunque un URI era sia un URL che un URN. Nella visione 9

10 contemporanea questa differenza si è un po persa e gli identificatori Web sono in generale definiti come URI che definiscono dei sottospazi, cioè i namespace. Secondo questa visione, dunque, gli URL sono un tipo di URI che identifica una risorsa attraverso un meccanismo di accesso primario come, ad esempio, la sua localizzazione [2]. http è dunque un URI e un URI http è un URL. Gli URI abbracciano quindi un campo più ampio di applicazione e possono riferirsi a risorse di diversi tipi che siano identificate in maniera univoca [3]. Rappresentazione della conoscenza Berners-Lee, inventore del Semantic Web, afferma che la rappresentazione della conoscenza è un insieme di collezioni strutturate di informazioni e regole di inferenza che possano permettere ai computer di effettuare dei ragionamenti automatici. Con questa definizione ci si è voluto staccare dai tradizionali sistemi di rappresentazione della conoscenza, centralizzati, che richiedevano che ognuno condividesse esattamente le stesse definizioni di concetti comuni, con conseguenti limiti alle possibili interrogazioni che potevano essere effettuate. La sfida quindi, come già detto, era quella di sviluppare un linguaggio che permettesse di esprimere insieme le regole e i dati. RDF è stato tra i primi linguaggi sviluppati per il Semantic Web e utilizzato per questo scopo. 10

11 RDF Il linguaggio RDF, acronimo di Resource Description Framework, permette la rappresentazione di dati e metadati sul Web. Così come avviene per le pagine Web, RDF permette l identificazione univoca di ogni risorsa e prevede che ad ogni risorsa possano essere collegati dei metadati che ne descrivano il contenuto. Alla base del linguaggio c è la definizione di enunciato, ossia la struttura base della descrizione di una risorsa, formato da un soggetto che identifica la risorsa, sia essa una pagina Web o un insieme di pagine, un predicato, che indica la proprietà o l attributo che si vuole descrivere e un oggetto; questi elementi danno luogo ad una tripla [4]. La rappresentazione di RDF può essere vista allora come un grafo etichettato in cui i nodi rappresentano le risorse e gli archi orientati che li collegano le proprietà, mentre i rettangoli indicano i valori assunti dalle risorse. Figura 2 : Esempio di grafo RDF 11

12 Nel modello RDF la tripla viene identificata attraverso le Uniform Resource Identifier (URI) e può essere espressa secondo differenti sintassi come, ad esempio, la sintassi N3 o la sintassi XML. Sintassi per il linguaggio RDF I concetti utilizzati dal linguaggio RDF possono essere espressi mediante diverse sintassi. La sintassi più comunemente utilizzata è la sintassi che fa uso di XML per esprimere le triple soggetto, predicato e oggetto. Questo però non è l unico modo per esprimere le relazioni RDF. Un altra sintassi molto diffusa è la sintassi Notation 3 (N3) [5]. Un esempio di sintassi RDF/XML è <rdf:description rdf:about=" <ex:editor> <rdf:description> <ex:homepage> <rdf:description rdf:about=" </rdf:description> </ex:homepage> </rdf:description> </ex:editor> </rdf:description> Un esempio di sintassi in Notation 3 (N3) è il seguente 12

13 <#giovanni> <#conosce> <#andrea> e tale sintassi è nata per rendere le triple più comprensibili all essere umano. Ogni membro è identificato da un URI: < Oppure < Il modello dei dati in RDF Il modello di base creato dall utilizzo di RDF è un insieme di dati che è possibile esplorare andando da un link all altro in un grafo composto da nodi tra di essi connessi. Ogni volta che si cerca un URI in un nodo del grafo RDF, si otterranno informazioni sugli archi che entrano nel nodo e su quelli che escono da esso. In altre parole restituisce ogni tripla RDF nella quale il termine appaia come soggetto oppure come oggetto. Questo grafo viene detto browsable se, per l URI di ogni nodo, otterremo informazioni che descrivono il nodo, cioè che restituiscono tutte le istruzioni in cui il nodo è soggetto oppure oggetto e descrivono tutti i blank nodes collegati al nodo con un arco. I blank nodes sono nodi che nel grafo RDF rappresentano una risorsa per la quale non è presente l URI e solitamente possono essere utilizzati solo come soggetto o oggetto in una tripla, anche se nella sintassi N3 possono fungere anche da predicato [6]. Quando un dato è dunque memorizzato in due documenti, questo sta ad indicare che ogni istruzione RDF che lega due 13

14 elementi nei due file deve essere ripetuta in ognuno di essi. Questo però genera un primo problema di possibile inconsistenza del dato, visto che esso viene memorizzato in due locazioni differenti, ma un insieme di dati totalmente navigabili con link in entrambe le direzioni deve essere completamente consistente e questo può avvenire tuttavia quando essi sono generati automaticamente. Un altro problema può essere quello di un numero di archi eccessivamente elevato. Una soluzione può essere quella di contenere link relativi a proprietà diverse in documenti diversi. RDFS RDF permette di rappresentare le risorse del web attraverso i suoi enunciati. Per definire i tipi di risorse oppure per descrivere le relazioni tra le risorse stesse si avrà la necessità di utilizzare dei linguaggi ontologici. Il primo passo in questa direzione è stato fatto attraverso RDF Schema o RDFS, un estensione di RDF che comprende meccanismi per la definizione delle risorse e dei collegamenti fra loro. Il riferimento chiaro è quello ai linguaggi Object-Oriented, ma in più si ha la possibilità di descrivere in maniera molto dettagliata le proprietà che legano le risorse. Come nei linguaggi Object- Oriented, la tipizzazione si chiama classe ed è indicata dalla risorsa rdfs:class e le risorse che hanno come tipo una specifica classe si chiamano istanze della classe. Possono inoltre essere descritte le relazioni fra le classi con l ereditarietà, definita dalla proprietà rdfs:subclassof che lega una classe ad 14

15 un altra che ne rappresenta un sottoinsieme. In RDF è possibile definire predicati che possono essere utilizzati nelle triple per collegare le risorse tra loro; tramite RDFS è possibile anche indicare che una determinata proprietà possa, per esempio, assumere solo alcuni valori, utilizzando il dominio e il codominio della proprietà RDF. Tramite l enunciato rdfs:domain, per esempio, viene definito un dominio, mentre tramite rdfs:range di che tipo devono essere i valori assunti da una determinata proprietà. Per descrivere in maniera specifica le proprietà RDF, viene utilizzato il tipo rdf:property, e si ha la possibilità di utilizzare rdfs:subpropertyof, per indicare l ereditarietà fra le proprietà. Ci sono infine delle proprietà di RDFS che possono essere usate nella definizione di vocabolari come rdfs:label che lega una risorsa alla sua etichetta, oppure rdfs:seealso, per indicare una risorsa da consultare per avere ulteriori informazioni, oppure ancora rdfs:isdefinedby che lega la risorsa alla fonte che la definisce [7]. Ontologie L idea che sta alla base di RDF, come visto, è quella di strutturare i dati presenti sul Web per automatizzare l accesso ad essi e l approccio seguito è quello di costruire dei metadati. I metadati sono letteralmente dati sui dati. Un esempio di possibile utilizzo di metadati è l organizzazione di un database universitario, in cui la catalogazione prevede che ogni materia sia rappresentata tramite coppie chiave-valore: 15

16 - Materia: Linguaggi per il Web - Anno accademico: Corso Di Laurea: Informatica - Facoltà: Scienze MM. FF. NN. Questo approccio permette di velocizzare la ricerca. Agli albori del progetto del Semantic Web si vedeva questa rappresentazione della conoscenza così come poteva essere visto il link ipertestuale prima della nascita del web, cioè una buona idea, che però per essere realizzata doveva essere calata in un sistema globale. Il problema consisteva nel rendere i dati e le regole ad essi associate versatili, cosicché il loro trasferimento da un sistema ad un altro fosse possibile. Per permettere tutto ciò l idea era di sviluppare un linguaggio che permettesse di esprimere insieme sia i dati che le regole, in modo da poter combinare informazioni semanticamente affini presenti su due o più database differenti. Il problema che sorgeva era però il fatto che dati uguali potevano essere identificati in maniera diversa in due database differenti attraverso connessioni logiche tra i dati stessi. La soluzione proposta fu quella di utilizzare le ontologie, collezioni d informazioni, che definissero formalmente le relazioni fra i vari termini ad esempio con l utilizzo di una tassonomia, cioè una classificazione, ed un insieme di regole. L idea di utilizzare le ontologie per migliorare il funzionamento dei motori di ricerca o addirittura per mettere in relazione le informazioni su una pagina alle regole ad essa associate si 16

17 ridimensionò col passare degli anni e nel 2006 lo stesso Tim Berners-Lee presentò una rivisitazione del suo ambizioso progetto. L idea dell interoperabilità fra i sistemi, basata sulle connessioni logiche fra i termini, era rimasta largamente inutilizzata. L autore sosteneva che però ci fossero stati dei passi in avanti che stavano a indicare un futuro successo, giustificando le sue affermazioni con il crescente bisogno di dati e informazioni condivisi sul web. In effetti, si erano già viste le prime applicazioni del Semantic Web in ambito scientifico e medico, con la creazione di nuove ontologie, che erano state raggruppate, facendo da precursori ad altre possibili applicazioni. L autore tendeva a sottolineare però come la rivoluzione con cui i dati venissero resi disponibili su larga scala non fosse ancora avvenuta [8]. La sfida principale si concentrava quindi sullo sviluppo e la gestione delle ontologie che permettessero al Semantic Web di svilupparsi. Creare le ontologie non voleva dire quindi solamente definire i concetti, ma anche quali di essi dovessero essere persistenti e quali meno, quali strutture potessero durare per lunghi periodi e quali fossero più volatili, quindi capire quali concetti avessero bisogno di revisioni nel tempo. Da questo veniva fuori uno dei punti deboli delle ontologie, ovvero il costo, in termini di tempo, del loro sviluppo e mantenimento. L autore sosteneva però che in alcune aree, come quella scientifica, il tempo potesse essere facilmente recuperato e che in altre, come quella commerciale, il vantaggio dato dall utilizzo di una ben strutturata ontologia ripagasse abbondantemente gli sforzi compiuti per il suo sviluppo. 17

18 Nell ambito del web questi costi potevano essere addirittura suddivisi fra gli utenti della comunità che creavano i dati, diminuendo al crescere degli utenti stessi. Per le ontologie è stato dunque sviluppato un linguaggio che ne permettesse la creazione. OWL Ontology Web Language (OWL) è il linguaggio per la definizione e realizzazione di ontologie fruibili su Web. E il risultato di un connubio tra necessità di maggiore espressività rispetto a RDFS e trattabilità. OWL permette di caratterizzare le proprietà in maniera più ricca. Esistono tre versioni di OWL: OWL Lite: permette di esprimere gerarchie di concetti in maniera semplice. OWL DL: letteralmente Description Logics, studia una particolare porzione della logica decisionale di base. OWL Full: utilizza la logica del primo ordine espandendola con altri predicati, comportando però una maggiore complessità di utilizzo data la sua indecidibilità. Nei paragrafi seguenti vengono descritte alcune delle ontologie più diffuse. 18

19 FOAF L ontologia Friend of a Friend (FOAF) nasce nel 2000 da Libby Miller e Dan Brickely, per rappresentare relazioni sociali. Contiene i concetti di base per descrivere una persona e i suoi legami di parentela, di amicizia, lavorativi e così via. L utente può registrarsi sull ontologia inserendo il proprio file FOAF in formato RDF in cui specifica tutti i propri dati, creando link verso altri file FOAF con la proprietà foaf:knows. La crescita del numero di profili FOAF è tale che si stimano sul Web svariati milioni di file [9]. SIOC Semantically-Interlinked Online Communities (SIOC), nasce dal desiderio di descrivere risorse come blog, comunità, gruppi sul Web, e in generale dalle applicazioni di social networking. E legato a FOAF nella descrizione delle relazioni fra persone. Il suo uso si sta diffondendo grazie anche all utilizzo di tecnologie di analisi delle reti sociali che permettono l estrazione delle informazioni dalle pagine Web traducendole in RDF proprio tramite l ontologia SIOC. SKOS Simple Knowledge Organization System (SKOS) è una famiglia di linguaggi che permette di descrivere semplici strutture di conoscenza sul Web come glossari, classificazioni, tassonomie e qualsiasi altro tipo di dati strutturati. SKOS è utilizzato per definire vocabolari comuni di metadati da condividere, 19

20 utilizzando però semplici schemi concettuali. La parte centrale di SKOS (SKOS Core Vocabulary) è stata progettata per essere facilmente estendibile ed il suo scopo principale è quello di connettere archivi come i thesauri con strutture nuove, pensate quindi per il Web, come le open-directory. I fattori che avevano quindi portato al successo del Web, ovvero quelli sociali, potevano essere importanti anche per il successo della sua evoluzione semantica e diventarono quindi la strada da seguire. Le recenti evoluzioni del web l hanno portato da uno spazio globale di documenti ad uno spazio in cui ai documenti sono collegati anche i dati. Questo aspetto verrà approfondito nel prossimo capitolo attraverso la descrizione del Linked Open Data. 20

21 Capitolo II Linked Open Data Il Linked Data è la creazione di link tra dati che possono provenire da differenti database distanti geograficamente o semplicemente da sistemi eterogenei all interno di una stessa organizzazione, e riguarda dati comprensibili alle macchine il cui significato è esplicitamente definito. Tim Berners-Lee, intervenendo alla conferenza Ted del Febbraio 2009, descrisse l idea che stava dietro al Linked Open Data in questo modo <<Voglio pensare a un mondo in cui tutti abbiano caricato dati sul web e praticamente qualunque cosa possiate Immaginare sia sul web. E chiamarlo Linked Data>>. L impiego di URI HTTP per identificare le risorse, del protocollo HTTP come meccanismo di ricerca e di RDF come modello di rappresentazione delle risorse, permette di generare direttamente la struttura generale del Web of Data, che può quindi essere visto come uno strato aggiuntivo e che possiede proprietà quali la possibilità di contenere ogni tipo di dato. Il progetto del Linked Open Data si basa su una community fondata nel 2007 e supportata dal W3C, ed il suo scopo è quello di realizzare il Web Of Data identificando dati esistenti che sono disponibili sotto licenze di tipo open, convertendoli in RDF in accordo con i principi del Linked Data e pubblicandoli sul Web [10]. 21

22 Figura 3 : Cloud del Linked Open Data 22

23 I primi partecipanti al progetto furono ricercatori e sviluppatori di laboratori di ricerca universitari e piccole compagnie. Oggi il progetto è cresciuto considerevolmente, avendo coinvolto grandi organizzazioni come la BBC, Thomson Reuters e la Library of Congress. Questa crescita è stata possibile grazie alla natura open del progetto, in cui chiunque può partecipare semplicemente pubblicando una serie di dati in accordo ai principi descritti. La Figura 3 descrive la dimensione del Web of Data originatosi dal progetto del Linked Open Data: in essa ogni nodo rappresenta un set distinto di dati pubblicati. Ad esempio col colore verde vengono identificate le pubblicazioni, col blu i dataset multimediali, col giallo quelli geografici, con l azzurro quelli che si collocano a cavallo fra due o più categorie e così via. Tra i nodi principali rivestono un importanza maggiore DBpedia, progetto che ha reso disponibili sotto forma di open data le informazioni contenute in Wikipedia, Linked GeoData che contiene dati geografici, Legislation data.gov.uk che contiene dati governativi del regno unito, ma anche last.fm che contiene dati musicali e Bioportal che contiene informazioni relative alle ontologie realizzate nel campo biomedico. I nodi, com è evidenziato dalla Figura 3, hanno dimensioni differenti tra loro in base al numero di triple che contengono e sono collegati da frecce più o meno evidenziate in base al numero di link ad altri nodi. Si va dai nodi molto piccoli con meno di 10,000 triple, ai nodi medi contenenti tra le 500,000 e un milione di triple, fino ai nodi grandi contenenti tra 10 milioni ed un miliardo di triple ed i nodi molto grandi con più di un 23

24 miliardo di triple. Per quanto riguarda le frecce, esse indicano l esistenza di almeno 50 link tra i due dataset collegati. Perché un dataset possa essere pubblicato in questa nuvola, è necessario innanzitutto che rispetti i principi del Linked Data, che vedremo nel dettaglio più avanti in questo capitolo, e che contenga almeno 1,000 triple RDF esclusi i file FOAF, e sia collegato con almeno 50 link ad altri dataset già presenti nello schema permettendo l accesso ai dati, ad esempio, tramite Endpoint SPARQL [11]. Accesso ai dati nel Linked Open Data Nel Linked Open Data le informazioni sono contenute all interno di silos di dati [12]. L interrogazione e le ricerche sui cosiddetti Triple Store, cioè i silos in cui sono memorizzate le triple, è resa possibile tramite alcuni linguaggi di query. A oggi i più utilizzati sono SPARQL e SERQL. SPARQL (Simple Protocol and RDF Query Language) è lo strumento proposto dal W3C, per permettere il recupero dei dati espressi in RDF dal Web, che nel Gennaio del 2008 ha raggiunto lo status di Recommendation del W3C. SPARQL rispetta la natura decentralizzata dei Linked Data, che possono essere memorizzati in diverse sorgenti e descritti attraverso schemi differenti e quindi oltre ad essere un linguaggio di query per RDF funge anche da protocollo di comunicazione fra chi esegue la query e i cosiddetti Endpoint SPARQL, cioè dei punti di accesso dove inviare le query. L Endpoint SPARQL separa le richieste provenienti dall esterno dai dati interni dell applicazione ed è quindi possibile 24

25 costruire un software dotato d interfaccia SPARQL, ma che gestisca i dati con la tecnologia più adatta alle esigenze [13]. Il linguaggio SPARQL ha una sintassi pressoché simile a quella di SQL. Se per esempio si ha la seguente tripla < < "SPARQL Tutorial" e si vuole ottenere il titolo del libro identificato da book1, la sintassi della query si compone di due parti, la prima caratterizzata dalla clausola SELECT che identifica le variabili che dovranno apparire nel risultato e la seconda dalla clausola WHERE che permetterà di effettuare il match. La query dunque sarà SELECT?title WHERE { < < } col seguente risultato Title "SPARQL Tutorial" 25

26 SeRQL (Sesame RDF Query Language) è invece un linguaggio basato su RDF che combina caratteristiche di altri linguaggi di query quali RQL, RDQL, N- triples. Nel corso degli anni sono state sviluppate delle applicazioni in grado di memorizzare triple RDF che supportassero i linguaggi appena descritti per l estrazione della conoscenza dai dati. Un esempio di tale tipologia di strumenti è Sesame. Sesame è un framework open-source utilizzato per processare i dati RDF, cioè per effettuare parsing, storing e query sui dati, ed offre una serie di strumenti per poter sfruttare appieno le potenzialità di RDF, supportando SPARQL per effettuare le query e permettendo un accesso trasparente alle triple tramite API. Sesame può utilizzare nativamente un reasoner per RDFS integrato secondo l approccio del forward chaining: nuove triple vengono inferite e inserite ogniqualvolta si inseriscano dei dati. Inoltre, Sesame permette allo sviluppatore di controllare e di configurare le regole d inferenza adottate. Inoltre, come mostrato in Figura 4, è presente uno strato, SAIL API, che è delegato al supporto al ragionamento ed è indipendente dal formato di database utilizzato permettendo di gestire e modificare gli elementi del triple store. Sesame consente di memorizzare in modo nativo le triple RDF e per questo sono stati sviluppati degli strumenti in grado di trasformare in RDF le informazioni contenute in database relazionali. 26

27 Figura 4 : Architettura di Sesame Strumenti come D2R e Triplify effettuano la traduzione in triple RDF delle informazioni contenute in un database relazionale. Figura 5: Architettura di D2R D2R Server è uno strumento che permette la pubblicazione di un database relazionale sullo spazio globale del Linked Data tramite una mappatura con D2RQ, cioè un linguaggio dichiarativo che permette di descrivere le relazioni 27

28 fra un database relazionale e vocabolari RDFS o ontologie OWL mappandoli in un documento RDF rendendo possibili la navigazione e le ricerche sui dati [14]. Triplify è un plugin per le applicazioni Web che espone le informazioni contenute in un database relazionale in RDF. Figura 6 : Architettura di Triplify Esso ha il pregio di essere leggero (solo 500 righe di codice). Sia l interfaccia D2R che quella Triplify creano descrizioni RDF di risorse disponibili su database relazionali mentre una SPARQL permette alle applicazioni di eseguire query sul silos di dati generati utilizzando il linguaggio SPARQL. A queste di solito si affianca un interfaccia HTML più user friendly. D2R, a differenza di Triplify, riscrive le richieste provenienti dal Web in query SQL tramite una mappatura che permette di pubblicare RDF da grandi database ed elimina il bisogno di replicare i dati in un triple store RDF dedicato. 28

29 Applicazioni nel Linked Open Data Le applicazioni realizzate per il Linked Open Data si dividono sostanzialmente in tre categorie: Linked Data Browsers: consentono agli utenti di navigare tra le sorgenti di dati tramite link espressi come triple RDF, Linked Data Search Engines: consentono di ricercare sul web i link RDF e di poter eseguire delle query Domain-specific Applications: sono le vere e proprie applicazioni e che costituiscono la categoria sicuramente più interessante delle realizzazioni effettuate. Tra le più importanti c è sicuramente DBpedia. DBpedia è un progetto basato su una community il cui obiettivo è quello di estrarre le informazioni contenute in Wikipedia, rendendole disponibili sul Web all indirizzo In DBpedia vi è la possibilità di eseguire delle query articolate su Wikipedia e di collegare il contenuto dell enciclopedia ad altri dataset presenti sul web. Il fine ultimo di questo progetto è quello di permettere all incredibile mole di informazioni presenti in Wikipedia di essere utilizzata in nuovi modi e di ispirare meccanismi di navigazione, collegamento e miglioramento dell enciclopedia stessa. Allo stato attuale il dataset di DBpedia consta di 1 miliardo di triple RDF delle quali 385 milioni sono state estratte dalla versione inglese di Wikipedia, le restanti dalle altre versioni e da dataset esterni [15]. Esiste anche una versione mobile di DBpedia, un Linked Data Browser progettato per iphone o altri 29

30 dispositivi mobili e che è orientato maggiormente ad un utilizzo in ambito turistico. Esso si basa sulla posizione GPS corrente dell utente e permette tramite DBpedia di ricercare i punti di interesse che si trovano nei pressi dell utente [16]. Di fianco a DBpedia si trova Geonames, un database geografico che contiene di voci tra luoghi di interesse, edifici, monumenti, localizzati su tutto il territorio mondiale. Ogni entità di Geonames è identificata da un URI che permette l accesso ad una pagina wiki oppure ad una descrizione in RDF dell entità sfruttando gli elementi presenti nell ontologia di Geonames. Attraverso Wikipedia le informazioni contenute in Geonames sono collegate a DBpedia e ad altri Linked Data in RDF. La diffusione di dati pubblici, i cosiddetti Open Data sul Web e al contempo la necessità di collegare dati tra loro, Linked Data, è coincisa con la più recente e forse più importante evoluzione del Semantic Web e delle sue applicazioni conducendo, allo stato attuale, allo sviluppo del Linked Open Data in cui i dati sono espressi in formato RDF ed il cui risultato, il Web of Data, è una rete di elementi nel mondo descritti dai dati sul Web. I principi del Linked Open Data Tim Berners-Lee nel 2006 ha descritto un insieme di regole per pubblicare i dati sul Web in modo che essi diventino parte dello spazio globale del Linked Open Data: 1. Utilizzare gli URI per identificare gli oggetti. 30

31 2. Utilizzare gli URI HTTP cosicché utenti e agenti software possano ricercare questi oggetti. 3. Quando viene effettuata la ricerca di un URI, fornire informazioni utili utilizzando gli standard (es: RDF, SPARQL). 4. Includere link ad altri URI cosicché gli utenti possano rinvenire altri dati ad essi collegati. Questi sono conosciuti come I principi del Linked Data [17]. Più che delle regole vere e proprie Tim Berners-Lee le definisce come aspettative di comportamento, quindi quasi dei suggerimenti da seguire perché i dati pubblicati risultino corretti e consistenti, quindi utili alla realizzazione del Web Of Data ed in maniera tale che essi non vengano riutilizzati in maniera inaspettata. L utilizzo degli URI (prima regola) è insito nella natura stessa del Semantic Web, dato che stanno alla base della pila. L uso di URI HTTP (seconda regola) permette di poter referenziare l URI attraverso il protocollo HTTP, permettendo così di recuperare le risorse o le descrizioni delle entità. La pubblicazione di informazioni sul Web in funzione dell utilizzo di URI (terza regola) è stata seguita in molte ontologie create ma, per qualche ragione, nelle prime applicazioni del Linked Open Data, alcuni dei maggiori dataset erano inaccessibili dal Web of Data. Non veniva, infatti, esaudita una richiesta esplicita: fornire i dati in maniera più aperta possibile. Non erano pochi, infatti, i progetti di ricerca compiuti che avessero prodotto ontologie e reso disponibili dati che però erano sepolti in archivi zip piuttosto che accessibili 31

32 dal Web of Data. Occorre anche sottolineare la crescita di URI relativi a dati non presenti nelle ontologie che possono essere ricercati: esempi sono i Semantic Wikis, cioè dei wiki che memorizzano porzioni dei propri dati in modo che possano essere rinvenuti tramite interrogazioni, per esempio in SPARQL. Se invece i dati sono resi realmente aperti, è possibile, in generale, cercare proprietà e classi nei dati ed ottenere informazioni da RDF, RDFS e dalle ontologie OWL che includono relazioni fra i vari termini delle singole ontologie. Il formato base è RDF/XML, ma è possibile anche utilizzare la sintassi N3. Molti dataset forniscono un servizio di query SPARQL (gli esempi mostrati nei capitoli III e IV seguono per l appunto questa linea guida). In ultima istanza, generare link ad altri dati (quarta regola) è necessario per connettere i dati che ci sono nel web, in maniera tale che chiunque possa trovare qualsiasi tipo di dato e riutilizzare concetti già esplicitati in altri silos di dati presenti. Così come nel web ipertestuale, anche nel Semantic Web è considerata una cattiva pratica quella di non creare nessun link ad informazioni esterne, dato che il valore dell informazione è funzione di ciò a cui essa è collegata oltre che dell informazione stessa all interno della pagina. Nel 2010 Berners-Lee ha inoltre sviluppato un sistema di rating dei dati inseriti sul Web of Data, che consiste in una valutazione da 1 a 5 stelle delle informazioni, in maniera tale indirizzare sviluppatori ma soprattutto proprietari di dati sulla buona strada nella creazione di Linked Data. Ecco in cosa consiste questo sistema: 32

33 I dati sono disponibili sul web, in qualsiasi formato, a patto che abbiano una licenza open. I dati sono disponibili in strutture leggibili dalle macchine (Esempio: formato Excel). Viene aggiunto un formato non proprietario (come CSV al posto di Excel). Viene introdotto l uso di standard open del W3C, come RDF e SPARQL, per identificare le informazioni cosicché chiunque possa puntare ad esse Ai precedenti punti si aggiunge il collegamento dei dati fra loro fornendo così un contesto per i dati stessi. Creare collegamenti tra i dati Il Linked Open Data pone le sue fondamenta sulla capacità di creare collegamenti tra i dati. Esistono vari modi per collegare i dati tra loro, quindi per creare dei link. Il più semplice è sicuramente quello di utilizzare in un solo file un URI che punti ad un altro file. Si consideri, ad esempio, la materia Fisica ed i due suoi moduli Fisica I e Fisica II. Quando si scrive un file RDF, si possono utilizzare indirizzi del tipo < ma è anche possibile utilizzare identificatori locali all interno del file, quali ad esempio #fisica, #fisicai e #fisicaii. In notazione N3 si può scrivere 33

34 <#fisica> csunipa:haspart <#fisicai>, <#fisicaii> invece in RDF/XML si può scrivere <rdf:description about = #fisica > <csunipa:haspart rdf:resource= #fisicai > <csunipa:haspart rdf:resource= #fisicaii > </rdf:description> All interno del file ci sarà la <rdf:description> delle entità #fisicai e #fisicaii a cui si fa riferimento. L architettura del World Wide Web permette l utilizzo di un identificatore globale come per indicare il modulo Fisica II, in maniera tale da potersi riferire all identificatore relativo alla materia ed avere più informazioni. Se per esempio le informazioni relative all entità #fisicaii fossero contenute nel documento < in notazione RDF/XML si avrebbe <rdf:description about = #fisica > <csunipa:haspart rdf:resource= #fisicai > <csunipa:haspart rdf:resource= > </rdf:description> e si può, tramite l URI effettuare la cosiddetta dereferenziazione dell URI, cioè accedere alla pagina e recuperare le informazioni sull oggetto #fisicaii. Un'altra modalità di collegamento dei dati è attraverso l utilizzo della proprietà rdfs:seealso. L esempio seguente ne mostra il suo utilizzo all interno 34

35 dell ontologia FOAF. Per fare riferimento a una persona in un file FOAF per convenzione vengono assegnate due proprietà, una che punta al documento in cui la persona è descritta e l altra che l identifica all interno del documento stesso. Per esempio <#i> foaf:knows [ foaf: mbox _sha1sum ; rdfs:seealso < ]. indica che l utente conosce una persona di cui vi sono informazioni all indirizzo < Questo sistema di linking permette, tramite il metodo rdfs:seealso, di recuperare l indirizzo dell utente FOAF facendo riferimento alla pagina effettuando così la dereferenziazione dell URI [17]. Nell esempio compare una versione crittografata dell indirizzo con l algoritmo hash SHA-1, utilizzato per questioni di privacy. Linked Open Data in Italia Anche in Italia sono stati portati avanti molti progetti relativi al Linked Open Data ed una community, raggiungibile all indirizzo li raccoglie tutti ed invita gli utenti a rendere disponibili eventuali dataset a loro disposizione. Tra i vari progetti sono segnalati di seguito i più interessanti: 35

36 LOIUS, acronimo di Linking Italian Univesity Statistics Project ( realizzato sfruttando i dati forniti dall ufficio statistico del MIUR (Ministero dell Istruzione, Università e Ricerca), che consiste nella pubblicazione in ogni anno accademico di un analisi completa riguardante le attività universitarie. L obiettivo del progetto è di dare significato ai dati statistici provenienti dalle università italiane usando tecnologie semantiche, collegando fra loro i dati con altri dataset statistici come Statistics data.gov.uk, e pubblicando i risultati seguendo i principi del Linked Data. ISTAT Immigration ( un dataset che contiene i dati statistici ufficiali riguardanti l immigrazione in Italia, forniti dall ISTAT. Sono raggruppati differenti dataset catturando differenti fenomeni relativi al problema tra il 1999 e il 2008 Scuole Italiane, progetto ancora in fase alfa all interno del quale si sta creando un dataset contenenti indirizzi, corsi e svariate informazioni sui istituti di istruzione italiani. Il dataset è collegato a geonames e a DBpedia. LinkedOpenCamera, progetto che prevede la pubblicazione di dati riguardanti le spese della Camera dei Deputati (progetto LOC2) e del Senato della Repubblica (progetto LOS) per l anno 2010, che rientrano inoltre nel progetto OpenBilancio che vorrebbe rendere disponibili 36

37 anche sotto forma di triple RDF le informazioni relative agli ultimi 10 anni di bilanci degli oltre 8000 comuni italiani. CNR-IT, iniziativa del Consiglio Nazionale delle Ricerche che offre accesso pubblico ai dati relativi alla propria organizzazione interna, basandosi su RDF e sul paradigma del Linked Data In tutti questi casi sono disponibili degli Endpoint SPARQL per l accesso ai dati all interno dei dataset. In generale questi tipi di applicazioni afferenti al paradigma del Linked Data sono raggiungibili sul web anteponendo al dominio la parola chiave data, ad esempio data.cnr.it per quanto riguarda il CNR. Dopo aver introdotto il Linked Open Data, descritto le caratteristiche e visto gli esempi più conosciuti, nel prossimo capitolo saranno descritte in generale le tecnologie utilizzate per sviluppare applicazioni nel campo del Linked Open Data e in particolare verrà descritto dettagliatamente il funzionamento di DBpedia. 37

38 Capitolo III Il progetto DBpedia La nascita e la successiva diffusione del Linked Open Data sono state rese possibili oltre che dai principi enunciati per produrre questa tipologia di dati, anche da svariate tecnologie a supporto del progetto che hanno permesso a tutti di poter sviluppare autonomamente le proprie applicazioni. Dalla creazione delle ontologie, alla generazione delle triple RDF, fino ad arrivare alla costruzione di veri e propri triple store, sono disponibili strumenti che facilitano l apertura e la diffusione dei dati stessi. Rispetto a quando è stata lanciata la sfida del Linked Open Data, quindi, sono stati fatti dei grandi passi in avanti. Gli ideatori e sviluppatori delle prime applicazioni, infatti, dovendo fare da precursori e non avendo a disposizione nessuna esperienza precedente, dovettero sviluppare da sé i propri algoritmi che permettessero l estrazione dei dati o la creazione delle ontologie. Chi si affaccia oggi al mondo del Linked Open Data, invece, si trova davanti numerosi esempi di applicazioni sviluppate con successo. In questo lavoro di tesi si è studiato come caso di esempio la versione semantica dell enciclopedia Wikipedia: DBPedia. Osservando l immagine della nuvola del Linked Open Data è evidente che il fulcro, il punto di partenza del Web of Data è DBpedia. Ovviamente il processo che ha condotto dall idea base di estrarre i dati da Wikipedia fino alla realizzazione e alla pubblicazione di DBpedia è composto da una serie di 38

39 passaggi che vale la pena analizzare in quanto forniscono preziose indicazioni per la realizzazione di un applicazione che possa entrare a far parte del mondo del Linked Data. A partire da DBpedia sono stati generati talmente tanti dataset da renderla uno dei punti di interconnessione centrali del web of data, dato che la rete attorno a DBpedia contiene circa 4,7 miliardi di triple RDF, coprendo svariati campi quali la medicina, la geografia, il cinema, la musica e la pubblicazione scientifica. Il motivo per cui DBpedia, oltre ad essere il nodo centrale, è anche uno dei nodi più grandi, dipende dalla quantità di informazioni presenti in essa. Queste informazioni aumentano di giorno in giorno, ma questo è possibile solo grazie a delle tecnologie, appositamente sviluppate, che facilitano il procedimento di conversione di Wikipedia [18]. Il processo di trasformazione realizzato consta fondamentalmente di tre elementi: Estrazione dati da Wikipedia: è stato sviluppato un sistema per l estrazione dei dati di Wikipedia che convertisse il suo contenuto in una base di conoscenza multi-dominio. Creazione della base di conoscenza: sono state elaborate le informazioni ottenute nella fase di estrazione, fornendo loro una semantica e definendo un ontologia in cui sono mappate le informazioni come, ad esempio, quelle estratte dai box informativi di Wikipedia. 39

40 Creazione di punti di accesso alla base di conoscenza: sono stati resi disponibili diversi mezzi per poter accedere ai dati di DBpedia come ad esempio i link RDF che puntano da DBpedia ad altri dataset. Estrazione dei dati da Wikipedia Il sistema di estrazione dei dati è formato da più componenti tra cui quelli che si occupano di recuperare gli articoli (PageCollections), quelli che memorizzano e serializzano le triple RDF (Destinations), quelli che stabiliscono come marcare le triple (Extractors), solo per citarne alcuni. Figura 7 : Il processo di estrazione dei dati da Wikipedia Il nucleo centrale è costituito però dall Extraction Manager che gestisce il processo di passaggio degli articoli di Wikipedia agli estrattori e li consegna a destinazione. Gli estrattori sono 11 tra cui Labels che identifica ogni articolo indicandone la risorsa con rdfs:label oppure Interlanguage links che estrae i 40

41 link che collegano fra loro articoli in lingue diverse che però trattano lo stesso argomento per assegnare risorse diverse per ogni lingua. Il sistema è configurato per eseguire due diversi tipi di estrazione, una chiamata dumpbased, l altra chiamata live. Estrazione dump-based La Wikimedia Foundation, che detiene la proprietà di Wikipedia, pubblica ogni mese i dump SQL di tutte le versioni di Wikipedia ed in seguito la base della conoscenza di DBpedia viene aggiornata tramite questi dump. Estrazione live La stessa Wikimedia Foundation ha fornito a DBpedia la possibilità di accedere ai feed di Wikipedia che in tempo reale riportano tutti i cambiamenti avvenuti. Un sistema di estrazione live quindi permette di aggiornare ed estrarre nuove triple RDF non appena un articolo viene modificato. Una procedura di UPDATE SPARQL permette di eliminare la voce già esistente sostituendola con la nuova, che viene inserita in un triple store separato. Estrazione delle informazioni dagli infobox Gli elementi fondamentali per l estrazione dei dati da Wikipedia sono gli infobox che sono presenti in alto a destra nella maggior parte della pagine. Essi contengono le informazioni più importanti di un articolo sotto forma di tabelle con coppie attributo-valore. Purtroppo non tutti gli editori di Wikipedia 41

42 seguono le raccomandazioni nella stesura delle pagine e spesso gli attributi vengono espressi utilizzando diversi formati ed unità di misura. Per questo motivo nel progetto di DBpedia si è deciso di seguire due approcci paralleli per risolvere il problema: un estrazione generica ed una basata su una mappatura delle informazioni degli infobox. L algoritmo di estrazione generica processa gli infobox all interno di un articolo e crea delle triple da questi creando un URI che ponga in corrispondenza l articolo di Wikipedia con la corrispondente voce in DBpedia, concatenando il namespace al nome dell attributo dell infobox, e gli oggetti vengono creati proprio a partire dal valore dell attributo. Il vantaggio consiste nella copertura totale di tutti gli attributi degli infobox, lo svantaggio nell impossibilità di processare attributi che sono fra loro simili, per la mancanza di tipizzazioni esplicitamente definite all interno di Wikipedia. Creazione della base di conoscenza In seguito all estrazione delle informazioni è stato necessario rielaborarle per fornire loro una semantica. È stata dunque generata una base di conoscenza che ha permesso di memorizzare e classificare le differenti entità presenti in Wikipedia. La base di conoscenza di DBpedia è composta da circa 1 miliardo di triple RDF estratte dalle edizioni di Wikipedia in ben 35 lingue diverse. Per creare gli identificatori di DBpedia vengono utilizzati i nomi inglesi degli articoli, mentre le informazioni dalle versioni in altre lingue di Wikipedia 42

43 vengono mappate con questi identificatori tramite una valutazione bidirezionale dei link fra le varie versioni dello stesso articolo. L URI delle risorse viene generato secondo la sintassi dove Name è ottenuto dall URL dell articolo che ha la sintassi In questo modo gli URI di DBpedia comprenderanno un ampio spettro di argomenti e saranno definiti col consenso della comunità. In Figura 8 sono descritte alcune entità di esempio presenti in DBpedia con le proprietà relative ad ognuna di esse ed il numero di istanze presenti. Classe Ontologia Istanze Esempi di Proprietà Persona 198,065 nome, data di nascita, luogo di nascita Artista 54,262 anni di attività, premi, occupazione Attore 26,009 academy, goldenglobe, anni di attività Artista Musicale 19,535 genere, strumento, etichetta, tipo di voce Atleta 74,832 squadra attuale, ruolo, numero di maglia Politico 12,874 predecessore, successore, partito Luogo 274,507 latitudine, longitudine Edificio 23,304 architetto, localizzazione, stile, apertura Aeroporto 7,971 localizzazione, proprietario, IATA, lat, long Ponte 1,402 incroci, campata principale, lunghezza Grattacielo 2,028 costruttore, ingegnere, altezza, architetto Luoghi abitati 181,847 fondazione, lingua, area, popolazione Fiume 10,797 monte di origine, lunghezza, profondità max Figura 8: Tabella proprietà di DBpedia Classificazione delle entità La classificazione avviene all interno di tre categorie per soddisfare differenti richieste: 43

44 Categorie di Wikipedia, che sfrutta una rappresentazione SKOS del sistema delle categorie di Wikipedia contenuta in DBpedia. Il vantaggio dell uso di questo sistema è che esso viene aggiornato dagli editori stessi, lo svantaggio è che le categorie non formano una gearchia di argomenti. YAGO, creato per mappare le categorie singole di Wikipedia che non contengono sottocategorie. La sua caratteristica è quella di permettere la codifica di molte informazioni in una sola classe. Ontologia di DBpedia, realizzata mappando manualmente le informazioni degli infobox. Descrizione delle entità Ogni entità viene descritta da un insieme di proprietà generali e da un insieme di proprietà specifiche degli infobox, se essi sono presenti. Le proprietà generali includono un etichetta, due abstract dell articolo in inglese uno più breve e uno più lungo, un link all articolo di Wikipedia corrispondente, le coordinate geografiche qualora siano disponibili, i link alle corrispondenti entità in DBpedia e, qualora esistessero, i due abstract per ognuna delle versioni in altre lingue della pagina. Le proprietà specifiche degli infobox invece risultanti dall estrazione generica sono definite, come detto, dal namespace mentre quelle risultanti 44

45 dall estrazione con mappatura sono definite dal namespace Accesso alla base della conoscenza Per soddisfare le richieste di diversi client l accesso alla base della conoscenza di DBpedia avviene attraverso quattro differenti meccanismi: Linked Data, metodo per pubblicare gli RDF sul Web che si basa su URI HTTP come identificatori e sul protocollo HTTP per recuperare le descrizioni delle risorse. Gli identificatori di DBpedia sono configurati per restituire descrizioni RDF quando ad accedervi sono degli agenti semantici e versioni HTML quando invece vi accedono i browser tradizionali. SPARQL Endpoint, che permette di interrogare la base di conoscenza attraverso delle query in SPARQL tramite l endpoint L Endpoint è stato pubblicato utilizzando Virtuoso Universal Server. RDF Dumps, che si basa sulla stratificazione della base di conoscenza, offrendo una serializzazione N-Triple di questi strati di cui è possibile effettuare il download direttamente dal sito web di DBpedia. Questo in aggiunta ai metodi visti prima fornisce anche i dataset degli infobox estratti da 29 versioni di Wikipedia oltre a quella localizzata in inglese 45

46 e che possono essere utilizzati per costruire applicazioni che si basano su una determinata localizzazione di Wikipedia. Lookup Index, che rende più semplice il rinvenimento degli URI di DBpedia a cui collegarsi, sfruttando un servizio lookup che restituisce gli URI in base ad una data etichetta effettuando una ricerca basata su similarità fra stringhe e rilevanza della pagina ricercata. Interconnessione dei contenuti Per consentire agli utenti e agli agenti software di rinvenire le informazioni contenute in DBpedia, la base della conoscenza è collegata a molti altri dataset sul Web seguendo i principi del Linked Data. La base della conoscenza di DBpedia attualmente contiene 4,9 milioni di link RDF in uscita, che puntano ad informazioni complementari rispetto a quelle contenute in DBpedia. Negli ultimi anni un sempre crescente numero di data publishers ha cominciato a creare link RDF che puntano alle entità di DBpedia. Questi link in ingresso insieme a quelli in uscita rendono DBpedia, come detto, uno degli snodi centrali, se non il principale, di interconnessione del Web of Data. Questi link RDF aprono la strada ad alcune possibilità: I fruitori delle informazioni possono navigare da fonti di dati verso altre utilizzando Linked Data browsers. Inoltre è possibile seguire i dati utilizzando dei crawler, cioè dei software automatizzati che sfruttano motori di ricerca, effettuando ricerche e query sui dati. 46

47 Poiché i link RDF collegano i dati riguardo un entità al cui interno vi sono differenti sorgenti, essi possono essere utilizzati come base per fondere i dati a partire da queste sorgenti per generare delle viste su più sorgenti. Le entità di DBpedia vengono anche utilizzate per evidenziare il contenuto di pagine Web come i blog o le news riguardo argomenti comuni oppure riferimenti a posti o persone. Dato che il numero di siti che utilizzano gli URI di DBpedia come riferimento cresce costantemente, la base della conoscenza di DBpedia può essere migliorata per rinvenire contenuto del Web classico che può essere legato ad una o più entità specifiche. Il ruolo di DBpedia nel Web of Data Il Web of Data, come detto, conta circa 4,7 miliardi di triple RDF che possono essere suddivise in blocchi: 2 miliardi circa sono le triple contenute in dataset che partecipano al progetto W3C Linking Open Data, che punta a creare dataset open source che possano interoperare sul Web of Data convertendoli in triple RDF e collegandoli fra loro, e DBpedia si collega praticamente a tutti questi dataset giocando il ruolo di fondamentale punto di snodo; un secondo progetto è il Bio2RDF project che pubblica dataset bio-informatici sotto forma di Linked Data e che conta circa 2,5 miliardi di triple; collegato a quest ultimo c è il gruppo W3C Healt Care and Life Sciences che pubblica dati riguardo 47

48 farmaci e test clinici e che collega i dati pubblicati con i dataset di Bio2RDF e di DBpedia [18]. Sfruttando questi collegamenti è possibile partire dalle pubblicazioni di DBpedia riguardanti, ad esempio, una band musicale o un cantante, e rinvenire una lista dei loro brani sul dataset musicale MusicBrainz, oppure partire da una voce relativa ad una città e rinvenire tutte le informazioni ad essa relative pubblicate su GeoNames. Le tecnologie adottate nel progetto DBpedia Le tecnologie appena descritte dimostrano come sia in atto una trasformazione del modo di concepire i dati sul Web e la loro diffusione e di come la trasformazione di dati già presenti sulla rete in dati fruibili da chiunque, sia esso un utente umano o un agente software, possa aprire nuove strade fino a qualche tempo fa impercorribili. Il progetto DBpedia come già evidenziato si basa su tre step specifici in grado di rendere i dati realmente aperti e collegati. Gli sviluppatori di DBpedia si sono avvalsi di tecnologie in parte già presenti ed in parte sviluppate appositamente per il loro progetto. Ripercorrendo quindi i passaggi è doveroso sottolineare come i dati di Wikipedia siano stati estratti con un algoritmo elaborato specificatamente dagli sviluppatori di DBpedia che permettesse di estrarre i dati dagli infobox che hanno permesso di accelerare il lavoro di estrazione. L algoritmo, come visto, dovendo far fronte a inevitabili incongruenze fra parole chiave differenti utilizzate per indicare gli stessi concetti, segue un approccio basato su una 48

49 mappatura e fa ricorso ad un ontologia creata manualmente partendo dagli infobox. Nel caso specifico di DBpedia la quantità ed al contempo l eterogeneità di dati da estrarre e la presenza degli ostacoli appena visti ha fatto propendere per una creazione manuale dell ontologia. Anche nel caso della generazione della base della conoscenza in DBpedia si utilizzano delle procedure appositamente costruite che tengono conto dei nomi delle pagine di Wikipedia ed a partire da questi costruiscono le triple RDF. Leggermente differente è l approccio utilizzato, infine, per generare il triple store e permetterne l interrogazione, dato che, al fianco di alcuni algoritmi di ricerca costruiti appositamente, si trova un server Virtuoso, triple store che fornisce anche un Endpoint SPARQL per eseguire le query. L esperienza di DBPedia si pone come esempio per la realizzazione di nuovi progetti nel Linked Open Data. Anche il progetto realizzato in questo lavoro di tesi, pur utilizzando tecnologie differenti, ha seguito la struttura già adottata con successo in DBpedia. Le principali componenti infatti sono relative al recupero dei dati, alla creazione dell ontologia ed alla possibilità di accedere ai dati stessi dall esterno. Maggiori dettagli sull applicazione realizzata sono forniti nel prossimo capitolo. 49

50 Capitolo IV Il Linked Open Data nelle università Gli istituti di ricerca e le università producono ogni anno un elevata quantità di dati, tuttavia quando vengono effettuate ricerche su questi dati generalmente o essi non vengono rinvenuti così come li si è ricercati oppure si è costretti a spendere molto tempo per poter soddisfare la propria ricerca. Integrare dunque la grande quantità di materiale prodotto dai vari istituti è fondamentale per la condivisione dei dati e per le ricerche su di essi. Il primo scoglio da superare è sicuramente il fatto che questi dati sono pubblicati utilizzando formati, categorie e strutture differenti fra loro, rendendo il processo d integrazione un arduo compito ma al contempo la sfida principale da sostenere per raggiungere l obiettivo di aprirsi al mondo del Linked Data, permettendo di immettere sulla rete materiale eterogeneo che venga poi collegato al resto delle informazioni già presenti, cosicchè possa essere acceduto e riutilizzato soprattutto grazie all utilizzo di RDF ed OWL. L utilizzo di tecnologie Semantiche comporta i vantaggi di disaccoppiamento della conoscenza dai sistemi implementati e di rappresentazione delle entità di un organizzazione o di un università. L'importanza di questo tipo di lavoro è sottolineata soprattutto dal fatto che in particolare molte università nel mondo stanno aprendosi e contribuendo al Linked Data. Nell ambito universitario e in quello della ricerca sono molti gli esempi di Linked Data che sono stati realizzati di 50

51 recente negli ultimi anni, e dai quali trae spunto questo lavoro di tesi. L obiettivo di realizzare un applicazione basata su RDF, supportata da un Ontologia e con la possibilità di effettuare ricerche tramite uno SPARQL Endpoint relativo ai dati dei CdL del CISI parte da alcune precedenti realizzazioni di successo. Davanti a tutte c'è l Open University che è quella più attiva con il suo progetto denominato Lucero in relazione al quale ad Ottobre 2011 sono presenti molti dataset relativi a pubblicazioni, podcast e descrizioni dei corsi resi accessibili attraverso il portale ai quali si aggiungono alcune applicazioni sviluppate per mostrare i significativi vantaggi dell esposizione pubblica dei dati nel contesto universitario. Altri esempi di produzione di Linked Data giungono da molte altre importanti università quali la University of Sheffield, in particolare dal Dipartimento di Computer Science della stessa, che ha realizzato un servizio che descrive i gruppi di ricerca, lo staff e le pubblicazioni, tutte collegate semanticamente. Tra le altre troviamo anche la University of Southampton con i suoi 26 dataset riguardanti le strutture universitarie, i video ed anche le rotte del bus universitario, la Stanford University, la University of Manchester, la University of Edinburgh e la University of Munster che recentemente ha annunciato il progetto LODUM, con lo scopo di pubblicare le informazioni sulle ricerche universitarie sotto forma di Linked Data, con annesse informazioni su persone, progetti e pubblicazioni. Come già visto nel capitolo II, anche nel campo della ricerca esistono esempi fortunati di applicazioni, 51

52 come ad esempio quella del CNR. Sia nel caso della Open University che in quello del CNR sono disponibili (data la loro natura di Linked Open Data) le ontologie in formato OWL. In tutti i casi è possibile comunque accedere ai dati tramite uno SPARQL Endpoint in cui sono comunque effettuabili ricerche tramite query SPARQL. Così come descritto sul portale del CNR, l obiettivo è ovviamente quello di fornire l accesso pubblico alle risorse seguendo tre concetti chiave: trasparenza, interoperabilità, dati aperti [19]. L esempio che più si avvicina al prototipo che si è voluto realizzare in questo lavoro di tesi è quello della Open University. Infatti, la Open University, fornisce dataset ottenuti da dati pubblici dell università e applicazioni che fanno uso di questi dati. I dataset contengono le pubblicazioni, i corsi ed il materiale Audio/Video prodotto alla Open University, così come le persone che lavorano in questa università. Tutti i dati sono ovviamente disponibili attraverso i formati standard del W3C (RDF e SPARQL) ed in molti casi con licenza open. Il prototipo realizzato Questo lavoro di tesi si pone quindi l obiettivo di inserire all interno del mondo del Linked Data le informazioni relative ai Corsi di Laurea del CISI della Facoltà di Scienze MM. FF. NN. dell Università degli studi di Palermo, seguendo ciò che molte università ed enti di ricerca, come visto, hanno già 52

53 realizzato o stanno realizzando. L obiettivo è quindi di creare un silos di dati in cui siano contenuti tutti i dati accademici relativi al dipartimento, alle materie, ai docenti, alle aule. I dati in questione sono ovviamente già presenti e disponibili pubblicamente sul Web, ma renderli tali anche in formato RDF permetterebbe di fornire una semantica a questi dati e di collegarli ad altri silos del Linked Open Data. La natura eterogena di questi dati, inevitabilmente disconnessi fra loro per come essi sono attualmente presenti nei database dei CdL, sottolinea l importanza di poter realizzare quanto proposto. Il vantaggio rispetto a ciò di cui attualmente si dispone sarebbe quello di rendere collegati a livello globale questi dati ad altri della stessa natura con cui però potrebbe esserci una relazione e di permettere oltre che all utente umano anche ad agenti software di potervi accedere facilmente. Sono chiare dunque tanto le potenzialità quanto l attualità e la possibilità di futuri sviluppi di ciò che si è voluto realizzare. A ribadire ulteriormente quest ultimo aspetto si consideri che proprio durante l ultimo ISWC (International Semantic Web Conference), svoltosi dal 23 al 27 Ottobre 2011 a Bonn, è stato presentato un articolo che ha ampiamente sottolineato la necessità di integrare i dati provenienti da diverse università utilizzando i principi e le tecnologie proprie del Linked Data [20]. Il prototipo realizzato si basa sugli stessi punti chiave seguiti nello sviluppo di DBpedia. Si ritrovano, anche in questo caso, le tre fasi viste nel capitolo precedente: 53

54 Estrazione dati dal Database: sono state estratte le informazioni sulle materie, i moduli e i docenti dei CdL tramite l utilizzo di Triplify che ha permesso di generare un file RDF contente le informazioni presenti nel database SQL. Creazione della base di conoscenza: è stato elaborato il file RDF contenente le triple, costruendo un triple store tramite un server Sesame. È stata inoltre definita un ontologia in cui sono mappate le informazioni estratte dal database. Creazione di un interfaccia di accesso alla base di conoscenza: è stata creata un interfaccia REST al triple store contenente un Endpoint SPARQL che permette di accedere ai dati presenti nel triple store. Lo schema in Figura 9 descrive l approccio seguito per il progetto, che riprende lo schema visto nella creazione di DBpedia. Figura 9 : Architettura del prototipo realizzato 54

55 Estrazione dei dati dal Database Come detto, la prima fase consiste nell estrazione dei dati dal database SQL. Il database utilizzato contiene tre tabelle: utenti, modulo e materia. Nella tabella utenti sono presenti informazioni sui docenti come il nome, cognome, ruolo, numero di telefono, sito internet e ubicazione della stanza all interno del dipartimento. Allo stato attuale la tabella contiene 46 utenti di cui 44 sono docenti e tra questi 3 sono anche amministratori. Dei 44 docenti solo 25 sono attivi. Nella tabella materia si trovano i nomi delle materie con codice materia, cfu, numero di moduli ed un indicazione se il corso sia o meno attivo. Sono presenti 70 corsi di cui solo 31 sono attivi. Dei corsi attivi 21 hanno un solo modulo, mentre i restanti 10 hanno più moduli. Nella tabella modulo, infine, è possibile rinvenire i nomi e i codici dei moduli che sono legati alle materie, con il relativo sito. In questa tabella sono presenti 70 moduli, l id univoco permette di associarli alle materie e la chiave ID_utenti permette invece di associare ogni modulo al docente che lo insegna. In Figura 10 è presente uno schema dettagliato del database utilizzato in cui sono definite la struttura delle tabelle e le relazioni presenti. Per estrarre i dati dal database dei CdL sono stati prima analizzati due strumenti che permettono, partendo dal database SQL di poter generare le triple da inserire nel triple store. 55

56 Figura 10 : Struttura del database utilizzato I due strumenti in questione sono D2R e Triplify. Triplify permette di poter già eseguire le operazioni richieste semplicemente estraendo lo script nella cartella della web application e modificando successivamente il solo file di configurazione in cui sono contenute le query da effettuare e questa sua semplicità di utilizzo accompagnata dalla riusabilità delle configurazioni ha avuto un ruolo chiave perché venisse scelto come strumento da utilizzare. In ambiente Windows si è proceduto all installazione e alla configurazione del Web Server Wamp, del database dei CdL tramite il gestore di database MySQL phpmyadmin e dell applicazione Triplify in versione 0.8 sul Web Server. Triplify, come detto, per poter essere utilizzato ha richiesto la modifica del file di configurazione in cui vanno indicate, oltre alla connessione al 56

57 database, le query da eseguire [21]. Le query hanno permesso dunque di estrarre i dati desiderati dal database per poter generare il file RDF contenente le triple N3. È stata effettuata un estrazione di tipo dump based, come già visto nel caso di DBpedia. Nel precedente capitolo, infatti, è stato descritto come i dump SQL delle varie versioni di Wikipedia vengano pubblicati dalla Wikimedia Foundation e di come gli sviluppatori di DBpedia si servano di questi dump. Allo stesso modo è stato eseguito un dump del database dei CdL che è stato utilizzato per l estrazione dei dati. Ad esempio sono state selezionate le colonne nome e cognome concatenate sotto l alias foaf:name, e la colonna mail, sia criptata che non, dalla tabella utenti. Con una JOIN SQL queste informazioni sono state collegate alla tabella modulo selezionando con l alias csunipa:insegna, proprietà definita in fase di generazione delle triple, la colonna relativa ad uno o più moduli insegnati dal docente selezionato. La query utilizzata viene riportata nel seguente riquadro: SELECT d.id, CONCAT(d.nome, ' ', d.cognome) as 'foaf:name', d. as 'foaf:mbox', SHA(CONCAT('mailto:',d. )) as 'foaf:mbox_sha1sum', m.id as 'csunipa:insegna' FROM modulo m, utenti d WHERE docente>0 and m.id_utenti=d.id 57

58 Nel file di configurazione sono state specificate le classi utilizzate, cioè csunipa:materia, csunipa:modulo e csunipa:docente, che fanno riferimento alle tre tabelle del database; inoltre sono state definite le proprietà, in questo caso csunipa:insegna=>modulo, che definisce la proprietà insegna che mette in relazione la classe Docente con la classe Modulo. Le classi e le proprietà suddette sono state definite nell ontologia appositamente progettata per l applicazione e descritta in dettaglio nel prossimo paragrafo. Creazione della base di conoscenza Dopo aver generato le triple è stato necessario un triple store che permettesse di poter memorizzare i dati. Per prima cosa è stato installato e configurato Tomcat in versione 7.0, piattaforma per l esecuzione di applicazioni web basate su Java. Sono state valutate varie applicazioni per la gestione del triple store tra le quali Virtuoso e Sesame e la scelta è caduta su quest ultimo per la semplicità d utilizzo e l efficienza che lo caratterizzano. La versione utilizzata è la Sesame è correlato da un interfaccia grafica accessibile tramite Tomcat che permette di configurare il database che Sesame utilizzerà per la memorizzazione dei dati. Al momento della creazione del repository è richiesto oltre ad un nome ed un identificativo anche il tipo di triple store che si vuole creare. Sono presenti vari tipi di configurazioni: In Memory Store, che costruisce un RDF store che memorizza i suoi dati nella memoria principale. 58

59 Native Store, che invece recupera i dati direttamente dal disco con il vantaggio di non essere legato alla dimensione della memoria pur essendo però più lenta. RDBMS store, RDF triple store che memorizza i dati in un database relazionale e che attualmente supporta sia PostgreSQL che MySQL. La scelta è caduta su una configurazione di tipo RDBMS store, in particolare su quella che utilizza MySQL, che richiede, così come PostgreSQL, alcuni settaggi come l host da utilizzare, la porta, il nome del database relazionale da utilizzare, username e password. Figura 11 : Interfaccia di Sesame Prima di caricare il file RDF si è proceduto a generare nel triple store i namespaces necessari come ad esempio quello di RDF 59

60 ( quello di FOAF ( ma soprattutto quello creato per il prototipo, ovvero csunipa ( II triple store è stato dunque riempito tramite il comando Add presente nell interfaccia di Sesame, caricando il file RDF contenente le triple ricavate tramite l utilizzo di Triplify e selezionando la sintassi N3 per permettere la creazione del silos. Sesame permette, inoltre, di navigare le triple tramite pochi click: partendo ad esempio dalla sezione Types è possibile esplorare le classi e per ognuna visualizzare tutte le informazioni presenti in relazione ad ognuna di esse. Inoltre è anche presente un Endpoint accessibile dal comando Query che permette di interrogare il triple store tramite query sia in SPARQL che in SeRQL e visualizzare i risultati che sono a loro volta navigabili. In Figura 11 è riportato uno screenshot dell interfaccia di Sesame. All interno del triple store sono presenti attualmente 1085 triple RDF delle quali 62 sono relazioni del tipo csunipa:insegna, cioè definiscono l insegnamento di un modulo da parte di un docente, 86 sono di tipo csunipa:haspart cioè definiscono le materie ed i moduli che le compongono. In Figura 12 viene mostrato un grafico che evidenzia gli elementi più importanti che sono presenti all interno del triple store. 60

61 11% Materie attive 29% Moduli 24% Profili FOAF 12% 24% Relazioni csunipa:insegna Relazioni csunipa:haspart Figura 12: Statistica delle triple presenti nel triple store realizzato A differenza di DBpedia, che utilizza una classificazione delle entità formata da tre categorie distinte, nel caso del prototipo realizzato le entità sono mappate tutte all interno di un unica ontologia. Per realizzare l ontologia si è proceduto per gradi. Innanzitutto di pari passo sono state analizzate le ontologie già presenti sul Web e in particolare quelle della Stanford University, della Open University e del progetto LOIUS nell ambito universitario, e quella del CNR nell ambito della ricerca e si è proceduto alla definizione di uno schema Entità-Relazione per comprendere realmente quali dati fossero necessari per realizzare l ontologia e per ipotizzare le relazioni necessarie per strutturare i dati del database. Lo stampo molto più relativo ad un college americano che ad un università italiana presente nell ontologia della Stanford University, quello relativo ad un ente di ricerca piuttosto che ad un università quale è il CNR e la complessità dell ontologia della Open 61

62 University, che abbraccia un campo di applicazione molto più ampio di quanto al momento si vuole realizzare per i CdL del CISI, hanno spinto alla realizzazione ex novo di un ontologia specifica. Si è tenuto conto dell organizzazione del Dipartimento dal punto di vista fisico, quindi della disposizione delle aule e dei laboratori, e ovviamente dal punto di vista strettamente accademico, considerando i docenti e le materie. Per la realizzazione dell ontologia si è utilizzato l applicativo Protegè in versione 4.1.0, strumento che permette di creare un ontologia definendone le classi che nel caso specifico sono Dipartimento, Facoltà, Docente, Materia, Modulo, Corso di laurea e Aula. Protegè rende possibile anche definire le proprietà dei dati che afferiscono alle classi e quelle degli oggetti, cioè le relazioni fra le varie classi. Sono state, ad esempio, realizzate le relazioni haspart, ispartof, insegna e insegnatoda. Le relazioni haspart ed ispartof, ad esempio, permettono di definire il rapporto fra la classe Dipartimento e quella Docente in cui si ha che un Dipartimento è formato da elementi della classe Docente ed al contempo ogni elemento di Docente fa parte di un Dipartimento. Le due relazioni sono state utilizzate anche per altre classi dell ontologia. Per quanto riguarda invece le proprietà si avranno ad esempio le proprietà qualifica o ruolo che sono specifiche di un docente o la proprietà sede che definisce la sede del dipartimento, oppure ancora la proprietà sito che indica la pagina internet di una materia. L ontologia utilizzata in questo lavoro è stata creata in formato OWL. 62

63 Nella Figura 13 viene riportato il grafo dell ontologia creata, in cui ogni freccia di diverso colore indica una proprietà differente dell ontologia. Figura 13 : Grafo dell'ontologia realizzato con Protegé Interfaccia di accesso alla base di conoscenza Per accedere ai dati presenti nel triple store è stata implementata un interfaccia grafica in php corredata da un endpoint SPARQL. L accesso è stato realizzato tramite un interfaccia REST (Representational State Transfer) verso il server Sesame. REST è un paradigma che permette di identificare le risorse Web, viene utilizzato per la realizzazione di applicazioni Web e permette la manipolazione delle risorse tramite i metodi GET, POST, PUT e DELETE del protocollo HTTP, su cui il paradigma si basa, restringendo il proprio raggio d azione alle applicazioni che utilizzano HTTP per comunicare con altri sistemi. Avvenuta la richiesta, la query viene memorizzata in una variabile e 63

64 tramite il comando GET inviata al database che la elabora e restituisce il risultato in formato RDF. L utente può quindi inserire la propria query SPARQL e visualizzarne il risultato, sistema che, insieme a quelli visti nel capitolo precedente, viene utilizzato anche da DBpedia per interrogare la base della conoscenza. Nella Figura 14 è riportato uno screenshot dell interfaccia creata per accedere alla base della conoscenza. Figura 14 : Interfaccia di accesso alla base di conoscenza Valutazione del prototipo La realizzazione del prototipo, come visto, ha seguito l approccio utilizzato anche in applicazioni molto più importanti e complesse come DBpedia. Come descritto nel capitolo II sono stati definiti quattro principi da seguire perché i dati pubblicati diventino parte del grande spazio globale che è oggi diventato il 64

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

Enrico Fagnoni <e.fagnoni@e-artspace.com> BOTK IN A NUTSHELL

Enrico Fagnoni <e.fagnoni@e-artspace.com> BOTK IN A NUTSHELL Enrico Fagnoni BOTK IN A NUTSHELL 20/01/2011 1 Business Ontology ToolKit Business Ontology Toolkit (BOTK) è un insieme estensibile di strumenti per realizzare applicazioni basate

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Introduzione al Semantic Web

Introduzione al Semantic Web Corso di Laurea Specialistica in Ingegneria Gestionale Corso di Sistemi Informativi Modulo II A. A. 2013-2014 Giuseppe Loseto Dal Web al Semantic Web 2 Dal Web al Semantic Web: Motivazioni Il Web dovrebbe

Dettagli

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

Strumenti di modellazione. Gabriella Trucco

Strumenti di modellazione. Gabriella Trucco Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell

Dettagli

Lezione 8. Motori di Ricerca

Lezione 8. Motori di Ricerca Lezione 8 Motori di Ricerca Basi di dati Un campo prevalente dell applicazione informatica è quello costituito dall archiviazione e dalla gestione dei dati (basi di dati). Sistema Informativo. Un sistema

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

Capitolo 13. Interrogare una base di dati

Capitolo 13. Interrogare una base di dati Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per

Dettagli

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014 Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi

Dettagli

Come archiviare i dati per le scienze sociali

Come archiviare i dati per le scienze sociali Come archiviare i dati per le scienze sociali ADPSS-SOCIODATA Archivio Dati e Programmi per le Scienze Sociali www.sociologiadip.unimib.it/sociodata E-mail: adpss.sociologia@unimib.it Tel.: 02 64487513

Dettagli

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

Dettagli

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni

Dettagli

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

Informatica Applicata 3.3 OWL. Antonella Poggi. Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE

Informatica Applicata 3.3 OWL. Antonella Poggi. Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE Informatica Applicata 3.3 OWL Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE The Semantic Web Tower Antonella Poggi Pagina 2 Le ontologie

Dettagli

PROCESSO DI INDICIZZAZIONE SEMANTICA

PROCESSO DI INDICIZZAZIONE SEMANTICA PROCESSO DI INDICIZZAZIONE SEMANTICA INDIVIDUAZIONE DEI TEMI/CONCETTI SELEZIONE DEI TEMI/CONCETTI ESPRESSIONE DEI CONCETTI NEL LINGUAGGIO DI INDICIZZAZIONE TIPI DI INDICIZZAZIONE SOMMARIZZAZIONE INDICIZZAZIONE

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Calcolatori. Il Livello delle Applicazioni Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain

Dettagli

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015 BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare

Dettagli

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste versione 2.1 24/09/2015 aggiornamenti: 23-set-2015; 24-set-2015 Autore: Francesco Brunetta (http://www.francescobrunetta.it/)

Dettagli

Corso di Amministrazione di Reti A.A. 2002/2003

Corso di Amministrazione di Reti A.A. 2002/2003 Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

Manuale Utente Amministrazione Trasparente GA

Manuale Utente Amministrazione Trasparente GA Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0 Rappresentazione della Conoscenza Lezione 10 Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0 Sistemi ed applicazioni Sistemi di rappresentazione della conoscenza basati su logiche descrittive.

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

Dettagli

Sistemi centralizzati e distribuiti

Sistemi centralizzati e distribuiti Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:

Dettagli

DINAMIC: gestione assistenza tecnica

DINAMIC: gestione assistenza tecnica DINAMIC: gestione assistenza tecnica INSTALLAZIONE SU SINGOLA POSTAZIONE DI LAVORO PER SISTEMI WINDOWS 1. Installazione del software Il file per l installazione del programma è: WEBDIN32.EXE e può essere

Dettagli

Ipertesti e Internet. Ipertesto. Ipertesto. Prof.ssa E. Gentile. a.a. 2011-2012

Ipertesti e Internet. Ipertesto. Ipertesto. Prof.ssa E. Gentile. a.a. 2011-2012 Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Ipertesti e Internet Prof.ssa E. Gentile a.a. 2011-2012 Ipertesto Qualsiasi forma di testualità parole, immagini,

Dettagli

Strutturazione logica dei dati: i file

Strutturazione logica dei dati: i file Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

ISTRUZIONI PER LA GESTIONE BUDGET

ISTRUZIONI PER LA GESTIONE BUDGET ISTRUZIONI PER LA GESTIONE BUDGET 1) OPERAZIONI PRELIMINARI PER LA GESTIONE BUDGET...1 2) INSERIMENTO E GESTIONE BUDGET PER LA PREVISIONE...4 3) STAMPA DIFFERENZE CAPITOLI/BUDGET.10 4) ANNULLAMENTO BUDGET

Dettagli

Guida all uso del web service SDMX

Guida all uso del web service SDMX Guida all uso del web service SDMX Introduzione L obiettivo di questo documento è l illustrazione sintetica degli step che tecnicamente bisogna compiere affinché un generico client sia in grado di interagire

Dettagli

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...

Dettagli

EUROCONSULTANCY-RE. Privacy Policy

EUROCONSULTANCY-RE. Privacy Policy Privacy Policy EUROCONSULTANCY-RE di Concept Design 95 Ltd Registered in England - Co. Reg. no. 3148248 - VAT no.690052547 (GB) No. Iscrizione Camera di Commercio di Milano (REA) 1954902 Codici Fiscale

Dettagli

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono

Dettagli

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Dettagli

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011 I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA Palermo 9 novembre 2011 UNIVERSITÀ DEGLI STUDI DI PALERMO Webquest Attività di indagine guidata sul Web, che richiede la partecipazione attiva degli studenti,

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

OFI ITC. Come nasce questo sito 05/06/2015. Severini Piertommaso Valenti Andrea Zallocco Riccardo

OFI ITC. Come nasce questo sito 05/06/2015. Severini Piertommaso Valenti Andrea Zallocco Riccardo OFI ITC Severini Piertommaso Valenti Andrea Zallocco Riccardo I rapporti OFI prodotti dall ISTAT in tutti questi anni con i dati provenienti dai vari enti della provincia di Macerata sono reperibili sul

Dettagli

Progettazione di una base di dati Ufficio della Motorizzazione

Progettazione di una base di dati Ufficio della Motorizzazione Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2008/2009 1 Scopo del progetto Progettazione di una base di dati Ufficio della Motorizzazione Si vuole realizzare un applicazione base

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

MODULO 5 Appunti ACCESS - Basi di dati

MODULO 5 Appunti ACCESS - Basi di dati MODULO 5 Appunti ACCESS - Basi di dati Lezione 1 www.mondopcnet.com Modulo 5 basi di dati Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database.

Dettagli

Università degli Studi di Messina

Università degli Studi di Messina Università degli Studi di Messina Guida alla Rendicontazione on-line delle Attività del Docente Versione della revisione: 2.02/2013-07 A cura di: Fabio Adelardi Università degli studi di Messina Centro

Dettagli

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record 5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1

Dettagli

2003.06.16 Il sistema C.R.M. / E.R.M.

2003.06.16 Il sistema C.R.M. / E.R.M. 2003.06.16 Il sistema C.R.M. / E.R.M. Customer / Enterprise : Resource Management of Informations I-SKIPPER è un sistema di CONOSCENZE che raccoglie ed integra INFORMAZIONI COMMERCIALI, dati su Clienti,

Dettagli

Cercare documenti Web

Cercare documenti Web Pagine web (struttura html) Cercare documenti Web Motori di Ricerca I MOTORI DI RICERCA Sulla rete Web vi sono strumenti specifici chiamati motori di ricerca (research engines) per la ricerca di siti e

Dettagli

Architettura client-server

Architettura client-server Architettura client-server In un architettura client-server ci sono due calcolatori connessi alla rete: un client che sottopone richieste al server un server in grado di rispondere alle richieste formulate

Dettagli

Breed 0.77. Novità della release. Sommario

Breed 0.77. Novità della release. Sommario Novità della release Sommario CLASSI VIRTUALI E PLURICLASSI... 1 COMPITI ED ARGOMENTI PER SINGOLO ALUNNO... 4 CAMBIO PASSWORD PER DOCENTE... 6 REGISTRO DEL SOSTEGNO... 11 UTENTE MASTER... 19 MENSA 2.0...

Dettagli

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL

Alfa Layer S.r.l. Via Caboto, 53 10129 Torino ALFA PORTAL ALFA PORTAL La struttura e le potenzialità della piattaforma Alfa Portal permette di creare, gestire e personalizzare un Portale di informazione in modo completamente automatizzato e user friendly. Tramite

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli

PowerPoint 2007 Le funzioni

PowerPoint 2007 Le funzioni PowerPoint 2007 Le funzioni Introduzione Cos è un ipertesto L' ipertesto è un testo organizzato in link, o collegamenti ad altre parti del testo e/o altri testi, in modo da consentire all utente di scegliere

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

Dettagli

2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso

2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso 2.0 Gli archivi All interno della sezione archivi sono inserite le anagrafiche. In pratica si stratta di tutti quei dati che ricorreranno costantemente all interno dei documenti. 2.1 Inserire gli archivi

Dettagli

I database. Cosa sono e a cosa servono i Database

I database. Cosa sono e a cosa servono i Database I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di

Dettagli

Gestione Risorse Umane Web

Gestione Risorse Umane Web La gestione delle risorse umane Gestione Risorse Umane Web Generazione attestati di partecipazione ai corsi di formazione (Versione V03) Premessa... 2 Configurazione del sistema... 3 Estrattore dati...

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Dettagli

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte. I TUTORI Indice Del Manuale 1 - Introduzione al Manuale Operativo 2 - Area Tutore o Area Studente? 3 - Come creare tutti insieme i Tutori per ogni alunno? 3.1 - Come creare il secondo tutore per ogni alunno?

Dettagli

Guida Compilazione Piani di Studio on-line

Guida Compilazione Piani di Studio on-line Guida Compilazione Piani di Studio on-line SIA (Sistemi Informativi d Ateneo) Visualizzazione e presentazione piani di studio ordinamento 509 e 270 Università della Calabria (Unità organizzativa complessa-

Dettagli

Introduzione all Information Retrieval

Introduzione all Information Retrieval Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information

Dettagli

FIRESHOP.NET. Gestione del taglia e colore. www.firesoft.it

FIRESHOP.NET. Gestione del taglia e colore. www.firesoft.it FIRESHOP.NET Gestione del taglia e colore www.firesoft.it Sommario SOMMARIO Introduzione... 3 Configurazione iniziale... 5 Gestione delle varianti... 6 Raggruppamento delle varianti... 8 Gestire le varianti

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Università Politecnica delle Marche. Progetto Didattico

Università Politecnica delle Marche. Progetto Didattico Università Politecnica delle Marche Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica e dell Automazione Sede di Ancona Anno Accademico 2011-2012 Corso di Tecnologie WEB Docente prof. Alessandro

Dettagli

La Metodologia adottata nel Corso

La Metodologia adottata nel Corso La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema

Dettagli

5. Fondamenti di navigazione e ricerca di informazioni sul Web

5. Fondamenti di navigazione e ricerca di informazioni sul Web 5. Fondamenti di navigazione e ricerca di informazioni sul Web EIPASS Junior SCUOLA PRIMARIA Pagina 43 di 47 In questo modulo sono trattati gli argomenti principali dell universo di Internet, con particolare

Dettagli

Data Warehousing (DW)

Data Warehousing (DW) Data Warehousing (DW) Il Data Warehousing è un processo per estrarre e integrare dati storici da sistemi transazionali (OLTP) diversi e disomogenei, e da usare come supporto al sistema di decisione aziendale

Dettagli

Olga Scotti. Basi di Informatica. Excel

Olga Scotti. Basi di Informatica. Excel Basi di Informatica Excel Tabelle pivot Le tabelle pivot sono strumenti analitici e di reporting per creare tabelle riassuntive, riorganizzare dati tramite trascinamento, filtrare e raggruppare i dati,

Dettagli

In questa pagina si descrivono le modalità di gestione del sito in riferimento al trattamento dei dati personali degli utenti che lo consultano.

In questa pagina si descrivono le modalità di gestione del sito in riferimento al trattamento dei dati personali degli utenti che lo consultano. LE POLICY SULLA PRIVACY DI QUESTO SITO PERCHE QUESTO AVVISO In questa pagina si descrivono le modalità di gestione del sito in riferimento al trattamento dei dati personali degli utenti che lo consultano.

Dettagli

Ente Ospedaliero Specializzato in Gastroenterologia "Saverio de Bellis" Istituto di Ricovero e Cura a Carattere Scientifico

Ente Ospedaliero Specializzato in Gastroenterologia Saverio de Bellis Istituto di Ricovero e Cura a Carattere Scientifico Ente Ospedaliero Specializzato in Gastroenterologia "Saverio de Bellis" Istituto di Ricovero e Cura a Carattere Scientifico Via Turi, 27 70013 Castellana Grotte (BA) PRIVACY POLICY DEL SITO ISTITUZIONALE

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

Dettagli

Creare una Rete Locale Lezione n. 1

Creare una Rete Locale Lezione n. 1 Le Reti Locali Introduzione Le Reti Locali indicate anche come LAN (Local Area Network), sono il punto d appoggio su cui si fonda la collaborazione nel lavoro in qualunque realtà, sia essa un azienda,

Dettagli

PRIVACY POLICY DEL SITO WEB

PRIVACY POLICY DEL SITO WEB PRIVACY POLICY DEL SITO WEB Via Cola di Rienzo, 243 I - 00192 ROMA Tel. +39 06.97614975 Fax +39 06.97614989 www.aido.it aidonazionale@aido.it C.F. 80023510169 TRATTAMENTO DEI DATI PERSONALI DEGLI UTENTI

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli