48
Querying a Geographic Database using an Ontology- Based Methodology Renata Viegas Valéria G. Soares [email protected] [email protected]

Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares [email protected] [email protected]

Embed Size (px)

Citation preview

Page 1: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

Querying a Geographic Database using an Ontology-

Based Methodology

Renata ViegasValéria G. Soares

[email protected]@ppgsc.ufrn.br

Page 2: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 2

Summary

• MotivationMotivation• System Architecture

• Semantic Layer

• Application Domain • Conclusion

Page 3: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 3

Motivation

• GIS are multidisciplinary systems• Geographic features are collected and

stored in GIS that were modeled based on a specific researcher vision.

• Current GIS must be able to solve the semantic interoperability.

Page 4: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 4

Motivation

• Semantic interoperability• A geographic feature could have more

than one description; • Interoperability based on the use of

ontologies as being a knowledge database type.

Page 5: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 5

Motivation

• Geographic Ontologies• A geographic ontology is a

conceptualization of a phenomenon or geographic object in the real world.

• Characteristics of geographic objects must be embodied to the ontology:• Location• Topology• Direction

Page 6: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 6

Geographic Ontologies

• Relationship through ontologies classes with typical geographic relationships

São José dosCampos

Campos do Jordão

JoãoPessoa

NortheastRegion

Near

Within

Page 7: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 7

Summary

• Motivation• System ArchitectureSystem Architecture

• Semantic Layer

• Application Domain • Conclusion

Page 8: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 8

System Architecture

• Our Problem:• Different professionals of distinct

research areas want to access the same GDB

• Our solution:• Based on geographic ontologies

Page 9: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 9

System Architecture

• The semantic layer intermediates the users’ queries with the geographic database• Each one of the users community could

interact with the system using only specific terms of its research area, and could receive its queries answers in an appropriate way.

Page 10: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 10

General System Architecture

Web Map Formulation

Application

Web Browser User Interface

Semantic LayerOWLOWL JENAJENA

PostgreSQL

PostGISGeographic Database

Page 11: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 11

Query Process

• The user query will be submitted• The system will recognize the used

terms.

• The next step is to look for the terms and concepts used in this query, in the users’ ontology• comparing the ontology with the GDB

ontology, looking for equivalent concepts.

Page 12: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 12

Query Process

QUERY USER

PHP

Java / Jena

QueryManagement

Users, Concepts, Terms

Database Request

Users Ontology

GDB Ontology

GDB

Semantic Layer

Page 13: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 13

Detailing the Semantic Layer• Step 1: Define the ontologies• Step 2: Bind definition between

the classes of the different ontologies• The result of this binding process is a

formal structure with expressions that show which terms of each ontology is related to others terms of another ontology.

Page 14: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 14

Detailing the Semantic Layer• Mapping synonyms classes

• Synonym classes are classes whose concepts have the same meaning, independent of their given names, that are related of the specific knowledge of each community.

• Ontologies Manipulation• We use Jena API to generate graphs RDF, which

is represented by resources, properties and literals;

• From the Jena API methods we can manipulate and compare the ontologies.

Page 15: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 15

Semantic Layer

Users Management

Module

Query Preparation

Module

Ontologies Management

Module

Comparative Module

QueryGeneration

Module

OWL

DictionaryGeneration

Module

Page 16: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 16

Semantic Layer Modules

• Users' Management Module• The first step to submit a query is to

inform which type of user wants to interact with the system

• The system will show a pay-define queries’ interface, with only specific terms of this type of users, based on the defined ontologies.

Page 17: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 17

Semantic Layer Modules

• Ontologies’ Management Module• Activate ontologies

• User ontology and the ontology that represents the contents of the GDB

• The ontologies are stored in ontologies’ server, and are accessed through their URLs

• Methods of the Jena API will be used to construct the graphs (models) of the ontologies.

Page 18: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 18

Semantic Layer Modules

• Query Preparation Module• This module will identify and store the

key terms of the query

Page 19: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 19

Semantic Layer Modules

• Comparative Module• Search of similar terms in the ontologies

• The similarity is defined manually, based on the interviews with professionals of the different areas

• The OWL Tags• equivalentClass and sameAs

Page 20: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 20

Semantic Layer Modules

• Comparative Module• The <owl:sameAs> tag is used when we

have different nomenclatures that refers to a same entity• A typical use of owl:sameAs is for ontologies’

unification, to say that two individuals classes, defined in different documents, are equals.

Page 21: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 21

Semantic Layer Modules

• Comparative Module• Methods of the Jena API treat the

similarities binding classes of an ontology to another one• The getSameAs() method, by the

OntResource interface, is used to find the similar classes in the ontologies.

Page 22: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 22

Semantic Layer Modules

• Query Generation Module• Mount the query that will be submitted

to the database• Use the terms found in the search for

the similarity, as well as the relationship used in the query interface.

Page 23: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 23

Semantic Layer Modules

• Dictionary Generation Module• Mount a detailed text, with the key

terms of the query, supplying to the user descriptions about the geographic features involved in his queries.

Page 24: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 24

Summary

• Motivation• System Architecture

• Semantic Layer

• Application DomainApplication Domain • Conclusion

Page 25: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 25

Application: Coral Reef Domain• Geographic Domain: Coral Reefs• We have three different

communities: geologists, biologists and tourists• Development of three different

ontologies for each one of these communities.• The ontologies give support to the

construction of adaptable interfaces for each community.

Page 26: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 26

Developed Ontologies

• Geologist Ontology

Page 27: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 27

Developed Ontologies

• We also have developed ontology for the biologists community and tourists community

• The geologist ontology is the same of the geographic database ontology (GDB).

Page 28: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 28

Prototype Query Example

• Example: A tourist wants to “find the best area for dip in the sea nearby the coral reefs”

• Activated ontologies for this query: the geologist (Ogeo) and the tourist (Otur)

This information is not storedon our database…

Page 29: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 29

Prototype Query Example - Tourist• Steps:

• Look for the term dip in the sea on the tourist ontology• We defined in the Otur that a tourist could

dip in the sea around the floating boats or within the natural pools

dip in the sea

floating boat

natural pool

around

within

Page 30: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 30

• Look for an equivalent term on the geologist ontology• No similar class to “dip in the sea” could be

found in the Ogeo at this point

Prototype Query Example - Tourist

Page 31: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 31

Prototype Query Example - Tourist• Steps (Continue):

• Go down one more step on the tourist ontology• Verify if there is more information in the relationships

between classes or subclasses

• dip in the sea appears in the tourist ontology with properties that bind this class to other ones in the ontology

• The property “within” binds the class “dip in the sea” (domain) to the class “natural pool” (range)

• The property "surround", binds the class “dip in the sea” (domain) to the class “floating boats” (range)

Page 32: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 32

Prototype Query Example - Tourist• Steps (Continue):

• the system will search now for classes similar to “natural pool” and “floating boats” on the geologist ontology• The class “floating boats” is defined on both

the tourist ontology Otur and the geologist ontology Ogeo

• The class “natural pool” is not found

floating boat

Reef anchor

Page 33: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 33

Prototype Query Example - Tourist• Steps (Continue):

• The Comparative Module goes down one more step in the graph generated from the tourist ontology, looking for relationships between classes

• The relationship is found: “Natural pools” surround “Coral Reef”

naturalpool

coral reefsurround

Page 34: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 34

Prototype Query Example - Tourist• Steps (Continue):

• The query that will be submitted to the GDB is: “show all the areas that surround the floating boats and the coral reefs bodies”

SELECT buffer (flutuante.flutuante_geom, 10) AS flutuante_geom,

buffer(corpo_coralineo.geom_cabeco, 10) AS geom_cabeco

FROM flutuante, corpo_coralineo

AS foo USING UNIQUE oid USING SRID = -1

Page 35: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 35

Results

Page 36: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 36

Results

Page 37: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 37

Prototype Query Example - Biologist• A biologist wants to know where

he could “find no consolidate substrates on the coral reef region”• Activated ontologies for this query: the

biologist (Obio) and the geologist (Ogeo)

Page 38: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 38

Prototype Query Example - Biologist• Steps:

• Look for the “no-consolidate substrate” class in the Obio ontology

• Look for class similarities on the definition of this class

• The class “no-consolidate substrate” in the biologist ontology has no similar class in any other ontology

• The comparative module will go down one more level, verifying whether the “no-consolidate substrate” class has some relationships with others classes or has sub-classes

Page 39: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 39

Prototype Query Example - Biologist• Steps:

• The comparative module finds that the “no-consolidate substrate” class has sub-classes (relationship ISA) with the classes: “sand”, “gravel” and “mud”

no-consolidatesubstrate

sand gravel mud

Page 40: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 40

• Look for classes similar to “sand”, “gravel” and “mud” on the geologist ontology

Prototype Query Example - Biologist

no-consolidatesubstrate

sand gravel mud

sediment

sand

Benthic region

has

Obio Ogeo

Page 41: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 41

Prototype Query Example - Biologist• Steps:

• The conceptual similarity is found• The Query Generator Module will

construct this following SQL query clause

SELECT geom_areia AS geom_areia, geom_lama AS geom_lama, geom_cascalho AS geom_cascalhoFROM areia, cascalho, lamaAS foo USING UNIQUE oid USING SRID = -1

Page 42: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 42

Results

Page 43: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 43

Results

Page 44: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 44

Summary

• Motivation• System Architecture

•Semantic Layer• Application Domain • ConclusionConclusion

Page 45: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 45

Conclusions

• Summary of Contributions:• Development of the ontologies for the

coral reef domain, based on three points of view of different communities: the geologists community, the biologists and the tourists• We choose a natural environment of coral

reefs because no other proposal makes use of semantic terms with this kind of geographic databases.

Page 46: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 46

Conclusions

• Summary of Contributions:• An ontology-based mechanism allows

different users’ communities, through geographic ontologies, to access the same database, without knowing its internal structure• With only one database implementation and

the definition of different communities’ ontologies, anyone can search the database, in a transparent way, using a specific interface.

Page 47: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

GeoInfo 2006 47

Conclusions

• Summary of Contributions:• A Framework for this mechanism

• The Semantic Layer can be adapted to any spatial domain of multidisciplinary interest.

• Future Work• Extend this Architecture

• Bind the classes automatically• Define ranking of similarities between the

classes.

Page 48: Querying a Geographic Database using an Ontology-Based Methodology Renata Viegas Valéria G. Soares valeria@di.ufpb.br renata@ppgsc.ufrn.br

Querying a Geographic Database using an Ontology-

Based Methodology

Renata ViegasValéria G. Soares

[email protected]@ppgsc.ufrn.br