Upload
madeline-ross
View
224
Download
4
Tags:
Embed Size (px)
Citation preview
DartGrid
Browser-based mapping tool of Browser-based mapping tool of SQL to RDF Point TemplateSQL to RDF Point Template
Zhejiang University & OpenLink Zhejiang University & OpenLink SoftwareSoftware
DartGrid
Contents
Identifies and records the SQL2RDF mapping issues2
Browser-based mapping tool of SQL to RDF is developed.4
Why need semantic mapping?31
Identify a set of mapping cases33
DartGrid
Why need semantic mapping tool?
1.1.Semantic mapping from Relational databases to RDF is the key problem in RDF-based databases integration.
22Defining semantic mapping manually is a burdensome and error-prone work.
33So far, there is none full-automatic mapping tool of SQL to RDF, most of which is defined manually..
DartGrid
2. Mapping cases
W3C Banff life scienece demo also has public available SQL versions.
Mapping cases
THALIA Testbed provides a collection of 40 relational database tables representing course information.
More: http://esw.w3.org/topic/SQL2OWL
DartGrid
2.1 Representation and notation
1
Graphical representation: each case is graphically represented for documentation purpose.
3
Syntax level: for implementation purpose, the mappings are finally stored as virtuoso meta-schema language MDL
2
Abstract level: a mapping is abstractly described as a rule that has rule head and rule body.
DartGrid
2.1 Representation and notation(2)
1
Variables: a,b are original column names of the relational table.
3
Uri function: it may be implemented as either generating a blank node ID (internal id) or global URI.
2
uri<?...>: It is a function used to generate universal resource identifiers.
R(?a,?b,?c,…)-: (uri<?a>, rdf:type, thalia:Course), (uri<?a>, foaf:name,?b),
(uri<?a>, thalia:hasInstructor, uri<?2>), (uri<?2>, rdf:type,
thalia:Instructor)
DartGrid
2.2 3 kinds of mapping cases
11The simplest situation of mapping cases is a single table exactly maps to one single class in the ontology.
22More complex situation is mapping from one table to four ontological classes
33Most complex situation is self-join that is three or above tables are connected by foreign key, or one table has foreign key relationship with itself.
DartGrid
2.3 THALIA Testbed
11The tested relational databases are taken from the THALIA Testbed benchmark.
22It provides a collection of 40 relational database tables representing university course catalogs.
33The data in the testbed provide a rich source of syntactic and semantic heterogeneities.
DartGrid
2.3.1 Description as a rule
Case 1 Arizona State University The asu table stores CS course information
of the Arizona State University. This mapping case is that a single table
exactly maps to one single ontology class.
DartGrid
2.3.1 Brown University case
11The normal mapping systems often separately consider the schema-level mapping and instance-level mapping.
22
Thialia:hasInstructor should be considered as a property (schema) in RDF, but is stored in a relational tuple(instance).
33This use case illustrates the mapping from one table to four ontological classes.
DartGrid
2.3.2 Description as a rule
The brown table stores CS course information of the Brown University.
This use case illustrates the mapping from one table to four ontological classes: Course, Instructor, Event, Point.
DartGrid
3. Browser-based mapping tool
1
This mapping tool is developed based on OAT (OpenLink Ajax Toolkit)
3
This mapping tool provides a lot of easy-to-use functionalities and has some special technical features.
2
This mapping tool is developed to help domain experts to define the semantic mapping
DartGrid
3.1 Functional components
Display databases and ontology schema structure
Define instance-level mappings such as table-to-class or column-to-property
Define schema-level mappings (for complex joins between tables)
Mapping ToolMapping Tool
DartGrid
3.1.1 Instance-level mapping
Instance-level mapping is always simple and easy to understand.
Generally speaking, instance-level mapping has two types: From tables to ontology classes From one column to one ontology property
3 situations of mapping tables to classes From one table to one ontology class From one table to many ontology classes From many tables to one ontology class
DartGrid
3.1.2 Schema-level mapping
It is more complicated than instance-level mapping, which is based on foreign key relation and relativity defined in ontology schema.
Ontology Schema
Relational Schema
uri<?>
?id?name ?cid
student:id
student:name
student id name cid
1 ... 10
2 ... 11
3 12
course id name
10
11
12 ...
thalia:Course rdf:type
uri<?>
thalia:Course
rdf:type
course:id
?cid
course:id
student:select
foreign key
DartGrid
3.2 Technical Features
Drag-and-drop mapping
Web browser-based tool
Visualization mapping
Data source annotation
semi-auto mapping for complex joins
Browser-basedBrowser-basedMapping toolMapping tool
Browser-basedBrowser-basedMapping toolMapping tool
DartGrid
4. Future work
Automate
Automate mapping process as far as possible by adding some heuristic rules to automate the semantic mapping task.
MDLMDL
Adopt Virtuoso's SPARQL based Meta schema Language as the syntax mapping rule.