OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [wsbpel] Issue - 301 - Uninitialized Partner Links


(slow response :-)

I agree that you have a valid point in the "assign from partner link to
partner link" scenario. This should result in bpel:uninitializedPartnerRole
.

The behavior is then consistent with "assign from variable to variable" and
bpel:uninitializedVariable.

Kind Regards
DK
                                                                       
 Dieter König                                Mail: dieterkoenig@de.ibm.com         IBM Deutschland Entwicklung GmbH
                                                                       
 Senior Technical Staff Member               Tel (office): (+49) 7031-16-3426      Schönaicher Strasse 220
                                                                       
 Architect, Business Process Choreographer   Fax (office): (+49) 7031-16-4890      71032 Böblingen
                                                                       
 Member, Technical Expert Council            Tel (home office): (+49) 7032-201464  Germany
                                                                       





                                                                       
             "Monica J.                                                
             Martin"                                                   
             <Monica.Martin@Su                                          To
             n.COM>                    Dieter Koenig1/Germany/IBM@IBMDE
             Sent by:                                                   cc
             Monica.Martin@Sun         Ron Ten-Hove                    
             .COM                      <Ronald.Ten-Hove@Sun.COM>, Alex Yiu
                                       <alex.yiu@oracle.com>, wsbpeltc 
                                       <wsbpel@lists.oasis-open.org>   
             27.06.2006 20:53                                      Subject
                                       Re: [wsbpel] Issue - 301 -      
                                       Uninitialized Partner Links     
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       




Dieter,
Have we (Ron and I) missed your response so we can prepare for
tomorrow's discussion on #301?  Can we proceed to define equivalent
language discussing how uninitialized partnerLinks are to be handled?
Otherwise, we leave it to implementation where different approaches may
be taken. Thanks.

> koenig: I have not yet fully understood the issue 301.
> My picture is as follows:
>
> A. Variables and partner links are allowed to be declared but not used
>   - Note this is also true for correlation sets and message exchanges

ten-hove: Agreed.

> B. Variables and partner roles of partner links are *used* when their
> value
> is *read*
>   - Variables are used when they are referenced in <from> / <invoke> /
> <reply>
>   - Partner roles of partner links are used when they are referenced in
> <from> / <invoke>
>
> C. Variables and partner roles of partner links can be uninitialized
>   - If they are *used* anyway then
> uninitializedVariable/uninitializedPartnerRole is thrown
>
> Questions:
>
> 1. Do we have agreement on A. & B. & C.?
> 2. If yes (1.), which part is left unclear by the spec?

ten-hove: The expected behaviour is unspecified. Consider the following:

   <assign>
     <copy>
       <from partnerLink="foo" endpointReference="partnerRole"/>
       <to partnerLink="bar"/>
     </copy>
   </assign>

when the source partnerLink "foo" is uninitialized.  According to
section 8.1 (Variables):

   An attempt during process execution to read a variable or, in the
   case of a message type variable, a part of a variable before it is
   initialized MUST result in the standard bpel:uninitializedVariable
   fault.

There is no equivalent language discussing how uninitialized
partnerLinks are to be handled. The <copy> could cause a fault (but what
kind?), or the copy could uninitialize the partnerRole of the
partnerLink named "bar", and wait until the process attempts to
reference the partnerRole of "bar" (and throws a
uninitializedPartnerRole fault).

The specification does not answer these questions; implementors must
choose, presumably by suiting their own tastes. Do we want to have such
variability in implementations? As it stands, given the scenario
outlined above, we could have three different behaviours, all for good
reasons:

   * The <copy> throws an uninitializedVariable fault. (The entire
     partnerLink is uninitialized)
   * The <copy> throws an uninitializedPartnerRole fault (the <from>
     role isn't initialized)
   * The <copy> doesn't throw a fault at all.

Are we happy with this variability? This seems worthy of opening an
issue to discuss.

-Ron






[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]