Re: Updates to exit examples

Hi Howard,

Answers in line:

Howard Foster wrote:
>
> I have used the CDL source in the "examples" directory as a test set 
> for the WS-Engineer Tool CDL modelling features.  The following is a 
> test report, including some work to be done and some questions I have 
> on the specification.
>
> WS-Engineer (http://www.doc.ic.ac.uk/ltsa/eclipse/wsengineer):
>
> Summary of work needed from test examples:
>
> 1 decide which FSP model to use for implementing channel types and 
> message passing.
> 2 add workunit models and compose
> 3 add "record" attribute model to receive element model (see semantics)
> 4 add "causeException" attribute on copy to model exception handling
> 5 generate compliant unique FSP process names for choreographies [FIXED].
> 6 add sequence process number where name not provided [FIXED].
> 7 add "complete" attribute model to choreography element model (see 
> semantics)
> 8 add "coordination" attribute model to choreography element model 
> (see semantics)
> 9 add "exceptionBlock" element model to process (see semantics)
> 10 add "finalizerBlock" element model to process (see semantics)1
> 11 add "finalize" element model to choreography process (see semantics)
> 12 need to consider "bind" element for channel and messaging passing 
> model.
>
> Summary of issues (may be resolved by looking at CDL schema):
>
> channeltypes-with-action.cdl
> * there are 3 exchanges in one interaction element - 2xresponds for 
> 1xrequest - is this valid given a rendezvous style interaction?
In this situation, the responses are mutually exclusive - one a normal 
response and one representing a fault. I believe this particular example 
has been dropped, as it was considered to be too similar to some of the 
other examples - I will double check with Charlton.

> * also 2nd response is "badPurchaseOrderAckException", but also has a 
> faultName="badPurchaseOrderAckException",
> * think this should be a choice? or in an exception block?
All this means is that a SOAP fault message can be exchanged at this 
point - there is an implicit choice between the two response messages. A 
fault does not necessarily imply an exception - it can be a valid 
message exchange as part of a business protocol, just requiring 
alternate actions.
>
> channeltypes-with-identity-alternate.cdl
> * there are 2 interactions without explicit sequencing, would the 
> semantics of CDL therefore be "parallel"?
The version of the example I have only has a single interaction, so I 
think we need to double check where you have obtained the examples from, 
to ensure it is the most uptodate. This is another one of the examples 
that were dropped.

However looking at another example where you have also raised this 
question below, the two interactions should be defined within a 
<sequence> element, as there should only be a single 'Activity-Notation' 
element within a choreography.

> * is it valid CDL to have empty exchange <send/> and <receive/> 
> elements?  maybe this is optional to specify what is exactly exchanged.
Yes it is valid for these to be empty. It just means the message value 
being exchanged is non-observable, either in terms of what is being 
sent, or how it should be received.


>
> ----------------------------------------------------------------------------------------------------------------- 
>
> Details by example:
>
> assign-with-causeexception.cdl
> - translation to FSP valid
> - need to add roleType to create unique assignment process
> - FSP process sequence number generation - check increase rate
> - need to map "causeException" attribute on copy to model exception 
> handling
>
> assign-without-causeexception.cdl
> - translation to FSP valid
> - as reqs 1,2,3
> - need to map "workunit" as conditional path. need link with 
> assign-xpath variable to compose.
>
> channeltypes-with-action.cdl
> - failed to be valid FSP
> * there are 3 exchanges in one interaction element - 2xresponds for 
> 1xrequest - does not seem to make sense?
> * also 2nd response is "badPurchaseOrderAckException", but also has a 
> faultName="badPurchaseOrderAckException",
> * think this should be a choice? or in an exception block?
> - reqs. process name to be generated with removed "-" char.  "-" is 
> not valid in FSP process names. [fixed]
> - need to map "record" attribute of receive construct
>
> channeltypes-with-identity-alternate.cdl
> - translation to FSP valid
> * there are 2 interactions without explicit sequencing, would the 
> semantics of CDL therefore be "parallel"?
> * is it valid CDL to have empty exchange <send/> and <receive/> elements?
>
> channeltypes-with-identity-association.cdl
> - translation to FSP valid
> * there are 2 interactions without explicit sequencing, as issue above.
> * is it valid CDL to have empty exchange <send/> and <receive/> 
> elements, as issue above.
>
> channeltypes-with-identity-with-identity-primary.cdl
> - translation to FSP valid
> * is it valid CDL to have empty exchange <send/> and <receive/> 
> elements, as issue above.
>
> channeltypes-with-passing.cdl
> - translation to FSP valid
> * is it valid CDL to have empty exchange <send/> and <receive/> elements?
>
> choreo-with-choice.cdl
> - failed translation to FSP, did not generate unique sequence process 
> names
> - translation to FSP valid after FIX.
>
> choreo-with-complete.cdl
> - translation to FSP valid
> - did not model "complete" aspect of choreography, work needed
>
> choreo-with-coordination.cdl
> - failed translation to FSP, failed with no role, relationship and 
> partcipant typs defined
> - did not model "exceptionBlock" element, work needed
> - did not model "coordination" aspect of choreography, work needed
>
> choreo-with-exception-block.cdl
> - failed translation to FSP
> * failed with no role, relationship and partcipant typs defined
> - did not model "exceptionBlock" element, work needed
>
> choreo-with-finalizer-block.cdl
> - translation to FSP valid
> - did not modl "finalize" for choreograhy Sub, work needed
> - did not model "finalizerBlock" element, work needed
>
> choreo-without-qos.cdl
> - translation to FSP valid
> - need to map "workunit" as conditional path. need link with 
> assign-xpath variable to compose.
>
> choreo-with-parallel.cdl
> - translation to FSP valid
>
> choreo-with-sequence.cdl
> - translation to FSP valid
>
> choreo-with-subchoro.cdl
> - translation to FSP valid
>
> choreo-with-subchoro-complete.cdl
> - translation to FSP valid
> - need to consider "bind" element for channel and messaging passing 
> model.
>
> choreo-with-subchoro-nofree.cdl
> - translation to FSP valid
> - did not model "exceptionBlock" element, work needed
>
> choreo-with-subchoro-timeout-causeException.cdl
> - translation to FSP valid
> - did not model "exceptionBlock" element, work needed
>
> choreo-with-block.cdl
> - translation to FSP valid
> - did not model "workunit" element, work needed
>
> choreo-with-guard.cdl
> - translation to FSP valid
> - did not model "workunit" element, work needed
>
> choreo-with-repeat.cdl
> - translation to FSP valid
> - did not model "workunit" element, work needed
>
>
> Regards
> Howard.
>
> On Tue, 23 Jan 2007, Charlton Barreto wrote:
>
>> Hi,
>>
>> 1) The body of examples with revisions made by Gary and myself.
>>
>> 2) 'Issues.txt' with Gary's questions and my responses.
>>
>> 3) The 'implemented' folder contains the examples that are implemented
>> and working in pi4soa as indicated by Gary.
>>
>> 4) The 'notimplemented' folder contains examples that either relate to
>> features that are not implemented in pi4soa (alignment and coordinated
>> choreographies) as indicated by Gary.
>>
>> 5) The 'questions' folder contains the examples where there are
>> remaining outstanding questions as per the Issues.txt file.
>>
>> -Charlton.
>> -- 
>> charlton_b@mac.com
>> +1.650.222.6507 m
>> +1.415.692.5396 v
>>
>

Received on Monday, 23 April 2007 08:44:40 UTC