=Paper= {{Paper |id=Vol-273/paper-13 |storemode=property |title=Collaborative Protege |pdfUrl=https://ceur-ws.org/Vol-273/paper_93.pdf |volume=Vol-273 |dblpUrl=https://dblp.org/rec/conf/www/TudoracheN07 }} ==Collaborative Protege== https://ceur-ws.org/Vol-273/paper_93.pdf
                                            Collaborative Protégé

                          Tania Tudorache                                         Natasha Noy
                     Stanford Medical Informatics                           Stanford Medical Informatics
                          251 Campus Drive                                       251 Campus Drive
                      Stanford, CA 94305, USA                                Stanford, CA 94305, USA
                    tudorache@stanford.edu                                     noy@stanford.edu


ABSTRACT                                                            While the first two items can be generally solved by soft-
We present an extension of the existing Protégé1 system        ware re-engineering, managing the content of an ontology
that supports collaborative ontology editing. The extended       in a multiple user setting poses many conceptual challenges.
system—Collaborative Protégé—is currently available as a       When multiple users control and develop the content of an
prototype. In addition to the common ontology editing op-        ontology, we need not only to resolve the technical issues
erations, it enables annotation of both ontology components      of simultaneous access to the ontology for different clients,
and ontology changes. It supports the searching and filter-      but also to address challenges specific to the collaboration
ing of user annotations based on different criteria. We have     aspect of the task: discussions, annotations, conflict resolu-
implemented two types of voting mechanisms that can be           tion, and so on. We envision that ontology developers will
used for voting of change proposals.                             use annotation to add comments to ontology components, to
                                                                 ask questions about them, to discuss modeling decisions and
                                                                 so on. This model raises the question on how the user an-
Categories and Subject Descriptors                               notations should be represented, stored and processed. The
H.5.3 [Group and Organization Interfaces]: Collabo-              support for filtering and searching in the body of annota-
rative computing, Computer-supported cooperative work,           tions are also essential features. A natural extension is to
Web-based interaction; H.3.5 [On-line Information Ser-           support the extraction of ontology views based on the user
vices]: Web-based services, Data sharing                         annotations. For example, a user may want to see a view
                                                                 of an ontology as agreed by most of the other users. This
                                                                 means that the tool should provide support for capturing
General Terms                                                    user agreement or disagreement as well as ratings of other
Design, Management, Measurement, Algorithms                      users annotations.
                                                                    These are some of the research challenges that have to
                                                                 be tackled by a collaborative ontology development. In the
Keywords                                                         following sections, we will present a prototype that we have
Ontology development, Collaboration, Annotation, Change          developed, which supports some of the common tasks in-
management, Protégé                                            volved in collaborative ontology development.


1.     INTRODUCTION                                              2. COLLABORATIVE PROTÉGÉ SYSTEM
  Existing ontology development environments have focused           The Protégé system [1] is an open-source ontology edi-
so far on the editing of ontologies in a stand-alone, single-    tor and knowledge-base framework developed by Stanford
user mode. The emerging of the Semantic Web and of the           Medical Informatics. It uses a frame-based representation
Web 2.0 technologies bring a new challenge to the ontology       formalism [3]. The Protégé editor also supports the editing
editor providers, the collaborative editing of ontologies in     of RDF(S)2 and OWL3 ontologies.
a web-based environment. The evolution of the ontology              We developed the Collaborative Protégé prototype as an
editors has to happen on several axes:                           extension of the existing multi-user Protégé system. The
                                                                 multi-user system is a client-server version of Protégé, which
      • From single-user applications to multi-user environ-     allows multiple clients to connect to a Protégé server and to
        ments                                                    browse and edit simultaneously the same ontology. All the
                                                                 changes done by one client are seen immediately by all the
      • From thick client to thin clients (web-based)            other clients.
                                                                    One of the main features of a collaborative development
      • From single-user control of ontology content to multi-   tool is to allow the users to comment and discuss about the
        ple user content control                                 content and changes of the ontology that they develop in
                                                                 common. We realize this feature by supporting the associa-
1
    http://protege.stanford.edu                                  tion of annotations to any component of the ontology or to
Copyright is held by the author/owner(s).                        2
WWW2007, May 8–12, 2007, Banff, Canada.                              http://www.w3.org/TR/2000/CR-rdf-schema-20000327/
                                                                 3
.                                                                    http://www.w3.org/2004/OWL/
                                                                   component is provided by the underlying Protégé system.
                                                                   The Annotation Component allows the user to annotate on-
                                                                   tology components, such as classes, properties and individ-
                                                                   uals, as well as ontology changes, such as class creation or
                                                                   deletion, with annotation types defined in the Annotation
                                                                   ontology.
                                                                      The Annotation ontology is a RDF(S) ontology that pro-
                                                                   vides the structure for the annotation types supported by
                                                                   the tool. The annotation types are extensions of the An-
                                                                   notea [2] annotations and contain concepts such as Com-
                                                                   ment, Advice, Example, etc. User annotations are stored
                                                                   as instances of the predefined annotation classes and can be
                                                                   used for annotating both ontology components as well as
                                                                   ontology changes.
Figure 1: Core components of the Collaborative                        The Change tracking component is responsible for inter-
Protégé architecture that support the annotation of              cepting the user actions in the GUI and creating change
ontology components and of changes in the ontology.                annotations attached to the changed ontology components.
                                                                   Change annotation types are defined in the Annotation on-
                                                                   tology.
any change that occurs in the ontology. The tool also pro-            The system supports also discussion threads by allowing
vides support for different visualizations of the annotations,     the users to reply to the comments of other users. This is
which can be customized by the user by specifying different        realized by a flexible representation of annotations, which
filtering criteria. A user may search through the available        can themselves be annotated. The system supports also
annotations by specifying simple or complex search criteria.       the rating and voting of proposals, which are represented as
   The main purpose of this prototype is to gather users           annotation types in the Annotation ontology.
requirements for a collaborative ontology development envi-           Other components of the system are the searching and
ronment. Currently, the prototype is available as a stand-         the filtering components, which are crucial in dealing with
alone application and as an applet. However, after gathering       large bodies of annotations. The filtering component will be
the users requirements and feedback, we envision that the          used in future versions of the system to create user-defined
functionalities offered by the current prototype will be im-       views of an ontology based on user preferences.
plemented in a web-based application.
                                                                   2.3 Software Architecture
2.1 System Functionality                                             The system is implemented as a plug-in of the existing
  The system is an extension of the existing Protégé tool and    Protégé system. The prototype enables several Protégé clients
takes advantage of the existing Protégé functionality, such      to connect through Remote Method Invocation (RMI) to a
as ontology editing and structured instance acquisition.           server that stores a repository of ontologies.
  The main functionality provided by the Collaborative Protégé     The current prototype can be used both as a stand-alone
prototype are:                                                     application for the cases in which several users edit the same
                                                                   ontology at different timepoints, or in a multi-user setting,
   • Annotation of ontology elements, such as classes, prop-       in which multiple clients may edit the same ontology in a
     erties, individuals                                           concurrent fashion. In the multi-user setting, the clients
   • Annotation of ontology changes, such as class creation,       may connect either by using Protégé rich client or by using
     deletion, renaming, etc.                                      the Protégé applet client.

   • Support for change proposals and voting of proposals          2.4 The Graphical User Interface
                                                                     The graphical user interface of the Collaborative Protégé
   • Support for filtering of existing annotations                 builds on top of the available plug-ins of the Protégé user
                                                                   interface and provides additional graphical components for
   • Support for searching of annotations based on simple
                                                                   editing and browsing the annotations. Figure 2 shows a
     or complex criteria
                                                                   screenshot of the Collaborative Protégé in which the classes
   • Support for discussion threads                                view has been enhanced with an annotations panel in which
                                                                   the user can edit and browse the annotations.
   Another important feature that is currently only exper-           The annotations panel provides different views of the an-
imental is the support of ratings for existing user annota-        notations:
tions. This feature enables the implementation of different
web-of-trust algorithms.                                              • Changes annotations view

2.2 System Design                                                     • Ontology Components annotations view
   Figure 1 shows a diagram of the core components of the
system that support the collaborative development of on-              • All annotations view (both Changes and Ontology Com-
tologies and specifically the ontology and changes annota-              ponents annotations)
tion process. The user interacts with the Ontology Editor
Component and the Annotation Component. The editing                   • Discussions thread view
Figure 2: The Collaborative Protégé GUI. Classes view together with the annotations panel (on the right-
hand side of the display).


   The annotations tree that is shown in any of the views      support for different types of collaborative editing settings.
of the annotations panel can be filtered based on user pref-   For example, a possible collaborative editing scenario is in
erences. For example, the user may choose to see only the      a community in which users do not have direct write per-
annotations provided by a certain person, or the annotations   mission on an ontology and a central authority reviews and
of a certain type (for instance, only Example annotations),    accepts change proposals requested by the users. For this
or annotations that have been added in a certain period of     case, the system should provide support for the proposal
time. The user can also build complex filters that combine     and voting process.
the criteria mentioned before.                                    We also intend to provide statistics of the annotations (for
   A user may start a proposal for a change in the ontology    example, what ontology components have the most annota-
and may start also a voting process for it. Two types of       tions associated to them) as well as a pluggable mechanism
voting annotation types can be chosen: a “5-star” voting       for supporting different web-of-trust algorithms.
as shown in Figure 2, or a “Agree/Disagree” type of voting.
Currently the prototype does not support a workflow for the    4. REFERENCES
voting mechanism, but it is one feature that we intend to
                                                               [1] J. H. Gennari, M. A. Musen, R. W. Fergerson, W. E.
support in the near future.
                                                                   Grosso, M. Crubézy, H. Eriksson, N. F. Noy, and S. W.
                                                                   Tu. The evolution of Protégé: An environment for
3.   CONCLUSIONS AND FUTURE WORK                                   knowledge-based systems development. Technical
  We have presented a prototype for collaborative ontology         Report SMI-2002-0943, Stanford Medical Institute,
development that can be used for editing and browsing the          2002.
user annotations on ontology components and on ontology        [2] J. Kahan and M.-R. Koivunen. Annotea: an open RDF
changes. The prototype supports the searching and filtering        infrastructure for shared web annotations. In
of user annotations based on different criteria. Two types         Proceedings of the 10th International World Wide Web
of voting mechanisms have been implemented that can be             Conference, pages 623–632, 2001.
used in voting for change proposals.                           [3] N. F. Noy, R. W. Fergerson, and M. A. Musen. The
  The main purpose of the current prototype is to gather the       knowledge model of Protégé-2000: Combining
user requirements for a collaborative ontology development         interoperability and flexibility. In R. Dieng and
environment. We envision that the existing functionalities         O. Corby, editors, Knowledge Acquisition, Modeling and
and as well as new ones that result from the user feedback         Management, 12th International Conference, EKAW
will be integrated in a web-based application with full on-        2000, Juan-les-Pins, France, October 2-6, 2000,
tology editing capabilities.                                       Proceedings, volume 1937 of Lecture Notes in Computer
  The existing Annotation ontology may be extended based           Science, pages 17–32. Springer-Verlag, 2000.
on the user feedback. We also envision to provide workflow