3.2 RDF e RDFS. Informatica Applicata. Antonella Poggi DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE. Anno Accademico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "3.2 RDF e RDFS. Informatica Applicata. Antonella Poggi DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE. Anno Accademico"

Transcript

1 Informatica Applicata 3.2 RDF e RDFS Antonella Poggi Anno Accademico DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE

2 3.2 RDF e RDFS* RDF RDFS SPARQL i Linked Open Data * Le slide sul Web Semantico sono tratte da una sezione dedicata del corso Complementi di Software e Servizi, tenuta dal prof. Rosati nell ambito del corso di Laurea Magistrale in Ingegneria Informatica Antonella Poggi Pagina 2

3 The Semantic Web Tower Antonella Poggi Pagina 3

4 Limiti di XML per la marcatura semantica: esempio <Jaguar> </Jaguar> Jaguar: marca inglese di macchine di lusso Jaguar: felino maculato (in inglese) Jaguar: versione 10.2 del sistema operativo Mac OS X Jaguar: gruppo heavy metal britannico Jaguar: novella di Roland Smith... Antonella Poggi Pagina 4

5 Limiti di XML per la marcatura semantica XML non prende nessun impegno sull uso di: 1. un vocabolario ontologico specifico 2. un insieme di primitive di modellazione ontologica richiede che sia predisposto un accordo su 1 e 2! fattibile solo per collaborazioni chiuse : strumenti usati in comunità piccole e stabili pagine di intranet piccole e stabili non adatto al Web, ovvero non permette da solo di risolvere il problema della ricerca intelligente di informazioni nel Web! Antonella Poggi Pagina 5

6 RDF RDF è un modello di dati indipendente dal dominio, dalle applicazioni e pronto all internazionalizzazione (è stato cioè progettato e sviluppato in maniera tale che il suo uso potesse adattarsi a qualsiasi lingua) può essere visto come un grafo diretto ed etichettato oppure come un modello orientato agli oggetti (oggetto/ attributo/valore) Il linguaggio RDF è un linguaggio astratto, concettuale, indipendente da XML XML non è un componente di RDF bensì una sintassi per esprimere un modello di dati RDF un modello RDF potrebbe non essere espresso in XML Antonella Poggi Pagina 6

7 Modello e triple RDF Modello RDF: insieme di triple RDF Tripla RDF: espressione (asserzione) nella forma (soggetto, predicato, oggetto) soggetto: risorsa predicato: proprietà (della risorsa) oggetto: valore (della proprietà) resource property value Antonella Poggi Pagina 7

8 Tripla RDF: esempio il documento all indirizzo TR/REC-rdf-syntax ha come autore Ora Lassila Tripla: author OraLassila => Un modello RDF è un grafo author Ora Lassila Antonella Poggi Pagina 8

9 Grafo RDF: esempio dc:publisher W3C dc:date dc:creator Ora Lassila Antonella Poggi Pagina 9

10 Etichette di nodi e archi nei grafi RDF L etichetta di un nodo o di un arco può essere: un URI una stringa: literal un etichetta anonima: blank node con i seguenti vincoli: un literal può apparire solamente nella posizione di oggetto un blank node può apparire nella posizione di oggetto o soggetto N.B. Un URI può essere usata in posizione di predicato Antonella Poggi Pagina 10

11 Blank node: per la specifica di risorse non identificabili Esempio: Marco ha un amico che è nato il giorno della befana Marco foaf:knows foaf:birthdate Marco foaf:knows _:X.! _:X foaf:birthdate ! Antonella Poggi Pagina 11

12 Blank node: per la specifica di risorse composte Esempio: L autore della specifica della sintassi RDF si chiama Ora Lassila e il suo indirizzo è ora.lassila@nokia.com dc:creator myns:name Ora Lassila myns: ora.lassila@nokia.com dc:creator _:X.! _:X myns:name Ora Lassila.! _:X myns: ora.lassila@nokia.com.! Antonella Poggi Pagina 12

13 Vocabolario proprio di RDF (built-in) RDF assegna una semantica specifica ad un certo insieme di termini nello spazio dei nomi di RDF, ovvero ai termini definiti dalle URI con prefisso la stringa (solitamente abbreviata come rdf:) Esempi di termini rdf:type! rdf:seq, rdf:bag, rdf:alt! rdf:_1, rdf:_2,..., rdf:li! rdf:subject! rdf:predicate! rdf:object! rdf:statement! rdf:property! Antonella Poggi Pagina 13

14 Specifica di collezioni Attraverso l uso dei containers è possibile raggruppare collezioni di risorse (o di valori) Esistono diversi tipi di container rdf:bag collezioni non ordinate rdf:seq collezioni ordinate (= sequenze ) rdf:alt collezioni che rappresentano alternative E possibile esprimere asserzioni che riguardano il container (intenso nel suo insieme) oppure i suoi membri rdf:_n n-esimo membro di na sequenza rdf:li elemento di una collezione Valori o risorse duplicate sono permessi Antonella Poggi Pagina 14

15 Specifica di collezioni: esempio Gli autori della specifica della sintassi di RDF sono, in ordine, Ora Lassila e Ralph Swick dc:creator rdf:_1 rdf:type rdf:_2 rdf:seq Ora Lassila Ralph Swick dc:creator _:X.! _:X rdf:type rdf:seq.! _:X rdf:_1 Ora Lassila.! _:X rdf:_1 Ralph Swick.! Antonella Poggi Pagina 15

16 Specifica di asserzioni riguardanti asserzione In RDF è possibile scrivere delle asserzioni che riguardano altre asserzioni esempio: Ralph crede che il web contenga un miliardo di documenti Asserzioni di ordine superiore permette di esprimere credenze (così come certezze, ecc.) sono importanti per la gestione dell autorevolezza delle sorgenti di informazioni permettono di esprimere metadati sui metadati Strumento di base: la reificazione, ovvero la rappresentazione di un asserzione come una risorsa Antonella Poggi Pagina 16

17 Reificazione: esempio La Library of Congress ha scritto che Ora Lassila è l autore della sintassi RDF dc:creator Ora Lassila rdf:subject rdf:predicate rdf:object rdf:statement rdf:type Library of Congress dc:creator Antonella Poggi Pagina 17

18 Notazione grafica: grafo Sintassi per RDF Notazione informale: triple (soggetto, predicato, oggetto) Sintassi formali (leggibili dalle macchine) sintassi RDF/XML (usata nel Web Semantico) notazione turtle notazione 3 (N3)... Antonella Poggi Pagina 18

19 Esercizio 1: modello RDF Disegnare il grafo/modello RDF che rappresenta le seguenti asserzioni: Document 1 è stato creato da Paul Document 2 e Document 3 sono stati creati da uno stesso autore (che è sconosciuto) Document 3 dice che Document 1 è stato pubblicato dal W3C Usare i predicati dc:creator and dc:publisher, e assumere che i tre documenti siano identificati dalle URI doc1, doc2, doc3, rispettivamente. Antonella Poggi Pagina 19

20 Esercizio 1: soluzione doc1 dc:creator Paul doc2 dc:creator rdf:subject myns:dice doc3 dc:creator rdf:type rdf:predicate rdf:object rdf:statement dc:publisher W3C Antonella Poggi Pagina 20

21 Sintassi RDF/XML Un nodo del grafo RDF che rappresenta una risorsa (etichettata o non) è rappresentato da un elemento rdf:description mentre la sua etichetta, se c è, è definita come il valore dell attributo rdf:about! Gli archi del grafo uscenti da un nodo N sono rappresentati da un sottoelemento dell elemento che rappresenta N, la cui etichetta è l etichetta dell arco Il nodo uscente di un arco è rappresentato come il contenuto dell elemento che rappresenta l arco sia che esso sia un valore sia che esso sia una nuova risorsa: in questo caso un sottoelemento rdf:description lo rappresenta Ai valori (literal) può essere attribuito un tipo (gli stessi definiti in XML-Schema) Antonella Poggi Pagina 21

22 Sintassi RDF/XML:esempio dc:creator Ora Lassila <?xml version= 1.0?>! <rdf:rdf xmlns:rdf= xmlns:dc= >!!<rdf:description rdf:about= >!!!<dc:creator>ora Lassila</dc:creator>!!</rdf:Description>! </rdf:rdf>! Antonella Poggi Pagina 22

23 Sintassi RDF/XML: identificare i blank node I blank node nel grafo RDF sono distinti ma non hanno un URI che li identifica Problema: come si fa quando un blank node è oggetto/soggetto di più asserzioni? Un identificatore locale al documento viene associato all elemento XML che rappresenta il blank node attraverso l attributo rdf:nodeid= id_b l attributo rdf:nodeid sostituisce gli attributi rdf:about e rdf:resource laddove si userebbero questi attributi per una risorsa etichettata Antonella Poggi Pagina 23

24 RDF/XML: esempio dc:publisher dc:creator W3C dc:date myns:name Ora Lassila myns: <?xml version= 1.0?>! <rdf:rdf xmlns:rdf= xmlns:dc= xmlns:myns= >!!<rdf:description rdf:about= >!! <dc:publisher>w3c</dc:publisher>!!</rdf:description>!!<rdf:description rdf:about= >!! <dc:creator>!!!<rdf:description rdf:nodeid= C_ID >!! </dc:creator>!!</rdf:description>! Per ogni tripla RDF!<rdf:Description rdf:about= >! esiste un elemento! <dc:date rdf:datatype= > </dc:Date>! rdf:description!!</rdf:description>!!<rdf:description rdf:nodeid= C_ID >!! <myns:name> Ora Lassila</myns:Name>!!</rdf:Description>!!<rdf:Description rdf:nodeid= C_ID >!! <myns: > </rdf:rdf>! Antonella Poggi Pagina 24

25 RDF/XML: semplificazioni Più proprietà possono essere codificate per la stessa risorsa Il riferimento URI associato ad una risorsa oggetto di un predicato, che non è soggetto di nessun predicato può essere codificato come il valore di un attributo rdf:resource associato all elemento che rappresenta il predicato Una risorsa che è un literal e che è oggetto di un predicato può essere codificata come il valore di un attributo dell elemento che rappresenta il soggetto, il cui nome è pari all etichetta del predicato Antonella Poggi Pagina 25

26 RDF/XML: esempio dell uso delle semplificazioni <rdf:description rdf:about= >!!<dc:publisher>w3c</dc:publisher>! </rdf:description>! <rdf:description rdf:about= >!!<dc:creator>!! <rdf:description rdf:nodeid= C_ID />!!</dc:creator>! </rdf:description>! <rdf:description rdf:about= >!!<dc:date rdf:datatype= > </dc:Date>! </rdf:description>! <rdf:description rdf:nodeid= C_ID >!!<myns:name> Ora Lassila</myns:Name>! </rdf:description>! <rdf:description rdf:nodeid= C_ID >!!<myns: > </rdf:description>! <rdf:description rdf:about= dc:publisher= W3C >!!<dc:creator>!! <rdf:description>!!!<myns:name> Ora Lassila</myns:Name>!!!<myns: > </rdf:description>!!</dc:creator>!!<dc:date rdf:datatype=" </rdf:description>! Antonella Poggi Pagina 26

27 Reificazione in RDF/XML: altro esempio (con semplificazioni) dc:creator Ora Lassila rdf:subject rdf:predicate rdf:object rdf:statement rdf:type dc:creator Library of Congress <rdf:description dc:creator= Library of Congress rdf:object= Ora Lassila >!!<rdf:subject rdf:resource= />!!<rdf:predicate rdf:resource= />!!<rdf:type rdf:resource= />! </rdf:description>! Antonella Poggi Pagina 27

28 Esercizio 2: sintassi RDF/XML Esprimere usando la sintassi RDF/XML il grafo RDF dell esercizio 1. myns:doc1 dc:creator Paul myns:doc2 dc:creator rdf:subject myns:dice myns:doc3 dc:creator rdf:type rdf:predicate rdf:object rdf:statement dc:publisher W3C Antonella Poggi Pagina 28

29 Esercizio 2: soluzione <?xml version= 1.0?>! <rdf:rdf xmlns:rdf= xmlns:dc= xmlns= >!!<rdf:description rdf:about= doc2 >!!!<dc:creator rdf:nodeid= C />!!</rdf:description>!!<rdf:description rdf:about= doc3 >!!!<dc:creator rdf:nodeid= C />!!!<dice>!!! <rdf:description rdf:object= W3C >!!!!!<rdf:type rdf:resource= />!!!!!<rdf:predicate rdf:resource= />!!!!<rdf:subject>!!!!!! <rdf:description rdf:about= doc1!dc:creator= Paul />!!!!</rdf:subject>!!! </rdf:description>!!!</dice>!!</rdf:description>! </rdf:rdf>! Antonella Poggi Pagina 29

30 RDF e il Dublin Core Dublin Core è indipendente da qualunque sintassi, ma ben si adatta a RDF E stato definito un vocabolario, ovvero uno spazio di nomi, il cui uso viene raccomandato ogni volta che si vogliono codificare i metadati secondo lo schema del Dublin Core namespace: il titolo di una risorsa, codificato secondo lo schema del DC è rappresentato come il literal associato alla risorsa attraverso il predicato identificato dalla URI elements/1.1/title Sono stati proposti una DTD e un XML Schema per definire come codificare il Dublin Core Metadata Element Set (DCMES) in RDF/XML URI del DTD: /07/31/dcmes-xml/dcmes-xml-dtd.dtd! Antonella Poggi Pagina 30

31 Un esempio di Dublin Core in RDF <?xml version="1.0"?> <!DOCTYPE rdf:rdf SYSTEM " <rdf:rdf xmlns:rdf= xmlns:dc=" <rdf:description rdf:about=" <dc:title>d-lib Program</dc:title> <dc:description>the D-Lib program supports the community of people with research interests in digital libraries and electronic publishing.</dc:description> <dc:publisher>corporation For National Research Initiatives</dc:publisher> <dc:date> </dc:date> <dc:subject> <rdf:bag> <rdf:_1>research; statistical methods</rdf:_1> <rdf:_2>education, research, related topics</rdf:_2> <rdf:_3>library use Studies</rdf:_3> </rdf:bag> </dc:subject> <dc:type>world Wide Web Home Page</dc:type> <dc:format>text/html</dc:format> <dc:language>en</dc:language> </rdf:description> </rdf:rdf> Antonella Poggi Pagina 31

32 3.2 RDF e RDFS RDF RDFS SPARQL i Linked Open Data Antonella Poggi Pagina 32

33 RDF Schema (RDFS) Definisce un piccolo vocabulario per RDF Assegna a certi termini un significato predefinito speciale Estende l insieme degli elementi predefiniti di RDF; ricorda: rdf:type una risorsa è un istanza di una classe rdf:property una risorsa è una proprietà Consente di definire classi e proprietà Consente di parlare del meta-livello Antonella Poggi Pagina 33

34 RDFS in dettaglio rdfs:resource ogni risorsa è istanza della classe rdfs:resource rdfs:literal sottoclasse di rdfs:resource, rappresenta un letterale, una stringa di testo rdfs:class una risorsa è una classe rdfs:subclassof una risorsa è una sottoclasse di un altra risorsa rdfs:subpropertyof una proprietà è una sottoproprietà di un altra rdfs:domain prima componente di una proprietà rdfs:range seconda componente di una proprietà rdfs:seealso specifica una risorsa che fornisce ulteriori informazioni sul soggetto dell asserzione rdfs:isdefinedby sottoproprietà di rdfs:seealso, indica una risorsa che definisce il soggetto di un asserzione Antonella Poggi Pagina 34

35 RDFS: esempio (rappresentazione a grafo) rdfs:resource rdfs:subclassof rdf:type rdfs:class rdf:type rdfs:subclassof rdf:property Legenda istanza RDF schema RDFS predefinito in RDFS logic. implicato dalla semantica di RDFS rdfs:subclassof rdf:type rdfs:subclassof rdf:type Person rdf:type rdfs:subclassof rdf:type Student rdfs:domain hassupervisor rdfs:range Researcher rdf:type rdf:type Frank hassupervisor Jeen Antonella Poggi Pagina 35

36 RDFS: esempio (triple) Student rdfs:subclassof Person.! Researcher rdfs:subclassof Person.! hassupervisor rdfs:range Researcher.! hassupervisor rdfs:domain Student.! Frank rdf:type Student.! Jeen rdf:type Researcher.! Frank hassupervisor Jeen.! Antonella Poggi Pagina 36

37 RDFS: esempio (sintassi XML) <?xml version= 1.0?> <rdf:rdf xmlns:rdf= xmlns:rdfs= > <rdf:description rdf:about= #Student > <rdfs:subclassof rdf:resource= #Person /> </rdf:description> <rdf:description rdf:about= #Researcher > <rdfs:subclassof rdf:resource= #Person /> </rdf:description> <rdf:description rdf:about= #hassupervisor > <rdfs:domain rdf:resource= #Student /> <rdfs:range rdf:resource= #Researcher /> </rdf:description> <rdf:description rdf:about= #Frank > <rdf:type rdf:resource= #Student /> <hassupervisor rdf:resource= #Jeen /> </rdf:description> <rdf:description rdf:about= #Jeen > <rdf:type rdf:resource= #Researcher /> </rdf:description> </rdf:rdf> Antonella Poggi Pagina 37

38 RDF e RDFS RDFS definisce una semplice ontologia, ovvero le classi di interesse e le loro proprietà e relazioni Ci sono autori, e gli autori scrivono libri RDF definisce le instanze di queste classi e delle loro proprietà: Marcel Proust è un autore Marcel Proust ha scritto A l ombre des jeunes filles en fleur A l ombre des jeunes filles en fleur è un libro Antonella Poggi Pagina 38

39 RDF e RDFS: semantica? Qual è il significato esatto di un grafo RDF? Inizialmente non è stata definita nessuna semantica formale! Principali problemi: blank nodes meta-modellazione Solo recentemente sono stati proposti: una semantica formale una definizione formale dell implicazione logica e delle interrogazioni su grafi RDF(S) -> ragionatori per RDFS alle prime armi! Antonella Poggi Pagina 39

40 RDF e RDFS: problema con la metamodellazione Sia K1 l insieme delle seguenti triple RDF: (#a rdf:type #C)! (#C rdf:type #R)! (#R rdf:type #a)! Sia K2 costituito dalla sola tripla (#C rdf:type #C)! K1 e K2 sono entrambi insiemi di asserzioni RDF corretti (formalmente significativi)......ma cosa signficano? Non esiste una semantica intuitiva! Antonella Poggi Pagina 40

41 Esercizio 3: modello RDF/RDFS Disegnare il grafo che rappresenta le seguenti asserzioni URI1 and URI2 sono classi URI3 è una proprietà URI4 è un istanza della classe URI1 URI5 e URI6 sono istanze della classe URI2 URI3 ha dominio URI1 e range URI2 (URI4,URI6) è un istanza della proprietà URI3 Esprimere il grafo in sintassi XML. Antonella Poggi Pagina 41

42 Esercizio 3: soluzione (triple) URI1 rdf:type rdfs:class.! URI2 rdf:type rdfs:class.! URI3 rdf:type rdf:property.! URI4 rdf:type URI1.! URI5 rdf:type URI2.! URI6 rdf:type URI2.! URI3 rdfs:domain URI1.! URI3 rdfs:range URI2.! URI4 URI3 URI6.! Antonella Poggi Pagina 42

43 Esercizio 3: soluzione (grafo) rdfs:class rdf:property rdf:type rdf:type rdf:type URI1 rdfs:domain URI3 rdfs:range URI2 rdf:type rdf:type rdf:type URI4 URI3 URI6 URI5 Antonella Poggi Pagina 43

44 Esercizio 3: soluzione (sintassi XML) <?xml version= 1.0?> <rdf:rdf xmlns:rdf= xmlns:rdfs= > <rdf:description rdf:about= URI1 > <rdf:type rdf:resource= /> </rdf:description> <rdf:description rdf:about= URI2 > <rdf:type rdf:resource= /> </rdf:description> <rdf:description rdf:about= URI3 > <rdf:type rdf:resource= /> <rdfs:domain rdf:resource= URI1 /> <rdfs:range rdf:resource= URI2 /> </rdf:description> <rdf:description rdf:about= URI4 > <rdf:type rdf:resource= /> <URI3 rdf:resource= URI6 /> </rdf:description> <rdf:description rdf:about= URI5 > <rdf:type rdf:resource= URI2 /> </rdf:description> <rdf:description rdf:about= URI6 > <rdf:type rdf:resource= URI2 /> </rdf:description> </rdf:rdf> Antonella Poggi Pagina 44

45 RDFS e il Dublin Core Da quando l uso di RDFS è diventato raccomandato, la Dublin Core Metadata Initiative ha definito un nuovo insieme di termini, i DCMI Metadata Terms (DCTERMS) nuovo spazio di nomi: sono state definite delle classi, istanze di rdfs:class; per esempio, la classe Agent rappresenta A resource that acts or has the the power to act le 15 proprietà del Dublin Core Metadata Element Set (DCMES) hanno mantenuto lo stesso nome (nell ambito del nuovo spazio di nomi) e sono state definite come sottoproprietà delle corrispondenti proprietà del DC Metadata Element Set (DCMES) per ogni proprietà sono stati definiti il range e, quando applicabile, il dominio; per esempio, il range di contributor è la classe Agent! sono state espresse proprietà semantiche tra elementi; per esempio, creator è una sottoproprietà di contributor Grazie alla definizione di domini e/o range delle proprietà, i significati che nel DCMES erano espressi attraverso definizioni in linguaggio naturale sono espressi in una forma che può essere elaborata dai ragionatori per fare inferenze Analogamente i ragionatori possono sfruttare per fare inferenze le relazioni semantiche espresse tra elementi diversi I DCTERMS sono stati definiti in maniera tale da non compromettere la conformità delle rappresentazioni di metadati DC già esistenti in RDF RDFS consente di usare la versione del DC qualified, rispettandone la semantica, grazie all uso di rdfs:subpropertyof! per esempio, i metadati issued e modified sono entrambi definiti nel DC qualified con qualificatori di affinamento e sono definiti attraverso le asserzioni dcterm:issued rdfs:subpropertyof dc:date!!!dcterm:modified rdfs:subpropertyof dc:date! Antonella Poggi Pagina 45

46 3.2 RDF e RDFS RDF RDFS SPARQL i Linked Open Data Antonella Poggi Pagina 46

47 SPARQL Standard W3C per l interrogazione di dati RDF Acronimo: Simple Protocol And RDF Query Language Noi ci interesseremo solo al linguaggio di query (e non al protocollo) Basato su basic graph pattern (BGP) query language => query espresse attraverso la specifica di un pattern, ovvero di un grafo RDF che eventualmente contiene delle variabili come etichette Partendo da BGP, si specificano ulteriori operatori (AND, FILTER, UNION, OPTIONAL) Antonella Poggi Pagina 47

48 Sintassi by example I nomi di tutti gli autori di risorse il cui titolo è Romeo and Juliet PREFIX dct: < PREFIX foaf: < SELECT?author! FROM < WHERE {?x dct:creator?y.!!!?x dct:title Romeo and Juliet.!!!?y foaf:name?author}! La variabili sono denotate con il prefisso "? Nella clausola SELECT sono specificate le variabili da restituire nel risultato Nella clausola FROM è specificata la URI del grafo da interrogare Nella clausola WHERE è specificato il graph pattern in termini di triple che contengono delle variabili Antonella Poggi Pagina 48

49 Semantica by example La query restituisce tutte le risorse R per le quali esistono delle risorse X,Y tali che sostituendo rispettivamente R, X, Y alle variabili?author,?x e?y si ottengono delle triple presenti nel grafo interrogato. QUERY?x?y?author dct:creator foaf:name dct:title Romeo and Juliet bnb:resource / GRAFO INTERROGATO dct:creator dct:title bnb:person/ AppignanesiRichard foaf:name Romeo and Juliet Richard Appignanesi RISULTATO bnb:resource / bnb:person/ ShakespeareWilliam author! Richard Appignanesi! William Shakespeare! dct:creator dct:title foaf:name Romeo and Juliet William Shakespeare Antonella Poggi Pagina 49

50 Struttura generale di una query SPARQL Una query SPARQL comprende, in ordine: dichiarazioni di prefissi, per abbreviare le URI (opzionale) definizioni di dataset, per specificare i grafi da interrogare (possono essere più di uno) clausola SELECT, per identificare l informazione da restituire clausola WHERE, per specificare il query pattern, ovevro le condizioni che devono essere soddisfatte dalle triple del dataset modificatori di query, per riorganizzare i risultati della query (opzionale) # dichiarazioni di prefissi! PREFIX es: <...>!...! # definizioni di dataset! FROM <...>! # informazioni da restituire! SELECT...! # specifica del graph pattern! WHERE {...}! # modificatori di query! ORDER BY...! Antonella Poggi Pagina 50

51 Semantica procedurale Si cercano tutte le sostituzioni di variabili S={U1->? x1, U2->x2,...Un->xn} tali che, applicate al graph pattern, producono un sottografo del grafo interrogato -> Da ogni sostituzione di variabili, si ottiene un sottografo soluzione che soddisfa i vincoli espressi dal pattern Ogni sottografo soluzione viene elaborato per estrarre le tuple risultato e, eventualmente, filtrarle, riorganizzarle... Antonella Poggi Pagina 51

52 Gli endpoint SPARQL Le query SPARQL vengono eseguite su dataset (i.e., grafi) RDF Uno SPARQL endpoint accetta query e restituisce risultati via il protocollo HTTP endpoint generici interrogano tutti i dataset RDF che siano accessibili via il Web es.: endpoint specifici sono intesi per interrogare uno o più dataset specifici La clausola FROM, in linea di principio, è obbligatoria, ma quando l endpoint è specifico, tipicamente, si può omettere (dataset specifici) quando l endpoint è generico, spesso assume che si stia interrogando un dataset di default -> nella nostra trattazione, la maggior parte delle volte, ometteremo la clausola FROM, assumendo implicitamente di interrogare endpoint specifici Antonella Poggi Pagina 52

53 Risultati delle query Il risultato di una query è un insieme di tuple, la cui struttura (etichette e cardinalità) riflette la forma della clausola SELECT Gli SPARQL endpoint decidono la sintassi in cui deve essere restituito il risultato XML HTML... Esempio: si provi ad eseguire la query precedente (senza clausola FROM) all endpoint della Linked Open British National Bibliography ( si confronti il risultato con quello che si ottiene eseguendo la stessa query all endpoint generico Antonella Poggi Pagina 53

54 SPARQL: clausola WHERE La clausola WHERE contiene un graph pattern, costituito da: un insieme di triple separate da.. ha la semantica dell AND oggetto, predicato e/o soggetto possono essere variabili ed eventualmente: una condizione FILTER che esprime dei vincoli che devono essere soddisfatti dalle tuple risultato, per mezzo di espressioni booleane serve ad escludere dal risultato delle tuple una condizione OPTIONAL che indica un pattern che può (ma non deve) essere soddisfatto da un sottografo, per dare origine ad una tupla risultato Antonella Poggi Pagina 54

55 Esempio: semplice query SPARQL Grafo foaf: < _:a foaf:name "Johnny Lee Outlaw". _:a foaf:mbox _:b foaf:name "Peter Goodguy". _:b foaf:mbox _:c foaf:mbox Query: PREFIX foaf: < SELECT?name?mbox WHERE {?x foaf:name?name.?x foaf:mbox?mbox } Risultato: Johnny Lee Outlaw mailto:jlow@example.com Peter Goodguy mailto:peter@example.com Antonella Poggi Pagina 55

56 Interrogare i predicati Nel graph pattern di una query SPARQL è possibile etichettare un predicato con una variabile Esempio: che proprietà ha la risorsa < bnb.data.bl.uk/id/resource/ >? select distinct?p?v! from < where {< >?p?v}! Eseguire la query nell endpoint della Linked Open British National Bibliography ( Antonella Poggi Pagina 56

57 Esempio: uso della filter Grafo RDF: Query: foaf: < _:a foaf:name "Johnny Lee Outlaw". _:a foaf:mbox _:b foaf:name "Peter Goodguy". _:b foaf:mbox PREFIX rdfs: < PREFIX type: < PREFIX prop: < SELECT?country_name?population WHERE {?country a type:landlockedcountries ; } _:c foaf:mbox mailto:carol@example.org. rdfs:label?country_name ; PREFIX foaf: < prop:populationestimate?population. FILTER (?population > ). SELECT?name?mbox WHERE {?x foaf:name?name.?x foaf:mbox?mbox. FILTER regex(?name, "^J") } Johnny Lee Outlaw mailto:jlow@example.com Antonella Poggi Pagina 57

58 Predicati che si possono usare nella filter Logici:! (NOT), && (AND) e (OR) Confronto: >, <, =,!= (diverso), IN, NOT IN,.. Test: isuri, isblank, isliteral, isnumeric, Antonella Poggi Pagina 58

59 Esempio: interrogare DBPedia con la filter Restituisci tutte le nazioni che non hanno sbocco sul mare e che hanno più di 15 milioni di abitanti PREFIX rdfs: < type: prop: {!!!?country rdf:type type:landlockedcountries.!!!?country rdfs:label?country_name.!!!?country prop:populationestimate?population.!filter (?population > )}! Eseguire la query nell endpoint di DBPedia ( Antonella Poggi Pagina 59

60 Esempio: uso di pattern opzionali (1) Grafo foaf: < _:a foaf:name "Johnny Lee Outlaw". _:a foaf:mbox _:b foaf:name "Peter Goodguy". _:b foaf:mbox _:c foaf:mbox Query: PREFIX foaf: < SELECT?name?mbox WHERE {?x foaf:mbox?mbox. OPTIONAL {?x foaf:name?name } } Risultato: Johnny Lee Outlaw <mailto:jlow@example.com> Peter Goodguy <mailto:peter@example.com> <mailto:carol@example.org> Antonella Poggi Pagina 60

61 Esempio: uso di pattern opzionali (2) Grafo RDF: foaf: rdf: < _:a rdf:type foaf:person. _:a foaf:name "Alice". _:a foaf:mbox _:a foaf:mbox _:b rdf:type foaf:person. _:b foaf:name "Bob". PREFIX foaf: < SELECT?name?mbox WHERE {?x foaf:name?name. OPTIONAL {?x foaf:mbox?mbox } } Risultato: Alice Alice Bob <mailto:alice@example.com> <mailto:alice@work.example> Antonella Poggi Pagina 61

62 Esempio: uso di pattern opzionali (3) Restituire tutte le risorse contenute nel dataset della British National Bibliography, il cui titolo è Romeo and Juliet, insieme al codice ISBN a 10 cifre e al codice ISBN a 13 CIFRE, se li hanno prefix dct:< prefix bibo:< select?x?i10?i13! from < WHERE {?x dct:title "Romeo and Juliet".!! OPTIONAL {?x bibo:isbn10?i10}.! OPTIONAL {?x bibo:isbn13?i13}}! Eseguire la query nell endpoint generico offerto da OpenLink Software ( e confrontarla con la versione senza condizione OPTIONAL Antonella Poggi Pagina 62

63 Unione di graph pattern Un graph pattern può essere definito come l unione di più graph pattern Esempio: restituire tutte le risorse contenute nel dataset della British National Bibliography, il cui titolo è Romeo and Juliet e che hanno un codice ISBN, sia esso a 10 o 13 cifre. prefix dct:< prefix bibo:< select?x?i! from < WHERE {{?x dct:title "Romeo and Juliet".!?x bibo:isbn10?i} UNION!!! {?x dct:title "Romeo and Juliet".!?x bibo:isbn13?i}}! Antonella Poggi Pagina 63

64 Esercizio 4: scrivere query SPARQL Esprimere con una query SPARQL la seguente richiesta: Restituisci tutte le URI che hanno un autore e una data di creazione Antonella Poggi Pagina 64

65 Esercizio 4: soluzione PREFIX dc: < SELECT?x! WHERE {?x dc:creator?y.!?x dc:date?z. }! Antonella Poggi Pagina 65

66 Esercizio 5: scrivere query SPARQL Esprimere con una query SPARQL la seguente richiesta: Restituisci tutti i predicati che hanno come soggetto sia myns:uri1 che myns:uri2, dove myns è lo spazio di nomi esempi_rdf/ Antonella Poggi Pagina 66

67 Esercizio 5: soluzione PREFIX myns: < esempi_rdf/>! SELECT?x! WHERE { myns:uri1?x?y.! myns:uri2?x?z. }! Antonella Poggi Pagina 67

68 Esercizio 6: scrivere query SPARQL Esprimere con una query SPARQL la seguente richiesta: Restituisci tutti i predicati che hanno come soggetto myns:uri1 o myns:uri2, dove myns è lo spazio di nomi esempi_rdf/ Antonella Poggi Pagina 68

69 Esercizio 6: soluzione PREFIX myns: < esempi_rdf/>! SELECT?x! WHERE { { myns:uri1?x?y } UNION! { myns:uri2?x?z } }! Antonella Poggi Pagina 69

70 Esercizio 7: scrivere query SPARQL Esprimere con una query SPARQL la seguente richiesta: Restituisci il nome degli autori di documenti che hanno una data di creazione Antonella Poggi Pagina 70

71 Esercizio 7: soluzione PREFIX dc: < PREFIX foaf: < SELECT?z! WHERE {?x dc:creator?y.!?y foaf:name?z.!?x dc:date?w }! Antonella Poggi Pagina 71

72 Esercizio 8: scrivere query SPARQL Esprimere con una query SPARQL la seguente richiesta: Restituisci i nomi degli autori e la data di creazione dei documenti che hanno un autore e, eventualmente, una data di creazione Antonella Poggi Pagina 72

73 Esercizio 8: soluzione PREFIX dc: < PREFIX foaf: < SELECT?z?w! WHERE {?x dc:creator?y.!?y foaf:name?z.! OPTIONAL {?x dc:date?w } }! Antonella Poggi Pagina 73

74 3.2 RDF e RDFS RDF RDFS SPARQL i Linked Open Data Antonella Poggi Pagina 74

75 Linked Open Data: cosa sono Linked Data: best practice per pubblicare, condividere e collegare dati, informazioni e conoscenza nel Web Semantico, usando le URI Linked Open Data (LOD): risultato di una serie di progetti ancora oggi dedicati a pubblicare sul Web insiemi di dati aperti al pubblico, nel formato RDF, usando le URI e definendo collegamenti tra dati appartenenti a sorgenti diverse i collegamenti RDF permettono di navigare a partire da dati nell ambito di una sorgente dati a dati ad essi collegati nell ambito di altre sorgenti dati poiché i risultati delle interrogazioni sono dati strutturati (e non dei link a pagine HTML) possono essere usati nell ambito di applicazioni Antonella Poggi Pagina 75

76 I diagrammi del LOD cloud 9/2007 9/ /2008 9/2009 Antonella Poggi Pagina 76

77 Il LOD cloud oggi Linking Open Data cloud diagram, 09/2011 (by Richard Cyganiak and Anja Jentzsch. Antonella Poggi Pagina 77

78 LOD: RDF nel mondo reale Principale applicazione di RDF oggi: linked data linked data = usare il Web per creare link tipati tra dati di sorgenti diverse cioè: creare un Web di dati! DBpedia, Geonames, US Census, EuroStat, MusicBrainz, BBC Programmes, Flickr, DBLP, PubMed, UniProt, FOAF, SIOC, OpenCyc, UMBEL, Virtual Observatories, freebase, ogni sorgente: fino a molti milioni di triple in tutto: più di 30 miliardi di triple (2012) Antonella Poggi Pagina 78

79 I principii dei Linked Data 1. Usare le URI come nomi per le risorse 2. Usare HTTP URI, per permettere alle persone di consultare le risorse nominate (dereferenceable URIs) 3. Quando qualcuno consulta una risorsa, fornire informazione utile, usando gli standard (RDF, SPARQL) 4. Includere collegamenti ad altre URI, in maniera tale che ulteriori informazioni possano essere scoperte Dereferenceability = le URI non sono solamente usate per identificare entità: poiché possono essere usate come le URL, permettono di localizzare e ricavare risorse che descrivono e rappresentano tali entità nel Web Antonella Poggi Pagina 79

80 Linked Data vs. Web attuale i Linked Data (idealmente espressi in RDF+OWL+ecc., usando collegamenti ad URI) stanno al Web Semantico come le pagine Web (idealmente espresse in XML + fogli di stile, usando collegamenti ad URL) stanno al Web I collegamenti nei Linked Data permettono alle applicazioni di navigare uno spazio di dati Esempio: un applicazione dei Linked Data che ha consultato un URI e scaricato dati RDF che descrivono una persona, può seguire i collegamenti da quei dati ai dati in altri Web server, che descrivono, per esempio, il luogo dove la persona vive o l azienda per la quale la persona lavora Antonella Poggi Pagina 80

81 Utilizzo dei vocabolari RDF Aspetto cruciale dei Linked Data (e di RDF in generale): che URI usare? La pratica raccomandata nei LOD è quella di usare i vocabolari RDF esistenti (e, preferibilmente, i più popolari) -> se tutti i LOD dataset usano la stessa URI per rappresentare la stessa proprietà, allora la semantica di quella URI è condivisa (ovvero è conosciuta da tutte le applicazione) e quella URI diventa lo standard de-facto! Antonella Poggi Pagina 81

82 Esempi di vocabolari RDF famosi Dublin Core (DC) Friend-of-a-Friend (FOAF), vocabulario per descrivere persone Semantically-Interlinked Online Communities (SIOC), vocabulario per rappresentare comunità online Description of a Project (DOAP), vocabolario epr descrivere progetti Simple Knowledge Organization System (SKOS), vocabulario per rappresentare tassonomie e conoscenza debolmente strutturata Music Ontology vocabolario per descrivere artisti, album, canzoni Creative Commons (CC), vocabulario per descrivere licenze Bibliographic Ontology (BIBO), vocabolario/ontologia per descrivere informazioni bibliografiche Antonella Poggi Pagina 82

83 Esempio di LOD data set: il Linked Open BNB La British Library ( sta rendendo via via disponibile una versione della British National Bibliography ( come LOD dataset, accessibile anche tramite uno SPARQL endpoint specifico ( Il dataset è in continuo arricchimento e segue le buone pratiche raccomandate per i LOD Le risorse sono descritte usando diversi vocabolari, tra cui DC, FOAF, SKOS, OWL, RDFS,... Collegamenti a sorgenti LOD esterne sono stati forniti, tra cui GeoNames (per il paese di pubblicazione), MARC List of country codes, MARC list for language codes, Library of Congress Subject Headings... Antonella Poggi Pagina 83

84 British Library Data Model - Book bldatamodelbook.pdf Antonella Poggi Pagina 84

85 Conclusione: RDF è la soluzione al problema semantico No, a meno che il vocabolario usato sia condiviso La semantica di ogni predicato, o più in generale di ogni URI, deve essere conosciuta da tutte le applicazioni Soluzioni: uso di vocabolari/ontologie famose creazione bottom-up di vocabolari condivisi tagging (e.g., Flick) micro-formati (e.g. vcard) Antonella Poggi Pagina 85

Metadati: RDF e RDFS WWW. Riccardo Gentilucci Marco Pirruccio

Metadati: RDF e RDFS WWW. Riccardo Gentilucci Marco Pirruccio Metadati: RDF e RDFS Riccardo Gentilucci Introduzione Esaminiamo: Meta informazioni e web semantico Il modello di RDF La sintassi di RDF Il Dublin Core RDF Schema 2 Meta informazioni Tutta la famiglia

Dettagli

RDF. Resource Description Framework

RDF. Resource Description Framework RDF Resource Description Framework 1 Sommario 1) Cos è l RDF RDF Model and Syntax RDF Schema 2) Il data model RDF definizione di risorsa, proprietà e statement esempio 1 esempio 2 2 3) Combinazione RDF

Dettagli

Semantic Web: linguaggi e tecnologie

Semantic Web: linguaggi e tecnologie Corso di Laurea Specialistica in Ingegneria Gestionale Corso di Sistemi Informativi A. A. 2012-2013 Semantic Web: linguaggi e tecnologie Eufemia TINELLI Dal Web al Semantic Web: Motivazioni Il Web dovrebbe

Dettagli

RDF RDFS RDF/XML. Dott.sa Vincenza Anna Leano vincenzaanna.leano@unina.it. Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011

RDF RDFS RDF/XML. Dott.sa Vincenza Anna Leano vincenzaanna.leano@unina.it. Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011 RDF RDFS RDF/XML Dott.sa Vincenza Anna Leano vincenzaanna.leano@unina.it Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011 ESEMPIO Concetto Il prof Cutugno insegna Basi di Dati II Rappresentazione

Dettagli

Introduzione a RDF (Resource Description Framework)

Introduzione a RDF (Resource Description Framework) Introduzione a RDF (Resource Description Framework) Abbiamo visto che uno degli obiettivi del Web Semantico è quello di rendere le risorse comprensibili e utilizzabili da agenti software. Un ruolo molto

Dettagli

Web Semantico e Linked (Open) Data: dal Web dei documenti al Web dei dati. Tommaso Di Noia

Web Semantico e Linked (Open) Data: dal Web dei documenti al Web dei dati. Tommaso Di Noia Web Semantico e Linked (Open) Data: dal Web dei documenti al Web dei dati Tommaso Di Noia Politecnico di Bari http://sisinflab.poliba.it/dinoia/ t.dinoia@poliba.it Il Web dei documenti Il Web dei documenti:

Dettagli

Prof. Massimo Ruffolo Ing. Maurizio Colica. Capitolo 4. RDF: Resource Description Framework. Introduzione Classi e Istanze Proprietà

Prof. Massimo Ruffolo Ing. Maurizio Colica. Capitolo 4. RDF: Resource Description Framework. Introduzione Classi e Istanze Proprietà Prof. Massimo Ruffolo Ing. Maurizio Colica Capitolo 4 RDF: Resource Description Framework Introduzione Classi e Istanze Proprietà 1 RDF: Resource Description Framework Introduzione RDF: Resource Description

Dettagli

3.1 Introduzione al Web Semantico

3.1 Introduzione al Web Semantico Informatica Applicata 3.1 Introduzione al Web Semantico Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE 3.1 Introduzione al Web Semantico*

Dettagli

Dati per il Web semantico

Dati per il Web semantico Politecnico di Bari t.dinoia@poliba.it Dati per il Web semantico Dublin Core Metadata Element Set Dublin Core: insieme di metadati sviluppati in seno alla Dublin Core Metadata Initiative Pensato per la

Dettagli

Corso di Basi di dati e Sistemi Informativi A. A Corso di Laurea in Ingegneria Informatica. RDF e RDF Schema. 20/06/2013 Giuseppe Loseto 1

Corso di Basi di dati e Sistemi Informativi A. A Corso di Laurea in Ingegneria Informatica. RDF e RDF Schema. 20/06/2013 Giuseppe Loseto 1 Corso di Laurea in Ingegneria Informatica Corso di Basi di dati e A. A. 2013-2014 20/06/2013 Giuseppe Loseto 1 Semantic Web [Berners-Lee et al., Scientific American, 2001] Il W3C (World Wide Web Consortium)

Dettagli

Linked Open Data Introduzione e nuovi punti di vista Silvia Mazzini Antonella Pagliarulo smazzini@regesta.com apagliarulo@regesta.

Linked Open Data Introduzione e nuovi punti di vista Silvia Mazzini Antonella Pagliarulo smazzini@regesta.com apagliarulo@regesta. Linked Open Data Introduzione e nuovi punti di vista Silvia Mazzini Antonella Pagliarulo smazzini@regesta.com apagliarulo@regesta.com Library Library Data Linked Data Library Linked Data W3C Incubator

Dettagli

2.5 Cenni sui namespace

2.5 Cenni sui namespace Fondamenti di Informatica Sistemi di Elaborazione delle Informazioni Informatica Applicata 2.5 Cenni sui namespace Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO

Dettagli

SPARQL Injection attacking the triple store

SPARQL Injection attacking the triple store SPARQL Injection attacking the triple store Simone Onofri Luca Napolitano -Italy Day2012 Rome, 23 November 2012 Copyright 2008 - The Foundation Permission is granted to copy, distribute and/or modify this

Dettagli

JSON for Linked Data JSON-LD

JSON for Linked Data JSON-LD JSON for Linked Data JSON-LD Giuseppe Santaniello Giuseppe Pietravalle Web Semantico A.A. 2015/2016 Linked Data Insiemi di dati interconnessi sul Web Esempio: DBpedia DBpedia contiene i dati di Wikipedia

Dettagli

ESERCITAZIONE SU RDF E SPARQL. Prof. Riccardo Torlone Università Roma Tre

ESERCITAZIONE SU RDF E SPARQL. Prof. Riccardo Torlone Università Roma Tre ESERCITAZIONE SU RDF E SPARQL Prof. Riccardo Torlone Università Roma Tre Esercizio n. 1 Descrivere in RDF le seguenti affermazioni: Il Dipartimento di Informatica e Automazione dell Università Roma Tre

Dettagli

Argomenti XML JSON. Linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati, non strutturati. XML Data Model JSON

Argomenti XML JSON. Linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati, non strutturati. XML Data Model JSON XML JSON Argomenti 2 Linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati, non strutturati XML Data Model JSON 3 XML XML extensible Markup Language 4 Modello di dati XML Nato

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

Ontologie e dati per il Web semantico

Ontologie e dati per il Web semantico Ontologie e dati per il Web semantico Dublin Core Metadata Element Set Dublin Core: insieme di metadati sviluppati in seno alla Dublin Core Metadata Initiative Pensato per la descrizione di risorse (inizialmente

Dettagli

Dati Semistrutturati: il linguaggio RDF Esempi ed esercitazioni

Dati Semistrutturati: il linguaggio RDF Esempi ed esercitazioni Sistemi di Elaborazione dell informazione II Corso di Laurea Specialistica in Ingegneria Telematica II anno 4 CFU Università Kore Enna A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu

Dettagli

Open data, servizi digitali e trasferimento di conoscenza

Open data, servizi digitali e trasferimento di conoscenza Open data, servizi digitali e trasferimento di conoscenza Tiziana Catarci Maurizio Lenzerini Dipartimento Dipartimento di di Ingegneria Ingegneria Informatica Informatica Automatica e Gestionale "Antonio

Dettagli

Linguaggi di Interrogazione per il Web Semantico SPARQL

Linguaggi di Interrogazione per il Web Semantico SPARQL Linguaggi di Interrogazione per il Web Semantico SPARQL Linguaggi di interrogazione per il Web Semantico RDF è una recommendation W3C sin dal 1998. Negli anni a seguire, vari

Dettagli

Comunicazione Digitale

Comunicazione Digitale Comunicazione Digitale Schema didattico di riferimento 1 1. Internet e le reti locali 1. Qual è la storia della rete Internet dagli albori ai giorni nostri 2. I tipi di rete, come si organizzano e agglomerano

Dettagli

Linked (Open) Data. Fabrizio Celli 04/06/2012

Linked (Open) Data. Fabrizio Celli 04/06/2012 Linked (Open) Data Fabrizio Celli 04/06/2012 OUTLINE Sviluppo del Web Relational Databases Triple e RDF SPARQL Linguaggi RDF Best Practices LOD Cloud OpenAgris (progetto FAO) 2 La Semantica La semantica

Dettagli

DatiOpen: il portale Linked Open Data dell Istat

DatiOpen: il portale Linked Open Data dell Istat DatiOpen: il portale Linked Open Data dell Istat Relatore: Raffaella M. Aracri Stefano De Francisci, Andrea Pagano, Monica Scannapieco, Laura Tosco, Luca Valentino 25 Maggio 2017 Indice INTRODUZIONE Strategie

Dettagli

Linked Open Data: pubblicazione, arricchimento semantico e linking di dataset pubblici attraverso il sistema MOMIS

Linked Open Data: pubblicazione, arricchimento semantico e linking di dataset pubblici attraverso il sistema MOMIS Università degli Studi di Modena e Reggio Emilia Ingegneria Enzo Ferrari Corso di Laurea Magistrale (D. M. 270/04) in Ingegneria Informatica Linked Open Data: pubblicazione, arricchimento semantico e linking

Dettagli

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi: SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i

Dettagli

Introduzione al Semantic Web

Introduzione al Semantic Web Corso di Laurea Specialistica in Ingegneria Informatica Corso di Linguaggi e Tecnologie Web A. A. 2011 - Introduzione al Semantic Web Eufemia TINELLI Dal Web al Semantic Web: Motivazioni Il Web dovrebbe

Dettagli

machine-readable machine analysis

machine-readable machine analysis RDF(S) Il Web è stato inventato (tra gli altri) da Tim Berners-Lee, un fisico che lavora al CERN La sua visione originale del Web era assai più ambiziosa di quella che è la realtà del Web (sintattico)

Dettagli

Vittorio Di Tomaso CELI Language & Information Technology

Vittorio Di Tomaso CELI Language & Information Technology Linked Open Data L esperienza piemontese Vittorio Di Tomaso CELI Language & Information Technology Quest' opera è distribuita con licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate

Dettagli

Rappresentazione della conoscenza

Rappresentazione della conoscenza Rappresentazione della conoscenza L O R E N Z O D I S I L V E S T R O w w w. d m i. u n i c t. i t / ~ d i s i l v e s t r o d i s i l v e s t r o @ d m i. u n i c t. i t Cos è? La rappresentazione della

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

Facoltà di Scienze MM. FF. NN.

Facoltà di Scienze MM. FF. NN. 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 0524459

Dettagli

Tecnologie semantiche per lo sviluppo di conoscenza e servizi Evento W3C LOD 2014

Tecnologie semantiche per lo sviluppo di conoscenza e servizi Evento W3C LOD 2014 Tecnologie semantiche per lo sviluppo di conoscenza e servizi Evento W3C LOD 2014 dagli inizi In seguito alla direttiva del Parlamento Europeo 2003/98/CE, nel Marzo 2012, INPS crea la Sezione Open Data

Dettagli

Descrizione delle operazioni di calcolo. Espressioni costanti semplici

Descrizione delle operazioni di calcolo. Espressioni costanti semplici Descrizione delle operazioni di calcolo Come abbiamo detto l interprete è in grado di generare nuovi valori a partire da valori precedentemente acquisiti o generati. Il linguaggio di programmazione permette

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

CulturaItalia e i Linked Open Data

CulturaItalia e i Linked Open Data CulturaItalia e i Linked Open Data Sara Di Giorgio Responsabile gruppo tecnico CulturaItalia Istituto centrale per il catalogo unico delle biblioteche italiane 16 March 2013 Event 1 Vi parlerò di: Definizione

Dettagli

Librerie digitali. Uso di XML per memorizzare i metadati. Descrizione generale. XML per memorizzare i metadati. Motivi dell uso di XML

Librerie digitali. Uso di XML per memorizzare i metadati. Descrizione generale. XML per memorizzare i metadati. Motivi dell uso di XML Librerie digitali Uso di XML per memorizzare i metadati Descrizione generale Ad ogni dato associo un file XML che descrive il contenuto del dato stesso Memorizzo su file system sia il dato sia il file

Dettagli

Esercizi proposti 10

Esercizi proposti 10 Esercizi proposti 10 In questo gruppo di esercizi assumiamo, dove non sia specificato diversamente, di rappresentare i grafi mediante liste di archi, con il tipo di dati così dichiarato: type a graph =

Dettagli

DataBase Management System - DBMS

DataBase Management System - DBMS DataBase Management System - DBMS Un sistema per la gestione di basi di dati o DBMS (Data Base Management System) è un sistema software in grado di gestire collezioni di dati che siano grandi condivise

Dettagli

Linguaggi, Traduttori e le Basi della Programmazione

Linguaggi, Traduttori e le Basi della Programmazione Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi

Dettagli

Librerie digitali. Cos è una libreria digitale? Introduzione. Cos è una libreria digitale? Cos è una libreria digitale? Cos è una libreria digitale?

Librerie digitali. Cos è una libreria digitale? Introduzione. Cos è una libreria digitale? Cos è una libreria digitale? Cos è una libreria digitale? Librerie digitali Introduzione William Arms "An informal definition of a digital library is a managed collection of information, with associated services, where the information is stored in digital formats

Dettagli

Linguaggi per il Web: XML

Linguaggi per il Web: XML Linguaggi per il Web: XML Piero Fraternali Sara Comai Politecnico di Milano XML http://w3c.org/xml/ -- http://www.microsoft.com/xml/ extended Markup Language Formato di file proposto dal W3C per distribuire

Dettagli

Caratteristiche dei linguaggi per Database

Caratteristiche dei linguaggi per Database IL LINGUAGGIO Caratteristiche dei linguaggi per Database I linguaggi per basi di dati relazionali possiedono i comandi per: definizione del data base; manipolazione dei dati; associazione tra tabelle diverse;

Dettagli

Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS

Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS INFORMATICA GENERALE DBMS: Introduzione alla gestione dei dati Bibliografia 4 ott 2011 Dia 2 Curtin, Foley, Sen, Morin Vecchie edizioni: 8.4, 8.5, 8.6, 8.7, 8.8 Edizione dalla IV in poi: 6.5, 21.1, 19.4,

Dettagli

CAPITOLO V. DATABASE: Il modello relazionale

CAPITOLO V. DATABASE: Il modello relazionale CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono

Dettagli

RDF. Resource Description Framework

RDF. Resource Description Framework RDF Resource Description Framework turbati@info.uniroma2.it Caratteristiche Independenza Condivisibilità Scalabilità Ogni cosa è una risorsa Le proprietà sono risorse I valori possono essere risorse Le

Dettagli

I servizi del SITR-IDT

I servizi del SITR-IDT I servizi del SITR-IDT Sistema Informativo Territoriale Regionale (SITR-IDT) Titolo Creatore I servizi del SITR-IDT SITR Data 05/02/10 Soggetto Tipo Editore Descrizione Autori Formato Riferimento Diritti

Dettagli

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ TRADUZIONE DI STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ a cura di: Eleonora Antonelli Simone Maletta Stefano Novara INDICE 1. Grammatica di TLA+ a cura di Eleonora Antonelli

Dettagli

POLITECNICO DI MILANO

POLITECNICO DI MILANO POLITECNICO DI MILANO Facoltà di Ingegneria dell'informazione Corso di Laurea di Ingegneria Informatica SISTEMA DI TEMPLATE PER VISUALIZZARE RISORSE IN UN WIKI SEMANTICO Relatore: Prof. Marco Colombetti

Dettagli

L XML è un linguaggio di markup aperto e basato su testo che fornisce informazioni di tipo strutturale e semantico relative ai dati veri e propri.

L XML è un linguaggio di markup aperto e basato su testo che fornisce informazioni di tipo strutturale e semantico relative ai dati veri e propri. L XML è un linguaggio di markup aperto e basato su testo che fornisce informazioni di tipo strutturale e semantico relative ai dati veri e propri. L XML è stato ottimizzato per il Web, diventando potente

Dettagli

"Tecniche di Trust Management per la gestione di Metadati: Un tool di simulazione dell'evoluzione del trust all'interno di una comunità di utenti"

Tecniche di Trust Management per la gestione di Metadati: Un tool di simulazione dell'evoluzione del trust all'interno di una comunità di utenti UNIVERSITÀ DEGLI STUDI DI MILANO Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Tecnologie dell Informazione Corso di Laurea in Informatica "Tecniche di Trust Management per la gestione

Dettagli

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Web semantico: Il recupero dell informazione affidato alla macchina

Web semantico: Il recupero dell informazione affidato alla macchina Web semantico: Il recupero dell informazione affidato alla macchina Università degli Studi di Siena Corso di Laurea in Scienze della Comunicazione Anno Accademico 2002-2003 Corso di Linguistica Computazionale

Dettagli

Programmi e Oggetti Software

Programmi e Oggetti Software Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 06 Programmi e Oggetti Software Marzo 2010 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il

Dettagli

DTD ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Document Type Definition (DTD) Un DTD è il linguaggio usato per descrive la

DTD ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Document Type Definition (DTD) Un DTD è il linguaggio usato per descrive la DTD ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Document Type Definition (DTD) Un DTD è il linguaggio usato per descrive la struttura di un documento XML disponibile prima che fosse introdotto XMLSchema

Dettagli

UML I diagrammi implementativi

UML I diagrammi implementativi Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - UML I diagrammi implementativi E. TINELLI I diagrammi implementativi In UML 2.x esistono 3 tipi di

Dettagli

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è

Dettagli

Gestione della Conoscenza

Gestione della Conoscenza Gestione della Conoscenza Corso di Laurea Specialistica in Informatica Massimo Ruffolo E-mail: ruffolo@icar.cnr.it Web: http://www.icar.cnr.it/ruffolo Istituto di CAlcolo e Reti ad alte prestazioni del

Dettagli

Breve Introduzione a XML

Breve Introduzione a XML Origini! XML (extensible Markup Language) deriva da SGML (Standard Generalized Markup Language).! Sia con XML che con SGML è possibile definire linguaggi di markup specifici per vari domini, come la finanza

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Basi di Dati e Sistemi Informativi su Web

Basi di Dati e Sistemi Informativi su Web Basi di Dati e Sistemi Informativi su Web Corso di Laurea Specialistica in Ingegneria Informatica Massimo Ruffolo E-mail: ruffolo@icar.cnr.it Web: http://www.icar.cnr.it/ruffolo Istituto di CAlcolo e Reti

Dettagli

Descrizione Formale Esplicita Dominio

Descrizione Formale Esplicita Dominio Ontologia Abbiamo visto che tassonomie e tesauri fissano una semantica. Per arricchire la semantica si deve passare a modelli concettuali e teorie logiche. Un modello concettuale è il modello di una particolare

Dettagli

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Informatica della Facoltà di Lingue e Letterature dell Università degli Studi di Torino. Qualsiasi altro Query (Interrogazioni) SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il

Dettagli

AUTOMA A STATI FINITI

AUTOMA A STATI FINITI Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate

Dettagli

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy

Dettagli

Co o Fo z on - Mo ulo A nz o f l g l. Gl n l w b of. Giovanni Bruno 9. - 6. A hivi i S a i i an Via S na, - i an

Co o Fo z on - Mo ulo A nz o f l g l. Gl n l w b of. Giovanni Bruno 9. - 6. A hivi i S a i i an Via S na, - i an 9. - 6. A hivi i S a i i an Via S na, - i an Co o Fo z on - Mo ulo A nz o f l g l 11 Gl n l w b of Giovanni Bruno Gli archivi nel Web of Data Giovanni Bruno [gbruno@regesta.com] A N A I A S S O C I A Z

Dettagli

XPATH e XQUERY. Linguaggi di query XML. Esempio di DTD. Esempio di documento. XPATH e un linguaggio per descrivere percorsi (path) in documenti XML.

XPATH e XQUERY. Linguaggi di query XML. Esempio di DTD. Esempio di documento. XPATH e un linguaggio per descrivere percorsi (path) in documenti XML. XPATH e XQUERY Linguaggi di query XML XPATH XQUERY Leggere capitolo 6 Atzeni et al. XPATH e un linguaggio per descrivere percorsi (path) in documenti XML. Percorsi attraverso il grafo di dati semistrutturati.

Dettagli

Corso di elettrotecnica Materiale didattico: i grafi

Corso di elettrotecnica Materiale didattico: i grafi Corso di elettrotecnica Materiale didattico: i grafi A. Laudani 12 ottobre 2005 I grafi costituiscono uno strumento matematico che permette di descrivere e schematizzare una grande varietà di problemi

Dettagli

Esperienze di linked data e web semantico in BNCF

Esperienze di linked data e web semantico in BNCF Esperienze di linked data e web semantico in BNCF Anna Lucarelli anna.lucarelli@beniculturali.it 6' Incontro ISKO Italia Firenze 20 maggio 2013 Biblioteca nazionale centrale Firenze Da Tim Berners Lee

Dettagli

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono

Dettagli

Basi di Dati e Sistemi Informativi su Web

Basi di Dati e Sistemi Informativi su Web Basi di Dati e Sistemi Informativi su Web Corso di Laurea Specialistica in Ingegneria Informatica Massimo Ruffolo E-mail: ruffolo@icar.cnr.it Web: http://www.icar.cnr.it/ruffolo Istituto di CAlcolo e Reti

Dettagli

PROBLEMI ALGORITMI E PROGRAMMAZIONE

PROBLEMI ALGORITMI E PROGRAMMAZIONE PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL

Dettagli

CORSO I.F.T.S. "TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE DISPENSE DIDATTICHE. MODULO di DATABASE SEMANTICI Ing.

CORSO I.F.T.S. TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE DISPENSE DIDATTICHE. MODULO di DATABASE SEMANTICI Ing. CORSO I.F.T.S. "TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE Matricola 2014LA0033 DISPENSE DIDATTICHE MODULO di DATABASE SEMANTICI Ing. Simone Menabeni Lezione del 08/10/2014 1 SPARQL Simone

Dettagli

Linked Open Data e Web semantico

Linked Open Data e Web semantico 7 Linked Open Data e Web semantico Contenuti della lezione. Cosa sono i linked open data (LOD). Linked data e Web semantico. Il modello RDF 3. Vocabolari e ontologie. 4. Annotare siti web professionale.

Dettagli

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm

Dettagli

Outline. Gestione dei dati e dei contenuti. Dati in rete. Dati in rete

Outline. Gestione dei dati e dei contenuti. Dati in rete. Dati in rete Outline Gestione dei dati e dei contenuti Flavio De Paoli depaoli@disco.unimib.it Il problema della gestione dei dati in rete Dati strutturati e non strutturati: posta elettronica, testi, news Descrizione

Dettagli

Programmi e Oggetti Software

Programmi e Oggetti Software Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 2 Programmi e Oggetti Software Alfonso Miola Settembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Programmi e Oggetti Software

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 6 Raffaella Gentilini 1 / 40 Sommario 1 Viste 2 3 2 / 40 Viste Viste le viste sono tabelle virtuali corrispondono al risultato di una query (SELECT) valutata

Dettagli

Basi di dati attive. Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger).

Basi di dati attive. Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger). Basi di dati attive Una base di dati è ATTIVA quando consente la definizione e la gestione di regole di produzione (regole attive o trigger). Tali regole vengono attivate in modo automatico al verificarsi

Dettagli

I dati geografici come perno della conoscenza su un territorio Antonella Poggi

I dati geografici come perno della conoscenza su un territorio Antonella Poggi I dati geografici come perno della conoscenza su un territorio Antonella Poggi Ricerca finanziata dalla Regione Lazio (progetto Magister) I dati geografici Un dato geografico è un dato strutturato, costituito

Dettagli

Metadati descrittivi: Dublin Core

Metadati descrittivi: Dublin Core ALLEGATO I Metadati descrittivi: Dublin Core In questo allegato sono riportate le informazioni relative ai metadati descrittivi Dublin Core. Prima di iniziare la produzione dei metadati, la ditta aggiudicataria

Dettagli

Ontologie e rappresentazione della conoscenza

Ontologie e rappresentazione della conoscenza Ontologie e rappresentazione della conoscenza Overview Come nascono le ontologie Motivazioni per il loro uso Definizioni di ontologie Ontologie e concettualizzazioni Tipi di ontologie Proprietà delle ontologie

Dettagli

Link in XML WWW. Fabio Vitali

Link in XML WWW. Fabio Vitali Link in XML Introduzione Qui esaminiamo: u XLink 2 XLink Gli XLink sono elementi di un documento XML che hanno significato e comportamento di link ipertestuale. Un elemento XML è identificato come un XLink

Dettagli

Tutorial: come ti faccio una app sugli opendata

Tutorial: come ti faccio una app sugli opendata Tutorial: come ti faccio una app sugli opendata FODD Firenze Open Data Day, 21 Febbraio Prof. Paolo Nesi, Marco Serena, Ivan Bruno DISIT Lab Lab Distributed Data Intelligence and Technologies Lab Dipartimento

Dettagli

Antonella De Robbio Università degli Studi di Padova. I metadati: seminario nazionale Roma, ICCU, 3 aprile 2001

Antonella De Robbio Università degli Studi di Padova. I metadati: seminario nazionale Roma, ICCU, 3 aprile 2001 Antonella De Robbio Università degli Studi di Padova I metadati: seminario nazionale Roma, ICCU, 3 aprile 2001 CONSIDERAZIONI EMERSE dopo il WORKSHOP ON The Open Archives initiative (OAI) and Peer Review

Dettagli

Introduzione alla Programmazione Logica ed al linguaggio PROLOG

Introduzione alla Programmazione Logica ed al linguaggio PROLOG Introduzione alla Programmazione Logica ed al linguaggio PROLOG Esercitazioni per il corso di Logica ed Intelligenza Artificiale a.a. 2014/15 Paolo Tomeo http://sisinflab.poliba.it/tomeo Programmazione

Dettagli

LabVIEW (Laboratory Virtual Instrument Engineering Workbench)

LabVIEW (Laboratory Virtual Instrument Engineering Workbench) LabVIEW (Laboratory Virtual Instrument Engineering Workbench) Linguaggio di programmazione sviluppato da National Instruments Nato per Mac (1986), per Windows dal 1992, per Linux dal 1999 Adatto per realizzare

Dettagli

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Lez. 5 La Programmazione. Prof. Salvatore CUOMO Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente

Dettagli

Array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 11. A. Miola Dicembre 2007

Array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 11. A. Miola Dicembre 2007 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 11 Array A. Miola Dicembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Array 1 Contenuti Il problema degli studenti da promuovere

Dettagli

WWW = URL + HTTP + HTML

WWW = URL + HTTP + HTML Tecnologie Web URI e URL 1 Questioni di fondo WWW = URL + HTTP + HTML Il primo termine della formula del web fa riferimento tre questioni principali: Come identifichiamo il server in grado di fornirci

Dettagli

BASI DATI: algebra relazionale

BASI DATI: algebra relazionale BASI DATI: algebra relazionale BIOINGEGNERIA ED INFORMATICA MEDICA 1 Algebra relazionale Definizione L'algebra relazionale è un insieme di operazioni (query) che servono per manipolare relazioni (tabelle).

Dettagli

Linee guida per la valorizzazione del patrimonio informativo pubblico Giorgia Lodi

Linee guida per la valorizzazione del patrimonio informativo pubblico Giorgia Lodi Linee guida per la valorizzazione del patrimonio informativo pubblico Giorgia Lodi Smart City Exhibition 2013 Dall informazione pubblica alla crescita economica: gli open data come veicolo di sviluppo

Dettagli

Informatica per le Scienze Umane. Introduzione al corso: programma

Informatica per le Scienze Umane. Introduzione al corso: programma Informatica per le Scienze Umane Introduzione al corso: programma 1 Obiettivi del corso Fornire le conoscenze e le competenze necessarie alla rappresentazione e al trattamento consapevole delle informazioni

Dettagli

La traduzione dei dati nel linguaggio del web semantico TRADUZIONE. Tom Baker

La traduzione dei dati nel linguaggio del web semantico TRADUZIONE. Tom Baker La traduzione dei dati nel linguaggio del web semantico Tom Baker I linked data sono dati esposti sul web in modo tale da poter essere collegati ad altri dati a dati provenienti da fonti eterogenee per

Dettagli

Informazione e sua rappresentazione: codifica

Informazione e sua rappresentazione: codifica Corso di Calcolatori Elettronici I A.A. 2011-2012 Informazione e sua rappresentazione: codifica Lezione 2 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso

Dettagli

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Vincoli di integrita 2 Cosa e un vincolo di integrita E una proprieta sempre valida

Dettagli

Il modello Entità/Relazioni (ER)

Il modello Entità/Relazioni (ER) Il modello Entità/Relazioni (ER) Basi di dati 1 Il modello Entità/Relazioni (ER) Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il modello Entità/Relazioni (ER) Basi di dati

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia Informatica Dipartimento di Economia Ing. Cristiano Gregnanin Corso di laurea in Economia 20 ottobre 2016 1 / 22 Introduzione ai database Prima dei DBMS, le organizzazioni utilizzavano semplici file per

Dettagli