--- /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 ]
+ ];
+
+ .