├── .gitignore
├── LICENSE
├── README.md
├── dspace
├── dcterms-empty.rdf
├── dspace-edm-mapping.rdf
├── dspace-mapping.rdf
├── edm-empty.rdf
└── epersons-mapping.rdf
├── dspace5
└── dspace-mapping.rdf
├── iswc
├── iswc-dump.rdf
├── iswc-mapping_test.rdf
└── iswc-postgres_dump.sql
├── pom.xml
├── r2rml-parser.bat
├── r2rml-parser.sh
├── r2rml.properties
└── src
├── assemble
└── assembly.xml
├── main
├── java
│ └── gr
│ │ └── seab
│ │ └── r2rml
│ │ ├── beans
│ │ ├── Database.java
│ │ ├── DatabaseImpl.java
│ │ ├── Generator.java
│ │ ├── Main.java
│ │ ├── Parser.java
│ │ ├── Util.java
│ │ └── UtilImpl.java
│ │ └── entities
│ │ ├── DatabaseType.java
│ │ ├── LogicalTableMapping.java
│ │ ├── LogicalTableView.java
│ │ ├── MappingDocument.java
│ │ ├── PredicateObjectMap.java
│ │ ├── RefObjectMap.java
│ │ ├── SubjectMap.java
│ │ ├── Template.java
│ │ ├── TermType.java
│ │ ├── sparql
│ │ ├── LocalResource.java
│ │ ├── LocalResultRow.java
│ │ ├── LocalResultSet.java
│ │ ├── LocalTriple.java
│ │ └── SparqlQuery.java
│ │ └── sql
│ │ ├── SelectField.java
│ │ ├── SelectQuery.java
│ │ └── SelectTable.java
└── resources
│ ├── app-context.xml
│ └── log4j.xml
└── test
├── java
└── gr
│ └── seab
│ └── r2rml
│ └── test
│ └── ComplianceTests.java
└── resources
├── dcterms-empty.rdf
├── log4j.xml
├── mysql
├── D000-1table1column0rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mapped.nq
│ └── r2rml.ttl
├── D001-1table1column1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D002-1table2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedd.nq
│ ├── mappedi.nq
│ ├── mappedj.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ ├── r2rmle.ttl
│ ├── r2rmlf.ttl
│ ├── r2rmlg.ttl
│ ├── r2rmlh.ttl
│ ├── r2rmli.ttl
│ └── r2rmlj.ttl
├── D003-1table3columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D004-1table2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D005-1table3columns3rows2duplicates
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D006-1table1primarykey1column1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D007-1table1primarykey2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── mappede.nq
│ ├── mappedf.nq
│ ├── mappedg.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ ├── r2rmle.ttl
│ ├── r2rmlf.ttl
│ ├── r2rmlg.ttl
│ └── r2rmlh.ttl
├── D008-1table1compositeprimarykey3columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D009-2tables1primarykey1foreignkey
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ └── r2rmld.ttl
├── D010-1table1primarykey3colums3rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D011-M2MRelations
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D012-2tables2duplicates0nulls
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappede.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ └── r2rmle.ttl
├── D013-1table1primarykey3columns2rows1nullvalue
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D014-3tables1primarykey1foreignkey
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ └── r2rmld.ttl
├── D015-1table3columns1composityeprimarykey3rows2languages
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D016-1table1primarykey10columns3rowsSQLdatatypes
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── mappede.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ └── r2rmle.ttl
├── D017-I18NnoSpecialChars
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D018-1table1primarykey2columns3rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D019-1table1primarykey3columns3rows
│ ├── create.sql
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D020-1table1column5rows
│ ├── create.sql
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D021-2tables2primarykeys1foreignkeyReferencesAllNulls
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D022-2tables1primarykey1foreignkeyReferencesNoPrimaryKey
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D023-2tables2primarykeys2foreignkeysReferencesToNon-primarykeys
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D024-2tables2primarykeys1foreignkeyToARowWithSomeNulls
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
└── D025-3tables3primarykeys3foreignkeys
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── postgres
├── D000-1table1column0rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mapped.nq
│ └── r2rml.ttl
├── D001-1table1column1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D002-1table2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedd.nq
│ ├── mappedi.nq
│ ├── mappedj.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ ├── r2rmle.ttl
│ ├── r2rmlf.ttl
│ ├── r2rmlg.ttl
│ ├── r2rmlh.ttl
│ ├── r2rmli.ttl
│ └── r2rmlj.ttl
├── D003-1table3columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D004-1table2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D005-1table3columns3rows2duplicates
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D006-1table1primarykey1column1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D007-1table1primarykey2columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── mappede.nq
│ ├── mappedf.nq
│ ├── mappedg.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ ├── r2rmle.ttl
│ ├── r2rmlf.ttl
│ ├── r2rmlg.ttl
│ └── r2rmlh.ttl
├── D008-1table1compositeprimarykey3columns1row
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D009-2tables1primarykey1foreignkey
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ └── r2rmld.ttl
├── D010-1table1primarykey3colums3rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ └── r2rmlc.ttl
├── D011-M2MRelations
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D012-2tables2duplicates0nulls
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappede.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ └── r2rmle.ttl
├── D013-1table1primarykey3columns2rows1nullvalue
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D014-3tables1primarykey1foreignkey
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ └── r2rmld.ttl
├── D015-1table3columns1composityeprimarykey3rows2languages
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D016-1table1primarykey10columns3rowsSQLdatatypes
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── mappedb.nq
│ ├── mappedc.nq
│ ├── mappedd.nq
│ ├── mappede.nq
│ ├── r2rmla.ttl
│ ├── r2rmlb.ttl
│ ├── r2rmlc.ttl
│ ├── r2rmld.ttl
│ └── r2rmle.ttl
├── D017-I18NnoSpecialChars
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D018-1table1primarykey2columns3rows
│ ├── create.sql
│ ├── directGraph.ttl
│ ├── manifest.ttl
│ ├── mappeda.nq
│ └── r2rmla.ttl
├── D019-1table1primarykey3columns3rows
│ ├── create.sql
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D020-1table1column5rows
│ ├── create.sql
│ ├── manifest.ttl
│ ├── mappeda.nq
│ ├── r2rmla.ttl
│ └── r2rmlb.ttl
├── D021-2tables2primarykeys1foreignkeyReferencesAllNulls
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D022-2tables1primarykey1foreignkeyReferencesNoPrimaryKey
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D023-2tables2primarykeys2foreignkeysReferencesToNon-primarykeys
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── D024-2tables2primarykeys1foreignkeyToARowWithSomeNulls
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
└── D025-3tables3primarykeys3foreignkeys
│ ├── create.sql
│ ├── directGraph.ttl
│ └── manifest.ttl
├── test-context.xml
└── test.properties
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | **/target
3 |
4 | .classpath
5 | .project
6 | .settings/
7 | .metadata/
8 |
9 | *.log
10 |
--------------------------------------------------------------------------------
/dspace/dcterms-empty.rdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/dspace/edm-empty.rdf:
--------------------------------------------------------------------------------
1 | @prefix rdf: .
2 | @prefix rdfs: .
3 | @prefix owl: .
4 | @prefix skos: .
5 | @prefix dc: .
6 | @prefix dcterms: .
7 | @prefix ore: .
8 | @prefix edm: .
9 | @prefix foaf: .
10 | @prefix viaf: .
11 |
12 |
13 | a ore:Aggregation ;
14 | edm:aggregatedCHO ;
15 | edm:dataProvider ;
16 | edm:isShownBy ;
17 | edm:object ;
18 | edm:provider ;
19 | edm:rights .
20 |
21 |
--------------------------------------------------------------------------------
/r2rml-parser.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | echo This is R2RML Parser 0.8-alpha. Run with -h for help on options.
3 | java -Xms128m -Xmx1024m -cp "./*;./lib/*;" gr.seab.r2rml.beans.Main %1 %2
4 | echo R2RML Parser 0.8-alpha. Done.
5 |
--------------------------------------------------------------------------------
/r2rml-parser.sh:
--------------------------------------------------------------------------------
1 | echo "This is R2RML Parser 0.8-alpha. Run with -h for help on options."
2 | java -Xms128m -Xmx1024m -cp "./*;./lib/*;" -jar lib/r2rml-parser-0.8.jar $1 $2
3 | echo "R2RML Parser 0.8-alpha. Done."
--------------------------------------------------------------------------------
/r2rml.properties:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nkons/r2rml-parser/66cebcb8282feb7cde051d7fca8f20caaa5ef61a/r2rml.properties
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/beans/Database.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.beans;
2 |
3 | import java.sql.Connection;
4 | import java.sql.Statement;
5 | import java.util.Properties;
6 |
7 | public interface Database {
8 |
9 | public Connection openConnection();
10 |
11 | public Statement newStatement();
12 |
13 | public void testQuery(String query);
14 |
15 | public void setProperties(Properties properties);
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/beans/Util.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.beans;
2 |
3 | import gr.seab.r2rml.entities.LogicalTableMapping;
4 | import gr.seab.r2rml.entities.Template;
5 | import gr.seab.r2rml.entities.sparql.LocalResultSet;
6 |
7 | import java.sql.ResultSet;
8 |
9 | import com.hp.hpl.jena.datatypes.BaseDatatype;
10 | import com.hp.hpl.jena.rdf.model.Model;
11 | import gr.seab.r2rml.entities.DatabaseType;
12 |
13 | public interface Util {
14 |
15 | String fillTemplate(Template template, ResultSet rs, boolean encodeURLs);
16 |
17 | DatabaseType findDatabaseType(String driver);
18 |
19 | String stripQuotes(String input);
20 |
21 | LocalResultSet sparql(Model model, String query);
22 |
23 | BaseDatatype findDataType(String dataType);
24 |
25 | BaseDatatype findDataTypeFromSql(String sqlDataType);
26 |
27 | String md5(ResultSet rs);
28 |
29 | String md5(String s);
30 |
31 | String md5(LogicalTableMapping logicalTableMapping);
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/DatabaseType.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities;
2 |
3 | /**
4 | *
5 | * Source database types
6 | *
7 | */
8 | public enum DatabaseType {
9 |
10 | MYSQL,
11 |
12 | POSTGRESQL,
13 |
14 | ORACLE,
15 |
16 | OTHER;
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/RefObjectMap.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities;
2 |
3 | public class RefObjectMap {
4 |
5 | private String parentTriplesMapUri;
6 |
7 | private String child;
8 |
9 | private String parent;
10 |
11 | public RefObjectMap() {
12 | }
13 |
14 | public String getParentTriplesMapUri() {
15 | return parentTriplesMapUri;
16 | }
17 |
18 | public void setParentTriplesMapUri(String parentTriplesMapUri) {
19 | this.parentTriplesMapUri = parentTriplesMapUri;
20 | }
21 |
22 | public String getChild() {
23 | return child;
24 | }
25 |
26 | public void setChild(String child) {
27 | this.child = child;
28 | }
29 |
30 | public String getParent() {
31 | return parent;
32 | }
33 |
34 | public void setParent(String parent) {
35 | this.parent = parent;
36 | }
37 |
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/TermType.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities;
2 |
3 | /**
4 | * RDF resource types
5 | *
6 | */
7 | public enum TermType {
8 |
9 | IRI,
10 |
11 | BLANKNODE,
12 |
13 | LITERAL,
14 |
15 | AUTO;
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/sparql/LocalResultRow.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities.sparql;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Holds information about a row in a SPARQL query resultset
7 | *
8 | */
9 | public class LocalResultRow {
10 |
11 | private ArrayList resources;
12 |
13 | /**
14 | *
15 | */
16 | public LocalResultRow() {
17 | }
18 |
19 | /**
20 | * @return the resources
21 | */
22 | public ArrayList getResources() {
23 | return resources;
24 | }
25 | /**
26 | * @param resources the resources to set
27 | */
28 | public void setResources(ArrayList resources) {
29 | this.resources = resources;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/sparql/LocalResultSet.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities.sparql;
2 |
3 | import java.util.ArrayList;
4 | import java.util.List;
5 |
6 | /**
7 | * Holds information about a Sparql query results
8 | * @see LocalResultRow
9 | *
10 | */
11 | public class LocalResultSet {
12 |
13 | private List variables;
14 | private ArrayList rows;
15 |
16 | /**
17 | *
18 | */
19 | public LocalResultSet() {
20 | }
21 |
22 | /**
23 | * @return the variables
24 | */
25 | public List getVariables() {
26 | return variables;
27 | }
28 | /**
29 | * @param variables the variables to set
30 | */
31 | public void setVariables(List variables) {
32 | this.variables = variables;
33 | }
34 | /**
35 | * @return the rows
36 | */
37 | public ArrayList getRows() {
38 | return rows;
39 | }
40 | /**
41 | * @param rows the rows to set
42 | */
43 | public void setRows(ArrayList rows) {
44 | this.rows = rows;
45 | }
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/sparql/SparqlQuery.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities.sparql;
2 |
3 | import java.io.Serializable;
4 |
5 | /**
6 | * Holds information about a Sparql query and the resultset it returns
7 | * @see LocalResultSet
8 | *
9 | */
10 | public class SparqlQuery implements Serializable {
11 |
12 | private static final long serialVersionUID = 7934008387554302L;
13 |
14 | private String query;
15 | private LocalResultSet resultSet;
16 |
17 | /**
18 | *
19 | */
20 | public SparqlQuery() {
21 | }
22 |
23 |
24 | /**
25 | * @return the query
26 | */
27 | public String getQuery() {
28 | return query;
29 | }
30 |
31 | /**
32 | * @param query the query to set
33 | */
34 | public void setQuery(String query) {
35 | this.query = query;
36 | }
37 |
38 | /**
39 | * @return the resultSet
40 | */
41 | public LocalResultSet getResultSet() {
42 | return resultSet;
43 | }
44 |
45 | /**
46 | * @param resultSet the resultSet to set
47 | */
48 | public void setResultSet(LocalResultSet resultSet) {
49 | this.resultSet = resultSet;
50 | }
51 |
52 | }
53 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/sql/SelectField.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities.sql;
2 |
3 | /**
4 | * A select field in an sql select query
5 | * @see SelectQuery
6 | *
7 | */
8 | public class SelectField {
9 |
10 | private String name;
11 | private String alias;
12 |
13 | private SelectTable table;
14 |
15 | /**
16 | * Default no-argument constructor.
17 | */
18 | public SelectField() {
19 | }
20 |
21 | /**
22 | * @return the name
23 | */
24 | public String getName() {
25 | return name;
26 | }
27 | /**
28 | * @param name the name to set
29 | */
30 | public void setName(String name) {
31 | this.name = name;
32 | }
33 |
34 | /**
35 | * @return the alias
36 | */
37 | public String getAlias() {
38 | return alias;
39 | }
40 |
41 | /**
42 | * @param alias the alias to set
43 | */
44 | public void setAlias(String alias) {
45 | this.alias = alias;
46 | }
47 |
48 | /**
49 | * @return the table
50 | */
51 | public SelectTable getTable() {
52 | return table;
53 | }
54 |
55 | /**
56 | * @param table the table to set
57 | */
58 | public void setTable(SelectTable table) {
59 | this.table = table;
60 | }
61 |
62 | }
63 |
--------------------------------------------------------------------------------
/src/main/java/gr/seab/r2rml/entities/sql/SelectTable.java:
--------------------------------------------------------------------------------
1 | package gr.seab.r2rml.entities.sql;
2 |
3 |
4 | import java.util.Date;
5 |
6 | /**
7 | * A table in an sql select query
8 | * @see SelectQuery
9 | *
10 | */
11 | public class SelectTable {
12 |
13 | private String name;
14 | private String alias;
15 | private Date lastModified;
16 |
17 | /**
18 | *
19 | */
20 | public SelectTable() {
21 |
22 | }
23 |
24 | /**
25 | * @return the name
26 | */
27 | public String getName() {
28 | return name;
29 | }
30 | /**
31 | * @param name the name to set
32 | */
33 | public void setName(String name) {
34 | this.name = name;
35 | }
36 | /**
37 | * @return the alias
38 | */
39 | public String getAlias() {
40 | return alias;
41 | }
42 | /**
43 | * @param alias the alias to set
44 | */
45 | public void setAlias(String alias) {
46 | this.alias = alias;
47 | }
48 |
49 | public Date getLastModified() {
50 | return lastModified;
51 | }
52 |
53 | public void setLastModified(Date lastModified) {
54 | this.lastModified = lastModified;
55 | }
56 |
57 | }
58 |
--------------------------------------------------------------------------------
/src/test/resources/dcterms-empty.rdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/test/resources/log4j.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D000-1table1column0rows/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student (
2 | Name varchar(50)
3 | );
4 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D000-1table1column0rows/directGraph.ttl:
--------------------------------------------------------------------------------
1 | # empty graph
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D000-1table1column0rows/mapped.nq:
--------------------------------------------------------------------------------
1 | # empty database
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D000-1table1column0rows/r2rml.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\""; ] ;
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"Name\"}" ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate foaf:name ;
17 | rr:objectMap [ rr:column "\"Name\"" ]
18 | ]
19 | .
20 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student (
2 | Name varchar(50)
3 | );
4 | INSERT INTO Student VALUES ('Venus')
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | _:a "Venus".
4 | _:a .
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/mappeda.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/mappedb.nq:
--------------------------------------------------------------------------------
1 | _:Venus "Venus" .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"Name\"}" ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate foaf:name ;
17 | rr:objectMap [ rr:column "\"Name\"" ]
18 | ]
19 | .
20 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D001-1table1column1row/r2rmlb.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "{\"Name\"}"; rr:termType rr:BlankNode ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate foaf:name;
17 | rr:objectMap [ rr:column "\"Name\"" ]
18 | ]
19 | .
20 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE `Student` (
2 | `ID` INTEGER,
3 | `Name` VARCHAR(15)
4 | );
5 | INSERT INTO `Student` (`ID`, `Name`) VALUES(10,'Venus');
6 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | _:a .
4 | _:a "10"^^ .
5 | _:a "Venus" .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/mappeda.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | "10"^^ .
3 | .
4 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/mappedb.nq:
--------------------------------------------------------------------------------
1 | _:students10 "Venus" .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/mappedd.nq:
--------------------------------------------------------------------------------
1 | _:Student10 "Venus" .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/mappedi.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/mappedj.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"ID\"}/{\"Name\"}";
13 | rr:class foaf:Person ];
14 |
15 | rr:predicateObjectMap
16 | [
17 | rr:predicate ex:id ;
18 | rr:objectMap [ rr:column "\"ID\""; ]
19 | ];
20 |
21 | rr:predicateObjectMap
22 | [
23 | rr:predicate foaf:name ;
24 | rr:objectMap [ rr:column "\"Name\"" ]
25 | ]
26 | .
27 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlb.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\""; ];
11 |
12 | rr:subjectMap [ rr:template "students{\"ID\"}"; rr:termType rr:BlankNode; ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate foaf:name ;
17 | rr:objectMap [ rr:column "\"Name\"" ]
18 | ]
19 | .
20 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlc.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"ID\"}/{\"Name\"}"; ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate ex:id ;
17 | rr:objectMap [ rr:column "\"IDs\""; ]
18 | ]
19 |
20 | .
21 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmld.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | Select ('Student' || "ID" ) AS StudentId
13 | , "ID"
14 | , "Name"
15 | from "Student"
16 | """
17 | ];
18 |
19 | rr:subjectMap [ rr:column "StudentId"; rr:termType rr:BlankNode; ];
20 |
21 | rr:predicateObjectMap
22 | [
23 | rr:predicate foaf:name ;
24 | rr:objectMap [ rr:column "\"Name\"" ]
25 | ]
26 | .
27 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmle.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Students\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"ID\"}/{\"Name\"}"; ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate ex:id ;
17 | rr:objectMap [ rr:column "\"ID\""; ]
18 | ];
19 |
20 | .
21 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlf.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{ID}/{Name}";
13 | rr:class foaf:Person ];
14 |
15 | rr:predicateObjectMap
16 | [
17 | rr:predicate ex:id ;
18 | rr:objectMap [ rr:column "\"ID\""; ]
19 | ];
20 |
21 | rr:predicateObjectMap
22 | [
23 | rr:predicate foaf:name ;
24 | rr:objectMap [ rr:column "\"Name\"" ]
25 | ]
26 | .
27 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlg.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | THIS IS NOT A VALID SQL QUERY
13 | """
14 | ];
15 |
16 | rr:subjectMap [ rr:column "StudentId"; ];
17 |
18 | rr:predicateObjectMap
19 | [
20 | rr:predicate ex:id ;
21 | rr:objectMap [ rr:column "\"ID\""; ]
22 | ];
23 | .
24 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlh.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | Select ('Student' || ID ) AS StudentId
13 | , "ID"
14 | , "Name"
15 | , 1 AS "ID"
16 | from "Student"
17 | """
18 | ];
19 |
20 | rr:subjectMap [ rr:column "StudentId"; ];
21 |
22 | rr:predicateObjectMap
23 | [
24 | rr:predicate ex:id ;
25 | rr:objectMap [ rr:column "\"ID\""; ]
26 | ];
27 |
28 | .
29 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmli.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | SELECT "ID",
13 | "Name"
14 | FROM "Student"
15 | """;
16 |
17 | rr:sqlVersion rr:SQL2008
18 |
19 | ];
20 |
21 | rr:subjectMap [ rr:template "http://example.com/{\"ID\"}/{\"Name\"}"; ];
22 |
23 | rr:predicateObjectMap
24 | [
25 | rr:predicate foaf:name ;
26 | rr:objectMap [ rr:column "\"Name\"" ]
27 | ]
28 | .
29 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D002-1table2columns1row/r2rmlj.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | SELECT "Student"."ID", "Student"."Name"
13 | FROM "Student"
14 | """
15 | ];
16 |
17 | rr:subjectMap [ rr:template "http://example.com/{\"ID\"}/{\"Name\"}"; ];
18 |
19 | rr:predicateObjectMap
20 | [
21 | rr:predicate foaf:name ;
22 | rr:objectMap [ rr:column "\"Name\"" ]
23 | ]
24 | .
25 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student (
2 | ID INTEGER,
3 | FirstName VARCHAR(50),
4 | LastName VARCHAR(50)
5 | );
6 | INSERT INTO Student (ID, FirstName, LastName) VALUES (10,'Venus', 'Williams');
7 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | _:a .
4 | _:a "10"^^ .
5 | _:a "Venus" .
6 | _:a "Williams" .
7 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/mappedb.nq:
--------------------------------------------------------------------------------
1 | "Venus Williams" .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/mappedc.nq:
--------------------------------------------------------------------------------
1 | "Venus Williams" .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | SELECT "ID",
13 | "FirstName",
14 | "LastName"
15 | FROM "Student"
16 | """;
17 | rr:sqlVersion rr:SQL1979
18 | ];
19 |
20 | rr:subjectMap [ rr:template "http://example.com/Student/{\"ID\"}/{\"FirstName\"}-{\"LastName\"}";
21 | rr:class foaf:Person ];
22 |
23 | rr:predicateObjectMap
24 | [
25 | rr:predicate ex:id ;
26 | rr:objectMap [ rr:column "\"ID\""; ]
27 | ];
28 | .
29 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/r2rmlb.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [
11 | rr:sqlQuery """
12 | SELECT "ID",
13 | ("FirstName" || ' ' || "LastName") AS Name
14 | FROM "Student"
15 | """
16 | ];
17 |
18 | rr:subjectMap [ rr:template "http://example.com/Student/{\"ID\"}"; ];
19 |
20 | rr:predicateObjectMap
21 | [
22 | rr:predicate foaf:name ;
23 | rr:objectMap [ rr:column "Name" ]
24 | ]
25 | .
26 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D003-1table3columns1row/r2rmlc.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/Student{\"ID\"}"; ];
13 |
14 | rr:predicateObjectMap
15 | [
16 | rr:predicate foaf:name ;
17 | rr:objectMap [ rr:template "{\"FirstName\"} {\"LastName\"}"; rr:termType rr:Literal; ]
18 | ]
19 | .
20 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D004-1table2columns1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student_Sport(
2 | Student varchar(50),
3 | Sport varchar(50)
4 | );
5 | INSERT INTO Student_Sport (Student,Sport) VALUES ('Venus', 'Tennis');
6 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D004-1table2columns1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | _:a .
4 | _:a "Venus" .
5 | _:a "Tennis" .
6 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D004-1table2columns1row/mappeda.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | .
3 | "Tennis" .
4 | .
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D004-1table2columns1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student_Sport\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"Student\"}";
13 | rr:class ex:Student ];
14 |
15 | rr:predicateObjectMap
16 | [
17 | rr:predicate foaf:name ;
18 | rr:objectMap [ rr:column "\"Student\"" ]
19 | ]
20 | .
21 |
22 |
23 | a rr:TriplesMap;
24 |
25 | rr:logicalTable [ rr:tableName "\"Student_Sport\"" ];
26 |
27 | rr:subjectMap [ rr:template "http://example.com/{\"Sport\"}";
28 | rr:class ex:Sport ];
29 |
30 | rr:predicateObjectMap
31 | [
32 | rr:predicate foaf:name ;
33 | rr:objectMap [ rr:column "\"Sport\"" ]
34 | ]
35 | .
36 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D004-1table2columns1row/r2rmlb.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:sqlQuery """
11 | SELECT ('Student' || "Student") AS StudentId,
12 | "Student"
13 | FROM "Student_Sport"
14 | """;
15 | ] ;
16 |
17 | rr:subjectMap [ rr:column "StudentId"; rr:termType rr:Literal;
18 | rr:class ex:Student ];
19 |
20 | rr:predicateObjectMap
21 | [
22 | rr:predicate foaf:name ;
23 | rr:objectMap [ rr:column "\"Student\"" ]
24 | ]
25 | .
26 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE IOUs (
2 | fname VARCHAR(20),
3 | lname VARCHAR(20),
4 | amount FLOAT);
5 | INSERT INTO IOUs (fname, lname, amount) VALUES ('Bob', 'Smith', 30);
6 | INSERT INTO IOUs (fname, lname, amount) VALUES ('Sue', 'Jones', 20);
7 | INSERT INTO IOUs (fname, lname, amount) VALUES ('Bob', 'Smith', 30);
8 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | _:a .
4 | _:a "Bob" .
5 | _:a "Smith" .
6 | _:a "3.0E1"^^ .
7 |
8 | _:b .
9 | _:b "Sue" .
10 | _:b "Jones" .
11 | _:b "2.0E1"^^ .
12 |
13 | _:c .
14 | _:c "Bob" .
15 | _:c "Smith" .
16 | _:c "3.0E1"^^ .
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/mappeda.nq:
--------------------------------------------------------------------------------
1 | .
2 | "3.0E1"^^ .
3 | .
4 | "2.0E1"^^ .
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/mappedb.nq:
--------------------------------------------------------------------------------
1 | _:BobSmith .
2 | _:BobSmith "Bob" .
3 | _:BobSmith "Smith" .
4 | _:BobSmith "3.0E1"^^ .
5 | _:SueJones .
6 | _:SueJones "Sue" .
7 | _:SueJones "Jones" .
8 | _:SueJones "2.0E1"^^ .
9 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"IOUs\"" ];
11 |
12 | rr:subjectMap [ rr:template "http://example.com/{\"fname\"};{\"lname\"}";
13 | rr:class foaf:Person ];
14 |
15 | rr:predicateObjectMap
16 | [
17 | rr:predicate ex:owes ;
18 | rr:objectMap [ rr:column "\"amount\""; ]
19 | ];
20 |
21 | .
22 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D005-1table3columns3rows2duplicates/r2rmlb.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"IOUs\"" ];
11 |
12 | rr:subjectMap [ rr:template "{\"fname\"}_{\"lname\"}";
13 | rr:class ;
14 | rr:termType rr:BlankNode; ];
15 |
16 | rr:predicateObjectMap
17 | [
18 | rr:predicate ;
19 | rr:objectMap [ rr:column "\"fname\""; ]
20 | ];
21 |
22 | rr:predicateObjectMap
23 | [
24 | rr:predicate ;
25 | rr:objectMap [ rr:column "\"lname\""; ]
26 | ];
27 |
28 | rr:predicateObjectMap
29 | [
30 | rr:predicate ;
31 | rr:objectMap [ rr:column "\"amount\""; ]
32 | ];
33 | .
34 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D006-1table1primarykey1column1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student (
2 | Name varchar(50) PRIMARY KEY
3 | );
4 | INSERT INTO Student (Name) VALUES ('Venus');
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D006-1table1primarykey1column1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | "Venus" .
4 | .
5 |
6 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D006-1table1primarykey1column1row/mappeda.nq:
--------------------------------------------------------------------------------
1 | "Bad Student" .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D006-1table1primarykey1column1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: .
2 | @prefix foaf: .
3 | @prefix ex: .
4 | @prefix xsd: .
5 | @base .
6 |
7 |
8 | a rr:TriplesMap;
9 |
10 | rr:logicalTable [ rr:tableName "\"Student\"" ];
11 |
12 | rr:subjectMap [ rr:constant ex:BadStudent;
13 | rr:graphMap [ rr:constant ]; ];
14 |
15 | rr:predicateObjectMap
16 | [
17 | rr:predicateMap [ rr:constant ex:description ];
18 | rr:objectMap [ rr:constant "Bad Student"; ]
19 | ]
20 | .
21 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/create.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE Student (
2 | ID integer,
3 | Name varchar(50),
4 | PRIMARY KEY (ID)
5 | );
6 | INSERT INTO Student (ID, Name) VALUES(10,'Venus');
7 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/directGraph.ttl:
--------------------------------------------------------------------------------
1 | @base .
2 |
3 | "10"^^ .
4 | "Venus" .
5 | .
6 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappeda.nq:
--------------------------------------------------------------------------------
1 | .
2 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappedb.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | .
3 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappedc.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | "10"^^ .
3 | .
4 | .
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappedd.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | "10"^^ .
3 | .
4 | .
5 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappede.nq:
--------------------------------------------------------------------------------
1 | "10"^^ .
2 | "Venus" .
3 | .
4 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappedf.nq:
--------------------------------------------------------------------------------
1 | .
2 | "Venus" .
3 | "10"^^ .
4 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/mappedg.nq:
--------------------------------------------------------------------------------
1 | "Venus" .
2 | .
3 |
--------------------------------------------------------------------------------
/src/test/resources/mysql/D007-1table1primarykey2columns1row/r2rmla.ttl:
--------------------------------------------------------------------------------
1 | @prefix rr: