RE: More use cases

I agree that exception handling is a necessary component of choreography. The description that it applied to every message made me wonder if you were talking about something else. Anyway, for the visually-biased, I created a couple of diagrams to show the choreography. The first one shows the two separate choreographies as described-although I added a confirmation message (see OrderPlacementV1.jpg). The second diagram includes the error handling that was described, which adds a lot of complexity to the choreography-but I didn't show the handling of errors on the error messages.
 
These diagrams are more complex than the first set of diagrams I sent it, in that they show alternative paths created by business decisions and through pick or choice behavior.
 
-Steve
 
-----Original Message-----
From: Burdett, David [mailto:david.burdett@commerceone.com]
Sent: Wednesday, April 02, 2003 11:53 AM
To: Stephen White; Burdett, David; WS Choreography (E-mail)
Subject: RE: More use cases
 
The answer is "it depends".
 
Errors associated with formatting of the overall message (e.g. HTTP, MIME or SOAP errors) should be handled at a lower level. At the other extreme some errors, e.g. "product code not recognized" can "only" be determined by the application/process/service that is processing the content of the message as, in this example, it requires validation against a database.
 
There are also some validation errors of the content of mesages that fall in the grey area inbetween. 
 
These can sometimes be detected by an XML Parser by validating against the XML Schema and therefore could be considered as being handled at a lower level, for example an XML parser could check that a product code must be 10 characters alphanumeric and provide an "invalid format" error if it was not.
 
Sometimes though the application has to do the check.One example would be checking the validity of a postal code as it is dependent on the country associated with the address. e,g, - a valid US Postal code must be numeric e.g. "94511" and in a UK code a Postal Code is alphanumeric with a space in the middle, e.g. "KT11 2EN"
 
Since errors "sometimes" have to be handled by the application/process/service I think we have to consider them when designing our approachy to handling choreographies.
 
Hope this helps.
 
David
-----Original Message-----
From: Stephen White [mailto:swhite@SeeBeyond.com]
Sent: Wednesday, April 02, 2003 11:19 AM
To: Burdett, David; WS Choreography (E-mail)
Subject: RE: More use cases
David,
 
Is the handling of errors for every message something that should be in the choreography? If included, then it could prove to be an infinite cycle-e.g., there is an error in the error response message, which is handled as an error, and so on. This seems like another protocol that should be layered below the choreography. True?
 
-Steve
 
-----Original Message-----
From: Burdett, David [mailto:david.burdett@commerceone.com]
Sent: Tuesday, April 01, 2003 1:08 PM
To: WS Choreography (E-mail)
Subject: More use cases
 
Martin sending out a use case reminded me of another use case involving dependencies between choreographies that I want to provide.
David 
<<Choreography Dependency use case.htm>> 
Director, Product Management, Web Services 
Commerce One 
4440 Rosewood Drive, Pleasanton, CA 94588, USA 
Tel/VMail: +1 (925) 520 4422; Cell: +1 (925) 216 7704 
mailto:david.burdett@commerceone.com; Web: http://www.commerceone.com 

Received on Thursday, 3 April 2003 19:16:10 UTC