<!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>OntoGui: a Graphical User Interface for Rapid Instantiation of OWL Ontologies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Walter TERKAJ</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Industrial Technologies and Automation (ITIA-CNR)</institution>
          ,
          <addr-line>Milan</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The efficient instantiation of an OWL ontology still represents one of the barriers towards their extensive use in industrial applications not limited to the definition of more or less complex T-boxes. This paper presents the prototype noncommercial ontology-based software tool named OntoGui that can be employed in the management and instantiation of A-box modules, mainly supporting the validation of T-box modules and the rapid generation of data sets.</p>
      </abstract>
      <kwd-group>
        <kwd />
        <kwd>Graphical User Interface</kwd>
        <kwd>Ontology</kwd>
        <kwd>OWL</kwd>
        <kwd>A-box Generation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        As ontology-based approaches are becoming more and more popular in the scientific and
industrial community, there is an increasing need of software tools supporting the
development and instantiation of an ontology. Most of the general purpose tools focus mainly
on the development of a T-box, whereas the instantiation and enrichment of the A-box
is poorly supported. Even Prote´ge´2 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], one of the most adopted ontology editors, can be
hardly used to manage individuals and their relations as soon as the number of axioms
defined in the T-box grows. Other tools like NeOn toolkit3 and in particular TopBraid
Composer4 better support the generation of relations between individuals by suggesting
which object and datatype properties can be used according to their ranges and the
restrictions assigned to OWL classes. However, even in these cases, a safe and quick
instantiation of ontologies is not fully supported because it is difficult to navigate through the
A-box and consistency check functionalities are missing. The proposed OntoGui tool5
mainly aims at supporting:
      </p>
      <p>The fast evaluation of a T-box under development by concurrently instantiating a
corresponding A-box, thus implementing a kind of test-driven development approach.
The generation of RDF data sets to be used as input for other ontology-based
applications, without needing customized graphical user interfaces or data converters.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Design and Functionalities</title>
      <p>OntoGui is a graphical user interface developed as a desktop application in C++ making
use of wxWidgets Cross-Platform GUI Library6 for the creation of graphical elements,
and the RdfCpp library. RdfCpp is a C++ library, based on Boost Library7 and Redland
RDF8 (enabling the parsing and generation of RDF triples), that provides classes and
functions to manage a network of RDF graphs, parse and generate OWL individuals, parse
OWL axioms of a T-box (i.e., equivalent classes; subclasses; restrictions of any degree
involving universal quantifier, existential quantifier, or cardinality constraints; domain
and range of properties). Moreover, RdfCpp supports the connection with three RDF
store solutions: (a) file-based; (b) MySQL9 relational database; (c) Stardog10 triplestore.</p>
      <p>The main window of OntoGui is a Control Panel (Figure 1) that can manage
(networks of) ontologies in a file-based repository or other more scalable RDF stores (i.e.,
MySQL-based repository and Stardog) by selecting different repo tabs. The Control
Panel allows to load an existing ontology module and its dependencies, create a new
Abox module, define new import relations between modules, and save the modules in any
of the available repository. The Control Panel provides also access to a set of ontology
tools: 1) OWL Individual Manager, 2) System Design, and 3) Performance Evaluation.</p>
      <p>OWL Individual Manager is a general purpose tool for the management of OWL
individuals. The main window of the tool (Figure 2) is dynamically reconfigured
every time an OWL class belonging to the available T-box is selected (in the top left
cor6https://www.wxwidgets.org/
7http://www.boost.org/
8http://librdf.org/
9https://www.mysql.com/
10http://www.stardog.com/
ner). After loading an ontology module in the control panel and selecting an OWL class
in OWL Individual Manager, the characterization of the OWL classes provided by the
RdfCpp library enables the following functionalities:</p>
      <p>Generation and listing of individuals belonging to the selected class.</p>
      <p>Listing the properties that can have the selected individual as a subject. Exploring and
setting the target value of a property for the selected individual.</p>
      <p>
        Checking the integrity of the selected individual by interpreting the OWL axioms as
Integrity Constraints according to the Closed World Assumption (CWA) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        The basic functionalities of OWL Individual Manager are provided for any T-box.
However, it is possible to add customizations for specific T-boxes. In particular, further
functionalities are available if the T-box includes the ifcOWL ontology [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], i.e., the OWL
version of the Industry Foundation Classes that is a key reference standard in the Building
Information Modeling (BIM) domain. The ifcOWL-based functionalities include:
Customized windows for the characterization of an IfcProduct individual in terms of
3D placement and shape representations (i.e., a bounding box or a linked binary file).
The aggregation structure of an IfcTypeObject individual is automatically replicated
for its typed IfcObject individuals.
      </p>
      <p>Visualization and specification of values for pre-defined property sets.</p>
      <p>System Design is a tool for manufacturing applications that enables to populate
libraries with reusable information related to: part types to be produced and the process
plan needed to produce it; decomposition of a process plan into process steps
characterized by processing times and precedence relationships; assignment of a process step
to one or more production resources; definition of a production system in terms of
connected machines (with failure modes) and buffers (with capacity).</p>
      <p>The definition of a production system is exploited by the Performance Evaluation
tool to evaluate the system performance against a production plan that is specified with
a customized interface. The evaluation can be performed via mathematical methods or
discrete event simulation that are linked to OntoGui thanks to software connectors.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Applications</title>
      <p>OntoGui has been employed during computer lab classes of the Master level courses
Reconfigurable Manufacturing Systems and Production for Made in Italy Lab at Politecnico
di Milano, and during a training course within the national project Smart
Manufacturing 202011. It was demonstrated that OntoGui supports the rapid modeling of production
systems even if it is used by engineering students with little or no knowledge about
ontologies. Furthermore, OntoGui was exploited by several research projects in the
manufacturing domain, such as Pro2Evo12 and ProRegio13. OntoGui enabled the generation
of ontology modules needed as input of other ontology-based tools supporting 3D layout
design, discrete event simulation, factory monitoring, and process simulation.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Demo and Software/Hardware Requirements</title>
      <p>
        OntoGui works in Windows operating systems (XP or above) endowed with MVC++2010
Redistributable Package. A minimum amount of free memory (1 GB) and disk
space (1 GB) must be available. The tool is demoed14 by showing how catalogs of
production plans and production resources are generated to support the design of production
systems [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The academic version of OntoGui can be shared upon request to the author.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments</title>
      <p>This work was partially funded by the European Union’s Horizon 2020 research and
innovation programme under grant agreement No. 636966 (ProRegio) and by the Italian
research project Smart Manufacturing 2020 within the ClusterTecnologico Nazionale
Fabbrica Intelligente.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R. J.</given-names>
            <surname>Brachman</surname>
          </string-name>
          and
          <string-name>
            <given-names>H. J.</given-names>
            <surname>Levesque</surname>
          </string-name>
          . Chapter 11
          <article-title>- defaults</article-title>
          . In R. J. Brachman, , and H. J. Levesque, editors,
          <source>Knowledge Representation and Reasoning</source>
          , The Morgan Kaufmann Series in Artificial Intelligence, pages
          <fpage>205</fpage>
          -
          <lpage>235</lpage>
          . Morgan Kaufmann, San Francisco,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Musen</surname>
          </string-name>
          .
          <article-title>The prote´ge´ project: A look back and a look forward</article-title>
          .
          <source>AI Matters</source>
          ,
          <volume>1</volume>
          (
          <issue>4</issue>
          ):
          <fpage>4</fpage>
          -
          <lpage>12</lpage>
          ,
          <year>June 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>P.</given-names>
            <surname>Pauwels</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Krijnen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Terkaj</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Beetz</surname>
          </string-name>
          .
          <article-title>Enhancing the ifcOWL ontology with an alternative representation for geometric data</article-title>
          .
          <source>Automation in Construction</source>
          ,
          <volume>80</volume>
          :
          <fpage>77</fpage>
          -
          <lpage>94</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>W.</given-names>
            <surname>Terkaj</surname>
          </string-name>
          and
          <string-name>
            <given-names>G. P.</given-names>
            <surname>Vigano</surname>
          </string-name>
          <article-title>`. Semantic GIOVE-VF: an Ontology-based Virtual Factory Tool</article-title>
          .
          <source>In Proceedings of the Workshop on Data meets Applied Ontologies</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>