<!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>Analyzing Web Service Resource Compatibility?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Irina A. Lomazova</string-name>
          <email>lomazova@mail.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ivan V. Romanov</string-name>
          <email>romanov.ekb@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>National Research University Higher School of Economics</institution>
          ,
          <addr-line>Moscow</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Program Systems Institute of the Russian Academy of Sciences</institution>
          ,
          <addr-line>Pereslavl-Zalessky</addr-line>
          ,
          <country>Russia i</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this work we consider modeling of services with work ow modules, which are a subclass of Petri nets. The service compatibility problem is to answer the question, whether two Web services t together, i.e. whether the composed system is sound. We study complementarity of service produced/consumed resources, that is a necessary condition for the service compatibility. Resources, which are produced/consumed by a Web service, are described as a multiset language. We de ne an algebra of multiset languages and present an algorithm for checking the conformance of resources for two given structured work ow modules.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Service-Oriented Computing is an emerging computing paradigm that supports
the modular design of (software) systems. Complex systems are designed by
composing less complex systems, called services.</p>
      <p>A service consists of a control structure describing its behavior and of an
interface to communicate asynchronously with other services. An interface is a
set of (input and output) channels. In order that two services can interact with
each other, an input channel of the one service has to be connected with an
output channel of the other service.</p>
      <p>
        The problem of checking services compatibility draws attention of many
researchers [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ]. A lot of di erent approaches have developed to verify the
compatibility of component Web services. Many of them utilize Petri Nets for
this purpose [
        <xref ref-type="bibr" rid="ref13 ref9">9, 13</xref>
        ]. Other models such as nite state machine are also used [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
Some of the researches deal with concrete Web service speci cations, for example
business process execution language for Web services (BPEL) [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>Checking semantical correctness, e.g. deadlock freedom, for composition of
two services is a hard problem. Even when a property is decidable, its
complexity makes it almost intractable. So, nding relatively easy to check necessary
conditions for correctness of services composition may help to nd some bugs
for low costs and avoid further veri cation.</p>
      <p>In this paper we study services resource conformance, notably whether two
services have complementary runs, such that all outputs of one service are
consumed by and enough for another service and vice versa.</p>
      <p>
        Services are modeled with work ow modules, also called open work ow nets
| WF-nets (see e.g. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]) with additional input/output places representing
input/output channels (cf. [
        <xref ref-type="bibr" rid="ref3 ref6">3, 6</xref>
        ]). The core WF-net in a work ow module describes
service control ow, and resource places represent its interface.
      </p>
      <p>Since we study services compatibility we suppose control work ow nets to
be sound WF-nets. The soundness property guarantees proper termination of
autonomous work ow processes (not taking modules interactions into account,
so that resources can be generated or consumed during a process execution
without any restrictions). Moreover, we restrict ourselves to structured
WFmoduls | an important subclass of work ow modules with control WF-nets
sound by construction.</p>
      <p>The paper is organized as follows. Section 2 contains some basic de nitions
and notions, including formal de nitions of work ow nets, work ow modules
and composition of work ow modules. In Section 3 a motivating example of two
work ow modules, modeling a part of credit allowence system, is given. In Section
4 we de ne and study a language of quasi regular expressions for describing a
work ow module resource interfaces. In Section 5 we present an algorithm for
checking resource compatibility of two structured work ow modules. Section 6
contains some conclusions.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Petri nets and work ow modules. De nitions</title>
      <p>Let S be a nite set. A multiset m over a set S is a mapping m : S ! Nat,
where Nat is the set of natural numbers (including zero), i. e. a multiset may
contain several copies of the same element.</p>
      <p>For two multisets m; m0 we write m m0 i 8s 2 S : m(s) m0(s) (the
inclusion relation). The sum and the union of two multisets m and m0 are de ned
as usual: 8s 2 S : m + m0(s) = m(s) + m0(s); m [ m0(s) = max(m(s); m0(s)).
By M(S) we denote the set of all nite multisets over S.</p>
      <p>Non-negative integer vectors are often used to encode multisets. Actually,
the set of all multisets over nite S is a homomorphic image of NatjSj.</p>
      <p>Let P and T be disjoint sets of places and transitions and let F : (P T ) [
(T P ) ! Nat. Then N = (P; T; F ) is a Petri net. A marking in a Petri net is
a function M : P ! Nat, mapping each place to some natural number (possibly
zero). Thus a marking may be considered as a multiset over the set of places.
Pictorially, P -elements are represented by circles, T -elements by boxes, and the
ow relation F by directed arcs. Places may carry tokens represented by lled
circles. A current marking M is designated by putting M (p) tokens into each
place p 2 P . Tokens residing in a place are often interpreted as resources of some
type consumed or produced by a transition ring.</p>
      <p>For a transition t 2 T an arc (x; t) is called an input arc, and an arc (t; x) |
an output arc; the preset t and the postset t are de ned as the multisets over
P such that t(p) = F (p; t) and t (p) = F (t; p) for each p 2 P .</p>
      <p>A transition t 2 T is enabled in a marking M i 8p 2 P M (p) F (p; t).
An enabled transition t may re yielding a new marking M 0 =def M t + t ,
i. e. M 0(p) = M (p) F (p; t) + F (t; p) for each p 2 P (denoted M !t M 0, or just
M ! M 0). We say that M 0 is reachable from M i there is a sequence of rings
M = M1 ! M2 ! ! Mn = M 0. For a Petri net N by R(N; m) we denote
the set of all markings reachable in M from the marking m, by R(N; m) | the
set of all markings reachable in M from its initial marking.</p>
      <p>
        Work ow nets (WF-nets) is a special subclass of Petri nets designed for
modeling work ow processes [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>A work ow net has one initial and one nal place, and every place or
transition in it is on a directed path from the initial to the nal place.
De nition 1. A Petri net N is called a work ow net (WF-net) i
1. There is one source place i 2 P and one sink place f 2 P s. t. i = f = ;;
2. Every node from P [ T is on a path from i to f .
3. The initial marking in N contains the only token in its source place.</p>
      <p>By abuse of notation we denote by i both the source place and the initial
marking in a WF-net. Similarly, we use f to denote the nal marking in a WF-net
N , de ned as a marking containing the only token in the sink place f .</p>
      <p>
        An important correctness property for WF-nets is soundness. Classical
WFnets are called sound if one can reach the nal marking from any marking
reachable from the initial marking [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The intuition behind this notion is that no
matter what happens, there is always a way to complete the execution and
reach the nal state. This soundness property is sometimes also called proper
termination and corresponds to classical soundness in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>De nition 2. A WF net N with a source place i and a sink place f is called
sound i
1. For every marking m reachable from the initial marking i, there exists a
ring sequence leading from m to the nal marking f :
8m 2 R(N ) : (i ! m) ) (m ! f );
2. The marking f is the only marking reachable from i with at least one token
in place f :
8m 2 R(N ) : m f ) m = f ;
3. There are no dead transitions in N :</p>
      <p>t
8t 2 T 9m; m0 : i ! m ! m0.</p>
      <p>
        For an arbitrary WF net soundness is decidable, but it is EXPSPACE-hard
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>Modeling work ow consists of modeling case management with the help of
sequential routing, parallelism, iteration, and conditional routing. To express
it explicitly building blocks such as the AND-split, AND-join, OR-split and
OR-join can be used. The AND-split and the AND-join are used for parallel
routing. The OR-split and the OR-join are used for conditional routing. All
these constructs can be easily expressed in Petri net formalism.
(a)
(b)
(c)
(d)</p>
      <p>
        To guarantee, that we get 'good' work ows, we are to balance
AND/ORsplits and AND/OR-joins. Clearly, two parallel ows initiated by an AND-split,
should not be joined by an OR-join. Two alternative ows created via an
ORsplit, should not be synchronized by an AND-join. When we follow these rules
we obtain structured WF-nets (see [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] for more details). Fig. 1 shows fore routing
operations used in structured WF-nets. Thus, to apply sequential operation to
two WF-nets N1 and N2 is to substitute N1 for t1, and N2 for t2 in the net,
shown in Fig. 1 (a), by substituting the source place of N1 for p1, merge the sink
place of N1 and the source place of N2 (for p2), and substitute the sink place of
N2 for p3. To apply parallel operation to WF-nets N1 and N2 is to substitute
N1 for t2, and N2 for t3 in the net, shown in Fig. 1 (b), while transitions t1; t4
are additional routing transitions here. The iteration and conditional operations
are de ned in the similar way.
      </p>
      <p>De nition 3. An atomic WF-net is a WF-net, consisting of one source place
i, one sink place f and one transition, for which i is the only input place, and f
is the only output place.</p>
      <p>A WF-net is called a structured WF-net i it can be obtained from atomic
WF-nets by successive application of routing operations, shown in Fig. 1.</p>
      <p>
        It was shown in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], that structured WF-nets are sound by construction.
      </p>
      <p>
        Following P. Martens [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], S. Stahl [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], and others to model services we use
work ow modules a | special subclass of Petri nets.
      </p>
      <p>De nition 4. A Petri net M = (P; T; F ) is called a work ow module
(WFmodule) i
1. The set P of places is a disjoint union of three sets: internal places P N ,
input places P I , and output places P O.
2. The ow relation is divided into internal ow F N (P N T ) [ (T P N )
and communication ow F C (P I T ) [ (T P O).
3. The net P M = (P N ; T; F N ) is a WF-net.
4. No transition is connected both to an input place and an output place.</p>
      <p>Within a WF-module M , the work ow net P M is called the internal process
of M and the tuple I(M ) = (P I ; P O) is called its interface. Places belonging to
the interface I(M ) are called ports. We suppose that each port in I(M ) has a
unique name. A work ow module is called structured i its internal process is a
structured WF-net.</p>
      <p>A composition of WF-modules, modeling Web services interaction, is de ned
as follows.</p>
      <p>De nition 6. Let M1; M2 be two WF-modules. A composition M1 M2 of M1
and M2 is a net N obtained from M1 and M2 by merging input ports of M1 with
output ports of M2 with the same names, and similarly output ports of M1 with
input ports of M2, i.e. p1 2 I(M1) and p2 2 I(M2) are merged i they have the
same name and one of them is an input port, while the other is an output port.</p>
      <p>An example of two WF-modules composition is shown in the next section.</p>
      <p>A composition M1 M2 of two WF-modules M1 and M2 can be easily
transformed into a WF-module as follows. Let i1; i2 be source places in M1 and
M2 correspondingly, and f1; f2 be their output places. Add to M1 M2 a new
source place i, a new sink place f , and two new transitions ti; tf , s.t. ti = fig,
ti = fi1; i2g, and tf = ff g, ti = ff1; f2g.</p>
      <p>We say that a composition M1 M2 is sound i its corresponding WF-module
is sound.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Motivating example</title>
      <p>As a motivating example we consider a model of credit allowance. The model
describes two services, represented by two WF-modules.</p>
      <p>The WF-module WFM1 in Fig. 2 models a service of a bank credit system,
that allows to estimate whether it is reasonable to loan money to this or that
person. In this model work startes from the position \p 1", where one token is
placed in the initial state. Then service sends client information to the credit
bureau (\t 1") and is waiting for the response (\p 2"). When bank system takes
the credit rating and is analyzed it (\t 3"), decision makes in position \p 3",
service can goes to the \p 1" through \t 2" for the repetition of request , or
can goes to the operation of the payment. There are two ways for that (\t 5"
and \t 6"). First, pay all accounts, which were obtained from the credit bureau
(\t 7"). Second, send information about the client, when he will pay the loan.
At the end of the each possible way bank system sends E to report about the
competition of conversation(\t 9", \t 10") and stops in position \p 8".</p>
      <p>Fig. 3 shows a WF-module, modeling a credit bureau. It is a company that
collects information from various sources and provides consumer credit
information on individual consumers for a variety of uses. Here there are four internal
places and four interface places. \p 10" is starting position, where service is
waiting for the client information from the external bank system. When it receives
necessary data from \CD", transition \t 11" res, client credit rating is
calculated, and service goes to the position \p 12". If position \CR" is enabled, that
means that bank is requesting for the credit rating. In that case credit bureau
sends this information (\CR") to the partner service(\t 12"), after that sends
an account (\A") to the bank (\t 13") and goes to the place \p 10" again.
Otherwise, if credit bureau receives end request (\E"), it goes to the nal position
\p 13" and stops.</p>
      <p>Interaction of these two services is modeled by the composition of the
corresponding WF-modules, depicted in Fig. 4. Services communicate with each
other in the following way: the bank sends all information about the person to
the credit bureau, this information is analyzed, and basing on all data credit
bureau provides a credit rating of a de nite client to the bank. This sequence of
actions may be repeated several times.</p>
      <p>While each of WF-modules WFM1 and WFM2 is sound, their composition
WFM1 M WFM2 is not sound. These services are resource incompatible, i.e.
for these services there is no executions without pending inputs and/or outputs.
In the next sections we show, how to nd out such incompatibilities.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Work ow module resources and multiset languages</title>
      <p>Let M be a structured WF-module with two disjoint sets P I of input places and
P O output places. Consider then some run for M | a sequence of states and
transition rings, starting from the initial state and coming to the nal state of
M . For each run the pair of input and output resources R( ) = (RI ( ); RO( )),
where RI ( ) 2 M(P I ) and RO( ) 2 M(P O), are de ned as multisets of
inputs/outputs consumed/produced in the course of execution. By (M ) we
denote the set of all pairs of resources for all runs in M . More formally:
De nition 7. Let M be a structured WF-module with input ports P I and output
ports P O. Then for RI 2 M(P I ) and RO 2 M(P O) we de ne (RI ; RO) 2 (M )
i f + RO 2 R(M; i + RI ).</p>
      <p>
        It is easy to note, that a pair of multisets over non-intersecting sets of places
can be considered as just one multiset. Thus for a work ow module a resource
is a multiset language [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ].
      </p>
      <p>For describing resources of structured work ow modules we de ne a special
language of quasi-regular expressions.</p>
      <p>De nition 8. Let Atom be a nite set of atoms (letters). The language of
quasiregular expressions over Atom is de ned by induction as follows:
1. 2 L;
2. a 2 L, if a 2 Atom;
3. e1 e2 2 L, if e1; e2 2 L;
4. e1 e2 2 L, if e1; e2 2 L;
5. e 2 L, if e 2 L.</p>
      <p>Semantics of L maps a quasi-regular expression e to a multiset language (e),
i.e. a set of multisets over Atom according to the following rules:
(e1); m2 2</p>
      <p>(e2)g;
[ (en) : : : , where e0 = , en = e en 1 for
1. ( ) = ;;
2. (a) = [a] for a 2 Atom;
3. (e1 e2) = fm1 + m2jm1 2
4. (e1 e2) = (e1) [ (e2);
5. (e ) = (e0) [ (e1) [ (e2)</p>
      <p>n 1.</p>
      <p>De nition 9. We say that a quasi-regular expression e is in the standard form,
i e = e1 en, where n 1, e1; : : : ; en do not contain and nested .
Proposition 2. Every quasi-regular expression can be transformed to an
equivalent quasi-regular expression in the standard form by applying equations (1{12).
Proof (Sketch). To take -operation outside we use equations 8 and 11.
Equations 10, 12 allow taking -operation outside in subexpressions without . Nested
are eliminated with the help of equation 10.</p>
      <p>Now we show, that for a structured WF-module M a quasi-regular expression
e(M ), describing interface resources (M ), can be e ectively constructed.</p>
      <p>Recall, that structured work ow nets are constructed from atomic
transitions by sequential application of four control structures: sequential routing,
conditional routing, parallel routing and iteration.</p>
      <p>Algorithm 1. (Constructing a quasi-regular expression representing
interface resources of a WF-modul).</p>
      <p>For a structured work ow module M a quasi-regular expression e(M ) can be
constructed by induction on the structure of internal process N of M :
{ for an atomic net N | a transition with input resource places p1; : : : ; pk and
output resource places q1; : : : ; qn, de ne e(N ) =?p1 ?pk !q1 !qn;
{ for N being sequential composition of N1 and N2 de ne e(N ) = e(N1)
e(N2);
{ for N being parallel composition of N1 and N2 de ne e(N ) = e(N1) e(N2);
{ for N being selective composition of N1 and N2 de ne e(N ) = e(N1) e(N2);
{ for N being an iteration of N1 and N2 de ne e(N ) = e(N1) (e(N2) e(N1)) .
Proposition 3. Let M be a structured WF-module, and let e(M ) be a
quasiregular expression, obtained for M according to the Algorithm 1. Then e(M ) =
(M ).</p>
      <p>The proof of this proposition is straightforward by induction on the structure
of the internal process of a given WF-module.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Resources compatibility</title>
      <p>We say, that two work ow modules are resource compatible, if they may execute
runs with producing/consuming mutually complimentary resources. If the
composition of two work ow modules is sound, then they are resource compatible.
However, it could be that for resource compatible modules their composition
is not sound, since resources may be outputted in a wrong order. So, resource
compatibility is a necessary, but not su cient condition for the correctness of
services composition.</p>
      <p>De nition 10. Let M1; M2 be two WF-modules with source places i1; i2 and
sink places f1; f2 correspondingly. We say that M1 and M2 are resource
compatible i f1 + f2 2 R(i1 + i2) in M1 M2.</p>
      <p>Immediately from the de nition we get that if M1 M2 is sound, then M1
and M2 are resource compatible.</p>
      <p>We show that resource compatibility is decidable for structured WF-modules.</p>
      <p>Algorithm 2. (checking resource compatibility of two structured WF-modules).
Let M1; M2 be structured WF-modules.</p>
      <p>Step 1. Construct quasi-regular expressions e(M1); e(M2).</p>
      <p>Step 2. Reduce e(M1); e(M2) to standard forms es(M1); es(M2)
correspondingly.</p>
      <p>Step 3. Construct a complementary expression es 1(M1) by changing ? for !
and vice versa in es(M1).</p>
      <p>Step 4. Check whether (es 1(M1)) \ (es(M2)) is not empty. If (es 1(M1)) \
(es(M2)) is not empty, output \YES", otherwise output \NO".</p>
      <p>Proposition 4. Let M1; M2 be two structured WF-modules. Modules M1 and
M2 are resource compatible i the output of the Agorithm 2 for M1; M2 is \YES".</p>
      <p>All steps of the Algorithm 2 except for Step 4 are already described.
Checking, whether the intersection of multiset languages (es 1(N1)) and (es(N2)) is
empty, can be reduced to solving a set of linear equations.</p>
      <p>We illustrate this algorithm by applying it to our motivation example from
Section 3.</p>
      <p>First we build quasi-regular expressions for bank and credit bureau services:
e(WFM1) = (!CD ?CR) ((?A !E) (!CD !E));
e(WFM2) =?CD (!CR !A ?CD) ?E.</p>
      <p>Then we are to reduce these expressions to regular forms. Note, that e(WFM2)
is already in a regular form, and hence e(WFM2) = es(WFM2). To reduce
e(WFM1) it is su cient to apply distributivity law (equation 8):
es(WFM1) = ((!CD ?CR) ?A !E) ((!CD ?CR) !CD !E).
Then es 1(WFM1) = ((?CD !CR) !A ?E) ((?CD !CR) ?CD ?E).</p>
      <p>Now r 2 es 1(WFM1) i r = n1 ?CD + n1 !CR + n2 !A+?E, or r = (n1 +
1) ?CD + n1 !CR+?E for some natural n1; n2 0.</p>
      <p>Similarly, r 2 es(WFM2) i r = (n + 1) ?CD + n !CR + n !A+?E for some
natural n 0.</p>
      <p>The multiset (es 1(WFM1)) \ (es(WFM2)) is not empty i at least one of
the following sets of simultaneous equations is consistent.</p>
      <p>Set 1 of equations (corresponds to the rst summand in es 1(WFM1):
n1 = n + 1 (factors of ?CD),
n1 = n (factors of !CR),
n2 = n (factors of !A),
1 = 1 (factors of ?E).</p>
      <p>Set 2 of equations (corresponds to the second summand in es 1(WFM1):
n1 = n + 1 (factors of ?CD),
n1 = n (factors of !CR),
0 = n (factors of !A),
1 = 1 (factors of ?E).</p>
      <p>Both these sets of equations are obviously inconsistent. So, we can
immediately conclude, that the services of our bank example in Section 3 are not
comparable.</p>
      <p>Note, that Algorithm 2 has a polynomial on the size of WF-module time
complexity.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>In this paper we have presented a new approach for detecting incompatibility of
Web services by analysis of resource compatibility of their structured work ow
models. The resource compatibility is a necessary condition for soundness of
composition of work ow models.</p>
      <p>We introduce a language of quasi-regular expressions for describing multiset
languages, and use this language for representing interface resources of structured
work ow modules. Checking resource compatibility is then reduced to checking
emptiness of intersection of multiset languages, represented by quasi-regular
expressions. Thus checking resource compatibility can be solved in polynomial
time.</p>
      <p>Though resource compatibility is not su cient for correct Web service
interaction, the proposed procedure may be helpful for e cient detecting in
consistences on the early stages of analysis of Web services.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>W. van</surname>
          </string-name>
          <article-title>der Aalst and</article-title>
          K. van Hee.
          <article-title>Work ow Management: Models, Methods and Systems</article-title>
          MIT Press,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. M. van Hee</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. H. M. ter Hofstede</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Sidorova</surname>
          </string-name>
          , et al.
          <article-title>Soundness of work ow nets: classi cation, decidability, and analysis</article-title>
          .
          <source>Formal Aspects of Computing</source>
          . Vol.
          <volume>23</volume>
          ,
          <string-name>
            <surname>Nr</surname>
          </string-name>
          .
          <volume>3</volume>
          , pages
          <fpage>333</fpage>
          -
          <lpage>363</lpage>
          .
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Bashkin</surname>
          </string-name>
          and
          <string-name>
            <given-names>I. A.</given-names>
            <surname>Lomazova</surname>
          </string-name>
          .
          <article-title>Resource equivalence in work ow nets</article-title>
          .
          <source>In Proc. CS&amp;P'2006 Workshop</source>
          . Volume
          <volume>1</volume>
          , pages
          <fpage>80</fpage>
          {
          <fpage>91</fpage>
          . Humboldt-Universitat zu Berlin,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. Cheng A.,
          <string-name>
            <surname>Esparza</surname>
            <given-names>J.</given-names>
          </string-name>
          , and Palsberg J.:
          <article-title>Complexity results for 1-safe nets</article-title>
          .
          <source>In LNCS 761</source>
          ,
          <fpage>326</fpage>
          -
          <lpage>337</lpage>
          .
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>X.</given-names>
            <surname>Gong</surname>
          </string-name>
          .
          <source>Formal Analysis of Services Compatibility In Computer Software and Applications Conference</source>
          ,
          <year>2009</year>
          , volume
          <volume>2</volume>
          , pages
          <fpage>243</fpage>
          {
          <fpage>248</fpage>
          . Seattle, WA,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>K. van Hee</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Serebrenik</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Sidorova</surname>
            and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Voorhoeve</surname>
          </string-name>
          .
          <article-title>Soundness of resourceconstrained work ow nets</article-title>
          .
          <source>In Proc. 26th Int. Conf. Application and Theory of Petri Nets</source>
          ,
          <year>2005</year>
          , volume
          <volume>3536</volume>
          of Lecture Notes in Computer Science, pages
          <volume>250</volume>
          {
          <fpage>267</fpage>
          . Springer,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>M.</given-names>
            <surname>Kudlek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            .
            <surname>Mart</surname>
          </string-name>
          n Vide, Gh. Paun.
          <article-title>Towards FMT (Formal Mucroset Theory)</article-title>
          .
          <source>In Multiset Processing</source>
          , volume
          <volume>2235</volume>
          of Lecture Notes in Computer Science, pages
          <volume>123</volume>
          {
          <fpage>133</fpage>
          . Springer,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>M.</given-names>
            <surname>Kudlek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Mitrana</surname>
          </string-name>
          .
          <article-title>Closure properties of multiset languages</article-title>
          .
          <source>Fundamenta Informaticae</source>
          , Vol.
          <volume>49</volume>
          ,
          <string-name>
            <surname>Nr</surname>
          </string-name>
          . 1-
          <issue>3</issue>
          , pages
          <fpage>191</fpage>
          {
          <fpage>203</fpage>
          .
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>X.</given-names>
            <surname>Li</surname>
          </string-name>
          .
          <article-title>A Petri Net Approach to Analyzing Behavioral Compatibility</article-title>
          and
          <source>Similarity of Web Services Systems, Man and Cybernetics</source>
          ,
          <string-name>
            <surname>Part</surname>
            <given-names>A</given-names>
          </string-name>
          :
          <article-title>Systems and Humans</article-title>
          , Vol.
          <volume>41</volume>
          , pages
          <fpage>510</fpage>
          {
          <fpage>521</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>I. A.</given-names>
            <surname>Lomazova</surname>
          </string-name>
          .
          <article-title>Interacting work ow nets for work ow process re-engineering</article-title>
          .
          <source>Fundamenta Informaticae</source>
          , Vol.
          <volume>101</volume>
          ,
          <string-name>
            <surname>Nr</surname>
          </string-name>
          . 1-
          <issue>2</issue>
          , pages
          <fpage>59</fpage>
          {
          <fpage>70</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>A.</given-names>
            <surname>Martens</surname>
          </string-name>
          .
          <article-title>Analyzing Web service based on business processes</article-title>
          .
          <source>In Proc. Int. Conf. on Fundamental Approaches to Software Engineering</source>
          ,
          <year>2005</year>
          , volume
          <volume>3442</volume>
          of Lecture Notes in Computer Science, pages
          <volume>19</volume>
          {
          <fpage>33</fpage>
          . Springer,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Stahl</article-title>
          .
          <article-title>Service substitution - a behavioral approach based on Petri nets</article-title>
          .
          <source>PhD Thesis</source>
          , Eindhoven: Technische Universiteit Eindhoven,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>P.</given-names>
            <surname>Xiong</surname>
          </string-name>
          .
          <article-title>A Petri Net Approach to Analysis</article-title>
          and
          <source>Composition of Web Services Systems, Man and Cybernetics</source>
          ,
          <string-name>
            <surname>Part</surname>
            <given-names>A</given-names>
          </string-name>
          :
          <article-title>Systems and Humans</article-title>
          , Vol.
          <volume>40</volume>
          , pages
          <fpage>376</fpage>
          {
          <fpage>387</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>