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 - 270 - Copying a message variable with uninitialized parts


I think we should allow the copying of a whole message variable with uninitialized parts. We disallow using partially initialized variables in an <invoke> or <reply> since those activities make use of all of the parts of a variable so a missing part would be considered an error condition.

One use case that came up when discussing this internally was the ability to save the state of a partially initialized message variable by copying it to another variable. If you knew which parts were uninitialized then you'd be able to copy the parts individually, but if you didn't know or if you wanted to overwrite the values at the target variable with uninitialized parts then you would have no way of doing this.

I think support for copying partially initialized variables could be accomplished by adding a line to Section 8.4.2:

---- from ----

Replacement Logic for WSDL Message Variables

When the from-spec and to-spec of a
<copy> operation both select WSDL message variables, the value of the from-spec message variable MUST be copied, becoming the value of the to-spec message variable. The original message parts of the to-spec message variable will not be available after the <copy> operation.

---- to ----

Replacement Logic for WSDL Message Variables

When the from-spec and to-spec of a
<copy> operation both select WSDL message variables, the value of the from-spec message variable MUST be copied, becoming the value of the to-spec message variable. If the from-spec message variable was partially initialized, then those uninitialized parts will be copied to the to-spec message variable making those parts uninitialized as well. The original message parts of the to-spec message variable will not be available after the <copy> operation.

---- end ----

Lastly, I think we should also disallow the use of a partially initialized message variable with a <throw>. This seems consistent with the resolution of Issue 258 which disallowed the use of such a variable with <invoke> or <reply>. The change there would be to add the <throw> to the end of Section 8.1 where the resolution text for Issue 258 was added.

---- from ----

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. This includes the <invoke> and <reply> activity, where the presence of an uninitialized part also results in the standard fault bpel:uninitializedVariable.

---- to ----

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. This includes the <invoke>, <reply>, and <throw> activities, where the presence of an uninitialized part also results in the standard fault bpel:uninitializedVariable.

---- end ----

 

I'd like to get some feedback on this before submitting formal proposal.

Thanks.



From: Alex Yiu [mailto:alex.yiu@oracle.com]
Sent: Wednesday, April 26, 2006 7:27 PM
To: wsbpel@lists.oasis-open.org
Cc: Alex Yiu; Mark Ford
Subject: Re: [wsbpel] Issue - 270 - Copying a message variable with uninitialized parts



Hi Mark,

I agree that we need to clarify how to handle uninitialized parts in section 8.4.2.

My current inlination is to allow copy from a WSDL message variable without triggering  bpel:uninitializedVariable fault.

On the other hand, there is an open question: should we trigger bpel:uninitializedVariable fault if all parts of a message variable are uninitialized? My current inclination is: we should trigger that fault to make symmetric, when compared with other kinds of variables.

If these are what consensus of the TC, then may be Mark and I can work together to draft a formal spec text changes.

Thanks!


Regards,
Alex Yiu


ws-bpel issues list editor wrote:

This issue has been added to the wsbpel issue list with a status of "received". The status will be changed to "open" if a motion to open the issue is proposed and that motion is approved by the TC. A motion could also be proposed to close it without further consideration. Otherwise it will remain as "received".

The issues list is posted as a Technical Committee document to the OASIS WSBPEL TC pages on a regular basis. The current edition, as a TC document, is the most recent version of the document entitled in the "Issues" folder of the WSBPEL TC document list - the next posting as a TC document will include this issue. The list editor's working copy, which will normally include an issue when it is announced, is available at this constant URL.

Issue - 270 - Copying a message variable with uninitialized parts

Status: received
Date added: 26 Apr 2006
Date submitted: 25 April 2006
Submitter: Mark Ford
Description: Does a copy operation which copies a source message variable to a target message variable throw a bpel:uninitializedVariable if one of the parts in the source message is uninitialized?
<copy> 
   <from variable="messageA"/> 
   <to variable="messageB"/> 
</copy> 
  

Submitter's proposal: After reviewing Section 8 I think it could go either way. If one were to treat the copy operation as "reading" the part then Section 8.1 says that it should throw. If this copy operation is not considered a "read" of the part, then Section 8.4.2 indicates that we would not throw.

Section 8.1 states:

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.

Section 8.4.2 states:

When the from-spec and to-spec of a <copy> operation both select WSDL message variables, the value of the from-spec message variable MUST be copied, becoming the value of the to-spec message variable.

If the intention is to allow the copying of the uninitialized parts then this should be made explicit in Section 8.4.2. If this is not the intention, then perhaps reiterating the uninitialized fault in Section 8.4.2 is sufficient to make this clear.
Changes: 26 Apr 2006 - new issue


To comment on this issue (including whether it should be accepted), please follow-up to this announcement on the wsbpel@lists.oasis-open.org list (replying to this message should automatically send your message to that list), or ensure the subject line as you send it starts "Issue - 270 - [anything]" or is a reply to such a message. If you want to formally propose a resolution to an open issue, please start the subject line "Issue - 270 - Proposed resolution", without any Re: or similar.

To add a new issue, see the issues procedures document (but the address for new issue submission is the sender of this announcement).

--------------------------------------------------------------------- To unsubscribe from this mail list, you must leave the OASIS TC that generates this mail. You may a link to this group and all your TCs in OASIS at: https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php




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