SPARQL(SPARQL Protocol and RDF Query Language)

Samankaltaiset tiedostot
SPARQL. Timo Pitkänen. Seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

SPARQL-workshop. Sini Pessala Kirjastoverkkopäivät KANSALLISKIRJASTO - Kirjastoverkkopalvelut

SELECT-lauseen perusmuoto

Kyselyn yleisrakenne:

TIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences

9 RDF-kyselykielten perusteet: SPARQL

9 RDF-kyselykielten perusteet: SPARQL

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Harjoitustehtävä 1. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. SQL kysely

Relaation tyhjyyden testaaminen

SQL - STRUCTURED QUERY LANGUAGE

Koostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Metropolia ammattikorkeakoulu TU00BS : ICT-teknologiaosaaminen Tuntitehtävät 5 Pasi Ranne

Liitokset - haut useaan tauluun

CSE-A1200 Tietokannat

HELIA 1 (14) Outi Virkki Tiedonhallinta

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

TIETOKANTOJEN PERUSTEET MARKKU SUNI

select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta]

HELIA 1 (14) Outi Virkki Tiedonhallinta

Semanttisen webin käsikirja (luonnos)

KOOSTEFUNKTIOT. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

Paikannimirekisteri linkitettynä tietona

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien

Luento 12: XML ja metatieto

HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto. Opettajien nimet: Opiskelijoiden pääaineet

W3C-teknologiat ja yhteensopivuus

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine

2. Haet työntekijöiden tiedot etunimen mukaan nousevasti järjestettyinä. (ORDER BY) SELECT * FROM employees ORDER BY firstname ASC;

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto.

811120P Diskreetit rakenteet

Paikkatiedot ja Web-standardit

Esimerkki. pankkien talletus- ja lainatietokanta: Yhdiste, leikkaus, erotus ym. Leikkaus (intersect) Yhdiste (Union) Erotus (except/minus) Leikkaus

Yhdiste, leikkaus, erotus ym.

Media- ja kulttuuripalvelut. Eetu Mäkelä

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi

CSE-A1200 Tietokannat

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja

OUTER JOIN se vanha kunnon kaveri

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

XQuery tietokannan kyselykielenä

4.1 Yleistä SQL:stä 4.2 SQL-lauseet 4.3 DML: datan hallinta 4.4 DDL: rakenteen määrittäminen 4.5 DCL: valtuuttaminen 4.6 TxCL: tapahtumanhallinta

Logiikkapohjainen lähestymistapa RDF-tietolähteen esittämiseksi. Tuomas Räsänen

ASTERI-OHJELMIEN SQL-ERIKOISKURSSI LUENTOKALVOT

Opiskeluoikeuksien maaran tiedonkeruu

Ohjelmoinnin perusteet Y Python

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto

Graafitietokannan visualisointi- ja hallintatyökalu

Web-teknologiat. XML-datan kysely Topi Sarkkinen

standardit (W3C, ISO) Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu

Ontologiat merkitysten mallintamisessa: OWL. Eeva Ahonen

VINKKI: Katso Kentät Muistioon -painikkeella, mikä on taulukon nimen oikea kirjoitusasu.

HELIA TIKO-05 1 (15) ICT03D Tieto ja tiedon varastointi Räty, Virkki

Esimerkki uudelleenohjauksen teknisestä toteutuksesta

CS-A1150 Tietokannat CS-A1150 Tietokannat / 39

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Ohjelmoinnin peruskurssi Y1

HELIA SQL-harjoituksia 1(1) atk72d Versiopvm:

Hohde Consulting 2004

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Kuva 7.2 vastaustaulu harjoitukseen 7.2

18 LIITTYMÄT MUIHIN JÄRJESTELMIIN

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Yhteyshaku semanttisessa webissä

Paikkatiedon hallinta ja analyysi 3. Paikkatietomallit ja kyselyt

SQL:N PERUSTEET MARKKU SUNI

Tietokantojen suunnittelun perusteita. YYT-C3001 Ympäristötiedon hallinta Jussi Nikander, erikoistutkija, Luonnonvarakeskus

Helsingin yliopisto Tietojenkäsittelytieteen laitos (H.Laine) Tietokantojen perusteet. Liitteenä: Tiivistelmä SQL-syntaksista

Internet jolla on merkitystä

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Ohjelmoinnin perusteet Y Python

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Kirjoita kuhunkin erilliseen vastauspaperiin kurssin nimi, tentin päiväys, oma nimesi, syntymäaikasi ja nimikirjoituksesi.

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

Miten Linked Data aineistoja tuotetaan ja. Semanttisen laskennan tutkimusryhmä SeCo Aalto-yliopisto

HELIA 1 (13) Outi Virkki Tietokantasuunnittelu

Tapahtumankäsittely Semanttisen Webin Menetelmillä

Yksilöivät tunnisteet Tampereen kaupungilla. Marko Kauppi Paikkatietomarkkinat

6 Semanttinen Web 101

Kulttuurisampo. Eetu Mäkelä. Semantic Computing Research Group UNIVERSITY OF HELSINKI HELSINKI UNIVERSITY OF TECHNOLOGY

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi

6 Semanttinen Web 101

Tietokannat II -kurssin harjoitustyö

Internet Protocol version 6. IPv6

W3C, Web-teknologiat ja XML

6 Semanttinen Web 101

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

A. Huutokaupat ovat tärkeitä ainakin kolmesta syystä. 1. Valtava määrä taloudellisia transaktioita tapahtuu huutokauppojen välityksellä.

MAA02. A-osa. 1. Ratkaise. a) x 2 + 6x = 0 b) (x + 4)(x 4) = 9 a) 3x 6x

Ohjelmoinnin perusteet Y Python

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki

FUNKTIOITA. Sisällysluettelo

Transkriptio:

SPARQL

SPARQL(SPARQL Protocol and RDF Query Language) Suosituin RDF-kyselykieli Vrt. SQL & Relaatiotietokannat W3C-standardi v. 2008 Versio 1.1 standardi v.2013 Käytetään usein SPARQL-endpointien kautta. mm. DBpedia

RDF (Resource Definition Framework) Tieto esitetään/kuvataan kolmiosaisina lausumina kolmikoina (triples) Subjekti-predikaatti-objekti

Esimerkki:osoitekirja #filename: ex002.ttl @prefix ab: <http://learningsparql.com/ns/addressbook#>. ab:richard ab:hometel "(229) 276-5135". ab:richard ab:email "richard49@hotmail.com". ab:cindy ab:hometel "(245) 646-5488". ab:cindy ab:email "cindym@gmail.com". ab:craig ab:hometel "(194) 966-1505". ab:craig ab:email "craigellis@yahoo.com". ab:craig ab:email "c.ellis@usairwaysgroup.com".

SPARQL-kysely #filename: ex003.rq PREFIX ab: <http://learningsparql.com/ns/addressbook#> SELECT?craigEmail ab:craig ab:email?craigemail.

Graafimalli I #filename: ex010.rq PREFIX ab: <http://learningsparql.com/ns/addressbook#> SELECT?propertyName?propertyValue SPARQL-kyselyt perustuvat siis graafimalleihin(graph Pattern). Graafimalli on äärellinen joukko kolmikoita. ab:cindy?propertyname?propertyvalue. Graafimalli määrittää alijoukon RDFmallista Graafimallin muuttujat toimivat jokerikorttina.

Graafimalli II # filename: ex019.rq PREFIX a: <http://learningsparql.com/ns/addressbook#> SELECT?propertyName?propertyValue Graafimalli evaluoidaan järjestyksessä kolmikon muuttujien saamia arvoja käytetään seuraavan kolmikon vertailussa.?person a:firstname "Cindy".?person a:lastname "Marshall".?person?propertyName?propertyValue.

OPTIONAL # filename: ex057.rq PREFIX ab: <http://learningsparql.com/ns/addressbook#> OPTIONAL-lausekkeella kolmikoita voidaan asettaa valinnaisiksi. SELECT?first?last?workTel?s ab:firstname?first ; ab:lastname?last. OPTIONAL?s ab:worktel?worktel.

UNION # filename: ex101.rq PREFIX ab: <http://learningsparql.com/ns/addressbook#> SELECT?first?last?instrument?person ab:firstname?first ; ab:lastname?last ; ab:instrument "trumpet" ; ab:instrument?instrument. UNION?person ab:firstname?first ; ab:lastname?last ; ab:instrument "sax" ; ab:instrument?instrument. UNION-lausekkeelle voidaan yhdistää useampia graafimalleja Tuloksista luodaan yhdiste

Kyselyn Tulosten Rajaaminen SPARQL-kieli tarjoaa useita työkaluja kyselyn tulosjoukon rajaamiseen.

FILTER # filename: ex105.rq PREFIX dm: <http://learningsparql.com/ns/demo#> SELECT?s?cost Suodattaa kyselyn tulosjoukosta tuloksia, jotka eivät täytä lausekkeessa annettuja ehtoja. Useita tapoja filtteröidä: Funktiot: Regex(), isuri() vetailuoperaattorit?s dm:cost?cost. FILTER (?cost < 10)

FILTER EXISTS PREFIX rdf: <http://www.w3.org/1999/02/22-rdfsyntax-ns#> FILTER EXISTS tarkistaa löytyykö kolmikko PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT?person?person rdf:type foaf:person. FILTER EXISTS?person foaf:name?name

FILTER NOT EXISTS PREFIX rdf: <http://www.w3.org/1999/02/22-rdfsyntax-ns#> FILTER EXISTS tarkistaa puuttuuko kolmikko PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT?person?person rdf:type foaf:person. FILTER NOT EXISTS?person foaf:name?name

MINUS # filename: ex068.rq PREFIX ab: <http://learningsparql.com/ns/add ressbook#> SELECT?first?last?s ab:firstname?first ; ab:lastname?last. MINUS?s ab:worktel?worknum MINUS-lausekkeella voidaan etsiä sellaisia resursseja, joilta puuttuu jokin ominaisuus.

LIMIT PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT?name Rajoittaa vastausten määrän?x foaf:name?name LIMIT 20

OFFSET PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT?name Määrittää ensimmäisen tuloksen indeksin Voidaan yhdistää LIMITin kanssa?x foaf:name?name ORDER BY?name LIMIT 5 OFFSET 10

DISTINCT PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT DISTINCT?name?x foaf:name?name Poistaa toistuvat tulokset Evaluoidaan viimeisenä

ORDER BY PREFIX : <http://example.org/ns#> PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT?name ORDER BY määrää vastausjoukon järestyksen ASC: nouseva DESC: laskeva?x foaf:name?name ; :empid?emp ORDER BY DESC(?emp)

KOOSTEFUNKTIOT Koostefunktioilla tuotetaan laskennallista dataa kyselyn tuloksista. Versiossa v.1.1 Koostefunktiot: COUNT: laskee arvojen lukumäärän. SUM: laskee arvojen summan. MIN: laskee pienimmän arvon. MAX: laskee suurimman arvon. AVG: laskee arvojen keskiarvon. PREFIX : <http://books.example/> SELECT (SUM(?lprice) AS?totalPrice)?org :affiliates?auth.?auth :writesbook?book.?book :price?lprice.

GROUP BY PREFIX : <http://books.example/> SELECT (SUM(?lprice) AS?totalPrice)?org :affiliates?auth.?auth :writesbook?book.?book :price?lprice. Ryhmittelee koostefunktioiden tulokset GROUP BY?org

HAVING PREFIX : <http://books.example/> SELECT (SUM(?lprice) AS?totalPrice) Kuten FILTER, mutta ryhmille?org :affiliates?auth.?auth :writesbook?book.?book :price?lprice. GROUP BY?org HAVING(SUM(?lprice) < 100)

ALIKYSELYT # filename: ex137.rq PREFIX ab: <http://learningsparql.com/ns/addressbook#> SELECT?lastName?courseName SELECT?lastName?student ab:lastname?lastname. SELECT?courseName?course ab:coursetitle?coursename. Alikyselyt ovat kyselyitä toisten kyselyiden sisällä. Käytettään hajoita ja hallitse -periaattella. alikyselyt evaluoidaan ennen uloimpia kyselyitä alikyselyn käyttämät muuttujat ovat käytössä uloimmille kyselyille,