1 / 27

RDF a RQL

RDF a RQL. Roman Krejčík. RDF a RQL. RDF – Resource Description Framework Ja z y k pro ukládání informací v XML RDF Schema RQL – RDF Query Language Dotazová n í nad RDF dokumenty. RDF. XML dokument Standardizován W3C Formát pro strojové čtení Ukládání webových zdrojů

viola
Download Presentation

RDF a RQL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RDF a RQL Roman Krejčík

  2. RDF a RQL • RDF – Resource Description Framework • Jazyk pro ukládání informací v XML • RDF Schema • RQL – RDF Query Language • Dotazování nad RDF dokumenty

  3. RDF • XML dokument • Standardizován W3C • Formát pro strojové čtení • Ukládání webových zdrojů • URI pro identifikaci zdrojů

  4. Základní pojmy • Zdroj • Identifikován URI • Může mít přiřazené vlastnosti • Vlastnost • Má hodnotu nějakého typu • Můze být odkazem na zdroj nebo prim. typ • RDF definuje základní primitivní typy

  5. Syntaxe RDF • XML dokument • Kořenový element <RDF> • Každý zdroj popsán tagem <Description> • Namespace pro RDF značky http://www.w3.org/1999/02/22-rdf-syntax-ns# • Popis zdroje - vlastní namespace a struktura

  6. Příklad RDF <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cd="http://www.recshop.fake/cd"> <rdf:Description rdf:about="http://www.recshop.fake/cd/Empire Burlesque"> <cd:artist>Bob Dylan</cd:artist> <cd:country>USA</cd:country> <cd:company>Columbia</cd:company> <cd:price>10.90</cd:price> <cd:year>1985</cd:year> </rdf:Description> </rdf:RDF>

  7. Odkazy na zdroje • Vlastnosti se mohou odkazovat na zdroje <rdf:Description rdf:about="http://www.recshop.fake/cd/Empire Burlesque"<cd:artistrdf:resource="http://www.recshop.fake/artists/dylan"/> <cd:country>USA</cd:country> <cd:company>Columbia</cd:company> <cd:price>10.90</cd:price> <cd:year>1985</cd:year> </rdf:Description>

  8. Kontejnerové elementy • Vlastnosti mohou být složitější struktury • Reprezentace více prvků • Množina – element Bag • Sekvence – element Seq • Alternativy – element Alt • Jednotlivé položky <rdf:li>…</rdf:li>

  9. Kontejnerové elementy • Bag – neuspořádaná množina • Seq – prvky jsou indexované <cd:artist> <rdf:Bag> <rdf:li>John</rdf:li> <rdf:li>Paul</rdf:li> <rdf:li>Ringo</rdf:li> </rdf:Bag> </cd:artist>

  10. RDF Schema (RDFS) • Rozšíření RDF • Třídy pro jednotlivé zdroje • Zavedení dědičnosti tříd • Pouze framework, nedefinuje žádné třídy, jen způsob jejich vytváření

  11. RDFS • Třída nedefinuje objekt. Instancí třídý je pouze bezstavový zdroj reprezentovaný URI • Jeden zdroj může být instancí libovolných tříd • Vlastnosti mohou být v rámci dědičnost specializovány

  12. Syntaxe RDFS • Součástí RDF dokumentu • Namespace http://www.w3.org/2000/01/rdf-schema# • Definice třídy <rdfs:Class rdf:ID=“…”> • Dědičnost <rdfs:subClassOf rdf:resource=“…”>

  13. Příklad RDFS – třídy <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" > <rdfs:Class rdf:ID="Artist" /> <rdfs:Class rdf:ID="Painter"> <rdfs:subClassOf rdf:resource="#Artist"/> </rdfs:Class> </rdf:RDF>

  14. Popis RDF vlastností • Omezení vlastnosti na třídu • Doména vlastnosti • Značka <rdfs:domain rdf:resource=“…” /> • Omezení hodnoty vlastnosti • Rozsah vlastnosti • Značka <rdfs:range rdf:resource=“…” /> • Specializace vlastnosti • Značka <rdfs:subPropertyOf rdf:resource=“…”/>

  15. Příklad RDFS - vlastnosti <rdfs:Property rdf:ID="creates"> <rdfs:domain rdf:resource="#Artist" /> <rdfs:range rdf:resource="#Artifact" /> </rdfs:Property> <rdfs:Property rdf:ID="paints"> <rdfs:domain rdf:resource="#Painter" /> <rdfs:range rdf:resource="#Painting" /> <rdfs:subPropertyOf rdf:resource="creates" /> </rdfs:Property> <rdfs:Property rdf:ID="name"> <rdfs:domain rdf:resource="#Artist" /> <rdfs:range rdf:resource="http://www.w3.org/rdf-datatypes.xsd#String" /> </rdfs:Property>

  16. RQL • RDF Query Language • Dotazování se nad RDFdokumentem • Kombinované dotazy na schéma a data • Není standardem

  17. Jednoduché dotazy na schéma Class– pro všechny třídy Property– pro všechny vlastnosti subClassOf(Artist) – získání všech podtříd dané třídy subClassOf^(Artist) – pouze přímí potomci

  18. Jednoduché dotazy na data Artist – všechny instance dané třídy včetně potomků ^Artist – pouze přímé instance dané třídy creates – všechny vlastností daného typu, vrací dva sloupce (zdroj a hodnotu vlastnosti)

  19. Operátory • Standardní operátory nad množinami intersect, in, count • Relační operátory pro třídy a vlastnosti • Porovnání v rámci dědičnosti • Artist > Painter true • creates < paints false • Běžné relační operátory pro prim. typy

  20. select .. from .. where • Výběr dat podle podmínky • Syntaxe select proměnné from třídy nebo vlastnost where podmínka • Proměnné mohou reprezentovat zdroje, vlastnosti, jejich hodnoty i třídy

  21. Operátor {} • Proměnné uzavřené v { } • Syntaxe pro třídu Artist{X} • Syntaxe pro vlastnost {X}creates{Y} Př: select X, Y from {X}creates{Y}

  22. Operátor . • Řetězení vlastností a tříd pomocí . select X,Y from Artist{X}.creates{Y} • Join pomocí where podmínky select X,Y, R from {X}creates{Y}, {R}name{S} where X = R

  23. Omezení třídy proměnné • Konstrukce {X:třída} select X from {X:Painter}creates{Y} • Omezení proměnné na třídu – prefix $ select X,Y from {X:$Z}creates{Y} where $Z <= Painter

  24. Další omezení proměnné • Omezení proměnné na vlastnost • operátor @ select X,Y from {X:Artist}@P{Y} • Omezení proměnné na třídu nebo typ • operátor $$ • Kromě třídy zdroje může být např. String

  25. Další možnosti • Vnořené selecty • Operátory pro vlastnosti • range(@P) • domain(@P) • Operátor like • * zastupuje libovolné znaky

  26. Využití RDF • Webové portály a vyhledávače • Elektronické knihovny • E-obchody

More Related