--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/emp_addr.sql Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,5 @@
+CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
+INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
+CREATE TABLE People (ID INT PRIMARY KEY, fname STRING, addr INT, FOREIGN KEY (addr) REFERENCES Addresses(ID));
+INSERT INTO People (ID, fname, addr) VALUES (7, "Bob", 18);
+INSERT INTO People (ID, fname, addr) VALUES (8, "Sue", NULL);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/emp_addr.ttl Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,9 @@
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+<People/ID.7#_> <People#ID> 7 .
+<People/ID.7#_> <People#fname> "Bob"^^<http://www.w3.org/2001/XMLSchema#string> .
+<People/ID.7#_> <People#addr> <Addresses/ID.18#_> .
+<People/ID.8#_> <People#ID> 8 .
+<People/ID.8#_> <People#fname> "Sue"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#ID> 18 .
+<Addresses/ID.18#_> <Addresses#city> "Cambridge"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#state> "MA"^^xsd:string .
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/hier_tabl.sql Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,13 @@
+CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
+INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
+CREATE TABLE People (ID INT PRIMARY KEY, fname STRING, addr INT,
+ FOREIGN KEY (addr) REFERENCES Addresses(ID));
+INSERT INTO People (ID, fname, addr) VALUES (7, "Bob", 18);
+CREATE TABLE Offices (ID INT PRIMARY KEY,
+ building INT, ofcNumber STRING,
+ FOREIGN KEY (ID) REFERENCES Addresses(ID));
+INSERT INTO Offices (ID, building, ofcNumber) VALUES (18, 32, "G528");
+CREATE TABLE ExecutiveOffices (ID INT PRIMARY KEY,
+ desk STRING,
+ FOREIGN KEY (ID) REFERENCES Offices(ID));
+INSERT INTO ExecutiveOffices (ID, desk) VALUES (18, "oak");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/hier_tabl.ttl Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,15 @@
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+<Addresses/ID.18#_> <ExecutiveOffices#ID> 18 .
+<Addresses/ID.18#_> <ExecutiveOffices#desk> "oak"^^xsd:string .
+
+<Addresses/ID.18#_> <Offices#ID> 18 .
+<Addresses/ID.18#_> <Offices#building> 32 .
+<Addresses/ID.18#_> <Offices#ofcNumber> "G528"^^xsd:string .
+
+<People/ID.7#_> <People#ID> 7 .
+<People/ID.7#_> <People#fname> "Bob"^^xsd:string .
+<People/ID.7#_> <People#addr> <Addresses/ID.18#_> .
+
+<Addresses/ID.18#_> <Addresses#ID> 18 .
+<Addresses/ID.18#_> <Addresses#city> "Cambridge"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#state> "MA"^^xsd:string .
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/hier_tabl_proto.sql Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,9 @@
+CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
+INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
+CREATE TABLE People (ID INT PRIMARY KEY, fname STRING, addr INT,
+ FOREIGN KEY (addr) REFERENCES Addresses(ID));
+INSERT INTO People (ID, fname, addr) VALUES (7, "Bob", 18);
+CREATE TABLE Offices (ID INT PRIMARY KEY,
+ building INT, ofcNumber STRING,
+ FOREIGN KEY (ID) REFERENCES Addresses(ID));
+INSERT INTO Offices (ID, building, ofcNumber) VALUES (18, 32, "G528");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/hier_tabl_proto.ttl Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,12 @@
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+<Addresses/ID.18#_> <Offices#ID> 18 .
+<Addresses/ID.18#_> <Offices#building> 32 .
+<Addresses/ID.18#_> <Offices#ofcNumber> "G528"^^xsd:string .
+
+<People/ID.7#_> <People#ID> 7 .
+<People/ID.7#_> <People#fname> "Bob"^^xsd:string .
+<People/ID.7#_> <People#addr> <Addresses/ID.18#_> .
+
+<Addresses/ID.18#_> <Addresses#ID> 18 .
+<Addresses/ID.18#_> <Addresses#city> "Cambridge"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#state> "MA"^^xsd:string .
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/multi_key.sql Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,10 @@
+CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
+INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
+CREATE TABLE Department (ID INT PRIMARY KEY, name STRING, city STRING,
+ manager INT, FOREIGN KEY (manager) REFERENCES People(ID), UNIQUE (name, city));
+INSERT INTO Department (ID, name, city, manager) VALUES (23, "accounting", "Cambridge", 8);
+CREATE TABLE People (ID INT PRIMARY KEY, fname STRING,
+ addr INT, FOREIGN KEY (addr) REFERENCES Addresses(ID),
+ deptName STRING, deptCity STRING, FOREIGN KEY (deptName, deptCity) REFERENCES Department(name, city));
+INSERT INTO People (ID, fname, addr, deptName, deptCity) VALUES (7, "Bob", 18, "accounting", "Cambridge");
+INSERT INTO People (ID, fname, addr, deptName, deptCity) VALUES (8, "Sue", NULL, NULL, NULL);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/multi_key.ttl Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,19 @@
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+<People/ID.7#_> <People#deptName> "accounting"^^xsd:string .
+<People/ID.7#_> <People#deptCity> "Cambridge"^^xsd:string .
+<People/ID.7#_> <People#deptName_deptCity> <Department/ID.23#_> .
+
+<Department/ID.23#_> <Department#ID> 23 .
+<Department/ID.23#_> <Department#name> "accounting"^^xsd:string .
+<Department/ID.23#_> <Department#city> "Cambridge"^^xsd:string .
+<Department/ID.23#_> <Department#manager> <People/ID.8#_> .
+
+<People/ID.7#_> <People#ID> 7 .
+<People/ID.7#_> <People#fname> "Bob"^^xsd:string .
+<People/ID.7#_> <People#addr> <Addresses/ID.18#_> .
+<People/ID.8#_> <People#ID> 8 .
+<People/ID.8#_> <People#fname> "Sue"^^xsd:string .
+
+<Addresses/ID.18#_> <Addresses#ID> 18 .
+<Addresses/ID.18#_> <Addresses#city> "Cambridge"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#state> "MA"^^xsd:string .
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/ref_no_pk.sql Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,28 @@
+CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
+INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
+CREATE TABLE Department (ID INT PRIMARY KEY, name STRING, city STRING, manager INT,
+ FOREIGN KEY (manager) REFERENCES People(ID),
+ UNIQUE (name, city));
+INSERT INTO Department (ID, name, city, manager) VALUES (23, "accounting", "Cambridge", 8);
+CREATE TABLE People (ID INT PRIMARY KEY, fname STRING, addr INT,
+ FOREIGN KEY (addr) REFERENCES Addresses(ID),
+ deptName STRING, deptCity STRING,
+ FOREIGN KEY (deptName, deptCity) REFERENCES Department(name, city));
+INSERT INTO People (ID, fname, addr, deptName, deptCity) VALUES (7, "Bob", 18, "accounting", "Cambridge");
+INSERT INTO People (ID, fname, addr, deptName, deptCity) VALUES (8, "Sue", NULL, NULL, NULL);
+CREATE TABLE Projects (lead INT,
+ FOREIGN KEY (lead) REFERENCES People(ID),
+ name STRING, UNIQUE (lead, name),
+ deptName STRING, deptCity STRING,
+ UNIQUE (name, deptName, deptCity),
+ FOREIGN KEY (deptName, deptCity) REFERENCES Department(name, city));
+INSERT INTO Projects (lead, name, deptName, deptCity) VALUES (8, "pencil survey", "accounting", "Cambridge");
+INSERT INTO Projects (lead, name, deptName, deptCity) VALUES (8, "eraser survey", "accounting", "Cambridge");
+CREATE TABLE TaskAssignments (worker INT,
+ FOREIGN KEY (worker) REFERENCES People(ID),
+ project STRING, PRIMARY KEY (worker, project),
+ deptName STRING, deptCity STRING,
+ FOREIGN KEY (worker) REFERENCES People(ID),
+ FOREIGN KEY (project, deptName, deptCity) REFERENCES Projects(name, deptName, deptCity),
+ FOREIGN KEY (deptName, deptCity) REFERENCES Department(name, city));
+INSERT INTO TaskAssignments (worker, project, deptName, deptCity) VALUES (7, "pencil survey", "accounting", "Cambridge");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sharedtestdata/directmappingspec/ref_no_pk.ttl Fri Nov 26 19:12:36 2010 -0500
@@ -0,0 +1,38 @@
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+_:a <Projects#lead> <People/ID.8#_> .
+_:a <Projects#name> "pencil survey"^^xsd:string .
+_:a <Projects#deptName> "accounting"^^xsd:string .
+_:a <Projects#deptCity> "Cambridge"^^xsd:string .
+_:a <Projects#deptName_deptCity> <Department/ID.23#_> .
+
+_:b <Projects#lead> <People/ID.8#_> .
+_:b <Projects#name> "eraser survey"^^xsd:string .
+_:b <Projects#deptName> "accounting"^^xsd:string .
+_:b <Projects#deptCity> "Cambridge"^^xsd:string .
+_:b <Projects#deptName_deptCity> <Department/ID.23#_> .
+
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#worker> <People/ID.7#_> .
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#project> "pencil survey"^^xsd:string .
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#deptName> "accounting"^^xsd:string .
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#deptCity> "Cambridge"^^xsd:string .
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#deptName_deptCity> <Department/ID.23#_> .
+<TaskAssignments/worker.7_project.pencil+survey#_> <TaskAssignments#project_deptName_deptCity> _:a .
+
+<People/ID.7#_> <People#deptName> "accounting"^^xsd:string .
+<People/ID.7#_> <People#deptCity> "Cambridge"^^xsd:string .
+<People/ID.7#_> <People#deptName_deptCity> <Department/ID.23#_> .
+
+<Department/ID.23#_> <Department#ID> 23 .
+<Department/ID.23#_> <Department#name> "accounting"^^xsd:string .
+<Department/ID.23#_> <Department#city> "Cambridge"^^xsd:string .
+<Department/ID.23#_> <Department#manager> <People/ID.8#_> .
+
+<People/ID.7#_> <People#ID> 7 .
+<People/ID.7#_> <People#fname> "Bob"^^xsd:string .
+<People/ID.7#_> <People#addr> <Addresses/ID.18#_> .
+<People/ID.8#_> <People#ID> 8 .
+<People/ID.8#_> <People#fname> "Sue"^^xsd:string .
+
+<Addresses/ID.18#_> <Addresses#ID> 18 .
+<Addresses/ID.18#_> <Addresses#city> "Cambridge"^^xsd:string .
+<Addresses/ID.18#_> <Addresses#state> "MA"^^xsd:string .
--- a/sharedtestdata/src/main/scala/DirectMappingSpec.scala Fri Nov 26 18:38:33 2010 -0500
+++ b/sharedtestdata/src/main/scala/DirectMappingSpec.scala Fri Nov 26 19:12:36 2010 -0500
@@ -10,7 +10,8 @@
val SqlParser = sql.SqlParser()
val TurtleParser = Turtle()
-
+
+ // "../../../directmappingspec/emp_addr.sql"
val db_emp_adder = SqlParser.toDB("""
CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
@@ -19,6 +20,7 @@
INSERT INTO People (ID, fname, addr) VALUES (8, "Sue", NULL);
""")
+ // "../../../directmappingspec/emp_addr.ttl"
val directgraph_emp_adder = TurtleParser.toGraph("""
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<People/ID.7#_> <People#ID> 7 .
@@ -32,6 +34,7 @@
""")
+ // "../../../directmappingspec/multi_key.sql"
val db_multi_key = SqlParser.parseAll(SqlParser.ddl, """
CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
@@ -45,6 +48,7 @@
INSERT INTO People (ID, fname, addr, deptName, deptCity) VALUES (8, "Sue", NULL, NULL, NULL);
""").get
+ // "../../../directmappingspec/multi_key.ttl"
val directgraph_multi_key = TurtleParser.toGraph("""
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<People/ID.7#_> <People#deptName> "accounting"^^xsd:string .
@@ -68,6 +72,7 @@
""")
+ // "../../../directmappingspec/ref_no_pk.sql"
val db_ref_no_pk = SqlParser.parseAll(SqlParser.ddl, """
CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
@@ -99,6 +104,7 @@
INSERT INTO TaskAssignments (worker, project, deptName, deptCity) VALUES (7, "pencil survey", "accounting", "Cambridge");
""").get
+ // "../../../directmappingspec/ref_no_pk.ttl"
val directgraph_ref_no_pk = TurtleParser.toGraph("""
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
_:a <Projects#lead> <People/ID.8#_> .
@@ -141,6 +147,7 @@
""")
+ // "../../../directmappingspec/hier_tabl_proto.sql"
val db_hier_tabl_proto = SqlParser.parseAll(SqlParser.ddl, """
CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
@@ -153,6 +160,7 @@
INSERT INTO Offices (ID, building, ofcNumber) VALUES (18, 32, "G528");
""").get
+ // "../../../directmappingspec/hier_tabl_proto.ttl"
val directgraph_hier_tabl_proto = TurtleParser.toGraph("""
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<Addresses/ID.18#_> <Offices#ID> 18 .
@@ -169,6 +177,7 @@
""")
+ // "../../../directmappingspec/hier_tabl.sql"
val db_hier_tabl = SqlParser.parseAll(SqlParser.ddl, """
CREATE TABLE Addresses (ID INT PRIMARY KEY, city STRING, state STRING);
INSERT INTO Addresses (ID, city, state) VALUES (18, "Cambridge", "MA");
@@ -185,6 +194,7 @@
INSERT INTO ExecutiveOffices (ID, desk) VALUES (18, "oak");
""").get
+ // "../../../directmappingspec/hier_tabl.ttl"
val directgraph_hier_tabl = TurtleParser.toGraph("""
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<Addresses/ID.18#_> <ExecutiveOffices#ID> 18 .