mod onto colibri

26
Camila Bezerra, Fred Freitas, Informatics Center, Federal University of Pernambuco,Brasil {fred, cbs}@cin.ufpe.br Jérôme Euzenat INRIA, Rhône-Alpes, Montbonnot, France [email protected] Antoine Zimmermann Digital Enterprise Research Institute, National University of Ireland [email protected] Under the sponsoring of CNPQ and INRIA (research project OntoCompo - Composition and Modules for Ontology Engineering)

Upload: camila-bezerra

Post on 15-Jun-2015

340 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mod onto colibri

Camila Bezerra, Fred Freitas, Informatics Center, Federal University of

Pernambuco,Brasil {fred, cbs}@cin.ufpe.br

Jérôme Euzenat

INRIA, Rhône-Alpes, Montbonnot, France [email protected]

Antoine Zimmermann Digital Enterprise Research Institute, National University

of Ireland [email protected]

Under the sponsoring of CNPQ and INRIA (research project OntoCompo - Composition and

Modules for Ontology Engineering)

Page 2: Mod onto colibri

The success of the Semantic Web depends of a number of factors, one of them is the reuse of ontologies.

Ontology development is deemed to be a time-consuming and labour-intensive task.

Modularization could help the ontologies developers to identify and select only those concepts and relations relevant for the given application.

Page 3: Mod onto colibri

Currently, there are two major ways of reusing an ontology:

1. Ontology editors such as Protégé allow the reuse of another ontology by including it in the model that is being designed

2. OWL offers the possibility to import an OWL ontology by means of the <owl:imports> statement.

In both cases, the whole ontology has to be included!

Page 4: Mod onto colibri

Easy development and reuse with smaller building blocks ◦ More intuitive visualization

Scalability: many ontology tools are known to perform well on small-scale ontologies ◦ In special efficient reasoning

Encapsulation: is highly desirable the separation of concerns and a defined interface

Page 5: Mod onto colibri

The few software tools capable of composing ontologies don’t do the job in a clean way ◦ Ontologies are usually shown all together

◦ Users can hardly distinguish included ontologies

Particularly if there is plenty of them :)

◦ Most of the modularization proposals are more ontology linking approaches rather than modular

C-OWL [Bouquet et al. 2004], Bridge rules, E-

Connections [Kutz et al 2004]

They don’t enforce ways of limiting the modules!

Page 6: Mod onto colibri

Modules should be specified, in such a way that avoids dependence from a particular ontology or module

Exported modules can be replaced by others with similar contents

Our approach departs from the principle that a module language must be able to : ◦ encapsulate ontology fragments,

◦ to refer to other modules and

◦ to define interfaces among these modules.

Page 7: Mod onto colibri

Encapsulation: the perimeter of each module must be precisely defined as well as its aggregated modules, so that potential users can outline in advance which other modules he is including in her new module.

Information hiding: module interfaces specify imported and exported entities only ◦ Not all the definitions have to be im/exported ◦ Module “implementation” can evolve without

affecting the importing module specification ◦ Modules are replaceable by others offering the

same interface.

Page 8: Mod onto colibri

1. a RDF syntax, compatible with OWL

2. A more concise human readable syntax for displaying in documents

Page 9: Mod onto colibri
Page 10: Mod onto colibri

RDF syntax

Page 11: Mod onto colibri

A new type of pizza, the NorthEasternBrazilianPizza ◦ It has a Topping only SaltedMeat

◦ Its country of origin is Brazil

It’s necessary to import entities from two ontologies: 1. Ontology of Pizzas

2. Ontology of Countries

Page 12: Mod onto colibri

Module NEBrazilian

uses: pizza, countries

imported-entities:

pizza:Pizza, pizza:MeatTopping,

pizza:hasTopping, pizza:hasCountryOfOrigin,

countries:Country, countries:Brazil

contents:

Topping(SaltedMeat)

NEBrazilianPizza hasTopping.SaltedMeat NEBrazilianPizza hasCountryOfOrigin(Brazil)

exported-entities: NortheasternBrazilianPizza, pizza:Pizza

Page 13: Mod onto colibri

<rdf:RDF xmlns="http://www.inrialpes.fr/exmo/modules#"

xml:base="http://www.inrialpes.fr/exmo/modules/menu.rdf"

xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"

xmlns:owl2xml="http://www.w3.org/2006/12/owl2-xml#"

xmlns:mod="http://www.inrialpes.fr/exmo/modules#"

xmlns:owl="http://www.w3.org/2002/07/owl#"

xmlns:xsd="http://www.w3.org/2001/XMLSchema#"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:owl2="http://www.w3.org/2006/12/owl2#">

<Module>

<description rdf:about=“New kind of Pizza"/>

<uses>

<owl2xml:Ontology rdf:about="http://www.bpiresearch.com/BPMO

/2004/03/03/cdl/Countries">

<location href="file:/C:/Users/camila/Desktop/TestOnto/

Countries.owl"/>

</owl2xml:Ontology>

<owl2xml:Ontology rdf:about="http://www.co-ode.org/ontologies/

pizza/2005/10/18/pizza.owl">

<location href="file:/C:/Users/camila/Desktop/TestOnto/

pizza.owl"/>

</owl2xml:Ontology>

</uses>

Page 14: Mod onto colibri

<imports>

<ImportInterface>

<hasElement>

<owl2xml:OWLClass rdf:about="http://www.co-ode.org/

ontologies/pizza/2005/10/18/pizza#MeatTopping"/>

</hasElement>

<hasElement>

<owl2xml:OWLClass rdf:about="http://www.co-ode.org/

ontologies/pizza/2005/10/18/pizza#Pizza"/>

</hasElement>

<hasElement>

<owl2xml:Individual rdf:about="http://www.bpiresearch.

com/BPMO/2004/03/03/cdl/Countries#Mexico"/>

</hasElement>

...

</ImportInterface>

</imports>

Page 15: Mod onto colibri

<Content>

<owl:Class rdf:about="#NortheasternBrazilianPizza">

<rdfs:subClassOf>

<owl:Restriction>

<owl:allValuesFrom>

<owl:Class rdf:ID="SaltedMeat"/>

</owl:allValuesFrom>

<owl:onProperty>

<owl:ObjectProperty rdf:about="#hasTopping"/>

</owl:onProperty>

</owl:Restriction>

</rdfs:subClassOf>

<rdfs:subClassOf>

<owl:Restriction>

<owl:onProperty rdf:resource="#hasCountryOfOrigin"/>

<owl:hasValue rdf:resource="countries#Brazil" />

</owl:Restriction>

</rdfs:subClassOf>

</owl:Class>

</Content>

Page 16: Mod onto colibri

<exports>

<ExportedInterface>

<hasElement>

<owl2xml:OWLClass rdf:about="NEBrazilian#

NorthEasternBrazilianPizza"/>

</hasElement>

<hasElement>

<owl2xml:OWLClass rdf:about=“NEBrazilian#Pizza

Pizza"/>

</hasElement>

</ExportedInterface>

</exports>

Page 17: Mod onto colibri
Page 18: Mod onto colibri

Module API - Based on the implementation of the module specifications as described in the syntax, it provides the basic data structure and renderers as well as a parsers on top of the structure.

Page 19: Mod onto colibri

Module extractor - creates modules from existing ontologies ◦ ‘select’ (or ‘extract’) operation over an ontology in a

number ways, such as selecting/ruling out entities (classes, properties, individuals) to be exported

◦ using a graphical interface and selecting/ruling out entities using expressions (e.g. sub- , superclasses, complements, and others)

◦ special buttons and parameters that represent them and generating a module description.

Page 20: Mod onto colibri

Module (Syntactical) Checker - verifies if all of the definitions needed by a module are on its imported modules.

Reasoner interface for modules – adapted OWL reasoners to answer queries over modules and modular ontologies ◦ Consistency checking

Page 21: Mod onto colibri

Module linker – a graphical tool to build modules from other modules o The user is able to select only the elements from the

``exported interface'' from the imported module.

Module library – a repository for “off-the-shelf” modules that will help developers to choose modules ◦ A module description in this library should include its

imported modules ◦ The user can load the selected module in the library or

load it in the Linker to be reused in the new one.

Page 22: Mod onto colibri
Page 23: Mod onto colibri

Along the OntoCompo project, we have designed an ontology modularization approach inspired in object orientation ◦ Main focus: encapsulation

We developed a module language with syntax and (notions of) semantics …

… with a concrete implementation of the language

The ModOnto tool assists users in the construction of new modules starting from ontologies or other modules

Page 24: Mod onto colibri

Linkage with partitioning works [Stuckenschmidt & Klein 2003]

‣ The suite could be integrated with popular ontology frameworks like Protégé, KAON2 and the ones from NeOn project.

Improving the graphical interface for usability reasons.

Ontology engineeering issues ◦ How do we design an ontology focusing on modularity? ◦ Good features and practices for Modules

Page 25: Mod onto colibri
Page 26: Mod onto colibri

Bouquet, P., Giunchiglia, F., van Harmelen, F., Serafini, L., Stuckenschmidt, H.: C-OWL: Contextualizing ontologies. In: International Semantic Web Conference. (2003), 164-179.

Kutz, O., Lutz, C., Wolter, F., Zakharyaschev, M. E-connections of abstract descriptions systems; in Artificial Intelligence, vol.156, pages 1-73, 2004.

Pizza Ontology, http://www.co-ode.org/ontologies/pizza/2007/02/12/

P.Doran. Ontology Reuse via Ontology Modularisation. In Proceedings of KnowledgeWeb PhD, Symposium 2006 (KWEPSY2006). Budva, Montenegro. 17th June 2006.

Blomqvist, E.: State of the Art: Patterns in Ontology Engineering. Technical Report 04:8, Jönköping University, November 2004.

WonderWeb, http://wonderWeb.semanticWeb.org/.

Zimmermann, A., Euzenat., J.Three semantics for distributed systems and their relations with alignment composition. In Cruz, I., et al, eds, 5th Int.Semantic Web Conference, ISWC 2006,Athens, GA, USA, November 5-9, 2006, Proceedings, volume 4273 of Lecture Notes in Computer Science, pages 16–29. Springer-Verlag GmbH, November 2006.

Euzenat., J., Zimmermann, A., Freitas, F. Alignment-based modules for encapsulating ontologies, Proceedings of the Workshop on Modularization of Ontologies, Knowledge Capture Conference, Banff, Canada, 2007.

Alex Borgida and Luciano Serafini. Distributed Description Logics: Directed domain correspondences in federated information sources. In On the Move to Meaningful Internet Systems 2002: CoopIS, DOA, and ODBASE : Confederated International Conferences CoopIS, DOA, and ODBASE 2002, volume 2519 of LNCS. Springer, 2002.

NeOn: Lifecycle Support for Networked Ontologies, Integrated Project, IST-2005-027595,http://www.neon-project.org/Web-content/.

Kaon2, http://kaon2.semanticWeb.org/.

Protégé, http://protege.stanford.edu/.

H. Stuckenschmidt and M. Klein, Structure based partitioning of large concept hierarchies, In Proc. 3rd Int. Semantic Web Conference, Hiroshima, Japan, (2004).