Il World Wide Web program. Linguaggi e tecnologie per il Semantic Web. Armando Stellato. Tecnologie attualmente disponibili per il Web

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Il World Wide Web program. Linguaggi e tecnologie per il Semantic Web. Armando Stellato. Tecnologie attualmente disponibili per il Web"

Transcript

1 Il World Wide Web program Linguaggi e tecnologie per il Semantic Web stellato@info.uniroma2.it Nascita e obiettivi Sviluppato nel 1990 da Tim Berners-Lee, nei laboratori del CERN Due innovazioni fondamentali: Porre il concetto di ipertesto come base per l organizzazione di un sistema documentale distribuito Applicare tale meccanismo sul larga scala, escludendo ogni sorta di centralizzazione/coordinazione dell informazione Il WWW program trovò un suo naturale terreno di sviluppo in Internet Manifesto del WWW: distributed hypermedia paradigm Hypertext Distribution Multimedia stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 2 Tecnologie attualmente disponibili per il Web WWW: 3 tecnologie fondazionali: URI (Uniform Resource Identifier) Identificano risorse sul WEB Gli ormai noti URL (Uniform Resource Locator) sono un tipo specifico di URI che forniscono informazioni di tipo locazionale per trovare le risorse sul Web HTTP Protocollo statico per lo scambio di documenti sul Web Può essere (ed è stato) esteso al fine di adattarlo a diversi fini (name servers, distributed object management systems...) HTML Rappresentazione dei dati sul Web Basato su SGML, un linguaggio basato su tag per la strutturazione di informazione Tecnologie attualmente disponibili per il Web Localizzazione del testo Encoding: charset locali; charset globali: Unicode e sue implementazioni (UTF-8, UTF-16 ) Tecnologie per la gestione di informazione XML: extensible Markup Language una sintassi per la strutturazione di dati sul web DTD (Document Type Definition) e XML Schema: due linguaggi per la specifica di linguaggi per la rappresentazione di informazione basati su XML. XSL: Xml Stylesheet Language (Family) XSLT (XSL Transformations): un linguaggio per la manipolazione di strutture XML. XPath: per accedere a sezioni di un documento XML XSL-FO un vocabolario per esprimere la formattazione di un documento Tecnologie per un Web Dinamico: Web Services UDDI: identificano servizi sul Web WSDL: descrive il comportamento di Servizi Web SOAP: protocollo di interazione con Servizi Web stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 3 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 4

2 XML (cenni) Approccio XML: wrappare tutte le informazioni in una struttura a TAG Necessità di rappresentare e strutturare dati sul Web in documenti che siano accessibili e interscambiabili da diverse applicazioni Es. Collezione di informazioni su un aereoplano: medium-altitude, long-endurance unmanned aerial vehicle 512 kilograms 14.7 meters 70 knots 400 nautical miles <Aircraft> <wingspan unit= meters >14.8</wingspan> <weight unit= kilograms >512</weight> <cruise-speed unit = knots >70</cruise-speed> <range unit= nautical miles >400</range> <description> medium-altitude, long-endurance unmanned aerial vehicle </description> </Aircraft> stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 5 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 6 Terminologia XML Perchè XML? <wingspan unit= meters >14.8</wingspan> Start tag Attributo End tag Valore attributo Dato Elemento È uno standard universalmente accettato per la strutturazione dei dati È una W3C recommendation (W3C = World Wide Web Consortium) È disponibile sia sul mercato sia gratuitamente un ampia gamma di prodotti per il trattamento di dati organizzati secondo la sintassi XML e/o per l editing di documenti XML Esistono librerie per quasi ogni linguaggio di programmazione che permettono la gestione di informazione codificata in XML stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 7 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 8

3 XML Schema e DTD: Obiettivi Specificare: la struttura dei documenti l elemento A è sempre contenuto nell elemento B, è seguito dall elemento C etc " il tipo di dato di ogni elemento/attributo questo elemento conterrà un numero intero tra 0 e 12000" (le DTD hanno un potere espressivo minore rispetto agli schemi e non possono esprimere tutti i vincoli sui tipi di dato che è possibile specificare in XML Schema) Esempio <location> <latitude> </latitude> <longitude> </longitude> <uncertainty units="meters">2</uncertainty> </location> Questi dati sono stati espresso in modo corretto? (documento valido) Per essere valido, il documento deve soddisfare questi vincoli: 1. La locazione (location) deve contenere una latitudine, seguita da una longitudine, seguita da una indicazione di incertezza sulla misurazione lat/lon. 2. La latitudine deve essere espressa da un decimale tra -90 e La longitudine deve essere espressa da un decimale tra -180 e Le presione decimale sia della latidutine che della longitudine deve essere si sei cifre 5. Il valore di incertezza deve essere un interno non negativo 6. L unità di misura per l incertezza della misurazione deve essere o in metri o in piedi Possiamo esprimere tutte queste informazioni attraverso DTD/Schemi XML stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 9 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 10 Validazione dei dati Esempio di DTD: BookStore.dtd <location> <latitude> </latitude> <longitude> </longitude> <uncertainty units="meters">2</uncertainty> </location> controlla che la latitudine sia tra -90 and +90 controlla che la longitudine sia tra -180 e +180 Controlla che parte decimale sia per lat che per lol contenga 6 cifre... XML Document validator Il doc è valido! <!ELEMENT BookStore (Book+)> <!ELEMENT Book (Title, Author, Date, ISBN, Publisher)> <!ELEMENT Title (#PCDATA)> <!ELEMENT Author (#PCDATA)> <!ELEMENT Date (#PCDATA)> <!ELEMENT ISBN (#PCDATA)> <!ELEMENT Publisher (#PCDATA)> XML Schema stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 11 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 12

4 Esempio di documento basato sulla DTD BookStore.dtd <?xml version="1.0" encoding="utf-8"?> <BookStore > <Book> <Title>Illusions: The Adventures of a Reluctant Messiah</Title> <Author>Richard Bach</Author> <Date>1977</Date> <ISBN> </ISBN> <Publisher>Dell Publishing Co.</Publisher> </Book> <Magazine> <Title>Natural Health</Title> <Date>1999</Date> </Magazine> <Book> <Title>The First and Last Freedom</Title> <Author>J. Krishnamurti</Author> <Date>1954</Date> <ISBN> </ISBN> <Publisher>Harper & Row</Publisher> </Book> </BookStore> stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 13 XML Schema per lo stesso documento: BookStore.xsd <?xml version="1.0"?> <xsd:schema xmlns:xsd=" targetnamespace=" xmlns=" elementformdefault="qualified"> <xsd:element name="bookstore"> <xsd:element ref="book" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="book"> <xsd:element ref="title" minoccurs="1" maxoccurs="1"/> <xsd:element ref="author" minoccurs="1" maxoccurs="1"/> <xsd:element ref="date" minoccurs="1" maxoccurs="1"/> <xsd:element ref="isbn" minoccurs="1" maxoccurs="1"/> <xsd:element ref="publisher" minoccurs="1" maxoccurs="1"/> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="isbn" type="xsd:string"/> <xsd:element name="publisher" type="xsd:string"/> </xsd:schema> 14 XML Schema per lo stesso documento: BookStore.xsd XML Schema per lo stesso documento: BookStore.xsd <?xml version="1.0"?> <xsd:schema xmlns:xsd=" targetnamespace=" xmlns=" elementformdefault="qualified"> <xsd:element name="bookstore"> <xsd:element ref="book" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="book"> <xsd:element ref="title" minoccurs="1" maxoccurs="1"/> <xsd:element ref="author" minoccurs="1" maxoccurs="1"/> <xsd:element ref="date" minoccurs="1" maxoccurs="1"/> <xsd:element ref="isbn" minoccurs="1" maxoccurs="1"/> <xsd:element ref="publisher" minoccurs="1" maxoccurs="1"/> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="isbn" type="xsd:string"/> <xsd:element name="publisher" type="xsd:string"/> </xsd:schema> <!ELEMENT BookStore (Book+)> <!ELEMENT Book (Title, Author, Date, ISBN, Publisher)> <!ELEMENT Title (#PCDATA)> <!ELEMENT Author (#PCDATA)> <!ELEMENT Date (#PCDATA)> <!ELEMENT ISBN (#PCDATA)> <!ELEMENT Publisher (#PCDATA)> 15 <?xml version="1.0"?> <xsd:schema xmlns:xsd=" targetnamespace=" xmlns=" elementformdefault="qualified"> <xsd:element name="bookstore"> <xsd:element ref="book" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="book"> <xsd:element ref="title" minoccurs="1" maxoccurs="1"/> <xsd:element ref="author" minoccurs="1" maxoccurs="1"/> <xsd:element ref="date" minoccurs="1" maxoccurs="1"/> <xsd:element ref="isbn" minoccurs="1" maxoccurs="1"/> <xsd:element ref="publisher" minoccurs="1" maxoccurs="1"/> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="isbn" type="xsd:string"/> <xsd:element name="publisher" type="xsd:string"/> </xsd:schema> xsd:schema è sempre l elemento radice 16

5 XML Schema per lo stesso documento: BookStore.xsd <?xml version="1.0"?> <xsd:schema xmlns:xsd=" targetnamespace=" xmlns=" elementformdefault="qualified"> <xsd:element name="bookstore"> <xsd:element ref="book" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="book"> <xsd:element ref="title" minoccurs="1" maxoccurs="1"/> <xsd:element ref="author" minoccurs="1" maxoccurs="1"/> <xsd:element ref="date" minoccurs="1" maxoccurs="1"/> <xsd:element ref="isbn" minoccurs="1" maxoccurs="1"/> <xsd:element ref="publisher" minoccurs="1" maxoccurs="1"/> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="isbn" type="xsd:string"/> <xsd:element name="publisher" type="xsd:string"/> </xsd:schema> XML Schema per lo stesso documento: BookStore.xsd <?xml version="1.0"?> <xsd:schema xmlns:xsd=" targetnamespace=" xmlns=" elementformdefault="qualified"> <xsd:element name="bookstore"> <xsd:element ref="book" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="book"> <xsd:element ref="title" minoccurs="1" maxoccurs="1"/> <xsd:element ref="author" minoccurs="1" maxoccurs="1"/> <xsd:element ref="date" minoccurs="1" maxoccurs="1"/> <xsd:element ref="isbn" minoccurs="1" maxoccurs="1"/> <xsd:element ref="publisher" minoccurs="1" maxoccurs="1"/> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="date" type="xsd:string"/> <xsd:element name="isbn" type="xsd:string"/> <xsd:element name="publisher" type="xsd:string"/> </xsd:schema> Gli elementi e i tipi di dato usati per costruire lo schema: - schema -element - complextype - sequence - string provengono dal namespace: /XMLSchema Indica che gli elementi definit da questo schema: - BookStore -Book - Title -Author -Date -ISBN -Publisher devono essere assegnati al namespace: /books.org XML Schema Namespace element schema complextype sequence string integer boolean stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 18 Book Namespace (target Namespace) (targetnamespace) BookStore Author Book Title Publisher ISBN Date stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 20

6 Far riferimento ad uno schema XML da una istanza di documento Limiti di XML <?xml version="1.0"?> 1 <BookStore xmlns =" 3 xmlns:xsi=" xsi:schemalocation=" BookStore.xsd"> <Book> <Title>My Life and Times</Title> <Author>Paul McCartney</Author> <Date>July, 1998</Date> <ISBN> </ISBN> <Publisher>McMillin Publishing</Publisher> </Book>... </BookStore> 1. Attraverso una dichiarazione di namespace, si afferma che tutti gli elementi provenienti da questo documento sono definiti in 2. schemalocation informa lo schema-validator che il namespace è definito fisicamente in BookStore.xsd (i.e., schemalocation contiene una coppia di valori). 3. Informare lo schema-validator che l attributo schemalocation che stiamo usando è quello definito nello XMLSchema-instance namespace. 2 Sintassi VS Semantica Sintassi: specifica la modalità con cui vengono espressi i dati E.g. XML impone delle rigide regole su come l informazione debba essere strutturata "wrapping" di ogni dato tra uno start tag e un end tag ogni end tag deve essere preceduto da uno / ed entrambi i tag dalle parentesi angolari < >. ogni end tag deve chiudere strutturalmente uno start tag di pari livello Semantica: riguarda il significato dei dati ma cosa significa significato per una macchina? stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 21 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 22 Cosa significa significato? Predator quale significato? Facciamo un esempio: cosa vuole dire questa coppia di tag, espressa in XML? ovvero Cos è un Predator? <Predator> </Predator> Innanzitutto, occorrerebbe sapere per un umano cosa significa predator: La lettura di un vocabolario ci fornisce le seguenti definizioni: Predator: a medium-altitude, long-endurance unmanned aerial vehicle system. Predator: one that victimizes, plunders, or destroys, especially for one's own gain. Predator: an organism that lives by preying on other organisms. Predator: a company which specializes in camouflage attire. Predator: a video game. Predator: software for machine networking. Predator: a chain of paintball stores. stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 23 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 24

7 Il significato per una macchina Il significato per una macchina Una macchina non ha coscienza di ciò che la circonda, nel nostro caso, predator potrebbe voler assumere il primo dei significati espressi nella slide precedente, ma non avremmo comunque modo di spiegarlo ad una macchina! Per una applicazione (agente) è tuttavia sufficiente che a quel tag siano associate univocamente delle azioni da intraprendere a seconda del contesto e dello stato in cui si trova. <Predator> </Predator> application Semantics: A Predator is type of Aircraft. Actions: These actions must be performed on the Predator data: - identify ground control station. - determine onboard sensors. - determine ordnance. Per una applicazione, la semantica di un dato è quindi il codice necessario a interpretare un determinarlo e a capire come trattare la sua informazione (o come reagire alla sua presenza) app#1 Semantica: Codice per interpretare il dato Azione: Codice per processare il dato app#1 Semantica: Codice per interpretare il dato Azione: Codice per processare il dato stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 25 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 26 Conviene mantenere la semantica cablata nelle applicazioni? Semantiche Distribuite nel Web application Semantics: Code to interpret the data Action: Code to process the data Un contesto distribuito come quello del Web richiede quindi che non solo il dato sia reso indipendente dall applicazione, ma che il suo significato sia altrettanto reso esplicito e quindi condivisibile Conviene codificare i processi interpretativi in ogni singola applicazione? - Duplicazione dell effort - Ogni applicazione deve esprimere la propria interpretazione dei dati - Ambiguità - Applicazioni diverse potrebbero catturare diverse interpretazioni - esempio: la caduta della sonda su Marte una applicazione ha interpretato i dati in pollici, un altra in centimetri - Bassa Interoperabilità - Se la semantica è già codificata nelle applicazioni risulta più difficile processare e nuovi dati e/o aggiornare se necessario delle applicazioni al trattamento di nuovi dati. 1. Miglioramento della qualità dei risultati dei motori di ricerca, in termini di precisione rispetto alle intenzioni dell utente a di completezza rispetto alla disponibilità di informazioni sul Web 2. Realizzazione di web locali di documenti logicamente connessi, più facilmente navigabili e raggiungibili 3. Più immediato scambio e condivisione di informazione da parte di agenti software, i quali possono così collaborare in un ambiente più aperto al fine di soddisfare le richieste degli utenti Come??? stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 27 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 28

8 Semantic Web Semantic Web Recupera in parte la visione originale del Web fornita da Tim Berners-Lee a plan for achieving a set of connected applications for data on the Web in such a way as to form a consistent logical web of data an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 29 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 30 Semantic Web: obiettivi Query complesse che richiedono conoscenza pregressa Trova informazioni sugli animali che usano ultrasuoni ma non sono ne pipistrelli ne delfini Accesso a informazione memorizzata in repository di dati Informazioni su voli, prenotazioni alberghiere etc Prezzi di prodotti e servizi Codifica di grandi quantità di dati: genoma umano etc Discovery e utilizzo di servizi web Visualizza l andamento di un esperimento in tempo reale Delegare task complessi a agenti software Prenotami una vacanza per la prossima settimana in qualche posto caldo, non troppo lontano e dove si parla Italiano o Inglese RDF Resource Description Framework stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 31

9 Caratteristiche RDF Data Model Independenza Condivisibilità Scalabilità Ogni cosa è una risorsa Le proprietà sono risorse I valori possono essere risorse Le asserzioni possono essere risorse Un modello è un insieme di asserzioni (statements, in inglese) Asserzione: = (soggetto, predicato, oggetto) Il predicato è una proprietà del soggetto Il soggetto è una risorsa L oggetto è una valore (o una risorsa a sua volta) stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 33 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 34 RDF Data Model RDF: potere espressivo RDF può essere visto come un grafo diretto etichettato, in cui ogni asserzione assume la seguente forma: predicate subject object Sia i nodi/entità che gli archi/proprietà sono identificate da degli URI Il significato di un grafo RDF è la congiunzione di tutte le sue asserzioni RDF corrisponde al sottoinsieme esistenziale-congiuntivo (EC) della logica del primo ordine Non ammette la negazione (NOT) Non ammette la disgiunzione (OR) Cosa inusuale per un linguaggio che rappresenti una restrizione della logica del primo ordine, RDF permette asserzioni riguardanti relazioni: es: type(loves, social_relationship) loves(tom, Mary) stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 35 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 36

10 RDF: notazione RDF/XML : Un piccolo esempio Esistono diverse sintassi per rappresentare dei grafi RDF: N-Triples La notazione più prossima alla forma astratta, una serie di triple del tipo soggetto-predicato-oggetto, identificate da URI index.html creator Notation 3 (N3) Contiene numerose abbreviazioni sintattiche che agevolano la lettura mascherando la rigorosa struttura a triple che contraddistingue ogni documento RDF. Questa caratteristica unita a forme sintattiche elementari molto semplici (diverse dal pesante XML) ne fa il tipo di serializzazione più compatta tra quelli esistenti. Come XML, fa utilizzo dei namespace per aumentare la modularità. RDF/XML È un tipo di notazione completamente XML compliant. Come per N3, la struttura a triple può essere mascherata attraverso costrutti sintattici più complessi. <rdf:rdf xmlns:rdf = xmlns:dc = > <rdf:description rdf:about = > <dc:creator></dc:creator> </rdf:rdf> stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 37 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 38 RDF : Un esempio più complesso RDF : Un esempio più complesso Robin employedby Batman E la relativa serializzazione RDF/XML <rdf:rdf xmlns:rdf = xmlns:myschema = > HQ <rdf:description rdf:about = > <myschema:employedby rdf:resource = #Batman /> Batcaverna Name boss@batman.org <rdf:description id = Batman > <myschema:hq>batcave</myschema:hq> <myschema:name>bruce Wayne</mySchema:Name> <myschema: rdf:resource = mailto:boss@batman.org /> </rdf:rdf> Bruce Wayne stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 39 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 40

11 RDF: variabili Relazioni n-arien Gli statement RDF possono anche contenere variabili: love(?x, Mary) ci informa che qualcuno ama Mary, o, ancora meglio, qualcosa ama Mary La sola presenza di sole relazioni binarie esplicite non impedisce la rappresentazione di relazioni di arità arbitraria. Es: bollea(water,100c,1atm) ebollizione La combinazione di diverse asserzioni, tramite unificazione delle variabili, ci permette di esprimere conoscenza complessa, ma non completamente istanziata: bollea temp Press 1 atm gender(?x, male) AND loves(?x, Mary) water ci informa che Mary è amata da un maschio 100 C stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 41 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 42 XML vs RDF XML vs RDF (2) I detrattori di RDF hanno spesso sostenuto la sua inutilità rispetto a quanto già fornito da XML e XML Schema Esempio: unione di due frammenti RDF RDF is seen by some as an overly complex technology, trying to solve a problem XML and HTTP already solve (Van Dijck, 2003) RDF aggiunge però, pur attraverso un modello estremamente semplice, una semantica condivisa per interpretare i dati Human hemoglobin Human hemoglobin has_sequence GenBank + is_a aagccgcacctgcgagtctaga gctatagccgcacctgcgagtct agaagctatagccgcacctgcgagtct agaagct Oxygen transport protein has_sequence Human hemoglobin is_a aagccgcacctgcgagtctaga gctatagccgcacctgcgagtct agaagctatagccgcacctgcgagtct agaagct Oxygen Human transport hemoglobin protein Vantaggi: Minore ambiguità sintattica (e.g. attributo o elemento annidato?): una volta definito un grafo RDF, la sua serializzazione XML è univoca La presenza di semantica esplicita implica un più immediato processo di integrazione di diverse risorse Human hemoglobin Gene Ontology + Has 3D Structure PDB Has 3D Structure stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 43 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 44

12 XML vs RDF (3) RDFS: RDF Schema Esempio: unione di due frammenti XML <sequence id= abc123 >atagccgtacctgcgagtct </sequence> Generic Sequence XML <is-a><object>human-hemoglobin</object><type>oxygen-transferprotein</type></is-a> Generic Gene Ontology XML <structure><protein name= hh434 /><atom x= -30 y= 40 elem= H /> </structure> + + Generic protein structure xml La integrazione richiede una profonda conoscenza degli schemi sorgenti, al fine di produrre delle complesse trasformazioni XSLT verso uno schema comune. RDF manca di: Possibilità di specificare differenti livelli di astrazione Organizzazione delle risorse in categorie esplicite Restrizioni sulle proprietà RDFS estende RDF con un vocabolario per definire schemi, e.g.: Class, Property type, subclassof, subpropertyof range, domain Con tale estensione, RDF(S) può essere considerato a tutti gli effetti un linguaggio per la rappresentazione della conoscenza stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 45 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 46 RDFS : Vocabolario principale RDFS : Vocabolario principale Core Classes Core Properties rdfs:resource rdfs:literal rdfs:xmlliteral rdfs:class rdfs:property rdfs:datatype rdfs:type rdfs:subclassof rdfs:subpropertyof rdfs:domain rdfs:range rdfs:label rdfs:comment rdfs:resource Tutte le cose descritte da espressioni RDF sono risorse e sono considerate istanze della classe rdfs:resource rdfs:class rappresenta il generico concetto di tipo o categoria. Può quindi essere definito per rappresentare qualsiasi cosa, e.g. pagine Web, persone, tipi di documento rdfs:type lega delle risorse alle categorie (Classi) cui appartengono. È analogo al costrutto instance-of dell OO design stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 47 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 48

13 RDFS : Vocabolario principale RDFS : Vocabolario principale rdfs:property rappresenta il sottoinsieme di tutte le risorse RDFS che sono proprietà rdfs:range definisce da a quale classe appartengono i valori che una determninata proprietà può assumere rdfs:domain specifica che ogni risorsa che possiede una certa proprietà è istanza rdfs:subclassof questa proprietà definisce una relazione di super/sottoinsieme tra classi. Questa proprietà è transitiva rdfs:subpropertyof Questa proprietà è usata per indicare che una proprietà è una specializzazione di un altra proprietà di una o più classi comment properties non giocano alcun ruole nella semantica del linguaggio ma forniscono un utile mezzo per commentare un repository di dati rdfs:comment: la proprietà di comment più generale. In genere fornisce una descrizione in linguaggio naturale della risorsa che la contiene rdfs:label: fornisce nomi alternativi per indicare una risorsa. Con l attributo xml:lang è possibile specificare il linguaggio in cui tale commento è inserito rdfs:seealso: contiene un puntatore ad un altra risorsa che contiene ulteriori informazioni circa il soggetto di tale proprietà rdfs:isdefinedby: è una sottoproprietà di rdfs:seealso e indica la risorsa che definisce la risorsa soggetto, stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 49 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 50 Esempio di Schema RDF RDF-Schema : Esempio di Schema Resource Class Property Upper Layer subclassof <rdfs:class rdf:id= Provider > <rdfs:subclassof rdf:resource= #Person /> Vehicle subclassof producedby </rdfs:class> subclassof LandVehicle subclassof SeaVehicle Company Lower Layer subclassof subclassof Hovercraft NumberOfEngines Number stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 51 52

14 RDF-Schema : Esempio di Schema RDF-Schema : Esempio di Schema <rdf:rdf xmlns:rdf = xmlns:rdfs = <rdf:description id= Vehicle > <rdf:type resource= /> <rdfs:subclassof rdf:resource= /> <rdf:description id= LandVehicle > <rdf:type resource= /> <rdfs:subclassof rdf:resource= #Vehicle /> <rdf:description id= SeaVehicle > <rdf:type resource= /> <rdfs:subclassof rdf:resource= #Vehicle /> <rdf:description id= Hovercraft > <rdf:type resource= /> <rdfs:subclassof rdf:resource= #LandVehicle /> <rdfs:subclassof rdf:resource= #SeaVehicle /> <rdf:description id= Company > <rdf:type resource= /> <rdfs:subclassof rdf:resource= /> <rdf:description id= producedby > <rdf:type resource= /> <rdfs:domain rdf:resource= #Vehicle /> <rdfs:range rdf:resource= #Company /> <rdfs:label xml:lang="en">vehicle Producer</rdfs:label> <rdf:description id= NumberOfEngines > <rdf:type resource= /> <rdfs:domain rdf:resource= #Hovercraft /> <rdfs:range rdf:resource= /> <rdfs:comment xml:lang="en">this property states how many engines the hovercraft has</rdfs:comment> </rdf:rdf> Continua dalla pagine precedente stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 53 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 54 Limiti di RDFS From RDF to OWL RDFS troppo debole per descrivere risorse con sufficiente dettaglio Nessun vincolo di range e/o domain contestualizzato Non si può limitare il range di haschild a person quando è applicato a persone e a elephant quando applicato a elefanti Nessun vincolo di esistenza/cardinalità Non si può dire che tutte le istanze di person hanno una madre che è anche una person, o che le persone hanno esattamente 2 genitori Nessuna proprietà transitiva, inversa or simmetrica Non si può affermare che ispartof è una proprietà transitiva, che haspart è l inversa di ispartof o che touches èsimmetrica Two languages developed by extending (part of) RDF OIL: developed by group of (largely) European researchers (several from EU OntoKnowledge project) DAML-ONT: developed by group of (largely) US researchers (in DARPA DAML programme) Efforts merged to produce DAML+OIL Development was carried out by Joint EU/US Committee on Agent Markup Languages Extends ( DL subset of) RDF DAML+OIL submitted to W3C as basis for standardisation Web-Ontology (WebOnt) Working Group formed WebOnt group developed OWL language based on DAML+OIL OWL language now a W3C Proposed Recommendation stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 55 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 56

15 RDFS/OWL: Semantica OWL Reasoning La semantica di RDFS/OWL, contrariamente a precedenti approcci nella rappresentazione della conoscenza, come i frame, basati su controllo di vincoli (constraint checking), è di tipo inferenziale. Data quindi una teoria del mondo, invece di verificare esclusivamente che gli oggetti della nostra base di conoscenza (instance data) soddisfino i vincoli imposti da tale teoria, sarà possibile aggiungere (inferire) nuova informazione (in modo rigorosamente monotono, cioè senza contraddire asserzioni precedenti) alla teoria e/o alla descrizione degli oggetti per far sì che questi siano ancora un modello per la teoria Caratteristiche della semantica RDFS/OWL: Open World Assumption (OWA) No Unique Name Assumption L interpretazione di OWL, contrariamente a precedenti approcci nella rappresentazione della conoscenza, come i frame, basati su controllo di vincoli (constraint checking), è di tipo inferenziale. Qualche esempio: eg:document rdf:type owl:class; rdfs:subclassof [ a owl:restriction; owl:onproperty dc:author; owl:mincardinality 1^^xsd:integer]. eg:mydoc rdf:type eg:document. La descrizione di mydoc non è incompleta anche se la mincard per author è 1, perchè l autore potrebbe essere definito somewhere else in the world (Open World Assumption) stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 57 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 58 OWL Reasoning OWL Reasoning L interpretazione di OWL, contrariamente a precedenti approcci nella rappresentazione della conoscenza, come i frame, basati su controllo di vincoli (constraint checking), è di tipo inferenziale. Qualche esempio: L interpretazione di OWL, contrariamente a precedenti approcci nella rappresentazione della conoscenza, come i frame, basati su controllo di vincoli (constraint checking), è di tipo inferenziale. Qualche esempio: eg:document rdf:type owl:class; rdfs:subclassof [ a owl:restriction; owl:onproperty eg:copyrightholder; owl:maxcardinality 1^^xsd:integer]. eg:mydoc rdf:type eg:document ; eg:copyrightholder eg:institute1 ; eg:copyrightholder eg:institute2. I due valori su for eg:copyrighthoder destano problemi? No, potrebbero esistere due nomi per indicare la stessa cosa, quindi si suppone che institute1 e institute2 denotino la stessa cosa eg:document rdf:type owl:class; owl:equivalentclass [a owl:restriction; owl:onproperty eg:author ; owl:allvaluesfrom eg:person ]. eg:mydoc rdf:type eg:document ; eg:author eg:daffy. eg:daffy rdf:type eg:duck. eg:mydoc2 eg:author eg:dave. eg:dave rdf:type eg:person. Duck è inferita essere una Person (a causa dell asserzione di equivalentclass sulla restriction allvaluesfrom Person) mydoc2 è un Document? Non possiamo saperlo, perché nel mondo potrebbero esserci altri autori di questi libro che non di tipo Person stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 59 stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 60

16 Semantica di OWL Approfondite i precedenti argomenti su: 2 capitolo dell handbook on description logics Guida W3C su OWL stellato@info.uniroma2.it ai-nlp.info.uniroma2.it/stellato 61

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

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

Linguaggi e tecnologie per il Semantic Web

Linguaggi e tecnologie per il Semantic Web Linguaggi e tecnologie per il Semantic Web fiorelli@info.uniroma2.it Il World Wide Web program Nascita e obiettivi Sviluppato nel 1990 da Tim Berners-Lee, nei laboratori del CERN Due innovazioni fondamentali:

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

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

Il World Wide Web program. Linguaggi e tecnologie per il Semantic Web. Armando Stellato. Tecnologie attualmente disponibili per il Web

Il World Wide Web program. Linguaggi e tecnologie per il Semantic Web. Armando Stellato. Tecnologie attualmente disponibili per il Web Il World Wide Web program Linguaggi e tecnologie per il Semantic Web stellato@info.uniroma2.it Nascita e obiettivi Sviluppato nel 1990 da Tim Berners-Lee, nei laboratori del CERN Due innovazioni fondamentali:

Dettagli

APPENDICE C extensible Markup Language

APPENDICE C extensible Markup Language APPENDICE C extensible Markup Language C.1 extensible Markup Language, concetti di base XML è un dialetto di SGML progettato per essere facilmente implementabile ed interoperabile con i suoi due predecessori

Dettagli

Semantic Web. Semantic Web. Il Semantic Web: una semplice estensione. Il Web oggi. Il Semantic Web. Semantic Web

Semantic Web. Semantic Web. Il Semantic Web: una semplice estensione. Il Web oggi. Il Semantic Web. Semantic Web Semantic Web L. Farinetti - Politecnico di Torino Semantic Web Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino farinetti@polito.it 1 z Seconda generazione del Web z conceptual structuring

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

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

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

Le ontologie nell integrazione dei dati

Le ontologie nell integrazione dei dati Le ontologie nell integrazione dei dati Prof. Letizia Tanca 1 Ontologie Definizione formale e condivisa di un vocabolario di termini e delle relazioni tra essi Relazioni possibili: sinonimia omonimia iponimia

Dettagli

Informatica per la comunicazione" - lezione 10 -

Informatica per la comunicazione - lezione 10 - Informatica per la comunicazione" - lezione 10 - Evoluzione del Web" Nell evoluzione del Web si distinguono oggi diverse fasi:" Web 1.0: la fase iniziale, dal 1991 ai primi anni del 2000" Web 2.0: dai

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

2 Reti di Calcolatori XML

2 Reti di Calcolatori XML 2 3 4 5 6 7 8 root element Risultati Basi di dati 10 Dicembre 2003 Mario Rossi Corso Data List a_st

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

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

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

Simple & Efficient. www.quick-software-line.com

Simple & Efficient. www.quick-software-line.com Cosa è XML? extensible Markup Language Linguaggio è una definizione limitativa XML serve a descrivere con precisione qualsiasi informazione XML è estensibile. Ovvero non ha tag predefiniti come HTML XML

Dettagli

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

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

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it La struttura: DTD Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino laura.farinetti@polito.it L. Farinetti - Politecnico di Torino 1 Modello di struttura I tag annidati danno origine

Dettagli

Problema del naming. Modello di Naming

Problema del naming. Modello di Naming Sistemi Distribuiti Problema del naming 1 Modello di Naming Conoscenza reciproca delle entità / servizi In una relazione cliente/servitore il cliente deve avere un riferimento al servitore Problema della

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

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

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO RELAZIONALE. Introduzione MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

extensible Markup Language

extensible Markup Language XML a.s. 2010-2011 extensible Markup Language XML è un meta-linguaggio per definire la struttura di documenti e dati non è un linguaggio di programmazione un documento XML è un file di testo che contiene

Dettagli

Laboratorio di RETI DI CALCOLATORI

Laboratorio di RETI DI CALCOLATORI Laboratorio di RETI DI CALCOLATORI A.A. 2009-2010 I WEB SERVICES Carlo Mastroianni Laboratorio di Reti di Calcolatori - Orario lunedì, 11:30-13:30, aula 40B mercoledì, 10:00-11:30, laboratorio settimo

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

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML Thomas Imolesi imolesi@libero.it fti@bologna.enea.it XML un linguaggio

Dettagli

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language a.a. 2004/05 Tecnologie Web 1 XML - I XML (exstensible Markup Language): XML è un formato standard,

Dettagli

Un portale semantico per i Beni Culturali

Un portale semantico per i Beni Culturali Un portale semantico per i Beni Culturali A. Ciapetti, D. Berardi, A. Donnini, M. Lorenzini, M.E. Masci, D. Merlitti, S. Norcia, F. Piro (Etcware) M. De Vizia Guerriero, O. Signore (CNR W3C Italia) EVA

Dettagli

2.1 Introduzione ai linguaggi di marcatura

2.1 Introduzione ai linguaggi di marcatura Fondamenti di Informatica Sistemi di Elaborazione delle Informazioni Informatica Applicata 2.1 Introduzione ai linguaggi di marcatura Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE

Dettagli

Creare ontologie ONTOLOGIE, DESCRIPTION LOGIC, PROTÉGÉ STEFANO DE LUCA

Creare ontologie ONTOLOGIE, DESCRIPTION LOGIC, PROTÉGÉ STEFANO DE LUCA Creare ontologie ONTOLOGIE, DESCRIPTION LOGIC, PROTÉGÉ STEFANO DE LUCA Punto di partenza: materia per ragionare Gli agenti intelligenti possono usare tecniche deduttive per raggiungere il goal Per fare

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

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

Laboratorio Matematico Informatico 2

Laboratorio Matematico Informatico 2 Laboratorio Matematico Informatico 2 (Matematica specialistica) A.A. 2006/07 Pierluigi Amodio Dipartimento di Matematica Università di Bari Laboratorio Matematico Informatico 2 p. 1/1 Informazioni Orario

Dettagli

Ontologie e World Wide Web: la diffusione della conoscenza.

Ontologie e World Wide Web: la diffusione della conoscenza. Università degli Studi dell Insubria Facoltà di Scienze Matematiche, Fisiche, Naturali Sede di Como Corso di Laurea in Scienze e Tecnologie dell Informazione Ontologie e World Wide Web: la diffusione della

Dettagli

Lezione 4. Modello EER

Lezione 4. Modello EER Lezione 4 Modello EER 1 Concetti del modello EER Include tutti i concetti di modellazione del modello ER Concetti addizionali: sottoclassi/superclassi, specializzazione, categorie, propagazione (inheritance)

Dettagli

Linguaggi per il web oltre HTML: XML

Linguaggi per il web oltre HTML: XML Linguaggi per il web oltre HTML: XML Luca Console Con XML si arriva alla separazione completa tra il contenuto e gli aspetti concernenti la presentazione (visualizzazione). XML è in realtà un meta-formalismo

Dettagli

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12 SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.

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

HTML il linguaggio per creare le pagine per il web

HTML il linguaggio per creare le pagine per il web HTML il linguaggio per creare le pagine per il web Parte I: elementi di base World Wide Web Si basa sul protocollo HTTP ed è la vera novità degli anni 90 Sviluppato presso il CERN di Ginevra è il più potente

Dettagli

Librerie digitali. Introduzione. Cos è una libreria digitale?

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

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I

G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I Introduzione ad XML G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I XML XML (Extensible Markup Language) è un insieme standard di regole sintattiche per modellare la struttura di

Dettagli

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Organizzazione no-profit per lo sviluppo di standard che fornisce linee guida per: lo scambio la

Dettagli

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione HTML e Linguaggi Politecnico di Facoltà del Design Bovisa Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://home.dei.polimi.it/cugola Indice Il linguaggio del

Dettagli

/XML ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML

/XML ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML XML 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML XML è un linguaggio di marcatura proposto dal W3C XML definisce una sintassi generica per contrassegnare i dati di un documento elettronico con marcatori

Dettagli

Web applications for geographical data. Alberto Belussi maggio 2007

Web applications for geographical data. Alberto Belussi maggio 2007 Web applications for geographical data Alberto Belussi maggio 2007 Applicazioni Web Cos è un applicazione Web? Un applicazione Web e un software che adotta come interfaccia verso l utente finale un ipertesto

Dettagli

Modellazione e Gestione di Informazioni non Strutturate

Modellazione e Gestione di Informazioni non Strutturate Università della Calabria, Corso di Laurea Specialistica in Ingegneria Gestionale Progettazione di Sistemi Informativi Docente: Alfredo Cuzzocrea Modellazione e Gestione di Informazioni non Strutturate

Dettagli

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni

Dettagli

Comprendere cosa è Internet e sapere quali sono i suoi principali impieghi. 25/09/2011 prof. Antonio Santoro

Comprendere cosa è Internet e sapere quali sono i suoi principali impieghi. 25/09/2011 prof. Antonio Santoro Comprendere cosa è Internet e sapere quali sono i suoi principali impieghi. 1 Internet è una rete che collega centinaia di milioni di computer in tutto il mondo 2 Le connessioni sono dei tipi più disparati;

Dettagli

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri.

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri. Il Servizio World Wide Web () Corso di Informatica Generale (Roberto BASILI) Teramo, 20 Gennaio, 2000 Il World Wide Web Storia : obbiettivi : tecnologie Le Applicazioni Scenari Futuri La Storia (1990)

Dettagli

Working Draft 0.5 (Telefonia)

Working Draft 0.5 (Telefonia) Working Draft 0.5 (Telefonia) Abstract Lo scopo del progetto è lo sviluppo di un SCP (Semantic Collaborative Portal), cioè un sistema di visualizzazione di una banca dati documentaria di grandi dimensioni

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

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

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

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

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

Creare un Ipertesto. www.vincenzocalabro.it 1

Creare un Ipertesto. www.vincenzocalabro.it 1 Creare un Ipertesto www.vincenzocalabro.it 1 Obiettivi Il corso si prefigge di fornire: Le nozioni tecniche di base per creare un Ipertesto I consigli utili per predisporre il layout dei documenti L illustrazione

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

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

XML. XML è contemporaneamente: XML non è:

XML. XML è contemporaneamente: XML non è: XML XML è contemporaneamente: Linguaggio di annotazione (Markup) che permette di creare gruppi di marcatori (tag set) personalizzati (MathML, XHTML, chemicalml, ecc..) Formato standard per lo scambio dei

Dettagli

Integrazione di tecnologie XML nella realizzazione di siti Web

Integrazione di tecnologie XML nella realizzazione di siti Web Integrazione di tecnologie XML nella realizzazione di siti Web Andrea Marchetti(IAT CNR) Massimo Martinelli(IEI CNR) Bologna 15 Giugno 1999 XML I Giornata di studio Presentazione della presentazione Metapresentazione

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

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

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

Gestione delle tabelle

Gestione delle tabelle Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza

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

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Dettagli

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

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

Modello di Controllo dell Accesso basato sui ruoli (RBAC)

Modello di Controllo dell Accesso basato sui ruoli (RBAC) Modello di Controllo dell Accesso basato sui ruoli (RBAC) POLITICHE RBAC Sistemi di tipo Role Based Access Control (RBAC) assegnano i privilegi non agli utenti, ma alla funzione che questi possono svolgere

Dettagli

Piano di gestione della qualità

Piano di gestione della qualità Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.

Dettagli

Portale Multicanale delle PA del territorio della Regione Emilia-Romagna: un inizio di rete semantica di informazioni

Portale Multicanale delle PA del territorio della Regione Emilia-Romagna: un inizio di rete semantica di informazioni Portale Multicanale delle PA del territorio della Regione Emilia-Romagna: un inizio di rete semantica di informazioni Grazia Cesari Regione Emilia-Romagna ForumPA Roma 10 Maggio 2006 Con il supporto di

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

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

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi Modello Relazionale Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dell indipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

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

Definire linguaggi XML XSchema

Definire linguaggi XML XSchema Definire linguaggi XML XSchema 1 XMLSchema: cos'è e a cosa serve Scambio di informazioni/dati deve essere trattato in modo automatico I documenti XML usati da più partner devono avere la stessa struttura

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

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

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

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

XSL: extensible Stylesheet Language

XSL: extensible Stylesheet Language XSL: extensible Stylesheet Language XSL è un insieme di tre linguaggi che forniscono gli strumenti per l elaborazione e la presentazione di documenti XML in maniera molto flessibile. I tre linguaggi devono

Dettagli

Ontologie integrate da lessici per indicizzazione e ricerca nel Semantic Web

Ontologie integrate da lessici per indicizzazione e ricerca nel Semantic Web POLITECNICO DI TORINO Facoltà di Ingegneria dell Informazione Corso di Laurea in Ingegneria Informatica Tesi di Laurea Ontologie integrate da lessici per indicizzazione e ricerca nel Semantic Web Candidato:

Dettagli

Modellazione dei dati in UML

Modellazione dei dati in UML Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):

Dettagli

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002 Tricks & Tips [Access] - Michele de Nittis - Tutorial - ActiveX - Controllo Tree View Versione: 1 Data Versione: venerdì 30 agosto 2002 1 SOMMARIO PREMESSA...3 INSERIMENTO DEL CONTROLLO...3 AGGIUNTA DELLE

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

Semantic Web e gestione collaborativa della conoscenza di dominio: prospettive, vantaggi e casi d'uso. Ing. Christian Morbidoni, Ph.

Semantic Web e gestione collaborativa della conoscenza di dominio: prospettive, vantaggi e casi d'uso. Ing. Christian Morbidoni, Ph. Semantic Web e gestione collaborativa della conoscenza di dominio: prospettive, vantaggi e casi d'uso Ing. Christian Morbidoni, Ph.D Semantic Web su Desktop e Intranet RDF(S)/OWL: strumenti di rappresentazione

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Il Modello Relazionale

Il Modello Relazionale Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981

Dettagli

INTRODUZIONE. Data Base Management Systems evoluzione tecniche gestione dati

INTRODUZIONE. Data Base Management Systems evoluzione tecniche gestione dati INTRODUZIONE Accesso ai dati tramite DBMS Livelli di astrazione Modello dei dati: schema / istanza / metadati Alcuni modelli dei dati Linguaggi per DBMS Architettura di base di un DBMS cesarini - BDSI

Dettagli