COE: A collaborative ontology editor based on a peer-to-peer framework

https://doi.org/10.1016/j.aei.2005.05.006Get rights and content

Abstract

In this paper, we present COE, a peer-to-peer collaborative ontology editor, which supports the creation, editing, sharing, and reuse of ontologies, implemented on top of a general-purpose peer-to-peer framework, COPPEER. In large multi-disciplinary design projects, ontologies can be a critical success factor. Their collaborative creation leads to better understanding and increased information sharing between participants of a project, and economy of resources among projects. A peer-to-peer approach enables new modes of collaboration, while simplifying maintenance by propagating individual updates in shared models.

Introduction

In this paper, we present COE, the Collaborative Ontology Editor. COE is a visual editor for creating, browsing, and reasoning about ontologies. It is a peer-to-peer (P2P) application designed to allow ontology developers to share their knowledge through ontology sharing, searching, and reuse. Developed within an integrated environment and P2P framework, COPPEER, which supports other traditional collaborative P2P mechanisms, such as instant messaging and file sharing.

Ontologies, in Computer Science, are explicit formal descriptions of concepts and relationships among them, partially describing some area of interest. They work as a knowledge structuring mechanism that is useful for human or automatic manipulation [2].

Writing an ontology is a process that turns knowledge from tacit and internal into explicit and external [25]. If this process involves different people or organizations, it will possibly lead to rounds of negotiations, aiming to settle conceptual mismatches.

We believe that a collectively built ontology is more expressive than an imposed one. During the process of collaborative ontology construction, each person has the opportunity to provide information on the shared representation, and an agreement must eventually be reached. Even individuals forced to compromise will have had their say and discussed the concepts and relationships during the design process. This means that each person will have not only a better understanding of the model as a whole, but also a better understanding of how his or her peers think and see the world. This interaction is important to help establishing a rapport between group members and to create comprehension. Therefore, a tool to support the Collaborative development of ontologies is useful to achieve the goal of creating the ontology, and to help the individuals have a better performance in the project.

Given the wide variety of applications and projects using ontologies that exist nowadays, it is possible to find two or more different ontologies representing the same or similar knowledge [5]. These often cause conflicts that would lead to discussions during the development of a shared ontology. However, it is often the case, where whole portions of the shared representation are the responsibility of one person or enterprise, with previous experience on the subject. In this case, reusing the relevant part of an already defined ontology is the best solution. This will also make easier to keep the common ontology up-to-date. Considering that ontology creation can be a complex and time-consuming process, a tool for cooperative work that enables sharing and reuse of ontologies can be of great utility for various projects, especially when collaboration between the same peers happens regularly, saving and reusing cooperatively constructed ontologies.

Design problems are often complex and multi-disciplinary, requiring groups of people to solve. In a multi-disciplinary group, each person may have his or her own ‘personal ontology’, and building a shared ontology is critical for work to be effective. This is especially true when individuals come from different organizations: on a multi-enterprise scale, each organization may have its own representation and methods, and these would have to be integrated at some level to enable cooperation.

COE implementation builds on COPPEER, a framework for creating collaborative P2P applications. Within COPPEER, we build applications by defining sets of services and implementing them as software components controlled by a microkernel. In this fashion, a user can have different applications (file sharing, messaging, conferencing, e-commerce…) within the same supporting environment and user-interface, and new services can be easily added. Moreover, COPPEER supports on-the-fly installation and activation of new services, which simplifies customization at the application level. We describe the architecture of COPPEER further on in this article.

This article is divided into five sections, the first section being the current introduction. In Section 2, we review background ideas. In Section 3, we describe and comment some related work. In Section 4, we describe the COPPEER architecture. A description of COE and its use follows, in the fifth section. Finally, we present our conclusions.

Section snippets

Background

In this section, we introduce the main topics related to our work, namely: design problems, ontologies, and P2P collaboration.

Approaches to collaborative editing of ontologies

In a survey made in 2002, Denny [22] lists 52 software tools capable of editing ontologies, 25 of them counting with different kinds of support for multiple users. In this section we focus on four Client–Server approaches to ontology sharing: Ontolingua Server [5], [8], OntoEdit [9], WebOnto and Tadzebao [16] and APECKS [10] and a single P2P system, SWAP [11].

The Ontolingua Server, probably the most famous ontology application of all, provides a set of tools and services to help developing

The COPPEER framework

In this section, we describe the COPPEER 1.0 framework, describing its motivations, architecture, and status of development.

COPPEER 1.0 is as an extension of JXTA [7] concepts, implementing ‘community services’ and ‘community applications’. Most P2P mechanisms in COPPEER are provided by extending and encapsulating JXTA modules. JXTA is a rapidly evolving technology, however it lacks higher-level abstraction mechanisms related to P2P applications, and provides a programming paradigm that is very

COE: a COPPEER component to edit ontologies

Collaborative Ontology Editor (COE) is a COPPEER application for collaborative editing of ontologies that supports knowledge exchange between peers. Its main component is the ontology editor interface, which acts as a controller for other services connected to the COPPEER kernel.

Specific cooperation regarding ontologies in COE happens in two activities: ontology sharing and ontology reuse. However, since COE builds on COPPEER framework, its users can also take advantage of nonspecific

Discussion and future work

Client–server systems for collaborative ontology editing have developed a somewhat stable community around them. The Ontolingua server, for example, has 150 registered users. They prove that the Collaborative editing of ontologies is not only possible, but also useful.

P2P approaches to Collaborative development, although currently not common, are increasingly interesting to developers and users, since they allow for new forms of cooperation that do not fit naturally in the client–server model,

Acknowledgements

This work was partially supported by CAPES and CNPq. We would like to thank other members of the P2P group at COPPE that were not involved directly in this development.

References (23)

  • T. Gruber

    A translation approach to portable ontologies

    Knowledge Acquisition

    (1993)
  • Gruber TR. Toward principles for the design of ontologies used for knowledge sharing. Stanford University Technical...
  • Noy NF, McGuinness DL. Ontology development 101: a guide to creating your first ontology. Stanford University Technical...
  • W. Shen et al.

    Multi-agent design systems for concurrent intelligent design and manufacturing

    (2001)
  • F. Zlot et al.

    Modelling task knowledge to support software development

    (2002)
  • Bonifacio M, Cuel R, Mameli G, Nori M. A peer-to-peer architecture for distributed knowledge management. In:...
  • Project JXTA-http://www.jxta.org/ (January...
  • Farquhar A, Fikes R, Pratt W, Rice J. Collaborative ontology construction for information integration. Stanford...
  • OntoEdit. http://www.ontoknowledge.org/tools/ontoedit.shtml (January...
  • APECKS: a tool to support living ontologies. http://ksi.cpsc.ucalgary.ca/KAW/KAW98/tennison/ (January...
  • Ehrig M, Tempich C, Broesktra J, van Harmelen F, Sabou M, Siebes R, et al. SWAP: ontology-based knowledge management...
  • Cited by (0)

    View full text