Update the set of files
authorBoris Villazon-Terrazas <bvillazon@fi.upm.es>
Tue, 11 Oct 2011 02:10:38 +0200
changeset 29 2c9c7044f748
parent 28 64f4779e4018
child 30 5c92d0690d24
Update the set of files
D000-1table0rows/create.sql
D000-1table0rows/directGraph.nt
D000-1table0rows/manifest.ttl
D000-1table0rows/mapped.nq
D000-1table0rows/r2rml.ttl
D001-1table1row/create.sql
D001-1table1row/directGraph.nt
D001-1table1row/manifest.ttl
D001-1table1row/mappeda.nq
D001-1table1row/mappedb.nq
D001-1table1row/r2rmla.ttl
D001-1table1row/r2rmlb.ttl
D002-1table2columns1row/create.sql
D002-1table2columns1row/directGraph.nt
D002-1table2columns1row/manifest.ttl
D002-1table2columns1row/mappeda.nq
D002-1table2columns1row/mappedb.nq
D002-1table2columns1row/mappedd.nq
D002-1table2columns1row/mappedf.nq
D002-1table2columns1row/mappedi.nq
D002-1table2columns1row/r2rmla.ttl
D002-1table2columns1row/r2rmlb.ttl
D002-1table2columns1row/r2rmlc.ttl
D002-1table2columns1row/r2rmld.ttl
D002-1table2columns1row/r2rmle.ttl
D002-1table2columns1row/r2rmlf.ttl
D002-1table2columns1row/r2rmlg.ttl
D002-1table2columns1row/r2rmlh.ttl
D002-1table2columns1row/r2rmli.ttl
D003-1table3columns1row/create.sql
D003-1table3columns1row/directGraph.nt
D003-1table3columns1row/manifest.ttl
D003-1table3columns1row/mappeda.nq
D003-1table3columns1row/mappedb.nq
D003-1table3columns1row/mappedc.nq
D003-1table3columns1row/mappedd.nq
D003-1table3columns1row/r2rmla.ttl
D003-1table3columns1row/r2rmlb.ttl
D003-1table3columns1row/r2rmlc.ttl
D003-1table3columns1row/r2rmld.ttl
D004-1table2columnsprojection/create.sql
D004-1table2columnsprojection/directGraph.nt
D004-1table2columnsprojection/manifest.ttl
D004-1table2columnsprojection/mappeda.nq
D004-1table2columnsprojection/mappedb.nq
D004-1table2columnsprojection/r2rmla.ttl
D004-1table2columnsprojection/r2rmlb.ttl
D005-2duplicates0nulls/create.sql
D005-2duplicates0nulls/directGraph.nt
D005-2duplicates0nulls/manifest.ttl
D006-1table1primarykey1column1row/create.sql
D006-1table1primarykey1column1row/directGraph.nt
D006-1table1primarykey1column1row/manifest.ttl
D007-1table1primarykey2columns1row/create.sql
D007-1table1primarykey2columns1row/directGraph.nt
D007-1table1primarykey2columns1row/manifest.ttl
D007-1table1primarykey2columns1row/mappeda.nq
D007-1table1primarykey2columns1row/mappedb.nq
D007-1table1primarykey2columns1row/mappedc.nq
D007-1table1primarykey2columns1row/mappedd.nq
D007-1table1primarykey2columns1row/r2rmla.ttl
D007-1table1primarykey2columns1row/r2rmlb.ttl
D007-1table1primarykey2columns1row/r2rmlc.ttl
D007-1table1primarykey2columns1row/r2rmld.ttl
D008-1table1compositeprimarykey3columns1row/create.sql
D008-1table1compositeprimarykey3columns1row/directGraph.nt
D008-1table1compositeprimarykey3columns1row/manifest.ttl
D009-2tables1primarykey1foreingkey/create.sql
D009-2tables1primarykey1foreingkey/directGraph.nt
D009-2tables1primarykey1foreingkey/manifest.ttl
D009-2tables1primarykey1foreingkey/mapped.nq
D009-2tables1primarykey1foreingkey/r2rml.ttl
D010-SpecialChars/create.sql
D010-SpecialChars/manifest.ttl
D010-SpecialChars/mappeda.nq
D010-SpecialChars/mappedb.nq
D010-SpecialChars/mappedc.nq
D010-SpecialChars/r2rmla.ttl
D010-SpecialChars/r2rmlb.ttl
D010-SpecialChars/r2rmlc.ttl
D011-M2MRelations/create.sql
D011-M2MRelations/directGraph.nt
D011-M2MRelations/manifest.ttl
D011-M2MRelations/mappeda.nq
D011-M2MRelations/mappedb.nq
D011-M2MRelations/r2rmla.ttl
D011-M2MRelations/r2rmlb.ttl
D012-2tables2duplicates0nulls/create.sql
D012-2tables2duplicates0nulls/manifest.ttl
D012-2tables2duplicates0nulls/mappeda.nq
D012-2tables2duplicates0nulls/mappedb.nq
D012-2tables2duplicates0nulls/r2rmla.ttl
D012-2tables2duplicates0nulls/r2rmlb.ttl
D012-2tables2duplicates0nulls/r2rmlc.ttl
D012-2tables2duplicates0nulls/r2rmld.ttl
D013-1table3columns2rows1nullvalue/create.sql
D013-1table3columns2rows1nullvalue/directGraph.nt
D013-1table3columns2rows1nullvalue/manifest.ttl
D014-3tablesExample/create.sql
D014-3tablesExample/manifest.ttl
D014-3tablesExample/mappeda.nq
D014-3tablesExample/mappedb.nq
D014-3tablesExample/mappedc.nq
D014-3tablesExample/mappedd.nq
D014-3tablesExample/mappede.nq
D014-3tablesExample/r2rmla.ttl
D014-3tablesExample/r2rmlb.ttl
D014-3tablesExample/r2rmlc.ttl
D014-3tablesExample/r2rmld.ttl
D014-3tablesExample/r2rmle.ttl
D015-1tableSeveralLanguages/create.sql
D015-1tableSeveralLanguages/manifest.ttl
D015-1tableSeveralLanguages/mappeda.nq
D015-1tableSeveralLanguages/r2rmla.ttl
D015-1tableSeveralLanguages/r2rmlb.ttl
D016-1tableSQLdatatypes/create.sql
D016-1tableSQLdatatypes/manifest.ttl
D016-1tableSQLdatatypes/mappeda.nq
D016-1tableSQLdatatypes/r2rmla.ttl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D000-1table0rows/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+CREATE TABLE "Student" (
+       "Name" varchar(50)
+);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D000-1table0rows/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,1 @@
+# empty graph
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D000-1table0rows/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,34 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d000> a rdb2rdftest:DataBase;
+	dcterms:title "Empty table" ;
+	dcterms:identifier "D000-1table0rows" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0000>, <tc0000>;
+.
+
+<dg0000> a rdb2rdftest:DirectMapping;	
+	dcterms:title "Empty table"; 
+	dcterms:identifier "Direct Graph TC0000" ;
+	test:purpose "Tests if an empty table produces an empty RDF graph" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:database <d000> ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0000> a rdb2rdftest:R2RML ;	
+	dcterms:title "Empty table" ; 
+	dcterms:identifier "R2RMLTC000" ;
+	test:purpose "Tests if an empty table produces an empty RDF graph" ;
+	test:specificationReference "#physical-tables" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:database <d000> ;
+	rdb2rdftest:output "mapped.nq" ;
+	rdb2rdftest:mappingDocument "r2rml.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D000-1table0rows/mapped.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,1 @@
+# empty database
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D000-1table0rows/r2rml.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+        
+	rr:logicalTable [ rr:tableName "Student"; ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Name}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+CREATE TABLE Student (
+Name varchar(50)
+);
+INSERT INTO Student (Name) VALUES ('Venus');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,2 @@
+_:a <Student#Name> "Venus".
+_:a a <Student> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,46 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d001> a rdb2rdftest:DataBase;
+	dcterms:title "One table, one row" ;
+	dcterms:identifier "D001-1table1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0001>, <tc0001a>, <tc0001b> ;
+.
+
+<dg0001> a rdb2rdftest:DirectMapping;	
+	dcterms:title "One table, one row"; 
+	dcterms:identifier "Direct Graph TC0001" ;
+	test:purpose "Tests: (1) one column mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d001> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0001a> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0001a" ;
+	test:purpose "Tests: (1) one column mapping, no primary key; (2) subject URI generation by using one single column; (3) one column to one property" ;
+	test:specificationReference "#dfn-template-valued-term-map" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d001> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0001b> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0001b" ;
+	test:purpose "Tests: (1) one column mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d001> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,1 @@
+<http://example.com/Venus> <http://xmlns.com/foaf/0.1/name> "Venus" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,1 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fff <http://xmlns.com/foaf/0.1/name> "Venus" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "boricles.Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/{Name}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D001-1table1row/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "boricles.Student" ];
+
+    rr:subjectMap [ rr:column "Name"; rr:termType rr:BlankNode ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,5 @@
+CREATE TABLE "Student" (
+"ID" integer,
+"Name" varchar(50)
+);
+INSERT INTO "Student" ("ID", "Name") VALUES(10,'Venus');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+_:a a <Student> .
+_:a <Student#id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+_:a <Student#name> "Venus" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,126 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d002> a rdb2rdftest:DataBase;
+	dcterms:title "One table, two columns, one row" ;
+	dcterms:identifier "D002-1table2columns1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0002>, <tc0002a>, <tc0002b>, <tc0002c>, <tc0002d>, <tc0002e>, <tc0002f>, <tc0002g>, <tc0002h>, <tc0002i> ;
+.
+
+<dg0002> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "Direct Graph TC0002" ;
+	test:purpose "Tests: (1) two columns mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0002a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002a" ;
+	test:purpose "Tests: (1) two column mapping, no primary key; (2) subject URI generated by concatenation of two column values; (3) one column to one property; (4) presence of unqualified name for a rr:tableName" ;
+	test:specificationReference "#from-template" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0002b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002b" ;
+	test:purpose "Tests: (1) two column mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#dfn-r2rml-view" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0002c> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002c" ;
+	test:purpose "Tests the presence of an invalid SQL identifier" ;
+	test:specificationReference "#dfn-sql-identifier" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
+
+<tc0002d> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002d" ;
+	test:purpose "Tests the presence delimited identifiers" ;
+	test:specificationReference "#dfn-sql-identifier" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappedd.nq" ;
+	rdb2rdftest:mappingDocument "r2rmld.ttl" ;
+.
+
+<tc0002e> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002e" ;
+	test:purpose "Tests the presence of an invalid rr:tableName" ;
+	test:specificationReference "#dfn-sql-identifier" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmle.ttl" ;
+.
+
+<tc0002f> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002f" ;
+	test:purpose "Tests the presence of schema-qualified name for a rr:tableName" ;
+	test:specificationReference "#from-template" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:output "mappedf.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:mappingDocument "r2rmlf.ttl" ;
+.
+
+<tc0002g> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002g" ;
+	test:purpose "Tests the presence of an invalid SQL query" ;
+	test:specificationReference "#dfn-sql-identifier" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmlg.ttl" ;
+.
+
+<tc0002h> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002h" ;
+	test:purpose "Tests the presence of duplicate column names in the SELECT list of the SQL query" ;
+	test:specificationReference "#dfn-sql-identifier" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmlh.ttl" ;
+.
+
+<tc0002i> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0002i" ;
+	test:purpose "Tests the presence of a SQL Version identifier " ;
+	test:specificationReference "#dfn-r2rml-view" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d002> ;
+	rdb2rdftest:output "mappedi.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmli.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/10Venus> <http://xmlns.com/foaf/0.1/name> "Venus" .
+<http://example.com/10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://xmlns.com/foaf/0.1/name> "Venus" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/mappedd.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/10Venus> <http://xmlns.com/foaf/0.1/name> "Venus" .
+<http://example.com/10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/mappedf.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/10Venus> <http://xmlns.com/foaf/0.1/name> "Venus" .
+<http://example.com/10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/mappedi.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://xmlns.com/foaf/0.1/name> "Venus" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ffd <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,26 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/{ID}{Name}";
+                    rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+	]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,32 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+    
+    rr:logicalTable [ 
+                     rr:sqlQuery """
+                       Select ('Student' || ID ) AS StudentId
+                            , ID
+                            , Name
+                         from boricles.Student
+                       """
+                       ];
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,26 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/{ID}{Name}";
+                    rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "IDs"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+	]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmld.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,32 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+    
+    rr:logicalTable [ 
+                     rr:sqlQuery """
+                       Select ('Student' || ID ) AS StudentId
+                            , "ID"
+                            , "Name"
+                         from "boricles.Student"
+                       """
+                       ];
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmle.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,26 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "Students" ];
+
+    rr:subjectMap [ rr:template "http://example.com/{ID}{Name}";
+                    rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+	]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmlf.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,26 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    
+    rr:logicalTable [ rr:tableName "boricles.Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/{ID}{Name}";
+                    rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+	]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmlg.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,32 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+    
+    rr:logicalTable [ 
+                     rr:sqlQuery """
+                       Select ('Student' || ID ) AS StudentId
+                            , "ID"
+                            , "Name"
+                         "boricles.Student"
+                       """
+                       ];
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmlh.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,33 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+    
+    rr:logicalTable [ 
+                     rr:sqlQuery """
+                       Select ('Student' || ID ) AS StudentId
+                            , "ID"
+                            , "Name"
+			, "ID"
+                       from "boricles.Student"
+                       """
+                       ];
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D002-1table2columns1row/r2rmli.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,37 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+    
+    rr:logicalTable [ 
+                     rr:sqlQuery """
+                       Select ('Student' || ID ) AS StudentId
+                            , ID
+                            , Name
+                         from boricles.Student
+                       """;
+					   
+			rr:sqlVersion rr:SQL2008 .					   
+					   
+                       ];
+	
+	
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; rr:class foaf:Person ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,6 @@
+CREATE TABLE "Student" (
+"ID" integer,
+"FirstName" varchar(50),
+"LastName" varchar(50)
+);
+INSERT INTO "Student" ("ID", "FirstName", "LastName") VALUES (10,'Venus', 'Williams');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+_:a a <Student> .
+_:a <Student#ID> "10"<http://www.w3.org/2001/XMLSchema#integer> .
+_:a <Student#FirstName> "Venus" .
+_:a <Student#LastName> "Williams" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,70 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d003> a rdb2rdftest:DataBase;
+	dcterms:title "One table, two columns, one row" ;
+	dcterms:identifier "D003-1table3columns1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0003>, <tc0003a>, <tc0003b>, <tc0003c>, <tc0003d> ;
+.
+
+<dg0003> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "Direct Graph TC0003" ;
+	test:purpose "Tests: (1) two columns mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d003> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0003a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0003a" ;
+	test:purpose "Tests: (1) two column mapping, no primary key; (2) subject URI generated by concatenation of two column values; (3) one column to one property" ;
+	test:specificationReference "#from-column" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d003> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0003b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0003b" ;
+	test:purpose "Tests: (1) two column mapping, no primary key; (2) generation of a \"BlankNode\" subject; (3) one column to one property" ;
+	test:specificationReference "#from-template"  ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d003> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0003c> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0003c" ;
+	test:purpose "Tests rr:termType rr:BlankNode and rr:Literal" ;
+	test:specificationReference "#from-template"  ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d003> ;
+	rdb2rdftest:output "mappedc.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
+
+<tc0003d> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two columns mapping" ; 
+	dcterms:identifier "R2RMLTC0003d" ;
+	test:purpose "Tests rr:termType rr:IRI" ;
+	test:specificationReference "#from-template"  ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d003> ;
+	rdb2rdftest:output "mappedd.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmld.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+<http://example.com/Student10VenusWilliams> <http://xmlns.com/foaf/0.1/lastName> "Williams" .
+<http://example.com/Student10VenusWilliams> <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+<http://example.com/Student10VenusWilliams> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/Student10VenusWilliams> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/Student10VenusWilliams> <http://xmlns.com/foaf/0.1/name> "Venus Williams" .
+<http://example.com/Student10VenusWilliams> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/Student10VenusWilliams> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/mappedc.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+_:10VenusWilliams <http://xmlns.com/foaf/0.1/lastName> "Williams" .
+_:10VenusWilliams <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+_:10VenusWilliams <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/mappedd.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+<http://example.com/10VenusWilliams> <http://xmlns.com/foaf/0.1/firstName> <http://example.com/data/Venus> .
+<http://example.com/10VenusWilliams> <http://example.com//lastName> <http://example.com/data/Williams> .
+<http://example.com/10VenusWilliams> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,32 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+     rr:logicalTable [ rr:tableName "boricles.Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/Student{ID}{FirstName}{LastName}";
+                    rr:class foaf:Person  ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:firstName ]; 
+      rr:objectMap    [ rr:column "FirstName" ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:lastName ]; 
+      rr:objectMap    [ rr:column "LastName" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,34 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+     rr:logicalTable [ 
+                     rr:sqlQuery """
+                     SELECT ID,
+                            (FirstName || ' ' || LastName) AS Name,
+                            FirstName,
+                            LastName
+                     FROM Student
+                     """
+                     ];
+
+    rr:subjectMap [ rr:template "http://example.com/Student{ID}{FirstName}{LastName}"; 
+                    rr:class foaf:Person ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,41 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+     rr:logicalTable [ 
+                      rr:sqlQuery """
+                     SELECT ('Student' || "ID" || "FirstName" || "LastName") as StudentID,
+                            "ID",
+                            "FirstName",
+                            "LastName"
+                     FROM "Student"
+                     """
+                     ];
+
+    rr:subjectMap [ rr:column "StudentID"; rr:termType rr:BlankNode;  ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:firstName ]; 
+      rr:objectMap    [ rr:column "FirstName";
+						rr:termType rr:Literal ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:lastName ]; 
+      rr:objectMap    [ rr:column "LastName";
+						rr:termType rr:Literal ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D003-1table3columns1row/r2rmld.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,41 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+     rr:logicalTable [ 
+                      rr:sqlQuery """
+                     SELECT ('Student' || "ID" || "FirstName" || "LastName") as StudentID,
+                            "ID",
+                            "FirstName",
+                            "LastName"
+                     FROM "Student"
+                     """
+                     ];
+
+    rr:subjectMap [ rr:template "http://example.com/{StudentID}"; rr:termType rr:IRI;  ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:firstName ]; 
+      rr:objectMap    [ rr:template "http://example.com/data/{FirstName}";
+						rr:termType rr:IRI ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:lastName ]; 
+      rr:objectMap    [ rr:template "http://example.com/data/{LastName}";
+						rr:termType rr:IRI ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,5 @@
+CREATE TABLE "Student_Sport"(
+      "Student" varchar(50),
+      "Sport" varchar(50)
+);
+INSERT INTO "Student_Sport" ("Student","Sport") VALUES ('Venus', 'Tennis');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+_:a a <Student_Sport> .
+_:a <Student_Sport#Student> "Venus" .
+_:a <Student_Sport#Sport> "Tennis" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,46 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d004> a rdb2rdftest:DataBase;
+	dcterms:title "One table, two columns, projection" ;
+	dcterms:identifier "D004-1table2columnsprojection" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0004>, <tc0004a>, <tc0004b>  ;
+.
+
+<dg0004> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Three column mapping"; 
+	dcterms:identifier "Direct Graph TC0004" ;
+	test:purpose "Tests: (1) two column mapping, no primary key, (2) generation of a \"BlankNode\" subject; (3) one row table to two different resources" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d004> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0004a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Projection" ; 
+	dcterms:identifier "R2RMLTC0004a" ;
+	test:purpose "Tests: (1) two column mapping, no primary key, (2) subject URI generated by a column value; (3) one row table to two different resources" ;
+	test:specificationReference "#typing" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d004> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0004b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Projection" ; 
+	dcterms:identifier "R2RMLTC0004b" ;
+	test:purpose "Tests: (1) two column mapping, no primary key, (2) generation of a \"BlankNode\" subject; (3) one row table to two different resources" ;
+	test:specificationReference "#r2rml-views" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d004> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+<http://example.com/Venus> <http://xmlns.com/foaf/0.1/name> "Venus" .
+<http://example.com/Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
+<http://example.com/Tennis> <http://xmlns.com/foaf/0.1/name> "Tennis" .
+<http://example.com/Tennis> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Sport> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff6 <http://xmlns.com/foaf/0.1/name> "Tennis" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff6 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Sport> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff7 <http://xmlns.com/foaf/0.1/name> "Venus" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff7 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,35 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "Student_Sport" ];
+	
+    rr:subjectMap [ rr:template "http://example.com/{Student}";
+                    rr:class ex:Student ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Student" ]
+    ]
+    .
+
+<TriplesMap2>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "Student_Sport" ];
+	
+    rr:subjectMap [ rr:template "http://example.com/{Sport}";
+                    rr:class ex:Sport  ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Sport" ]
+    ]
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D004-1table2columnsprojection/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,42 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+      rr:logicalTable [ rr:SQLQuery """
+       Select ('Student' || Student) AS StudentId
+         from Student_Sport
+       """;
+	   ] ;
+
+    rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode;
+                    rr:class ex:Student ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Student" ]
+    ]
+    .
+
+<TriplesMap2>
+    a rr:TriplesMap;
+
+      rr:SQLQuery """
+       Select ('Sport' || Sport) AS SportId
+         from Student_Sport
+       """;
+
+    rr:subjectMap [ rr:column "SportId"; rr:termType rr:BlankNode;
+                    rr:class ex:Sport  ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ rr:column "Sport" ]
+    ]
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D005-2duplicates0nulls/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,7 @@
+CREATE TABLE "IOUs" (
+      "fname" CHAR(20),
+      "lname"  CHAR(20),
+      "amount" FLOAT);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Bob', 'Smith', 30);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Sue', 'Jones', 20);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Bob', 'Smith', 30);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D005-2duplicates0nulls/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,15 @@
+_:a a <IOUs> .
+_:a <IOUs#fname> "Bob" .
+_:a <IOUs#lname> "Smith" .
+_:a <IOUs#amount> "30"^^<http://www.w3.org/2001/XMLSchema#float> .
+  
+_:b a <IOUs> .
+_:b <IOUs#fname> "Sue" .
+_:b <IOUs#lname> "Jones" .
+_:b <IOUs#amount> "20"^^<http://www.w3.org/2001/XMLSchema#float> .
+  
+_:c a <IOUs> .
+_:c <IOUs#fname> "Bob" .
+_:c <IOUs#lname> "Smith" .
+_:c <IOUs#amount> "30"^^<http://www.w3.org/2001/XMLSchema#float> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D005-2duplicates0nulls/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,22 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d005> a rdb2rdftest:DataBase;
+	dcterms:title "Duplicate tuples, no primary key" ;
+	dcterms:identifier "D005-2duplicates0nulls" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0005> ;
+.
+
+<dg0005> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Duplicate tuples, no primary key"; 
+	dcterms:identifier "Direct Graph TC0005" ;
+	test:purpose "Tests the generation of Blank Nodes for duplicate tuples" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d005> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D006-1table1primarykey1column1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+CREATE TABLE "Student" (
+"Name" varchar(50) PRIMARY KEY
+);
+INSERT INTO "Student" ("Name") VALUES ('Venus');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D006-1table1primarykey1column1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<Student/Name.Venus#_> <Student#Name> "Venus" .
+<Student/Name.Venus#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Student> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D006-1table1primarykey1column1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,22 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d006> a rdb2rdftest:DataBase;
+	dcterms:title "One table, one column, one primary key" ;
+	dcterms:identifier "D006-1table1primarykey1column1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0006> ;
+.
+
+<dg0006> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "One table, one column, one primary key"; 
+	dcterms:identifier "Direct Graph TC0006" ;
+	test:purpose "Tests a table with a column that is a primary key" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d006> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,6 @@
+CREATE TABLE "Student" (
+"ID" integer,
+"Name" varchar(50),
+PRIMARY KEY ("ID")
+);
+INSERT INTO "Student" ("ID", "Name") VALUES(10,'Venus');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<Student/ID.10#_> <Student#ID> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<Student/ID.10#_> <Student#Name> "Venus" .
+<Student/ID.10#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Student> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,70 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d007> a rdb2rdftest:DataBase;
+	dcterms:title "One table, one column, one primary key" ;
+	dcterms:identifier "D007-1table1primarykey2columns1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0007>, <tc0007a>, <tc0007b>, <tc0007c>, <tc0007d> ;
+.
+
+<dg0007> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "A table with a primary key and 2 columns"; 
+	dcterms:identifier "Direct Graph TC0007" ;
+	test:purpose "Tests a table with a primary key and 2 columns" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d007> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0007a> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0007a" ;
+	test:purpose "Tests constant-value term map by using rr:constant property" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d007> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0007b> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0007b" ;
+	test:purpose "Tests constant-value term map by using constant shortcut properties rr:predicate, rr:object and rr:graph. Also directly using rr:tableName" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d007> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0007c> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0007c" ;
+	test:purpose "Tests subjectmap with more than one class IRIs, rr:class" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d007> ;
+	rdb2rdftest:output "mappedc.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
+
+<tc0007d> a rdb2rdftest:R2RML ;	
+	dcterms:title "One column mapping" ; 
+	dcterms:identifier "R2RMLTC0007d" ;
+	test:purpose "Tests subjectmap with an alternative of having rr:class, i.e., by specifying an rr:predicateObjectMap with predicate rdf:type" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d007> ;
+	rdb2rdftest:output "mappedd.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmld.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/Student10Venus> <http://xmlns.com/foaf/0.1/firstName> "Venus" <http://example.com/PersonGraph> .
+<http://example.com/Student10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> <http://example.com/PersonGraph> . 
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>  <http://example.com/PersonGraph> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/Student10Venus> <http://xmlns.com/foaf/0.1/firstName> "Venus" <http://example.com/PersonGraph> .
+<http://example.com/Student10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> <http://example.com/PersonGraph> . 
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>  <http://example.com/PersonGraph> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/mappedc.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+<http://example.com/Student10Venus> <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+<http://example.com/Student10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> . 
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/mappedd.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,4 @@
+<http://example.com/Student10Venus> <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+<http://example.com/Student10Venus> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> . 
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
+<http://example.com/Student10Venus> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,36 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName "Student" ];
+
+    rr:subjectMap [ rr:template "http://example.com/Student{ID}{Name}"; 
+					rr:graphMap [ rr:constant ex:PersonGraph; ]
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicateMap [ rr:constant rdf:type; ];
+		rr:objectMap [ rr:constant foaf:Person; ]
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicateMap [ rr:constant ex:id; ];
+		rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:constant foaf:firstName; ];
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,36 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+	rr:tableName "Student";
+
+    rr:subjectMap [ rr:template "http://example.com/Student{ID}{Name}"; 
+				    rr:graph ex:PersonGraph;
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicate rdf:type;
+		rr:object foaf:Person;
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicate  ex:id;
+		rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate foaf:firstName;
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,31 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName "Student" ];
+
+    rr:subjectMap [ 
+		rr:template "http://example.com/Student{ID}{Name}"; 
+		rr:class foaf:Person,ex:Student; 
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicateMap [ rr:constant ex:id; ];
+		rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:constant foaf:firstName; ];
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D007-1table1primarykey2columns1row/r2rmld.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,42 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+     a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName "Student" ];
+
+    rr:subjectMap [ 
+		rr:template "http://example.com/Student{ID}{Name}"; 
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicate rdf:type;
+		rr:object foaf:Person;
+	];
+
+    rr:predicateObjectMap
+    [ 
+		rr:predicate rdf:type;
+		rr:object ex:Student;
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicateMap [ rr:constant ex:id; ];
+		rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:constant foaf:firstName; ];
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D008-1table1compositeprimarykey3columns1row/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,7 @@
+CREATE TABLE "Student" (
+"ID" integer,
+"Name" varchar(50),
+"Sport" varchar (50),
+PRIMARY KEY ("ID","Name")
+);
+INSERT INTO "Student" ("ID", "Name","Sport") VALUES(10,'Venus Williams','Tennis');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D008-1table1compositeprimarykey3columns1row/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,5 @@
+<Student/ID.10_Name.Venus+Williams#_> <Student#ID> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<Student/ID.10_Name.Venus+Williams#_> <Student#Name> "Venus Williams" .
+<Student/ID.10_Name.Venus+Williams#_> <Student#Sport> "Tennis" .
+<Student/ID.10_Name.Venus+Williams#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Student> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D008-1table1compositeprimarykey3columns1row/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,22 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d008> a rdb2rdftest:DataBase;
+	dcterms:title "Composite primary key" ;
+	dcterms:identifier "D008-1table1compositeprimarykey3columns1row" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0008> ;
+.
+
+<dg0008> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Composite primary key"; 
+	dcterms:identifier "Direct Graph TC0008" ;
+	test:purpose "Tests a table with a composite primary key" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d008> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D009-2tables1primarykey1foreingkey/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,18 @@
+CREATE TABLE "Sport" (
+"ID" integer,
+"Name" varchar (50),
+PRIMARY KEY ("ID")
+);
+
+CREATE TABLE "Student" (
+"ID" integer,
+"Name" varchar(50),
+"Sport" integer,
+PRIMARY KEY ("ID"),
+FOREIGN KEY("Sport") REFERENCES "Sport"("ID")
+);
+
+INSERT INTO "Sport" ("ID", "Name") VALUES (100,'Tennis');
+INSERT INTO "Student" ("ID", "Name", "Sport") VALUES (10,'Venus Williams', 100);
+INSERT INTO "Student" ("ID", "Name", "Sport") VALUES (20,'Demi Moore', NULL);
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D009-2tables1primarykey1foreingkey/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,13 @@
+<Student/ID.20#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Student> .
+<Student/ID.20#_> <Student#ID> "20"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<Student/ID.20#_> <Student#Name> "Demi Moore" .
+
+<Student/ID.10#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Student> .
+<Student/ID.10#_> <Student#ID> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<Student/ID.10#_> <Student#Name> "Venus Williams" .
+<Student/ID.10#_> <Student#Sport> <Sport/ID.100#_> .
+
+<Sport/ID.100#_> <Sport#ID> "100"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<Sport/ID.100#_> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <Sport> .
+<Sport/ID.100#_> <Sport#Name> "Tennis" .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D009-2tables1primarykey1foreingkey/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,34 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d009> a rdb2rdftest:DataBase;
+	dcterms:title "Two tables 1 primary key 1 foreing key" ;
+	dcterms:identifier "D009-2tables1primarykey1foreingkey" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0009>, <tc0009>;
+.
+
+<dg0009> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Two tables 1 primary key 1 foreing key"; 
+	dcterms:identifier "Direct Graph TC0009" ;
+	test:purpose "Tests two tables with a primary key and a foreing key" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d009> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0009> a rdb2rdftest:R2RML ;	
+	dcterms:title "Two tables to multiple graphs" ; 
+	dcterms:identifier "R2RMLTC009" ;
+	test:purpose "Test that results from distinct parts of the mapping can be directed to different target graphs." ;
+	test:specificationReference "#named-graphs" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d009> ;
+	rdb2rdftest:output "mapped.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rml.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D009-2tables1primarykey1foreingkey/mapped.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,7 @@
+<http://example.com/resource/student_10> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ontology/Student> <http://example.org/graph/students> .
+<http://example.com/resource/student_10> <http://xmlns.com/foaf/0.1/name> "Venus Williams" <http://example.org/graph/students> .
+<http://example.com/resource/student_20> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ontology/Student> <http://example.org/graph/students> .
+<http://example.com/resource/student_20> <http://xmlns.com/foaf/0.1/name> "Demi Moore" <http://example.org/graph/students> .
+<http://example.com/resource/sport_100> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ontology/Sport> <http://example.org/graph/sports> .
+<http://example.com/resource/sport_100> <http://www.w3.org/2000/01/rdf-schema#label> "Tennis" <http://example.org/graph/sports> .
+<http://example.com/resource/student_10> <http://example.com/ontology/practises> <http://example.com/resource/sport_100> <http://example.org/graph/practise> .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D009-2tables1primarykey1foreingkey/r2rml.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,68 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+        
+	rr:logicalTable [ rr:tableName  "Student" ];
+	
+    rr:subjectMap 
+    [ 
+        rr:template "http://example.com/resource/student_{ID}";
+        rr:termType rr:IRI;
+        rr:class <http://example.com/ontology/Student>;
+        rr:graphMap [ rr:graph <http://example.com/graph/students> ] ;
+    ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ 
+             rr:column "Name";
+             rr:termType rr:Literal;
+      ];
+      rr:graphMap [ rr:graph <http://example.com/graph/students> ];
+    ];
+
+    rr:refPredicateObjectMap
+    [ 
+      rr:refPredicateMap [ rr:predicate <http://example.com/ontology/practises> ]; 
+      rr:refObjectMap    [ 
+           rr:parentTriplesMap <TriplesMap2>;
+           rr:joinCondition [
+				rr:child "Sport" ;
+				rr:parent "ID" ;
+		   ]
+      ];
+      rr:graphMap [ rr:graph <http://example.com/graph/practise> ];
+    ];
+    .
+
+<TriplesMap2>
+    a rr:TriplesMapClass;
+        
+		
+	rr:logicalTable [ rr:tableName  "Sport" ];
+
+    rr:subjectMap 
+    [ 
+        rr:template "http://example.com/resource/sport_{ID}";
+        rr:termType rr:IRI;
+        rr:class <http://example.com/ontology/Sport>;
+        rr:graphMap [ rr:graph <http://example.com/graph/sports> ];
+    ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate rdfs:label ]; 
+      rr:objectMap    [ 
+             rr:column "Name"; 
+             rr:termType rr:Literal;
+      ];
+      rr:graphMap [ rr:graph <http://example.com/graph/sports> ];
+    ];
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,8 @@
+CREATE TABLE "Country Info" (
+  "Country Code" INTEGER PRIMARY KEY,
+  "Name" CHAR(100),
+  "ISO 3166" CHAR(10)
+);
+INSERT INTO "Country Info" ("Country Code", "Name", "ISO 3166") VALUES (1, 'Bolivia, Plurinational State of', 'BO');
+INSERT INTO "Country Info" ("Country Code", "Name", "ISO 3166") VALUES (2, 'Ireland', 'IE');
+INSERT INTO "Country Info" ("Country Code", "Name", "ISO 3166") VALUES (3, 'Saint Martin (French part)', 'MF');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,47 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d010> a rdb2rdftest:DataBase;
+	dcterms:title "Table with Special Chars" ;
+	dcterms:identifier "D010-SpecialChars" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <tc0010a>, <tc0010b>, <tc0010c>  ;
+.
+
+<tc0010a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with Special Chars" ; 
+	dcterms:identifier "R2RMLTC010a" ;
+	test:purpose "Tests a template with blank space in column" ;
+	test:specificationReference "#dfn-template-valued-term-map" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d010> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0010b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with Special Chars" ; 
+	dcterms:identifier "R2RMLTC010b" ;
+	test:purpose "Tests a template with special chars in column value" ;
+	test:specificationReference "#dfn-template-valued-term-map" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d010> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0010c> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with Special Chars" ; 
+	dcterms:identifier "R2RMLTC010c" ;
+	test:purpose "Tests a template with special chars in column value and backslash escapes in string templates" ;
+	test:specificationReference "#dfn-template-valued-term-map" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d010> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappedc.nq" ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/1> <http://example.com/name> "Bolivia, Plurinational State of" .
+<http://example.com/2> <http://example.com/name> "Ireland" .
+<http://example.com/3> <http://example.com/name> "Saint Martin (French part)" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/1Bolivia%2C%20Plurinational%20State%20of> <http://example.com/name> "Bolivia, Plurinational State of" .
+<http://example.com/2Ireland> <http://example.com/name> "Ireland" .
+<http://example.com/3Saint%20Martin%20(French%20part)> <http://example.com/name> "Saint Martin (French part)" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/mappedc.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,3 @@
+<http://example.com/1Bolivia%2C%20Plurinational%20State%20of> <http://example.com/code> "{{{ BO }}}" .
+<http://example.com/2Ireland> <http://example.com/code> "{{{ IE }}}" .
+<http://example.com/3Saint%20Martin%20(French%20part)> <http://example.com/code> "{{{ MF }}}" .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+        
+	rr:logicalTable [ rr:tableName "Country Info"; ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Country Code}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+        
+	rr:logicalTable [ rr:tableName "Country Info"; ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Country Code}{Name}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:name ]; 
+      rr:objectMap    [ rr:column "Name" ]
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D010-SpecialChars/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+        
+	rr:logicalTable [ rr:tableName "Country Info"; ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Country Code}{Name}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:code ]; 
+      rr:objectMap    [ rr:template "\\{\\{\\{ {ISO 3166} \\}\\}\\}" ]
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,29 @@
+CREATE TABLE "Student" (
+"ID" integer PRIMARY KEY,
+"FirstName" varchar(50),
+"LastName" varchar(50)
+);
+CREATE TABLE "Sport" (
+"ID" integer PRIMARY KEY,
+"Description" varchar(50)
+);
+CREATE TABLE "Student_Sport" (
+"ID_Student" integer,
+"ID_Sport" integer,
+PRIMARY KEY ("ID_Student","ID_Sport"),
+FOREIGN KEY ("ID_Student") REFERENCES "Student"("ID"),
+FOREIGN KEY ("ID_Sport") REFERENCES "Sport"("ID")
+);
+
+INSERT INTO "Student" ("ID","FirstName","LastName") VALUES (10,'Venus', 'Williams');
+INSERT INTO "Student" ("ID","FirstName","LastName") VALUES (11,'Fernando', 'Alonso');
+INSERT INTO "Student" ("ID","FirstName","LastName") VALUES (12,'David', 'Villa');
+
+INSERT INTO "Sport" ("ID", "Description") VALUES (110,'Tennis');
+INSERT INTO "Sport" ("ID", "Description") VALUES (111,'Football');
+INSERT INTO "Sport" ("ID", "Description") VALUES (112,'Formula1');
+
+INSERT INTO "Student_Sport" ("ID_Student", "ID_Sport") VALUES (10,110);
+INSERT INTO "Student_Sport" ("ID_Student", "ID_Sport") VALUES (11,111);
+INSERT INTO "Student_Sport" ("ID_Student", "ID_Sport") VALUES (11,112);
+INSERT INTO "Student_Sport" ("ID_Student", "ID_Sport") VALUES (12,111);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,44 @@
+<Student/ID.12#_> <rdf:type> <Student> .
+<Student/ID.12#_> <Student#FirstName> "David".
+<Student/ID.12#_> <Student#ID> 12 .
+<Student/ID.12#_> <Student#LastName> "Villa" .
+
+<Student_Sport/ID_Student.10,ID_Sport.110#_> <rdf:type> <Student_Sport> .
+<Student_Sport/ID_Student.10,ID_Sport.110#_> <Student_Sport#ID_Sport> <Sport/ID.110#_> .
+<Student_Sport/ID_Student.10,ID_Sport.110#_> <Student_Sport#ID_Student>  <Student/ID.10#_> .
+
+<Student/ID.11#_> <rdf:type> <Student> .
+<Student/ID.11#_> <Student#FirstName> "Fernando" .
+<Student/ID.11#_> <Student#ID> 11 .
+<Student/ID.11#_> <Student#LastName> "Alonso" .
+
+<Sport/ID.111#_>  <rdf:type>  <Sport>.
+<Sport/ID.111#_> <Sport#Description> "Football" .
+<Sport/ID.111#_> <Sport#ID> 111 .
+
+<Sport/ID.110#_> <rdf:type>  <Sport> .
+<Sport/ID.110#_> <Sport#Description> "Tennis" .
+<Sport/ID.110#_> <Sport#ID> 110 .
+
+<Student_Sport/ID_Student.12,ID_Sport.111#_> <rdf:type> <Student_Sport> .
+<Student_Sport/ID_Student.12,ID_Sport.111#_> <Student_Sport#ID_Sport>  <Sport/ID.111#_> .
+<Student_Sport/ID_Student.12,ID_Sport.111#_> <Student_Sport#ID_Student> <Student/ID.12#_> .
+
+<Student_Sport/ID_Student.11,ID_Sport.111#_> <rdf:type>  <Student_Sport> .
+<Student_Sport/ID_Student.11,ID_Sport.111#_> <Student_Sport#ID_Sport> <Sport/ID.111#_> .
+<Student_Sport/ID_Student.11,ID_Sport.111#_> <Student_Sport#ID_Student> <Student/ID.11#_> .
+
+<Student_Sport/ID_Student.11,ID_Sport.112#_> <rdf:type> <Student_Sport> .
+<Student_Sport/ID_Student.11,ID_Sport.112#_> <Student_Sport#ID_Sport> <Sport/ID.112#_> .
+<Student_Sport/ID_Student.11,ID_Sport.112#_> <Student_Sport#ID_Student>  <Student/ID.11#_> .
+
+<Sport/ID.112#_>  <rdf:type>  <Sport> .
+<Sport/ID.112#_>  <Sport#Description> "Formula1" .
+<Sport/ID.112#_>  <Sport#ID> 112 .
+
+<Student/ID.10#_> <rdf:type>  <Student> .
+<Student/ID.10#_> <Student#FirstName> "Venus" .
+<Student/ID.10#_> <Student#ID> 10 .
+<Student/ID.10#_> <Student#LastName> "Williams" .
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,46 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d011> a rdb2rdftest:DataBase;
+	dcterms:title "Many to Many relations" ;
+	dcterms:identifier "D011-M2MRelations" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0011>, <tc0011a>, <tc0011b>;
+.
+
+<dg0011> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Many to Many relations"; 
+	dcterms:identifier "Direct Graph TC0011" ;
+	test:purpose "Tests M to M relations" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d011> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "directGraph.nt" ;
+.
+
+<tc0011a> a rdb2rdftest:R2RML ;	
+	dcterms:title "M to N relation, by using a SQL query" ; 
+	dcterms:identifier "R2RMLTC011a" ;
+	test:purpose "Tests, M to N relations, by using a SQL query" ;
+	test:specificationReference "#r2rml-views" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d011> ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0011b> a rdb2rdftest:R2RML ;	
+	dcterms:title "M to N relation, by using an additional Triples Map" ; 
+	dcterms:identifier "R2RMLTC011b" ;
+	test:purpose "Tests, M to N relations, by using an additional Triples Map" ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d011> ;
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+<http://example.com/110Tennis> <http://example.com/description> "Tennis" .
+<http://example.com/110Tennis> <http://example.com/id> "110"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/10VenusWilliams> <http://example.com/plays> <http://example.com/110Tennis> .
+<http://example.com/10VenusWilliams> <http://xmlns.com/foaf/0.1/lastName> "Williams" .
+<http://example.com/10VenusWilliams> <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+<http://example.com/10VenusWilliams> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/111Football> <http://example.com/description> "Football" .
+<http://example.com/111Football> <http://example.com/id> "111"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/12DavidVilla> <http://example.com/plays> <http://example.com/111Football> .
+<http://example.com/12DavidVilla> <http://xmlns.com/foaf/0.1/lastName> "Villa" .
+<http://example.com/12DavidVilla> <http://xmlns.com/foaf/0.1/firstName> "David" .
+<http://example.com/12DavidVilla> <http://example.com/id> "12"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/112Formula1> <http://example.com/description> "Formula1" .
+<http://example.com/112Formula1> <http://example.com/id> "112"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/11FernandoAlonso> <http://example.com/plays> <http://example.com/112Formula1> .
+<http://example.com/11FernandoAlonso> <http://example.com/plays> <http://example.com/111Football> .
+<http://example.com/11FernandoAlonso> <http://xmlns.com/foaf/0.1/lastName> "Alonso" .
+<http://example.com/11FernandoAlonso> <http://xmlns.com/foaf/0.1/firstName> "Fernando" .
+<http://example.com/11FernandoAlonso> <http://example.com/id> "11"^^<http://www.w3.org/2001/XMLSchema#integer> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,22 @@
+<http://example.com/student/10> <http://xmlns.com/foaf/0.1/lastName> "Williams" .
+<http://example.com/student/10> <http://xmlns.com/foaf/0.1/firstName> "Venus" .
+<http://example.com/student/10> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
+<http://example.com/student/12> <http://xmlns.com/foaf/0.1/lastName> "Villa" .
+<http://example.com/student/12> <http://xmlns.com/foaf/0.1/firstName> "David" .
+<http://example.com/student/12> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
+<http://example.com/student/11> <http://xmlns.com/foaf/0.1/lastName> "Alonso" .
+<http://example.com/student/11> <http://xmlns.com/foaf/0.1/firstName> "Fernando" .
+<http://example.com/student/11> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Student> .
+<http://example.com/sport/110> <http://example.com/description> "Tennis" .
+<http://example.com/sport/110> <http://example.com/id> "110"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/sport/110> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Sport> .
+<http://example.com/sport/111> <http://example.com/description> "Football" .
+<http://example.com/sport/111> <http://example.com/id> "111"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/sport/111> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Sport> .
+<http://example.com/sport/112> <http://example.com/description> "Formula1" .
+<http://example.com/sport/112> <http://example.com/id> "112"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/sport/112> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/Sport> .
+<http://example.com/student/10> <http://example.com/plays> <http://example.com/sport/110> .
+<http://example.com/student/12> <http://example.com/plays> <http://example.com/sport/111> .
+<http://example.com/student/11> <http://example.com/plays> <http://example.com/sport/112> .
+<http://example.com/student/11> <http://example.com/plays> <http://example.com/sport/111> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,69 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+    rr:logicalTable [ rr:sqlQuery """
+       SELECT Student.ID as ID,
+              Student.FirstName as FirstName,
+              Student.LastName as LastName,
+              Sport.Description as Description,
+              Sport.ID as Sport_ID
+       FROM Student,Sport,Student_Sport
+       WHERE Student.ID = Student_Sport.ID_Student
+       AND Sport.ID = Student_Sport.ID_Sport;
+       """; ];
+
+    rr:subjectMap [ rr:template "http://example.com/{ID}{FirstName}{LastName}" ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:firstName ]; 
+      rr:objectMap    [ rr:column "FirstName" ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:lastName ]; 
+      rr:objectMap    [ rr:column "LastName" ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:plays ]; 
+      rr:objectMap    [ rr:template "http://example.com/{Sport_ID}{Description}" ]
+    ]
+    .
+
+<TriplesMap2>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "Sport" ];
+	
+    rr:subjectMap [ 
+		rr:template "http://example.com/{ID}{Description}"; 
+		rr:class ex:Sport; 
+	];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:description ]; 
+      rr:objectMap    [ rr:column "Description" ]
+    ]
+    .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D011-M2MRelations/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,56 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    rr:logicalTable [ rr:tableName "Student"; ] ;
+    rr:subjectMap [
+        rr:template "http://example.com/student/{ID}";
+        rr:class ex:Student;
+    ];
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:firstName ]; 
+      rr:objectMap    [ rr:column "FirstName" ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:lastName ]; 
+      rr:objectMap    [ rr:column "LastName" ]
+    ]
+	.	
+    
+<TriplesMap2>
+    rr:logicalTable [ rr:tableName "Sport"; ] ;
+    rr:subjectMap [
+        rr:template "http://example.com/sport/{ID}";
+        rr:class ex:Sport;
+    ];
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:id ]; 
+      rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:description ]; 
+      rr:objectMap    [ rr:column "Description" ]
+    ]
+	.
+
+<LinkMap_1_2>
+   
+   rr:logicalTable [ rr:tableName "Student_Sport" ];
+   
+   rr:subjectMap [ rr:template "http://example.com/student/{ID_Student}" ];
+   
+   rr:predicateObjectMap [
+       rr:predicateMap [ rr:predicate ex:plays ];
+       rr:objectMap [ rr:template "http://example.com/sport/{ID_Sport}" ];
+   ].
+   
+   
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,14 @@
+CREATE TABLE "IOUs" (
+      "fname" CHAR(20),
+      "lname" CHAR(20),
+      "amount" FLOAT);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Bob', 'Smith', 30);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Sue', 'Jones', 20);
+INSERT INTO "IOUs" ("fname", "lname", "amount") VALUES ('Bob', 'Smith', 30);
+CREATE TABLE "Lives" (
+      "fname" CHAR(20),
+      "lname" CHAR(20),
+      "city" CHAR(20));
+INSERT INTO "Lives" ("fname", "lname", "city") VALUES ('Bob', 'Smith', 'London');
+INSERT INTO "Lives" ("fname", "lname", "city") VALUES ('Sue', 'Jones', 'Madrid');
+INSERT INTO "Lives" ("fname", "lname", "city") VALUES ('Bob', 'Smith', 'London');
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,58 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . 
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d012> a rdb2rdftest:DataBase;
+	dcterms:title "Two tables two duplicates zero nulls" ;
+	dcterms:identifier "D012-2tables2duplicates0nulls" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <tc0012a>, <tc0012b>, <tc0012c>, <tc0012d> ;
+.
+
+<tc0012a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Duplicate tuples generate same blank node" ; 
+	dcterms:identifier "R2RMLTC012a" ;
+	test:purpose "Tests that blank nodes with same identifier and in the same graph but generated by different logical rows are considered equivalent." ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d012> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0012b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Duplicate tuples generate same blank node" ; 
+	dcterms:identifier "R2RMLTC012b" ;
+	test:purpose "Tests that blank nodes with same identifier and in the same graph but generated by different logical rows are considered equivalent." ;
+	test:specificationReference "#termtype" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d012> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0012c> a rdb2rdftest:R2RML ;	
+	dcterms:title "TriplesMap without subjectMap" ; 
+	dcterms:identifier "R2RMLTC012c" ;
+	test:purpose "Tests a R2RML with missing information, TriplesMap without subjectMap." ;
+	test:specificationReference "#data-errors" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d012> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
+
+<tc0012d> a rdb2rdftest:R2RML ;	
+	dcterms:title "TriplesMap with two subjectMap" ; 
+	dcterms:identifier "R2RMLTC012d" ;
+	test:purpose "Tests a R2RML with wrong information, TriplesMap with two subjectMap." ;
+	test:specificationReference "#data-errors" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d012> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmld.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,6 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff3 <http://example.com/amount> "30"^^<http://www.w3.org/2001/XMLSchema#float> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff3 <http://xmlns.com/foaf/0.1/name> "Bob Smith" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff3 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/IOU> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff2 <http://example.com/amount> "20"^^<http://www.w3.org/2001/XMLSchema#float> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff2 <http://xmlns.com/foaf/0.1/name> "Sue Jones" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7ff2 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/IOU> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,6 @@
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fef <http://example.com/city> "London" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fef <http://xmlns.com/foaf/0.1/name> "Bob Smith" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fef <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/IOU> .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fee <http://example.com/amount> "Madrid" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fee <http://xmlns.com/foaf/0.1/name> "Sue Jones" .
+_:AX2dX38ec05dcX3aX131488bea58X3aXX2dX7fee <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/IOU> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,36 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "IOUs" ];
+	
+    rr:subjectMap [
+            rr:template "{fname}_{lname}_{amount}"; 
+            rr:termType rr:BlankNode;
+            rr:class ex:IOU; 
+      ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ 
+            rr:template "{fname} {lname}";
+            rr:termType rr:Literal ;
+      ]
+    ];
+    
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:amount ]; 
+      rr:objectMap    [ 
+            rr:column "amount";
+            rr:termType rr:Literal ;
+            rr:datatype xsd:float ;
+      ]
+    ];
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,46 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "IOUs" ]; 
+	
+    rr:subjectMap [
+            rr:template "{fname}_{lname}"; 
+            rr:termType rr:BlankNode ;
+            rr:class ex:IOU; 
+      ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ 
+            rr:template "{fname} {lname}";
+            rr:termType rr:Literal ;
+      ]
+    ];
+    .
+<TriplesMap2>
+    a rr:TriplesMap;
+	
+	rr:logicalTable [ rr:tableName  "Lives" ]; 
+
+    rr:subjectMap [
+            rr:template "{fname}_{lname}"; 
+            rr:termType rr:BlankNode;
+            rr:class ex:IOU; 
+      ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:city ]; 
+      rr:objectMap    [ 
+            rr:column "city";
+            rr:termType rr:Literal ; 
+      ]
+    ];
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,30 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "IOUs" ];
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ 
+            rr:template "{fname} {lname}";
+            rr:termType rr:Literal ;
+      ]
+    ];
+    
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:amount ]; 
+      rr:objectMap    [ 
+            rr:column "amount";
+            rr:termType rr:Literal ;
+            rr:datatype xsd:float ;
+      ]
+    ];
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D012-2tables2duplicates0nulls/r2rmld.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,42 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName  "IOUs" ];
+	
+    rr:subjectMap [
+            rr:template "{fname}_{lname}_{amount}"; 
+            rr:termType rr:BlankNode;
+            rr:class ex:IOU; 
+      ];
+
+    rr:subjectMap [
+            rr:template "{amount}_{fname}_{lname}"; 
+            rr:termType rr:BlankNode;
+            rr:class ex:IOU; 
+      ];
+	  
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate foaf:name ]; 
+      rr:objectMap    [ 
+            rr:template "{fname} {lname}";
+            rr:termType rr:Literal ;
+      ]
+    ];
+    
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate ex:amount ]; 
+      rr:objectMap    [ 
+            rr:column "amount";
+            rr:termType rr:Literal ;
+            rr:datatype xsd:float ;
+      ]
+    ];
+	.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D013-1table3columns2rows1nullvalue/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,8 @@
+CREATE TABLE "Person" (
+"ID" integer,
+"Name" varchar(50),
+"DateOfBirth" varchar(50),
+PRIMARY KEY ("ID")
+);
+INSERT INTO "Person" ("ID", "Name", "DateOfBirth") VALUES (1,'Alice', NULL);
+INSERT INTO "Person" ("ID", "Name", "DateOfBirth") VALUES (2,'Bob', 'September, 2010');
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D013-1table3columns2rows1nullvalue/directGraph.nt	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,10 @@
+<Person#ID> rdfs:domain <Person> .
+<Person#Name> rdfs:domain <Person> .
+<Person#DateOfBirth> rdfs:domain <Person> .
+
+<Person/ID=1> a <Person> .
+<Person/ID=1> <Person#Name> "Alice" .
+
+<Person/ID=2> a <Person> .
+<Person/ID=2> <Person#Name> "Bob" .
+<Person/ID=2> <Person#DateOfBirth> "September, 2010" .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D013-1table3columns2rows1nullvalue/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,22 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d013> a rdb2rdftest:DataBase;
+	dcterms:title "Table with null value" ;
+	dcterms:identifier "D013-1table3columns2rows1nullvalue" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <dg0013> ;
+.
+
+<dg0013> a rdb2rdftest:DirectMapping ;	
+	dcterms:title "Direct Graph of table with NULL values"; 
+	dcterms:identifier "Direct Graph TC0013" ;
+	test:purpose "Tests Direct Graph of table with NULL values" ;
+	test:specificationReference "#rules_table_triples" ;
+	test:reviewStatus test:accepted ;
+	rdb2rdftest:database <d013> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "directGraph.nt" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,20 @@
+CREATE TABLE "DEPT" (
+      "deptno" INTEGER UNIQUE,
+      "dname" VARCHAR(30),
+      "loc" VARCHAR(100));
+INSERT INTO "DEPT" ("deptno", "dname", "loc") VALUES (10, 'APPSERVER', 'NEW YORK');
+
+CREATE TABLE "EMP" (
+      "empno" INTEGER PRIMARY KEY,
+      "ename" VARCHAR(100),
+      "job" VARCHAR(30),
+	  "deptno" INTEGER REFERENCES "DEPT" ("deptno"),
+	  "etype" VARCHAR(30));
+INSERT INTO "EMP" ("empno", "ename", "job", "deptno", "etype" ) VALUES (7369, 'SMITH', 'CLERK', 10, 'PART_TIME');
+
+CREATE TABLE "LIKES" (
+      "id" INTEGER,
+      "likeType" VARCHAR(30),
+      "likedObj" VARCHAR(100));
+INSERT INTO "LIKES" ("id", "likeType", "likedObj") VALUES (7369, 'Playing', 'Soccer');
+INSERT INTO "LIKES" ("id", "likeType", "likedObj") VALUES (7369, 'Watching', 'Basketball');
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,72 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . 
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d014> a rdb2rdftest:DataBase;
+	dcterms:title "3 tables extended example" ;
+	dcterms:identifier "D014-3tablesExample" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <tc0014a>, <tc0014b>, <tc0014c>, <tc0014d>, <tc0014e> ;
+.
+
+<tc0014a> a rdb2rdftest:R2RML ;	
+	dcterms:title "3 tables extended example" ; 
+	dcterms:identifier "R2RMLTC014a" ;
+	test:purpose "Tests a logicaltable with sqlQuery" ;
+	test:specificationReference "#dfn-graph-map" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d014> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0014b> a rdb2rdftest:R2RML ;	
+	dcterms:title "3 tables extended example" ; 
+	dcterms:identifier "R2RMLTC014b" ;
+	test:purpose "Mapping specification using SQL-based logical table definition" ;
+	test:specificationReference "#inverse" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d014> ;
+	rdb2rdftest:hasExpectedOutput true ;	
+	rdb2rdftest:output "mappedb.nq" ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
+
+<tc0014c> a rdb2rdftest:R2RML ;	
+	dcterms:title "3 tables extended example" ; 
+	dcterms:identifier "R2RMLTC014c" ;
+	test:purpose "Mapping specification using table name based logical table definition" ;
+	test:specificationReference "#foreign-key" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d014> ;
+	rdb2rdftest:output "mappedc.nq" ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:mappingDocument "r2rmlc.ttl" ;
+.
+
+<tc0014d> a rdb2rdftest:R2RML ;	
+	dcterms:title "3 tables extended example" ; 
+	dcterms:identifier "R2RMLTC014d" ;
+	test:purpose "Mapping specification showing reuse of ObjectMap elements" ;
+	test:specificationReference "#foreign-key" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d014> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappedd.nq" ;	
+	rdb2rdftest:mappingDocument "r2rmld.ttl" ;
+.
+
+<tc0014e> a rdb2rdftest:R2RML ;	
+	dcterms:title "3 tables extended example" ; 
+	dcterms:identifier "R2RMLTC014e" ;
+	test:purpose "Mapping Specification for the LIKES Table" ;
+	test:specificationReference "#dfn-output-dataset" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d014> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappede.nq" ;	
+	rdb2rdftest:mappingDocument "r2rmle.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,5 @@
+_:Department10 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ns#dept> <http://example.com/ns#DeptGraph> .
+_:Department10 <http://example.com/dept#deptno> "10"^^<http://www.w3.org/2001/XMLSchema#positiveInteger> <http://example.com/ns#DeptGraph> .
+_:Department10 <http://example.com/dept#name> "APPSERVER" <http://example.com/ns#DeptGraph> .
+_:Department10 <http://example.com/dept#location> "NEW YORK" <http://example.com/ns#DeptGraph> .
+_:Department10 <http://example.com/dept#COMPANY> "EXAMPLE Corporation" <http://example.com/ns#DeptGraph> .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/mappedb.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,12 @@
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ns#emp> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#jobtype> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#emptype> <http://example.com/emp/etype/PART_TIME> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/etype/PART_TIME> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#empno> "7369"^^<http://www.w3.org/2001/XMLSchema#integer>	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH"	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#job> "CLERK" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#deptNum> "10"^^<http://www.w3.org/2001/XMLSchema#integer> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#etype> "PART TIME" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#c_ref_deptno> _:Department10 <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH" <http://example.com/emp#empNameGraph> .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/mappedc.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,12 @@
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ns#emp> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#jobtype> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#emptype> <http://example.com/emp/etype/PART_TIME>	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/etype/PART_TIME> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#empno> "7369"^^<http://www.w3.org/2001/XMLSchema#integer>	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH"	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#job> "CLERK" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#deptNum> "10"^^<http://www.w3.org/2001/XMLSchema#integer> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#etype> "PART TIME" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#c_ref_deptno> _:Department10 <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH" <http://example.com/emp#empNameGraph> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/mappedd.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,12 @@
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/ns#emp> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#jobtype> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/job/CLERK> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#emptype> <http://example.com/emp/etype/PART_TIME>	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.com/emp/etype/PART_TIME> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#empno> "7369"^^<http://www.w3.org/2001/XMLSchema#integer>	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH"	<http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#job> "CLERK" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#deptNum> "10"^^<http://www.w3.org/2001/XMLSchema#integer> <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#etype> "PART TIME" <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#c_ref_deptno> _:Department10 <http://example.com/graph/CLERK/PART_TIME> .
+<http://example.com/emp/7369> <http://example.com/emp#name> "SMITH" <http://example.com/emp#empNameGraph> .
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/mappede.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,2 @@
+<http://example.com/emp/7369> <http://example.com/emp/likes/Playing> "Soccer" <http://example.com/ns#LikesGraph> .
+<http://example.com/emp/7369> <http://example.com/emp/likes/Watching> "Basketball" <http://example.com/ns#LikesGraph> .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,47 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix ex: <http://example.com/ns#> .
+@prefix emp: <http://example.com/emp#> .
+@prefix dept: <http://example.com/dept#> .
+@prefix likes: <http://example.com/likes#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+       Select ('Department' || "deptno") AS "deptId"
+            , "deptno"
+            , "dname"
+            , "loc"
+         from SCOTT.DEPT
+       """ ];
+
+    rr:subjectMap [ rr:column "deptId"; rr:termType rr:BlankNode;
+                    rr:class ex:dept; 
+                    rr:graphMap [ rr:graph ex:DeptGraph; ];
+                    rr:inverseExpression "{deptno} = substr({deptId},length('Department')+1)"];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate dept:deptno ]; 
+      rr:objectMap    [ rr:column "deptno"; rr:datatype xsd:positiveInteger ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:name ]; 
+      rr:objectMap    [ rr:column "dname" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:location ]; 
+      rr:objectMap    [ rr:column "loc" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:COMPANY ]; 
+      rr:objectMap    [ rr:object "EXAMPLE Corporation" ]
+    ]
+.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,135 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/ns#> .
+@prefix emp: <http://example.com/emp#> .
+@prefix dept: <http://example.com/dept#> .
+@prefix likes: <http://example.com/likes#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+       Select ('Department' || deptno) AS deptId
+            , deptno
+            , dname
+            , loc
+         from SCOTT.DEPT
+       """ ];
+
+    rr:subjectMap [ rr:column "deptId"; rr:termType rr:BlankNode;
+                    rr:class ex:dept; 
+                    rr:graphMap [ rr:graph ex:DeptGraph; ];
+                    rr:inverseExpression "{deptno} = substr({deptId},length('Department')+1)"];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate dept:deptno ]; 
+      rr:objectMap    [ rr:column "deptno"; rr:datatype xsd:positiveInteger ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:name ]; 
+      rr:objectMap    [ rr:column "dname" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:location ]; 
+      rr:objectMap    [ rr:column "loc" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:COMPANY ]; 
+      rr:objectMap    [ rr:object "EXAMPLE Corporation" ]
+    ]
+.
+
+<TriplesMap2>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+       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 SCOTT.EMP
+       """ ];
+
+    rr:subjectMap [ rr:column "empURI";
+                    rr:class ex:emp; 
+                    rr:graphMap [ rr:column "graphURI" ]; ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:jobtype ]; 
+      rr:objectMap    [ rr:column "jobTypeURI" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate rdf:type ]; 
+      rr:objectMap    [ rr:column "jobTypeURI" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:emptype ]; 
+      rr:objectMap    [ rr:column "empTypeURI" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [rdf:predicate rdf:type ]; 
+      rr:objectMap    [ rr:column "empTypeURI" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:empno ]; 
+      rr:objectMap    [ rr:column "empno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:name ]; 
+      rr:objectMap    [ rr:column "ename" ]; 
+      rr:graphMap     [ rr:graph emp:empNameGraph ];
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:job ]; 
+      rr:objectMap    [ rr:column "job" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:deptNum ]; 
+      rr:objectMap    [ rr:column "deptno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:etype ]; 
+      rr:objectMap    [ rr:column "etype" ]
+    ];
+
+    rr:predicateObjectMap [
+      rr:predicateMap [ rr:predicate emp:c_ref_deptno ];
+      rr:refObjectMap    [
+        rr:parentTriplesMap <TriplesMap1>;
+        rr:joinCondition [
+          rr:child "deptno";
+          rr:parent "deptno";
+        ];
+      ];
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/r2rmlc.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,127 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/ns#> .
+@prefix emp: <http://example.com/emp#> .
+@prefix dept: <http://example.com/dept#> .
+@prefix likes: <http://example.com/likes#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+       Select ('Department' || deptno) AS deptId
+            , deptno
+            , dname
+            , loc
+         from SCOTT.DEPT
+       """ ];
+
+    rr:subjectMap [ rr:column "deptId"; rr:termType rr:BlankNode;
+                    rr:class ex:dept; 
+                    rr:graphMap [ rr:graph ex:DeptGraph; ];
+                    rr:inverseExpression "{deptno} = substr({deptId},length('Department')+1)"];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate dept:deptno ]; 
+      rr:objectMap    [ rr:column "deptno"; rr:datatype xsd:positiveInteger ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:name ]; 
+      rr:objectMap    [ rr:column "dname" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:location ]; 
+      rr:objectMap    [ rr:column "loc" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:COMPANY ]; 
+      rr:objectMap    [ rr:object "EXAMPLE Corporation" ]
+    ]
+.
+
+<TriplesMap2>
+    a rr:TriplesMap;
+
+    rr:logicalTable [ rr:tableName "SCOTT.EMP" ];
+
+    rr:subjectMap [ rr:template "http://example.com/emp/{empno}";
+                    rr:class ex:emp; 
+                    rr:graphMap [ rr:template "http://example.com/graph/{job}/{etype}"; ];
+                  ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:jobtype ]; 
+      rr:objectMap    [ rr:template "http://example.com/emp/job/{job}" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate rdf:type ]; 
+      rr:objectMap    [ rr:template "http://example.com/emp/job/{job}" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:emptype ]; 
+      rr:objectMap    [ rr:template "http://example.com/emp/etype/{etype}" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate rdf:type ]; 
+      rr:objectMap    [ rr:template "http://example.com/emp/etype/{etype}" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:empno ]; 
+      rr:objectMap    [ rr:column "empno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:name ]; 
+      rr:objectMap    [ rr:column "ename" ]; 
+      rr:graphMap     [ rr:graph emp:empNameGraph ];
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:job ]; 
+      rr:objectMap    [ rr:column "job" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:deptNum ]; 
+      rr:objectMap    [ rr:column "deptno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:etype ]; 
+      rr:objectMap    [ rr:column "etype" ]
+    ];
+
+    rr:predicateObjectMap [
+      rr:predicateMap [ rr:predicate emp:c_ref_deptno ];
+      rr:refObjectMap    [
+        rr:parentTriplesMap <TriplesMap1>;
+        rr:joinCondition [
+          rr:child "deptno";
+          rr:parent "deptno";
+        ];
+      ];
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/r2rmld.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,136 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/ns#> .
+@prefix emp: <http://example.com/emp#> .
+@prefix dept: <http://example.com/dept#> .
+@prefix likes: <http://example.com/likes#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap1>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+       Select ('Department' || deptno) AS deptId
+            , deptno
+            , dname
+            , loc
+         from SCOTT.DEPT
+       """ ];
+
+    rr:subjectMap [ rr:column "deptId"; rr:termType rr:BlankNode;
+                    rr:class ex:dept; 
+                    rr:graphMap [ rr:graph ex:DeptGraph; ];
+                    rr:inverseExpression "{deptno} = substr({deptId},length('Department')+1)"];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicateMap [ rr:predicate dept:deptno ]; 
+      rr:objectMap    [ rr:column "deptno"; rr:datatype xsd:positiveInteger ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:name ]; 
+      rr:objectMap    [ rr:column "dname" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:location ]; 
+      rr:objectMap    [ rr:column "loc" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate dept:COMPANY ]; 
+      rr:objectMap    [ rr:object "EXAMPLE Corporation" ]
+    ]
+.
+
+
+<#jobtypeObjectMap>
+    a rr:ObjectMap;
+    rr:template "http://example.com/emp/job/{job}"
+    .
+
+<#emptypeObjectMap>
+    a rr:ObjectMap;
+    rr:template "http://example.com/emp/etype/{etype}"
+    .
+
+<TriplesMap2>
+    a rr:TriplesMap;
+
+    rr:logicalTable [ rr:tableName "SCOTT.EMP" ];
+
+    rr:subjectMap [ rr:template "http://example.com/emp/{empno}";
+                    rr:class ex:emp; 
+                    rr:graphMap [ rr:template "http://example.com/graph/{job}/{etype}"; ];
+                  ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:jobtype ]; 
+      rr:objectMap    <#jobtypeObjectMap>
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate rdf:type ]; 
+      rr:objectMap    <#jobtypeObjectMap>
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:emptype ]; 
+      rr:objectMap    <#emptypeObjectMap>
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate rdf:type ]; 
+      rr:objectMap    <#emptypeObjectMap>
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:empno ]; 
+      rr:objectMap    [ rr:column "empno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:name ]; 
+      rr:objectMap    [ rr:column "ename" ]; 
+      rr:graphMap     [ rr:graph emp:empNameGraph ];
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:job ]; 
+      rr:objectMap    [ rr:column "job" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:deptNum ]; 
+      rr:objectMap    [ rr:column "deptno" ]
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:predicate emp:etype ]; 
+      rr:objectMap    [ rr:column "etype" ]
+    ];
+
+    rr:predicateObjectMap [
+      rr:predicateMap [ rr:predicate emp:c_ref_deptno ];
+      rr:refObjectMap    [
+        rr:parentTriplesMap <TriplesMap1>;
+        rr:joinCondition [
+          rr:child "deptno";
+          rr:parent "deptno";
+        ];
+      ];
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D014-3tablesExample/r2rmle.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,29 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/ns#> .
+@prefix emp: <http://example.com/emp#> .
+@prefix dept: <http://example.com/dept#> .
+@prefix likes: <http://example.com/likes#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+<TriplesMap3>
+    a rr:TriplesMap;
+    rr:logicalTable [ rr:sqlQuery """
+      Select ('http://example.com/emp/' || id) AS empId
+           , ('http://example.com/emp/likes/' || likeType) AS empLikes
+           , likedObj
+        from SCOTT.LIKES
+      """ ];
+
+    rr:subjectMap [
+      rr:column "empId";
+      rr:graphMap [ rr:graph ex:LikesGraph ];
+    ];
+
+    rr:predicateObjectMap 
+    [ 
+      rr:predicateMap [ rr:column "empLikes" ];
+      rr:objectMap    [ rr:column "likedObj" ]
+    ]
+    .
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D015-1tableSeveralLanguages/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,11 @@
+CREATE TABLE "Country" (
+  "Code" CHAR(2),
+  "Name" CHAR(100),
+  "Lan" CHAR(10),
+  PRIMARY KEY ("Code","Lan")
+);
+INSERT INTO "Country" ("Code", "Name", "Lan") VALUES ('BO', 'Bolivia, Plurinational State of', 'EN');
+INSERT INTO "Country" ("Code", "Name", "Lan") VALUES ('BO', 'Estado Plurinacional de Bolivia', 'ES');
+INSERT INTO "Country" ("Code", "Name", "Lan") VALUES ('IE', 'Ireland', 'EN');
+INSERT INTO "Country" ("Code", "Name", "Lan") VALUES ('IE', 'Irlanda', 'ES');
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D015-1tableSeveralLanguages/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,34 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d015> a rdb2rdftest:DataBase;
+	dcterms:title "Table with language information" ;
+	dcterms:identifier "D015-1tableSeveralLanguages" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <tc0015a>, <tc0015b> ;
+.
+
+<tc0015a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with language information" ; 
+	dcterms:identifier "R2RMLTC015a" ;
+	test:purpose "Tests the language tag" ;
+	test:specificationReference "#language-tags" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d015> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
+<tc0015b> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with language information" ; 
+	dcterms:identifier "R2RMLTC015b" ;
+	test:purpose "Tests a term map with rr:language where the value isn't a valid language, which is an error" ;
+	test:specificationReference "#language-tags" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d015> ;
+	rdb2rdftest:hasExpectedOutput false ;
+	rdb2rdftest:mappingDocument "r2rmlb.ttl" ;
+.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D015-1tableSeveralLanguages/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,5 @@
+<http://example.com/BO> <http://www.w3.org/2000/01/rdf-schema#label> "Bolivia, Plurinational State of"@en .
+<http://example.com/BO> <http://www.w3.org/2000/01/rdf-schema#label> "Estado Plurinacional de Bolivia"@es .
+<http://example.com/IE> <http://www.w3.org/2000/01/rdf-schema#label> "Ireland"@en .
+<http://example.com/IE> <http://www.w3.org/2000/01/rdf-schema#label> "Irlanda"@es .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D015-1tableSeveralLanguages/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,43 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+    a rr:TriplesMap;
+      
+	rr:logicalTable [  rr:sqlQuery """
+                       SELECT "Code", "Name", "Lan"
+                       FROM "Country"
+					   WHERE "Lan" = 'EN';
+                       """ ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Code}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicate rdfs:label;
+      rr:objectMap    [ rr:column "Name"; rr:language "en" ]
+    ]
+    .
+	
+<TriplesMap2>
+    a rr:TriplesMap;
+      
+	rr:logicalTable [  rr:sqlQuery """
+                       SELECT "Code", "Name", "Lan"
+                       FROM "Country"
+					   WHERE "Lan" = 'ES';
+                       """ ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Code}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicate rdfs:label;
+      rr:objectMap    [ rr:column "Name"; rr:language "es" ]
+    ]
+    .	
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D015-1tableSeveralLanguages/r2rmlb.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,43 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+    a rr:TriplesMap;
+      
+	rr:logicalTable [  rr:sqlQuery """
+                       SELECT "Code", "Name", "Lan"
+                       FROM "Country"
+					   WHERE "Lan" = 'EN';
+                       """ ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Code}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicate rdfs:label;
+      rr:objectMap    [ rr:column "Name"; rr:language "english" ]
+    ]
+    .
+	
+<TriplesMap2>
+    a rr:TriplesMap;
+      
+	rr:logicalTable [  rr:sqlQuery """
+                       SELECT "Code", "Name", "Lan"
+                       FROM "Country"
+					   WHERE "Lan" = 'ES';
+                       """ ] ;
+	
+    rr:subjectMap [ rr:template "http://example.com/{Code}" ]; 
+	
+    rr:predicateObjectMap
+    [ 
+      rr:predicate rdfs:label;
+      rr:objectMap    [ rr:column "Name"; rr:language "spanish" ]
+    ]
+    .	
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D016-1tableSQLdatatypes/create.sql	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,19 @@
+CREATE TABLE "Patient" (
+"ID" INTEGER,
+"FirstName" VARCHAR(50),
+"LastName" VARCHAR(50),
+"Sex" VARCHAR(6),
+"Weight" REAL,
+"Height" FLOAT,
+"BirthDate" DATE,
+"EntranceDate" TIMESTAMP,
+"PaidInAdvance" BOOLEAN,
+PRIMARY KEY ("ID")
+);
+
+INSERT INTO "Patient" ("ID", "FirstName","LastName","Sex","Weight","Height","BirthDate","EntranceDate","PaidInAdvance") 
+VALUES (10,'Monica','Geller','female',80.25,1.65,'1981-10-10','2009-10-10 12:12:22','FALSE');
+INSERT INTO "Patient" ("ID", "FirstName","LastName","Sex","Weight","Height","BirthDate","EntranceDate","PaidInAdvance") 
+VALUES (11,'Rachel','Green','female',70.22,1.70,'1982-11-12','2008-11-12 09:45:44','TRUE');
+INSERT INTO "Patient" ("ID", "FirstName","LastName","Sex","Weight","Height","BirthDate","EntranceDate","PaidInAdvance") 
+VALUES (12,'Chandler','Bing','male',90.31,1.76,'1978-04-06','2007-03-12 02:13:14','TRUE');
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D016-1tableSQLdatatypes/manifest.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,24 @@
+@prefix test: <http://www.w3.org/2006/03/test-description#> .
+@prefix dcterms: <http://purl.org/dc/elements/1.1/> .
+@prefix rdb2rdftest: <http://purl.org/NET/rdb2rdf-test#> .
+@base <http://mappingpedia.org/rdb2rdf/tc/> .
+
+<d016> a rdb2rdftest:DataBase;
+	dcterms:title "Table with datatypes" ;
+	dcterms:identifier "D016-1tableSQLdatatypes" ;
+	rdb2rdftest:sqlScriptFile "create.sql";
+	rdb2rdftest:relatedTestCase <tc0016a> ;
+.
+
+<tc0016a> a rdb2rdftest:R2RML ;	
+	dcterms:title "Table with datatypes" ; 
+	dcterms:identifier "R2RMLTC016a" ;
+	test:purpose "Tests the rr:termtype  and datatype conversions: integer, real, float, date, timestamp and boolean" ;
+	test:specificationReference "#datatype-conversions" ;
+	test:reviewStatus test:unreviewed ;
+	rdb2rdftest:database <d016> ;
+	rdb2rdftest:hasExpectedOutput true ;
+	rdb2rdftest:output "mappeda.nq" ;
+	rdb2rdftest:mappingDocument "r2rmla.ttl" ;
+.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D016-1tableSQLdatatypes/mappeda.nq	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,31 @@
+<http://example.com/Patient10> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
+<http://example.com/Patient10> <http://example.com/id> "10"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/Patient10> <http://xmlns.com/foaf/0.1/firstName> "Monica"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient10> <http://xmlns.com/foaf/0.1/lastName> "Geller"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient10> <http://xmlns.com/foaf/0.1/gender> "female"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient10> <http://example.com/weight> "80.25"^^<http://www.w3.org/2001/XMLSchema#real> .
+<http://example.com/Patient10> <http://example.com/height> "1.65"^^<http://www.w3.org/2001/XMLSchema#float> .
+<http://example.com/Patient10> <http://example.com/birthdate> "1981-10-10"^^<http://www.w3.org/2001/XMLSchema#date> .
+<http://example.com/Patient10> <http://example.com/entrancedate> "2009-10-10 12:12:22"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
+<http://example.com/Patient10> <http://example.com/paid> "false"^^<http://www.w3.org/2001/XMLSchema#boolean> .
+<http://example.com/Patient11> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
+<http://example.com/Patient11> <http://example.com/id> "11"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/Patient11> <http://xmlns.com/foaf/0.1/firstName> "Rachel"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient11> <http://xmlns.com/foaf/0.1/lastName> "Green"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient11> <http://xmlns.com/foaf/0.1/gender> "female"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient11> <http://example.com/weight> "70.22"^^<http://www.w3.org/2001/XMLSchema#real> .
+<http://example.com/Patient11> <http://example.com/height> "1.70"^^<http://www.w3.org/2001/XMLSchema#float> .
+<http://example.com/Patient11> <http://example.com/birthdate> "1982-11-12"^^<http://www.w3.org/2001/XMLSchema#date> .
+<http://example.com/Patient11> <http://example.com/entrancedate> "2008-11-12 09:45:44"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
+<http://example.com/Patient11> <http://example.com/paid> "true"^^<http://www.w3.org/2001/XMLSchema#boolean> .
+<http://example.com/Patient12> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
+<http://example.com/Patient12> <http://example.com/id> "12"^^<http://www.w3.org/2001/XMLSchema#integer> .
+<http://example.com/Patient12> <http://xmlns.com/foaf/0.1/firstName> "Chandler"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient12> <http://xmlns.com/foaf/0.1/lastName> "Bing"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient12> <http://xmlns.com/foaf/0.1/gender> "male"^^<http://www.w3.org/2001/XMLSchema#string> .
+<http://example.com/Patient12> <http://example.com/weight> "90.31"^^<http://www.w3.org/2001/XMLSchema#real> .
+<http://example.com/Patient12> <http://example.com/height> "1.76"^^<http://www.w3.org/2001/XMLSchema#float> .
+<http://example.com/Patient12> <http://example.com/birthdate> "1978-04-06"^^<http://www.w3.org/2001/XMLSchema#date> .
+<http://example.com/Patient12> <http://example.com/entrancedate> "2007-03-12 02:13:14"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
+<http://example.com/Patient12> <http://example.com/paid> "true"^^<http://www.w3.org/2001/XMLSchema#boolean> .
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/D016-1tableSQLdatatypes/r2rmla.ttl	Tue Oct 11 02:10:38 2011 +0200
@@ -0,0 +1,76 @@
+@prefix rr: <http://www.w3.org/ns/r2rml#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix ex: <http://example.com/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@base <http://mappingpedia.org/rdb2rdf/r2rml/tc/> .
+
+
+<TriplesMap1>
+    a rr:TriplesMap;
+
+	rr:logicalTable [ rr:tableName "Patient" ];
+
+    rr:subjectMap [ rr:template "http://example.com/Patient{ID}"; ];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicate rdf:type;
+		rr:object foaf:Person;
+	];
+	
+    rr:predicateObjectMap
+    [ 
+		rr:predicateMap [ rr:constant ex:id; ];
+		rr:objectMap    [ rr:column "ID"; rr:datatype xsd:integer ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate	foaf:firstName;
+      rr:objectMap    [ rr:column "FirstName"; rr:datatype xsd:string ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate foaf:lastName;
+      rr:objectMap    [ rr:column "LastName"; rr:datatype xsd:string ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate foaf:gender;
+      rr:objectMap    [ rr:column "Sex"; rr:datatype xsd:string ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate ex:weight;
+      rr:objectMap    [ rr:column "Weight"; rr:datatype xsd:real ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate ex:height;
+      rr:objectMap    [ rr:column "Height"; rr:datatype xsd:float ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate ex:birthdate;
+      rr:objectMap    [ rr:column "BirthDate"; rr:datatype xsd:date ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate ex:entrancedate;
+      rr:objectMap    [ rr:column "EntranceDate"; rr:datatype xsd:dateTime ]
+    ];
+
+    rr:predicateObjectMap
+    [ 
+      rr:predicate ex:paid;
+      rr:objectMap    [ rr:column "PaidInAdvance"; rr:datatype xsd:boolean ]
+    ];
+
+    .