department of computer science and engineering two layer mapping from database to rdf martin Švihla...

17
department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla Martin Švihla [email protected] Research Group Webing Department of Computer Science FEE CTU Prague KEG 9.12.2004

Upload: rodger-washington

Post on 29-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

department of computer scienceand engineering

Two Layer Mapping from Database to RDF

Martin ŠvihlaMartin Š[email protected]

Research Group Webing

Department of Computer Science

FEE CTU Prague

KEG 9.12.2004

Page 2: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(2)

department of computer scienceand engineering

ContentContent

● a brief introduction to Semantic weba brief introduction to Semantic web● problem overview – generating of metadataproblem overview – generating of metadata● mapping from database to RDFmapping from database to RDF● METAmorphoses – two layer mapping modelMETAmorphoses – two layer mapping model● use caseuse case● conclusionconclusion● future workfuture work

Page 3: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(3)

department of computer scienceand engineering

What is Semantic web?What is Semantic web?

Semantic webSemantic web is an extension of the current is an extension of the current web, web, in which data are described so that computers in which data are described so that computers can can understand meaning of an informationunderstand meaning of an information..

• Semantic web is not separate web but an extensionSemantic web is not separate web but an extensionof the current one.of the current one.

• This concept should enable better cooperation This concept should enable better cooperation between computers and people. between computers and people.

Page 4: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(4)

department of computer scienceand engineering

How to create RDF metadata?How to create RDF metadata?

● manual anotationmanual anotation of existing of existing HTML presentationsHTML presentations● by author when page is createdby author when page is created● existing web resources by communityexisting web resources by community

● dynamical generation of metadata dynamical generation of metadata ● from wrapped HTML pagesfrom wrapped HTML pages● from databasefrom database

Page 5: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(5)

department of computer scienceand engineering

Dynamical generation of metadata from Dynamical generation of metadata from DBDB● mmapping from database structure apping from database structure

to RDF according to given ontologyto RDF according to given ontology

Page 6: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(6)

department of computer scienceand engineering

Motivation for our workMotivation for our work

Main problems:Main problems:● flexibilityflexibility● usabilityusability

Solution – Solution – two layerstwo layers::● mapping layer (complexity, flexibility)mapping layer (complexity, flexibility)● template layer (simple programmer template layer (simple programmer

interface)interface)

Page 7: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(7)

department of computer scienceand engineering

Two layer mappingTwo layer mapping

mapping layer

SQL query

RDF tag label

template name

ontologyDB

mapping fragments:• classes• properties• variables• conditions

Page 8: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(8)

department of computer scienceand engineering

Two layer mappingTwo layer mapping

template layer

mapping layer

SQL query

RDF tag label

template name

ontologyDB

RDF

mapping fragments:• classes• properties• variables• conditions

using fragments to create RDF document

Page 9: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(9)

department of computer scienceand engineering

Mapping layer sampleMapping layer sample

<mmm:Class mmm:templateName="<mmm:Class mmm:templateName="personperson" mmm:rdfLabel="" mmm:rdfLabel="CTUPersonCTUPerson" " mmm:sql="mmm:sql="select * from w_peopleselect * from w_people">">

<mmm:ClassCondition mmm:templateName="username" <mmm:ClassCondition mmm:templateName="username" mmm:whereString="username ="></mmm:ClassCondition>mmm:whereString="username ="></mmm:ClassCondition>

<mmm:Variable mmm:templateName="usernameVariable" <mmm:Variable mmm:templateName="usernameVariable" mmm:sqlName="username"/>mmm:sqlName="username"/>

<mmm:Property mmm:templateName="firstName" <mmm:Property mmm:templateName="firstName" mmm:rdfLabel="foaf:firstName" mmm:sqlName="jmeno">mmm:rdfLabel="foaf:firstName" mmm:sqlName="jmeno"> <mmm:Attribute mmm:rdfLabel="rdf:datatype" <mmm:Attribute mmm:rdfLabel="rdf:datatype" mmm:prefix="http://www.w3.org/2001/XMLSchema#string"/>mmm:prefix="http://www.w3.org/2001/XMLSchema#string"/>

</mmm:Property></mmm:Property>

</mmm:Class></mmm:Class> SQL query

RDF tag label

template name

Page 10: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(10)

department of computer scienceand engineering

Template layer sampleTemplate layer sample

<mmt:putInstance mmt:name="<mmt:putInstance mmt:name="personperson" mmt:id="1">" mmt:id="1">

<mmt:Condition <mmt:Condition mmt:name="mmt:name="usernameusername">$username$</mmt:Condition>">$username$</mmt:Condition>

<mmt:putProperty mmt:name="<mmt:putProperty mmt:name="firstNamefirstName"/>"/>

<mmt:putProperty mmt:name="publications"><mmt:putProperty mmt:name="publications">

<mmt:putInstance mmt:name="publication" mmt:id="2"><mmt:putInstance mmt:name="publication" mmt:id="2">

<mmt:Condition mmt:name="authorUsername"><mmt:Condition mmt:name="authorUsername">

<mmt:Variable mmt:name="usernameVariable" mmt:id="1"/>

</mmt:Condition></mmt:Condition>

</mmt:putInstance></mmt:putInstance>

</mmt:putProperty></mmt:putProperty>

</mmt:putInstance></mmt:putInstance>

Page 11: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(11)

department of computer scienceand engineering

LayersLayers

„„Mapping layer“Mapping layer“● mapping from SQL to mapping from SQL to

ontologyontology● creates tags for template creates tags for template

layerlayer● grants validity of RDFgrants validity of RDF

„„Template layer“Template layer“● defines final form of RDFdefines final form of RDF● uses tags from mapping layeruses tags from mapping layer● used by programmerused by programmer

Page 12: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(12)

department of computer scienceand engineering

LayersLayers

„„Mapping layer“Mapping layer“● mapping from SQL to mapping from SQL to

ontologyontology● creates tags for template creates tags for template

layerlayer● grants validity of RDFgrants validity of RDF

„„Template layer“Template layer“● defines final form of RDFdefines final form of RDF● uses tags from mapping layeruses tags from mapping layer● used by programmerused by programmer

Page 13: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(13)

department of computer scienceand engineering

Test use caseTest use case

● we implemented we implemented METAmorphoses processorMETAmorphoses processor

● we used the processor to we used the processor to generate RDF metadata as an generate RDF metadata as an extension to HTML extension to HTML presentation of our presentation of our departmentdepartment

Dynamical, fast, up-to-date and Dynamical, fast, up-to-date and cheap semantic web cheap semantic web presentation contains presentation contains information about entities of information about entities of the department.the department.

Page 14: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(14)

department of computer scienceand engineering

Conclusion (1)Conclusion (1)

ProsPros::● usabilityusability (programmer doesn't have to know ontology) (programmer doesn't have to know ontology)

● reliability reliability ((valid RDFvalid RDF))

● flexibility flexibility ((any ontology can be usedany ontology can be used))

● speedspeed (no RDF or OWL API is used) (no RDF or OWL API is used)

ConsCons::● it is not possible to query database dynamicallyit is not possible to query database dynamically

Page 15: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(15)

department of computer scienceand engineering

Conclusion (2)Conclusion (2)

Areas of possible use:Areas of possible use:● dynamical web sites with a clear structure (a list, a dynamical web sites with a clear structure (a list, a

tree)tree)● e-shop catalogse-shop catalogs● school web presentationsschool web presentations● ......

Page 16: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(16)

department of computer scienceand engineering

Future workFuture work

● mapping editor (for mapping layer)mapping editor (for mapping layer)● more simple programmer interface (for template more simple programmer interface (for template

layer)layer)● jsp custom tag libjsp custom tag lib

● collaboration with some URI systemcollaboration with some URI system

● real and useful examplereal and useful example

Page 17: Department of computer science and engineering Two Layer Mapping from Database to RDF Martin Švihla svihlm1@fel.cvut.cz Research Group Webing Department

KEG 9.12.2004

Two Layer Mapping from Database to RDF(17)

department of computer scienceand engineering

?? comments and comments and

questions...questions...

...thank you...thank you

[email protected]