<!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>Automated REA (AREA): A Software Toolset for a Machine-readable Resource-Event-Agent (REA) Ontology Specification</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Richard L. Fallon</string-name>
          <email>Richard.L.Fallon@student.shu.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dr. Simon Polovina</string-name>
          <email>s.polovina@shu.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Sheffield Hallam University</institution>
          ,
          <addr-line>Sheffield</addr-line>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
      </contrib-group>
      <fpage>10</fpage>
      <lpage>18</lpage>
      <abstract>
        <p>This paper demonstrates a toolset developed by the authors to enable a machine-readable REA ontology specification. Information modelling techniques are used to provide a unified enterprise ontology by capturing the business semantics using Conceptual Graphs (CGs) using Common Logic (CL) and the Conceptual Graph Interchange Format (CGIF) dialect for information exchange and transmission. Formal Concept Analysis (FCA) is used for model verification, knowledge discovery and extraction. The enterprise design follows the Open Groups definition of the TOGAF Architecture Development Method (ADM) to define the system architecture and subsequently provide a method for defining and automating the (REA) design models for; Business Architecture, Information System Architecture and Technology Architecture.</p>
      </abstract>
      <kwd-group>
        <kwd>Ontology Specification</kwd>
        <kwd>REA</kwd>
        <kwd>ADM</kwd>
        <kwd>Conceptual Graph</kwd>
        <kwd>Ontology</kwd>
        <kwd>FCA</kwd>
        <kwd>Data integration</kwd>
        <kwd>Semantics</kwd>
        <kwd>Protégé</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        The development of an enterprise ontology is one of the first steps in
designing a knowledge base, a database or an object oriented system
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In this paper we respond to the call from Gailly, Laurier, &amp; Poels
(2008) for the development of a proof concept for the viability of
having a machine-readable REA ontology specification available for
different REA ontology application domains. For an REA-ontology like
other business domain ontologies there is perceived to be a lack of
formal representation which would be useful for the representation of the
application in practice[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>System requirements</title>
      <p>
        The basis of the system requirements for AREA come from the Open
Groups definition of the TOGAF Architecture Development Method
(ADM) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] which defines the Architecture Development Lifecycle. In
addition to the ADM above we will add four further requirements; (i) to
enable Model Automation (MA), the solution must be not only Human
readable but also Machine readable, (ii) enable Model Visualization
(MVi) and thus provide a Graphical view which can be used by domain
modelling professionals, (iii) allow for Model Verification (MVe) so
that domain modelling professionals can carry out tests against the
proposed Enterprise ontology, (iv) provide a working solution via Model
Implementation (MI) the point at which the model is converted into a
usable Enterprise domain database. The diagram below in Fig. 1
identifies the components required for producing an Enterprise Architecture
using AREA.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Common Logic (CL).</title>
      <p>
        The International Organisation for Standardisation (ISO) have defined
Common Logic (CL) [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] which is a first order logic intended for
information exchange and transmission. The core of the CL framework is
the definition of an abstract syntax and abstract semantics for Common
Logic, providing the structure for several concrete syntactic forms or
dialects. One of the CL dialects is the Conceptual Graph Interchange
Format (CGIF) and it is this dialect which we use for information
exchange and the Automation of REA (AREA) using Conceptual Graphs
(CGs).
      </p>
    </sec>
    <sec id="sec-4">
      <title>Conceptual Graphs (CGs).</title>
      <p>
        CGs have been shown to be useful in capturing and modelling business
transactions and their semantics within an enterprise architecture [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
Thus our solution uses CGs as the driving force behind MA providing a
tool to define the Enterprise ontology. CGs provide both accurate
semantic and syntactic refinement, aiding the designer in capturing
semantics. Whilst CG’s in CGIF format are machine readable they can
also be interpreted and edited manually (human readable) and are
useful for documentation and maintenance.
      </p>
      <p>REA.</p>
      <p>
        McCarthy (1982) proposed his REA theory as the solution to a
generalised accounting framework in which both accountants and
nonaccounts could share the same enterprise data. McCarthy’s [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]
enterprise ontology determines that all the Economic transactions within an
enterprise can be aligned to three separate entities or concepts; (i)
Economic Resources, (ii) Economic Events and (iii) Economic Agents.
Moreover, REA has also been demonstrated to be useful for modelling
non-economic business transactions [
        <xref ref-type="bibr" rid="ref6 ref7">6, 7</xref>
        ].
2.2
      </p>
    </sec>
    <sec id="sec-5">
      <title>Model Visualization (MVi)</title>
    </sec>
    <sec id="sec-6">
      <title>Protégé.</title>
      <p>
        Protégé is a free open-source contemporary ontology editor and
framework and was developed at the Stanford Centre for Biomedical
Informatics Research (BMIR) at the Stanford University School of Medicine
for building intelligent systems. Protégé is a mature solution already
used in commercial products [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and hence has numerous add-on tools
available. There are essentially two versions of Protégé – OWL and
Frames, due to the more restrictive nature of Frames this version was
chosen as the ontology repository. For a detailed description of the
difference between Frames and OWL, refer to [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
    </sec>
    <sec id="sec-7">
      <title>CG Import.</title>
      <p>
        The Protégé plugin CGImport [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] was developed by the authors as a
tool to allow for the import of CGs defined using the CGIF Common
Logic dialect directly into the Protégé ontology repository. Thus
allowing the user to define both the Business Architecture and the
Information System Architecture using CGs from within a text editor or to
import the CGs designed using other available CG tools such as
CharGer [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
    </sec>
    <sec id="sec-8">
      <title>CG Export.</title>
      <p>
        The Protégé plugin CGexport [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] was developed by the authors as a
tool to allow for the export of CGs stored within the Protégé ontology
repository into a file using the CGIF Common Logic dialect. Thus
allowing for interoperability with other available CG tools such as
CharGer [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
2.3
      </p>
    </sec>
    <sec id="sec-9">
      <title>Model Verification (MVe)</title>
    </sec>
    <sec id="sec-10">
      <title>JESS.</title>
      <p>
        JESS [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] is a tool available as a Protégé plugin, used to build an expert
system which can then be used to build a set of rules which can be
repeatedly executed against a collection of facts such as an ontology
describing an enterprise system. Thus JESS is used to validate the
Enterprise Model once it is stored within Protégé.
      </p>
      <p>FCA.</p>
      <p>
        Several authors have shown the benefits of converting CGs into Formal
Concepts [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] to allow for Formal Concept Analysis (FCA), to find out
the hidden information and transactions within complex graphs. The
tool FCAView[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] was further developed by the authors to allow for
FCA on the enterprise model stored directly within Protégé [
        <xref ref-type="bibr" rid="ref15 ref16 ref17">15-17</xref>
        ].
2.4
      </p>
    </sec>
    <sec id="sec-11">
      <title>Model Implementation (MI)</title>
      <p>To complete the process and carry out MI, the final product or artefact
of the solution is the enterprise domain database in the form of an SQL
schema, for installation using one of the current database technologies
(MySql, Microsoft SQL server, Oracle etc.).</p>
    </sec>
    <sec id="sec-12">
      <title>REAtoSQL.</title>
      <p>The Protégé plugin REAtoSQL has been developed by the authors as a
tool to allow for the export of the Technology Architecture in the form
of an SQL schema from the REA ontology design stored within the
Protégé repository. The SQL schema can then be used to initialize the
enterprise domain database.
3</p>
    </sec>
    <sec id="sec-13">
      <title>Solution demonstration</title>
      <p>To demonstrate the solution, we use the example of a Financial Trading
(FT) case study for the purpose of simplicity and to allow for
comparison with other solutions using this same case study.
3.1</p>
    </sec>
    <sec id="sec-14">
      <title>Business Architecture</title>
      <p>
        Using MA, we define the Business Architecture using CGs by
importing (using CGimport) models from other tools (CharGer), or models
defined manually in a text editor into Protégé for MVi. The complete
Business Architecture defined using CGs can then be reviewed (MVi)
in Protégé, further CGs can be added to define further business entities
and expand the type hierarchy. Thus Protégé allows for MVi of the
Business Architecture and to carry out further design work (Fig. 2).
To validate the enterprise model there are then two methods for model
Verification (MVe); (i) using either JESS to ‘test’ business rules or (ii)
using FCAView [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] to view the Business Architecture and complete
FCA directly in Protégé (Fig. 3).
3.2
      </p>
    </sec>
    <sec id="sec-15">
      <title>Information System Architecture</title>
      <p>Using the CGs developed for the Business Architecture (above) we
expand the design and the type hierarchy to include the Resource Event
Agent (REA) design pattern. Using REA to define the Information
System Architecture we focus on real things not artificial artefacts (Dunn,
Cherrington and Hollander 2005) by adding detail to each of the
concepts (Fig. 4).
Fig. 4 - Information System Architecture - Model Visualisation – REA entities, key:
Resourcesgreen, Events-orange, Agents-lilac
The resulting design can then be used later for the basis of the
Technology Architecture in the form of an SQL schema.
3.3</p>
    </sec>
    <sec id="sec-16">
      <title>Technology Architecture</title>
      <p>
        Using Protégé, the Technology Architecture can be developed using the
REA ontology design from above by using the developed tool
REAtoSQL. Thus allowing Model Implementation (MI) by exporting
from Protégé the SQL schema, which can then be used to load the
enterprise domain database into the chosen database software (MySQL,
Oracle etc.). The resulting database should then mimic the domain
model as closely as possible [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
      </p>
    </sec>
    <sec id="sec-17">
      <title>Conclusions</title>
      <p>
        In this paper we have responded to the call [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] for the viability of
having a machine-readable REA ontology specification. A correct formal
representation of the REA-ontology offers great opportunities and
will facilitate the operationalization of the REA-ontology [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. UML
modelling has also been proposed as the solution to this problem,
however, the solution presented in this paper uses CG’s as an alternative
(instead of UML). Thus the AREA toolset allows the enterprise expert
to follow TOGAF [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and define; Business Architecture, Information
System Architecture and the Technology Architecture using CGs, REA
and the SQL Enterprise Domain Database, all from within a unified
tool - Protégé.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Geerts</surname>
            <given-names>GL</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McCarthy</surname>
            <given-names>WE</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>An ontological analysis of the economic primitives of the extended-</article-title>
          <source>REA enterprise information architecture 3</source>
          :
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>TheOpenGroup</surname>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>TOGAF® 9</article-title>
          .1 &gt;
          <string-name>
            <surname>Part</surname>
            <given-names>II</given-names>
          </string-name>
          :
          <article-title>Architecture Development Method (ADM), Introduction to the ADM</article-title>
          . http://pubs.opengroup.org/architecture/togaf9- doc/arch/chap05.html
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>ISO</surname>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>Information technology -- Common Logic (CL): a framework for a family of logic-based languages ISO</article-title>
          /IEC 24707:
          <year>2007</year>
          . http://www.iso.org/iso/catalogue_detail.
          <source>htm?csnumber=39175</source>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Launders</surname>
            <given-names>I</given-names>
          </string-name>
          (
          <year>2012</year>
          )
          <article-title>The transaction graph: requirements in semantic enterprise architectures</article-title>
          .
          <source>LAP LAMBERT Academic, Saarbrücken.</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>McCarthy</surname>
            <given-names>WE</given-names>
          </string-name>
          (
          <year>1982</year>
          )
          <article-title>The REA accounting model: A generalized framework for accounting systems in a shared data environment</article-title>
          <volume>57</volume>
          :
          <fpage>554</fpage>
          -
          <lpage>578</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>O</given-names>
            <surname>'Leary DE</surname>
          </string-name>
          (
          <year>2004</year>
          )
          <article-title>On the relationship between REA</article-title>
          and SAP 5:
          <fpage>65</fpage>
          -
          <lpage>81</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Fallon</surname>
            <given-names>RL</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polovina</surname>
            <given-names>S</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>REA analysis of SAP HCM; some initial findings</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Enterprise</given-names>
            <surname>Architecture Solutions (EAS)</surname>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>The Essential Project</article-title>
          . http://www.enterprise-architecture.
          <source>org/</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Wang</surname>
            <given-names>H</given-names>
          </string-name>
          (
          <year>2015</year>
          )
          <article-title>Frames and OWL side by side</article-title>
          . http://protege.stanford.edu/conference/2006/submissions/slides/7.2wang_
          <fpage>protege2</fpage>
          006.pdf
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Fallon</surname>
            <given-names>RL</given-names>
          </string-name>
          (
          <year>2015</year>
          )
          <article-title>CGImport</article-title>
          . https://github.com/RichardFallon/CGImport
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Delugach</surname>
            <given-names>H</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>CharGer Conceptual Graph and knowledge modeling tool</article-title>
          . http://charger.sourceforge.net/
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Fallon</surname>
            <given-names>RL</given-names>
          </string-name>
          (
          <year>2015</year>
          )
          <article-title>CGExport</article-title>
          . https://github.com/RichardFallon/CGExport
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Friedman-Hill</surname>
            <given-names>E</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>JESS the rule engine for the JAVA platform</article-title>
          . http://www.jessrules.com/jess/index.shtml
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Andrews</surname>
            <given-names>S</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polovina</surname>
            <given-names>S</given-names>
          </string-name>
          (
          <year>2011</year>
          )
          <article-title>A mapping from conceptual graphs to formal concept analysis</article-title>
          .
          <source>In: Anonymous Conceptual Structures for Discovering Knowledge</source>
          , Springer, pp
          <fpage>63</fpage>
          -
          <lpage>76</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Jiang</surname>
            <given-names>G</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fallon</surname>
            <given-names>RL</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>FCAView</article-title>
          . https://github.com/FCAView/FCAView_V2.
          <fpage>0</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Andrews</surname>
            <given-names>S</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>CGFCA - Convertor of Conceptual Graph files to Formal Context files</article-title>
          . http://sourceforge.net/projects/cgfca/
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Fallon</surname>
            <given-names>RL</given-names>
          </string-name>
          (
          <year>2016</year>
          )
          <article-title>3to2 - Convertor of Conceptual Graph files to Formal Context files</article-title>
          . https://github.com/RichardFallon/3to2
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Pavel</surname>
          </string-name>
          . Hrubý,
          <string-name>
            <surname>Kiehn</surname>
            <given-names>J</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheller</surname>
            <given-names>CV</given-names>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>Model-driven design using business patterns</article-title>
          . Springer, Berlin.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Gailly</surname>
            <given-names>F</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Laurier</surname>
            <given-names>W</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poels</surname>
            <given-names>G</given-names>
          </string-name>
          (
          <year>2008</year>
          )
          <article-title>Positioning and Formalizing the REA Enterprise Ontology</article-title>
          .
          <source>J Inf Syst</source>
          <volume>22</volume>
          :
          <fpage>219</fpage>
          -
          <lpage>248</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Gailly</surname>
            <given-names>F</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poels</surname>
            <given-names>G</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>Development of a formal REA-ontology representation 160</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>