See also: IRC log
<Ashok> chair
<Ashok> scribenick: juansequeda
<Ashok> scribe: Juan
<Ashok> RES
+1
<Ashok> ol
RESOLUTION: Minutes from last meeting July 27 telcon approved
<Ashok> Minutes are at: http://www.w3.org/2010/07/27-rdb2rdf-minutes.html
The approach is taking a SQL query and mapping it to a class and each attribute to a property
<cygri> Souri's slides from the SemTech F2F: http://www.w3.org/2001/sw/rdb2rdf/wiki/File:RDB2RDF_Map_viaSQL_F2F_at_SemTech2010.pdf
<Souri> XML schema: http://www.w3.org/2001/sw/rdb2rdf/wiki/Example_XML_Schema_Mapping
Souri: what we are presenting
comes from the discussions that we have had
... DBKeyType is for definition of primary keys..
... RDFTermType are the different types that we can have: IRI,
blank node or literal
... A SQL query is associated with a ClassMap. it has several
properties associated with this class map: object properties
and datatype properties
... the SQLDefString is required which defines the SQL
Query
... InstURIPropertyMap: this gives us how to get the URI for a
row in the particular table/view
... there should be exactly one
Ashok: is this a database column?
Souri: yes, it actually is but it
is mapped to the identity of a row
... the DBColumnName is required
... there is InverseExpr, it is for optimizations, but we can
discuss about this later
... RDFTypeURIPropertyMap: gives us a way to say that a
particular row may belong to a class which is defined by a
class with values defined in that row
+q
<ericP> ericP: could you have multiple PropertyMaps with PropertyName=rdf:type instead of RDFTypeURIPropertyMap?
<ericP> Souri: yes, but this approach allows for performance optimizations
<ericP> ... specifically, you can ask for { ?x a ?type } or { ?x a my:SoccerStar }
juansequeda: or a RDFTypeURIPropertyMap, that means that the object has to be a IRI
souri: yes
... how do you know which triples belongs to which graph? That
is what GraphURIPropertyMap is for
... this is optional. you don't have to say this
... can also assign columns to a graph
... you can divide a row to "column groups"
ericP: then my SS number can go to the tax graph and personal graph
souri: yes
... useful to organizing datastore
... PropertyMap is optional. it has a property name, the
DBColumnName and the RDFTerm, so you can say if it should be a
IRI, literal or blank node
... KeyMap takes care of constraints
... Keyname is the name, KeyType which is either a primary,
unique or reference. both of these are requireed
... InverseExpr is for perfomance
... Richard points out if we need to have classes or not
... RDF doesn't have classes. RDFS introduces it
... why is it good? if you have the same property repeated in
different classes
+1 to ask what problems can we have if defining classes is required
scribe: having a class, you can restrict your query. you can scope down the space that you have to look for
ericP: if we don't define a class type, and we do ?s foaf:name ?o then it will be a union of everything that has foafo:name
<Souri> a working example (revised version of the old example we had) -- http://www.w3.org/2001/sw/rdb2rdf/wiki/Revised_Example_of_SQL-Query_based_Approach
<ericP> juansequeda: what are the implications of having typemaps required?
<ericP> Souri: [ example of multiple columns emiting the same property, implying a common domain ]
<ericP> cygri: we're chartered to map from DBs to RDF graphs
<ericP> ... why should we introduce a restriction on the types of generated rdf graphs
souri: if C1 is domain for foaf:name and C2 is also domain for foaf:name, then the actual domain is the intersection of C1 and C2, whihc is false
Richard: why is InverseExpr is needed and how would you use it?
souri: good question but I don't
have an example yet on the wiki
... suppose in your view you are projecting a column whose
column is X+Y but you are projecting it as Y. For Y I'm getting
a value of 10. When I translate the SPARQL to SQL, I can do Y =
10. However there is no index on Y. I want to say X = 9. We
want the user to specify Y-1 as the InverseExpr
<Ashok> souri discusses example in above Wiki -- URL above
<ericP> ericP: in RIF, you express rule details which don't change the semantics as *annotations*
Souri is going through examples in http://www.w3.org/2001/sw/rdb2rdf/wiki/Revised_Example_of_SQL-Query_based_Approach
<Ashok> Annotations that help performance is a good idea
+q to ask are we expecting that the URIs are to be generated in the SQL query with a concat?
<Zakim> juansequeda, you wanted to ask are we expecting that the URIs are to be generated in the SQL query with a concat?
Richard: we should have URI Patterns so they can be reused
Ashok: lets continue next week
and talk about class type, uri generation
... and we should think about if this should be an output of
the WG
... Richard, you had an action to comment on this
Richard: I will send an email that summarizes limitations or the need of expressivity
This is scribe.perl Revision: 1.135 of Date: 2009/03/02 03:52:20 Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/ Guessing input format: RRSAgent_Text_Format (score 1.00) Found ScribeNick: juansequeda Found Scribe: Juan Present: Juan Ashok Wolfgang Richard Boris Souri EricP Seema Regrets: Marcelo Got date from IRC log name: 03 Aug 2010 Guessing minutes URL: http://www.w3.org/2010/08/03-rdb2rdf-minutes.html People with action items:[End of scribe.perl diagnostic output]