02.04.2013 Views

CONTENTS

CONTENTS

CONTENTS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

ONTOLOGY DEVELOPMENT: A SOFTWARE ENGINEERING APPROACH 213<br />

Meeting all of the above requirements qualifies ontology as a content theory and<br />

its specification calls for elaborate formal languages, namely ontology representation<br />

languages.<br />

Because there’s no ”best way” to develop an ontology there may be several ontology<br />

(is there a plural ontologies?) about the same domain. Combining them is an<br />

active research field.<br />

The high-level list of key application areas for ontology includes: collaboration,<br />

interoperation, education, and modeling.<br />

3. Developing Ontology using a Software Engineering Approach<br />

Ontology development is a hard work even with the most advanced ontology<br />

development languages, environment and methodology. Here are a few questions<br />

requiring answers on which there’s a large consensus among the domain experts:<br />

• How do we analyze, design, develop, test, maintain and support ontology to<br />

meet knowledge engineer requirements?<br />

• What ontology development methodology is the most suitable to task?<br />

• How do we combine different ontologies describing the same domain?<br />

• Since all parts of the semantic web evolve in time (ontology, ontological knowledge<br />

stored in web resources), how do we resolve the problem of knowledge<br />

maintenance?<br />

The answer is all but easy. One of the goals is to ”partially automate the processes<br />

of ontology development and maintenance by developing tools and frameworks to help<br />

extract, annotate, and integrate new information with the old one in the ontology”<br />

[6]. The paper defends the idea that we can start searching for answers by analogy,<br />

looking at the best practices in software engineering. There are several reasons for<br />

such an approach:<br />

• an ontology represents a model of a domain like software applications which<br />

represent models of the world<br />

• ontology development life cycle and object oriented analysis and design share<br />

many characteristics; both start from specific requirements, are completed<br />

through an iterative and incremental process<br />

• ontology development like software development uses a ranges of methodologies<br />

which specify how to perform a sequence of activities, supported by tools<br />

and techniques, to deliver a specific product<br />

• ontologies include classes and subclasses hierarchies similar to object oriented<br />

software engineering and similarly uses UML (Unified Modeling Language)<br />

for knowledge representation<br />

References<br />

[1] Boley, H., Tabet, S., and Wagner, G., Design rationale of RuleML: a markup language for<br />

Semantic Web rules, in: Proc. SWWS’Ol, The first Semantic Web Working Symposium, Cruz,<br />

I.E., Decker, S., Euzenat, J., McGuinness, D.L., eds., Stanford University, California, pp.<br />

381-401 (2001);

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

Saved successfully!

Ooh no, something went wrong!