Presentation is loading. Please wait.

Presentation is loading. Please wait.

A SQL-based Approach for Mapping Relational Data to RDF Souripriya Das and Seema Sundara Database Semantic Technologies Group, Oracle.

Similar presentations


Presentation on theme: "A SQL-based Approach for Mapping Relational Data to RDF Souripriya Das and Seema Sundara Database Semantic Technologies Group, Oracle."— Presentation transcript:

1 A SQL-based Approach for Mapping Relational Data to RDF Souripriya Das and Seema Sundara Database Semantic Technologies Group, Oracle

2 THE FOLLOWING IS INTENDED TO OUTLINE OUR GENERAL PRODUCT DIRECTION. IT IS INTENDED FOR INFORMATION PURPOSES ONLY, AND MAY NOT BE INCORPORATED INTO ANY CONTRACT. IT IS NOT A COMMITMENT TO DELIVER ANY MATERIAL, CODE, OR FUNCTIONALITY, AND SHOULD NOT BE RELIED UPON IN MAKING PURCHASING DECISION. THE DEVELOPMENT, RELEASE, AND TIMING OF ANY FEATURES OR FUNCTIONALITY DESCRIBED FOR ORACLE'S PRODUCTS REMAINS AT THE SOLE DISCRETION OF ORACLE. 2

3 Architecture Diagram for RDB2RDF processing Relational Database Mapping Language Processor Mapping Specification RDF schema for query writing SPARQL to SQL translator Mapping RDF concepts to DB objects SQL query RDB2RDF Mapper Query Writer SPARQL query SQL Language Processor SQL statements Source Database Client Side

4 Overview Basis for defining an RDFS/OWL class and its properties based on relational data stored in a source database: – A SQL query specifying arbitrary transformation of source relational data – Related foreign and unique (or primary) key constraint definitions. Client side capabilities may vary – Strong-DB: An RDBMS with support for Views and Constraints on Views. (Example: Oracle database server) – No-DB: Only connects to database using JDBC or ODBC. Proposed mapping language (Leverage SQL on source database and if available, SQL on client side) – Strong-DB No new language. Employ some conventions with SQL (e.g., when naming Views, View cols, and constraints). – No-DB Simple language to specify mapping between RDF classes, properties and SQL queries, query projections, constraints.

5 DB View RDF Class and Properties InstURI class 100 200 300 400 500 John Jane Brad Glen Kurt R&D Sales 11 22 33 44 c_ref_deptno empnoenamejobdeptno c_prm_empno part full intrn full etype rdf:type job- based classes status- based classes

6 Example: DEPT view defines Class and Properties SELECT CREATE VIEW AS FROM dept, dname, loc, deptno InstURI ALTER VIEW add constraint unique ( ) disable novalidate; Unique Key

7 Example: EMP view defines Class and Properties SELECT CREATE VIEW AS FROM emp InstURI rdf:type, ename,, empno, deptno, job ALTER VIEW add constraint primary key ( ) disable novalidate; primary Key ALTER VIEW add constraint foreign key ( ) references ( ) disable novalidate; foreign Key

8 Example: EMP view with multiple rdf:type columns ALTER VIEW add constraint primary key ( ) disable novalidate; primary Key ALTER VIEW add constraint foreign key ( ) references ( ) disable novalidate; foreign Key SELECT CREATE VIEW AS FROM emp InstURI, ename,, empno, deptno, job,, etype

9 Subproperties of rdf:type rdf:type rdfs:subPropertyOf

10 Oracle Confidential SPARQL Query: Involving generic rdf:type SELECT ?x rdf:type ?x ?ename. ?x ?ename WHERE { } SELECT e e.instURI x, e. ename FROM WHERE e. = or e. =

11 Prefix-based DB identifiers (stay within length-limits) RDF_PREFIX_MAP$ ViewPrefixExpansion xyz:empxyz: Prefix for class name xyz:empemp: Prefix for cols/cons xyz:deptxyz: Prefix for class name xyz:deptdept: Prefix for cols/cons ADD Unique constraint (View, Prefix) ADD Unique constraint (View, Expansion)

12 No DB: info ViewNameSQLdefString xyz:dept xyz:emp SELECT FROM dept, dname, loc, deptno InstURI dept:Name dept:Location dept:deptno SELECT FROM emp InstURI emp:Name rdf:type emp:deptNum emp:empno emp:job, ename,, empno, deptno, job

13 No DB: View Constraint info ConsNameConsTypeViewNameRefConsName dept:c_unq_deptnoUniquexyz:dept emp:c_prm_empnoPrimaryxyz:emp emp:c_ref_deptnoReferencexyz:empdept:c_unq_deptno ConsNameViewNameColNameColPosInKey dept:c_unq_deptnoxyz:deptdept:deptno1 emp:c_prm_empnoxyz:empemp:empno1 emp:c_ref_deptnoxyz:empemp:deptNum1

14 No DB: info ViewNameColPosProperty xyz:dept1 InstURI xyz:dept2dept:deptno xyz:dept3dept:Name xyz:dept4dept:Location xyz:emp1 InstURI xyz:emp2emp:empno xyz:emp3emp:Name xyz:emp4rdf:type xyz:emp5emp:job xyz:emp6emp:deptNum xyz:emp0emp:c_ref_deptno

15 No DB: A simple syntax for Classes Class (ViewName, SQLdefString) Class (xyz:dept, ) Class (xyz:emp, )

16 No DB: A simple syntax for Properties 1 Property (PropertyName, ViewName, ColPos) Property (dept:InstURI, "xyz:dept, 1) Property (dept:deptno, "xyz:dept, 2) Property (dept:Name, xyz:dept, 3) Property (dept:location, xyz:dept, 4) Property (emp:InstURI, xyz:emp, 1) Property ("emp:empno, xyz:emp, 2) Property (emp:Name, xyz:emp, 3) Property (emp:rdf:type, xyz:emp, 4) Property (emp:job, xyz:emp, 5) Property (emp:deptNum, xyz:emp, 6) Property (emp:c_ref_deptno, xyz:emp, 0) 1 Inverse function specification for properties not shown, but can be added easily. Range information can be derived from type info obtained from SQL engine at source database.

17 No DB: A simple syntax for Constraints Constraint (ConsName, ConsType, ViewName, RefConsName) Constraint (dept:c_unq_deptno, Unique, xyz:dept, NULL) Constraint (emp:c_prm_empno, Primary, xyz:emp, NULL) Constraint (emp:c_ref_deptno, Reference, xyz:emp, dept:c_unq_deptno) ConstraintColumn (ConsName, ViewName, ColName, ColPosInKey) ConstraintColumn (dept:c_unq_deptno, xyz:dept, dept:deptno, 1) ConstraintColumn (emp:c_prm_empno, xyz:emp, emp:empno, 1) ConstraintColumn (emp:c_ref_deptno, xyz:emp, emp:deptNum, 1)

18 Summary SELECT FROM WHERE Group By Having … SELECT FROM WHERE Group By Having … class properties Inst URI class properties Inst URI Proposed mapping language (Leverage SQL on source database and if available, SQL on client side) – Strong-DB No new language. Employ some conventions with SQL (e.g., when naming Views, View cols (projections), and constraints). – No-DB Simple language to specify mapping between RDF classes, properties and SQL queries, query projections, constraints. SQL query Projections constraints View

19 Oracle Confidential


Download ppt "A SQL-based Approach for Mapping Relational Data to RDF Souripriya Das and Seema Sundara Database Semantic Technologies Group, Oracle."

Similar presentations


Ads by Google