=Paper= {{Paper |id=Vol-2181/paper-08 |storemode=property |title=Towards a Comprehensive Modular Ontology IDE and Tool Suite |pdfUrl=https://ceur-ws.org/Vol-2181/paper-08.pdf |volume=Vol-2181 |authors=Cogan Shimizu |dblpUrl=https://dblp.org/rec/conf/semweb/Shimizu18 }} ==Towards a Comprehensive Modular Ontology IDE and Tool Suite== https://ceur-ws.org/Vol-2181/paper-08.pdf
    Towards a Comprehensive Modular Ontology
               IDE and Tool Suite

                                 Cogan Shimizu

      Data Semantics Laboratory, Wright State University, Dayton, OH, USA



      Abstract. Published ontologies frequently fall short of their promises
      to enable knowledge sharing and reuse. This may be due to too strong
      or too weak ontological commitments; one way to prevent this is to en-
      gineer the ontology to be modular, thus allowing users to more easily
      adapt ontologies to their own individual use-cases. In order to enable
      this engineering paradigm, there is a distinct need for developing more
      supporting tools and infrastructure. This increased support can be im-
      mediately impactful in a number of ways: guides engineers through best
      practices and promote ontology design pattern discovery, sharing, and
      reuse. To meet these needs, this PhD project explores the development
      of a comprehensive modular ontology IDE and tool suite.


1   Problem Statement
One of the central tenets of the Semantic Web is to enable the sharing and
reuse of knowledge. Unfortunately, published ontologies infrequently live up to
these promises, as they are not developed with best practices in mind, such as
modularization, documentation, and annotation.
    Ontologies with too strong or too weak ontological commitments are un-
desirable. Strong ontological commitments lead to overspecialization; this may
constrain ontologies to be useful only for the single usecases for which the on-
tologies were developed. Conversely, weak commitments lead to overly ambigious
models, thus making it difficult to understand how to use the ontology, at all.
In order to combat this, during development an ontology should be sufficiently
modularized. Such ontologies [6] are designed so that engineers may adapt them
to individual use-cases, yet still maintain compatibility and integration with
other versions of the ontology [7].
    Furthermore, it is necessary to properly document and annotate the devel-
oped ontology. In order to exhibit and promote the use of the ontology among
a domain, other engineers must understand how to use or adapt the ontology,
as well as understand the nature of certain ontological commitments or other
design decisions [5]. In addition, annotations made with a pattern representation
language allow engineers to understand how an existing ontology made use of
or relates to another ontology [4]. Finally, both documentation and annotation
allow content providers or data publishers utilize these models.
    However, developing an ontology, while following these best practices, is a
very difficult and time-consuming process, especially without proper tooling and
supporting infrastructure. As such, this PhD project explores the development of
a comprehensive, modular ontology integrated development environment (IDE)
in order to address the needs for ontology design pattern (ODP) discovery and
modularization and engineering ontologies with best practices.

2   Relevancy
As described in the previous section, designing modular ontologies is an answer
to some of the problems facing the Semantic Web community, namely those
regarding the sharing and reuse of knowledge [3]. Thus, it seems particularly
prudent to incentivize the adoption of this engineering paradigm.
    Recently, there have been many attempts to do so, ranging from new visu-
alizations, improved methodologies, and more accessible modeling tools. Unfor-
tunately, these attempts are largely uncoordinated; each individual attempt is
focused on improving a single aspect of the process. For example, they all do
not share the same unifying platform nor necessarily work well together (and
sometimes even at cross purposes). Further, some improvements may be strictly
theoretical or methodological with no usable implementation.
    In summary, there is currently no comprehensive nor integrated approach
for developing modular ontologies according to best practices. However, there
is now a critical mass of individual, tools with specialized functionalities. We
believe the best approach for moving forward is to increase the support (e.g.
tooling and infrastructure) available to ontology engineers by fusing together
existing support. Thus, developing a comprehensive, modular ontology IDE will
help increase the adoption of the modular ontology engineering paradigm and is
thus very relevant to the Semantic Web community.

3   Research Questions
There are a number of open research questions regarding the future of modular
ontology development, especially regarding tooling and infrastructure, as out-
lined by the Semantic Web community in [3]. We discuss the most relevant of
them: “Which kind of tools are needed and best suited for ODP development
and use?”
    As a first approximation, Hammar et al. describe the need for a “pattern-
capable ontology IDE.” That is, an ontology IDE that is capable of using ontol-
ogy design patterns as primitives, as well as having some mechanism for pattern
discovery. A modular ontology IDE takes this concept a step further and would
allow users to import and modularize ODPs to also be used as primitives. Thus,
we seek to answer the following questions.
RQ1. What foundational support is needed to realize such an IDE?
RQ2. How can new and existing tools be combined to form a cohesive and useful
     whole, while still leaving room for extensibility?
Our attempts to answer RQ1 are described in Section 6. For RQ2, we describe
some existing tools and methods in Section 5.
4     Hypotheses
In line with the previous section, we also want to show that a comprehensive,
modular ontology IDE is, in fact, effective. Thus, we will attempt to confirm the
following hypotheses.

    A comprehensive, modular ontology IDE will allow an ontology engineer to
    develop ontologies

    1. more quickly than when not using such an IDE.
    2. that adhere to best practices for modularity, documentation, and anno-
       tation.


   How we will acheive this and how we determine success are discussed in
Sections 6 and 7, respectively.


5     Related Work
Overall, there are many existing tools and methods for helping develop ontolo-
gies. As this PhD project is specifically concerned with modular ontology en-
gineering, we most carefully consider those related tools and methods. In this
section, we provide broad descriptions of related work that this PhD project will
expand, adapt, or otherwise utilize. We may partition the related works into
three categories, based on how they intersect with the ontology engineering pro-
cess: Methodology, Visualization and Rendering, and Tools and Infrastructure.

Methodology
By methodology, we refer to those related works that deal with guidelines and
principles for engineering ontologies. Of particular interest is the eXtreme Design
(XD) Methodology and methods for documenting ontology design patterns.
    The eXtreme Design (XD) Methodology is a “family of methods and associ-
ated tools... for for solving ontology development issues” [1]. The XD Method-
ology is in many ways the core methodology for modular ontology design and
development. It outlines how to identify the need for patterns, how to utilize
content information, and guidelines for different modelling approaches. We do
not intend to replace XD, but instead use its principles. For example, we ma use
its different design approaches to inform different content pattern suggestions
during development.
    Karima et al. give a thorough walkthrough on how to document ontology
design patterns [5]. It provides key components of patterns that should be doc-
umented as well as criteria for measuring how well an ontology is documented.
Thus, we may leverage these guidlines in order to provide tooling that prompts
users to “document as they go,” ultimately reducing documentation overhead.
Visualization & Rendering

This category refers to those tools and methods that facilitate alternative views
of an ontology. For example, functional syntax for OWL or Turtle or Manchester
Syntax are alternate renderings of the same information. As the semantic web
community more deeply and consistently interacts with domain experts, it is
very important to find vehicles for representing an ontology that is easy for
people to intuit. Below, we describe two recent tools for doing this. As part of
the evaluation of this PhD project, we will also evaluate the efficacy of presenting
ontological information in this manner.

OWL2Rules is an augmentation1 to the OWLAPI’s LATEX rendering framework.
This tool is capable of representing the axioms of an ontology as First Order
Predicate Logic Existential Disjunctive Rules. It also incorporates the improved
LATEX formatting from [10].

SDont is a tool2 for creating the schema diagrams for ontologies. While there
are other visualization tools (e.g. OWLgred and VOWL), SDont has been en-
gineered to generate schema diagrams that are maximally similar to human
curated schema diagrams. We intend to incorporate this tool in order to provide
a more comfortable vehicle for representing the structure of a TBox.


Tools & Infrastructure

Tools and Infrastructure refers to the tools and methods that assist in the ontol-
ogy engineering process. On their own, each of these tools is enormously helpful.
However, a platform utilizing them will be greater than the sum of its compo-
nents.

OPLa is an Ontology Design Pattern Representation Language [4]. This will en-
able ontology engineers to leverage OWL annotations to describe the ontological
entities within a patern. That is, the annotations can be used to show from where
properties are inherited, show which patterns were used to create modules, or
show which concepts in the pattern can be used as hooks for external patterns.
There is an existing plugin3 that guides users through annotating an ontology
design pattern.

ROWL & OWLAx are Protégé plugins [8, 9]. RowlTab is used for creating owl
axioms (or the appropriate SWRL rule) from first order predicate logic rules.
OWLAx is a graphical tool that generates the owl axiom (or appropriate SWRL
rule) from schema diagram like representations. As well as generating the scoped
domain and range axioms, and disjointness axioms.
1
  https://github.com/cogan-shimizu-wsu/Logician
2
  https://github.com/cogan-shimizu-wsu/SDont
3
  https://github.com/cogan-shimizu-wsu/OPLaPlugin
XD for Protégé is a first approximation of a pattern-capable ontology IDE im-
plemented in WebProtégé [2]. Among other XD motivated functionalities, the
following are of particular note: composite search engine, ODP specialization
stragety importing, and ODP specialization alignment suggestions. This tool is
the main source of inspiration for this PhD project and will act as a foundation
upon which to build a CoModIDE.


6   Approach

In aggregate, our approach is to tie together multiple existing tools (e.g. XD
for WebProtégé and OWLAx), develop or enhance new tools (e.g. SDont) and
combine them into a comprehensive, modular ontology IDE (CoModIDE– pro-
nounced ‘commodity’). In addition, CoModIDE would be tightly integrated with
a central, “smart” repository that will facilitate ODP discovery and importing.
To address our research questions, we have split the approach into two distinct
phases: foundational work and IDE development.


Phase I: Foundational Work

This phase largely addresses RQ1: “What foundational support is needed to
realize CoModIDE?” Phase I will have the following trajectory.

Step 1: Functionality Solicitation.
        We must first determine exactly which functionalities are most useful
        and helpful to the Semantic Web community. For this step, we will solicit
        suggestions from the community. In addition, we will use the suggestions
        from [3].
Step 2: Discovery of Existing Tools.
        For those functionalities that have been determined to be integral to the
        community, we will need to discover any tools that already implement
        that functionality. If we cannot find an existing tool that covers that
        functionality, then a new tool or method will need to be developed to
        cover that gap.
Step 3: Individual Tool Evaluation.
        Now, for each of the discovered or developed tools, there must be an
        individual evaluation in order to determine efficacy and correctness of
        the tool.
Step 4: Extend and Enhance the Repository.
        Currently, www.ontologydesignpatterns.org is the central repository
        for ODP sharing and reuse. With the recent development of OPLa [4],
        we may further enhance the functionality of the site. In addition, we
        will need to ensure that there is a so-called critical mass of usable, well-
        documented, and thoroughly annotated ODPs available for the commu-
        nity to use.
Phase II: IDE Development
After we have identified, developed, evaluated individual useful tools, what re-
mains is to integrate them into a comprehensive, modular ontology IDE; we call
it CoModIDE. Overall, we foresee the trajectory to be as follows.
Step 1: Choose a Platform.
        We will need to choose a platform upon which to build the IDE. At
        the time of this writing, we believe that Desktop Protégé is the best
        choice. It offers built-in plugin support and very tight integration with
        the OWLAPI.
Step 2: Integrate Tools.
        Once a platform has been chosen, we may need to re-implement the
        functionality of existing tools for that platform. For example, XD for
        WebProtégé is only implemented for WebProtégé and itself has several
        pieces of our desired functionality.
Step 3: Evaluate CoModIDE.
        After all the tools have been integrated so that they work together, we
        must evaluate whether or not the CoModIDE is achieving the desired
        purpose, i.e. does it help users design better ontologies more quickly?
        We describe this step in more detail in the next section.
Additionally, we must consider overall design.
 – UX and Workflow: There are some functionalities that can only be con-
   sidered once the IDE has been developed, such as determining the best way
   to guide users to document and annotate the ontology as its being designed.
   Additionally, we would like to implement a graphical plug’n’play interface.
   That is, using ODPs as primitives (similar to puzzle-pieces), connect the
   ODPs to form a first-pass ontology.
 – Extensibility: The “modular” in CoModIDE need not only apply to the
   ontology design. In fact, it would behoove us to ensure that the IDE itself
   is modular, in order to continue adding functionality as modular ontology
   design evolves in the future.
 – Repo interfacing: It is completely necessary that the IDE support inter-
   facing with a central repository and a pattern representation language. At
   this time, we expect that to be ontologydesignpatterns.org and OPLa, re-
   spectively.


7   Evaluation Plan
We have posited that a comprehensive, modular ontology IDE will allow en-
gineers to more quickly design ontologies, while following best practices. To
determine if we have successfully done so, we will conduct evaluations in two
parts.
   First, each individual functionality of the IDE must be tested. For some of
these tools (e.g. ROWL [8], OWLax [9], XD for WebProtégé[2]), these tools
have already been evaluated; their evaluations are available in the respective
references. However, for those tools we have not yet written, or need to discover,
their evaluations will necessarily be tailored to the functionality and cannot be
described here.
     After all the tools and desired functionalities have been implemented and
evaluated, we will evaluate the sum-total: CoModIDE. This will necessarily be
a user evaluation.
     We will have a test group and control group. Each group will be given a
moderately compex modeling task. The test group will be asked to design the
ontology using CoModIDE; the control group will not. We will then measure
the amount of time it took to complete the design task, measure its efficacy
at providing answers to pre-selected compentency questions, and identify if the
ontology has been designed modularly and with best practices, as according to
[1, 5, 6].


8    Preliminary Results

At the time of this writing, we have only implemented the very beginning stages
of our proposed approach and do not have any results to report. However, for
the established tools (e.g. ROWL or XD for WebProtégé), see their respective
references.


9    Reflections

It is not that others have failed, but that there is finally a critical mass in success-
ful, existing tools and methods for modular ontology design. Thus, we believe
that unifying them will result in a better tool for producing better ontologies.
     By unifying the tools, we believe that we will decrease the time spent switch-
ing between tools, formats, and the like. The ability to communicate with a
central repository, such as ontologydesignpatterns.org will greatly facilitate
pattern discovery and utilizing a standardized pattern representation language,
such as OPLa, will allow engineers to make better decisions more quickly.
Acknowledgement. The author acknowledges funding from the Dayton Area
Graduate Studies Institute (DAGSI) and thanks Pascal Hitzler for his signif-
icant input.


References

 1. E. Blomqvist, K. Hammar, and V. Presutti. Engineering ontologies with pat-
    terns - the extreme design methodology. In P. Hitzler, A. Gangemi, K. Janowicz,
    A. Krisnadhi, and V. Presutti, editors, Ontology Engineering with Ontology Design
    Patterns - Foundations and Applications, volume 25 of Studies on the Semantic
    Web, pages 23–50. IOS Press, 2016.
 2. K. Hammar. Ontology design patterns in webprotege. In S. Villata, J. Z. Pan,
    and M. Dragoni, editors, Proceedings of the ISWC 2015 Posters & Demonstrations
    Track co-located with the 14th International Semantic Web Conference (ISWC-
    2015), Bethlehem, PA, USA, October 11, 2015., volume 1486 of CEUR Workshop
    Proceedings. CEUR-WS.org, 2015.
 3. K. Hammar, E. Blomqvist, D. Carral, M. van Erp, A. Fokkens, A. Gangemi, W. R.
    van Hage, P. Hitzler, K. Janowicz, N. Karima, A. Krisnadhi, T. Narock, R. Segers,
    M. Solanki, and V. Svátek. Collected research questions concerning ontology design
    patterns. In P. Hitzler et al., editors, Ontology Engineering with Ontology Design
    Patterns – Foundations and Applications, volume 25 of Studies on the Semantic
    Web, pages 189–198. IOS Press, 2016.
 4. P. Hitzler, A. Gangemi, K. Janowicz, A. A. Krisnadhi, and V. Presutti. Towards a
    simple but useful ontology design pattern representation language. In E. Blomqvist
    et al., editors, Proceedings of the 8th Workshop on Ontology Design and Patterns
    (WOP 2017) Vienna, Austria, October 21, 2017, volume 2043 of CEUR Workshop
    Proceedings. CEUR-WS.org, 2017.
 5. N. Karima and P. Hitzler. How to document ontology design patterns. In K. Ham-
    mar, P. Hitzler, A. Lawrynowicz, A. Krisnadhi, and V. Presutti, editors, Advances
    in Ontology Design and Patterns, volume 32 of Studies on the Semantic Web, pages
    97–104. IOS Press, 2017.
 6. A. Krisnadhi and P. Hitzler. Modeling with ontology design patterns: Chess games
    as a worked example. In P. Hitzler et al., editors, Ontology Engineering with
    Ontology Design Patterns – Foundations and Applications, volume 25 of Studies
    on the Semantic Web, pages 3–21. IOS Press, 2016.
 7. A. Krisnadhi, Y. Hu, K. Janowicz, P. Hitzler, R. A. Arko, S. Carbotte, C. Chandler,
    M. Cheatham, D. Fils, T. W. Finin, P. Ji, M. B. Jones, N. Karima, K. A. Lehnert,
    A. Mickle, T. W. Narock, M. O’Brien, L. Raymond, A. Shepherd, M. Schildhauer,
    and P. Wiebe. The geolink modular oceanography ontology. In M. Arenas et al.,
    editors, The Semantic Web – ISWC 2015 – Bethlehem, PA, USA, October 11-15,
    2015, Proceedings, Part II, volume 9367 of Lecture Notes in Computer Science,
    pages 301–309. Springer, 2015.
 8. M. K. Sarker, A. Krisnadhi, D. Carral, and P. Hitzler. Rule-based OWL modeling
    with rowltab protégé plugin. In E. Blomqvist, D. Maynard, A. Gangemi, R. Hoek-
    stra, P. Hitzler, and O. Hartig, editors, The Semantic Web - 14th International
    Conference, ESWC 2017, Portorož, Slovenia, May 28 - June 1, 2017, Proceedings,
    Part I, volume 10249 of Lecture Notes in Computer Science, pages 419–433, 2017.
 9. M. K. Sarker, A. A. Krisnadhi, and P. Hitzler. Owlax: A protege plugin to support
    ontology axiomatization through diagramming. In T. Kawamura and H. Paulheim,
    editors, Proceedings of the ISWC 2016 Posters & Demonstrations Track co-located
    with 15th International Semantic Web Conference (ISWC 2016), Kobe, Japan,
    October 19, 2016., volume 1690 of CEUR Workshop Proceedings. CEUR-WS.org,
    2016.
10. C. Shimizu, P. Hitzler, and M. Horridge. Rendering OWL in description logic syn-
    tax. In E. Blomqvist, K. Hose, H. Paulheim, A. Lawrynowicz, F. Ciravegna, and
    O. Hartig, editors, The Semantic Web: ESWC 2017 Satellite Events - ESWC 2017
    Satellite Events, Portorož, Slovenia, May 28 - June 1, 2017, Revised Selected Pa-
    pers, volume 10577 of Lecture Notes in Computer Science, pages 109–113. Springer,
    2017.