<!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>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>EA-to-RDF: Pain-Free integration of RDF and</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Bob Janssen</string-name>
          <email>bob.janssen@yahoo.com</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ghislain Atemezing</string-name>
          <email>ghislain.atemezing@era.europa.eu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>ERA - European Union Agency for Railways</institution>
          ,
          <addr-line>120 Rue Marc Lefrancq, 59307 Valenciennes</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Joint Informatievoorziening Commando, Ministry of Defense</institution>
          ,
          <country country="NL">Netherlands</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>UML diagrams</institution>
          ,
          <addr-line>RDF, OWL, Ontology, Enterprise Architect</addr-line>
          ,
          <country>Model Based Systems Engineering</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This article presents an addon to the popular Enterprise Architect (EA) tool that lets modellers import existing ontologies into EA as classes and export class models to ontologies. The addon implements the SEMIC guidelines that standardise the UML-RDF mapping. The tool has been tested against some large UML diagrams from the railway domain and the generated outputs (RDF and UML) demonstrate the usefulness of EA-RDF both from UML experts and ontology developers. This approach bridges the gap between ontologies and IT engineering in UML; modellers at ease in UML but unfamiliar with triples can now easily access existing ontologies and publish their models as triples.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>CEUR
ceur-ws.org</p>
    </sec>
    <sec id="sec-2">
      <title>1. Introduction</title>
      <p>Engineers and ontologists share a desire to capture knowledge of systems. Engineers prefer
graphic schemata whilst ontologists prefer language tooling. The common goal remains the
need to precisely model systems. Whether it is a technical control-and-command system or
a socio-economic system, modellers apply the divide-and-conquer approach to identify the
components and subcomponents that form the system and how they relate.</p>
      <p>
        Information technologists, better known under the acronym IT-engineers, use the Unified
Modelling Language (UML) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and in particular class models, to capture system information.
The UML is a rich graphical language that lets engineers sketch diagrams showing concepts
and how they connect. Ontologists are more philosophically and linguistically inclined but in
essence do the same when they identify concepts and how they relate in subject-predicate-object
phrases.
      </p>
      <p>Good IT design separates problem and solution. Early design in particular should avert
technical products that may solve a problem. This is important because IT design all to often is
burdened with legacy technologies that hinder sound conceptualisation. Instead, IT engineering
should exert intellectual rigour by eliciting use cases, and then codifying the discipline’s jargon
in terms of UML class diagrams before tying themselves to a given technology. Introducing
https://ijzerweg.nl (B. Janssen); https://atemezing.org (G. Atemezing)</p>
      <p>© 2024 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
technological platforms or ”code smell” into a model is considered poor practice because
technologies come and go whereas concepts last.</p>
      <p>UML class diagrams are designed to capture concepts and by this virtue are a favorite tool
with both IT engineers and ontologists. This raises the question how information can cross
more easily from UML to triples and back. IT engineers have much to win from reusing the
knowledge that is readily available in published ontology. And vice versa, knowledge engineers
can raise interest in ontologies with IT engineers.</p>
      <p>The SEMIC work group published a standard for mapping a small subset of UML constructs to
triples and back. We show in this paper how this mapping contributed to tooling and a workflow
for the widely used UML tool Enterprise Architect (EA). Section 2 of this paper presents existing
approaches, section 3 presents the main functionalities of the tool.</p>
    </sec>
    <sec id="sec-3">
      <title>2. Related Work</title>
      <p>
        Some approaches have been proposed in recent years to bridge the gap between UML modeling
and OWL ontologies. The work presented in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is an early attempt to generat OWL from UML
models. The approach used XMI corresponding to Ontology UML Profile (OUP) into OWL
description. Unfortunately, it was not possible to access and assess the tool.
      </p>
      <p>
        Another approach by Chavez-Feria and al., [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] proposed Chowlk, a framework to transform
digital ontology conceptualisation diagrams into OWL. Chowlk proposed a diferent UML-based
visual notation and templates based on diagrams.net, which is not necessary in our proposal.
Finally, the OSLO project [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] boosted the next generation of formal mappings of UML to OWL.
      </p>
      <p>
        The OMG ontology workgroup, having identified the need for converting UML to RDF, created
the Ontology Definition Metamodel (ODM) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The ODM is included in EA so modellers wishing
to publish an ontology apply ODM stereotypes to classes and relations. But the need to apply
stereotypes expresses the intent to publish RDF from the outset which may not be given when
modellers wish to steer clear of any ”platform” whether it be XSD, Json, Object Oriented code,
or RDF.
      </p>
      <p>
        The SEMIC guidelines [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] (mostly) ignore stereotypes and apply to a subset of UML class
models. This Platform Independent Model (PIM) approach expresses the intent that a good
model should be like a stem cell that is pluripotent and later develops into Platform Specific
Model (PSM) whence into even more specific computer code.
      </p>
      <p>The SEMIC workgroup also produced a tool based on XSLT that turns a class model, expressed
in XMI, into RDF. Whilst this is tool-independent, XSLT is not particularly user friendly. The
present addOn for EA was developed to be user friendly.</p>
    </sec>
    <sec id="sec-4">
      <title>3. EA-RDF Functionalities</title>
      <p>
        In this section, we describe how to go from RDF to UML and vice versa.
3.1. RDF to UML
Published ontologies are potent stores of domain knowledge. In day-to-day life, most IT
engineers reinvent the wheel or at best take inspiration from ontologies when designing class
diagrams because they’re tasked to build an application on a given platform. This defies the
Interoperability and Reusability goals in the FAIR acronym. This motivated the capability
of importing published ontologies into EA. An IT engineer can climb on the shoulders of
giants by importing ontologies into UML classes. The import retains important information
including definitions, the URI’s and relations. The tool comes with a set of preloaded
wellknown ontologies such as foaf, DCAT, SKOS and many more. Alternatively, the user can import
published ontologies straight from existing catalogs such as Linked Open Vocabulary (LOV) or
any resource from the web. The modeller can then tailor the imports by specialising classes,
adding relations and new classes. This prevents modellers from toiling away in isolation and
by design create incompatibilities for which costly and fragile adaptors need to be built as an
afterthought. Short, importing ontologies as ready-made UML class models gives Model Base
System Engineers a sound foundation and blueprints on which to build models for their domain.
3.2. UML to RDF
The SEMIC style guide reference [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] lists rules for mapping classes, data types, connectors,
arities and annotations to RDF concepts, properties and SHACL shapes. UML constructs not in
the mapping rules are ignored.
      </p>
      <p>URI’s are essential to triples so the UML model must provide the ingredients for constructing
URI’s. This is commonly achieved by applying tags named ”uri” to UML elements or ”base-uri”
to packages. This closely mimicks the SEMIC approach and dispenses of the need for a separate
configuration file. A subject, predicate or object node will inherit the URI from the tag of the
original UML element or, lacking a tag, of the package where it was found. The tool issues a
warning or error when no URI could be constructed.
3.3. Publishing your model to the Web
A model that is published on the web is FAIR: Findable - Accessible - Interoperable and Reusable.
EA out-of-the-box can produce a HTML view of a UML model. The addon adds a new landing
page that lists the produced RDF-triples. This HTML is readily exposed on a web server in such a
way that the produced URI’s have a target on the the web. Users can browse context information
because the triples are backed by published UML diagrams. Extra context reduces entry barriers,
accelerates learning curves and reduces development efort. The landing page includes an
index that helps users discover concepts defined in the model. This creates a continuum where
one can navigate between triples and published UML. This compares favourably to a classic
situation where users chase data, context and documentation locked away in various silos.</p>
    </sec>
    <sec id="sec-5">
      <title>4. Conclusions and future work</title>
      <p>This paper presents a tool for automatic generation of RDF from UML class models and
viceversa, packaged as an add-on for Enterprise Architect, a popular UML modelling tool. The tool
implements the SEMIC mapping rules. We will perform a quantitative evaluation of the tool by
both UML modellers and ontologists to compare the tool with existing approaches.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O. A.</given-names>
            <surname>Specification</surname>
          </string-name>
          ,
          <article-title>Omg unified modeling language (omg uml), superstructure</article-title>
          ,
          <source>v2. 1</source>
          .2, Object Management Group
          <volume>70</volume>
          (
          <year>2007</year>
          )
          <fpage>16</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Gasevic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Djuric</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Devedzic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Damjanovi</surname>
          </string-name>
          ,
          <article-title>Converting uml to owl ontologies</article-title>
          ,
          <source>in: Proceedings of the 13th international World Wide Web conference on Alternate track papers &amp; posters</source>
          ,
          <year>2004</year>
          , pp.
          <fpage>488</fpage>
          -
          <lpage>489</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S.</given-names>
            <surname>Chávez-Feria</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>García-Castro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Poveda-Villalón</surname>
          </string-name>
          ,
          <article-title>Converting uml-based ontology conceptualizations to owl with chowlk</article-title>
          ,
          <source>in: The Semantic Web: ESWC 2021 Satellite Events</source>
          , Springer International Publishing, Cham,
          <year>2021</year>
          , pp.
          <fpage>44</fpage>
          -
          <lpage>48</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>D. De Paepe</surname>
            , G. Thijs,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Buyle</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Verborgh</surname>
          </string-name>
          , E. Mannens,
          <article-title>Automated uml-based ontology generation in oslo2</article-title>
          , in: E. Blomqvist,
          <string-name>
            <given-names>K.</given-names>
            <surname>Hose</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Paulheim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ławrynowicz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ciravegna</surname>
          </string-name>
          ,
          <string-name>
            <surname>O.</surname>
          </string-name>
          Hartig (Eds.),
          <source>The Semantic Web: ESWC 2017 Satellite Events</source>
          , Springer International Publishing, Cham,
          <year>2017</year>
          , pp.
          <fpage>93</fpage>
          -
          <lpage>97</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>O. M.</given-names>
            <surname>Group</surname>
          </string-name>
          , Ontology definition metamodel,
          <year>2014</year>
          . URL: https://www.omg.org/spec/ODM/ 1.1/PDF.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>E.</given-names>
            <surname>Costetchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. V.</given-names>
            <surname>Nufelen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Nyulas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Stani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.-N.</given-names>
            <surname>Pasare</surname>
          </string-name>
          , Semic style guide -
          <source>technical guidelines</source>
          ,
          <year>2023</year>
          . URL: https://semiceu.github.
          <source>io/style-guide/1</source>
          .0.0/references.html, v.
          <volume>1</volume>
          .
          <issue>0</issue>
          .0.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>