- From: Juan Sequeda <juanfederico@gmail.com>
- Date: Tue, 13 Dec 2011 10:57:49 -0500
- To: Richard Cyganiak <richard@cyganiak.de>
- Cc: David McNeil <dmcneil@revelytix.com>, RDB2RDF WG <public-rdb2rdf-wg@w3.org>
- Message-ID: <CAMVTWDysiC94q08Ggg5oWohZ0-gVqmZdAUyyetBruaJ+3COEjg@mail.gmail.com>
On Tue, Dec 13, 2011 at 7:41 AM, Richard Cyganiak <richard@cyganiak.de>wrote: > On 13 Dec 2011, at 05:34, Juan Sequeda wrote: > > I have never looked at SKOS to be honest because I don't have time to > thoroughly learn about *another* semantic web standard. > > If we are tackling a semantic web audience that will most probably be > familiar with SKOS, then I think we are ok. But if you are tackling a > non-semantic web audience and the only reason they are learning R2RML is > because their boss told them to export their RDB data as RDF... besides the > R2RML learning curve... you are going to make them learn SKOS, assuming > they "kinda" know some RDF and SPARQL... this is going to be a pain. This > is where all the alphabet soup comes in and is not appealing (and this is > my real world experience). > > I tried to address this concern using language like this: > > [[ > Note: R2RML translation schemes are defined using the following properties > from the SKOS vocabulary: > > • skos:inScheme > • skos:notation > • skos:closeMatch, skos:exactMatch, skos:broadMatch (all treated > equivalently in R2RML) > > The presence of other SKOS terms in the mapping graph has no effect on > R2RML processing, and no further knowledge of SKOS besides what is > presented in this section is required to author R2RML mappings. > ]] > Why not choose just one, for example skos:exactMatch. > > This might be followed by an example like this: > > +------+------------------------------------------+ > | Code | IRI | > +------+------------------------------------------+ > | 1 | http://chef.example.com/cuisines/indian | > | 2 | http://chef.example.com/cuisines/thai | > | 3 | http://chef.example.com/cuisines/italian | > +------+------------------------------------------+ > > I'm guessing this is not part of the RDB. This is what I want to map to, right? > [] rr:column "cuisine"; > rr:translationScheme <#cuisineScheme>. > > [] skos:inScheme <#cuisineScheme>; > skos:notation 1; > skos:exactMatch <http://chef.example.com/cuisines/indian>. > > [] skos:inScheme <#cuisineScheme>; > skos:notation 2; > skos:exactMatch <http://chef.example.com/cuisines/thai>. > > [] skos:inScheme <#cuisineScheme>; > skos:notation 3; > skos:exactMatch <http://chef.example.com/cuisines/italian>. > > That's all a mapping author really needs to know. > This notation is different from: http://www.w3.org/2001/sw/rdb2rdf/drafts/translation-tables-DERI2.html Is there a full example with the entire mapping. Let's say Restaurant Name and Cuisine. Ex 1: Restaurant(id, name, cuisine_id) Cuisine(id, cuisine) Ex 2: Restaurant(id, name, cuisine) Again, I'm sorry if I'm making you repeat your self. I'm just now getting on track with all of this discussion. > > The major difference between this proposal and the custom vocabulary > proposal in my eyes is that the latter uses “rr:” where the former uses > “skos:” and then they use slightly different names behind the colon too. That was my impression too. :) > Yes there are differences in expressivity and in the handling of certain > corner cases, but those are mostly orthogonal to the question of whether to > use terms from the SKOS namespace or terms in the R2RML namespace. If only > we could agree on a basic approach, then whatever the approach is, it could > be tailored to cover the expressivity and corner cases we consider > important… > I agree > > That being said, if you want to know more about SKOS then a good start > might be this: > http://www.slideshare.net/fabien_gandon/skos-in-a-nutshell-368338 Thanks! > > > This covers pretty much everything there is to know about SKOS in 26 > slides. It doesn't mention skos:notation – that's a property for a (usually > not human-readable) code that uniquely identifies a concept within a > concept scheme. > > The SKOS-based proposal uses a concept scheme as a translation table. Each > concept represents one possible value in the database (via skos:notation). > Each concept is mapped to one or more URIs using the skos:xxxMatch > properties. R2RML doesn't care whether it's exactMatch, closeMatch or > broadMatch – the processing is the same. > Best, > Richard
Received on Tuesday, 13 December 2011 19:42:47 UTC