Академический Документы
Профессиональный Документы
Культура Документы
#$!!$4$# A((
Activities are executed in non/se'uential order. A particular order must not !e enforced
however there is no re'uirement for activities to !e executed in parallel.
#$!!$4$1 Assign
(he property attri!ute provides the property name.
(he value is constructed using one of the following three means)
value #rovides an 0$L value that is statically provided in the content of that element
select #rovides an 0#ath expression that is evaluated in the context in which the
activity is used
extension element Supports other mechanisms !y which the value is constructed
(he three uses are mutually exclusive and cannot !e com!ined in the same element. If
the extension element defines a form of expression such as an 01uery0 'uery it is
always evaluated in the context in which this activity is used.
#$!!$4$4 Ca((
&an instantiate processes whose definition is visi!le from the current context. (he
process is instantiated in the same context in which it is defined which may !e different
than the context from which the process is called.
Waits until the instantiated process completes either successfully or with a fault. If the
called process faults the call activity completes with the same fault code.
Does not directly affect any call spawn or join activity relating to the same process and
occurring in the same or different context.
#$!!$4$3 Choice
(he choice activity is a complex activity. It selects and executes one activity set in
response to a triggered event.
#$!!$4$4 Compensate
(he compensate activity is an atomic activity. It performs compensation for all instances
of the named transaction.
#$!!$4$5 De(a'
(he delay activity is an atomic activity. It expresses the passage of time.
5/13/2001 3>14 $age 14 of 1+ 22+5*4043.do)
Rough Draft
#$!!$4$7 Empt'
(his activity can !e used in places where an activity is expected !ut no wor- is to !e
performed.
#$!!$4$9 @au(t
(he fault code is specified using the code attri!ute. (he fault occurs immediately in the
current context see the definition of exception handling for how faults and other
exceptions are handled.
#$!!$4$!: @oreach
(he foreach activity repeats once for each item in the resulting list in the same order in
which the list was constructed. (he value of the current item is held in the property
bpml:current. (hat property is accessi!le only from the context of the activity set.
#$!!$4$!! ?oin
(he join activity is an atomic activity. It waits for instances of process to complete.
#$!!$4$!# Se=uence
(he sequence activity is a complex activity. It performs all the activities within the activity
set in se'uential order.
#$!!$4$!1 Spa*n
(he process attri!ute names the spawned process and does not wait for it to perform any
activity. Instead the activity completes immediately. (he spawn activity can only
instantiate processes whose definition is visi!le from the current context. (he process is
instantiated in the same context in which it is defined. (his context may !e different than
the one from which the process is spawned.
(his activity modifies the process instance list. (his list is maintained as a property and
has the same name as the process under the current context. As such it can affect join
activities.
#$!!$4$!4 S*itch
(he switch activity is a complex activity. It selects and executes one activity set !ased on
the evaluation of one or more conditions.
#$!!$4$!3 Anti(
(he activity set is executed at least once. After completion of the activity set the
condition is evaluated. (he process is repeated if the condition evaluates to false.
"therwise the until activity completes.
#$!!$4$!4 Whi(e
(he condition is evaluated once !efore the activity set is executed. (he activity set is
executed only if the condition evaluates to true otherwise the while activity completes.
(his process is repeated until the condition evaluates to false.
5/13/2001 3>14 $age 15 of 1+ 22+5*4043.do)
Rough Draft
1 Buestions
9n ,$M- acti&it' sets are not re7usab(e. 9mp(ementing them as re7usab(e in(ine b(o)<s
might depend upon 5hether the have a )onte6t spe)ified or not. !eed to e6amine
s)oping issues
# pro)ess refers to an a)tivit set. # pro)ess )an evident( not be defined 5ithin an
a)tivit set. So ho5 do ou define a nested pro)essF Consider the fo((o5ing>
o #(though a pro)ess definition is based on the a)tivit tpe" a process definition
cannot )e used as an acti&it' *ithin an acti&it' set. #n a)tivit must e6e)ute
5ithin a )onte6t. #s a resu(t" a)tivities must be part of an a)tivit set. 9n turn"
a)tivit sets are a(5as )ontained 5ithin a (arger definition. 4his definition )an
be a )omp(e6 a)tivit" a pro)ess definition" or some other )onstru)t su)h as
e6)eption or )ompensation.
o # pro)ess is an a)tivit set that is not )ontained 5ithin an other a)tivit.
o !oti)e that a conte6t a((o*s definition of a nested process> e(ement defines a
nested pro)ess that 5i(( be instantiated in that )onte6t and overrides an other
definition 5ith the same name that 5ou(d be visib(e in this )onte6t.
o # )omp(e6 a)tion ma invo(ve the e6e)ution of a nested pro)ess" b instantiating
that pro)ess and 5aiting for it to )omp(ete 5ithin the )onfines of the a)tion. 4his
)an be done using the ca((. &hen referring to a &S2- operation this e(ement is
used on( for reAuest7response operations.
$age 1/ of 1+
Rough Draft
4 References
G1H ,$M- 5or<ing draft Mar)h 25" 2002.
G2H ,$M- 5or<ing draft ?une 24" 2002.
G3H ,$%-4&S .,usiness $ro)ess %6e)ution -anguage for &eb Servi)es0 Iersion 1.0 #ug 3" 2002
G4H &or<f(o5 $ro)ess 2efinition -anguage 7 1M- $ro)ess 2efinition -anguage 2o)ument
!umber &FMC74C71025 2o)ument Status J 2raft 0.04a .#(pha Status0 Mar)h 01" 2001 Iersion
0.04 .2raft0
G5H &or<f(o5 $ro)ess 2efinition 9nterfa)e 77 1M- $ro)ess 2efinition -anguage. 2o)ument
!umber &FMC74C71025 2o)ument Status 7 1$2- 1.0 beta. .?u( 30" 20020 .
G/H &S2- &eb Servi)es 2es)ription -anguage .&S2-0 1.1 &3C !ote 15 Mar)h 2001
G+H &eb Servi)es Choreograph 9nterfa)e .&SC90 1.0" ,%#" 9nta(io" Sun" S#$ et a(" ?une 2002
G*H &eb Servi)es Coordination .&S7Coordination0 ,%# Sstems" 9nternationa( ,usiness
Ma)hines Corporation" Mi)rosoft Corporation 3 #ugust 2002
$age 1+ of 1+