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: A possible issue concerning the definition of IMA scope


An IMA has associated with it three scopes, two of which are associated with its identity:
  • The scope in which the IMA itself is defined
  • The scope of its partnerLink
  • The scope of its messageExchange name (including default name, of course)
This leads to a question: when we speak of the "scope of an IMA", what precisely do we mean? Section 10.4.1 doesn't really answer this, and I've heard good arguments for a variety of definitions for IMA scope:
  1. Its the scope of the activity, the same of any other activity.
  2. Its the scope of the partner link. IMAs are special, and must be paired with a <reply>, so the association between the IMA and <reply> logically belongs to the partnerLink. It follows that the IMA belongs to the partnerLink, and thus its scope.
  3. Its the scope of the messageExchange name shared between the IMA and the <reply>. This name (even if it is the default name) indicates the association between the IMA and the <reply>, and thus the IMA logically belongs to the ME name's scope.
  4. Both 2 & 3 are correct, with the scope closest to the root (process) scope being the correct choice if the partnerLink and messageExchange are not in the same scope. (They both must be enclosing scopes for both the IMA and the <reply> activities.)
As an illustrative (and abbreviated) example:
process
   partnerLink foo
   messageExchange bar
   sequence
      scope X
         ...
         receive partnerLink foo messageExchange bar
         ...
      ...
      reply partnerLink foo messageExchange bar
  
Case 1 would deem this to be an invalid process, for when scope X completes, it will hold an open IMA, causing a bpel:missingReply fault. In cases 2-4, this would be considered valid, since the <receive> IMA belongs to the process scope.

My question for the TC is this: what is the scope of an IMA? Have I missed the appropriate text in the spec that clarifies this, should we add a clarification, presumably in section 10.4.1? If clarification is necessary, what will our definition of IMA scope be?

-Ron


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