<!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>A DL Semantics for Reasoning over OVM-based Variability Models</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Germa´n Braun</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Matias Pol'la</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Laura Cecchi</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Agustina Buccella</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pablo Fillottrani</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alejandra Cechich</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Comisio ́n de Investigaciones Cient ́ıficas de la Provincia de Buenos Aires</institution>
          ,
          <addr-line>CIC</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Consejo Nacional de Investigaciones Cient ́ıficas y Te ́cnicas</institution>
          ,
          <addr-line>CONICET</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>Software Product Line (SPL) development has traditionally included Variability Management as a way of defining, modelling, implementing and testing variability. In this context, we have created a framework, SeVaTax, based on extensions of the Orthogonal Variability Model (OVM), and aimed at analysing properties of variability models and deriving products from an SPL. Despite several approaches have proposed techniques for automatically analysing the variability models' potential for deriving products, a formalisation of OVM-based diagrams has not been addressed yet. In this paper, we formally define the syntax and semantics of SeVaTax diagrams expressed in first order logic, introduce a DL encoding and establish the EXPTIME-membership of reasoning over SeVaTax. Based on these results, we are developing a prototype providing a back-end for the automated support of consistency checks of SeVaTax variability diagrams along with its encoding into DL knowledge bases.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Variability management [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] is one the most challenging and important activities of
the domain and application engineering phases of an SPL development. During the
domain engineering, variability must be defined, modelled, implemented, and validated
taking into account domain constraints and the flexibility the SPL should provide. Then,
during the application engineering, this variability is instantiated in order to derive new
products from the SPL. These products must consider the application requirements,
which must be validated according to specific combinations of variability constraints
imposed by the model. Particularly, a new research topic has emerged for this validation
as automated variability analysis, which focuses on a set of techniques for translating
and validating variability models by considering the anomalies or mismatches these
models may contain [
        <xref ref-type="bibr" rid="ref16 ref20 ref27 ref3">16, 20, 27, 3</xref>
        ]. On this line, checking consistency of variability
models (VM) is still a critical problem. In previous works, we have introduced a process
for implementing variability analysis [
        <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
        ]; and we have defined a framework, SeVaTax
[
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], which includes selecting variants according to the needs and characteristics of new
products, and assembling software components for those products.
      </p>
      <p>
        In the literature, several works propose different techniques and methods for the
analysis process, many of them focused on the analysis of Feature Models (FMs) [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
or OVMs but using back-end SAT solvers [
        <xref ref-type="bibr" rid="ref13 ref18 ref19 ref20 ref28 ref3 ref31 ref32">3, 31, 20, 32, 18, 13, 28, 19</xref>
        ]. In this respect,
SAT-based approaches inherit some limitations from more restrictive logics and thus
failing to reflect the finer logical structure of variability models. Particularly, SAT-based
proposals miss the relationships amongst services when embedding variability models
in CNF. As a consequence, the domain validation process involves several
productby-product SAT checks, i.e. setting CNF input formulae according to each possible
instantiation derived from the selection of services in the domain model. Therefore,
identifying inconsistency sources is hard in such approaches as has also been evaluated
in [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. Aiming at addressing these drawbacks and improving the variability analysis
process, we consider the well-known benefits of using DL to conceptual
representation in terms of classes and relationships admitting decidable reasoning. Even though
it seems to fit with our requirements, a formalisation of OVM-like diagrams is still
missing and therefore validations in existing approaches are not reliable enough either.
      </p>
      <p>Based on this motivation, in this work we propose the formalisation of SeVaTax
diagrams expressed in first order logic, and introduce an ALCI encoding allowing
extended reasoning capabilities. We also conclude that reasoning on SeVaTax diagrams
is EXPTIME w.r.t. service consistency. From these results, we are developing a
prototype providing a back-end for the automated support of consistency checks of SeVaTax
variability diagrams along with its encoding into DL knowledge bases.</p>
      <p>
        This work is structured as follows. Section 2 briefly describes the SeVaTax
framework, its graphical primitives and a required set of reasoning services to check them.
Section 3 introduces the FOL formalisation of SeVaTax diagrams and section 4 presents
the corresponding ALCI encoding together with complexity results. Finally, section 5
shows some related works and section 6 concludes with the main contributions and
future works.
The automated variability analysis process includes five components, as depicted in Fig.
1. The first component is the variability model, which may be specified by some of the
different modelling languages, such as Feature Model (FM), OVM or Constraint
Variability Language (CVL) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], among others. The second component is a translator for
transforming the graphical model into a formal representation. The output of this
translator is sent to a reasoner responsible for validating the model. The results of this
process are defined according to the next most common cases extracted from the literature:
Valid Model (VM), Valid Instantiation (VI), All Products (AP), Instantiation Number
(IN) and Problem Detection (PD). The first one, VM, determines whether is possible to
generate a product from a variability model; VI checks if the instantiation might
generate a valid product given a model and one of its configurations; AP determines all the
possible instantiations; and IN specifies the number of possible instantiations. Finally,
PD is responsible for identifying the causes which determine that a model is invalid.
      </p>
      <p>
        One of the main components of the SeVaTax framework is the graphical language
based on an OVM-extended notation for representing each SPL functionality. In
previous works [
        <xref ref-type="bibr" rid="ref5 ref6">6, 5</xref>
        ], we have already defined this model based on a functionality-oriented
methodology. That is, each functionality of the SPL is modelled as a functional
datasheet represented by a set of services, common1 and variant ones, interacting among
them for performing the functionality. Each datasheet includes a set of hierarchical
structures, where each structure is composed by a root service and a set of services
(variation points or variants). Then, during the derivation process, these variants are
selected configuring a new product and providing flexibility to the SPL.
      </p>
      <p>
        We have defined a set of interactions that allows us to represent the
functionality as graphical notation. These interactions involve common and variant services, and
are divided into variability types for denoting the variant interactions among services;
dependencies for denoting interaction between services; and scope for specifying the
scope of each variant point [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The complete set of interactions supported in this work
(and graphically depicted in Fig. 2) are:
Variability Types:
- Mandatory variation point: it determines the selection of a variant service when the
variation point is included in the product being derived.
- Optional variation point: it specifies that zero or more variant services, associated to
the variation point, can be selected.
- Alternative variation point: it defines that only one variant service, of the set of
associated variants of the variation point, must be selected (XOR relation).
- Variant variation point: it defines that at least one variant service, of the set of
associated variants of the variation point, must be selected (OR relation).
      </p>
      <p>Dependencies:
- Requires: it specifies a relation between two variant services in which the selection of
one variant service requires the selection of the other one.
- Excludes: it is the opposite of the requires dependency specifying the exclusion of a
variant when another one is selected.
1 Common services are services which will be part of every product derived from the SPL</p>
      <p>The SeVaTax framework also provides the following primitive and scope operators,
which are out of scope of this work:
- Uses ( ) dependency: it specifies a dependence between common services,
which are not necessarily associated with a variation point.
- Global Variation Point (Global VP) ( ): it specifies that if the variation point is
instantiated in a specific way, it will be applied in that way for all functionality including
that variation point.
- Specific Variation Point (Specific VP)( ): it specifies that the instantiation of the
variation point is particular for each functionality including that variation point.</p>
      <p>A SeVaTax model provides a graphical notation depicting associations between two
specific types of services, variation point (VP) and variant (V). In this work, associations
may be variability types and dependencies. Each variability must relate one VP with a
set of at least one V or VP. Moreover, each V must be only associated to one and only
one VP.</p>
      <p>Example 1. Fig. 3 depicts alternative and mandatory variability types modelling the
variant of an operating system (OS) and the connectivity for a mobile phone,
respectively. The OS variation point allows configuring three possible products: fOS, WinCEg,
fOS, Symbiang and fOS, Androidg. The Connectivity VP configures only the
following product: fConnectivity, WIFI, USB, Bluetoothg.</p>
      <p>Towards a new implementation of the SeVaTax framework, we present a
formalisation of the OVM-based models and introduce a novel DL encoding to check diagrams
for consistency, which have not been yet combined into the very same framework.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Formalising SeVaTax Diagrams</title>
      <p>In this section we introduce the semantics of each variability type: Mandatory, Optional,
Alternative and Optional and dependencies: Requires and Excludes, in terms of first
order logic (FOL). We do not deal with either Uses dependency or scope operators. A
FOL encoding is firstly proposed for analysing general properties of models, and easing
comparisons with related approaches. In next section, this semantics is instantiated in
ALCI.</p>
      <p>Definition 1. Let be a SeVaTax diagram. We define F OL as the corresponding set
of FOL assertions representing such diagram and constructed as follows. The signature
of the F OL knowledge base includes the followings domain predicates:
– Sv1 ; :::; Svm ; Svp1 ; :::; Svpn are FOL unary predicates for services, Svj for variant
services and Svpi for variation point services,
– MAND; OPT; ALT and VAR are binary relations. However, we formalize such
variability types as r+1-ary predicates denoted as MANDr+1, OPTr+1, ALTr+1 and</p>
      <sec id="sec-2-1">
        <title>VARr+1, respectively. For instance, if x MAND fy1; :::; yrg is an association defined</title>
        <p>in , we characterise it as the FOL r+1-ary predicate: MANDr+1(x; y1; :::; yr).
– Each dependency REQ and EXC corresponds to the FOL binary predicate REQ
and EXC, respectively.</p>
        <p>Now, we proceed to formalise as a set of FOL assertions. Firstly, we introduce the
following background assertion imposing that each service may be instantiated by at
most one element. Such formulae must be specified for each variation point and variant
service in . Then, we introduce the domain axioms describing the variability types
and dependencies of SeVaTax.</p>
        <p>9x:Svpk (x) ^ :9y:(Svpk (y) ^ x 6= y)
9x:Svk (x) ^ :9y:(Svk (y) ^ x 6= y)
:9x:(Svpi (x)^Svpl (x)); 1
i; l
n;
:9x:(Svj (x)^Svl (x)); 1
i; l
m; i 6= l</p>
        <sec id="sec-2-1-1">
          <title>Mandatory: for each MANDm+1 in the signature of</title>
          <p>F OL
m
^ (Svpi (yi) _ Svi (yi)); m
i=1
m
^ (Svpi (yi) _ Svi (yi)) ! Svpk (x); m
i=1
1</p>
          <p>1
9x:MANDm+1(x; y1; :::; ym) ^ Svpk (x) !
9y1:::ym:MANDm+1(x; y1; :::; ym) ^</p>
          <p>9x; y1:::ym: MANDm+1(x; y1:::; ym) !</p>
          <p>The first and second sentences define the mandatory interaction among services,
which requires that one instance of a variation point is related to each other variant or
variation point through the predicate MANDm+1, and vice versa. The last one imposes
that the variation point, from which the variability is defined, must not be a variant of
itself.</p>
          <p>Optional: for each OPTm+1 in the signature of F OL
9x: OPTm+1(x; y1; :::; ym) ! Svpk (x) ; m
2
9x; y1:::ym: OPTm+1(x; y1:::; ym) !</p>
          <p>The first imposes that one instance of a variation point may be related to zero or
more variants or variation points through the predicate OPTm+1, while the last
sentence also imposes that the variation point, from which the variability is defined, must
not be a variant of itself.</p>
        </sec>
        <sec id="sec-2-1-2">
          <title>Alternative: for each ALTm+1 in the signature of</title>
          <p>9x:ALTm+1(x; y1:::; ym) ^ Svpk (x) !
ALTm+1(x; y1:::; ym) ^
m
M(Svpi (yi) _ Svi (yi))
i=1
9x; y1:::ym: ALTm+1(x; y1:::; ym) !
m
M(Svpi (yi) _ Svi (yi)); m
i=1</p>
          <p>! Svpk (x); m</p>
          <p>The operator is semantically equivalent to the exclusive or (XOR) operation.
Similarly, the first sentence requires that one instance of a variation point is related to
one and only one variant or variation point through the predicate ALTm+1. The two
last sentences define the same constraints than for the mandatory variability types.</p>
        </sec>
        <sec id="sec-2-1-3">
          <title>Variant: for each VARm+1 in the signature of F OL</title>
          <p>9x:VARm+1(x; y1:::; ym) ^ Svpk (x) !
VARm+1(x; y1:::; ym) ^
m
_ (Svpi (yi) _ Svi (yi))
i=1</p>
          <p>! Svpk (x) m
m
_ (Svpi (yi) _ Svi (yi)); m
i=1
9x; y1:::ym: VARm+1(x; y1:::; ym) !</p>
          <p>Lastly, the first sentence defines that one instance of a variation point is related
at least one variant or variation point through the predicate VARm+1. The two last
sentences impose the same constraints than the previous variability types.</p>
          <p>Now we define the dependencies REQ and EXC as follows. We write sentences for
only one relation REQ and only one EXC, while the remaining ones are defined by
replacing the types of services. Moreover, in both formulae, the operator is
semantically equivalent to the exclusive or (XOR) operation.</p>
          <p>Requires: 9x:REQ(x; y) ! Svpk (y)
Excludes: for any fixed k,</p>
          <p>Svk (y)
9x:EXC(x; y) ^ (Svpk (x)</p>
          <p>Svk (x)) ! :(Svpk (y) _ Svk (y))
9x:EXC(x; y) ^ (Svpk (y)</p>
          <p>Svk (y)) ! :(Svpk (x) _ Svk (x))
3.1</p>
          <p>Reasoning Services
We have characterised SeVaTax diagrams in FOL in order to allow modellers to use
this formalisation for checking relevant properties over these diagrams. Some typical
services of interest are the followings:</p>
        </sec>
        <sec id="sec-2-1-4">
          <title>Definition 2. Let be a SeVaTax diagram and F OL be the corresponding SeVaTax</title>
          <p>Knowledge Base:
- Service consistency: A service S is consistent if the SeVaTax diagram admits an
instantiation in which S has instances. Formally, F OL corresponding to admits a
model in which S has a nonempty extension.
- SeVaTax consistency: A SeVaTax diagram is consistent if it admits an instantiation,
i.e. an actual choice of variants or variation points matching the constraints imposed
by the diagram such that some service is not empty. Formally, the set of FOL assertions
corresponding to the SeVaTax diagram admits a model in which some the service has
a nonempty extension. This means that at least one product might be derived from the
variability model. This reasoning service corresponds with the query Valid Model as
defined in section 2.
- Strong SeVaTax consistency: A SeVaTax diagram is strongly consistent if for each
S (variant or variation point) the set of FOL assertions corresponding to the diagram</p>
        </sec>
        <sec id="sec-2-1-5">
          <title>F OL, admits some model such that S has a nonempty extension. This means that every</title>
          <p>service in the variability model might be derived as part of at least one product.
- Dead Service: A service S (variant or variation point) is a dead service w.r.t. F OL if
there is no model such that S has a nonempty extension. This means that some services
might never be derived as part of some product. This service corresponds with the query
Problems Detection as also defined in section 2.</p>
          <p>
            Each service defined above can be reduced to each other [
            <xref ref-type="bibr" rid="ref2">2</xref>
            ]. Moreover, the service
consistency reasoning task amounts to checking if a given service can be instantiated
and corresponds to the notion of concept consistency DLs.
4
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>DL Encoding of SeVaTax Diagrams</title>
      <p>We now define a DL formalisation of SeVaTax diagrams and prove the correctness
of the encoding. We only show the encoding for interactions between variation points
and variants so that the below assertions must be rewritten for the remaining possible
combinations. On the other hand, for sake of simplicity in this ongoing approach we
consider singleton DL classes to encode services. However, we are working in other
approaches using nominals or ABox facts to express atomic services and thus keeping
the upper bound of complexity under control.</p>
      <p>Definition 3. Let be a SeVaTax diagram. ALCI is the DL Knowledge Base
representing and constructed as ( ) = (A; R; T ) as follows:
– The set A of atomic concepts of ( ) contains the elements below:
an atomic concept (Svpi ) for each variation point Svpi .</p>
      <p>an atomic concept (Svj ) for each variant Svj .
– Let us suppose services S and Si in the SeVaTax diagram related by a variability
type (S is related to Si). Then the edge connecting the nodes S and Si is formalised
into an ALCI role rSi which represents the relation between (S) and (Si). If
both S and Si in are related by any of the Requires and Excludes dependencies
then the edge connecting the nodes S and Si is formalised into ALCI roles rRSi
and rESi , respectively. This means that each edge connecting services through any
variability type or dependency, as defined in section 2, is translated into a DL role.
– The set T of assertions of ( ) contains the following elements:
(Svpi ) v : (Svpl )
(Svj ) v : (Svl ) 1
i
n; 1
j
m; i; j 6= l
if Svpk MANDfSv1 ; :::; Svm g is in , then (for each j and for any fixed k):
9rSvj v
(Svpk )
9rSvj v
(Svj )
(Svpk ) v</p>
      <p>G9rSvj : (Svj )
1 j m
(Svj ) v 9rSvj : (Svpk ); for each (Svj ); 1
if Svpk OPTfSv1 ; :::; Svm g is in , then (for each j and for any fixed k):</p>
      <p>G
1 j m
9rSvj : (Svj ) v</p>
      <p>(Svpk )
(Svpk ) v :(9rESl : (Svl ))
(Svl ) v :(9rESl : (Svpk ))</p>
      <p>We now show that the encoding for the variability types in a is correct. For this,
we establish a correspondence between models in F OL KB and models of the
corresponding ALCI KB.</p>
      <p>and for each (Svj ) element playing the corresponding role rSvj :</p>
      <p>(Svj ) v 9rSvj : (Svpk ); for each (Svj ); 1
if Svpk ALTfSv1 ; :::; Svm g is in , then (for each j and for any fixed k):
(Svpk ) v</p>
      <p>G
1 j m
9rSvj : (Svj ) u</p>
      <p>G:9rSvl : (Svl )
1 l m
j6=l
and for the only one (Svj ) element playing the corresponding role rSvj :
(Svj ) v 9rSvj : (Svpk ); for each (Svj ); 1
if Svpk VARfSv1 ; :::; Svm g is in , then (for each j and for any fixed k):
!</p>
      <p>G
1 j m
(Svpk ) v</p>
      <p>9rSvj : (Svj )
For each (Svj ) element playing the corresponding role rSvj :</p>
      <p>(Svj ) v 9rSvj : (Svpk ); for each (Svj ); 1
if Svpk REQ Svl is in
if Svpk EXC Svl is in
, then: (Svpk ) v 8rRSl : (Svl )
, then (for any fixed k):
j
j
j
j
m
m
m
m</p>
      <sec id="sec-3-1">
        <title>Theorem 1. Let be a SeVaTax diagram, F OL the corresponding FOL formalisa</title>
        <p>tion and ALCI the ALCI KB constructed as specified above. Then a service S is
consistent in iff the corresponding concept (S) is satisfiable w.r.t. ALCI .</p>
        <sec id="sec-3-1-1">
          <title>Proof. [)] Let S be consistent service in , then there exists a model of F OL in</title>
          <p>which S has a nonempty extension. Let O = ( O; :O) be a model of F OL such that
SO 6= ;. We build a model I = ( I ; :I ) of ALCI such that I (S) 6= ;, as follows:
– I = O
– I (Svpi ) = SvOpi , for each (Svpi ) corresponding to services Svpi 2
– I (Svj ) = SvOj , for each (Svj ) corresponding to services Svj 2
– RI are all the ALCI-roles corresponding to variability types and dependencies.</p>
          <p>Each role rSIj modelling the relation between the first and the jth component of any
n + 1-ary variability type (for each arbitrary n), is defined as follows.
rSIj = f(s0; sj )g such that (s0; s1; :::; sn) 2 MANDn+1(I); 1 j n
rSI0 = f(s00; s0j )g such that (s00; s01; :::; s0n) 2 OPTn+1(I); 1 j n</p>
          <p>j
rSI00 = f(s000; s0j0)g such that (s000; s010; :::; s0n0) 2 ALTn+1(I); 1 j n
j
rSI000 = f(s0000; s0j00)g such that (s0000; s0100; :::; s0n00) 2 VARn+1(I); 1 j n
j
RI also includes rRSj and rESj for the variability dependencies REQI and EXCI .</p>
          <p>It is immediate to check that I satisfies all the assertions in ALCI . We detail the
proof for the Mandatory variability type associating a variant point to only variant
services, since the remaining possible types and dependencies are similarly proved.</p>
          <p>Let S be a variation point. As it is consistent in , SO 6= ;. Then, there exists a
variability type or dependency in which S participates. Let us suppose that this
variability type is mandatory. So, there must exist variants s1; :::; sn 2 O,and Svi (si) and
MAND(s0; s1; :::; sn) hold. Moreover:
– by definition of R, there exist rSIj roles relating s0 with each sj . As s0 2
I (Svp0 )
–
and sj 2 I (Svj ) for each j, thus both 9rSj v (Svp0 ) and 9rSj v (Svj ) hold.</p>
          <p>I (Svp0 ) participates in the mandatory association through roles rSIj and as I (Svj ) 6=
; for all j, each second element of each rSIj is a element I (Svj ), then (Svp0 ) v
1F j n 9rSvj (Svj ) holds.
– Conversely, each existing I (Svj ) participates in the corresponding rSIj , whose
first element is also I (Svp0 ), for each j. Then the assertion (Svj ) v 9rSj : (Svp0 )
holds.</p>
          <p>Hence, I satisfies the corresponding ALCI assertions for the Mandatory
variability type. The proof is similar if we consider variation points instead of variant in the
mandatory variability. Moreover, the same proof applies to the remaining variability
types and dependencies.</p>
          <p>[(] By the tree-model property, if (S) is satisfiable w.r.t. the ALCI KB then
there exists a tree-like model I = ( I ; :I ) of ALCI such that I (S) 6= ;. From such
a tree-like model we can build an instantiation O = ( O; :O) of such SO 6= ; as
follows.</p>
          <p>–
– SvOpi =
– SvOj =</p>
          <p>O = SSvp2VP I (Svp) SSv2V I (Sv), where VP and V denote the set of
variation points and variants of , respectively.</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>I (Svpi ), for all service Svpi in .</title>
        <p>I (Svj ), for all service Svj in .
– REQO = rRSj ; rRSj 2 RI for each Requires dependency in
– EXCO = rESj ; rESj 2 RI for each Excludes dependency in
– MANDn+1(O) = f(s0; s1; :::; sn) j Vin=1(s0; sj ) 2 rSIj g
– OPTn+1(O) = f(s0; s1; :::; sn) j Vin=1(s0; sj ) 2 rSIj g
– ALTn+1(O) = f(s0; s1; :::; sn) j Vin=1(s0; sj ) 2 rSIj g
– VARn+1(O) = f(s0; s1; :::; sn) j Vin=1(s0; sj ) 2 rSIj g</p>
        <p>Observe that, since O is a tree-like model, it is guaranteed that there is only one
object s0 2 SvOp that represents a variation point. Hence, by definition of mandatory
dependency there must also exist the elements sj 2 SvOj representing tuples for this
type so as the FOL assertions for MAND(s0; s1; :::sn) hold. Similarly for the other
variability types and dependencies. Finally, O correctly instantiates . tu
Theorem 2. Reasoning over SeVaTax schemes is EXPTIME w.r.t. SeVaTax service
consistency.</p>
        <p>
          Proof. By theorem 1 and ALCI complexity [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
tu
Example 2. Before ending this section, we revisit the example 3 in order to show the DL
encoding for the SeVaTax diagram showing the use of the mandatory variability type
for the Connectivity VP. The ALCI encoding for mandatory type is the following:
9rW IF I v Connectivity
9rUSB v Connectivity
9rBluetooth v Connectivity
9rW IF I v W IF I
9rUSB v U SB
9rBluetooth v Bluetooth
Connectivity v 9rW IF I :W IF I u 9rUSB:U SB u 9rBluetooth:Bluetooth
Connectivity v 9rW IF I :W IF I
        </p>
        <p>Connectivity v 9rUSB:U SB</p>
        <p>Connectivity v 9rBluetooth:Bluetooth
5</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Related Works</title>
      <p>
        Table 1 compares main works in the literature proposing variability analysis of FMs
due to, at the best of our knowledge, there does not exist any work embedding other
modelling approaches in DL. Thus, the second column of the table shows the formal
model (F.M.) used by each proposal, the third one indicates the reasoners, and the last
columns describe the questions which reasoners should be capable of answer [
        <xref ref-type="bibr" rid="ref16 ref17 ref3">16, 17, 3</xref>
        ].
On the other hand, it does exist proposals integrating OVM and SAT solvers [
        <xref ref-type="bibr" rid="ref20 ref28">20, 28</xref>
        ],
however, they present the same drawbacks explained in section 1. Then, we conclude
this section only detailing the related works whose proposals embed FMs in DL.
      </p>
      <p>Aproach F.M. Reasoner Verify</p>
      <p>
        VM VI AP NP PD
Wang et al. [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ] OWL FACT++ x x - - x
Noorian et al. [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] DL Pellet x x - - x
      </p>
      <p>
        Fan et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] DL Racer x x - -
      </p>
      <p>
        Das et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] OWL-DL RACER x x - - x
Ripon et al.[
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] OWL-DL RACER x x - - x
Ryssel et al. [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] OWL-CSP FACT++ x x - -
Rincon et al. [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] OWL - SQWRL JESS x x - - x
      </p>
      <p>
        Zaid et al. [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] OWL-DL SWRL Pellet x x - - x
      </p>
      <p>
        In Table 1, we can see the work of Wang et. al [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ] in which authors propose a
method for formalising FMs into OWL [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], by using a prototype tool (that in future
works will be available as a Prote´ge´ [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] plugin. Then, a FACT++ reasoner [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ] is
used for problem detection by providing a debugger module, which identifies the most
general conflicts and gives an explanation. Noorian et.al [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] present a translation of
FMs into DL, and use Pellet [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] and a Reiter’s algorithm [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] for solving two types
of inconsistencies (applied to structural and integrity constraints). In Fan &amp; Zhang [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]
authors present a set of translation rules for building DL knowledge bases ALCQI from
FMs. Then, the consistency of these models is checked by using the RACER reasoner
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. In Das et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and Ripon et al. [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] the consistency and detection of inconsistent
classes are evaluated according to the responses of the RACER reasoner. In Rincon et
al. [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] authors detect dead and false optional features and explain the causes in natural
language. Finally, Zaid et al. [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] detect specific classes generating inconsistencies by
the set of rules defined in SWRL [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] over the OWL model.
      </p>
      <p>
        As we can see, none of the analysed works makes an analysis of All Products (AP)
and Instantiation Number (IN) queries, which are two of the most common queries
needed in any variability analysis process. At the same time, more specific queries [
        <xref ref-type="bibr" rid="ref16 ref17 ref3">16,
17, 3</xref>
        ] are not analysed either.
6
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions and Future Work</title>
      <p>The well-known benefits of using DL to conceptual representation admitting
decidable reasoning fit with the requirements for implementing an automated variability
analysis process for the SeVaTax framework. The contributions of this work are twofold.
Firstly, the formalisation of OVM-based SeVaTax model expressed in first order logic
and secondly, a novel ALCI encoding allowing reasoning over SeVaTax. Moreover, we
establish the EXPTIME-membership of reasoning on its diagrams w.r.t. service
consistency. Until now such a formalisation of OVM-based diagrams had not been done.</p>
      <p>As future work, we plan to continue extending reasoning capabilities of our
framework. Additionally, we are currently developing a prototype providing a back-end for
the automated support of consistency checking of SeVaTax diagrams along with its
encoding into DL knowledge bases.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Artale</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kontchakov</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ryzhikov</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zakharyaschev</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Reasoning over Extended ER Models</article-title>
          .
          <source>In: Conceptual Modeling - ER</source>
          <year>2007</year>
          , 26th International Conference on Conceptual Modeling, Auckland, New Zealand (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.F</given-names>
          </string-name>
          . (eds.):
          <article-title>The Description Logic Handbook: Theory, Implementation, and Applications</article-title>
          . Cambridge University Press, New York, NY, USA (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Benavides</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Segura</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Ruiz-Corte´s, A.:
          <source>Automated Analysis of Feature Models 20 Years Later: A Literature Review. Inf. Syst</source>
          .
          <volume>35</volume>
          (
          <issue>6</issue>
          ),
          <fpage>615</fpage>
          -
          <lpage>636</lpage>
          (
          <year>Sep 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Brisaboa</surname>
            ,
            <given-names>N.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cortinas</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luaces</surname>
            ,
            <given-names>M.R.</given-names>
          </string-name>
          ,
          <source>Pol'la, M.: A Reusable Software Architecture for Geographic Information Systems Based on Software Product Line Engineering</source>
          . In: Model and Data Engineering - 5th International Conference, MEDI 2015, Rhodes, Greece,
          <source>September 26-28</source>
          ,
          <year>2015</year>
          , Proceedings. pp.
          <fpage>320</fpage>
          -
          <lpage>331</lpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Buccella</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cechich</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pol</surname>
            'la,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arias</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Doldan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Morsan</surname>
          </string-name>
          , E.:
          <article-title>Marine ecology service reuse through taxonomy-oriented spl development</article-title>
          .
          <source>Computers &amp; Geosciences -(0)</source>
          , In press (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Buccella</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cechich</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arias</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pol</surname>
          </string-name>
          'la, M.,
          <string-name>
            <surname>del Socorro</surname>
            <given-names>Doldan</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Morsan</surname>
          </string-name>
          , E.:
          <article-title>Towards systematic software reuse of gis: Insights from a case study</article-title>
          .
          <source>Computers &amp; Geosciences</source>
          <volume>54</volume>
          (
          <issue>0</issue>
          ),
          <fpage>9</fpage>
          -
          <lpage>20</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Das</surname>
            ,
            <given-names>N.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ripon</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hossain</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uddin</surname>
            ,
            <given-names>M.S.</given-names>
          </string-name>
          :
          <source>Requirement Analysis of Product Line Based Semantic Web Services. Lecture Notes on Software Engineering</source>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Fan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Zhang, N.:
          <source>Feature Model Based on Description Logics</source>
          , pp.
          <fpage>1144</fpage>
          -
          <lpage>1151</lpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>OWL 2: The Next Step for OWL</article-title>
          .
          <source>Web Semant</source>
          .
          <volume>6</volume>
          (
          <issue>4</issue>
          ),
          <fpage>309</fpage>
          -
          <lpage>322</lpage>
          (
          <year>Nov 2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          , Mo¨ller, R.:
          <article-title>RACER System Description</article-title>
          . In: Gore´,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Leitsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Nipkow</surname>
          </string-name>
          , T. (eds.)
          <source>International Joint Conference on Automated Reasoning, IJCAR'</source>
          <year>2001</year>
          , June 18-23, Siena, Italy. pp.
          <fpage>701</fpage>
          -
          <lpage>705</lpage>
          . Springer-Verlag (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Haugen</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moller-Pedersen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oldevik</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olsen</surname>
            ,
            <given-names>G.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Svendsen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Adding Standardized Variability to Domain Specific Languages</article-title>
          .
          <source>In: 2008 12th International Software Product Line Conference</source>
          . pp.
          <fpage>139</fpage>
          -
          <lpage>148</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bechhofer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tsarkov</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : OWL Rules:
          <article-title>A Proposal and Prototype Implementation</article-title>
          .
          <source>Web Semant</source>
          .
          <volume>3</volume>
          (
          <issue>1</issue>
          ),
          <fpage>23</fpage>
          -
          <lpage>40</lpage>
          (
          <year>Jul 2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Janota</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Do SAT Solvers Make Good Configurators</surname>
          </string-name>
          ? In: Software Product Lines, 12th International Conference, SPLC 2008, Limerick, Ireland, September 8-
          <issue>12</issue>
          ,
          <year>2008</year>
          , Proceedings. Second Volume (Workshops) (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Kang</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hess</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nowak</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peterson</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report</surname>
            <given-names>CMU</given-names>
          </string-name>
          /SEI-90
          <string-name>
            <surname>-</surname>
          </string-name>
          TR-
          <volume>21</volume>
          , Software Engineering Institute, Carnegie Mellon University Pittsburgh, PA. (
          <year>1990</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Knublauch</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fergerson</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Noy</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Musen</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The Prote´ge´ OWL plugin: An open development environment for semantic web applications (</article-title>
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Kowal</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ananieva</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Thu¨m, T.:
          <article-title>Explaining Anomalies in Feature Models</article-title>
          .
          <source>In: Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences. GPCE</source>
          <year>2016</year>
          , ACM, New York, NY, USA (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>von der Massen</surname>
            , T.,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Lichter</surname>
          </string-name>
          , H.:
          <article-title>Deficiencies in Feature Models</article-title>
          . In: Mannisto,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Bosch</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.) Workshop on Software Variability Management for Product Derivation - Towards Tool Support (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Mendonca</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cowan</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Decision-making coordination and efficient reasoning techniques for feature-based configuration</article-title>
          .
          <source>Science of Computer Programming</source>
          (
          <year>2010</year>
          ), coordination Models,
          <source>Languages and Applications (SAC'08)</source>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Mendonca</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wasowski</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Czarnecki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>SAT-based Analysis of Feature Models is Easy</article-title>
          .
          <source>In: Proceedings of the 13th International Software Product Line Conference</source>
          . pp.
          <fpage>231</fpage>
          -
          <lpage>240</lpage>
          . SPLC '
          <volume>09</volume>
          , Carnegie Mellon University, Pittsburgh, PA, USA (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Metzger</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pohl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heymans</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schobbens</surname>
            ,
            <given-names>P.Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saval</surname>
          </string-name>
          , G.:
          <article-title>Disambiguating the Documentation of Variability in Software Product Lines: A Separation of Concerns, Formalization and Automated Analysis</article-title>
          .
          <source>In: 15th IEEE International Requirements Engineering Conference (RE</source>
          <year>2007</year>
          ). pp.
          <fpage>243</fpage>
          -
          <lpage>253</lpage>
          (
          <year>Oct 2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Noorian</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ensan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bagheri</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Boley</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Biletskiy</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Feature Model Debugging based on Description Logic Reasoning</article-title>
          .
          <source>In: Proceedings of the 17th International Conference on Distributed Multimedia Systems, DMS 2011, October 18-20</source>
          ,
          <year>2011</year>
          , Convitto della Calza, Florence, Italy. pp.
          <fpage>158</fpage>
          -
          <lpage>164</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Pohl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          , Bo¨ckle, G.,
          <string-name>
            <surname>Linden</surname>
            ,
            <given-names>F.J.</given-names>
          </string-name>
          v.d.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer-Verlag New York, Inc., Secaucus, NJ, USA (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Pol</surname>
            'la,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buccella</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arias</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cechich</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>SeVaTax: service taxonomy selection validation process for SPL development</article-title>
          .
          <source>In: 2015 34th International Conference of the Chilean Computer Science Society (SCCC)</source>
          . pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          (
          <year>Nov 2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Reiter</surname>
          </string-name>
          , R.:
          <source>A Theory of Diagnosis from First Principles. Artif. Intell</source>
          .
          <volume>32</volume>
          (
          <issue>1</issue>
          ),
          <fpage>57</fpage>
          -
          <lpage>95</lpage>
          (
          <year>Apr 1987</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25. Rinco´n,
          <string-name>
            <given-names>L.F.</given-names>
            ,
            <surname>Giraldo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.L.</given-names>
            ,
            <surname>Mazo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Salinesi</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.</surname>
          </string-name>
          :
          <article-title>An Ontological Rule-Based Approach for Analyzing Dead and False Optional Features in Feature Models</article-title>
          .
          <source>Electron. Notes Theor. Comput. Sci</source>
          . (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Ripon</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piash</surname>
            ,
            <given-names>M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hossain</surname>
            ,
            <given-names>S.M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uddin</surname>
            ,
            <given-names>M.S.</given-names>
          </string-name>
          :
          <article-title>Semantic Web Based Analysis of Product Line Variant Model</article-title>
          .
          <source>JCEE 2014 6</source>
          (
          <issue>1</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Roos-Frantz</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Galindo</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Benavides</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , Corte´s,
          <string-name>
            <surname>A.R.</surname>
          </string-name>
          , Garcıa-Gala´n, J.:
          <article-title>Automated analysis of diverse variability models with tool support</article-title>
          .
          <source>Jornadas de Ingenierıa del Software</source>
          y de Bases de Datos (JISBD
          <year>2014</year>
          ), Ca´diz. Spain p.
          <volume>160</volume>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Roos-Frantz</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Galindo</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Benavides</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , Ruiz-Corte´s, A.:
          <article-title>FaMa-OVM: A Tool for the Automated Analysis of OVMs</article-title>
          .
          <source>In: Proceedings of the 16th International Software Product Line Conference - Volume 2. SPLC '12</source>
          ,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          , New York, NY, USA (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Ryssel</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ploennigs</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kabitzsch</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Reasoning of Feature Models from Derived Features</article-title>
          .
          <source>In: Proceedings of the 11th International Conference on Generative Programming and Component Engineering. GPCE '12</source>
          ,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          , New York, NY, USA (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Sirin</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>B.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kalyanpur</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Katz</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Pellet: A practical owl-dl reasoner</article-title>
          .
          <source>Web Semant</source>
          .
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <fpage>51</fpage>
          -
          <lpage>53</lpage>
          (
          <year>Jun 2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Sree-Kumar</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Planas</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Clariso</surname>
            <given-names>´</given-names>
          </string-name>
          ,
          <string-name>
            <surname>R.</surname>
          </string-name>
          :
          <article-title>Analysis of Feature Models Using Alloy: A Survey</article-title>
          .
          <source>In: Proceedings 7th International Workshop on Formal Methods and Analysis in Software Product Line Engineering, FMSPLE@ETAPS</source>
          <year>2016</year>
          , Eindhoven,
          <source>The Netherlands, April</source>
          <volume>3</volume>
          ,
          <year>2016</year>
          . pp.
          <fpage>46</fpage>
          -
          <lpage>60</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Sun</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Zhang,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.F.</given-names>
            ,
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <surname>H.</surname>
          </string-name>
          :
          <article-title>Formal Semantics and Verification for Feature Modeling</article-title>
          .
          <source>In: ICECCS '05: Proceedings of the 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05)</source>
          . IEEE Computer Society (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>Tsarkov</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
          </string-name>
          , I.:
          <article-title>FaCT++ description logic reasoner: System description</article-title>
          .
          <source>In: In Proc. of the Int. Joint Conf. on Automated Reasoning (IJCAR</source>
          <year>2006</year>
          . pp.
          <fpage>292</fpage>
          -
          <lpage>297</lpage>
          . Springer (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>H.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>Y.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Zhang, H.,
          <string-name>
            <surname>Pan</surname>
          </string-name>
          , J.:
          <source>Verifying Feature Models Using OWL. Web Semant</source>
          .
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <fpage>117</fpage>
          -
          <lpage>129</lpage>
          (
          <year>Jun 2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>Zaid</surname>
            ,
            <given-names>L.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kleinermann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Troyer</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Applying Semantic Web Technology to Feature Modeling</article-title>
          .
          <source>In: Proceedings of the 2009 ACM Symposium on Applied Computing. SAC '09</source>
          ,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          , New York, NY, USA (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>