/[bpel2owfn]/bpel2owfn/manual/2.0.x/bpel2owfn.html
ViewVC logotype

Diff of /bpel2owfn/manual/2.0.x/bpel2owfn.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by nielslohmann, Fri May 11 15:29:16 2007 UTC revision 1.4 by nielslohmann, Fri Jun 15 15:48:29 2007 UTC
# Line 9  Line 9 
9  <!--  <!--
10  About this document:  About this document:
11    
12  This manual is for GNU BPEL2oWFN, version 2.0.1, a tool translating  This manual is for GNU BPEL2oWFN, version 2.0.2, a tool translating
13  a BPEL process into an open workflow net (oWFN), last  a BPEL process into an open workflow net (oWFN), last
14  updated 11 May 2007.  updated 15 June 2007.
15    
16  Copyright (C) 2005, 2006, 2007 Niels Lohmann  Copyright (C) 2005, 2006, 2007 Niels Lohmann
17    
# Line 57  Up:&nbsp;<a rel="up" accesskey="u" href= Line 57  Up:&nbsp;<a rel="up" accesskey="u" href=
57    
58  <p><b>About this document:</b>  <p><b>About this document:</b>
59    
60     <p>This manual is for GNU BPEL2oWFN, version 2.0.1, a tool translating     <p>This manual is for GNU BPEL2oWFN, version 2.0.2, a tool translating
61  a <acronym>BPEL</acronym> process into an open workflow net (<acronym>oWFN</acronym>), last  a <acronym>BPEL</acronym> process into an open workflow net (<acronym>oWFN</acronym>), last
62  updated 11 May 2007.  updated 15 June 2007.
63    
64     <p>Copyright &copy; 2005, 2006, 2007 Niels Lohmann     <p>Copyright &copy; 2005, 2006, 2007 Niels Lohmann
65    
# Line 160  into an oWFN (open Workflow Net). This o Line 160  into an oWFN (open Workflow Net). This o
160  <div align="center"><img src="images/diagram.png" alt="images/diagram.png"></div>  <div align="center"><img src="images/diagram.png" alt="images/diagram.png"></div>
161  <p><br>  <p><br>
162    
163    <p>Furthermore, BPEL2oWFN can translate a <acronym>BPEL4Chor</acronym> choreography to a Petri net model. This model can be used to analyze properties of a complete choreography or to synthesize a fitting service for an incomplete choreography.
164    
165  <p>BPEL2oWFN uses static analysis to make the generated Petri net model as compact  <p>BPEL2oWFN uses static analysis to make the generated Petri net model as compact
166  as possible to analyze a chosen property. This is called <i>flexible model generation</i>.  as possible to analyze a chosen property. This is called <i>flexible model generation</i>.
167  Furthermore, several design flaws can be detected using control and data flow analysis.  Furthermore, several design flaws can be detected using control and data flow analysis.
# Line 216  Up:&nbsp;<a rel="up" accesskey="u" href= Line 218  Up:&nbsp;<a rel="up" accesskey="u" href=
218    
219  <p>The standard invocation of BPEL2oWFN is:  <p>The standard invocation of BPEL2oWFN is:
220    
221  <pre class="example">     bpel2owfn -i service.bpel -f owfn -o  <pre class="example">     bpel2owfn -i service.bpel -m petrinet -f owfn -o
222  </pre>  </pre>
223  <p>where <span class="file">service.bpel</span> is a <acronym>BPEL</acronym> process. The option  <p>where <span class="file">service.bpel</span> is a <acronym>BPEL</acronym> process. The option
224  <span class="samp">-f owfn</span> causes BPEL2oWFN to generate an open workflow net. This  <span class="samp">-f owfn</span> causes BPEL2oWFN to generate an open workflow net (option
225  net is written to a file named <span class="file">service.owfn</span>, because of the option  <span class="samp">-m petrinet</span>). This net is written to a file named <span class="file">service.owfn</span>, because of the option
226  <span class="samp">-o</span>.  <span class="samp">-o</span>.
227    
228  <p>BPEL2oWFN can be called without any parameter. In this case, it acts  <p>BPEL2oWFN can be called without any parameter. In this case, it acts
# Line 238  standard input (<code>stdin</code>). Line 240  standard input (<code>stdin</code>).
240    
241       <br><dt><span class="samp">--input=</span><var>filename</var><span class="samp">.bpel</span><dt><span class="samp">-i </span><var>filename</var><span class="samp">.bpel</span><dd>Read a <acronym>BPEL</acronym> process from file <var>filename</var><span class="file">.bpel</span>.       <br><dt><span class="samp">--input=</span><var>filename</var><span class="samp">.bpel</span><dt><span class="samp">-i </span><var>filename</var><span class="samp">.bpel</span><dd>Read a <acronym>BPEL</acronym> process from file <var>filename</var><span class="file">.bpel</span>.
242  If this parameter is omitted, input is read from standard input  If this parameter is omitted, input is read from standard input
243  (<code>stdin</code>).  (<code>stdin</code>). Wildcards such as <span class="file">process*.bpel</span> are also allowed.
244    
245         <br><dt><span class="samp">--wsdl=</span><var>filename</var><span class="samp">.wsdl</span><dt><span class="samp">-w </span><var>filename</var><span class="samp">.wsdl</span><dd>Read a <acronym>WSDL</acronym> file to support the translation.
246    
247         <br><dt><span class="samp">--topology=</span><var>filename</var><span class="samp">.xml</span><dt><span class="samp">-t </span><var>filename</var><span class="samp">.xml</span><dd>Read a <acronym>BPEL4Chor</acronym> participant topology file to support the translation of <acronym>BPEL4Chor</acronym> choreographies. Can only be used with the <span class="samp">choreography</span> mode.
248    
249       <br><dt><span class="samp">--output[=</span><var>filename</var><span class="samp">]</span><dt><span class="samp">-o</span><dd>The generated output is written to a file called <var>filename</var>. If the short       <br><dt><span class="samp">--output[=</span><var>filename</var><span class="samp">]</span><dt><span class="samp">-o</span><dd>The generated output is written to a file called <var>filename</var>. If the short
250  form is used or the <var>filename</var> is omitted, the input file name is taken and  form is used or the <var>filename</var> is omitted, the input file name is taken and
# Line 271  function is entered or left. Line 277  function is entered or left.
277  </dl>  </dl>
278    
279       <br><dt><span class="samp">--reduce=0-5</span><dt><span class="samp">-r 0-5</span><dd>Apply several structural reduction rules to the generated Petri net model       <br><dt><span class="samp">--reduce=0-5</span><dt><span class="samp">-r 0-5</span><dd>Apply several structural reduction rules to the generated Petri net model
280  (implies mode <span class="samp">petrinet</span> or <span class="samp">consistency</span>). The rules preserve  (implies mode <span class="samp">petrinet</span> or <span class="samp">choreography</span>). The rules preserve
281  deadlocks, livelocks and all deadlock-free communicating partners. The rules  deadlocks, livelocks and all deadlock-free communicating partners. The rules
282  are organized in reduction levels:  are organized in reduction levels:
283    
# Line 320  processes such as cyclic control links o Line 326  processes such as cyclic control links o
326  variables can be detected statically. Furthermore, faulty constellations such  variables can be detected statically. Furthermore, faulty constellations such
327  as conflicting receiving activities can be found using the <span class="samp">cfg</span> mode.  as conflicting receiving activities can be found using the <span class="samp">cfg</span> mode.
328    
329            <br><dt><span class="samp">consistency</span><dd>            <br><dt><span class="samp">choreography</span><dd>
330  The <span class="samp">consistency</span> mode is an extension of the <span class="samp">petrinet</span> mode. In the  The <span class="samp">choreography</span> mode<a rel="footnote" href="#fn-2" name="fnd-2"><sup>2</sup></a> is an extension of the <span class="samp">petrinet</span> mode. In the
331  consistency mode, several <acronym>BPEL</acronym> processes can be parsed, and a Petri  choreography mode, several <acronym>BPEL</acronym> processes can be parsed, and a Petri
332  net model of their composition is generated.  net model of their composition is generated.
333    
334            <p>The <span class="samp">consistency</span> mode is in beta stage. It is not fully tested.            <p>For examples, check <span class="file">test/bpel4chor</span> directory.
 For examples, check the <span class="file">test5</span> test script in the <span class="file">tests</span> directory.  
335  When combined with <acronym>LoLA</acronym> file output, an additional <span class="file">.task</span> file  When combined with <acronym>LoLA</acronym> file output, an additional <span class="file">.task</span> file
336  is generated. With the help of this file <acronym>LoLA</acronym> can check for weak  is generated. With the help of this file <acronym>LoLA</acronym> can check for weak
337  termination of the composition.  termination of the composition.
338    
339              <p>Note that the choreography mode is only tested with the <span class="samp">small</span> mode.
340    To support the translation of a <acronym>BPEL4Chor</acronym> choreography, a participant topology
341    can be additionally parsed using the <span class="samp">topology</span> parameter.
342    
343            <br><dt><span class="samp">petrinet</span><dd>            <br><dt><span class="samp">petrinet</span><dd>
344  Generates a Petri net representing the semantics of the given  Generates a Petri net representing the semantics of the given
345  process. Other options can be added to simplify or modify that generated Petri  process. Other options can be added to simplify or modify that generated Petri
# Line 355  is generated. Line 364  is generated.
364       <dl>       <dl>
365  <dt><span class="samp">--parameter=</span><var>par</var><dt><span class="samp">-p </span><var>par</var><dd>  <dt><span class="samp">--parameter=</span><var>par</var><dt><span class="samp">-p </span><var>par</var><dd>
366            <dl>            <dl>
367  <dt><span class="samp">communicationonly</span><dd>  <dt><span class="samp">small</span><dd>
368  Only the communicational behavior of the input <acronym>BPEL</acronym> process is  With the <span class="samp">small</span> parameter<a rel="footnote" href="#fn-3" name="fnd-3"><sup>3</sup></a>, only the communicational behavior of the input <acronym>BPEL</acronym> process is
369  modeled. That is, the negative control flow (fault, termination, or compensation handlers, as well as <code>&lt;exit&gt;</code>, <code>&lt;throw&gt;</code>, <code>&lt;compensate&gt;</code>, <code>&lt;compensateScope&gt;</code> activities) is not translated to  modeled. That is, the negative control flow (fault, termination, or compensation handlers, as well as <code>&lt;exit&gt;</code>, <code>&lt;throw&gt;</code>, <code>&lt;compensate&gt;</code>, <code>&lt;compensateScope&gt;</code> activities) is not translated to
370  the Petri net model. When combined with <span class="samp">reduce</span>, this parameter yields  the Petri net model. When combined with <span class="samp">reduce</span>, this parameter yields
371  the most compact Petri net model.  the most compact Petri net model.
# Line 407  of the given file formats are the same. Line 416  of the given file formats are the same.
416  <span class="samp">pretty</span>, whereas <acronym>LoLA</acronym> requires the mode <span class="samp">petrinet</span>.  <span class="samp">pretty</span>, whereas <acronym>LoLA</acronym> requires the mode <span class="samp">petrinet</span>.
417    
418            <dl>            <dl>
419  <dt>Petri net file formats (imply mode <span class="samp">petrinet</span> or <span class="samp">consistency</span>):<dd>  <dt>Petri net file formats (imply mode <span class="samp">petrinet</span> or <span class="samp">choreography</span>):<dd>
420                 <dl>                 <dl>
421  <dt><span class="samp">apnn</span><dd>Outputs the inner of the generated open workflow net in  <dt><span class="samp">apnn</span><dd>Outputs the inner of the generated open workflow net in
422  <acronym title="Abstract Petri Net Notation">APNN</acronym> (Abstract Petri Net Notation). When the parameter <span class="samp">-o</span> is  <acronym title="Abstract Petri Net Notation">APNN</acronym> (Abstract Petri Net Notation). When the parameter <span class="samp">-o</span> is
# Line 438  Language">PNML</acronym> file format is Line 447  Language">PNML</acronym> file format is
447  Fiona file format &mdash; the only Petri net output format that outputs the  Fiona file format &mdash; the only Petri net output format that outputs the
448  complete open workflow net, that is, also the interface is exported.  complete open workflow net, that is, also the interface is exported.
449  Currently, the interface places are annotated using a <code>&lt;type&gt;</code> tag  Currently, the interface places are annotated using a <code>&lt;type&gt;</code> tag
450  which is only supported by Yasper<a rel="footnote" href="#fn-2" name="fnd-2"><sup>2</sup></a>. When the parameter <span class="samp">-o</span> is used, a  which is only supported by Yasper<a rel="footnote" href="#fn-4" name="fnd-4"><sup>4</sup></a>. When the parameter <span class="samp">-o</span> is used, a
451  file with the suffix <span class="samp">.pnml</span> is created.  file with the suffix <span class="samp">.pnml</span> is created.
452    
453                 <br><dt><span class="samp">spin</span><dd>Outputs the inner of the generated open workflow net as low-level Petri net in                 <br><dt><span class="samp">spin</span><dd>Outputs the inner of the generated open workflow net as low-level Petri net in
# Line 501  further processed. Line 510  further processed.
510  for more examples.  for more examples.
511    
512       <dl>       <dl>
513  <dt><span class="samp">bpel2owfn -i sample.bpel -flola -finfo -o -p reduce</span><dd>  <dt><span class="samp">bpel2owfn -i sample.bpel -m petrinet -f lola -f info -o -p reduce</span><dd>
514  Reads the file <span class="file">sample.bpel</span>, generates a structural reduced  Reads the file <span class="file">sample.bpel</span>, generates a structural reduced
515  low-level Petri net and saves it in a <acronym title="Low-Level Analyzer">LoLA</acronym> file  low-level Petri net and saves it in a <acronym title="Low-Level Analyzer">LoLA</acronym> file
516  <span class="file">sample.lola</span>. For further information a file  <span class="file">sample.lola</span>. For further information a file
517  <span class="file">sample.info</span> is generated.  <span class="file">sample.info</span> is generated.
518    
519       <br><dt><span class="samp">bpel2owfn -i sample.bpel -fowfn -d3 -o</span><dd>       <br><dt><span class="samp">bpel2owfn -i sample.bpel  -mpetrinet -fowfn -d3 -o</span><dd>
520  Reads the file <span class="file">sample.bpel</span>, generates a low-level open  Reads the file <span class="file">sample.bpel</span>, generates a low-level open
521  workflow net and saves it in an <acronym>oWFN</acronym> file  workflow net and saves it in an <acronym>oWFN</acronym> file
522  <span class="file">sample.owfn</span>. For further information a file  <span class="file">sample.owfn</span>. For further information a file
# Line 524  PostScript file <span class="file">sampl Line 533  PostScript file <span class="file">sampl
533  Reads the file <span class="file">sample.bpel</span> and prints the abstract syntax tree  Reads the file <span class="file">sample.bpel</span> and prints the abstract syntax tree
534  (<acronym title="abstract syntax tree">AST</acronym>) to standard output.  (<acronym title="abstract syntax tree">AST</acronym>) to standard output.
535    
536       <br><dt><span class="samp">bpel2owfn -m consistency -i service1.bpel -i service2.bpel -f lola -o</span><dd>       <br><dt><span class="samp">bpel2owfn -m choreography -i service1.bpel -i service2.bpel -f lola -o</span><dd>
537  Reads the files <span class="file">service1.bpel</span> and <span class="file">service2.bpel</span> and creates  Reads the files <span class="file">service1.bpel</span> and <span class="file">service2.bpel</span> and creates
538  a Petri net model of their composition. The result is written to the  a Petri net model of their composition. The result is written to the
539  <acronym title="Low-Level Analyzer">LoLA</acronym> file <span class="file">service1_service2.lola</span>. Furthermore, an analysis  <acronym title="Low-Level Analyzer">LoLA</acronym> file <span class="file">service1_service2.lola</span>. Furthermore, an analysis
# Line 532  file <span class="file">service1_service Line 541  file <span class="file">service1_service
541  <acronym title="Low-Level Analyzer">LoLA</acronym>.  <acronym title="Low-Level Analyzer">LoLA</acronym>.
542  </dl>  </dl>
543    
544    <p>Further examples for invocations of BPEL2oWFN can be found in the <span class="file">tests</span> directory of the source distribution.
545    
546  <!--  -->  <!--  -->
547  <div class="node">  <div class="node">
548  <p><hr>  <p><hr>
# Line 591  the messages can be suppressed with opti Line 602  the messages can be suppressed with opti
602    
603  <p><br></th></tr><tr align="left"><td valign="top" width="5%">2 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></th></tr><tr align="left"><td valign="top" width="5%">2 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
604  A <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> processor MUST reject any <acronym>WSDL</acronym> portType definition that includes  A <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> processor MUST reject any <acronym>WSDL</acronym> portType definition that includes
605  overloaded operation names.<a rel="footnote" href="#fn-3" name="fnd-3"><sup>3</sup></a>  overloaded operation names.<a rel="footnote" href="#fn-5" name="fnd-5"><sup>5</sup></a>
606    
607  <p><br></td></tr><tr align="left"><td valign="top" width="5%">3 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">3 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
608  If the value of <code>exitOnStandardFault</code> of a <code>&lt;scope&gt;</code> or <code>&lt;process&gt;</code>  If the value of <code>exitOnStandardFault</code> of a <code>&lt;scope&gt;</code> or <code>&lt;process&gt;</code>
# Line 651  the type of a variable. Exactly one of t Line 662  the type of a variable. Exactly one of t
662    
663  <p><br></td></tr><tr align="left"><td valign="top" width="5%">32 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">32 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
664  For <code>&lt;assign&gt;</code>, the <code>&lt;from&gt;</code> and <code>&lt;to&gt;</code> element MUST be one  For <code>&lt;assign&gt;</code>, the <code>&lt;from&gt;</code> and <code>&lt;to&gt;</code> element MUST be one
665  of the specified variants.<a rel="footnote" href="#fn-4" name="fnd-4"><sup>4</sup></a>  of the specified variants.<a rel="footnote" href="#fn-6" name="fnd-6"><sup>6</sup></a>
666    
667  <p><br></td></tr><tr align="left"><td valign="top" width="5%">35 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">35 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
668  In the from-spec of the partnerLink variant of <code>&lt;assign&gt;</code> the value  In the from-spec of the partnerLink variant of <code>&lt;assign&gt;</code> the value
# Line 762  associated with the handler. Line 773  associated with the handler.
773  <p><br></td></tr><tr align="left"><td valign="top" width="5%">72 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">72 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
774  A <code>&lt;link&gt;</code> declared in a <code>&lt;flow&gt;</code> MUST NOT create a control cycle,  A <code>&lt;link&gt;</code> declared in a <code>&lt;flow&gt;</code> MUST NOT create a control cycle,
775  that is, the source activity must not have the target activity as a logically  that is, the source activity must not have the target activity as a logically
776  preceding activity.<a rel="footnote" href="#fn-5" name="fnd-5"><sup>5</sup></a>  preceding activity.<a rel="footnote" href="#fn-7" name="fnd-7"><sup>7</sup></a>
777    
778  <p><br></td></tr><tr align="left"><td valign="top" width="5%">73 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">73 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
779  The expression for a join condition MUST be constructed using only Boolean  The expression for a join condition MUST be constructed using only Boolean
# Line 818  MUST NOT be used unless accompanied by < Line 829  MUST NOT be used unless accompanied by <
829  The peer-scope dependency relation MUST NOT include cycles. In other words,  The peer-scope dependency relation MUST NOT include cycles. In other words,
830  <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> forbids a process in which there are peer scopes S1 and S2  <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> forbids a process in which there are peer scopes S1 and S2
831  such that S1 has a peer-scope dependency on S2 and S2 has a peer-scope  such that S1 has a peer-scope dependency on S2 and S2 has a peer-scope
832  dependency on S1.<a rel="footnote" href="#fn-6" name="fnd-6"><sup>6</sup></a>  dependency on S1.<a rel="footnote" href="#fn-8" name="fnd-8"><sup>8</sup></a>
833    
834  <p><br></td></tr><tr align="left"><td valign="top" width="5%">83 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">83 </td><td valign="top" width="18%">static analysis </td><td valign="top" width="77%">
835  An event handler MUST contain at least one <code>&lt;onEvent&gt;</code> or  An event handler MUST contain at least one <code>&lt;onEvent&gt;</code> or
# Line 847  Identical <code>&lt;catch&gt;</code> con Line 858  Identical <code>&lt;catch&gt;</code> con
858  <code>&lt;faultHandlers&gt;</code> element.  <code>&lt;faultHandlers&gt;</code> element.
859    
860  <p><br></td></tr><tr align="left"><td valign="top" width="5%">100 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">100 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
861  Either a non-standard element<a rel="footnote" href="#fn-7" name="fnd-7"><sup>7</sup></a> was parsed  Either a non-standard element<a rel="footnote" href="#fn-9" name="fnd-9"><sup>9</sup></a> was parsed
862  or a <acronym>BPEL</acronym> activity was considered as  or a <acronym>BPEL</acronym> activity was considered as
863  misplaced. In the first case, a non-standard element was parsed when the  misplaced. In the first case, a non-standard element was parsed when the
864  parser expected a <acronym>BPEL</acronym> standard activity. Then, a syntax error is  parser expected a <acronym>BPEL</acronym> standard activity. Then, a syntax error is
# Line 892  be activated concurrently and share the Line 903  be activated concurrently and share the
903  and correlation set. When a message is sent to the process, these activities  and correlation set. When a message is sent to the process, these activities
904  are in <i>conflict</i>; that is, it is not defined which activity will receive an  are in <i>conflict</i>; that is, it is not defined which activity will receive an
905  inbound message. At runtime, the standard fault <span class="samp">bpel:conflictingReceive</span>  inbound message. At runtime, the standard fault <span class="samp">bpel:conflictingReceive</span>
906  would be thrown.<a rel="footnote" href="#fn-8" name="fnd-8"><sup>8</sup></a>  would be thrown.<a rel="footnote" href="#fn-10" name="fnd-10"><sup>10</sup></a>
907    
908  <p><br></td></tr><tr align="left"><td valign="top" width="5%">107 </td><td valign="top" width="18%">warning </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">107 </td><td valign="top" width="18%">warning </td><td valign="top" width="77%">
909  A mandatory attribute of an activity was not defined. Especially for  A mandatory attribute of an activity was not defined. Especially for
# Line 927  displayed when the first <acronym>UTF</a Line 938  displayed when the first <acronym>UTF</a
938  <p><br></td></tr><tr align="left"><td valign="top" width="5%">114 </td><td valign="top" width="18%">warning </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">114 </td><td valign="top" width="18%">warning </td><td valign="top" width="77%">
939  <acronym title="control flow graph">CFG</acronym> analysis detected a read access to a variable that was not  <acronym title="control flow graph">CFG</acronym> analysis detected a read access to a variable that was not
940  initialized before. At runtime, the standard fault  initialized before. At runtime, the standard fault
941  <span class="samp">bpel:uninitializedVariable</span> would be thrown.<a rel="footnote" href="#fn-9" name="fnd-9"><sup>9</sup></a>  <span class="samp">bpel:uninitializedVariable</span> would be thrown.<a rel="footnote" href="#fn-11" name="fnd-11"><sup>11</sup></a>
942    
943  <p><br></td></tr><tr align="left"><td valign="top" width="5%">115 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">115 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
944  The process definition defines an abstract process profile, and thus allows  The process definition defines an abstract process profile, and thus allows
# Line 940  detected in an abstract process are repo Line 951  detected in an abstract process are repo
951  An <code>&lt;opaqueActivity&gt;</code> of an abstract process is modeled by an <code>&lt;empty&gt;</code> activity.  An <code>&lt;opaqueActivity&gt;</code> of an abstract process is modeled by an <code>&lt;empty&gt;</code> activity.
952    
953  <p><br></td></tr><tr align="left"><td valign="top" width="5%">117 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">117 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
954  When using the parameter <span class="samp">communicationonly</span>, the occurrence of join  When using the parameter <span class="samp">small</span>, the occurrence of join
955  failures is not modeled. Thus, any activity is treated as if the  failures is not modeled. Thus, any activity is treated as if the
956  attribute <span class="samp">suppressJoinFailure</span> is set to <span class="samp">yes</span>.<a rel="footnote" href="#fn-10" name="fnd-10"><sup>10</sup></a>  attribute <span class="samp">suppressJoinFailure</span> is set to <span class="samp">yes</span>.<a rel="footnote" href="#fn-12" name="fnd-12"><sup>12</sup></a>
957    
958  <p><br></td></tr><tr align="left"><td valign="top" width="5%">118 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">118 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
959  A user-defined transition condition is ignored and modeled as &ldquo;<i>n</i>-out-of-<i>n</i>&rdquo;  A user-defined transition condition is ignored and modeled as &ldquo;<i>n</i>-out-of-<i>n</i>&rdquo;
# Line 953  A user-defined transition condition is i Line 964  A user-defined transition condition is i
964  (XOR) instead.  (XOR) instead.
965    
966  <p><br></td></tr><tr align="left"><td valign="top" width="5%">120 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">120 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
967  When using the parameter <span class="samp">communicationonly</span>, the FTC (fault, termination,  When using the parameter <span class="samp">small</span>, the FTC (fault, termination,
968  and compensation) handlers are not modeled.  and compensation) handlers are not modeled.
969    
970  <p><br></td></tr><tr align="left"><td valign="top" width="5%">121 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">  <p><br></td></tr><tr align="left"><td valign="top" width="5%">121 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
971  When using the parameter <span class="samp">communicationonly</span>, activities of the negative  When using the parameter <span class="samp">small</span>, activities of the negative
972  control flow (<code>&lt;exit&gt;</code>, <code>&lt;throw&gt;</code>, <code>&lt;compensate&gt;</code>, and  control flow (<code>&lt;exit&gt;</code>, <code>&lt;throw&gt;</code>, <code>&lt;compensate&gt;</code>, and
973  <code>&lt;compensateScope&gt;</code>) are replaced by an <code>&lt;empty&gt;</code> activity.  <code>&lt;compensateScope&gt;</code>) are replaced by an <code>&lt;empty&gt;</code> activity.
974    
# Line 1018  In a <acronym>BPEL4Chor</acronym> topolo Line 1029  In a <acronym>BPEL4Chor</acronym> topolo
1029  <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> file, the attribute <code>targetNamespace</code> could not to be grounded to a  <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> file, the attribute <code>targetNamespace</code> could not to be grounded to a
1030  BPEL4Chor <code>&lt;participant&gt;</code>.  BPEL4Chor <code>&lt;participant&gt;</code>.
1031    
1032    <p><br></td></tr><tr align="left"><td valign="top" width="5%">138 </td><td valign="top" width="18%">notice </td><td valign="top" width="77%">
1033    In a <acronym>BPEL4Chor</acronym> topology, a partner link specified for an activity was not found. Instead,
1034    the name of the specified id is used as a partner link.
1035    
1036  <br></td></tr></table>  <br></td></tr></table>
1037    
1038  <!--  -->  <!--  -->
# Line 1129  standard fault handler is added by BPEL2 Line 1144  standard fault handler is added by BPEL2
1144  </pre>  </pre>
1145  <p>Each activity is printed together with its attributes. Note that the standard values of several attributes (e.g., <span class="samp">abstractProcess</span> or <span class="samp">suppressJoinFailure</span>) are added. Furthermore, an identifier (attribute <span class="samp">id</span>) was added to every activity.  <p>Each activity is printed together with its attributes. Note that the standard values of several attributes (e.g., <span class="samp">abstractProcess</span> or <span class="samp">suppressJoinFailure</span>) are added. Furthermore, an identifier (attribute <span class="samp">id</span>) was added to every activity.
1146    
1147  <p>We now want to create a compact Petri net model of the <acronym>BPEL</acronym> process, using the <span class="samp">petrinet</span> mode and the <span class="samp">communicationonly</span> parameter:  <p>We now want to create a compact Petri net model of the <acronym>BPEL</acronym> process, using the <span class="samp">petrinet</span> mode and the <span class="samp">small</span> parameter:
1148    
1149  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
1150  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p communicationonly  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p small
1151  </pre>  </pre>
1152  </td></tr></table>  </td></tr></table>
1153    
# Line 1143  standard fault handler is added by BPEL2 Line 1158  standard fault handler is added by BPEL2
1158  <p>The generated Petri net model consists of five places, including one input and one output place, two transitions and six arcs. To create a graphical representation, invoke BPEL2oWFN with the following options:  <p>The generated Petri net model consists of five places, including one input and one output place, two transitions and six arcs. To create a graphical representation, invoke BPEL2oWFN with the following options:
1159    
1160  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
1161  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p communicationonly -f dot -o  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p small -f dot -o
1162  </pre>  </pre>
1163  </td></tr></table>  </td></tr></table>
1164    
# Line 1167  between the nodes of the Petri net and t Line 1182  between the nodes of the Petri net and t
1182  obvious for larger processes. To this end,  obvious for larger processes. To this end,
1183    
1184  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
1185  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p communicationonly -f info  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p small -f info
1186  </pre>  </pre>
1187  </td></tr></table>  </td></tr></table>
1188    
# Line 1215  places during the composition of the sev Line 1230  places during the composition of the sev
1230  analysis tools. In this case, we want to create a Fiona open workflow net executing  analysis tools. In this case, we want to create a Fiona open workflow net executing
1231    
1232  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>  <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
1233  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p communicationonly -f ownf -o  <pre class="smallexample">     bpel2owfn -i example.bpel -m petrinet -p small -f owfn -o
1234  </pre>  </pre>
1235  </td></tr></table>  </td></tr></table>
1236    
# Line 1225  analysis tools. In this case, we want to Line 1240  analysis tools. In this case, we want to
1240       {       {
1241         generated by: BPEL2oWFN 2.0.1         generated by: BPEL2oWFN 2.0.1
1242         input file:   `example.bpel' (process `exampleprocess')         input file:   `example.bpel' (process `exampleprocess')
1243         invocation:   `bpel2owfn -i example.bpel -m petrinet -p communicationonly -f owfn'         invocation:   `bpel2owfn -i example.bpel -m petrinet -p small -f owfn'
1244         net size:     |P|=5, |P_in|= 1, |P_out|= 1, |T|=2, |F|=6         net size:     |P|=5, |P_in|= 1, |P_out|= 1, |T|=2, |F|=6
1245       }       }
1246            
# Line 1260  analysis tools. In this case, we want to Line 1275  analysis tools. In this case, we want to
1275            
1276  </pre>  </pre>
1277  <p>This is finally the <acronym>oWFN</acronym> model of the <acronym>BPEL</acronym> process that can be analyzed by  <p>This is finally the <acronym>oWFN</acronym> model of the <acronym>BPEL</acronym> process that can be analyzed by
1278  Fiona<a rel="footnote" href="#fn-11" name="fnd-11"><sup>11</sup></a>.  Fiona<a rel="footnote" href="#fn-13" name="fnd-13"><sup>13</sup></a>.
1279    
1280  <!--  -->  <!--  -->
1281  <!--  -->  <!--  -->
# Line 1810  to permit their use in free software. Line 1825  to permit their use in free software.
1825  <hr>  <hr>
1826  <a name="texinfo-footnotes-in-document"></a><h4>Footnotes</h4><p class="footnote"><small>[<a name="fn-1" href="#fnd-1">1</a>]</small> Fiona is available at <a href="http://www.informatik.hu-berlin.de/top/tools4bpel">http://www.informatik.hu-berlin.de/top/tools4bpel</a>.</p>  <a name="texinfo-footnotes-in-document"></a><h4>Footnotes</h4><p class="footnote"><small>[<a name="fn-1" href="#fnd-1">1</a>]</small> Fiona is available at <a href="http://www.informatik.hu-berlin.de/top/tools4bpel">http://www.informatik.hu-berlin.de/top/tools4bpel</a>.</p>
1827    
1828  <p class="footnote"><small>[<a name="fn-2" href="#fnd-2">2</a>]</small> Yasper is available at <a href="http://www.yasper.org">http://www.yasper.org</a>.</p>  <p class="footnote"><small>[<a name="fn-2" href="#fnd-2">2</a>]</small> This mode was formally called <span class="samp">consinstency</span>.</p>
1829    
1830    <p class="footnote"><small>[<a name="fn-3" href="#fnd-3">3</a>]</small> This mode was formally called <span class="samp">communicationonly</span>.</p>
1831    
1832    <p class="footnote"><small>[<a name="fn-4" href="#fnd-4">4</a>]</small> Yasper is available at <a href="http://www.yasper.org">http://www.yasper.org</a>.</p>
1833    
1834  <p class="footnote"><small>[<a name="fn-3" href="#fnd-3">3</a>]</small> The descriptions for  <p class="footnote"><small>[<a name="fn-5" href="#fnd-5">5</a>]</small> The descriptions for
1835  static analysis messages are taken from Appendix B of the <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym>  static analysis messages are taken from Appendix B of the <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym>
1836  specification.</p>  specification.</p>
1837    
1838  <p class="footnote"><small>[<a name="fn-4" href="#fnd-4">4</a>]</small> The specification describes all allowed  <p class="footnote"><small>[<a name="fn-6" href="#fnd-6">6</a>]</small> The specification describes all allowed
1839  combinations of elements and attributes in from- and to-specifications.</p>  combinations of elements and attributes in from- and to-specifications.</p>
1840    
1841  <p class="footnote"><small>[<a name="fn-5" href="#fnd-5">5</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>  <p class="footnote"><small>[<a name="fn-7" href="#fnd-7">7</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>
1842    
1843  <p class="footnote"><small>[<a name="fn-6" href="#fnd-6">6</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>  <p class="footnote"><small>[<a name="fn-8" href="#fnd-8">8</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>
1844    
1845  <p class="footnote"><small>[<a name="fn-7" href="#fnd-7">7</a>]</small> All elements  <p class="footnote"><small>[<a name="fn-9" href="#fnd-9">9</a>]</small> All elements
1846  that are not explicitly defined in the <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> specification (e.g.,  that are not explicitly defined in the <acronym title="Web Service Business Process Execution Language">WS-BPEL</acronym> specification (e.g.,
1847  elements from other namespaces) are considered as &ldquo;non-standard&rdquo;.</p>  elements from other namespaces) are considered as &ldquo;non-standard&rdquo;.</p>
1848    
1849  <p class="footnote"><small>[<a name="fn-8" href="#fnd-8">8</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>  <p class="footnote"><small>[<a name="fn-10" href="#fnd-10">10</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>
1850    
1851  <p class="footnote"><small>[<a name="fn-9" href="#fnd-9">9</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>  <p class="footnote"><small>[<a name="fn-11" href="#fnd-11">11</a>]</small> This fault can only be detected in mode mode <span class="samp">cfg</span>.</p>
1852    
1853  <p class="footnote"><small>[<a name="fn-10" href="#fnd-10">10</a>]</small> If the  <p class="footnote"><small>[<a name="fn-12" href="#fnd-12">12</a>]</small> If the
1854  attribute <span class="samp">suppressJoinFailure</span> is not explicitly defined for an  attribute <span class="samp">suppressJoinFailure</span> is not explicitly defined for an
1855  activity, the value is inherited by the parent activity.</p>  activity, the value is inherited by the parent activity.</p>
1856    
1857  <p class="footnote"><small>[<a name="fn-11" href="#fnd-11">11</a>]</small> Fiona is available at <a href="http://www.informatik.hu-berlin.de/top/tools4bpel">http://www.informatik.hu-berlin.de/top/tools4bpel</a>.</p>  <p class="footnote"><small>[<a name="fn-13" href="#fnd-13">13</a>]</small> Fiona is available at <a href="http://www.informatik.hu-berlin.de/top/tools4bpel">http://www.informatik.hu-berlin.de/top/tools4bpel</a>.</p>
1858    
1859  <p><hr></div>  <p><hr></div>
1860    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26