27.06.2013 Views

Proceedings of the 12th European Conference on Knowledge ...

Proceedings of the 12th European Conference on Knowledge ...

Proceedings of the 12th European Conference on Knowledge ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

A Pattern-Based Ontology Engineering Platform<br />

Thomas Janke<br />

SAP Research, Dresden, Germany<br />

thomas.janke@sap.com<br />

Abstract: Building knowledge management systems based <strong>on</strong> semantic technologies can pr<str<strong>on</strong>g>of</str<strong>on</strong>g>it from <str<strong>on</strong>g>the</str<strong>on</strong>g> use <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

<strong>on</strong>tologies. The latter provide a shared vocabulary, which helps to shape comm<strong>on</strong> understanding, fosters reuse<br />

and data integrati<strong>on</strong> as well as facilitates reas<strong>on</strong>ing. The problem companies are facing, though, is that, despite<br />

all advantages, <strong>on</strong>tology engineering is very hard to master. First <str<strong>on</strong>g>of</str<strong>on</strong>g> all, domain engineers need to select <str<strong>on</strong>g>the</str<strong>on</strong>g><br />

most suitable <strong>on</strong>tology language from <str<strong>on</strong>g>the</str<strong>on</strong>g> pool <str<strong>on</strong>g>of</str<strong>on</strong>g> available languages ensuring that <str<strong>on</strong>g>the</str<strong>on</strong>g> chosen language reflects<br />

<str<strong>on</strong>g>the</str<strong>on</strong>g> requirements <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g> given domain by means <str<strong>on</strong>g>of</str<strong>on</strong>g> expressivity, reas<strong>on</strong>ing performance and tool support.<br />

Moreover, in order to model high-quality <strong>on</strong>tologies, a good knowledge about <str<strong>on</strong>g>the</str<strong>on</strong>g> various logical formalisms, <str<strong>on</strong>g>the</str<strong>on</strong>g><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g>fered <strong>on</strong>tology languages are based <strong>on</strong>, <str<strong>on</strong>g>the</str<strong>on</strong>g>ir characteristics and <str<strong>on</strong>g>the</str<strong>on</strong>g>ir differences is required. Published best<br />

practices for <strong>on</strong>tology engineering, so called Ontology Design Patterns (ODPs) (Gangemi and Presutti, 2009) can<br />

help here. They describe how to solve comm<strong>on</strong> modeling problems. The problem, though, is that in order to apply<br />

such a pattern, <strong>on</strong>tology engineers not <strong>on</strong>ly have to find a suitable pattern but also need to understand its<br />

semantics. The platform presented in this paper tackles those problems from two directi<strong>on</strong>s. First <str<strong>on</strong>g>of</str<strong>on</strong>g> all, domain<br />

engineers are enabled to model <str<strong>on</strong>g>the</str<strong>on</strong>g>ir domain utilizing domain-specific languages reflecting <str<strong>on</strong>g>the</str<strong>on</strong>g> specific<br />

requirements <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g> particular domain. As a result, <str<strong>on</strong>g>the</str<strong>on</strong>g> modeling task will be significantly simplified. Moreover,<br />

based <strong>on</strong> <str<strong>on</strong>g>the</str<strong>on</strong>g> introduced level <str<strong>on</strong>g>of</str<strong>on</strong>g> abstracti<strong>on</strong>, <str<strong>on</strong>g>the</str<strong>on</strong>g> platform will enable <str<strong>on</strong>g>the</str<strong>on</strong>g> generati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> c<strong>on</strong>crete <strong>on</strong>tologies in<br />

various target languages and in doing so, mitigates <str<strong>on</strong>g>the</str<strong>on</strong>g> problem <str<strong>on</strong>g>of</str<strong>on</strong>g> language selecti<strong>on</strong>. Fur<str<strong>on</strong>g>the</str<strong>on</strong>g>rmore, <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>on</strong>tology<br />

generati<strong>on</strong> comp<strong>on</strong>ent introduces room for <str<strong>on</strong>g>the</str<strong>on</strong>g> sec<strong>on</strong>d main principle which is <str<strong>on</strong>g>the</str<strong>on</strong>g> automatic and transparent<br />

applicati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> ODPs. This means that every transformati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> domain-specific models into <strong>on</strong>tologies is based <strong>on</strong><br />

executable <strong>on</strong>tology patterns which can be c<strong>on</strong>tributed and registered to <str<strong>on</strong>g>the</str<strong>on</strong>g> platform by <strong>on</strong>tology experts.<br />

Keywords: Ontology engineering, Model driven development, Ontology design patterns, Domain-specific<br />

languages<br />

1. Background<br />

<strong>Knowledge</strong> management can be facilitated by utilizing semantic technologies. The reas<strong>on</strong>s for that<br />

are manifold. First <str<strong>on</strong>g>of</str<strong>on</strong>g> all, <strong>on</strong>tologies provide a vocabulary <str<strong>on</strong>g>of</str<strong>on</strong>g> domain relevant terms which helps to<br />

build a comm<strong>on</strong> understanding. Moreover, <str<strong>on</strong>g>the</str<strong>on</strong>g>y can be designed in a modular way which fosters<br />

reuse, helps to build standard vocabularies for certain domains (e.g. Friend <str<strong>on</strong>g>of</str<strong>on</strong>g> a Friend, Dublin Core)<br />

and provides a basis for data integrati<strong>on</strong>. In additi<strong>on</strong>, <strong>on</strong>tologies allow for inferring implicit knowledge<br />

by means <str<strong>on</strong>g>of</str<strong>on</strong>g> reas<strong>on</strong>ing. As a result, relevant parts <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g> knowledge in a specific domain can be<br />

explicitly modelled in <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>on</strong>tology, in c<strong>on</strong>trast to implementing <str<strong>on</strong>g>the</str<strong>on</strong>g> required logic in <str<strong>on</strong>g>the</str<strong>on</strong>g> business logic<br />

layer <str<strong>on</strong>g>of</str<strong>on</strong>g> a target applicati<strong>on</strong>.<br />

The problem, however, is that <strong>on</strong>tology engineering is challenging, especially for n<strong>on</strong>-experts. This<br />

problem has many dimensi<strong>on</strong>s. First <str<strong>on</strong>g>of</str<strong>on</strong>g> all, <str<strong>on</strong>g>the</str<strong>on</strong>g>re is <str<strong>on</strong>g>the</str<strong>on</strong>g> aspect <str<strong>on</strong>g>of</str<strong>on</strong>g> language selecti<strong>on</strong>. In order to<br />

choose <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>on</strong>tology language best suited for a given domain, available languages such as RDF(S),<br />

OWL 2 with all its flavours and pr<str<strong>on</strong>g>of</str<strong>on</strong>g>iles, Topic Maps, F-Logic, etc., need to be compared with respect<br />

to <str<strong>on</strong>g>the</str<strong>on</strong>g>ir expressivity, <str<strong>on</strong>g>the</str<strong>on</strong>g>ir reas<strong>on</strong>ing performance, available frameworks, editing support and so <strong>on</strong>.<br />

Moreover, if <str<strong>on</strong>g>the</str<strong>on</strong>g> requirements for <str<strong>on</strong>g>the</str<strong>on</strong>g> domain model change, <str<strong>on</strong>g>the</str<strong>on</strong>g> process <str<strong>on</strong>g>of</str<strong>on</strong>g> evaluating all <str<strong>on</strong>g>the</str<strong>on</strong>g><br />

languages needs to be repeated. This is not <strong>on</strong>ly time c<strong>on</strong>suming but requires deep knowledge about<br />

all <str<strong>on</strong>g>the</str<strong>on</strong>g> languages. After selecting a language, <str<strong>on</strong>g>the</str<strong>on</strong>g> next problem emerges and this is <str<strong>on</strong>g>the</str<strong>on</strong>g> lack <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

modeling expertise. The various languages are based <strong>on</strong> different logical formalisms, starting from<br />

descripti<strong>on</strong> logics and semantic networks to rule based languages. Each formalism has its specific<br />

characteristics, for example <str<strong>on</strong>g>the</str<strong>on</strong>g> existence <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g> unique name assumpti<strong>on</strong> or <str<strong>on</strong>g>the</str<strong>on</strong>g> open world<br />

assumpti<strong>on</strong>. Knowing about those differences and <str<strong>on</strong>g>the</str<strong>on</strong>g>ir impact is a key requirement to model good<br />

<strong>on</strong>tologies. It additi<strong>on</strong> to that, it is favourable to follow published and widely accepted modeling best<br />

practices, in order to guarantee high modeling quality. Referring to <str<strong>on</strong>g>the</str<strong>on</strong>g> related work in this area, those<br />

best practices are called <strong>on</strong>tology design patterns. They describe how to solve comm<strong>on</strong> modeling<br />

problems and cover experiences gained by <strong>on</strong>tology engineering experts. The problem, though, is<br />

that in order to apply those pattern, domain engineers have to be aware <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g>ir existence, <str<strong>on</strong>g>the</str<strong>on</strong>g>y need<br />

to find a matching pattern for <str<strong>on</strong>g>the</str<strong>on</strong>g>ir problem, need to understand <str<strong>on</strong>g>the</str<strong>on</strong>g> provided soluti<strong>on</strong> and finally have<br />

to adopt <str<strong>on</strong>g>the</str<strong>on</strong>g> soluti<strong>on</strong> to <str<strong>on</strong>g>the</str<strong>on</strong>g>ir own domain models. As a n<strong>on</strong>-<strong>on</strong>tology export, each <str<strong>on</strong>g>of</str<strong>on</strong>g> those steps<br />

represents a tough challenge. At <str<strong>on</strong>g>the</str<strong>on</strong>g> moment, <str<strong>on</strong>g>the</str<strong>on</strong>g> gap between domain engineers, knowing about <str<strong>on</strong>g>the</str<strong>on</strong>g><br />

particular domain, and <strong>on</strong>tology engineers, knowing how to transfer <str<strong>on</strong>g>the</str<strong>on</strong>g> modeling requirements into<br />

c<strong>on</strong>crete <strong>on</strong>tologies, can <strong>on</strong>ly be filled by an intense collaborati<strong>on</strong> between both roles. This introduces<br />

461

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!