RDF. Resource Description Framework
|
|
|
- Livio Giuliano
- 9 anni fa
- Просмотров:
Транскрипт
1 RDF Resource Description Framework 1
2 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 3) Combinazione RDF XML 4) I namespace 5) I contenitori tipi di contenitori sintassi per i contenitori 6) Perché RDF /XML è meglio di XML 3
4 Cos è il Resource Description Framework Il Resourse Description Framework descrive un linguaggio utile ai metadati. I metadati hanno una funzione essenziale nell individuazione, nel reperimento e nel trattamento delle informazioni. Un esempio classico è l insieme dei riferimenti bibliografici di una pubblicazione (titolo, autore, editore). 4
5 L obiettivo è la definizione di un sistema per la specificazione dei metadati associati alle risorse informative. Il risultato di tale attività ha condotto il W3C alla realizzazione di RDF, un metalinguaggio basato sulla sintassi XML. Esso permette sia di associare informazioni a dati, sia di definire lo schema di classificazione utilizzato. 5
6 RDF Model and Syntax L RDF Model and Syntax definisce il data model RDF (modello dei dati), che descrive le risorse, e la sintassi XML utilizzata per specificare questo modello. 6
7 RDF Schema L RDF Schema permette di definire il significato e le caratteristiche delle proprietà e delle relazioni che esistono tra queste e le risorse descritte nel data model RDF. 7
8 RDF Schema fornisce un insieme di risorse e proprietà predefinite. L insieme delle risorse e delle proprietà di base delle risorse è detto vocabolario dell RDF Schema. 8
9 Il data model RDF Questo modello è basato su tre oggetti: Resource (risorsa): indica ciò che viene descritto mediante RDF e può essere una risorsa Web (ad esempio una pagina HTML, un documento XML o parti di esso) o anche una risorsa esterna al Web (ad esempio un libro, un quadro, etc.); 9
10 Property (proprietà): indica una proprietà, un attributo o una relazione utilizzata per descrivere una risorsa. Il significato e le caratteristiche di questa componente vengono definite tramite RDF Schema; 10
11 Statement (asserzione): è l'elemento che descrive la risorsa ed è costituito da un soggetto (che rappresenta la Resource), un predicato (che esprime la Property) e da un oggetto (chiamato Value) che indica il valore della proprietà. Lo statement RDF che descrive la risorsa è del tipo: <soggetto> HAS <predicato> <oggetto>. 11
12 Resource Property Value 12
13 Esempio 1 L'informazione che vogliamo descrivere è la seguente: Elena Ferrari è l'autrice della pagina Applicando il data model RDF (basato su Resource, Property e Value) otteniamo la seguente tabella: Resourse (soggetto) Property (predicato) Value (oggetto) Author Elena Ferrari 13
14 Lo statement RDF che descrive il nostro esempio è quindi: HAS author Elena Ferrari ed in forma grafica diventa: Author Elena Ferrari 14
15 L'oggetto di uno statement RDF può essere a sua volta una risorsa, consentendo in questo modo di descrivere in maniera più approfondita il valore della proprietà. 15
16 Esempio 2 All esempio precedente vogliamo ora aggiungere maggiori informazioni riguardanti l'autore della pagina HTML (ad esempio e numero di telefono). Dobbiamo allora aggiungere allo statement precedente la descrizione della risora autore, che può essere identificata in maniera univoca utilizzando ad esempio l'uri della sua Homepage. 16
17 Lo statement RDF espresso in forma grafica diventa quindi: 17
18 Author Name Phone Elena Ferrari
19 In forma testuale si ha uno statement RDF di questo tipo: HAS author AND HAS name ElenaFerrari AND AND phone
20 Combinazione RDF XML Il data model RDF offre un mezzo astratto e concettuale per descrivere una risorsa e per facilitare la definizione e lo scambio dei metadati; RDF prevede l'utilizzo di una sintassi basata su XML per specificare in maniera concreta gli statement RDF. 20
21 Il primo esempio di statement RDF che abbiamo visto può essere espresso, utilizzando la sintassi XML, nel seguente modo: 21
22 <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:a=" <rdf:description about=" <a:author> Elena Ferrari </a:author> </rdf:description> </rdf:rdf> 22
23 L'elemento <rdf:rdf> racchiude la definizione dello statement RDF ed al suo interno troviamo la definizione di due Namespace: il primo è relativo al Namespace RDF, mentre il secondo Namespace contiene l'uri che identifica lo schema RDF utilizzato per descrivere la semantica e le convenzioni che regolano l'utilizzo delle proprietà presenti nello statement. 23
24 La descrizione del metadato è contenuta all'interno dell'elemento <rdf:description> ed il suo attributo about identifica la risorsa alla quale si riferisce il metadato stesso. La proprietà dello statement è descritta utilizzando il tag <a:author>, secondo le regole che sono espresse nel relativo schema RDF. 24
25 Il secondo esempio di statement RDF, espresso secondo la sintassi XML, diventa: 25
26 <?xml version="1.0"?> <rdf:rdf xmlns:rdf=" xmlns:a=" <rdf:description about=" <a:author rdf:resource=" </rdf:description> <rdf:description about=" <a:name>elena Ferrari</a:name> <a:phone> </a:phone> </rdf:description> </rdf:rdf> 26
27 In questo caso, all'interno dello statement RDF abbiamo la definizione di due risorse (identificate dai due elementi <rdf:description>) che sono messe in relazione attraverso l'uso dell'attributo rdf:resource presente nell'elemento <a:author>. 27
28 In questo modo la descrizione della seconda risorsa, quella riguardante l autore, viene assegnata come valore della proprietà author della prima risorsa. 28
29 RDF ci consente di definire la semantica. Affidare la semantica semplicemente a un nome può essere rischioso perchè questo potrebbe avere più significati diversi. RDF identifica in modo univoco le proprietà mediante il meccanismo dei namespace (XMLns). 29
30 I namespace I namespace XML forniscono un metodo per identificare in maniera non ambigua la semantica e le convenzioni che regolano l utilizzo delle proprietà identificando l authority che gestisce il vocabolario (ad esempio la Dublin Core Initiative). 30
31 I namespace vengono implementati aggiungendo un prefisso al nome di ogni elemento e attributo. La sintassi per introdurre un prefisso namespace è la seguente: <prefisso:nome_elemento> 31
32 I contenitori Spesso è necessario riferirsi ad una collezione di risorse; per dire per esempio che un'opera è stata creata da più di una persona, o per elencare gli studenti di un corso. Per contenere queste liste di risorse si usano i contenitori RDF. 32
33 RDF definisce tre tipi di oggetti contenitore: Bag: lista non ordinata di risorse o letterali. Si usano per dichiarare che una proprietà ha valori multipli e che l'ordine con cui questi valori sono inseriti non ha alcun significato. Sono ammessi valori duplicati. 33
34 Sequence: lista ordinata di risorse o letterali. Il contenitore Sequence si usa per dichiarare che una proprietà ha valori multipli e che l'ordine dei valori è significativo. Il contenitore Sequence potrebbe essere usato, per esempio, per conservare un ordine alfabetico dei valori. Sono ammessi valori duplicati. 34
35 Alternative: una lista di risorse o letterali che rappresentano delle alternative al valore (singolo) di una proprietà. Il contenitore Alternative potrebbe essere impiegato, ad esempio, per indicare traduzioni in altre lingue del titolo di un'opera. Un'applicazione che usa una proprietà il cui valore è un raccolta di tipo Alternative sa di poter selezionare uno fra gli oggetti presenti nella lista. 35
36 La sintassi per i contenitori è la seguente: container ::= sequence bag alternative sequence ::= '<rdf:seq' idattr? '>' member* '</rdf:seq>' bag ::= '<rdf:bag' idattr? '>' member* '</rdf:bag>' alternative ::= '<rdf:alt' idattr? '>' member+ '</rdf:alt>' member ::= referenceditem inlineitem referenceditem ::= '<rdf:li' resourceattr '/>' inlineitem ::= '<rdf:li>' value '</rdf:li> 36
37 Perché RDF/XML è meglio di XML XML consente varianti diverse per esprimere gli stessi concetti. I programmi applicativi per interpretare queste variazioni hanno bisogno di una conoscenza a priori dello schema/dtd. RDF impone ulteriori vincoli sintattici su come i concetti devono essere espressi. 37
38 Noi vogliamo rappresentare la relazione tra un oggetto ed un informazione associata con esso. In XML, potremmo rappresentare questa relazione in modi diversi. Utilizzando RDF definiamo univocamente la struttura: c'è un soggetto un predicato ed un oggetto. 38
39 RDF < FLESSIBILITA > INTEROPERABILITA Con RDF/XML quindi i programmi possono interpretare le descrizioni in modo consistente. 39
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
RDF RDFS RDF/XML. Dott.sa Vincenza Anna Leano [email protected]. Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011
RDF RDFS RDF/XML Dott.sa Vincenza Anna Leano [email protected] Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011 ESEMPIO Concetto Il prof Cutugno insegna Basi di Dati II Rappresentazione
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
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
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
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
Introduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Elenchi puntati e numerati
Elenchi puntati e numerati Gli elenchi giocano un ruolo molto importante nei testi, ma anche nella definizione di elementi strutturali delle pagine HTML. Dal punto di vista dell organizzazione del testo
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
Unità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione
Obiettivi Unità A2 Progettazione concettuale Imparare ad astrarre i dati per definire entità. Saper distinguere tra astrazione per classificazione, per aggregazione e per generalizzazione. Saper distinguere
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
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
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
XML: XLink. Alessandro Sorato - Linguaggi per la rete: XML Dipartimento di Informatica Università di Venezia Ca' Foscari
XML: XLink XLink: XML Linking Language (1.0) W3C Recommendation del 27 Giugno 2001 Linguaggio basato su XML per definire dei link tra risorse esterne o interne ad un documento. XLink nasce con l'intento
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
Chiara Chiarelli. Rapporto tecnico
Chiara Chiarelli Rapporto tecnico Export dei prodotti della ricerca presenti nel sistema per l'auto-archiviazione dei prodotti della ricerca del personale CNR e dei suoi Istituti ( People ) Data: 08/07/2016
Mediasoft snc. Classi documentali. Allegato al manuale di Conservazione sostitutiva. Versione 1.0.2 del 2 novebre 2015
Mediasoft snc Classi documentali Allegato al manuale di Conservazione sostitutiva Versione 1.0.2 del 2 novebre 2015 Emissione del documento Azione Data Nominativo Funzione Redazione 02-11-2015 Paolo Scarabelli
Metodologie e modelli di progetto
Metodologie e modelli di progetto Ingg. Francesco Gullo, Giovanni Ponti D.E.I.S Università della Calabria [email protected] [email protected] 1 I Sistemi Informativi Un sistema informativo èun
INTRODUZIONE ALLE BASI DATI RELAZIONALI
INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE
Usabilità e accessibilità. Bibliografia:
Usabilità e accessibilità Bibliografia: Metodi ispettivi: euristiche di Nielsen 1. Visibilità dello stato di sistema: l utente sa cosa sta accadendo e ha feedback continui 2. Accordo tra sistema e mondo
Tecnologie Web T DTD Document Type Definition
Tecnologie Web T Document Type Definition Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica: 2.02.XML-.pdf Versione elettronica: 2.02.XML--2p.pdf 1 Che cos è? : Document
Manuale SQL. Manuale SQL - 1 -
Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,
Funzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7
Linguistica Computazionale
Linguistica Computazionale La codifica di alto livello del testo Salvatore Sorce Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Lucidi Adattati da Alessandro Lenci Dipartimento
Programmazione ad oggetti
Programmazione ad oggetti OOP La programmazione orientata agli oggetti (Object Oriented Programming) ha l obiettivo di formalizzare gli oggetti del mondo reale e di costruire con questi un mondo virtuale.
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)
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
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
Unità Didattica 2 I Linguaggi di Programmazione
Unità Didattica 2 I Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche
Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma
Problemi di comunicazione e relazione La Comunicazione Alternativa Aumentativa, CAA
CAA è il termine usato per descrivere le strategie che possono facilitare e migliorare la comunicazione di tutte le persone che hanno difficoltà, temporanee o permanenti, ad utilizzare i più comuni canali
Raccolta e analisi dei requisiti
Raccolta e analisi dei requisiti Definizione di requisito: asserzione riguardante un servizio del sistema o un vincolo Un asserzione di servizio descrive il modo in cui il sistema deve reagire alle richieste
Corso di Laurea in Informatica Basi di Dati a.a
Corso di Laurea in Informatica Basi di Dati a.a. 2012-2013 Laboratorio 31B Esercitatori : Ing. G. Laboccetta Dott.ssa V. Policicchio Progetto Didattico Durante le lezioni saranno realizzate tutte le fasi
Dispense XML. Indice
Indice Dispense XML...1 Breve introduzione a XML...1 Analisi e Visualizzazione del documento...1 Supporto Microsoft per XML...3 XML server side...3 Spazio dei nomi...4 Struttura di un documento XML...5
IL MODELLO ENTITY RELATIONSHIP. il modello ER 1
IL MODELLO ENTITY RELATIONSHIP il modello ER 1 CONOSCENZA CONCRETA costrutti fondamentali PROPRIETÀ o ATTRIBUTI: fatti che descrivono le caratteristiche delle istanze di entità e le caratteristiche delle
Costanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15
Ingegneria del Software 4. Introduzione a UML Dipartimento di Informatica Università di Pisa A.A. 2014/15 e per i modelli iterativi analisi peliminare analisi e progettazione realizzazione Necessità di
Enrico Fagnoni <[email protected]> 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
Linguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
RDF per la rappresentazione della conoscenza
RDF per la rappresentazione della conoscenza Oreste Signore Ufficio Italiano W3C 1. presso il C.N.R. - Istituto CNUCE Area della Ricerca di Pisa San Cataldo - Via G. Moruzzi, 1-56124 Pisa Email:[email protected]
Access. P a r t e t e r z a
Access P a r t e t e r z a 1 Query: Concetti generali (2) Query 1 Tabella Query 2 Le query rappresentano viste differenti sul DB (possono coinvolgere una o più tabelle) 2 Creazione (1) Diverse possibilità,
Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I)
Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I) Ing. Gianluca Caminiti Sommario ( OOP ) Programmazione Object-Oriented Incapsulamento, Ereditarietà, Polimorfismo Richiami
INDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso
INDICI PER FILE Strutture ausiliarie di accesso 2 Accesso secondario Diamo per scontato che esista già un file con una certa organizzazione primaria con dati non ordinati, ordinati o organizzati secondo
Manuale di progettazione schemi XML
Ministero dell'economia e delle finanze Dipartimento per le politiche fiscali - Ufficio coordinamento tecnologie informatiche Sergio Baldelli Manuale di progettazione schemi XML Conformi alle regole del
La stampa unione in Word 2007
La stampa unione in Word 2007 Preparazione della lista dei contatti Devi inviare a più persone lo stesso documento e vuoi personalizzarlo con il nome del destinatario? È semplice con la funzione stampa
SBN e Authority Control evoluzione e aspetti operativi
Cataloghi bibliografici in evoluzione il panorama italiano formati di scambio e strategie di condivisione dei dati Mercoledì 23 novembre 2016 Università degli Studi Roma Tre III Sessione Tavola rotonda
Linguaggi di Programmazione
Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
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
INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
I database. Introduzione alla teoria delle basi di dati
I database Introduzione alla teoria delle basi di dati 1 Cosa sono e a cosa servono i Database Un database (o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di un database
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
Definizione di file. Directory e file File binari e file di testo
I/O Avanzato e File Definizione di file Directory e file File binari e file di testo 5 Definizione di file Directory e file Tutti i sistemi operativi permettono di organizzare le informazioni su hard disk
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
Database Modulo 4 RELAZIONI TRA TABELLE
Database Modulo 4 RELAZIONI TRA TABELLE PERCHÉ DEFINIRE LE RELAZIONI Dopo avere definito le tabelle corrispondenti alle entità individuate nel progetto del database, è necessario indicare il modo per ricollegare
