<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards understanding the needs of cognitive support for ontology mapping</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sean M. Falconer</string-name>
          <email>seanf@uvic.ca</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Natalya F. Noy</string-name>
          <email>noy@stanford.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Margaret-Anne Storey</string-name>
          <email>mstorey@uvic.ca</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Stanford University</institution>
          ,
          <addr-line>Stanford, CA 94305</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Victoria</institution>
          ,
          <addr-line>Victoria BC V8W 2Y2</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Researchers have developed a large number of ontology-mapping algorithms in recent years. However, ontology mapping is hardly a fully automated task and users must verify and fine-tune the mappings resulting from automated algorithms. Both academic and industry researchers have focused on the algorithms themselves and largely ignored the issue of cognitive support for users in the task of analyzing mappings proposed by the algorithms and creating new mappings. The lack of comprehensive user-oriented tools for ontology mapping (rather than just algorithms) hinders the adoption of the new technologie. In this paper, we analyze requirements for cognitive support for the ontology-mapping task. Recognizing that many researchers must focus on improving the algorithm performance itself (or only on providing better visualization), we have developed a plugin framework that enables developers to assemble a comprehensive ontology-mapping tool by plugging in various components. We provide a reference implementation of the complete framework. Thus, developers can plug in only the components they are interested in. For example, algorithm developers can plug in their algorithm and use the visualization components that we provide and the user-interface researchers can use the framework to experiment with various visualization paradigms for ontology mapping (and not worry about implementing the algorithms themselves). We also discuss specific cognitive aids for ontology mapping that we have developed and that are available as part of this framework.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        As ontologies become more commonplace and their number grows, so does their
diversity and heterogeneity. Reconciling different ontologies and finding correspondences
between their concepts is likely to be a problem for the foreseeable future. Thus,
research on ontology mapping has become a prominent topic in the Semantic Web and
ontology communities. There are mapping contests that compare the effectiveness of
different algorithms [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and researchers have proposed a standard mapping language
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. As the results of the contests show, ontology mapping is far from being a fully
automated task. We believe that in most cases manual intervention will be required to
verify or fine-tune the mappings produced by the algorithms.
      </p>
      <p>
        In general, a user interacting with an ontology-mapping tool, must examine the
candidate mappings produced by the tool, indicate which ones are correct and which
ones are not, and create additional mappings that the tool has missed. This process is
a difficult cognitive task. It requires understanding of both ontologies being mapped
and how they relate to each other. Also, both the ontologies themselves and the number
of candidate mappings that the tools produce can be very large. However, there has
been very little research on how to provide cognitive support for ontology mappings.
Researchers have focused on improving the performance of the algorithms themselves,
largely ignoring the issue of end-user tools (with a few exceptions [
        <xref ref-type="bibr" rid="ref12 ref18 ref24">12, 18, 24</xref>
        ]).
      </p>
      <p>
        Perhaps, one of the reasons this issue has not been addressed is the lack of
understanding of the importance of cognitive support [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. Cognitive support measures how
well a tool supports a user’s cognitive processes, and it results from the interplay
between the system image and the user’s needs [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. As Walenstein states, “The first rule of
tool design is to make it useful; making it usable is necessarily second, even though it is
a close second . . . [A tool’s] usefulness is ultimately dependent upon [its] utility relating
to cognition: i.e. to thinking, reasoning, and creating. Assistance to such cognitive work
can be called cognitive support.” [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]
      </p>
      <p>Cognitive-support research is still new to software and knowledge engineering. In
software engineering, generally, most tools are built with some consideration of utility
and usability. Only recently, researchers started using a more formal approach to address
these issues. The situation is similar in the field of knowledge-engineering tools. In this
paper, we bring cognitive-support considerations to the ontology-mapping tools, and
outline a set of requirements for these tools.</p>
      <p>
        We believe that in order for the ontology-mapping tools to reach beyond research
labs, both the performance of automatic ontology-mapping algorithms and the
quality of cognitive support in ontology-mapping tools must improve. Recognizing that in
many cases, researchers must focus on one or the other of these tasks, we have
developed a plugin framework that covers many of the sub-tasks of ontology mapping, from
specifying algorithms for initial comparison to executing the mappings. This
framework is part of the PROMPT ontology-management suite [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], itself a Prot e´ge´ plugin.3
We have developed a reference implementation for each of the steps, including a
number of cognitive aids. Developers can plug in their own components and use plugins
developed by others (including our team) in order to fill in the missing pieces to have a
comprehensive end-user tool.
      </p>
      <p>This paper makes the following contributions:
– We analyzed requirements for cognitive support in ontology mapping (Section 2).
– We developed the PROMPT plugin architecture for ontology-management that
enables developers to assemble a comprehensive ontology-mapping tool with their
own components as part of the tool (Section 4).
– We implemented a set visualization plugins to the PROMPT plugin architecture that
provides cognitive support for users in the ontology-mapping task (Section 5.2)
2</p>
    </sec>
    <sec id="sec-2">
      <title>Requirements for Cognitive Support in Ontology Alignment</title>
      <p>The set of end-user tasks in an ontology-mapping tool that we identified and the
corresponding requirements are based on the common problems we have experienced and
3 http://protege.stanford.edu
witnessed. We assume that the user’s tasks involve verifying and fine-tuning the
mappings produced by the automatic component and creating the mappings that the
automatic algorithm missed. The following is a preliminary list of tasks that must be
supported during the mapping process. Some of the requirements below address visual aids
that make the user’s job easier, and others are tasks that help reduce the user’s cognitive
load.</p>
      <p>Navigation of ontologies being mapped: provide full access to the source and target
ontologies.</p>
      <p>Incremental navigation: enable browsing of the ontologies being mapped with the
terms in the current mapping as focal points. Incremental navigation restricts the
focus to the terms and allows the user to visually verify that the two terms suggested
in the mapping have similar context and similar neighbors.</p>
      <sec id="sec-2-1">
        <title>Identification of “candidate-heavy” ontology regions: identify visually which sec</title>
        <p>tions of the ontologies have large numbers of candidate mappings. Users may often
want to focus on the sections where many of the mappings are, since these are likely
to be the sections of the two ontologies where most of the mapping takes place.
Browsable list of candidate mappings: provide easy navigation and filtering of the
candidate mappings produced by the automatic step. There must be a way for the
user to instruct the tool to focus on certain regions of the ontologies or categorize
the candidate mappings they are verifying. Such support allows the user to focus
on smaller tasks and reduce complexity by validating higher priority matches first.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Information about the reasons a mapping was suggested: provide the user with some</title>
        <p>indication of why the automatic algorithm suggested a particular mapping. This
reason helps establish trust between the user and the algorithm. For example, state
that the two ontology terms matched exactly, or were synonyms of each other.
Context for mapping terms: display where the terms being mapped are in the
ontology. Easy access to this information is essential in enabling the user to verify
candidate mappings. In particular, the neighborhood of a term (immediate parent
and children in the is_a hierarchy) may be especially important.</p>
        <p>Definitions for mapping terms: provide easy access to full definitions of the terms in
the ontology. For example, the definition might include the properties of a class and
restrictions on those properties. Like the neighborhood, the internal structure helps
explain the meaning of the term.</p>
      </sec>
      <sec id="sec-2-3">
        <title>Conflict resolution and inconsistency detection: indicate to the user if some of the</title>
        <p>mappings that he has created produce conflicts or are inconsistent. Conflicts can
arise from a variety of situations, such as when two concepts are mapped, but some
structural elements that are critical for their definition have not been mapped yet.
Ability to save the verification state: The verification process must support potential
interruptions where the user must be able to save their current progress and restart
from that point at a later time.</p>
      </sec>
      <sec id="sec-2-4">
        <title>Verification of mappings through execution: enable users to “execute” the mappings,</title>
        <p>for example, by transforming instances from the source to the target ontology based
on specified mapping or using queries that access those individuals but this time
direct them to the newly mapped term One can view such a transformation as a
debugging step in creating a complete mapping: the user can verify if the instances
created in the target from the source instances are the ones that he expected.</p>
      </sec>
      <sec id="sec-2-5">
        <title>Direct creation and manipulation of the mappings: enable users to add details to the</title>
        <p>verified mappings. For example, a user may specify that a value of one property
must be changed in a specific way in order for the mapping to be correct. Also,
users may want to add metadata to mappings and describe their reasons for
creating the mapping. The users will also often add mappings that the tool has missed.</p>
      </sec>
      <sec id="sec-2-6">
        <title>Navigation of verified and manually specified mappings: One result of the user in</title>
        <p>teraction with a mapping tool is a set of verified mappings, additional mappings,
and details about the mappings. Users must be able to navigate this information.
Progress feedback: inform the user about their current progress in the mapping. How
much they have verified and how much is left to verify. Verifying mappings can be
a lengthy process, but providing feedback about the users’ progress enables them
to see that they are moving in the correct direction.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Related Work</title>
      <p>
        Cognitive support is about introducing artifacts in order to improve cognitive systems
[
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. As Norman states [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], “The power of the unaided mind is highly overrated.
Without external aids, memory, thought, and reasoning are all constrained.” Although
cognitive support can be addressed in a variety of ways, one popular approach is through
information visualization. Information visualization leverages innate human abilities
to perform spatial reasoning and make sense of relatively complex data using some
form of graphical representation language [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Information visualization is often used
to construct an advanced user interface to aid humans understand and navigate complex
information spaces. In software engineering, this approach has been applied specifically
to applications such as source code evolution [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] and algorithm animation [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Knowledge-engineering tools often use visualization to help users navigate
ontologies. Usually, the problem these visualization tools are addressing is the comprehension
and navigation of large information spaces. Different types of graph layouts are often
used in order to display the ontology from different perspectives (e.g., see [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]). One
of the goals of providing these various layouts is to help users view the same
knowledge in different formats and potentially to validate and invalidate their mental models.
As Richer and Clancy state, “. . . providing multiple views of the same knowledge or
behavior can help a user understand a complex system.” [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]
      </p>
      <p>Navigation is also a relevant issue in ontology mapping, as users need to understand
the structural context related to the match operations they must verify. However, in
ontology mapping the focal point of the navigation is the terms involved in the mapping,
not necessarily the entire information space.
3.1</p>
      <sec id="sec-3-1">
        <title>Ontology-Mapping Tools and Their User Interfaces</title>
        <p>
          Most user interfaces for mapping tools fall into one of three categories: graphical user
interface, console-based, and finally web-based. Both the console-based and web-based
tools follow similar approaches; the user supplies URIs for two ontologies, submits
the input, and the tool processes the ontologies producing a list of potential matches.
FOAM [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], MoA Shell [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ], Chimaera [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ], and the OWL Ontology Aligner [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ] all
fall into one of these two categories. Some of these tools, such as FOAM, also support
interactive modes where a user can verify matches as they are computed.
        </p>
        <p>
          Clio [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] and COMA++ [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] are examples of tools that support graphical user
interfaces. The number of visual paradigms that the tools use to display the mappings is
quite limited, however. Clio was developed by IBM for generating mappings between
relational and XML schemas. Clio can infer correspondences in the source and target
schemas and it also allows users to draw correspondences between parts of the schemas.
Once the correspondences have been generated and verified, Clio generates queries to
drive the translation from the source schema to the target schema. COMA++ works
similarly, although it also supports ontology mapping. COMA++ automatically generates
mappings between the source and target schemas, and draws lines between matching
terms. Users can also define their own term matches (see Fig. 1). Both tools draw
mappings between the source and target schemas, which can be difficult to work with when
there are a lot of mappings or the distances between mapped terms is large.
        </p>
        <p>
          These tools provide a mechanism to allow the user to supply an initial set of matches.
This mechanism may be adapted to store a partially verified mapping and to restart
verification at that particular stage. Also, tools like Clio and COMA++ support in-tool
navigation of ontologies. There’s also recently been an effort by a small number of
researchers towards investigating applying visualization techniques to ontology
alignment. AlViz [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], a plugin for Prote´ge´, applies multiple-views via a cluster graph
visualization along with synchronized navigation within standard tree controls. Generally,
there is a dearth of visual paradigms for ontology mapping. Until we have such end-user
tools with good cognitive support, many of the mapping algorithms that researchers
develop, are unlikely to leave the labs. Hence, we have developed a plugin framework
that treats an ontology-mapping process as a standard sequence of steps (from initial
comparison of ontologies to executing mappings) and enables developers to substitute
any of the steps with their own tools.
Several researchers have addressed the issue of deomposing an ontology-mapping
process into a sequence of subtasks–a step necessary for introducing a plugin framework
for ontology mapping [
          <xref ref-type="bibr" rid="ref14 ref6">6, 14</xref>
          ]. These subtasks include pre-processing of the source
ontology, configuration of the mapping algorithm, analysis of the results, and iterative
invocation of the mapping algorithm. In a sense, implementing a plugin framework for
ontology mapping starts with identification of this set of tasks. However, in order to
enable developers to substitute implementation of any of the tasks with their own, we
also must define interfaces, and must provide extension points in the tools.
        </p>
        <p>
          The work that is closest to our plugin framework for mapping is the IBM XML
Mapping technology [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. In this work, the authors developed a plugin framework for
mapping data sources such as relational database schemas, UML models, and XML
files to XML Schema. Their architecture distinguishes four core components, each of
which has extension points for plugins: (1) user interface, with plugins for viewing
different types of models; (2) mapping population, allowing developers to plugin different
mapping algorithms; (3) mapping representation, enabling different forms of
representing the mappings; and (4) code generation, providing runtime engines for executing the
mappings. We take a similar approach in our work. However, we focus more on
cognitive support for mapping, with user interface being a very prominent component. In
addition, our work is applied to ontologies and not only to XML schemas.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>PROMPT Plugin Architecture</title>
      <p>
        PROMPT is a Prote´ge´ plugin that supports various tasks for managing multiple
ontologies, including ontology mapping [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. In its original form, PROMPT starts the
ontology-mapping process by performing initial comparison of the source and target
ontologies to be mapped, mainly based on lexical comparison of class names. After the
initial comparison, PROMPT presents the user with a set of candidate mappings. A user
can examine the mappings, create new mappings, and save the correct ones. As the user
identifies a mapping as correct, PROMPT performs structural analysis of the
neighborhood of the mapped concepts, suggesting new mappings based on the graph structure.
PROMPT saves the mappings as instances in the mapping ontology [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. After the user
defines the mappings, he can run a mapping interpreter [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] to transform instances from
the source to the target ontology based on the mapping.
      </p>
      <p>When verifying candidate mappings, users can access the source and target
ontologies in the Prote´ge´ interface; when a user selects a mapping to examine, the
corresponding concepts are highlighted in the ontologies trees. A user can also navigate to
the tab that displays the mapping ontology and its instances and edit the mappings there
directly (see Fig. 2).</p>
      <p>The PROMPT plugin framework allows developers to replace any of the components
that we have just described with their own. The plugin framework works by providing
Java interfaces for various types of plugins (comparison algorithm, visualization
components, etc). A plugin developer chooses the interface they wish to implement, and then
supplies the appropriate method bodies in order to perform the operations they wish to
execute. More specifically, we view the ontology-mapping process as a sequence of the
following steps (Fig. 3):</p>
      <sec id="sec-4-1">
        <title>Perform initial comparison of the ontologies: an algorithm compares two ontologies</title>
        <p>and produces a list of candidate mappings.</p>
        <p>Present candidate mappings to the user enabling him to analyze the results. This step
includes components for cognitive support (various visualizations of the source and
target ontologies, options to filter content presented in the display, etc.) and
interactive comparison algorithms that are invoked either explicitly by the user or as a
result of mappings being verified.</p>
        <p>Fine tune and save the mappings in a declarative mapping format.</p>
        <p>Execute mappings to transform instances from source to target or to perform other
operations.</p>
        <p>In the current implementation, developers can replace components of any of the
steps in this list, and our plan is to make all of the steps replaceable.</p>
        <p>Figure 4 shows the PROMPT screen for configuring an algorithm for initial
comparison. The user has chosen to run a FOAM algorithm at this stage. The integration of
FOAM and PROMPT is available as part of PROMPT distribution 4. A developer of an
algorithm plugin can specify not only how to invoke the algorithm, but also how the
configuration screen presented to the user should look like.</p>
        <p>User-interface extension points exist throughout the P ROMPT mapping interface.
We currently support extensions that allow a developer to add new tabs to the source,
4 At this time, the only algorithms integrated are FOAM and the original PROMPT algorithms.
Fig. 3: Configurable steps in the PROMPT framework. Developers can replace any component
in the figure with their own implementation. Cognitive aids can be applied at each step to ease
cognitive load.
mapping, and target panels in the mapping component (see Fig. 2). Also, new header
buttons can be added to the mapping suggestion list. For example, developers could use
actions on these buttons to filter information (Section 5.2).
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Cognitive Support in PROMPT</title>
      <p>We examine issues of cognitive support of the core PROMPT plugin (before the
addition of the interface plugins discussed in Section 5) as an example of questions that
arise when developing support for such a cognitively complex task as ontology
mapping. PROMPT already addresses many of the cogntive support requirements that we
discussed in section 2. However, PROMPT may not address all of these requirements
so that users can make use of the features effectively. Meeting the requirements is not
enough, we must also understand the usability of the implemented features.
5.1</p>
      <sec id="sec-5-1">
        <title>Potential Problems in a Mapping User Interface</title>
        <p>Although we have not yet carried out formal user studies to understand PROMPT’s
usability, we have identified some questions that such usability testing will reveal. For
example, when a user selects a candidate mapping, PROMPT highlights the terms
involved in the mappings in the source and target display. Thus, the user can see the
context of the terms in the mapping. But this feature could potentially introduce new
cognitive issues. For example, the selection of the terms in the ontologies is
immediate, the ontology trees are expanded directly to the term that needs to be displayed,
no animation of this process exists. Does jumping immediately to the term destroy the
user’s global context about where they are in the two ontologies? Does it interrupt the
user’s work flow? What if the user had used the ontology tree to browse to a particular
location, but selecting a suggestion removed the user’s selected focal point?</p>
        <p>Another related issue is incremental navigation in PROMPT. Currently, the user can
browse the source and target ontologies via a tree control in the mapping component.
However, selecting a suggestion immediately switches the tree’s focus. Also, this type
of view can be difficult to use when viewing items deep in the hierarchy.</p>
        <p>
          PROMPT loads all its generated mapping operations into a browsable suggestion
list. With large ontologies, this list could be very large. There is currently no support
for sorting, categorizing, or filtering the list. Abrams and colleagues [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] found that web
browser users will not put more than 35 items in their favorite’s list before resorting
to categorizing links within hierarchies or stopping their use of favorites all together.
Similar issues may need to be addressed in PROMPT. For example, what will users do
when presented with a list of a thousand or even a hundred suggestions?
        </p>
        <p>The final issue with PROMPT we wish to discuss is browsing the resulting mappings.
Unlike Clio and COMA++, which draw lines between matching terms, PROMPT takes
a different approach. Firstly, after the user confirms a mapping suggestion, the
corresponding terms in both the source and target ontologies get a “mapped” icon associated
with them indicating that the terms have already been mapped. Secondly, the occurance
of the mapping event is recorded in a mapping ontology that is browsable by the user.
Although the icon indicator certainly is less cluttered than the line drawing in Clio and
COMA++, there is no explicit way for the user to visualize what the corresponding
matched term is.
5.2</p>
      </sec>
      <sec id="sec-5-2">
        <title>COGZ Interface Plugin for PROMPT</title>
        <p>In order to address some of the missing requirements in PROMPT, we have developed
COGZ—a user-interface plugin for the mapping component. C OGZ attempts to provide
user support for reducing the size and complexity of a mapping and to improve user
interaction with establishing the term context and improving incremental navigation.</p>
        <p>We addressed the complexity and size requirement by adding filters to the list of
candidate mappings. There are several types of filters. First, users can filter candidate
mappings based on the explanation provided by the algorithm that generated the
candidate (see area (5) in Fig. 2). For example, the user can filter the list to inspect only exact
term matches first, and then address more complex matches, like synonym or
sharedhierarchy matches. There is also a filter that allows users to restrict mappings to classes
from certain subtrees in the ontologies. Users can specify multiple subtrees in both the
source and the target ontologies. This filter provides a powerful means for the user to
address areas of the ontology they are most familiar with.</p>
        <p>
          Finally, to address the context and navigation requirements, we added a
Neighborhood tab to both the source and target ontology components. The neighborhood tab is
synchronized with the browsing of candidate mappings: selecting a mapping displays
the corresponding term’s neighborhood. The neighborhood consists of the immediate
parents and children of the term. The viewer supports incremental navigation by
allowing the user to expand incrementally the neighborhood of any visible node. Also, the
plugin provides six different layouts to allow the user to view the graph from a multitude
of perspectives (see Fig. 5). The visualizations are provided by Jambalaya [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ].
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Discussion and Future Work</title>
      <p>We have discussed the need for cognitive support in ontology mapping tools. We
proposed several requirements for satisfying this need, which were based on our own
background work and experience. While these requirements are preliminary, we believe
they represent a good initial description of the problems faced by users performing
mappings. We believe it is very important to refine these requirements by carrying out
studies and surveys in the knowledge engineering community. Specifically, we plan to
evaluate the effectiveness of PROMPT through user studies and tool usage statistics. We
also plan to enhance the visualization plugin in order to further address the requirements
that PROMPT does not fullfill.</p>
      <p>We also discussed the implementation of a plugin framework for PROMPT. The
framework helps address two fundamental issues. Firstly, how can we satisfy the
cognitive support requirements in one consistent environment, and secondly, how can we
close the gap between mapping algorithm research and mapping users. By supporting
user interface extension points in PROMPT, experts and developers in Human Computer
Interaction can incorporate their ideas and tools to help decrease the cognitive load on
end users of mapping tools. Similarly, the algorithm extension points also help the
algorithm researcher. By using these extensions, researchers (or software developers) can
easily incorporate their algorithms into PROMPT, allowing the research to be available
under one consistent user interface. End users will benefit from having access to the
best known algorithms, as well as the best cognitive support tools available.</p>
      <p>
        In addition to developing better cognitive support for mappings, other research
challenges remain. Our decomposition of the mapping process (Fig. 3) may not be general
enough. It does not account fully for comparison algorithms that require an initial set
of mapped terms as input. One can invoke such an algorithm at the iterative step, but
more direct support for specifying the inputs precisely will likely be required. Similarly,
PROMPT assumes a declarative representation of mappings (mainly as instances in an
ontology). We would like to extend it to allow the use of an alignment API (e.g. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ])
and in-memory access to mappings. We envision that as developers begin to use the
plugin framework, we will need to introduce other extension points of this type.
      </p>
      <p>We plan to further enhance the plugin framework by adding more extension points
for algorithms and interface components. PROMPT, FOAM and COGZ plugins are
available as part of the full installation of Prote´ge´ 3.2beta.5 Instructions for plugin developers
and additional information are available on the PROMPT wiki site.6</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgements</title>
      <p>This work was supported in part by the National Center for Biomedical Ontology, under
roadmap-initiative grant U54 HG004028 from the National Institutes of Health.
5 http://protege.stanford.edu/download/download.html
6 http://protege.cim3.net/cgi-bin/wiki.pl?Prompt</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>D.</given-names>
            <surname>Abrams</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Baecker</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. H.</given-names>
            <surname>Chignell</surname>
          </string-name>
          .
          <article-title>Information archiving with bookmarks: Personal web space construction and organization</article-title>
          .
          <source>In Human Factors in Computing Systems (CHI 98)</source>
          , pages
          <fpage>41</fpage>
          -
          <lpage>48</lpage>
          . ACM Press,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>M. D. Byrne</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Catrambone</surname>
            , and
            <given-names>J. T.</given-names>
          </string-name>
          <string-name>
            <surname>Stasko</surname>
          </string-name>
          .
          <article-title>Evaluating animations as student aids in learning computer algorithms</article-title>
          .
          <source>Computers &amp; Education</source>
          ,
          <volume>33</volume>
          (
          <issue>4</issue>
          ):
          <fpage>253</fpage>
          -
          <lpage>278</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>M.</given-names>
            <surname>Crube</surname>
          </string-name>
          <article-title>´zy and M. A. Musen. Ontologies in support of problem solving</article-title>
          . In S. Staab and R. Studer, editors,
          <source>Handbook on Ontologies</source>
          , pages
          <fpage>321</fpage>
          -
          <lpage>342</lpage>
          . Sringer,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. M. Crube´zy,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Pincus</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Musen</surname>
          </string-name>
          .
          <article-title>Mediating knowledge between application components</article-title>
          .
          <source>In Workshop on Semantic Integration at ISWC-2003</source>
          , Sanibel Island, FL,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. H.
          <string-name>
            <surname>-H. Do</surname>
          </string-name>
          .
          <article-title>Schema Matching and Mapping-based Data Integration</article-title>
          .
          <source>PhD thesis</source>
          , Department of Computer Science, Universitt Leipzig,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>M.</given-names>
            <surname>Ehrig</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Sure</surname>
          </string-name>
          .
          <article-title>Ontology mapping - an integrated approach</article-title>
          .
          <source>In 1st European Semantic Web Symposium</source>
          , Heraklion, Greece,
          <year>2004</year>
          . Springer, LNCS.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>M.</given-names>
            <surname>Ehrig</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Sure</surname>
          </string-name>
          .
          <article-title>FOAM-framework for ontology alignment and mapping; results of the ontology alignment initiative</article-title>
          .
          <source>In Proceedings of the Workshop on Integrating Ontologies</source>
          , volume
          <volume>156</volume>
          , pages
          <fpage>72</fpage>
          -
          <lpage>76</lpage>
          ,
          <year>October 2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>N.</given-names>
            <surname>Ernst</surname>
          </string-name>
          .
          <article-title>Towards cognitive support in knowledge engineering: An adoption-centred customization framework for visual interfaces</article-title>
          .
          <source>Master's thesis</source>
          , University of Victoria,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>N. A.</given-names>
            <surname>Ernst</surname>
          </string-name>
          , M.
          <article-title>-</article-title>
          <string-name>
            <surname>A. Storey</surname>
            , and
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Allen</surname>
          </string-name>
          .
          <article-title>Cognitive support for ontology modeling</article-title>
          .
          <source>International Journal of Human-Computer Studies</source>
          ,
          <volume>62</volume>
          (
          <issue>5</issue>
          ):
          <fpage>553</fpage>
          -
          <lpage>577</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>J.</given-names>
            <surname>Euzenat</surname>
          </string-name>
          .
          <article-title>Eon ontology alignment contest</article-title>
          . http://oaei.inrialpes.fr/2004/Contest/.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>J.</given-names>
            <surname>Euzenat</surname>
          </string-name>
          .
          <article-title>An api for ontology alignment</article-title>
          .
          <source>Technical report</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>M. A. Hernandez</surname>
            ,
            <given-names>R. J.</given-names>
          </string-name>
          <string-name>
            <surname>Miller</surname>
            ,
            <given-names>L. M.</given-names>
          </string-name>
          <string-name>
            <surname>Haas</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Yan</surname>
            ,
            <given-names>C. T. H.</given-names>
          </string-name>
          <string-name>
            <surname>Ho</surname>
            , and
            <given-names>X.</given-names>
          </string-name>
          <string-name>
            <surname>Tian</surname>
          </string-name>
          .
          <article-title>Clio: A semi-automatic tool for schema mapping</article-title>
          .
          <source>In SIGMOD Record</source>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>E. . T. R.</given-names>
            <surname>Institute</surname>
          </string-name>
          . Moa shell. http://mknows.etri.re.kr/moa/docs/moashell.html,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Kalfoglou</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Schorlemmer</surname>
          </string-name>
          .
          <article-title>IF-Map: an ontology mapping method based on information flow theory</article-title>
          .
          <source>Journal on Data Semantics</source>
          ,
          <volume>1</volume>
          (
          <issue>1</issue>
          ):
          <fpage>98</fpage>
          -
          <lpage>127</lpage>
          , Oct.
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>M.</given-names>
            <surname>Lanzenberger</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Sampson</surname>
          </string-name>
          .
          <article-title>Alviz - a tool for visual ontology alignment</article-title>
          .
          <source>In IV '06: Proceedings of the conference on Information Visualization</source>
          , pages
          <fpage>430</fpage>
          -
          <lpage>440</lpage>
          , Washington, DC, USA,
          <year>2006</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>D. L. McGuinness</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Fikes</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Rice</surname>
            , and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Wilder</surname>
          </string-name>
          .
          <article-title>The chimaera ontology environment</article-title>
          .
          <source>In Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on Innovative Applications of Artificial Intelligence</source>
          , pages
          <fpage>1123</fpage>
          -
          <lpage>1124</lpage>
          . AAAI Press / The MIT Press,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Norman</surname>
          </string-name>
          .
          <article-title>Things That Make Us Smart: Defending Human Attributes in the Age of the Machine</article-title>
          .
          <source>Addison-Wesley</source>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>N. F.</given-names>
            <surname>Noy</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Musen</surname>
          </string-name>
          .
          <article-title>The PROMPT suite: Interactive tools for ontology merging and mapping</article-title>
          .
          <source>International Journal of Human-Computer Studies</source>
          ,
          <volume>59</volume>
          (
          <issue>6</issue>
          ):
          <fpage>983</fpage>
          -
          <lpage>1024</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>M.</given-names>
            <surname>Richer</surname>
          </string-name>
          and
          <string-name>
            <given-names>W. J.</given-names>
            <surname>Clancy</surname>
          </string-name>
          .
          <article-title>Guidon-watch: A graphic interface for viewing a knowledgebased system</article-title>
          .
          <source>IEEE Computer Graphics and Applications</source>
          ,
          <volume>5</volume>
          (
          <issue>11</issue>
          ):
          <fpage>51</fpage>
          -
          <lpage>64</lpage>
          ,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>M. Roth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Hernandez</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Coulthard</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Yan</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Popa</surname>
            , and
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Salter</surname>
          </string-name>
          .
          <article-title>Xml mapping technology: Making connections in an xml-centric world</article-title>
          .
          <source>IBM Systems Journal</source>
          ,
          <volume>45</volume>
          (
          <issue>2</issue>
          ):
          <fpage>389</fpage>
          -
          <lpage>409</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21. M.
          <article-title>-</article-title>
          <string-name>
            <surname>A. Storey</surname>
            ,
            <given-names>N. F.</given-names>
          </string-name>
          <string-name>
            <surname>Noy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Musen</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Best</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Fergerson</surname>
            , and
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Ernst</surname>
          </string-name>
          .
          <article-title>Jambalaya: an interactive environment for exploring ontologies</article-title>
          .
          <source>In IUI '02: Proceedings of the 7th international conference on Intelligent user interfaces</source>
          , pages
          <fpage>239</fpage>
          -
          <lpage>239</lpage>
          , New York, NY, USA,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22. L.
          <string-name>
            <surname>Voinea</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Telea</surname>
            , and
            <given-names>J. J. van Wijk.</given-names>
          </string-name>
          <article-title>Cvsscan: visualization of code evolution</article-title>
          .
          <source>In SoftVis '05: Proceedings of the 2005 ACM symposium on Software visualization</source>
          , pages
          <fpage>47</fpage>
          -
          <lpage>56</lpage>
          , New York, NY, USA,
          <year>2005</year>
          . ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>A.</given-names>
            <surname>Walenstein</surname>
          </string-name>
          .
          <article-title>Cognitive support in software engineering tools: A distributed cognition framework</article-title>
          .
          <source>PhD thesis</source>
          , Simon Fraser University, Vancouver, BC,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <given-names>D.</given-names>
            <surname>Wenke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Atanassov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Manov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maier</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Sperling</surname>
          </string-name>
          .
          <source>D4</source>
          .
          <article-title>5.1 report on ontology mediation as service component</article-title>
          .
          <source>Technical report, EU-IST SEKT Deliverable</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Zhdanova</surname>
          </string-name>
          .
          <article-title>Owl ontology aligner</article-title>
          . http://align.deri.org:8080/deri/align.jsp.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>