<!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>OBIS: Ontology-Based Information System Framework</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Kārlis Čerāns</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aiga Romāne</string-name>
          <email>aiga.romane@inbox.lv</email>
        </contrib>
      </contrib-group>
      <abstract>
        <p>We demonstrate a framework for automated information system generation from a given data ontology describing either an existing data set, or a data set to be filled up and maintained using the created information system. The IS data are stored into real or virtual RDF data stores and are accessed by means of SPARQL queries. The data ontology structure information and annotations allow automated generation of IS reflecting the data structure specified in the ontology.</p>
      </abstract>
      <kwd-group>
        <kwd>Ontologies</kwd>
        <kwd>RDF schemas</kwd>
        <kwd>automated information system generation</kwd>
        <kwd>user interface annotations</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        The semantic web standards, including RDF [
        <xref ref-type="bibr" rid="ref1 ref2">1,2</xref>
        ], OWL [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and SPARQL [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
define information representation and querying infrastructure that is basis for
Semantic Web [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and Linked Data [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], as well as enterprise-level semantic
technology use. The semantic technologies offer much higher-level view on data than
do the classic relational databases (RDB) with their corresponding SQL query
language thus raising a hope of more direct involvement of various domain experts in
data set definition, exploration and analysis. There are both a W3C standard R2RML
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], as well as numerous developments (e.g. Virtuoso RDF Views [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], D2RQ [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
ontop [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] and RDB2OWL [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]) for mapping relational database information into the
semantic technology landscape. The RDF data stores such as Virtuoso [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and
Stardog [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] provide native RDF data storage so facilitating the RDF data
availability. For the semantic information landscape implementation there is also a
need of tools allowing creation, access and analysis of the available data.
      </p>
      <p>
        We demonstrate here a system for automated information system user interface
creation from the structure of data described as annotated OWL ontology thus
allowing browsing the available RDF data, as well as editing the data, if the
corresponding RDF data store allows for data updates and data entry. There are two
basic use cases of the OBIS Framework: (i) to browse and analyze data in existing
1 Partially supported by Latvian State Research programme NexIT project No.1 'Technologies
of ontologies, semantic web and security'
real or virtual RDF databases, including the RDF databases that are conceptual
representations of relational database data [
        <xref ref-type="bibr" rid="ref13 ref14">13,14</xref>
        ], as well as arbitrary SPARQL
endpoints that have a corresponding data schema description available, and (ii) to
manage information system data primarily stored into a RDF database (including data
inserting and updating); thus creating a SPARQL-enabled conceptual data store.
      </p>
      <p>
        We structure the presentation into two main sections – first is explained the basic
OBIS application generation, followed by application tuning possibility description.
The conceptual foundation of the OBIS system has been described in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], the current
paper reports on new basic functionality (e.g. related items view), as well as entirely
new ontology annotation framework.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>OBIS: Basic Working Scheme</title>
      <p>
        The ontology-based information system creation in OBIS starts with obtaining or
designing of data ontology reflecting the structure of the data underlying the
information system. Figure 1 contains an example mini-University ontology in the
OWLGrEd2 ontology editor notation [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] describing OWL classes as UML classes,
OWL object properties as role links between property domain and range classes and
OWL data properties as their domain class attributes.
      </p>
      <p>Person
personName
personID
nationality:Nationality</p>
      <p>Nationality
nCode
nValue</p>
      <p>FacultyLevel
acadTitle
With the OBIS framework up and running on a web-server the user creates a new
application in the OBIS Application Manager. The user then fills in the application
name as well as ontology namespace (from the data ontology) and data namespace
(not relevant for read-only ontology data access), chooses the repository type (e.g.
Virtuoso server3, a SPARQL-endpoint or a Jena TDB store) and connection</p>
      <sec id="sec-2-1">
        <title>2 The editor can be downloaded from http://owlgred.lumii.lv 3 To be downloaded from e.g. http://virtuoso.openlinksw.com/ and installed separately</title>
        <p>Student
studentName{&lt;personName}
studentNumber
student</p>
        <p>1
parameters. After saving the created basic application information and loading the
data ontology the concrete application based on the data ontology can be generated
and run. Figure 2 shows mini-University example case of the obtained application
working interface, consisting of a class tree browser with the option to select a class
and obtain a table view of its instance attributes.</p>
        <p>Fig. 2. Example: the generated mini-University information system: the instance
table view for Course class.
Further ontology data exploration options include the sorting and filtering, export to
MS Excel as well as related data item view allowing the user to select one or several
instance links defined for the class in the ontology as well as a list of instances and
obtain the lists of items connected to the selected ontology instances via the specified
links. Figure 3 demonstrate this facility for the courses ‘Semantic Web’ and
‘Quantum Computations’ in the mini-University example (note the properties
includes and takes coming into the Course class in the data ontology in Figure 1).</p>
        <p>There is also a detailed view form for instances with fields for attribute values and
links in the ontology data coming in (the direct links) and going out (the inverse link),
as in Figure 4. Show Permalink option helps sharing the instance property page
among various developers working with the same OBIS server application.</p>
        <p>OBIS can be used not only as the ontology data information viewer. In the case, if
the underlying RDF data store supports SPARQL data updates, there is possibility of
new information entry, as well as information update and delete in OBIS, as well. The
class instance information entry and edit forms are similar to instance view forms of
Figure 4 (with information save option enabled); the link information is updated via
the Add option in the tables showing link relations.</p>
        <p>
          Further options in OBIS are report creation that allows also execution of textual
SPARQL queries against the underlying RDF data store as well as form and report
information export to MS Excel. The internal report definition tool in OBIS is work in
progress. To ease writing textual SPARQL queries one can use e.g. a ViziQuer tool4
[
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], among the others.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Enhancing OBIS Applications</title>
      <p>
        An information system user interface that is based just on the reproduction of the
structure of ontology classes and data and object properties (with an analogy with
RDB table, attribute and link structure) may appear to be too simplistic for a useful
information system. One could desire e.g. more specific table and form view
definitions for particular classes. In particular, the classes containing the classifier
data, or, in general, the links among classes with their target maximum cardinality not
exceeding 1 (i.e., the n:1 links) may benefit from special visual representation in the
user interface. There are three basic mechanisms of enhancing OBIS applications:
- specification of cardinality information in the ontology (this requires using the
standard means available in OWL, so the effects of cardinality information
availability can be considered basic OBIS application generation aspect);
- extending OWL ontology with specific user interface annotations, and
- customizing (configuring) the application after its initial generation.
The main user interface annotations, supported by OBIS, are the following5:
- obis:textPattern. Defines textual form for class instance presentation via
relations with maximum cardinality 1. The textual form of linked instances of
such classes are included into linking instance presentations both in table and
form and edit views (a combo-box is used for the edit view).
- obis:isEnumerated. Specifies a class to be a classifier class (an enumerated
class), so that a textual form of its instance presentation is available
disregarding an explicit obis:textPattern specification by the user.
- obis:defaultOrder. Specifies the default order of attributes (both data attributes
and classifier attributes) for class instances within a class table or form view.
The OWL ontology axiom structure does not foresee a possibility to specify
the order of the attributes for a class. The obis:defaultOrder annotations create
a compensating mechanism. An automated generation of these of axioms is
built in OWLGrEd editor extension OWLGrEd/OBIS [
        <xref ref-type="bibr" rid="ref14 ref18">14,18</xref>
        ] for data
ontology handling. So, with appropriate ontology editor support an IS
developer would not notice the existence of these annotations.
- obis:isAbstract. Specifies that a class is abstract and that a possibility to create
new instances as elements of this class is not to be included in UI.
- obis:isDerived. Specifies that a data or object property is derived and that a
possibility to create new values or links corresponding to this property is not
to be included in UI.
- obis:view. Specifies the presence and order of attributes (both data attributes
and classifier attributes) shown for class instances within a table or form view.
      </p>
      <p>May include both attributes ascribed for the class and its subclasses in the</p>
      <sec id="sec-3-1">
        <title>4 Can be downloaded from viziquer.lumii.lv 5 The ontology prefix obis: stands for the namespace http://obis.lumii.lv/2013/01/obis#</title>
        <p>ontology, as well as any other attributes (e.g. attributes whose domain
(ascription) in the ontology is not defined). The obis:view annotations, where
specified, take precedence over obis:defaultOrder annotations and it is in
general considered that the obis:view annotations are to be entered manualy.</p>
        <p>
          Figure 5 shows the mini-University ontology of Figure 1 extended with some
example user interface annotations added. The notation used is domain specific
ontology notation in the OWLGrEd ontology editor [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], it presents the
obis:textPattern annotation in a textual form, obis:isEnumerated as &lt;&lt;EnumClass&gt;&gt;
stereotype and obis:isAbstract as italics font face of the class name. The
obis:defaultOrder annotations are created automatically by the OWLGrEd/OBIS
editor and are not seen by the ontology end user.
        </p>
        <p>The option of fine-tuning the OBIS application after its initial generation is based
on the principle of availability of the OBIS application configuration also as OBIS
application itself, so OBIS itself can be used to perform its application fine-tuning.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Discussion and Conclusions</title>
      <p>
        The OBIS Framework demonstrates the feasibility of automated generation of
feature-rich information systems just from annotated data ontologies. Besides a
potential stand-alone usability for viewing or managing data structured in accordance
to the RDF format, the concepts from OBIS might appear useful in the context of
other editors of instances corresponding to structure defined by OWL ontology or
RDF Schema, such as Web Protégé [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] or TopBraid Ensemble [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] that aim at
similar ontology instance editing form functionality.
      </p>
      <p>
        Although the OBIS tool can be used to interpret data ontologies created by
different tools, its integration within the OWLGrEd tool [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] and its OBIS-extension
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] may appear beneficial for the ease of information system customization in
OBIS. We note also an important use case of OBIS in viewing RDF data
corresponding to conceptual models of data coming from relational databases [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>
        There is work in progress towards creating the custom-built reports, extending the
validation rule set, as well as extending the set of annotations, interpretable by OBIS,
however, trying to keep the annotations to be specified by the user to a
comprehensible minimum. The advances towards creating user-comprehensible UI
annotations that allow generation of fully functional UI from the annotated data
model could be of value also for UI generation from UML-style conceptual models.
Another possible venue of the OBIS extension is via integration of the visual
SPARQL query creation tool ViziQuer [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], however, this option requires a
technological re-work of the ViziQuer tool via placing it into web-based framework.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Resource</given-names>
            <surname>Description</surname>
          </string-name>
          <article-title>Framework (RDF)</article-title>
          , http://www.w3.org/RDF/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>RDF</given-names>
            <surname>Schema</surname>
          </string-name>
          [WWW] http://www.w3.org/TR/rdf-schema/
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Patel-Schneider P.F; Parsia</surname>
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>OWL 2 Web Ontology Language Structural Specification</article-title>
          and
          <string-name>
            <surname>Functional-Style Syntax</surname>
          </string-name>
          ,
          <year>2009</year>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <source>4. SPARQL 1.1 Overview. W3C Recommendation 21 March</source>
          <year>2013</year>
          [WWW] http://www.w3.org/TR/sparql11-overview/
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Linked</given-names>
            <surname>Data</surname>
          </string-name>
          , http://linkeddata.org
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Tim</given-names>
            <surname>Berners-Lee</surname>
          </string-name>
          ,
          <article-title>James Hendler and Ora Lassila, "The Semantic Web"</article-title>
          , Scientific American, May
          <year>2001</year>
          , p.
          <fpage>29</fpage>
          -
          <lpage>37</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. R2RML:
          <article-title>RDB to RDF Mapping Language</article-title>
          [WWW] http://www.w3.org/TR/r2rml/
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Blakeley: “RDF Views of SQL Data (Declarative SQL Schema to RDF Mapping)”</article-title>
          ,
          <source>OpenLink Software</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>D2RQ</given-names>
            <surname>Platform. Treating Non-RDF Relational</surname>
          </string-name>
          <article-title>Databases as Virtual RDF Graphs</article-title>
          . http://www4.wiwiss.fu-berlin.de/bizer/D2RQ/spec/
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Bagosi</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hardi</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Komla-Ebri</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanti</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rezk</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rodriguez-Muro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Slusnys</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>The Ontop framework for ontology based data access</article-title>
          . In
          <string-name>
            <surname>Zhao</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Du</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ji</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Pan</surname>
            ,
            <given-names>J. Z</given-names>
          </string-name>
          . (Eds.),
          <source>CSWS 2014</source>
          , Vol.
          <volume>480</volume>
          of Communications in Computer and Information Science, pp.
          <fpage>67</fpage>
          -
          <lpage>77</lpage>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>K.</given-names>
            <surname>Čerāns</surname>
          </string-name>
          , G.Būmans,
          <article-title>RDB2OWL: a RDB-to-</article-title>
          <string-name>
            <surname>RDF</surname>
          </string-name>
          /OWL Mapping Specification Language // J.Barzdins and M.Kirikova (eds.),
          <source>Databases and Information Systems VI, IOS Press</source>
          <year>2011</year>
          , p.
          <fpage>139</fpage>
          -
          <lpage>152</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Stardog</surname>
          </string-name>
          , http://stardog.com/
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. G.Barzdins, E.Liepins,
          <string-name>
            <given-names>M.</given-names>
            <surname>Veilande</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Zviedris: Semantic Latvia Approach in the Medical Domain</article-title>
          . // Proc. 8th International Baltic Conference on Databases and
          <string-name>
            <given-names>Information</given-names>
            <surname>Systems. H.M.Haav</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          .Kalja (eds.), TUT Press, pp.
          <fpage>89</fpage>
          -
          <lpage>102</lpage>
          . (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>K.</given-names>
            <surname>Cerans</surname>
          </string-name>
          , G. Barzdins, G. Bumans,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ovcinnikova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rikacovs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Romane</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zviedris. A Relational Database Semantic</surname>
          </string-name>
          Re-Engineering Technology and Tools //
          <source>Baltic Journal of Modern Computing (BJMC)</source>
          , Vol.
          <volume>3</volume>
          (
          <issue>2014</issue>
          ),
          <source>No. 3</source>
          , pp.
          <fpage>183</fpage>
          -
          <lpage>198</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>M.Zviedris</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Romane</surname>
            , G.Barzdins,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Cerans</surname>
          </string-name>
          .
          <source>Ontology-Based Information System // Proceedings of JIST'</source>
          <year>2013</year>
          ,
          <string-name>
            <surname>LNCS</surname>
          </string-name>
          , Vol.
          <volume>8388</volume>
          ,
          <year>2014</year>
          , pp.
          <fpage>33</fpage>
          -
          <lpage>47</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Barzdins</surname>
            , J.; Barzdins,
            <given-names>G.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Cerans</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Liepins</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Sprogis</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>OWLGrEd: a UML Style Graphical Notation and Editor for OWL 2</article-title>
          .
          <source>In Proc. of OWLED</source>
          <year>2010</year>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Zviedris</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barzdins</surname>
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2011</year>
          ),
          <article-title>ViziQuer: A Tool to Explore and Query</article-title>
          SPARQL Endpoints // The Semantic Web: Research and Applications, LNCS,
          <year>2011</year>
          , Volume
          <volume>6644</volume>
          /
          <year>2011</year>
          , pp.
          <fpage>441</fpage>
          -
          <lpage>445</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>K.</given-names>
            <surname>Čerāns</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ovčiņņikova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Liepiņš</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Sproǵis</surname>
          </string-name>
          ,
          <source>Advanced OWL 2</source>
          .0 Ontology Visualization in OWLGrEd // A.Caplinskas,
          <string-name>
            <given-names>G.</given-names>
            <surname>Dzemyda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Lupeikiene</surname>
          </string-name>
          ,
          <string-name>
            <surname>O.</surname>
          </string-name>
          Vasilecas (eds.),
          <source>Databases and Information Systems VII, IOS Press, Frontiers in Artificial Intelligence and Applications</source>
          , Vol
          <volume>249</volume>
          ,
          <year>2013</year>
          , pp.
          <fpage>41</fpage>
          -
          <lpage>54</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>19. WebProtege, http://webprotege.stanford.edu</mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>20. TopBraid Ensemble, http://www.topquadrant.com/product/TB_Ensemble.html</mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>