Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn1 RDF Query Languages Oxana Krieger Yuliya Grinshteyn.

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn1 RDF Query Languages Oxana Krieger Yuliya Grinshteyn."—  Präsentation transkript:

1 Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn1 RDF Query Languages Oxana Krieger Yuliya Grinshteyn

2 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn2 1.SQL/OQL- basierte Sprachen RQL RDQL: praktische Anwendung von Anfragen SeRQL 2.Regelbasierte Sprachen Triple Versa N3 3.Vergleich von Anfragesprachen Übersicht Gliederung

3 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn3 RDF Query Language (RQL) The First Declarative Language for uniformly querying RDF schemas and resource descriptions (Forth Institute of Computer Science) Eigenschaften: RQL basiert auf den Graphenmodell von RDF : -bietet Eigenschaften für die Navigation auf dem Graph und Auswahl bestimmten Kanten und Knoten für weitere Abfragen. RQL folgt einer SQL / OQL-artigen Syntax : -select-from-where Anfragen SQL/OQL- basierte Anfragesprachen

4 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn4 Supports von RQL XML Schema Datentypen -Filterung von wörtlichen Werten RDF Schema : -insbesondere die durch (subClassOf, subPropertyOf) definierten Relationen von Klassen und Properties Quantification iterators - EXISTS, FORALL Aggregatfunktionen (count …) - Extrahieren der Statistik Namespace Abkürzungsmechanismus -Bsp :using namespace vCard = RQL Sprachenübersicht

5 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn5 RQL Sprachenübersicht Variablen Variablen werden per Namen identifiziert Namen der Variablen : Var1, var_1 Variablen von Prädikaten fangen mit dem an Variable von schema classes fangen mit dem Präfix $ an -Beispiel: $s Operatoren Logische Operatoren: AND, OR, NOT Vergleichsoperatoren: =, >, !=

6 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn6 RQL Sprachenübersicht Path expressions (Pfad-Ausdrücke) werden in der from-Klausel verwendet -RQL: from {Y} Knoten und Kanten können Variable, URIs du Literalen sein -RQL: {PAINTER} cult:paints {PAINTING} Ein Knoten kann leer sein, wenn sein Wert unwichtig ist -RQL: {PAINTER} cult:paints. cult:technique {TECH} Pfad-Ausdrücke können aus mehreren Trippeln bestehen: {Person} foo:worksFor {Company}. rdf:type{foo:ITCompany} foo:ITCompany Company Person foo:worksFor rdf:type

7 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn7 RQL Sprachenübersicht SELECT – FROM – WHERE Query SELECT gibt an, welche Anfragevariablen in welcher Ordnung im Anfrageergebnis ausgegeben werden sollen -* werden alle Variablen ausgegeben, Ordnung kann nicht bestimmt werden FROM enthält Pfad-Ausdrücke, definiert Pfade im RDF-Graphen WHERE ist optional, kann zusätzlich boolesche Einschränkungen auf den Werten in den Pfad-Ausdrücken (from) enthalten Beispiel select // X - Subjekt from {Y} - Prädikat where Y like "Pablo" // Y - Objekt

8 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn8 RDQL Sprachenübersicht RDF Data Query Language (RDQL) has been implemented in a number of RDF systems for extracting information from RDF graphs (W3C) Eigenschaften: definiert einen Mustergraphen, der mit dem RDF-Graphen verglichen wird und eine Menge von übereinstimmenden Teilgraphen zurückliefert. SQL / OQL-artigen Syntax : -select-from-where Anfragen Status W3C Submission Entwicklung von HP

9 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn9 RDQL Sprachenübersicht Supports Namespace Abkürzungsmechanismus model-level access mechanism Namespaces Syntax: using … for Klausel am Ende der Query Bsp.: USING info FOR Variablen Variablen werden per Namen identifiziert Namen der Variablen fangen mit dem Präfix ? an Bsp.: ?resource, ?fName URIs URIs werden in <> quotiert Beispiel : WHERE (?x,, ?fName)

10 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn10 RDQL Sprachenübersicht Muster Graph werden in der where-Klausel verwendet WHERE (?y,, "Smith") Pfade (?Person,,?Company), (?Company,, foo:ITCompany) Knoten und Kanten können Variable, URIs du Literalen sein - Bespiel: (?PAINTER, cult:paints,?PAINTING) ?Person?Compan y foo:works For rdf:type foo:ITCompany

11 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn11 RDQL Sprachenübersicht SELECT – FROM – WHERE Query SELECT gibt an, welche Anfragevariablen im Anfrageergebnis ausgegeben werden sollen. FROM spezifiziert die zu untersuchenden Modelle anhand von URIs (kaum benutzt) WHERE wird gefolgt von einer Liste konjunktiv verbundener Triple-Muster. Diese Muster werden mit allen Trippeln, die im Modell enthalten sind, verglichen und übereinstimmende Tripel in einer Ergebnismenge gesammelt. AND gibt Bedingungen für den Gütigkeitsbereich von Variablen an. USING ermöglicht zur Verbesserung der Übersichtlichkeit der Anfrage die Einführung von Platzhaltern.. -Beispiel: SELECT ?resource WHERE (?resource,, ?age) AND ?age >= 24 USING info FOR

12 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn12 Praktische Anwendung RDQL Anfragen SELECT ?x, ?fname WHERE (?x,, ?fname) SELECT ?givenName WHERE (?y,, "Smith"), (?y,, ?givenName) (alternativ zu 1). SELECT ?x WHERE (?x,, "John Smith") USING vCard FOR ?x ? fname d-rdf/3.0#FN ?y Smith ?givenName rdf/3.0#Family rdf/3.0#Given

13 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn13 Praktische Anwendung RDQL Anfragen SELECT ?resource, ?givenName WHERE (?resource,, ?z), (?z,, ?givenName) SELECT ?resource WHERE (?resource,, ?age) AND ?age >= 24 USING info FOR ? resource ? age info :age ? resource ?z ? givenName 2001/vcard- rdf/3.0#N g/2001/ vcard- rdf/3.0#Given

14 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn14 Praktische Anwendung RDQL Anfragen SELECT ?resource, ?familyName WHERE (?resource,, ?age), (?resource,, ?y), (?y,, ?familyName) AND ?age >= 24 USING info FOR, vCard FOR ?resource ? age ?y info:age v:Card:N ?familyName vCard: Family

15 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn15 SeRQL Sesame RDF Query Language (SeRQL) A new RDF/RDFS query language that is currently being developed by Aduna as part of Sesame (SeRQL munuel) Eigenschaften: vereinigt beste Eigenschaften der anderen Anfragen-Sprachen ( RQL, RDQL, N-Triples, N3 ) und fügt ihre eigene hinzu Graph Transformation. Ausdrucksvolle Pfad-Ausdruck-Syntax. Optional Pfad Matching. Folgt einer SQL / OQL-artigen Syntax: -select-from-where Anfragen Supports: RDF Schema Support. XML Schema Datentyp Support

16 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn16 SeRQL Sprachenübersicht Literalen Bestehen aus 3 Teilen : Label, language tag,Datentyp Beispiele: "foo" " "^^ Variablen Variablen werden mit Namen identifiziert Zeichen _,., - sind erlaubt Beispiel für Namen der Variablen: -Var1, _var2 -unwise.var-name_isnt-it URI URIs werden in <> quotiert -

17 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn17 SeRQL Sprachenübersicht Path expressions (Pfad-Ausdrücke) Knoten und Kanten können Variable, URIs du Literalen sein Bespiel: {PAINTER} cult:paints {PAINTING} Grundlegende Pfad-Ausdrücke: SeRQL: {Person} foo:worksFor {Company} rdf:type {foo:ITCompany} oder {Person} foo:worksFor {Company}, {Company} rdf:type {foo:ITCompany}

18 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn18 SeRQL: Pfad-Ausdrücke Multi-value Knoten 1. Variante: {subj1} pred1 {obj1, obj2, obj3} oder {subj1} pred1 {obj1}, {subj1} pred1 {obj2}, {subj1} pred1 {obj3} 2.Variante: -{subj1, subj2, subj3} pred1 {obj1} 3.Variante: {first} pred1 {middle1, middle2} pred2 {last}

19 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn19 SeRQL: Sprachenübersicht Path expressions (Pfad-Ausdrücke) Zweige {subj1} pred1 {obj1}; pred2 {obj2} oder {subj1} pred1 {obj1}, {subj1} pred2 {obj2} optionale Pfad Ausdrücke: {Person} person:name {Name}; person:age {Age}; [person: { Address}]

20 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn20 SeRQL Sprachenübersicht Query SELECT Query -gibt Menge der Anfragevariablen in vorgegebener Ordnung -select from where Notation -Bsp: SELECT O, S FROM {S} rdfs:label {O} CONSTRUCT Query -gibt Menge Trippeln zurück -constuct from where Notation -Bsp.: CONSTRUCT {Parent} foo:hasChild {Child} FROM {Child} foo:hasParent {Parent}

21 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn21 Regelbasierte Sprache TRIPLE TRIPLE vereinigt in sich eine Anfrage-Sprache und eine Sprache von Regeln Supports : -Ressourcen & Namespaces, Abkürzungen -Models ( Reihe von RDF Statements) -Reification -Regeln -Transformationen Sprachenübersicht : Syntaktische Erweiterung der Hornlogik Syntaktisch ähnlich der F-Logik : -subject[predikate object] (molecule).

22 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn22 TRIPLE Sprachenübersicht Statements, triples, molecules: – subject[predicate object] – subject[p1 o1; p2 o2;...] – s1[p1 s2[p2 o] ] Reification: – stefan[believes ] Logische Formeln: – usual logical connectives and quantifiers: – alle Variablen werden über (oder ) eingeführt

23 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn23 TRIPLE Sprachenübersicht Clauses: – Fakt: s[p1 o1; p2 o2;...]. – Regel: X s 1 [p 1X] s 2 [p 2X].... Namespace und Resource abbreviations: – rdf := – isa := rdf:subClassOf

24 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn24 TRIPLE Sprachenübersicht Beispiel: Dublin Core Metadata dc := dfki := { dfki:d_01_01 [ dc:title TRIPLE; dc:creator Michael Sintek; dc:subject RDF; dc:subject triples;... ]. } namespace abbreviations block fact dfki:d_01_01 Michael Sintek RDF triples TRIPLE dc:titledc:creator dc:subject... FORALL D <- D[dc:subject rule Ergebnis: dfki:d_01_01

25 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn25 Regelbasierte Anfragesprache Versa Versa is a specialized language for addressing and querying an RDF model. It allows traversal of arcs, processing of node contents, and general expression evaluation. Unterstützt: boolesche Logik; set – Operationen; transitive Operationen; das Stringvergleich; Datentypen: Ressource // rdfinference.org String Number Boolean

26 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn26 Regelbasierte Anfragesprache Versa Versa Query Structure Query Traversal and filter expressions -Forward traversal and filter expressions -Backward traversal expressions Forward traversal operator list-expression - list-expression -> boolean-expression return Liste von Objekten Forward filter operator list-expression - list-expression |-> boolean-expression return Liste von Subjekten

27 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn27 Regelbasierte Anfragesprache Versa An illustration of the workings of a traversal expression type(t1) – p1->contains(b)

28 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn28 Regelbasierte Anfragesprache Versa all() - dc:date -> * Ergebnis: all() - dc:date -> contains("-03-") Ergebnis: all() |- dc:date -> contains("-03-") Ergebnis:

29 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn29 Regelbasierte Anfragesprache Versa Backward traversal expression: Form : list <- list - boolean " " <- dc:date - * (" " * Unnecessary abbreviation

30 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn30 Regelbasierte Anfragesprache N3 Notation3 (N3) provides a text-based syntax for RDF. Therefore the data model of N3 conforms to the RDF data model. Additionally, N3 allows to dene rules, which are denoted using a special syntax. Such rules, whilst not a query language per se, can be used for the purpose of querying. Unterstützt: Namespace rdfs:. Aggregatfunktionen z.B. count Rekursionen

31 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn31 Regelbasierte Anfragesprache N3 Namen der Variablen fangen mit dem Präfix ? an Bsp.: ?Var Statement subject predicat object Mehrere Objekte für ein Subjekt : sub pred1 obj1, pred2 obj2. Am Ende der Regel steht immer. Markierung von Blanck node durch die eckigen Klammern Query - Beispiel: ?y rdfs:label foo=>?y a:QueryResalt. – Gibt alle Ressourcen, die eine Label foo haben, zurück.

32 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn32 5. Vergleich von Anfragesprachen RDQLTRIPLESeRQLVersaN3RQL Path Expressions Optional Path Expressions --++°° Union Difference ---°-+ Quantification -°---+ Aggregation Recursion -+-++° Reification °++°-° Collection and Containers °°°°°° Namespace °-+-++ Language --+--° Lexical Space Value Space °-+--+

33 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn33 5. Vergleich von Anfragesprachen Usecase Namespace z.B. Return all resources whose namespace starts with Usecase Language: Database Management Datenbankmanagement Return the German label of the topic whose English label is Database Management.

34 RDF Anfragesprachen Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn34 Quellen Sesame RQL : a Tutorial Jena Tutorial – RDQL The SeRQL query language(manual) RDF Query using Versa developerworks/xml/library/x- think10/index.html#1 TRIPLE – A Query, Inference and Transformation Language Notation 3 Comparison of Query Languages


Herunterladen ppt "Institut für Informatik Betriebliche Informationssysteme Oxana Krieger Yuliya Grinshteyn1 RDF Query Languages Oxana Krieger Yuliya Grinshteyn."

Ähnliche Präsentationen


Google-Anzeigen