BizTalk Enterprise Integration Patterns
The article shows two Enterprise Integration Patterns based on BizTalk.
1. Content Enricher Pattern
When sending messages from one system to another it is common for the target system to require more information than the source system can provide. For example, incoming Address messages may just contain the ZIP code because the designers felt that storing a redundant state code would be superfluous. Likely, another system is going to want to specify both a state code and a ZIP code field. Yet another system may not actually use state codes, but spell the state name out because it uses free-form addresses in order to support international addresses.
Use a specialized transformer, a Content Enricher, to access an external data source in order to augment a message with missing information.
The Content Enricher uses information inside the incoming message (e.g. key fields) to retrieve data from an external source. After the Content Enricher retrieves the required data from the resource, it appends the data to the message.
There is a relevant demo at the codeproject.com.
http://www.codeproject.com/useritems/EnricherPattern.asp
By Naveen Karamchetti.
2. Claim Check Pattern
Sometimes, we want to remove fields only temporarily. For example, a message may contain a set of data items that may be needed later in the message flow, but that are not necessary for all intermediate processing steps. We may not want to carry all this information through each processing step because it may cause performance degradation and makes debugging harder because we carry so much extra data.
Store message data in a persistent store and pass a Claim Check to subsequent components. These components can use the Claim Check to retrieve the stored information.
There is a relevant demo at the codeproject.com.
http://www.codeproject.com/useritems/ClaimCheckPattern.asp
By Naveen Karamchetti.
References:
1. Content Enricher Pattern,
http://www.enterpriseintegrationpatterns.com/DataEnricher.html
2. BizTalk Enterprise Integration Patterns - Part 1
http://www.codeproject.com/useritems/EnricherPattern.asp
3. Claim Check Pattern,
http://www.enterpriseintegrationpatterns.com/StoreInLibrary.html
4. BizTalk Enterprise Integration Patterns - Part 2
http://www.codeproject.com/useritems/ClaimCheckPattern.asp