La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari.

Presentazioni simili


Presentazione sul tema: "Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari."— Transcript della presentazione:

1 Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari

2 COS’E’ RDQL… Il linguaggio RDQL è un linguaggio d’interrogazione per i modelli RDF sviluppato inizialmente dai laboratori Hewlett-Packard nell’ambito del progetto Jena. L'idea è stata quella di fornire un modello di query orientato ai dati : nasce così un linguaggio ad alto livello che consente di interrogare in modo semplice un modello RDF. Università degli Studi di Bari

3 …COS’E’ RDQL… questo linguaggio è basato su SquishQL (che in se è derivato da rdfDB) ed è compreso nel Rdf Jena Toolkit. Università degli Studi di Bari

4 SINTASSI RDQL… RDQL interroga i documenti di RDF che indicano il loro URL (HTTP://) o i loro percorsi (se sono in locale), usando una sintassi simile a SQL. Università degli Studi di Bari Clausola SELECT Seleziona le variabili che devono fornire la risposta alla query.

5 …SINTASSI RDQL… Clausola FROM Indica le fonti di RDF da interrogare, ogni fonte è racchiusa tra i segni di minore e maggiore e sono separate da virgole. Le fonti possono essere URLs o percorsi per i documenti locali di RDF. Esempio:,, Università degli Studi di Bari

6 …SINTASSI RDQL… Clausola WHERE… E’ l’ identificatore più importante in una espressione RDQL ed è composta da una sequenza di triple (soggetto, predicato, oggetto), racchiuse tra parentesi e separate da virgole. Università degli Studi di Bari

7 …SINTASSI RDQL… …Clausola WHERE Un predicato può anche essere un namespace dichiarato con l’identificatore USING. Esempio : (?x,, ?y), (?y,, ?z) Università degli Studi di Bari

8 …SINTASSI RDQL… Clausola AND Specifica le espressioni booleane. Nell’esempio di prima: (Seleziona tutti gli oggetti che hanno un articolo blu) SELECT ?x FROM WHERE (?x,, ?y), (?y,, ?z) AND ?z=="blue" Università degli Studi di Bari

9 …SINTASSI RDQL Clausola USING E’ un modo per accorciare la lunghezza delle URI infatti dichiara tutti i namespaces che saranno usati per le proprietà di RDF, ed usa la notazione: Esempio: USING foo per Università degli Studi di Bari

10 Resource Description Framework(RDF) è un modello astratto finalizzato alla rappresentazione di meta- informazioni relative a risorse accessibili via Web. E’ un linguaggio specificamente progettato per la descrizione di metadati relativi a risorse disponibili attraverso il Web. Università degli Studi di Bari RDF COS’E’…

11 …RDF COS’E’… L’utilizzo del formato RDF si suddivide nella stesura di due tipi di documenti. La preparazione di un vocabolario di termini specifici del contesto che si vuole rappresentare(RDF schema). La realizzazione della base di metadati che, utilizzando i termini definiti nello schema RDF, descrive le risorse del contesto applicativo a cui si riferiscono Università degli Studi di Bari

12 …RDF COS’E’… E’ alla base del “Semantic Web” poiché permette di condividere la conoscenza sul Web, per applicativi che debbano scambiarsi informazioni, evitando perdita di significato. RDF si basa sull’idea che le cose che intendiamo descrivere hanno delle proprietà che hanno dei valori; su questa base fornisce un semplice meccanismo per definire dei fatti relativi a risorse (Web). Tale meccanismo è basato sul paradigma SPV (subject, predicate, value/object).

13 …RDF COS’E’ Supponiamo per esempio di voler dire che una certa pagina web (http://www.miosito.com/index.html) è scritta in italiano. è il soggetto (subject) lingua è il predicato (predicate ) italiano è il valore (value/object) è un’URL (Uniform Resource Locator), in altri termini è un identificatore univoco della pagina in questione, che consente di accedervi senza ambiguità alcuna. Il predicato “lingua” e il valore “italiano” sono invece stringhe di caratteri.

14 Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari

15 Cosa fa la classe queryL ?… Permette di costruire delle query secondo il linguaggio d’interrogazione RDQL. Le query vengono implementate come istanze di questa classe. Fornisce alcuni metodi che permettono, una volta creata la classe, di aggiungere gli identificatori FROM e USIN G, se questi non sono stati forniti alla query. Università degli Studi di Bari

16 …Cosa fa la classe queryL ? Fornisce dei metodi per verificare la presenza di identificatori e di condizioni all’ interno della query. Fornisce dei metodi che permettono di aggiungere delle condizioni alla query costruita, con gli operatori booleani AND, OR, NOT. Università degli Studi di Bari

17 Costruttori della Classe I costruttori della classe sono 4 e si differenziano per il numero di argomenti di tipo List: queryL() queryL(paramS, paramW) queryL(paramS, paramF, paramW) query(paramS, paramF, paramW, paramU) Università degli Studi di Bari

18 Il Costruttore queryL() Crea una istanza vuota della classe. Università degli Studi di Bari

19 Il Costruttore queryL(paramS, paramW) Crea una istanza contenente una query di base (Select e Where con i loro elementi ). Il primo argomento paramS fornisce gli elementi di Select. Il secondo argomento paramW fornisce gli elementi di Where. Università degli Studi di Bari

20 Il Costruttore queryL(paramS, paramF, paramW) Crea una istanza contenente una query di base con l’aggiunta dell’ identificatore FROM. Il primo e terzo argomento paramS e paramW vengono utilizzati per fornire gli elementi di SELECT e WHERE. Il secondo argomento paramF fornisce gli elementi di FROM. Università degli Studi di Bari

21 Il Costruttore queryL(paramS, paramF, paramW, paramU) Crea una istanza contenente una query di base con l’aggiunta dei identificatori FROM e USING. I prime tre argomenti paramS, paramF, paramW vengono utilizzati per fornire gli elementi di SELECT, FROM e WHERE. Il quarto argomento paramU fornisce gli elementi di USING. Università degli Studi di Bari

22 Esempio 1… SELECT ?z WHERE (?y, ?w, ?z) AND (?z < 5) Corrisponde a : Ed è equivalente a : new queryL(paramS, null, paramW); new queryL(paramS, null, paramW, null); paramS.add(“?z”); paramW.add(“?y”); paramW.add(“?w”); paramW.add(“?z < 5”); paramW.add(“?z”); new queryL(paramS, paramW); Università degli Studi di Bari

23 …Esempio 2… paramS.add(“?z”); paramW.add(“?y”); paramW.add(“?w”); paramW.add(“?z < 5”); paramW.add(“?z”); paramF.add(“ ”); new queryL ( paramS, paramF, paramW ); SELECT ?z FROM WHERE (?y, ?w, ?z) AND (?z < 5 ) Che è equivalente a : new queryL(paramS, paramF, paramW, null); Corrisponde a : Università degli Studi di Bari

24 …Esempio 3 SELECT ?y FROM WHERE (?x,, ?z), (?x,, ?y) AND ?z > 20 USING dt for paramS.add(“?y”); paramW.add(“?x”); paramW.add(“ ”); paramW.add(“?z”); paramW.add(“?x”); paramW.add(“ ”); paramW.add(“?y”); paramW.add(“ 20”); paramU.add(“dt”); paramU.add(“ ”); paramF.add(“ ”); new queryL ( paramS, paramF, paramW, paramU ); Corrisponde a : Università degli Studi di Bari

25 Metodi della Classe… I metodi della classe si dividono in metodi che… Forniscono identificatori in aggiunta: addFrom (List paramF) addUsing (List paramU) Forniscono delle condizioni aggiuntive: addAndCondition (String condition) addOrCondition (String condition) addAndNotCondition (String condition) addOrNotCondition (String condition) Università degli Studi di Bari

26 …Metodi della Classe Permettono di conoscere lo stato della query: existCONDITION () existFROM () existQueryBase () existUSING () Permette di ottenere la query RDQL, tramite una string: toString () Università degli Studi di Bari

27 Il Metodo addFrom Permette di aggiungere alla query la sezione FROM. Esempio: Voglio aggiungere alla query la sezione : FROM Devo scrivere la seguente istruzione: nomeClasse.addFrom(“ ”); Università degli Studi di Bari

28 Il Metodo addUsing Permette di aggiungere alla query la sezione USING. Esempio: Voglio aggiungere alla query: USING dt FOR Devo scrivere la seguente istruzione: nomeClasse.addUsing(List ParamU); Con paramU contenente “dt” e “ ” Università degli Studi di Bari

29 Il Metodo addAndCondition Permette di aggiungere una condizione con l’operatore AND; se esistono già altre condizioni, viene aggiunta con && altrimenti con AND. Esempio: Voglio aggiungere alla query la seguente condizione: ?z < 7 Devo scrivere la seguente istruzione : nomeClasse.addAndCondition(“?x < 7”); Università degli Studi di Bari

30 Il Metodo addAndNotCondition Permette di aggiungere la negazione di una condizione con l’operatore AND; se esistono già altre condizioni viene aggiunta con && altrimenti con AND. Esempio: Voglio aggiungere alla query la seguente condizione negata: ?z < 7 Devo scrivere la seguente istruzione: nomeClasse.addAndNotCondition(“?z < 7”); Università degli Studi di Bari

31 Il Metodo addOrCondition Permette di aggiungere una condizione con l’operatore OR; se esistono già altre condizioni viene aggiunta con || altrimenti con AND. Esempio: Voglio aggiungere alla query la seguente condizione: ?z < 7 Devo scrivere la seguente istruzione: nomeClasse.addOrCondition(“?z < 7”); Università degli Studi di Bari

32 Il Metodo addOrNotCondition Permette di aggiungere la negazione di una condizione con l’operatore OR; se esistono già altre condizioni viene aggiunta con || altrimenti con AND. Esempio: Voglio aggiungere alla query la seguente condizione negata: ?z < 7 Devo scrivere la seguente istruzione: nomeClasse.addOrNotCondition(“?z < 7”); Università degli Studi di Bari

33 Il Metodo existCONDITION Verifica nella classe la presenza di condizioni. Il risultato sarà un valore booleano. Esempio: nomeClasse.existCONDITION(); Università degli Studi di Bari

34 Il Metodo existFROM Verifica nella classe la presenza dell’ identificatore FROM. Il risultato sarà un valore booleano. Esempio: nomeClasse.existFROM(); Università degli Studi di Bari

35 Il Metodo existUSING Verifica nella classe la presenza dell’ identificatore USING. Il risultato sarà un valore booleano. Esempio: nomeClasse.existUSING(); Università degli Studi di Bari

36 Il Metodo existQueryBase Verifica nella classe la presenza di una query contenente gli identificatori base SELECT e WHERE. Il risultato sarà un valore booleano. Esempio: nomeClasse.existQueryBase(); Università degli Studi di Bari

37 Il Metodo toString Permette di ottenere la query costituita come stringa. Il risultato sarà un valore di tipo String. Esempio: nomeClasse.toString(); Università degli Studi di Bari


Scaricare ppt "Carluccio Antonio Carluccio Alessandra Caricola Giovanni Vizzino Anna Università degli Studi di Bari."

Presentazioni simili


Annunci Google