SemanticWeb - RDF/S

Semantic Web GEIST

3b - RDF/S in use Outline Introduction Previous lecture... This lecture Getting it GEIST Research Group Linked Data Project http://geist.agh.edu.pl Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

AGH University of Science and Technology, POLAND RDF/S Tools

The End Using slides according to license from: P. Hitzler  Knowledge Representation for the Semantic Web course based on P. Hitzler, M. Krötzsch, S. Rudolph  Foundations of Semantic Web Technologies e-Lite: 01LHVIU - Semantic Web: Technologies, Tools, Applications

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 1 / 131 Outline

SemanticWeb - Outline RDF/S

GEIST

Outline

Introduction Previous lecture... 1 Introduction This lecture Getting it Linked Data 2 Getting it Project Converting data into RDF RDF and RDB 3 Querying it Querying it Querying triples SPARQL by examples 4 Storing it Exercises Storing it

RDF/S Tools

5 RDF/S Tools The End

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 2 / 131 Introduction Previous lecture...

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 3 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST

Common language for describing Outline Introduction Previous lecture... resources This lecture Getting it Linked Data Author = Project L. Farinetti Converting data into RDF RDF and RDB Querying it „ Diagram: Querying triples SPARQL by hasAuthor examples URI L. Farinetti Exercises Storing it

RDF/S Tools „ Simple RDF assertion (triple): The End triple (hasAuthor, URI, L.Farinetti)

F. Corno, L. Farinetti - Politecnico di Torino 27

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 4 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST RDF triples Outline

Introduction Previous lecture... • An RDF triple consists of This lecture • Getting it Linked Data Project Converting data into RDF Subject Predicate Object RDF and RDB Querying it (borrowed from linguistics) Querying triples SPARQL by examples • allowed are: Exercises Storing it – In the subject : URIs and empty nodes RDF/S Tools – In the predicate: URIs (usually called properties) The End – In the object: URIs and empty nodes and literals

• Note that the graph can be reconstructed from the list of triples.

KR4SW – Winter 2010 – Pascal Hitzler 13

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 5 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST

Example Outline Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 18

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 6 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST

“Triple” or “Turtle” notation Outline Introduction Previous lecture... This lecture Getting it Linked Data "Eric Miller" . Project Converting data into RDF RDF and RDB . Querying it Querying triples SPARQL by examples "Dr." . Exercises Storing it RDF/S Tools . The End

F. Corno, L. Farinetti - Politecnico di Torino 29

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 7 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST

RDF/XML Syntax Outline Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data RDF and RDB Querying it Querying triples Eric Miller SPARQL by examples Dr. Exercises Storing it

RDF/S Tools The End

F. Corno, L. Farinetti - Politecnico di Torino 23

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 8 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST

RDF/XML Syntax Outline Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data RDF and RDB Querying it Querying triples Eric Miller SPARQL by examples Dr. Exercises Storing it

RDF/S Tools The End Subject Predicate Object

F. Corno, L. Farinetti - Politecnico di Torino 25

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 9 / 131 Introduction Previous lecture...

SemanticWeb - RDF/S

GEIST A reification puzzle Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

You know that story? It’s in the old testament :)

KR4SW – Winter 2010 – Pascal Hitzler 28

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 10 / 131 Introduction Previous lecture...

SemanticWeb - RDF and RDFS (RDF Schema) RDF/S

GEIST

RDFS extends RDF with schema vocabulary such as: Outline

Class, Property Introduction subClassOf, subPropertyOf Previous lecture... This lecture range, domain Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 11 / 131 Introduction This lecture

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 12 / 131 Introduction This lecture

SemanticWeb - RDF/S: abstract data representation layer RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 13 / 131 Getting it

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 14 / 131 Getting it

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 31

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 15 / 131 Getting it Linked Data Project

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 16 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... The Linked Data Project This lecture Getting it Linked Data „ Project A fundamental prerequisite of the Semantic Web Converting data into RDF is the existence of largggye amounts of meaningfully RDF and RDB interlinked RDF data on the Web. Querying it Querying triples „ Linked Data is about using the Web to connect SPARQL by examples related data that wasn’t previously linked, or Exercises using the Web to lower the barriers to linking Storing it da ta curren tly lin ke d us ing o ther me tho ds RDF/S Tools The End „ It is a recommended best practice for exposing, shiharing, an d connec ting p ieces o fdtf data, information, and knowledge on the Semantic Web using URIs and RDF

F. Corno, L. Farinetti - Politecnico di Torino 37

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 17 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... The Linked Data Project This lecture Getting it Linked Data „ Community effort to make various open datasets Project Converting data available on the Web as RDF and to set RDF into RDF RDF and RDB links between data items from different datasets Querying it Querying triples „ The datasets are ppgublished according to the SPARQL by examples Linked Data principles and can therefore be Exercises crawled byyg Semantic Web search engines and Storing it RDF/S Tools

navigated using Semantic Web browsers The End „ Supported by W3C „ Began early 2007 http://linkeddata.org/home

F. Corno, L. Farinetti - Politecnico di Torino 38

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 18 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Linked Data example This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 41

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 19 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Linked Data example This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 42

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 20 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Why publish Linked Data? This lecture Getting it Linked Data Project Converting data „ Ease of discovery into RDF RDF and RDB „ Ease of consumption Querying it Querying triples SPARQL by Standards-based data sharing examples Exercises „ Reduced redundancy Storing it RDF/S Tools „ Added value The End Build ecosystems around your data/content

F. Corno, L. Farinetti - Politecnico di Torino 43

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 21 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Lin ke d Open Da ta c lou d Previous lecture... May 2007 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 44

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 22 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... DBpedia This lecture Getting it Linked Data Project Converting data „ DBpedia is a community effort to extract into RDF RDF and RDB structured information from Wikipedia Querying it Querying triples SPARQL by and to make this information available examples on the Web Exercises Storing it „ DBpedia allows to ask sophisticated RDF/S Tools queries against Wikipedia, and to link The End other data sets on the Web to Wikipedia data

F. Corno, L. Farinetti - Politecnico di Torino 45

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 23 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... GeoNames This lecture Getting it Linked Data Project Converting data „ GeoNames is a geographical database into RDF RDF and RDB that contains over eight million Querying it Querying triples SPARQL by gggpeographical names examples Exercises „ Available for download free of charge Storing it under a creative commons attribution RDF/S Tools license The End

F. Corno, L. Farinetti - Politecnico di Torino 46

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 24 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Main contributors This lecture Getting it Linked Data Project „ DBLP Computer science bibliography „ Project Gutenberg Literary works in Converting data Richard Cyganiak, Chris Bizer (FU the public domain into RDF Berlin) Piet Hensel , Hans Butschalowsky (FU RDF and RDB „ DBpedia Structured information from Berlin) Querying it Wikipedia „ Revyu Community reviews about Querying triples Universität Leipzig, FU Berlin, anything OpenLink Tom Heath,,(p Enrico Motta (Open SPARQL by examples „ University) DBtune, Jamendo Creative Exercises Commons music repositories „ RDF Book Mashup Books from the Yves Raimond (University of London) Amazon API Storing it „ Geonames World-wide gggpeographical Tobias Gauß, Chris Bizer (FU Berlin) RDF/S Tools database „ US Census Data Statistical Bernard Vatant (Mondeca), Marc Wick information about the U.S. The End (Geonames) Josh Tauberer (University of „ Musicbrainz Music and artist Pennsylvania), OpenLink database „ World Factbook Country statistics, Frederick Giasson, Kingsley Idehen compiled by CIA (Zitgist) Piet Hensel, Hans Butschalowsky (FU Berlin)

F. Corno, L. Farinetti - Politecnico di Torino 47

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 25 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... July 2007 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 48

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 26 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline March 2009 Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 53

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 27 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

July 2009 Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 54

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 28 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

July 2009 Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

Social The End Science/Publishing/Libraries Medicine/Biology Geoggyraphy Music Dictionary/EnciclopediaF. Corno, L. Farinetti - Politecnico di Torino 55

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 29 / 131 Getting it Linked Data Project

SemanticWeb - Linked Open Data 2014 RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

Picture from: http://lod-cloud.net/versions/2014-08-30/lod-cloud.png

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 30 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Statistics on datasets Previous lecture... This lecture „ http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpen Getting it Linked Data Data/DataSets/Statistics Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 56

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 31 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Sta tis tics on li n ks be tween da tase ts Previous lecture... This lecture „ http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpen Getting it Linked Data Data/DataSets/LinkStatistics Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 57

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 32 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Linked Data shopping list This lecture Getting it Linked Data Project Converting data „ List of sites/datasets that the “community” into RDF RDF and RDB would like to see published as Linked Data Querying it Querying triples SPARQL by This list may form the basis for some examples campaign/action to encourage these data Exercises Storing it

publishers to embrace Linked Data RDF/S Tools

The End

„ http://community.linkeddata .org/MediaWiki/index .php?Sh oppingList

F. Corno, L. Farinetti - Politecnico di Torino 58

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 33 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction The Linked Data principles Previous lecture... This lecture (“expp)ectations of behavior”) Getting it Linked Data Project Converting data „ The Semantic Web isn't just about putting into RDF RDF and RDB data on the web. It is about making links, Querying it Querying triples SPARQL by so that a person or machine can explore examples the web of data. With linked data, when Exercises Storing it you have some of it, you can find other, RDF/S Tools related, data The End „ It is the unexpected re-use of information which is the value added by the web (Tim Berners-Lee) F. Corno, L. Farinetti - Politecnico di Torino 59

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 34 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction The Linked Data principles Previous lecture... This lecture (“expp)ectations of behavior”) Getting it Linked Data Project Converting data „ Use URIs as names for things into RDF RDF and RDB Anything, not just documents Querying it Querying triples SPARQL by You are not your homepage examples Exercises Information resources and non-information Storing it resources RDF/S Tools The End „ Use HTTP URIs Globally unique names, distributed ownership Allows people to look up those names

F. Corno, L. Farinetti - Politecnico di Torino 60

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 35 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction The Linked Data principles Previous lecture... This lecture (“expp)ectations of behavior”) Getting it Linked Data Project Converting data „ Provide useful information in RDF into RDF RDF and RDB When someone looks up a URI Querying it Querying triples SPARQL by „ Include RDF links to other URIs examples Exercises To enable discovery of related information Storing it RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 61

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 36 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Link to other datasets This lecture Getting it Linked Data Project Converting data „ Popular predicates for linking into RDF RDF and RDB owlAl:sameAs Querying it Querying triples foaf:homepage SPARQL by examples foaf:topic Exercises Storing it foaf:based_near RDF/S Tools

foaf:maker/foaf:made The End foaf:page foaf:primaryTopic rdfs:seeAlso

F. Corno, L. Farinetti - Politecnico di Torino 62

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 37 / 131 Getting it Linked Data Project

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Link to other Data Sets This lecture Getting it Linked Data (Wikicompany is a free content Project licensed worldwide business Converting data directory that anyone can edit) into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

(flickr wrappr extends DBpedia with RDF links to photos posted on flickr)

F. Corno, L. Farinetti - Politecnico di Torino 63

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 38 / 131 Getting it Converting data into RDF

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 39 / 131 Getting it Converting data into RDF

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Tools for conversion This lecture Getting it Linked Data „ GRDDL (Gleaning Resource Descriptions from Dialects of Project Converting data Languages) into RDF RDF and RDB th W3C Recommendation (Sep 11 , 2007) Querying it Enables users to obtain RDF triples out of XML documents Querying triples SPARQL by „ RDFa (Resource D escr ip tion Framewor k-in-attrib ut es) examples Exercises W3C Recommendation (October, 2008) Storing it

Set of extensions to XHTML that allows to annotate XHTML RDF/S Tools

markup with semantics The End Uses attributes from XHTML's meta and link elements, and generalizes th em so th a t they are usa ble on a ll e lemen ts A simple mapping is defined so that RDF triples may be extracted

F. Corno, L. Farinetti - Politecnico di Torino 32

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 40 / 131 Getting it Converting data into RDF

SemanticWeb - RDF/S

GEIST

Outline

XHTML + RDFa example Introduction Previous lecture... Getting it RDF and RDB John's Home Page Querying it Querying triples SPARQL by examples Exercises Storing it

John's Home Page

My name is John D and I like RDF/S Tools Einstürzende Neubauten.

My favorite book is the inspiring Weaving the Web by Tim Berners-Lee

F. Corno, L. Farinetti - Politecnico di Torino 33

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 41 / 131 Getting it Converting data into RDF

SemanticWeb - RDF/S

GEIST

Outline

Introduction Automatic conversion to RDF/XML Previous lecture... This lecture Getting it into RDF RDF and RDB Jonathan Doe Querying it John D Querying triples SPARQL by examples Exercises Storing it Tim Berners -Lee RDF/S Tools Weaving the Web The End

F. Corno, L. Farinetti - Politecnico di Torino 34

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 42 / 131 Getting it RDF and RDB

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 43 / 131 Getting it RDF and RDB

SemanticWeb - Semantic Web and RDB RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Semantic Web vs. Relational Databases Converting data into RDF a record is an RDF node; RDF and RDB Querying it the eld (column) name is RDF propertyType; and Querying triples SPARQL by examples the record eld (table cell) is a value. Exercises (T.Berners-Lee: Design Issues, 1999) Storing it RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 44 / 131 Getting it RDF and RDB

SemanticWeb - RDF/S

GEIST

Outline Information in triples Introduction Previous lecture... http://xmlns.com/foaf/0.1/workplaceHomepage This lecture Getting it Linked Data http://directory.com/people#FulvioCorno Project Converting data http://www.polito.it/ into RDF RDF and RDB RDF Querying it CompanyHomePage Querying triples SPARQL by PersonID Homepage examples Exercises FulvioCorno http://www.polito.it/ Relational database Storing it

RDF/S Tools

The End HasCompanyHomePage( First order „FulvioCorno‟, logic predicate „http://www.polito.it/‟) ;

F. Corno, L. Farinetti - Politecnico di Torino 15

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 45 / 131 Getting it RDF and RDB

SemanticWeb - RDB2RDF Principle RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 46 / 131 Getting it RDF and RDB

SemanticWeb - Exporting data from RDB to RDF RDF/S

GEIST

Outline

D2R Server  provides a mapping from a SQL server (tested Introduction with several brands), producing both linked virtual RDF data Previous lecture... This lecture les and a SPARQL service. Getting it Linked Data dbview.py  provides a mapping from a SQL server (tested Project Converting data with mySQL), producing linked virtual RDF data les. into RDF RDF and RDB OpenLink Virtuoso's Metaschema Language  enables the Querying it creation of RDF Instance Data for associated RDF Ontologies Querying triples SPARQL by examples via RDF VIEWs of ODBC, JDBC, ADO.NET, and OLE-DB Exercises accessible SQL Data. Storing it Triplify  a plugin for Web applications, which reveals the RDF/S Tools semantic structures encoded in relational databases by making The End database content available as RDF, JSON or Linked Data. RDBToOnto  a conversion tool that can produce accurate RDF/OWL models from various types of relational databases and Excel spreadsheets.

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 47 / 131 Getting it RDF and RDB

SemanticWeb - RDB2RDF Working Group RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data W3C Working Group (2007) Project Converting data into RDF Goal: standarize existing RDB2RDF mapping approaches RDF and RDB Approach: Querying it Querying triples SPARQL by direct mapping, or examples mapping defnition in RDB2RDF Mapping Language (R2RML) Exercises R2RML: W3C Recommendation 27 September 2012  Storing it http://www.w3.org/TR/r2rml/ RDF/S Tools The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 48 / 131 Getting it RDF and RDB

SemanticWeb - RDB2RDF Direct Mapping RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 49 / 131 Getting it RDF and RDB

SemanticWeb - RDB2RDF R2RML Mapping RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 50 / 131 Getting it RDF and RDB

SemanticWeb - Resources RDF/S

GEIST Relational Databases on the Semantic Web, Tim Berners-Lee, Outline

Design Issue Note: Introduction http://www.w3.org/DesignIssues/RDB-RDF.html Previous lecture... This lecture Linked Data Aspects of R2RML: http://www.w3.org/2001/ Getting it Linked Data sw/rdb2rdf//LinkedDataAspects Project Converting data Presentation of several existing RDB2RDF implementations: into RDF http://www.w3.org/2001/sw/rdb2rdf/wiki/Initial_ RDF and RDB Querying it Round_of_Presentations Querying triples SPARQL by From Relational Databases to the Semantic Web: New W3C examples Standards and Directions (videos): Exercises Storing it http://www.vimeo.com/13998744, RDF/S Tools

http://www.vimeo.com/13984398 The End Relational Database and the Semantic Web: http://www.semanticuniverse.com/ blogs-relational-database-and-semantic-web.html My rst mapping from RDB to RDF using R2RML: http://ivan-herman.name/2010/11/02/ my-first-mapping-from-rdb-to-rdf-using-r2rml/

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 51 / 131 Querying it Querying triples

SemanticWeb - Outline RDF/S

GEIST

Outline 1 Introduction Introduction Previous lecture... This lecture Getting it 2 Getting it Linked Data Project Converting data into RDF 3 Querying it RDF and RDB Querying triples Querying it Querying triples SPARQL by examples SPARQL by examples Exercises Exercises Storing it

RDF/S Tools

4 Storing it The End

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 52 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL This lecture Getting it Linked Data Project th Converting data „ W3C Recommendation: January 15 , 2008 into RDF RDF and RDB „ SPARQL queries RDF graphs Querying it Querying triples An RDF graph is a set of triples SPARQL by examples „ SPARQL can be used to express queries across Exercises Storing it

diverse data sources, whether the data is stored RDF/S Tools

natively as RDF or viewed as RDF via The End middleware

F. Corno, L. Farinetti - Politecnico di Torino 5

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 53 / 131 Querying it Querying triples

SemanticWeb - Query language for triples RDF/S

GEIST

Outline

Introduction SPARQLProtocolandRDFQueryLanguage Previous lecture... This lecture Designed by the W3C RDF Data Access Working Group. Getting it Linked Data No inference. Project Converting data Matching graph patterns: into RDF RDF and RDB combination of triple patterns: Querying it ?x agh:taughtBy ?y Querying triples SPARQL by ?x, ?y  variables examples Exercises Storing it (subject, predicate, object) RDF/S Tools

The End

is taught by http://agh.edu.pl/£PIW Antoni Lig¦za

Resource Property type Property value

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 54 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL This lecture Getting it Linked Data Project Converting data „ Uses SQL-like syntax into RDF RDF and RDB Prefix mechanism to abbreviate URIs Querying it Querying triples SPARQL by PREFIX dc: examples SELECT ?title Exercises WHERE { dc:title Storing it

?title } RDF/S Tools

The End Variables to be returned Query pattern (list of triple patterns)

FROM Name of the graph

F. Corno, L. Farinetti - Politecnico di Torino 19

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 55 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SELECT This lecture Getting it Linked Data Project Converting data „ Variables selection into RDF RDF and RDB ?x „ Variables: Querying it ?string ?title Querying triples ?name SPARQL by examples Exercises „ Syntax: SELECT var ,…,var Storing it 1 n RDF/S Tools

The End SELECT ?name SELECT ?x,?title

F. Corno, L. Farinetti - Politecnico di Torino 20

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 56 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... WHERE This lecture Getting it Linked Data „ Graph patterns to match Project Converting data into RDF „ Set of triples RDF and RDB Querying it { (subject predicate object .)* } Querying triples SPARQL by „ Subject: URI, QName , Blank node , Literal , examples Exercises Variable Storing it „ Predi ca te: URI, QName, Bl ank nod e, V ari abl e RDF/S Tools The End „ Object: URI, QName, Blank node, Literal, Variable

F. Corno, L. Farinetti - Politecnico di Torino 21

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 57 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Graph patterns This lecture Getting it Linked Data Project Converting data into RDF „ The pattern contains unbound symbols RDF and RDB Querying it „ By binding the symbols (if possible), Querying triples SPARQL by subgraphs of the RDF graph are selected examples Exercises „ If there is such a selection, the query Storing it RDF/S Tools

returns the bound resources The End

F. Corno, L. Farinetti - Politecnico di Torino 22

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 58 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Graph patterns This lecture Getting it Linked Data Project Converting data into RDF „ E.gg(.: (sub ject,? p,?o ) RDF and RDB Querying it ?p and ?o are “unknowns” Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 23

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 59 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Graph patterns This lecture SELECT ?p ?o Getting it WHERE {subject ?p ?o} Linked Data Project Converting data into RDF RDF and RDB „ The tri pl e ts i n WHERE dfidefine the grap h pa ttern, Querying it Querying triples with ?p and ?o “unbound” symbols SPARQL by examples „ The query returns a list of matching p,o pairs Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 24

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 60 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 1 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises SELECT ?cat ?val Storing it WHERE { ?x r df:va lue ?va l. RDF/S Tools ?x category ?cat } The End

„ Returns:

[["Total Members",100],["Total Members",200],…, ["Full Members",10],…]

F. Corno, L. Farinetti - Politecnico di Torino 25

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 61 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 2 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises SELECT ?cat ?val Storing it

WHERE { ?x rdf:value ?val. RDF/S Tools ?x category ?cat. FILTER(?val>=200). } The End

„ Returns:

[[" Total Members ",200],… ]

F. Corno, L. Farinetti - Politecnico di Torino 26

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 62 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 3 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises SELECT ?cat ?val ?uri Storing it WHERE { ?x rdf:value ?val. RDF/S Tools ?x category ?cat. ?al contains ?x. The End ?al linkTo ?uri }

„ Returns: [[" Total Members",100,http:// ...)] ,…, ]

F. Corno, L. Farinetti - Politecnico di Torino 27

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 63 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 4 This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises SELECT ?cat ?val ?uri Storing it WHERE { ?x rdf:value ?val. ?x category ?cat. RDF/S Tools OPTIONAL ?al contains ?x. The End ?al linkTo ?uri }

„ Returns: [["Total Members",,,p100,http://... ],,], …, ["Full Members",20, ],…,]

F. Corno, L. Farinetti - Politecnico di Torino 28

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 64 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Other SPARQL Features This lecture Getting it Linked Data Project Converting data „ Limit the number of returned results into RDF RDF and RDB „ Remove duplicates, sort them,… Querying it Querying triples „ SPARQL by Sppyecify several data sources (via URI-s) within examples the query (essentially, a merge) Exercises Storing it

„ Construct a graph combining a separate pattern RDF/S Tools and the query results The End „ Use datatypes and/or language tags when matching a pattern

F. Corno, L. Farinetti - Politecnico di Torino 29

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 65 / 131 Querying it Querying triples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL use in practice This lecture Getting it Linked Data Project Converting data „ Locally, i.e., bound to a programming into RDF RDF and RDB environmen ts like Jena Querying it Querying triples Jena is a Java framework for building Semantic Web SPARQL by examples applica tions; prov ides an env ironmen t for RDF, RDFS Exercises and OWL, SPARQL and includes a rule-based Storing it

inference engine RDF/S Tools „ Remotely, e.g., over the network or into a The End database

F. Corno, L. Farinetti - Politecnico di Torino 30

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 66 / 131 Querying it SPARQL by examples

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 67 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query structure This lecture Getting it Linked Data Project Converting data „ A SPARQL query includes, in order into RDF RDF and RDB Prefix declarations, for abbreviating URIs Querying it Querying triples A result clause, identifying what information to SPARQL by examples return from the query Exercises The query pattern, specifying what to query Storing it for in the underlying dataset RDF/S Tools The End Query modifiers: slicing, ordering, and otherwise rearranging query results

F. Corno, L. Farinetti - Politecnico di Torino 72

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 68 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query structure This lecture Getting it Linked Data Project Converting data „ A SPARQL query includes, in order into RDF RDF and RDB Querying it # prefix declarations Querying triples PREFIX foo: SPARQL by ... examples Exercises # result clause SELECT ... Storing it #tt# query pattern RDF/S Tools WHERE { The End ... } # query modifiers ORDER BY ...

F. Corno, L. Farinetti - Politecnico di Torino 73

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 69 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Dataset: Friend of a Friend (FOAF) This lecture Getting it Linked Data „ FOAF is a standard RDF vocabulary for Project Converting data describing people and relationships into RDF RDF and RDB „ Tim Berners-Lee's FOAF information available Querying it Querying triples at httppgp://www.w3.org/People/Berners-Lee/card SPARQL by examples Exercises @prefix card: . Storing it @prefix foaf: . RDF/S Tools card:i foaf:name "Timothy Berners-Lee" . The End foaf:name "Henry Story" . foaf:name "Lee Feigenbaum" . card:amy foaf:name "Amy van der Hiel" . ...

F. Corno, L. Farinetti - Politecnico di Torino 74

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 70 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 1 – simple triple pattern This lecture Getting it Linked Data „ Project In the graph http://www.w3.org/People/Berners- Converting data into RDF Lee/card, find all subjj(p)ects (?person) and ob jects RDF and RDB (?name) linked with the foaf:name predicate. Querying it Querying triples „ Then return all the values of ?name. SPARQL by examples „ In other words, find all names mentioned in Tim Exercises Berners-Lee’s FOAF file Storing it RDF/S Tools

The End PREFIX foaf: SELECT ?name WHERE { ?person foaf:name ?name . }

F. Corno, L. Farinetti - Politecnico di Torino 75

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 71 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL en dpo ints This lecture Getting it Linked Data „ Accept queries and returns results via HTTP Project Converting data Generic endpoints queries any Web-accessible RDF data into RDF RDF and RDB Specific endpoints are hardwired to query against Querying it particular datasets Querying triples SPARQL by examples „ The results of SPARQL queries can be returned in a Exercises variety of formats: Storing it XML, JSON, RDF, HTML RDF/S Tools The End JSON (JavaScript Object Notation): lightweight computer data interchange format; text -based, human-readable format for representing simple data structures and associative arrays

F. Corno, L. Farinetti - Politecnico di Torino 76

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 72 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL endpoints This lecture Getting it Linked Data „ Project This query is for an arbitrary bit of RDF data Converting data into RDF (Tim Berners-Lee's FOAF file) RDF and RDB „ => generic endpoint to run it Querying it Querying triples SPARQL by „ Possible choices examples SPARQLer - General purpose processor - sparql.org Exercises Storing it „ http://sparql.org/sparql.html RDF/S Tools OpenLink's Virtuoso (Make sure to choose "Retrieve The End remote RDF data for all missing source graphs") „ http://bbc.openlinksw .com/sparql/ Redland’s Rasqal „ http://librdf.org/rasqal/

F. Corno, L. Farinetti - Politecnico di Torino 77

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 73 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQLer This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL query SPARQL by examples Exercises Dataset Storing it RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 78

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 74 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction OpenLink’ s Virtuoso Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Dataset Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

SPARQL query

F. Corno, L. Farinetti - Politecnico di Torino 79

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 75 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 1 - simple triple pattern This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB PREFIX foaf: Querying it Querying triples SELECT ?name SPARQL by examples WHERE { Exercises ?person foaf:name ?name . Storing it } RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 80

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 76 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... El2Example 2 – multip le tr ip le pa ttern This lecture Getting it Linked Data „ Find all people in Tim Berners-Lee’s FOAF file that have Project Converting data names and email addresses into RDF RDF and RDB „ Re turn each person ’s URI, name, an d ema il a ddress Querying it Querying triples SPARQL by „ Multiple triple patterns retrieve multiple properties about examples a particular resource Exercises Storing it „ SELECT * selects all variables mentioned in the qqyuery RDF/S Tools

PREFIX foaf: The End SELECT * WHERE { ?person foaf:name ?name . ?person foaf:mbox ?email . } F. Corno, L. Farinetti - Politecnico di Torino 81

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 77 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 2 - multiple triple pattern This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 82

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 78 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... El3Example 3 – titraversing a graph This lecture Getting it Linked Data Project „ Find the homepage of anyone known by Converting data into RDF Tim Berners-Lee RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 83

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 79 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 3 – traversing a graph This lecture Getting it Linked Data PREFIX foaf: Project PREFIX card: Converting data into RDF SELECT ?homepage RDF and RDB FROM Querying it WHERE { Querying triples card:i foaf:knows ?known . SPARQL by examples ?known foaf:homepage ?homepage . Exercises } Storing it „ The FROM keyword spec ifies the targe t graph in RDF/S Tools the query The End „ By using ?known as an object of one triple and the subject of another, it is possible to traverse multiple links in the graph

F. Corno, L. Farinetti - Politecnico di Torino 84

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 80 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... El4Example 4 – expliloring DBPdiDBPedia This lecture Getting it Linked Data Project „ Find 15 example concepts in the DBPedia Converting data into RDF dataset RDF and RDB Querying it Querying triples SELECT DISTINCT ?concept SPARQL by WHERE { examples ?s a ?concept . Exercises } LIMIT 15 Storing it RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 86

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 81 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... El4Example 4 – expliloring DBPdiDBPedia This lecture Getting it „ Linked Data LIMIT i s a solu tion mo difier tha t li m its the Project Converting data number of rows returned from a query into RDF RDF and RDB „ SPARQL has t wo other sol ution modifiers Querying it ORDER BY for sorting query solutions on the value of Querying triples SPARQL by one or more variables examples Exercises OFFSET, used in conjunction with LIMIT and ORDER Storing it BY to take a slice of a sorted solution set ((ge.g. for paging) RDF/S Tools The End „ The SPARQL keyword a is a shortcut for the common predicate rdf:type (class of a resource) „ The DISTINCT modifier eliminates duplicate rows from the query results

F. Corno, L. Farinetti - Politecnico di Torino 87

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 82 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Example 5 – basic SPARQL filters Previous lecture... This lecture Getting it „ Find all landlocked countries with a population greater Linked Data Project than 15 million Converting data into RDF PREFIX rdfs: RDF and RDB PREFIX type: Querying it PREFIX prop: Querying triples SELECT ?country_name ?population SPARQL by WHERE { examples ?country a type:LandlockedCountries ; Exercises rdfs:label ?country_name ; Storing it ppprop:pppopulationEstimate ?pppopulation . RDF/S Tools FILTER (?population > 15000000) . } The End „ FILTER constraints use boolean conditions to filter out unwanted query results „ A semicolon (;) can be used to separate two triple patterns that share the same subject

F. Corno, L. Farinetti - Politecnico di Torino 88

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 83 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL filters This lecture Getting it Linked Data Project Converting data „ Conditions on literal values into RDF RDF and RDB „ Syntax Querying it Querying triples FILTER expression SPARQL by examples Exercises „ Examples Storing it RDF/S Tools

The End FILTER (?age > 30) FILTER is IRI(?x ) FILTER !BOUND(?y)

F. Corno, L. Farinetti - Politecnico di Torino 89

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 84 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL filters This lecture Getting it Linked Data Project Converting data „ BOUND(var) into RDF RDF and RDB tifibditrue if var is bound in query answer Querying it false, otherwise Querying triples SPARQL by !BOUND(var) enables negation-as-failure examples Exercises „ Testing types Storing it isIRI(A):Aisan: A is an “Internationalized Resource RDF/S Tools Identifier” The End iss()BLANK(A): A is a blank node isLITERAL(A): A is a literal

F. Corno, L. Farinetti - Politecnico di Torino 90

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 85 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL filters This lecture Getting it Linked Data A = B Project „ Comparison between Converting data A != B into RDF RDF terms RDF and RDB A = B Querying it A != B Querying triples A <= B SPARQL by „ Comparison between examples A >= B Exercises Numeric and Date types A < B Storing it A > B RDF/S Tools „ Boolean AND/OR A && B The End A || B

A + B „ Basic arithmetic A - B A * B A / B F. Corno, L. Farinetti - Politecnico di Torino 91

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 86 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction El5Example 5 – bas ic SPARQL filters Previous lecture... This lecture Getting it Linked Data Project Converting data „ Note all the translated into RDF duplicates in the results RDF and RDB Querying it „ How can we deal with Querying triples SPARQL by that? examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 92

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 87 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 6 – SPARQL filters This lecture Getting it Linked Data „ Find me all landlocked countries with a Project Converting data into RDF pppopulation greater than 15 million (revisited ), RDF and RDB with the highest population country first Querying it Querying triples SPARQL by PREFIX type: examples PREFIX prop: Exercises SELECT ?country_name ?population Storing it WHERE { RDF/S Tools ?country a type:LandlockedCountries ; rdfs:label ?country_name ; The End prop:populationEstimate ?population . FILTER (?population > 15000000 && langMatches(lang(?country_name), "EN")) . } ORDER BY DESC(?population)

F. Corno, L. Farinetti - Politecnico di Torino 93

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 88 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 6 – SPARQL filters This lecture Getting it Linked Data Project Converting data „ lang extracts a literal’s language tag, if any into RDF RDF and RDB „ lMthlangMatches mathtches a l anguage tag agai ns t a Querying it language range Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 94

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 89 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Dataset: Jamendo This lecture Getting it Linked Data Project Converting data „ Jamendo is a community collection of music all into RDF freely licensed under Creative Commons RDF and RDB Querying it licenses Querying triples SPARQL by http://www. jamendo. com/it/ examples Exercises „ DBTune.org hosts a queryable RDF version of Storing it information about Jamendo' s music collection RDF/S Tools The End Data on thousands of artists, tens of thousands of albums, and nearly 100, 000 tracks http://dbtune.org/

F. Corno, L. Farinetti - Politecnico di Torino 95

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 90 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 7 – the wrong way This lecture Getting it Linked Data Project Converting data „ Find all Jamendo artists along with their image, into RDF RDF and RDB hdthltith’home page, and the location they’re near Querying it Querying triples SPARQL by PREFIX mo: examples Exercises PREFIX foaf: SELECT ?name ?img ?hp ?loc Storing it WHERE { RDF/S Tools ?a a mo:MusicArtist ; foaf:name ?name ; The End foaf:img ?img ; foaf:homepage ?hp ; foaf:based_near ?loc . }

F. Corno, L. Farinetti - Politecnico di Torino 96

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 91 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Example 7 – DBTune SPARQL Previous lecture... This lecture endpoint Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it http://dbtune.org/jamendo/store/ Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

„ Jamend o has in forma tion on a bou t 3, 500 ar tis ts „ Trying the query we only get 2,667 results. What's wrong?

F. Corno, L. Farinetti - Politecnico di Torino 97

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 92 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction El7Example 7 – the ri g ht way Previous lecture... This lecture Getting it „ Not every artist has an image , homepage , or location! Linked Data Project „ OPTIONAL tries to match a graph pattern, but doesn't Converting data into RDF fail the whole qqyuery if the optional match fails RDF and RDB „ If an OPTIONAL pattern fails to match for a particular Querying it Querying triples solution, any variables in that pattern remain unbound SPARQL by (no value) for that solution examples Exercises PREFIX mo: Storing it PREFIX foaf: RDF/S Tools SELECT ?name ?img ?hp ?loc WHERE { The End ?a a mo:MusicArtist ; fffoaf:name ?name . OPTIONAL { ?a foaf:img ?img } OPTIONAL { ?a foaf:homepage ?hp } OPTIONAL { ?a foaf:based_ near ?loc } }

F. Corno, L. Farinetti - Politecnico di Torino 98

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 93 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Dataset: GovTrack This lecture Getting it Linked Data Project Converting data „ GovTrack provides SPARQL access to into RDF RDF and RDB data on the U.S. Congress Querying it Querying triples SPARQL by „ Contains over 13, 000, 000 triples about examples Exercises legislators, bills, and votes Storing it RDF/S Tools

„ http://www.govtrack.us/ The End

F. Corno, L. Farinetti - Politecnico di Torino 99

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 94 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction El8Example 8 – queryilttiing alternatives Previous lecture... This lecture Getting it Linked Data „ Find Senate bills that either John McCain or Barack Project Converting data Obama sponsored and the other cosponsored into RDF RDF and RDB PREFIX bill: Querying it PREFIX dc: Querying triples PREFIX foaf: SPARQL by SELECT ?title ?sponsor ?tt?status examples WHERE { Exercises { ?bill bill:sponsor ?mccain ; bill:cosponsor ?obama . } Storing it UNION RDF/S Tools { ?bill bill:sponsor ?obama ; bill:cosponsor ?mccain . } ?bill a bill:SenateBill ; The End bill:status ?status ; bill:sponsor ?sponsor ; dc:title ?title . ?obama foaf:name "Barack Obama" . ?mccain foaf:name "John McCain" . }

F. Corno, L. Farinetti - Politecnico di Torino 100

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 95 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Example 8 – GovTrack specific Previous lecture... This lecture endpoint Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises http://www.govtrack.us/developers/rdf.xpd Storing it RDF/S Tools

The End

„ The UNION keyword forms a disjunction of two graph patterns: solutions to both sides of the UNION are included in the results

F. Corno, L. Farinetti - Politecnico di Torino 101

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 96 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... RDF da tase ts This lecture Getting it „ All queries so far have been against a single graph Linked Data Project Converting data „ In SPARQL this is known as the default graph into RDF RDF and RDB „ RDF da tase ts are composed o f a si ng le de fau lt grap h Querying it and zero or more named graphs, identified by a URI Querying triples SPARQL by „ Named graphs can be specified with one or more examples Exercises FROM NAMED clauses, or they can be hardwired into a Storing it

ppQparticular SPARQL endpoint RDF/S Tools „ The SPARQL GRAPH keyword allows portions of a The End qqyuery to match a gainst the named gpgraphs in the RDF dataset „ Anything outside a GRAPH clause matches against the default graph

F. Corno, L. Farinetti - Politecnico di Torino 102

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 97 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Dataset: semanticweb.org This lecture Getting it Linked Data Project Converting data „ data.semanticweb.org hosts RDF data regarding into RDF workshops, schedules, and presenters for the RDF and RDB Querying it International Semantic Web (ISWC) and European Querying triples SPARQL by Semantic Web Conference (()ESWC) series of events examples Exercises „ Presents data via FOAF, SWRC, and iCal ontologies Storing it

„ The data for each individual ISWC or ESWC event is RDF/S Tools

stored in its own named graph The End i.e., there is one named graph per conference event contained in this dataset „ http://data.semanticweb.org/

F. Corno, L. Farinetti - Politecnico di Torino 103

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 98 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Example 9 – querying named graphs This lecture Getting it Linked Data Project Converting data „ Find people who have been involved with at into RDF RDF and RDB leas t three ISWC or ESWC conf erence event s Querying it Querying triples SPARQL by PREFIX foaf: examples SELECT DISTINCT ?person Exercises WHERE { Storing it GRAPH ?g1 { ?person a foaf:Person } RDF/S Tools GRAPH ?g2 { ?person a foaf:Person } GRAPH ?g3 { ?person a foaf:Person } The End FILTER(?g1 != ?g2 && ?g1 != ?g3 && ?g2 != ?g3) . }

F. Corno, L. Farinetti - Politecnico di Torino 104

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 99 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... El9Example 9 – queryidhing named graphs This lecture Getting it Linked Data Project Converting data „ The GRAPH ?g construct allows a pattern to match into RDF against one of the named graphs in the RDF dataset RDF and RDB Querying it „ The URI of the matching graph is bound to ?g Querying triples SPARQL by (or whatever variable was actually used) examples Exercises „ The FILTER assures that we’re finding a person who Storing it

occurs in three distinct graphs RDF/S Tools „ The Web interface used for this SPARQL query defines The End the foaf: pp,refix, which is wh y it is omitted here

F. Corno, L. Farinetti - Politecnico di Torino 105

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 100 / 131 Querying it SPARQL by examples

SemanticWeb - RDF/S

GEIST

Outline

Introduction Data. semanticweb. org specific Previous lecture... This lecture SPARQL endpoint Getting it Linked Data Project http://data.semanticweb.org/snorql/ Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 106

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 101 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it SPARQL exercise Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 102 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction EiExercises - RDF Previous lecture... This lecture @prefix : . Getting it Linked Data @prefix ont: . Project Converting data @prefix vcard: . into RDF RDF and RDB :john Querying it vcard:FN "John Smith" ; Querying triples vcard:N [ SPARQL by examples vcard:Given "John" ; Exercises vcard:Family "Smith" ] ; Storing it ont:hasAge 32 ; ont:marriedTo :mary . RDF/S Tools :mary The End vcard:FN "Mary Smith" ; vcard:N [ vcard:Given "Mary" ; vcard:Family "Smith" ] ; ont:hAhasAge 29 .

F. Corno, L. Farinetti - Politecnico di Torino 108

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 103 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 1 This lecture Getting it Linked Data Project Converting data „ Return the full names of all people in the graph into RDF RDF and RDB PREFIX vCard: Querying it Querying triples SPARQL by SELECT ?fullName examples WHERE {?x vCard:FN ?fullName} Exercises Storing it „ Result RDF/S Tools The End fullName ======“John Smith” “Mary Smith”

F. Corno, L. Farinetti - Politecnico di Torino 109

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 104 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 2 This lecture Getting it Linked Data Project Converting data „ Return the relation between John and Mary into RDF RDF and RDB PREFIX : Querying it SELECT ?p Querying triples SPARQL by WHERE { :john ?p :mary } examples Exercises Storing it „ Result RDF/S Tools The End p ======

F. Corno, L. Farinetti - Politecnico di Torino 110

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 105 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 3 This lecture Getting it Linked Data „ Project Return the spouse of a person whose name is Converting data into RDF John Smith RDF and RDB Querying it PREFIX vCard: Querying triples SPARQL by examples PREFIX ont: Exercises SELECT ?y Storing it WHERE {?x vCard:FN "John Smith". ?x ont:marriedTo ?y} RDF/S Tools „ Result The End

y ======

F. Corno, L. Farinetti - Politecnico di Torino 111

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 106 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 4 This lecture Getting it Linked Data „ Project Return the name and the first name of all people Converting data into RDF in the knowledge base RDF and RDB Querying it PREFIX vCard: Querying triples SPARQL by examples SELECT ?name, ?firstName Exercises WHERE {?x vCard:N ?name . Storing it ?name vCard:Given ?firstName} RDF/S Tools „ Result The End name firstName ======“John Smith” "John" “Mary Smith”" Mary"

F. Corno, L. Farinetti - Politecnico di Torino 112

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 107 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 5 This lecture Getting it Linked Data Project Converting data „ Return all people over 30 in the knowledge base into RDF RDF and RDB Querying it PREFIX ont: Querying triples SELECT ?x SPARQL by examples WHERE {?x ont:hasAge ?age . Exercises FILTER(?age > 30)} Storing it

RDF/S Tools „ Result The End x ======

F. Corno, L. Farinetti - Politecnico di Torino 113

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 108 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... FROM This lecture Getting it Linked Data Project Converting data into RDF „ Select RDF graph (= dataset) to be queried RDF and RDB Querying it „ In case of multiple FROM clauses, graphs are Querying triples SPARQL by merged examples Exercises „ Example Storing it RDF/S Tools

The End PREFIX foaf: SELECT ?name FROM WHERE { ?x foaf:name ?name }

F. Corno, L. Farinetti - Politecnico di Torino 114

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 109 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 6 This lecture Getting it Linked Data Project Converting data „ Graph http://example.org/bob into RDF RDF and RDB Querying it @prefix foaf: . Querying triples _:a foaf:name "Bob" . SPARQL by _:a foaf:mbox . examples Exercises Storing it „ Graph http://example .org/alice RDF/S Tools The End @prefix foaf: . _:a foaf:name "Alice" . _:a foaf:mbox .

F. Corno, L. Farinetti - Politecnico di Torino 115

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 110 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... SPARQL query – exercise 6 This lecture Getting it Linked Data Project Converting data „ Return the names of people in both graphs into RDF RDF and RDB PREFIX foaf: Querying it SELECT ?src ?name Querying triples SPARQL by FROM NAMED examples FROM NAMED Exercises WHERE Storing it

{ GRAPH ?src { ?x foaf:name ?name } } RDF/S Tools

The End „ Result src name ====== "Bob" "Alice"

F. Corno, L. Farinetti - Politecnico di Torino 116

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 111 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... References This lecture Getting it Linked Data Project „ Converting data W3C, “Introduction to the Semantic Web” into RDF http://www.w3 .org/2006/Talks/0524 -Edinburgh-IH/ RDF and RDB „ Lee Feigenbaum, “SPARQL By Example” Querying it Querying triples http://www.cambridgesemantics.com/2008/09/sparql-by-example SPARQL by examples „ Valentina Tamma, “Chapter 4: SPARQL” Exercises http://www.csc.liv.ac.uk/~valli/Comp318/PDF/SPARQL.pdf Storing it „ THh“AIdiTom Heath, “An Introduction to LikdD”Linked Data” RDF/S Tools The End http://tomheath.com/slides/2009-02-austin-linkeddata-tutorial.pdf

F. Corno, L. Farinetti - Politecnico di Torino 117

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 112 / 131 Querying it Exercises

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... License This lecture Getting it Linked Data Project Converting data This work is licensed under the Creative into RDF RDF and RDB Commons Attr ibuti on-NilNoncommercial- Querying it Querying triples Share Alike 3.0 Unported License. SPARQL by examples To view a copy of this license, visit Exercises httppgy://creativecommons.org/licenses/by- Storing it RDF/S Tools

nc-sa/3.0/ or send a letter to Creative The End Commons,,,, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

F. Corno, L. Farinetti - Politecnico di Torino 118

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 113 / 131 Querying it Exercises

SemanticWeb - Example: Twinkle RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 114 / 131 Querying it Exercises

SemanticWeb - Example: DBPedia SPARQL Endpoint RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

http://wiki.dbpedia.org/OnlineAccess#h28-3

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 115 / 131 Storing it

SemanticWeb - Relational, Tree and Graph DB Models RDF/S

GEIST

Outline

Introduction Relational DB: tables related by Primary Key Previous lecture... Hierarchical DB: parent nodes  more intrinsic importance This lecture Getting it Linked Data Graph DB: arbitrary object relations, no intrinsic importance Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

Figure: Comparison of the DB (http://LinkedDataTools.com)

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 116 / 131 Storing it

SemanticWeb - RDF Store (Triple store) RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data System for storing and managing RDF data. Project Converting data into RDF Optimized for the storage and retrieval of statements. RDF and RDB On top of RDB or built from scratch. Querying it Querying triples SPARQL by Examples: examples Jena (toolkit), Exercises RedStore, Storing it Bigdata. RDF/S Tools The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 117 / 131 Storing it

SemanticWeb - Popular RDF Stores RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 118 / 131 Storing it

SemanticWeb - Benchmark: loading triples RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data System under test 1M 25M 100M Project Converting data Sesame 00:02:59 12:17:05 3:06:27:35 into RDF Jena TDB 00:00:49 00:16:53 01:34:14 RDF and RDB Querying it Jena SDB 00:02:09 04:04:38 1:14:53:08 Querying triples SPARQL by Virtuoso TS 00:00:23 00:39:24 07:56:47 examples Exercises Virtuoso RV 00:00:34 00:17:15 01:03:53 Storing it

D2R Server 00:00:06 00:02:03 00:11:45 RDF/S Tools

The End 2010

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 119 / 131 Storing it

SemanticWeb - Benchmark: Query Mixes per Hour RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Dataset Number of clients Linked Data Project Size 1M Converting data into RDF 1 2 4 8 64 RDF and RDB Sesame 18,094 19,057 16,460 18,295 16,517 Querying it Querying triples Jena TDB 4,450 6,752 9,429 8,453 8,664 SPARQL by examples Jena SDB 10,421 17,280 23,433 24,959 23,478 Exercises Virtuoso TS 12,360 21,356 32,513 29,448 29,483 Storing it Virtuoso RV 17,424 28,985 34,836 32,668 33,339 RDF/S Tools D2R Server 2,828 3,861 3,140 2,960 2,938 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 120 / 131 Storing it

SemanticWeb - Resources RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data http://esw.w3.org/LargeTripleStores into RDF http://esw.w3.org/RdfStoreBenchmarking RDF and RDB Querying it Querying triples http://www4.wiwiss.fu-berlin.de/bizer/ SPARQL by examples BerlinSPARQLBenchmark/ Exercises http://semanticweb.org/wiki/Category:RDF_store Storing it RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 121 / 131 RDF/S Tools

SemanticWeb - Outline RDF/S

GEIST

1 Introduction Outline Previous lecture... Introduction Previous lecture... This lecture This lecture Getting it Linked Data 2 Getting it Project Converting data Linked Data Project into RDF Converting data into RDF RDF and RDB Querying it RDF and RDB Querying triples SPARQL by examples 3 Querying it Exercises Querying triples Storing it SPARQL by examples RDF/S Tools Exercises The End

4 Storing it

5 RDF/S Tools

6 The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 122 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Linked Data tools Previous lecture... This lecture „ Tools for Publishing Linked Data Getting it D2R Server: a tool lf for publi blihishing re ltilationa ldtbl databases as LikdLinked Linked Data Project Data Converting data Talis Platform: the Talis Platform provides Linked Data-compliant into RDF RDF and RDB hifhosting for content an dRDFdd RDF data Querying it Pubby: a Linked Data frontend for SPARQL endpoints Querying triples SPARQL by „ Linked Data/RDF Editors and Validators examples Hyena: RDF Editor Exercises Storing it Vapour: Linked Data Validator RDF/S Tools „ Tools for consuming Linked Data The End Semantic Web Browsers and Client Libraries Semantic Web Search Engines „ Linked Data applications for end users Semantic Web Browsers and Client Libraries Other Linked Data Applications F. Corno, L. Farinetti - Politecnico di Torino 64

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 123 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Pubby This lecture Getting it Linked Data Project Converting data „ Many triple stores and other SPARQL endpoints into RDF RDF and RDB can be accesse d on ly by SPARQL cli ent Querying it applications that use the SPARQL protocol Querying triples SPARQL by examples It cannot be accessed by the growing variety of Exercises Linked Data clients Storing it RDF/S Tools „ Pubby is designed to provide a Linked Data The End interface to those RDF data sources „ http://www4.wiwiss.fu-berlin.de/pubby/

F. Corno, L. Farinetti - Politecnico di Torino 65

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 124 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Pubby This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 66

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 125 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... The Tabulator Project This lecture Getting it Linked Data Project Converting data „ Generic data browser and editor into RDF RDF and RDB Provides a way to browse RDF data on the Querying it Querying triples web SPARQL by examples Exercises „ Open source under the W3C software Storing it license RDF/S Tools The End http://www.w3.org/2005/ajar/tab

F. Corno, L. Farinetti - Politecnico di Torino 67

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 126 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction The Tabulator Project Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 68

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 127 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Previous lecture... Marbles This lecture Getting it Linked Data Project Converting data „ Linked Data browser into RDF RDF and RDB Colored dots are used to correlate the origin Querying it Querying triples of disppylayed data with a list of data sources SPARQL by examples (hence the name) Exercises Storing it „ source code is available in the RDF/S Tools SourceForge project The End http:// marbl es.sourcef orge.net/

F. Corno, L. Farinetti - Politecnico di Torino 69

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 128 / 131 RDF/S Tools

SemanticWeb - RDF/S

GEIST

Outline

Introduction Marbles Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

F. Corno, L. Farinetti - Politecnico di Torino 70

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 129 / 131 The End

SemanticWeb - Questions RDF/S

GEIST

Outline

Introduction Previous lecture... This lecture Getting it Linked Data Project Converting data into RDF RDF and RDB Querying it Any questions? Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 130 / 131 The End

SemanticWeb - Thank you RDF/S

GEIST

Outline Thank you for your attention! Introduction Previous lecture... This lecture http://geist.agh.edu.pl Getting it Linked Data GEIST Research Group Project Converting data into RDF RDF and RDB Querying it Querying triples SPARQL by examples Exercises Storing it

RDF/S Tools

The End

Powered by LATEX

GEIST (AGH-UST) SemanticWeb - RDF/S 2014/2015 131 / 131