- From: Boris Villazon-Terrazas <bvillazon@fi.upm.es>
- Date: Sun, 1 Jul 2012 18:08:52 +0200
- To: Richard Cyganiak <richard@cyganiak.de>
- Cc: Public-Rdb2rdf-Wg RDB2RDF <public-rdb2rdf-wg@w3.org>
- Message-Id: <1351A550-A229-4C61-8E7C-BC43D3A2AE37@fi.upm.es>
Hi Richard Thanks! pls see my comments inline On Jun 30, 2012, at 4:07 PM, Richard Cyganiak wrote: > Hi Boris, > > I've spotted a few bugs in the R2RML test suite. I've used the latest test suite from hg. One bug makes the test mapping invalid. A couple others violate SHOULD-level requirements without a good reason. > > Best, > Richard > > > == R2RMLTC0014b == > > The mapping file contains the following SQL query as an R2RML view: > > SELECT ('http://example.com/emp/' || "empno") AS empURI > , "empno" > , "ename" > , ('http://example.com/emp/job/'|| "job") AS jobTypeURI > , "job" > , deptno > , ('http://example.com/emp/etype/'|| "etype") AS empTypeURI > , "etype" > , ('http://example.com/graph/'|| "job" || '/' || "etype") AS graphURI > FROM "EMP" > > deptno needs to be enclosed in double quotes to match the table definition. > Done. > > == R2RMLTC0005a == > == R2RMLTC0011a == > == R2RMLTC0013a == > > They use the following template: > > http://example.com/{"fname"}-{"lname"} > http://example.com/{ID}/{FirstName}-{LastName} > http://example.com/Person/{"ID"}/{"Name"}-{"DateOfBirth"} > > Such templates SHOULD NOT be used because - is not a safe separator if fname or lname ever contains a dash: > http://www.w3.org/TR/r2rml/#dfn-safe-separator > > I suggest replacing the dashes with any IRI delim or sub-delim character, for example: > > http://example.com/{"fname"}+{"lname"} > http://example.com/{"fname"};{"lname"} > http://example.com/{"fname"}/{"lame"} Done. > > > == R2RMLTC0005b == > == R2RMLTC0012a == > == R2RMLTC0012b == > == R2RMLTC0012e == > > They use templates like the following: > > {"fname"}{"lname"} > > Such templates SHOULD NOT be used. The empty string is not a safe separator. Strings generated from such templates cannot be reversed. > > I suggest adding a separator that is unlikely to occur in the used columns, for example: > > {"fname"}|{"lname"} > {"fname"}_{"lname"} > I've included the _ as separator in the templates. As you can see in all these cases we are dealing with bnodes. We had a discussion about this in a telecon [1] because a comment from Toby [2]. > > == R2RMLTC0006a == > == R2RMLTC0014c == > > Both use term maps with rr:constant, and specify an rr:termType: > > rr:objectMap [ rr:constant "Bad Student"; rr:termType rr:Literal; ] > > Specifying rr:termType has no effect on a constant-valued term map. It only affects column- and template-valued term maps: > http://www.w3.org/TR/r2rml/#termtype > > This is because the term type for a constant-valued term map is simply determined by the constant node. "Bad Student" is a literal, so the resulting term is a literal. > > As the spec states: An R2RML mapping graph SHOULD NOT include IRIs from the R2RML vocabulary where such use is not explicitly allowed or required by a clause in this specification. Hence I suggest removing these rr:termType triples. Done Boris [1] http://www.w3.org/2012/06/12-rdb2rdf-minutes.html [2] http://lists.w3.org/Archives/Public/public-rdb2rdf-comments/2012Jun/0020.html
Received on Sunday, 1 July 2012 16:09:22 UTC