Correlating separate channel instances to a choreography instance

Within a channelType there is the means to specify an identity, which can be used to correlate individual messages to a channel instance. The correlation can be performed based on extracting the fields (specified within the identity element of the channel type) from the message payload, or if the optional identity element is not specified in the channel type, then I assume this is where a protocol header property would be used to do this correlation. 

Is this assumption correct?

However, there does not appear to be anyway to correlate two separate channel instances with the same choreography instance.

This is possibly why the 'setIdentity' CDL function was put into the spec (although this was removed at the last f2f), but I am not sure this would have been a good general solution to the problem. Although this would have enabled subsequent channel variables to be initialized with their identity, based on business information from messages associated with other channel instances, it would not have worked where the correlation/identity id for a channel instance was provided by underlying protocol properties.

Therefore I believe we need some mechanism for correlating channel instances to a choreography instance. Not sure what mechanism should be used (at present).

Is this a problem? 
If not how is it done in CDL today? 
If it is a problem how could it be solved?

Regards
Gary

Received on Friday, 29 October 2004 11:24:12 UTC