D2R Server Publishing databases on the Web as SPARQL endpoints - - PowerPoint PPT Presentation

d2r server
SMART_READER_LITE
LIVE PREVIEW

D2R Server Publishing databases on the Web as SPARQL endpoints - - PowerPoint PPT Presentation

D2R Server Publishing databases on the Web as SPARQL endpoints Richard Cyganiak, Chris Bizer The problem Have data in a database Want to access it from the RDF world 2002: No good tools little or no customization auto-generated


slide-1
SLIDE 1

D2R Server

Publishing databases on the Web as SPARQL endpoints Richard Cyganiak, Chris Bizer

slide-2
SLIDE 2

 Have data in a database  Want to access it from the RDF world

The problem

slide-3
SLIDE 3

 little or no customization  auto-generated schemas

2002: No good tools

slide-4
SLIDE 4

D2R Map (2002): customizable

slide-5
SLIDE 5

 dumps database to RDF file  you load it into RDF triple store  problem: RDF data becomes stale

D2R Map

slide-6
SLIDE 6

D2RQ (2004): Live queries

slide-7
SLIDE 7

 access database through Jena API  rewrite queries on the fly into SQL  problem: limited to Jena-based clients  problem: remote access?

D2RQ

slide-8
SLIDE 8

SPARQL

slide-9
SLIDE 9

D2R Server (2006): Over the Web

slide-10
SLIDE 10

 SPARQL protocol server based on

D2RQ

 Turns a database into “SPARQL

endpoint”

D2R Server

slide-11
SLIDE 11

DB

Mapping file Web server D2RQ

Web

SPARQL SQL

D2R Server

slide-12
SLIDE 12

SELECT * WHERE { ?x foaf:name "Chris" . ?x foaf:mbox ?mbox . } SELECT People.ID, People.email FROM People WHERE People.name="Chris";

Mapping file D2RQ

slide-13
SLIDE 13

D2RQ mapping language

slide-14
SLIDE 14

ClassMaps

:PeopleClassMap a d2rq:ClassMap; d2rq:class foaf:Person; d2rq:uriPattern "http://example/person@@People.ID@@".

People ID name email orgID

slide-15
SLIDE 15

PropertyBridges

ID name email orgID People

:PeopleEmailColumn a d2rq:PropertyBridge; d2rq:belongsToClassMap :PeopleClass; d2rq:property foaf:mbox; d2rq:uriPattern "mailto:@@People.email@@".

slide-16
SLIDE 16

Joins

:PeopleOrgColumn a d2rq:PropertyBridge; d2rq:belongsToClassMap :PeopleClass; d2rq:property ex:worksFor; d2rq:refersToClassMap :OrganizationsClass; d2rq:join "People.orgID=Organizations.ID".

ID name email orgID People

slide-17
SLIDE 17

... and more

 can map messy database schema to

clean RDF

slide-18
SLIDE 18

Making it easy

slide-19
SLIDE 19

Mapping generator

 Auto-generates mapping file from

database schema

 Then customize manually  Less boilerplate typing

slide-20
SLIDE 20

SPARQL explorer

 Browse mapped RDF  Instant feedback from incremental

changes to mapping file

slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23

SPARQL explorer

 Web 2.0 buzzword compliant  AJAX  SPARQL results over JSON

slide-24
SLIDE 24

Summary

 Access database as SPARQL endpoint  Live queries  Easy setup  Flexible, customizable mapping  Download, docs and source code:

 http://www.wiwiss.fu-berlin.de/suhl/bizer/d2r-server

slide-25
SLIDE 25

Thank you!