<!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>On Synergies between Model Transformations and Semantic Web Technologies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Robert Bill</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Simon Steyskal</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manuel Wimmer</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gerti Kappel</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Siemens AG Österreich</institution>
          ,
          <addr-line>Siemensstrasse 90, 1210 Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Vienna University of Technology</institution>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2014</year>
      </pub-date>
      <fpage>31</fpage>
      <lpage>40</lpage>
      <abstract>
        <p>The integration of heterogeneous data is a reoccurring problem in different technical spaces. With the rise of model-driven engineering (MDE), much effort has been spent in developing dedicated transformation languages and accompanying engines to transform, compare, and synchronize heterogeneous models. At the same time, ontologies have been proposed in the Semantic Web area as the main mean to describe the intension as well as the extension of a domain. While dedicated languages for querying and reasoning with ontologies have been intensively studied, specific support for integration concerns leading to executable transformations is rare compared to MDE. Based on previous studies which relate metamodels and models to ontologies, we discuss in this paper synergies between transformation languages of MDE, in particular Triple Graph Grammars (TGGs), and Semantic Web technologies (SWTs), namely OWL/SPARQL. First, we show how TGGs are employed to define correspondences between ontologies and how these correspondences are expressed in SPARQL. Second, we show how reasoning support of SWTs is applied to allow for underspecified model transformation specifications as well as how the different assumptions on existing knowledge effect transformations. We demonstrate these aspects by a common case study.</p>
      </abstract>
      <kwd-group>
        <kwd>Model Transformation</kwd>
        <kwd>Model Integration</kwd>
        <kwd>Triple Graph Grammars</kwd>
        <kwd>OWL</kwd>
        <kwd>SPARQL</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        The integration of heterogeneous data has first emerged in the database area [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
However, data integration is a reoccurring problem, not only in the database area, but in
different technical spaces [
        <xref ref-type="bibr" rid="ref11 ref8">8, 11</xref>
        ]. With the raise of model-driven engineering (MDE),
much effort has been spent in developing dedicated transformation languages and
accompanying engines to transform, compare, and synchronize heterogeneous models.
      </p>
    </sec>
    <sec id="sec-2">
      <title>At the same time, ontologies have been proposed in Semantic Web to describe the</title>
      <p>intension as well as the extension of a domain. While dedicated languages for querying
and reasoning with ontologies have been intensively studied (e.g., classification of
individuals and consistency checking are provided by standard reasoner), specific support
for integration concerns leading to executable transformations is rare.</p>
      <p>
        In order to understand the differences and commonalities between MDE and
Semantic Web technologies (SWTs), several studies have investigated about the languages
used in both fields to describe the domain of discourse [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. Thus, bridges are already
available between these two worlds for transforming metamodels and corresponding
models to ontologies and vice versa. Some studies go also beyond purely structural
information [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], but bridges concerning dynamic information are still mostly
unexplored. Moreover, for specific domains, such as configuration management [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], both
technologies are applied, but mostly in an isolated manner as we currently explore in a
recent project3.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Based on previous studies which relate metamodels and models to ontologies [5,10],</title>
      <p>
        we discuss in this paper synergies between transformation languages of MDE, in
particular Triple Graph Grammars (TGGs) [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], and SWTs, namely a combination of
OWL/SPARQL. First, we show how TGGs are employed to define correspondences
between ontologies visualized as metamodels and how these correspondences are
operationalized by a compilation of TGGs to OWL/SPARQL. Second, we show how
reasoning support of SWTs is applicable to allow for underspecified model transformation
specifications, i.e., the concrete types of instances are assigned in a post-processing
step using OWL reasoner. Third, we discuss how switching between the closed world
assumption (CWA) to an open world assumption (OWA) is beneficial for particular
integration scenarios where only partial knowledge of existing models is present. We
demonstrate these aspects by a common case study.
      </p>
    </sec>
    <sec id="sec-4">
      <title>The rest of this paper is structured as follows. In the next section, we introduce the</title>
      <p>running example for this paper as well as the technological prerequisites. In Section 3,
we discuss the mapping between TGGs and OWL/SPARQL in a general form, whereas
in Section 4 we demonstrate the compilation of TGGs to OWL/SPARQL by-example
and discuss how features of ontologies may be exploited for model transformations. In</p>
    </sec>
    <sec id="sec-5">
      <title>Section 5 we discuss related work before we conclude in Section 6.</title>
      <p>2
2.1</p>
      <sec id="sec-5-1">
        <title>Preliminaries</title>
        <sec id="sec-5-1-1">
          <title>Motivating Example</title>
          <p>As an example we will illustrate how heterogeneous views on computer networks can
be joined (cf. Fig. 1). The first view comprises the physical network structure
including cables of various types and speed as well as computers. The second view contains
the application structure of the network, i.e., various computers are running different
services which might require each other. In that case, a connection to a matching
service is required. Connections can be modeled by their physical structure, as well as
their logical network structure. By using TGGs we are able to define correspondences
between both structures, which can be used to either ( ) express graph transformation
rules to transform individuals from one schema to another or ( ) check whether or
not such alignments hold for given models. Extending those correspondence definitions
with SWTs, allows even more sophisticated reasoning, inferencing, and querying tasks.
3 http://cosimo.big.tuwien.ac.at</p>
          <p>Device
name:FString
networkCables</p>
          <p>Computer *
utilization:FDouble</p>
          <p>
            Router
slots:FInteger
maxBandWidth:FDouble
curBandWidth:FDouble
(a)
TGGs have first been introduced by Andy Schürr [
            <xref ref-type="bibr" rid="ref24">24</xref>
            ]. A TGG rule combines elements
from a left model (LM), a right model (RM) and a correspondence model (CM). Each
TGG rule contains a left hand side graph (LG) conforming to LM, a right hand side
graph (RG) conforming to RM and a correspondence graph (CG) conforming to CM
which connects elements from LG and RG. Vertices and edges may not be deleted by
any rule, they can only be preserved or created. In contrast to usual graph transformation
rules, TGG rules are inherently bidirectional. A TGG engine searches for rule
applications creating the required input graphs and creates elements of all other graphs during
that process. For example, in a transformation scenario an input graph for LM would
result in a graph for CM and RM. TGG rules might also have additional constraints,
e.g., negative application conditions or attribute constraints, also restricting the value of
an attribute depending on attribute values of other objects in the TGG rule.
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>The left-hand side of Fig. 5 shows a simple example of a TGG rule of a computer</title>
      <p>network that relates connections of the same speed without declaring them equal. Black
elements denote elements which have been matched already, green elements are
elements which are matched or created then. In this case, the difference between both
models is only a syntactical one.
2.3</p>
      <p>Semantic Web Technologies (SWTs)
RDF &amp; OWL. The Resource Description Framework (RDF)4 is a framework to
describe and represent information about resources and is both human-readable and
machine-processable, which enables the possibility to easily exchange information
among different applications using RDF triples.</p>
    </sec>
    <sec id="sec-7">
      <title>In RDF everything is a resource, uniquely identified by its URI and all data is repre</title>
      <p>sented as (, ,  ) triples, where subjects and predicates are URIs
and objects can either be literals (strings, integers, . . . ) or URIs.</p>
    </sec>
    <sec id="sec-8">
      <title>Since RDF itself does not contain sophisticated semantics to express characteristics of concepts or to define more expressive relationships among them, the Web Ontology</title>
      <p>
        4 http://www.w3.org/TR/rdf-mt/
Language (OWL)5 was developed. Introducing OWL allows the usage of reasoning
systems such as Pellet [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], FaCT++ [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] or HermiT [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] to ( ) infer new knowledge
and ( ) detect inconsistencies based on the modeled semantics.
      </p>
      <p>
        SPARQL. The Protocol And RDF Query Language (SPARQL) is basically the standard
query language for RDF6. Its syntax (cf. Figs. 2-4) is highly influenced by an RDF
serialization format called Turtle [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and SQL. In its current version, SPARQL allows
besides basic query operations such as union of queries, filtering, sorting and ordering
of results as well as optional query parts, the use of aggregate functions (SUM, AVG,
MIN, MAX, COUNT,...), the possibility to use subqueries, perform update actions
via SPARQL Update and several other requested features as indicated in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].7
      </p>
      <p>
        Another important feature of SPARQL are CONSTRUCT queries, which allow the
construction of new RDF graphs based on a previously matched (against one ore more
input graphs) SPARQL graph pattern (cf. Fig. 3). Their main purpose lies in data
integration scenarios, where data from one ore more data sources have to be normalized to
fit a common schema [
        <xref ref-type="bibr" rid="ref19 ref23">19, 23</xref>
        ].
}
3
SELECT ?a ?name
WHERE {
?a a :Device .
?a :name ?name .
      </p>
      <sec id="sec-8-1">
        <title>Aligning TGGs and SWTs</title>
        <p>CONSTRUCT {</p>
        <p>?a :hasName true .
}
WHERE {
?a a :Device .</p>
        <p>
          ?a :name ?name .
}
In the following, we map basic TGG rules to SPARQL queries. The TGG rule definition
is based on [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] and extended by labels. Advanced features of graph transformations like
multi–nodes are not supported. Subsequently, we discuss two benefits of using SWTs:
( ) automatic type inference and ( ) reasoning under CWA and OWA.
Definition 1 (E–Graph). A labeled E–Graph  = (  ,   ,   ,  NA,  EA, (src ,
trg ) ∈{ , EA,EA} ,  ) consists of graph vertices   , data vertices   , graph edges, node
attribute edges and edge attribute edges   ,  NA,  EA, source and target edge
functions src and trg mapping edges to corresponding vertices and a labeling function
 defining a label for each vertex and edge. As shorthand we use src( ) and trg( ) to
denote source and target edge functions operating on edges of any kind.
Definition 2 (Typegraph). A typegraph TG is an E-Graph specifying the relation
between types. A type morphism  maps nodes and edges of a graph to the corresponding
nodes and edges in the type graph.
5 http://www.w3.org/TR/owl2-overview/
6 http://www.w3.org/TR/sparql11-overview/
7 For a comprehensive overview on the semantics of SPARQL queries see [
          <xref ref-type="bibr" rid="ref17 ref22">17, 22</xref>
          ].
        </p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>DSIG algebra.</title>
      <p>. . . , {}
LG
),  
=
Definition 3 (Triple graph). A triple graph TRG = (L G−− ←
of three E–Graphs LG, CG and TG and morphisms   and   mapping corresponding
RG) consists
  C G→− −  
nodes from the correspondence graph to other graphs.</p>
      <p>Definition 4 (TGG rule). A parametrized TGG rule TGG = (SG, ZG, ac) consists of
a source triple graph SG, a target triple graph ZG ⊃
For the sake of simplicity, we consider application conditions as boolean formulas using
∧ and ∨ , over atomic positive application conditions (PACs) and negative application
conditions (NACs) defined as triple graphs which might share vertices with each other
SG, and application conditions ac.
and SG and TG.</p>
      <p>Example 1. The TGG rule r2n = (tr  , tr  , true) represented in Fig. 5 could be
specified as follows: The type graph of both models is derived from the metamodel.
For example, a subset of the typegraph for network1 could be specified as  n1 =
({  n1 ,  n1 } , { double} , { sn1 ,  n1 } , { bn1 } , }{ , { ( n1 ,  n1 ), ( n1 ,  n1 )} , { ( n1 ,  n1 ),
( n1 ,  n1 )} ), { (  1,  n1 )} , { ( n1 , double)} , {} , }{ ) combined with a standard double
The source graph of TGG rule tr 
= (LG − − ←
 
LG = ({  1,  2} , ∅ , . . . , ∅ ), CG = ({ g2c1, g2c2} , ∅ , . . . , ∅ ), TG
 = ({ cb1, cb2} , ∅ ,
= ∅ ,</p>
      <p>= ∅ . The target graph tr  = (LG − − ←
LG ∪</p>
      <p>({  1} , {  } , {  1,  1} , {  1} , ∅ , { ( 1,  1), ( 1,  1)} , { ( 1,  1), ( 1,  2)} ,
{ (,  1)} , { (,  )} , ∅ , ∅ ), CG

= CG
 ∪
(
}{
, ∅ , . . . , ∅ ), RG

= RG ∪
({  1} , {  } ,</p>
      <sec id="sec-9-1">
        <title>P. Type TGG</title>
        <p>W c,m
W c,m  1 ̸</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>Vertex</title>
      <p>Vertex  1,  2,
tive matching</p>
      <sec id="sec-10-1">
        <title>SPARQL</title>
        <p>? ( ) a  ( ( )).</p>
        <p>=  2, injec- FILTER (? ( 1) != ? ( 2)).
C cr
W c,m
C cr
m,cr
m,cr
m
m
W c
W c
C
C
W
W
C
C
W
W
W</p>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>Vertex</title>
    </sec>
    <sec id="sec-12">
      <title>Edge</title>
    </sec>
    <sec id="sec-13">
      <title>Edge</title>
    </sec>
    <sec id="sec-14">
      <title>Vertex</title>
    </sec>
    <sec id="sec-15">
      <title>Edge</title>
    </sec>
    <sec id="sec-16">
      <title>Vertex</title>
    </sec>
    <sec id="sec-17">
      <title>Edge</title>
    </sec>
    <sec id="sec-18">
      <title>Vertex</title>
    </sec>
    <sec id="sec-19">
      <title>Edge</title>
      <p>→↦
→↦</p>
    </sec>
    <sec id="sec-20">
      <title>Mapping  1</title>
      <p>tt or ts</p>
    </sec>
    <sec id="sec-21">
      <title>Mapping  1</title>
      <p>tt or ts</p>
    </sec>
    <sec id="sec-22">
      <title>Atomic PAC ac</title>
      <p>Atomic NAC ac
ac1(∧|∨
)ac2
? ( ) a  ( ( )).
? ( ( )) dom( ): ( ) ? ( ( )).
? ( ( )) dom( ): ( ) ? ( ( )).
? ( ) tgg:hasMatch true.</p>
      <p>? ( ( )) tgg:hasMatch_dom( )_ ( ) ? ( ( )).</p>
      <p>FILTER NOT EXISTS {? ( ) tgg:hasMatch true.}
FILTER NOT EXISTS {? ( ( ))
tgg:hasMatch_dom( )_ ( ) ? ( ( ))}
FILTER EXISTS {? ( ) tgg:hasMatch true.}
FILTER EXISTS {? ( ( )) tgg:hasMatch_dom( )_ ( )
? ( ( ))}
m,cr  2 from  ss,  st, ? ( 1) owl:sameAs ? ( 2)
m,cr  2 from  ss,  st, ? ( 1) owl:sameAs ? ( 2)</p>
      <p>BIND (EXISTS {&lt;expand ac acc. to
Tab. 1&gt;}) AS ?gn(ac)
BIND (NOT EXISTS
Tab. 1&gt;}) AS ?gn(ac)</p>
      <p>{&lt;expand ac acc. to
applied recursively until the atomic operations.</p>
      <p>Full AC ac = FILTER (?gn(ac1) (&amp;&amp;/||) ?gn(ac2)) or rather
In this case, the specific match of vertices in a TGG rule has to be stored to be able
to subsequently apply the constraint. Thus, attributes :hasSwrlRule_name_index
might be set true to specify that an element is used as element nr. index in the SWRL
rule name. In such a way, not only conditions in the TGG can be formulated, but also
invariants of each individual model or the merged model. Simple invariants may also be
modeled directly in OWL. In the following, we will show an example to illustrate how
this may help reducing the complexity of TGG rules significantly.
Automatic Type Inference. Considering the two views on an imaginary network,
one might distinguish the creation of Coppercables and Glassfibrecables
based on the speed of a correlating Connection between two previously aligned
Devices and Connectables (e.g. creating a Glassfibrecable if the speed
exceeds a certain threshold or a Coppercable otherwise). Although such
distinctions can be modeled with TGGs, at least two TGG rules (in our case; one matching</p>
    </sec>
    <sec id="sec-23">
      <title>Coppercable and one matching Glassfibrecable) would be necessary.</title>
      <p>A more convenient way to model such a behavior can be achieved by out-sourcing
the type inference to OWL reasoners and only define one TGG rule, which describes the
more general Cable and Connection correspondence as depicted in Figure 5 (with
its corresponding SPARQL CONSTRUCT query). The constraints itself (i.e., defining
the concept Glassfibrecable to be equivalent to an anonymous concept which
is defined as Cable having a speed with a value over 17) can be directly modeled
within the ontology using OWL axioms8 and were generated during the initial model to
ontology transformation .</p>
      <p>TGG rule example
physical (namespace o1)
correspong1:Device + source dence
+ k1:Cable (ns. c)
bandWidth&lt;=&lt;n gc1:D2C
g2:Device + target
logical (namespace o2)
g3:Connectable + source
+ c1:Connection
speed&lt;=&lt;n
g4:Connectable + target
Metamodel excerpt (namespace o1)</p>
      <p>Cable
bandWidth:&lt;Double</p>
      <p>gc:2G:D2c2C
inv:&lt;bandWidth&lt;&lt;&lt;17 inv:&lt;bandWidth&lt;&gt;=&lt;17</p>
      <p>CopperCable</p>
      <p>GlassFibreCable</p>
      <p>CONSTRUCT {
?k1 a o1:Cable .
?k1 o1:source ?g1 .
?k1 o1:target ?g2 .
?k1 o1:bandWidth ?n .
?k1 tgg:hasMatch true .</p>
      <p>?c1 tgg:hasMatch true .
} WHERE {
?gc1 a c:D2C. ?gc2 a c:D2C.
?g1 owl:sameAs ?gc1 .
?g2 owl:sameAs ?gc2 .
?g3 owl:sameAs ?gc1 .
?g4 owl:sameAs ?gc2 .
?c1 o2:source ?g3 .
?c1 o2:target ?g4 .
?c1 o2:speed ?n .</p>
      <p>FILTER (?gc1 != ?gc2) .</p>
      <p>FILTER (?g1 != ?g2) .</p>
      <p>FILTER (?g3 != ?g4) .</p>
      <p>FILTER EXISTS</p>
      <p>{?gc1 tgg:hasMatch true} .</p>
      <p>FILTER EXISTS</p>
      <p>{?gc2 tgg:hasMatch true} .</p>
      <p>FILTER NOT EXISTS</p>
      <p>{?c1 tgg:hasMatch true} .</p>
      <p>
        }
Reasoning under Open and Closed World Assumption. One of the major benefits
of SWTs for integration scenarios are their well defined semantics and the extensive
reasoner support as already discussed previously. With OWL and OWL reasoners it is
8 cf. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] for a comprehensive list of OWL axioms
e.g., possible to describe cardinality constraints, perform automatic type inferencing as
discussed above and to check for inconsistency in the given models.
      </p>
    </sec>
    <sec id="sec-24">
      <title>While Semantic Web languages are based on OWA (i.e., if a statement is not ex</title>
      <p>
        plicitly stated, it does not mean that it does not exist), software engineering languages
are mostly based on CWA (i.e., if a statement is not present, it does not exist) [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
To deal with this issue, we translate parts9 of the constraints expressed as OWL
axioms into SPARQL queries and query for the presence of individuals which violate
those constraints. E.g., consider the cardinality constraint computers exactly 2
Computer for concept System expressed in OWL Manchester Syntax10. The
answer to the question whether or not a particular System has the right amount of
Computers, would not be directly decidable for the OWA but for the CWA with the
support of SPARQL as depicted in Listing 1.
      </p>
      <p>ASK WHERE {
{ SELECT (count(?b) AS ?number) ?a WHERE {
?a a :System .</p>
      <p>?a :computers ?b . } GROUP BY ?a }
FILTER(?number != 2)}</p>
    </sec>
    <sec id="sec-25">
      <title>Listing 1. ASK Query which returns true if a System has not exactly 2 Computers</title>
      <p>4</p>
      <sec id="sec-25-1">
        <title>Related Work</title>
        <p>We discuss three lines of related work: ( ) approaches for bridging models and
ontologies, ( ) approaches for transforming transformations to SWTs, and ( ), approaches
directly using SWTs to encode model transformations.</p>
      </sec>
    </sec>
    <sec id="sec-26">
      <title>Bridging models and ontologies. Combining modeling approaches steaming from</title>
      <p>
        MDE with ontologies has been studied in the last decade [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. There are several
approaches to transform Ecore-based models to OWL and back, e.g., cf. [
        <xref ref-type="bibr" rid="ref31 ref9">9, 31</xref>
        ]. In
addition, there exist approaches that allow for the definition of ontologies in software
modeling languages such as UML by using dedicated profiles [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Moreover, there
are also approaches which combine the benefits of models and ontologies such as done
in [
        <xref ref-type="bibr" rid="ref14 ref16">14, 16</xref>
        ]. Not only the purely structural part of UML is considered, but some works
also target the translations of constraints between these two technical spaces by using
an intermediate format [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. We build on these mentioned approaches, but we focus on
correspondence definitions and their execution as transformations.
      </p>
    </sec>
    <sec id="sec-27">
      <title>Transforming transformations to SWTs. Concerning the definition and execution of</title>
      <p>
        model transformations based on SWTs, we are aware of two approaches. First, [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]
propose the usage of an ATL-inspired language for defining mappings between ontologies.
Thus, uni-directional transformations are implementable for ontologies as it is known
from model transformations. Another approach is presented in [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] which translates
parts of ATL transformations to ontologies for checking the consistency of
transformation rules, e.g., overlaps between rules in terms of overlapping matches. In our work,
we follow this line of research, but we consider bi-directional transformations specified
in TGGs. Thus, in our translations to ontologies we have to consider not only source to
9 The decision, which constraints have to be translated, highly depends on the respective
integration scenario.
10 http://www.w3.org/TR/owl2-manchester-syntax/
target transformations, but we have to encode comparison and synchronization
transformations as well in SPARQL.
      </p>
    </sec>
    <sec id="sec-28">
      <title>Specifying transformations with SWTs. Finally, there are approaches which shift the</title>
      <p>
        definition of the model transformations to the SWTs. For instance, in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] it is proposed
to use SWRL to define the correspondences between models to allow for model
synchronization. In [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], ontology matching tools are applied to search for correspondences
between metamodels and to derive from these correspondences model transformations.
In the context of this work, we have the assumption that correspondences are defined
based on models using TGGs, but at the same time we explored which benefits from
ontology reasoning may be transferred to model transformation approaches.
5
      </p>
      <sec id="sec-28-1">
        <title>Conclusion and Further Work</title>
        <p>In this paper we have outlined an initial mapping between TGGs and OWL/SPARQL.
Especially, new features of the latest SPARQL version helped in defining a
comprehensive mapping between these languages. Moreover, we also explored how reasoning
capabilities can be leveraged for underspecified model transformations.</p>
      </sec>
    </sec>
    <sec id="sec-29">
      <title>While the initial results of applying our approach seem promising, both from a</title>
      <p>
        mapping point of view and usage of reasoning capabilities for model transformations,
further investigation are planned such as considering a mapping between TGGs and
SWRL. Empirical studies are planned as well in the area of configuration management
together with our industry partner Siemens AG Österreich. In particular, for performing
distributed configuration management [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] where several different models and reasoners
have to be connected, we plan to apply our approach to provide the necessary
integration means.
      </p>
      <p>Acknowledgment: This work has been funded by the Vienna Business Agency
(Austria), in the programme ZIT13 plus, within the project COSIMO (Collaborative
Configuration Systems Integration and Modeling) under grant number 967327.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>David</given-names>
            <surname>Beckett</surname>
          </string-name>
          and
          <string-name>
            <given-names>Tim</given-names>
            <surname>Berners-Lee</surname>
          </string-name>
          .
          <article-title>Turtle-terse RDF triple language</article-title>
          .
          <source>W3C Team Submission</source>
          ,
          <volume>14</volume>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. Juan de Lara, Roswitha Bardohl, Hartmut Ehrig, Karsten Ehrig, Ulrike Prange, and
          <string-name>
            <given-names>Gabriele</given-names>
            <surname>Taentzer</surname>
          </string-name>
          .
          <article-title>Attributed graph transformation with node type inheritance</article-title>
          .
          <source>Theoretical Computer Science</source>
          ,
          <volume>376</volume>
          (
          <issue>3</issue>
          ):
          <fpage>139</fpage>
          -
          <lpage>163</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Dragan</given-names>
            <surname>Djuric</surname>
          </string-name>
          , Dragan Gasevic, Vladan Devedzic, and
          <string-name>
            <given-names>Violeta</given-names>
            <surname>Damjanovic</surname>
          </string-name>
          .
          <article-title>A UML Profile for OWL Ontologies</article-title>
          .
          <source>In Proc. of MDAFA</source>
          , pages
          <fpage>204</fpage>
          -
          <lpage>219</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Andreas</surname>
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Falkner</surname>
            , Alois Haselböck, Gottfried Schenner, and
            <given-names>Herwig</given-names>
          </string-name>
          <string-name>
            <surname>Schreiner</surname>
          </string-name>
          .
          <article-title>Modeling and solving technical product configuration problems</article-title>
          .
          <source>AI EDAM</source>
          ,
          <volume>25</volume>
          (
          <issue>2</issue>
          ):
          <fpage>115</fpage>
          -
          <lpage>129</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Dragan</given-names>
            <surname>Gasevic</surname>
          </string-name>
          , Dragan Djuric, and
          <string-name>
            <given-names>Vladan</given-names>
            <surname>Devedzic</surname>
          </string-name>
          .
          <article-title>Model Driven Engineering and Ontology Development (2</article-title>
          . ed.). Springer,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. OWL Working Group.
          <article-title>OWL 2 Web Ontology Language</article-title>
          .
          <source>W3C recommendation</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. Frank Hermann, Hartmut Ehrig, Fernando Orejas, Krzysztof Czarnecki, Zinovy Diskin, Yingfei Xiong, Susann Gottmann, and Thomas Engel.
          <article-title>Model synchronization based on triple graph grammars: correctness, completeness and invertibility</article-title>
          .
          <source>SoSyM</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>29</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Zhenjiang</given-names>
            <surname>Hu</surname>
          </string-name>
          , Andy Schürr, Perdita Stevens,
          <string-name>
            <given-names>and James F.</given-names>
            <surname>Terwilliger</surname>
          </string-name>
          .
          <article-title>Dagstuhl seminar on bidirectional transformations (bx)</article-title>
          .
          <source>SIGMOD Record</source>
          ,
          <volume>40</volume>
          (
          <issue>1</issue>
          ):
          <fpage>35</fpage>
          -
          <lpage>39</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Gerti</given-names>
            <surname>Kappel</surname>
          </string-name>
          , Elisabeth Kapsammer, Horst Kargl, Gerhard Kramler, Thomas Reiter, Werner Retschitzegger, Wieland Schwinger, and
          <string-name>
            <given-names>Manuel</given-names>
            <surname>Wimmer</surname>
          </string-name>
          .
          <article-title>Lifting Metamodels to Ontologies: A Step to the Semantic Integration of Modeling Languages</article-title>
          .
          <source>In Proc. of MODELS</source>
          , pages
          <fpage>528</fpage>
          -
          <lpage>542</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Gerti</surname>
            <given-names>Kappel</given-names>
          </string-name>
          , Horst Kargl, Gerhard Kramler, Andrea Schauerhuber, Martina Seidl,
          <string-name>
            <given-names>Michael</given-names>
            <surname>Strommer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Manuel</given-names>
            <surname>Wimmer</surname>
          </string-name>
          .
          <article-title>Matching metamodels with semantic systems - an experience report</article-title>
          .
          <source>In Proc. of BTW Workshops</source>
          , pages
          <fpage>38</fpage>
          -
          <lpage>52</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ivan</surname>
            <given-names>Kurtev</given-names>
          </string-name>
          , Mehmet Aksit, and
          <string-name>
            <given-names>Jean</given-names>
            <surname>Bézivin</surname>
          </string-name>
          .
          <article-title>Technical Spaces: An Initial Appraisal</article-title>
          .
          <source>In Proc. of CoopIS</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Sergey</given-names>
            <surname>Lukichev</surname>
          </string-name>
          .
          <article-title>Defining a subset of OCL for expressing SWRL rules</article-title>
          .
          <source>InRuleApps</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>3</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Milan</surname>
            <given-names>Milanovic</given-names>
          </string-name>
          , Dragan Gasevic, Adrian Giurca, Gerd Wagner, and
          <string-name>
            <given-names>Vladan</given-names>
            <surname>Devedzic</surname>
          </string-name>
          .
          <article-title>Towards Sharing Rules Between OWL/SWRL and UML/OCL</article-title>
          . ECEASST,
          <volume>5</volume>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. Fernando Silva Parreiras and
          <string-name>
            <given-names>Steffen</given-names>
            <surname>Staab</surname>
          </string-name>
          .
          <article-title>Using ontologies with UML class-based modeling: The TwoUse approach</article-title>
          . Data Knowl. Eng.,
          <volume>69</volume>
          (
          <issue>11</issue>
          ):
          <fpage>1194</fpage>
          -
          <lpage>1207</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Fernando Silva</surname>
            <given-names>Parreiras</given-names>
          </string-name>
          , Steffen Staab, Simon Schenk, and
          <string-name>
            <given-names>Andreas</given-names>
            <surname>Winter</surname>
          </string-name>
          .
          <article-title>Model driven specification of ontology translations</article-title>
          .
          <source>InProc. of ER</source>
          , pages
          <fpage>484</fpage>
          -
          <lpage>497</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Fernando Silva</surname>
            <given-names>Parreiras</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Steffen Staab</surname>
            , and
            <given-names>Andreas</given-names>
          </string-name>
          <string-name>
            <surname>Winter</surname>
          </string-name>
          .
          <article-title>On marrying ontological and metamodeling technical spaces</article-title>
          .
          <source>In Proc. of FSE</source>
          , pages
          <fpage>439</fpage>
          -
          <lpage>448</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Jorge</surname>
            <given-names>Pérez</given-names>
          </string-name>
          , Marcelo Arenas, and
          <string-name>
            <given-names>Claudio</given-names>
            <surname>Gutierrez</surname>
          </string-name>
          .
          <article-title>Semantics and Complexity of SPARQL</article-title>
          .
          <source>In Proc. of ISWC</source>
          , pages
          <fpage>30</fpage>
          -
          <lpage>43</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>Axel</given-names>
            <surname>Polleres</surname>
          </string-name>
          .
          <source>SPARQL1</source>
          .
          <article-title>1: New features and friends (OWL2, RIF)</article-title>
          .
          <source>In Web Reasoning and Rule Systems</source>
          , pages
          <fpage>23</fpage>
          -
          <lpage>26</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Axel</surname>
            <given-names>Polleres</given-names>
          </string-name>
          , François Scharffe, and
          <string-name>
            <given-names>Roman</given-names>
            <surname>Schindlauer</surname>
          </string-name>
          . SPARQL+
          <article-title>+ for mapping between RDF vocabularies</article-title>
          .
          <source>In Proc. of OTM</source>
          , pages
          <fpage>878</fpage>
          -
          <lpage>896</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Tirdad</surname>
            <given-names>Rahmani</given-names>
          </string-name>
          , Daniel Oberle, and
          <string-name>
            <given-names>Marco</given-names>
            <surname>Dahms</surname>
          </string-name>
          .
          <article-title>An adjustable transformation from OWL to Ecore</article-title>
          .
          <source>In Proc. of MODELS</source>
          , pages
          <fpage>243</fpage>
          -
          <lpage>257</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Federico</surname>
            <given-names>Rieckhof</given-names>
          </string-name>
          , Mirko Seifert, and
          <string-name>
            <given-names>Uwe</given-names>
            <surname>Aßmann</surname>
          </string-name>
          .
          <article-title>Ontology-based model synchronisation</article-title>
          .
          <source>In Proc. of TWOMDE Workshop</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>Simon</given-names>
            <surname>Schenk</surname>
          </string-name>
          .
          <article-title>A sparql semantics based on datalog</article-title>
          .
          <source>In Proc. of KI</source>
          , pages
          <fpage>160</fpage>
          -
          <lpage>174</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>Simon</given-names>
            <surname>Schenk</surname>
          </string-name>
          and
          <string-name>
            <given-names>Steffen</given-names>
            <surname>Staab</surname>
          </string-name>
          .
          <article-title>Networked graphs: a declarative mechanism for SPARQL rules, SPARQL views and RDF data integration on the web</article-title>
          .
          <source>In Proc. of WWW</source>
          , pages
          <fpage>585</fpage>
          -
          <lpage>594</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <given-names>Andy</given-names>
            <surname>Schürr</surname>
          </string-name>
          .
          <article-title>Specification of Graph Translators with Triple Graph Grammars</article-title>
          .
          <source>InProc. of WG Workshop</source>
          , pages
          <fpage>151</fpage>
          -
          <lpage>163</lpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Rob</surname>
            <given-names>Shearer</given-names>
          </string-name>
          , Boris Motik, and Ian Horrocks.
          <article-title>HermiT: A Highly-Efficient OWL Reasoner</article-title>
          .
          <source>In Proc. of OWLED Workshop</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Nan</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Shu</surname>
          </string-name>
          , Barron C. Housel, Robert W. Taylor, Sakti P. Ghosh, and
          <string-name>
            <surname>Vincent</surname>
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Lum. EXPRESS</surname>
          </string-name>
          :
          <article-title>A Data EXtraction, Processing, amd REStructuring System</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          .,
          <volume>2</volume>
          (
          <issue>2</issue>
          ):
          <fpage>134</fpage>
          -
          <lpage>174</lpage>
          ,
          <year>1977</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Evren</surname>
            <given-names>Sirin</given-names>
          </string-name>
          , Bijan Parsia, Bernardo Cuenca Grau, Aditya Kalyanpur, and
          <string-name>
            <given-names>Yarden</given-names>
            <surname>Katz</surname>
          </string-name>
          .
          <article-title>Pellet: A practical OWL-DL reasoner</article-title>
          . J. Web Sem.,
          <volume>5</volume>
          (
          <issue>2</issue>
          ):
          <fpage>51</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Steffen</surname>
            <given-names>Staab</given-names>
          </string-name>
          , Tobias Walter, Gerd Gröner, and Fernando Silva Parreiras.
          <article-title>Model driven engineering with ontology technologies</article-title>
          .
          <source>In Proc. of Reasoning Web</source>
          , pages
          <fpage>62</fpage>
          -
          <lpage>98</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <given-names>Dmitry</given-names>
            <surname>Tsarkov</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ian</given-names>
            <surname>Horrocks</surname>
          </string-name>
          .
          <article-title>FaCT++ description logic reasoner: System description</article-title>
          .
          <source>In Automated reasoning</source>
          , pages
          <fpage>292</fpage>
          -
          <lpage>297</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <given-names>Dennis</given-names>
            <surname>Wagelaar</surname>
          </string-name>
          .
          <article-title>Towards using OWL DL as a metamodelling framework for ATL</article-title>
          .
          <source>In Proc. of MtATL Workshop</source>
          , pages
          <fpage>79</fpage>
          -
          <lpage>85</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Tobias</surname>
            <given-names>Walter</given-names>
          </string-name>
          , Fernando Silva Parreiras, Gerd Gröner, and
          <string-name>
            <given-names>Christian</given-names>
            <surname>Wende</surname>
          </string-name>
          .
          <article-title>OWLizing: Transforming Software Models to Ontologies</article-title>
          .
          <source>In Proc. of ODiSE</source>
          , pages
          <volume>7</volume>
          :
          <fpage>1</fpage>
          -
          <issue>7</issue>
          :
          <fpage>6</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>