RDB2RDF Working Group Teleconference

10 Nov 2009

See also: IRC log


Ahmed AndyS Ashok_Malhotra Dan Kingsley_Idehen MacTed OpenLink_Software Orri Seema Souri hhalpin angela_UNITN ashok batla cygri ericP hhalpin iv_an_ru jsequeda li map mdean metatomix mhausenblas nunolopes rcygri whalb ericP
Soeren, howard, Ben, marcelo
mhausenblas, hhalpin




<ericP> huh

<ericP> http://lists.w3.org/Archives/Public/public-rdb2rdf-wg/2009Nov/0008 suggests that it starts at 16:00Z

<ericP> MacTed, when do you expect this telecon to start?

<ericP> ahh, i see 1200 Eastern

<mhausenblas> heya

<mhausenblas> good to see you around ericP

<mhausenblas> yes, it is 17:00 UTC

<ericP> gonna be 5 mins late, i think

<mhausenblas> no worries ;)

<ericP> i look forward to geeking with y'all!

<mhausenblas> yeah! and continue our great ISWC08 talk (and dance ;)

<jsequeda> to bad both of you guys missed out on the ISWC09 talks and dance!

<mhausenblas> trackbot, start conference

<trackbot> Date: 10 November 2009

<batla> good morning/afternoon everyone.

<nunolopes> Zakim: nunolopes is with mhausenblas

<angela_UNITN> i039046188aacc is angela

<batla> batla has to step away for a couple of minutes - I am on phone and IRC.

<mhausenblas> Zakim aacc is angela_UNITN

<li> this is li ma. I am making the call via skype and don't know my phone num displayed

<hhalpin> aadd? is hhalpin

<mhausenblas> scribenick: mhausenblas


minutes from last meeting

<hhalpin> trackbot, start meeting


<trackbot> Meeting: RDB2RDF Working Group Teleconference

<trackbot> Date: 10 November 2009

<scribe> scribenick: hhalpin

ashok: SQL is a very language
... so what I wanted to at least think about
... to map all of SQL, whether we could do just a subset.
... for example, we could map only SQL92

Ahmed: Do you mean certain SQL facilitites or data-types

Ashok: I am talking about certain extensions like facilities around data-types

Ahmed: Do you see us doing mapping SQL to SPARQL?

Ashok: We'll see that the low-level details like SPARQL to SQL mappings are places where different companies can compete.

Ahmed: relational algebra is SQL operations, not data-types
... including projections, joins

Ashok: Yes, I agree.

Ahmed: Then how is SQL to SPARQL not included?

Ashok: What I was thinking about was mapping a SPARQL class to a SQL query
... that would then have join etc.

Souri: I agree with Ashok, and we have to keep it simple, and maybe avoid complex types, focus on scalar types for now.
... But all SQL operations are important so we need to go through SQL
... Like Triplify in using SQL
... so we can have RDF mapping where the fundamental aspects are the return of SELECT, not just say functions etc.
... to summarize, we need to keep it simple, so let's support SQL operations in the mapping language.

Ahmed: In XG, we did not discuss SQL to SPARQL mappings
... so doing this adds a new commitment of time
... but I do not say that mapping to SQL operations is something we can live without
... but we do have a specific timeframe
... and we have to watch it.

+1 on watching timeframe

Dan: looking for clarification of language
... just want to remind me about DDL, DML, and DQL.

Data Definition Language, Data Manipulation Language, Data Query Language.

So which are we talking about?

Souri: We need to make sure every row of the view can be understood

<jsequeda> hhalpin: ok

Souri: so we can design queries based on the relational schema without looking at the queries.
... so we'll need only a portion likely

Ahmed: So there's a difference between mapping the database schema and actually translating SQL to SPARQL (and vice versa)

<Zakim> ericP, you wanted to say that i think e.g. HCLS expects of us

mhausenblas: ericP is W3C staff on this group

EricP: I'm EricP, I'm on HCLS interest group
... where I do mostly query mapping and modelling
... the world I've seen would like enough of the query mappig
... so they can do straight mappings, even a subset of SPARQL
... if we define the semantics of the answers, but not the algorithm
... then we can lean on the semantics of SQL and SPARQL
... so all we apply is the semantics of the mappig

<mhausenblas> ACTION: mhausenblas to create an issue regarding SQL/SPARQL of our WG [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action01]

<trackbot> Sorry, couldn't find user - mhausenblas

<mhausenblas> ACTION: mhausenb to create an issue regarding SQL/SPARQL of our WG [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action02]

<trackbot> Created ACTION-13 - Create an issue regarding SQL/SPARQL of our WG [on Michael Hausenblas - due 2009-11-17].

mhausenblas: I hesistate to wait too long
... to start working on the use-cases

<mhausenblas> http://www.w3.org/2005/Incubator/rdb2rdf/XGR-rdb2rdf-20090126/

Ahmed: Not sure if we should commit.
... the deadline may be a problem

<mhausenblas> Propose to accept minutes from last meeting http://lists.w3.org/Archives/Public/public-rdb2rdf-wg/2009Nov/0007.html minus the issues discussed today

Ahmed: proposed to accept minutes from meeting.
... Any outstanding actions?

Action doe.

<trackbot> Sorry, bad ACTION syntax

Action done

<trackbot> Sorry, bad ACTION syntax

<mhausenblas> ACTION-12?

<trackbot> ACTION-12 -- Harry Halpin to inform li ma -- due 2009-11-05 -- OPEN

<trackbot> http://www.w3.org/2001/sw/rdb2rdf/track/actions/12

did inform li ma.

<mhausenblas> close ACTION-12

<trackbot> ACTION-12 Inform li ma closed

Ahmed: We want to make sure we have representation from OWL and RIF, and any other WGs?

mhausenblas: not as far as I know.

<mhausenblas> ACTION: mhausenb to create Wiki page for liaisons with OWL, RIF, etc. [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action03]

<trackbot> Created ACTION-14 - Create Wiki page for liaisons with OWL, RIF, etc. [on Michael Hausenblas - due 2009-11-17].

mhausenblas: can post any more liasons on the wiki.

<mhausenblas> http://richard.cyganiak.de/2009/11/d2rq-rdb2rdf-wg-slides.pdf

cygri: want to talk about the project, the mapping language, and the requirements of D2RQ.
... a database to rdf mapping application
... input is any JBDC driver and a number of output interfaces
... linked data server
... get a big rdf dump from database
... that one can then load into a triple store
... very easy
... can get it working in a few minutes
... do not modify database
... we assume we have read-only access
... we assume we cannot even create a view
... not adding keys to database.
... started by Chris Bizer in 2004
... now maintained by Chris Becker
... informed by D2R Map
... now legacy
... fairly active mailing list, 20 messages per month approx.
... Hannover Uni. uses it to host DBLP
... downloads took off when we offered the server
... not just the Jena-based API
... so that we could install and run something.
... details about architecture
... a normal database
... provided by a mapping file
... has two main ways of interfacing
... jena interface
... ability to create rdf dumps
... on top of that there is a server
... basically a java web application
... linked data interface
... for exploring and the like.
... and a SPARQL endpoint.
... we normally use one of the query interfaces to a virtual rdf graph
... we do not materialize unless explciltly asked.
... on top of data
... we can allow different methods of accessing.
... ranging in complexity, all on top of virtual rdf graph.
... people tend to actually use SPARQL endpoints or create RDF dumps
... data integration scenarios.
... we would need a federated SPARQL engine.
... so people often just dump and put into a triple-store
... but people run it in batch every night or weekend.
... mapping language
... n3 based syntax
... real world schemas are very messy
... so we don't know if we have views
... we made the mapping language very expressive
... we have a script that autogenerates a mapping
... just uses autogenerated properties and classes
... but is a starting poit for cusotmizing
... to provide exactly the output they want.

mapping process is quite important

1. define DB

2. define entiites

3. add properties (connect person to photo)

4. Link entities (here's the database, here's the JBDC deadline)

See examples in slides

slide 17: we have a classmpa that defines a URI pattern that defines a number of entities defined in the same way

cygri: the URI pattern
... can instatiate actual URIs from data from the database
... so in general, throughout the next slide

I think 17 to 18

ashok: you are using a column name, could you use a function?

cygri: you cannot in our URI patterns, you can only use column names
... in other contexts, you could do the same thing that contains some value from the database
... you can concatenate a certain string with output of some function, so you can get the same effect.
... via using an arbitrary SQL expressio
... back to slide 18
... so we have conditions that the mapping applies whenever a certain SQL condition applies, such as a user not being deleted.
... instead of a URI pattern
... we use bnode ID column
... we also have on slide 21 some syntactic sugar
... for declaring types of rdf entities
... slide 22 we show we can use property bridges
... to attach properties to the entities
... we again use a URI pattern to generating specific types. We can generate data-type literals,etc., but a different set of URIs patterns
... on slide 24, I am showing that we can use the SQL expression to concat a hash
... we can explain that a certain photo made by a user on slide 25
... the slide is correct, we are attaching a property to a photo
... we are attaching a particular URI to a particular perso
... we want to make sure the photo has the right user ID as part of their URI.

<ericP> [[

<ericP> map:People a d2rq:ClassMap;

<ericP> d2rq:uriPattern “http://.../people/@@User.ID@@

<ericP> ]]

<ericP> [[

rcygri: slide 27, instead of repeating URI patter

<ericP> map:photo a d2rq:PropertyBridge; d2rq:belongsToClassMap map:Photos; d2rq:property foaf:made; d2rq:join “User.ID = Photo.UserID”; d2rq:refersToClassMap map:People .

<ericP> ]]

rcygri: we simply map the URIs pattern
... so by refering to the class maps
... we will not expose a triple
... we allow self-joins re "alias" costruct

Ahmed: You are primarily mapping the schema

rcygri: we do have a SPARQL engine
... that can try to do the translations to a virtual graph
... Turtle-syntax not a w3c standard
... we used Turtle because it is fairly human writable
... SPARQL was not around

<ericP> the DAWG (SPARQL) Working Group felt free to use turtle for examples in the query specification and the test cases

rcygri: you need to take the SQL apart, and we would like to avoid doing that
... differences between database vendors
... would like to discuss SQL query to RDF template
... to RDF graph + SQL fragment issue
... we would like to support and have frequet requests for character separated lists and dynamic properties

<ericP> Dynamic properties seems like a way to express <item8> :nonSale $price vs. <item8> :sale $price

rcygri: a transformation table would also be useful to have proper URIs based on type-codes.
... the main issue is table and column names
... general functions beyond the standards
... would be a great thing to support
... on implementation side we have a lot to support.
... but some things vary between databases
... no dynamic mapping file

mhausenblas: Could we continue this discussion mailing list?

<jsequeda> hhalpin: we are still on the phone

Meeting Adjourned.

trackbot, end meeting

Summary of Action Items

[NEW] ACTION: mhausenb to create an issue regarding SQL/SPARQL of our WG [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action02]
[NEW] ACTION: mhausenb to create Wiki page for liaisons with OWL, RIF, etc. [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action03]
[NEW] ACTION: mhausenblas to create an issue regarding SQL/SPARQL of our WG [recorded in http://www.w3.org/2009/11/10-RDB2RDF-minutes.html#action01]
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.135 (CVS log)
$Date: 2009/11/17 18:59:13 $