<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>That BizTalk guy from India</title>
        <link>http://geekswithblogs.net/benny/Default.aspx</link>
        <description>Benny Mathew</description>
        <language>en-US</language>
        <copyright>Benny Mathew</copyright>
        <managingEditor>bennyma@microsoft.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>That BizTalk guy from India</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/benny/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Benny's Identity &amp; Integration Journal</title>
            <link>http://geekswithblogs.net/benny/archive/2012/11/28/151392.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2012/11/28/151392.aspx'&gt;http://geekswithblogs.net/benny/archive/2012/11/28/151392.aspx&lt;/a&gt;&lt;/p&gt;&lt;a href="http://bennykmathew.wordpress.com/"&gt;Click here for to get directed to my new blog: http://bennykmathew.wordpress.com/&lt;/a&gt;
 &lt;img src="http://geekswithblogs.net/benny/aggbug/151392.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2012/11/28/151392.aspx</guid>
            <pubDate>Thu, 29 Nov 2012 09:24:05 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2012/11/28/151392.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/151392.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/151392.aspx</trackback:ping>
        </item>
        <item>
            <title>Intro On AppFabric on EndPoint.tv (Steve &amp; Danny)</title>
            <link>http://geekswithblogs.net/benny/archive/2010/04/08/139156.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2010/04/08/139156.aspx'&gt;http://geekswithblogs.net/benny/archive/2010/04/08/139156.aspx&lt;/a&gt;&lt;/p&gt;&lt;div&gt;&lt;a href="http://channel9.msdn.com/shows/Endpoint/endpointtv-Pro-Windows-Server-AppFabric/"&gt;http://channel9.msdn.com/shows/Endpoint/endpointtv-Pro-Windows-Server-AppFabric/&lt;/a&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;Here is a nice intro to Windows Server Appfabric by a good friend and colleague Steve and Danny.Cutting through all the hype and misunderstandings especially between AppFabric in the Cloud vs. Windows Server AppFabric. Also on when to position BizTalk versus Windows Server AppFabric.&lt;/div&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/139156.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2010/04/08/139156.aspx</guid>
            <pubDate>Thu, 08 Apr 2010 15:24:53 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2010/04/08/139156.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/139156.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/139156.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk Benchmark Wizard</title>
            <link>http://geekswithblogs.net/benny/archive/2010/02/16/138004.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2010/02/16/138004.aspx'&gt;http://geekswithblogs.net/benny/archive/2010/02/16/138004.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Check this out:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/biztalk/ee946766.aspx"&gt;http://msdn.microsoft.com/en-us/biztalk/ee946766.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/138004.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2010/02/16/138004.aspx</guid>
            <pubDate>Wed, 17 Feb 2010 06:04:07 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2010/02/16/138004.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/138004.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/138004.aspx</trackback:ping>
        </item>
        <item>
            <title>Static code analysis for BizTalk using BizTalkCop</title>
            <link>http://geekswithblogs.net/benny/archive/2009/03/01/biztalkcop.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2009/03/01/biztalkcop.aspx'&gt;http://geekswithblogs.net/benny/archive/2009/03/01/biztalkcop.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%"&gt;The Problem&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;If you have been a BizTalk developer long enough, you will know that application lifecycle management has always been a pain point when it comes to managing BizTalk projects.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;The Out-of-Box support available in BizTalk Server is not too great for things like automated builds, continuous integration, code analysis, code coverage, unit testing... I can go on and on, but I am sure you get the picture.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Thankfully, most of these are set to improve with the upcoming release of BizTalk Server i.e. BizTalk Server 2009, but there are still improvement areas that I hope the product group will address soon.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;One of the other hard things (IMHO) that one needs to do early-on in a BizTalk project is to decide on the naming convention and projects structure for modular deployment. Sometime this is dictated by your customer and sometimes you just follow what has been decided by your company, simple isn’t it? Wish life was that easy&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;J&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;In reality you will find that customers want you to use their own guidelines that are often not complete or not fully thought-out, and you end up using that and try to fill the gap or modify it by adding your own stuff.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Is this so bad?... &lt;strong&gt;not if &lt;/strong&gt; you have gone through this exercise and got it frozen and signed off before you start your development / coding, else, this can turn out to be the cause for endless frustrations for you and your team.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;This is especially true for BizTalk projects, where you know that small changes to things like namespaces or typenames can cause a rippling effect across the project, and you end up rebuilding / reconfiguring all of the artefacts.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;I have been on &lt;strong&gt;multiple&lt;/strong&gt; projects in the past where naming conventions changed almost every week while the project was halfway through the development phase, so this is not an uncommon thing; however you need to be aware of this and take measures to avoid getting into such situations.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Another challenge is in sticking to the guidelines or conventions that you have so painstakingly chosen and frozen. If you have a large team, you will often see that not all developers are fully aware of the guidelines and conventions that are being followed in the team, especially when developers are constantly moving in and out of the team.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%"&gt;Solution&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;So what can be done in such situations? One of the things you can do on your BizTalk project is to run a static code analyser as part of your daily builds. I have always been a huge fan of build automation and the niceties that come along with it like automated testing, static code analysis report, code coverage report etc. There is nothing that makes you happier than getting up in the morning gazing at your PDA / mobile device to see that there were no errors or build breaks on the nightly build, especially when you are the Dev Lead / Architect on the project.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;You must be thinking... “all this is great... but isn’t this is a BizTalk Solution?... how do you automate checking naming conventions?... especially on things like orchestration shapes, map names, physical ports etc...”. well you are in luck, you can now do static code analysis on BizTalk solutions too, thanks to Elton Stoneman for this cool new tool/plug-in called BizTalkCop available on codeplex.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Check out the links:&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;a href="http://geekswithblogs.net/EltonStoneman/archive/2008/11/14/introducing-biztalkcop.aspx"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;http://geekswithblogs.net/EltonStoneman/archive/2008/11/14/introducing-biztalkcop.aspx&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;a href="http://www.codeplex.com/BizTalkCop"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;http://www.codeplex.com/BizTalkCop&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;BizTalkCop is essentially a set of FxCop rules that will allow you to inspect BizTalk assemblies for structure and naming convention of your BizTalk artefacts such as Orchestrations, Pipelines, Schemas, Maps etc. It can even look into the deployed solutions inside BizTalk Server (using BizTalk Object Model and BizTalkMgmtDB) to validate the names of your physical ports and receive locations on your deployed BizTalk Server application.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;If you are already familiar with FxCop, BizTalkCop provides you the same experience since it is just an extension of the FxCop ruleset. &lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;BizTalkCop is currently is release 1.0 and contains a set of rules based on Scott Colestock's naming conventions, but they're (mostly) configurable so you can modify them to suit your own standards. You can create your new custom rules as well, since the full source code is provided with base classes and frameworks.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Another thing to note is that since BizTalk (2006/R2) projects are not integrated with Code Analysis tool in Visual Studio 2005, you need to download and install FxCop separately before installing BizTalkCop (even if you are using the Team Suite edition of Visual Studio 2005). I have not tried it with BizTalk 2009 Beta yet since I have it on Professional edition of Visual Studio 2008 installed on my VPC (Code Analysis is available only on Visual Studio Team Suite).&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;The link above provides instructions on how to install and configure BizTalkCop so I am not going to detail it out here.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%"&gt;Demo – The Bad Project&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Let me illustrate the usefulness of BizTalkCop by running it on a badly done solution. I created a very simple BizTalk application a la “Hello World” in BizTalk (I call it the ‘BadProject’) without giving much attention to the project structure or naming convention (just used the default names, like we do most of the time). The application basically receives an inventory replenishment request; the request is transformed into a purchase order request and is sent out. For simplicity sake, both the receive port and the send port use FILE adapters.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;So essentially, my BizTalk project consists of a single BizTalk project within which there are two Schemas, a Map and an Orchestration as shown in the solution explorer screenshot below:&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="208" alt="" width="334" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop010_BadProjSlnExpl.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;The orchestration, transformation and schemas are all very elementary as shown below (notice the naming of the artefacts highlighted).&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="544" alt="" width="580" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop020_BadProjOrch.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="237" alt="" width="579" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop030_BadProjMap.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;After I have built and deployed the solutions, I fire up FxCop, load the target BizTalk application assembly and hit the Analyze button. I selected only BizTalkCop rules and unchecked others&lt;/span&gt;&lt;/div&gt;
&lt;table style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BACKGROUND: #c6d9f1; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" border="1"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="LINE-HEIGHT: normal"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 10pt"&gt;Note:&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 10pt"&gt; You also need to make sure that BizTalkCop is configured to point to the right BizTalk application so that it can validate the application level artifacts like the physical post names etc.&lt;/span&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt; &lt;img height="753" alt="" width="1090" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop040_BadProjFxCop1.jpg" /&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;img height="751" alt="" width="1091" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop050_BadProjFxCop2.jpg" /&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;You see from the screenshots that many errors (about 28 of them) are generated for such a simple application. &lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Here are the errors:&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;The errors are pretty self explanatory so I don’t want to go through each of them.&lt;/span&gt;&lt;/div&gt;
&lt;table style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BACKGROUND: #c6d9f1; MARGIN: auto auto auto 36pt; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" border="1"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;1.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Port names should be prefixed with their direction - start 'ReceivePort1' with 'Receive.'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;2.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Port names should be prefixed with their direction - start 'SendPort1' with 'Send.'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;3.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Receive Location names should be prefixed with their Receive Port name - start 'Receive Location1' with 'ReceivePort1'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;4.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Receive Location names should be suffixed with their transport type - end 'Receive Location1' with '.FILE'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;5.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Artifacts should be declared in modules with the correct suffix - consider module name 'BadProject.Schemas'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;6.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Schema names should end with the data format. Format: 'inventoryRequest' is unknown&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;7.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Schema names should begin with the root node. Start: 'inventoryRequest' with: 'Root'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;8.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Artifacts should be declared in modules with the correct suffix - consider module name 'BadProject.Transforms'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;9.&lt;span style="FONT: 7pt 'Times New Roman'"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Map names should have the format "SourceSchema_DestinationSchema"&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;10. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Artifacts should be declared in modules with the correct suffix - consider module name 'BadProject.Orchestrations'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;11. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration members should be Camel cased. Replace Message name: 'InvReqMsg' with: 'invReqMsg'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;12. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration members should be Camel cased. Replace Message name: 'PurchaseOrderMsg' with: 'purchaseOrderMsg'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;13. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration members should be Camel cased. Replace Port name: 'Port_1' with: 'port1'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;14. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration members should be Camel cased. Replace Port name: 'Port_2' with: 'port2'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;15. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration shapes should be correctly named - replace 'ConstructMessage_PurchaseOrder' with 'Construct_PurchaseOrderMsg'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;16. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration shapes should be correctly named - replace 'Transform_InvToPurchaseOrder' with 'Transform_inventoryRequest_purchaseOrderSchema'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;17. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Shapes should have the correct prefix - start 'MessageAssignment_1' with 'Assign_'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;18. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Shapes should have the correct prefix - start 'Receive_InvRequest' with 'Rcv_'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;19. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Shapes should have the correct prefix - start 'Send_POMsg' with 'Snd_'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;20. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration types should be Pascal cased. Replace Port Type name: 'PortType_1' with: 'PortType1'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;21. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration types should be Pascal cased. Replace Port Type name: 'PortType_2' with: 'PortType2'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;22. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Types should have the correct suffix - end 'PortType_1' with 'PortType'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;23. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Types should have the correct suffix - end 'PortType_2' with 'PortType'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;24. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Types should have the correct suffix - end 'Port_1' with 'Port'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;25. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Orchestration Types should have the correct suffix - end 'Port_2' with 'Port'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;26. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Artifacts should be declared in modules with the correct suffix - consider module name 'BadProject.Schemas'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;27. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Schema names should end with the data format. Format: 'purchaseOrderSchema' is unknown&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 462.1pt; BORDER-TOP-COLOR: #f0f0f0; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="616"&gt;
            &lt;div style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; LINE-HEIGHT: normal"&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;28. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="FONT-SIZE: 8pt"&gt;Schema names should begin with the root node. Start: 'purchaseOrderSchema' with: 'Root'&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;You can also save the FxCop project and use it in the command line option to generate a pretty cool report as show below.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img alt="" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop060_BadProjReport.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%"&gt;Demo – The Good Solution&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Now I took the same solution and made changes by following the naming conventions and also restructuring the solution to be suitable for modular deployment. You see from the illustration below, I have split the application into three separate projects so that it is not only easier to maintain and saves time during development, but it is &lt;u&gt;absolutely critical&lt;/u&gt; that it is broken in this manner from an administration point of view when the solution is in production. Any seasoned BizTalk developer / administrator will understand what I mean here, it’s a whole different topic and don’t want to get swayed into that.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="311" alt="" width="385" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop070_GoodSlnExpl.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;You also see in the solution explorer above that the name of some of the artefacts have also been changed in accordance with the naming convention. For example, the schema names indicate the data format and the root node name of the schema. I also made sure that the physical ports confirm to the naming standards.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;The orchestration, map and the schemas below show that changes have been made in the names of the artefacts.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; &lt;img height="530" alt="" width="578" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop080_GoodSlnOrch.jpg" /&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;img height="221" alt="" width="576" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop090_GoodSlnMap.jpg" /&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;You can see from the below screenshots that the errors have been reduced to &lt;strong&gt;just one error&lt;/strong&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="540" alt="" width="858" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop100_GoodSlnFxCop1.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;img height="630" alt="" width="719" src="http://gwb.blob.core.windows.net/benny/BizTalkCop/BizCop110_GoodSlnReport.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%"&gt;Conclusion&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;To sum it all up, I feel FxCop / BizTalkCop makes a great tool to have in your arsenal for that next BizTalk project you are waiting for or even in your current project. Saves you (or the SQA team) a lot of time from having to check for the naming conventions manually on a routine basis and provides you reports on demand.&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;It can be used both on the individual machines as well as on the build server. You can integrate it with your build scripts so that your application health report now also includes static code analysis among other things. This way you can be assured and can sleep peacefully knowing that the code drop you just sent to the customer conforms to all the naming conventions without having to manually review it at the eleventh-hour, not to mention the amount of time saved. I hope to see many more new rules and improvements from Elton in future releases of BizTalkCop.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Benny Mathew&lt;br /&gt;
&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Sr.Consultant, MGSI (Microsoft Global Services, India).&lt;br /&gt;
&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;font face="Arial"&gt;While I acknowledge that I am an employee of Microsoft., any &amp;amp; all views expressed in this article are mine and do not necessarily reflect the views of Microsoft.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/129741.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2009/03/01/biztalkcop.aspx</guid>
            <pubDate>Sun, 01 Mar 2009 12:03:20 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2009/03/01/biztalkcop.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/129741.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/129741.aspx</trackback:ping>
        </item>
        <item>
            <title>GUI for BizUnit on codeplex</title>
            <link>http://geekswithblogs.net/benny/archive/2008/03/25/120738.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2008/03/25/120738.aspx'&gt;http://geekswithblogs.net/benny/archive/2008/03/25/120738.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;A good friend and colleague of mine has started a project on codplex to build a GUI for BizUnit,&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bud&amp;amp;DownloadId=30463" /&gt; &lt;/p&gt;
&lt;p&gt;Check it out here : &lt;a href="http://www.codeplex.com/bud"&gt;http://www.codeplex.com/bud&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/120738.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2008/03/25/120738.aspx</guid>
            <pubDate>Tue, 25 Mar 2008 22:25:17 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2008/03/25/120738.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/120738.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/120738.aspx</trackback:ping>
        </item>
        <item>
            <title>Did you know? – You can read / write to BAM database directly from outside BizTalk.</title>
            <link>http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;You know that BAM is used to gather statistics from your BizTalk application. What you probably don’t know is that:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.75in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2; tab-stops: list .75in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;You can collect BAM data from your non-BizTalk applications such as external .NET components that BizTalk calls into.&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.75in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2; tab-stops: list .75in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Tracking profile editor (TPE) is not the only way to collect data you can use a set of APIs available in the Microsoft.BizTalk.Bam.EventObservation namespace to read and write directly into the BAMPrimaryImport database.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Check out some of the links here:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1; tab-stops: list .5in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.topxml.com/rbnews/BizTalk-BAM-activity/re-29195_Business-Activity-Monitoring--GenerateTypedBAMAPI-Tool.aspx"&gt;&lt;font color="#800080"&gt;http://www.topxml.com/rbnews/BizTalk-BAM-activity/re-29195_Business-Activity-Monitoring--GenerateTypedBAMAPI-Tool.aspx&lt;/font&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1; tab-stops: list .5in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.developer.com/net/net/article.php/11087_3587296_2"&gt;&lt;font color="#800080"&gt;http://www.developer.com/net/net/article.php/11087_3587296_2&lt;/font&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1; tab-stops: list .5in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://blogs.msdn.com/keithlim/archive/2006/02/02/522649.aspx"&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/keithlim/archive/2006/02/02/522649.aspx&lt;/font&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1; tab-stops: list .5in"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt &amp;quot;Times New Roman&amp;quot;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://blogs.msdn.com/keithlim/archive/2006/03/08/545851.aspx"&gt;&lt;font color="#800080"&gt;http://blogs.msdn.com/keithlim/archive/2006/03/08/545851.aspx&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/113219.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx</guid>
            <pubDate>Fri, 15 Jun 2007 03:42:34 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/06/14/113219.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/113219.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/113219.aspx</trackback:ping>
        </item>
        <item>
            <title>Open Source BizTalk Utilities on CodePlex</title>
            <link>http://geekswithblogs.net/benny/archive/2007/06/14/113218.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/06/14/113218.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/06/14/113218.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;I am sure most of you (not talking about the BizTalk gurus out there &lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Wingdings; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-bidi-font-family: Arial"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;) have worked with some of the open source utilities available for BizTalk such as the &lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;BizTalk Adapter Wizard&lt;/em&gt;&lt;/strong&gt; or the &lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;BizTalk Server Pipeline Component Wizard&lt;/em&gt;&lt;/strong&gt; or &lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;BizUnit&lt;/em&gt;&lt;/strong&gt;. However what some of you may not know is the wealth of other open source utilities for BizTalk available on CodePlex.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Here are some of the interesting ones and their descriptions as found on CodePlex :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/sdctasks"&gt;&lt;font color="#800080"&gt;SDC Tasks Library&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - .&lt;/span&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;The SDC Tasks are a collection of MSBuild tasks designed to make your life easier. You can use these tasks in your own MSBuild projects. You can use them stand alone and, if all else fails, you can use them as sample code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/bizunit"&gt;&lt;font color="#800080"&gt;BizUnit - Framework for Automated Testing of Distributed Systems&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - BizUnit enables automated tests to be rapidly developed. BizUnit is a flexible and extensible declarative test framework targeted that rapidly enables the automated testing of distributed systems, for example it is widely used to test BizTalk solutions. BizUnit is fully extensible. Its approach is to enable test cases to be constructed from generic reusable test steps, test cases are defined in XML which allows them to be auto-generated and also enables the ‘fixing up’ of Url’s for different environments, e.g. test, staging and production environments. Defining test cases in XML enables test cases to be auto-generated.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/PatternWizard"&gt;&lt;font color="#800080"&gt;BizTalk Server Pattern Wizard&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - The BizTalk Pattern Wizard is an extensible tool to help you capture, share, and reuse your orchestration best practices. By using the BizTalk Pattern Wizard, you can capture a best practice, turn it into a generalized and configurable pattern, and share that pattern with the rest of your team or the entire BizTalk community. The wizard comes with over a dozen patterns ready for implementation in your next project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.codeplex.com/WCFBizTalk"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;font color="#800080"&gt;WCF Adapter for BizTalk Server 2006&lt;/font&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/BizTalkAdapterWizard"&gt;&lt;font color="#800080"&gt;BizTalk Adapter Wizard for BizTalk Server 2006&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - The BizTalk Adapter Wizard for BizTalk Server 2006 is a Visual Studio 2005 project wizard which creates all of the framework code for your custom BizTalk adapter. The adapter wizard is accessible from the Visual Studio menu: File - New - Project - BizTalk projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/BizTalkDocumenter"&gt;&lt;font color="#800080"&gt;BizTalk Server 2006 Documenter&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - Creates compiled help files for a given BTS 2006 installation. This tool can be run on an ad-hoc basis using the UI or from the command line as a post build/deploy task to create a compiled help file describing a BTS 2006 installation. It will compile: BTS Host configuration, Send/Receive port configuration, Orchestration diagrams, Schema and Map content, Pipeline process flow, Adapter configuration, Rule engine vocabularies and policies, More… and publish them as compiled help files. Optionally you can embed custom HTML content and custom descriptions for all BTS artifacts to produce a more customized look and feel to the CHM output&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/BiztalkOrcProfiler"&gt;&lt;font color="#800080"&gt;BizTalk Server 2006 Orchestration Profiler&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - Creates CHM report files illustrating the level of coverage for specified BizTalk orchestrations. This tool can be run to gain a consolidated view of orchestration tracking data for a specified period of time to help developers get an idea of how their orchestrations are being processed and how much coverage they are getting in their testing. In addition to simple coverage information the data presented helps to identify latency and code path exceptions by highlighting long running and error prone orchestration shapes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/PSBizTalk"&gt;&lt;font color="#800080"&gt;PowerShell BizTalk Provider&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - A full PowerShell provider for exposing BizTalk Server as a filesystem. Administer your BizTalk installation. List all applications / orchestrations / Schemas. Stop an application, enlist an orchestration ... Use the full power of the shell to script away the pain of GUI based mass-management.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://www.codeplex.com/MapCop"&gt;&lt;font color="#800080"&gt;MapCop&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - A program for testing BizTalk map files (.BTM) for a set of best practices.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;a href="http://bloggingabout.net/blogs/wellink/archive/2007/02/12/limit-the-number-of-instances-of-any-biztalk-service.aspx"&gt;&lt;font color="#800080"&gt;BizTalk Instance Controller&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; - Limit the number of instances of any BizTalk Service.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Have Fun!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/113218.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/06/14/113218.aspx</guid>
            <pubDate>Fri, 15 Jun 2007 03:01:08 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/06/14/113218.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/113218.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/113218.aspx</trackback:ping>
        </item>
        <item>
            <title>Links to materials on GoF Design Patterns</title>
            <link>http://geekswithblogs.net/benny/archive/2007/06/14/113217.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/06/14/113217.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/06/14/113217.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;As I am into BizTalk consulting / development / training for quite sometime now, I feel that I am missing out on hardcore c# programming and the enchantment of object oriented concepts lately.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;For instance, the other day I was trying to recollect the implementation details of the Decorator design pattern, and searched for it on the Internet and in the process, got glued at the wealth of information available on design patterns.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;So I thought it would be helpful to have a quick reference list of the materials available so that i don't waste time searching for them again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Here goes:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Abstract Factory&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternAbstract.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternAbstract.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Abstract_factory_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Abstract_factory_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/FactoryPattern.htm"&gt;&lt;font color="#800080"&gt;http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/FactoryPattern.htm&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Factory Method&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternFactory.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternFactory.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Factory_method_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Factory_method_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://gsraj.tripod.com/design/creational/factory/factory.html"&gt;&lt;font color="#800080"&gt;http://gsraj.tripod.com/design/creational/factory/factory.html&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Facade&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternFacade.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternFacade.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Facade_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Facade_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://aspalliance.com/970_Facade_Design_Pattern"&gt;&lt;font color="#800080"&gt;http://aspalliance.com/970_Facade_Design_Pattern&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Iterator&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternIterator.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternIterator.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://home.earthlink.net/~huston2/dp/iterator.html"&gt;&lt;font color="#800080"&gt;http://home.earthlink.net/~huston2/dp/iterator.html&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.c-sharpcorner.com/UploadFile/acusis/IteratorPattern07072006023056AM/IteratorPattern.aspx"&gt;&lt;font color="#800080"&gt;http://www.c-sharpcorner.com/UploadFile/acusis/IteratorPattern07072006023056AM/IteratorPattern.aspx&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Observer&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternObserver.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternObserver.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Observer_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Observer_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/ObserverObservable.htm"&gt;&lt;font color="#800080"&gt;http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/ObserverObservable.htm&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://sern.ucalgary.ca/courses/SENG/609.04/W98/lamsh/observerLib.html"&gt;&lt;font color="#800080"&gt;http://sern.ucalgary.ca/courses/SENG/609.04/W98/lamsh/observerLib.html&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Singleton&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternSingleton.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternSingleton.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Singleton_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Singleton_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/singleton.htm"&gt;&lt;font color="#800080"&gt;http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/singleton.htm&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.javaworld.com/javaworld/jw-04-2003/jw-0425-designpatterns.html"&gt;&lt;font color="#800080"&gt;http://www.javaworld.com/javaworld/jw-04-2003/jw-0425-designpatterns.html&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;Adapter&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;&lt;br /&gt;
&lt;a href="http://www.dofactory.com/Patterns/PatternAdapter.aspx"&gt;&lt;font color="#800080"&gt;http://www.dofactory.com/Patterns/PatternAdapter.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Adapter_pattern"&gt;&lt;font color="#800080"&gt;http://en.wikipedia.org/wiki/Adapter_pattern&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/adapter.htm"&gt;&lt;font color="#800080"&gt;http://www.exciton.cs.rice.edu/JAvaResources/DesignPatterns/adapter.htm&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://vico.org/pages/PatronsDisseny/Pattern%20Adapter%20Object/index.html"&gt;&lt;font color="#800080"&gt;http://vico.org/pages/PatronsDisseny/Pattern%20Adapter%20Object/index.html&lt;/font&gt;&lt;/a&gt;&lt;br style="mso-special-character: line-break" /&gt;
&lt;br style="mso-special-character: line-break" /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt; &lt;br /&gt;
More to follow soon...&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/113217.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/06/14/113217.aspx</guid>
            <pubDate>Fri, 15 Jun 2007 00:45:14 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/06/14/113217.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/113217.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/113217.aspx</trackback:ping>
        </item>
        <item>
            <title>Great BizTalk Tips by Marty Wasznicky and Scott Zimmerman</title>
            <link>http://geekswithblogs.net/benny/archive/2007/04/14/111628.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/04/14/111628.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/04/14/111628.aspx&lt;/a&gt;&lt;/p&gt;&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;Marty Wasznicky&amp;nbsp; and Scott Zimmerman have published a great article on MSDN on some best practices while developing BizTalk application.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;Please read the detailed article here &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/msdnmag/issues/07/05/BizTalk/default.aspx"&gt;&lt;FONT face=Arial size=2&gt;http://msdn.microsoft.com/msdnmag/issues/07/05/BizTalk/default.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;Here are the main points of the article:&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;1. Always Use Multi-Part Message Types&lt;BR&gt;2. Always Try to Design Orchestrations with Direct-Bound Ports&lt;BR&gt;3. Always Use Separate Internal and External Schemas&lt;BR&gt;4. Never Expose Your Internal Schemas Directly in WSDL&lt;BR&gt;5. Always Optimize the BizTalk Registry for Web Services&lt;BR&gt;6. Always Set the Assembly Key File with a Relative Path&lt;BR&gt;7. Never Overlook Free Sample Code&lt;BR&gt;8. Debug XSLT in Visual Studio&lt;BR&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;Great job Guys, realy well written!&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;&lt;FONT face=Arial size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class=pd xmlns:user="http://msdn.microsoft.com"&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT size=2&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Website: &lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#800080&gt;http://www.seamless.in&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;Blog: &lt;A href="http://geekswithblogs.net/benny"&gt;&lt;FONT color=#800080&gt;http://GeeksWithBlogs.net/benny&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;BizTalk Usergroup: &lt;A href="http://groups.google.co.in/group/b-bug"&gt;&lt;FONT color=#800080&gt;http://groups.google.co.in/group/b-bug&lt;/FONT&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT size=2&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/111628.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/04/14/111628.aspx</guid>
            <pubDate>Sat, 14 Apr 2007 12:57:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/04/14/111628.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/111628.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/111628.aspx</trackback:ping>
        </item>
        <item>
            <title>Wish you all a happy Easter</title>
            <link>http://geekswithblogs.net/benny/archive/2007/04/06/111037.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/04/06/111037.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/04/06/111037.aspx&lt;/a&gt;&lt;/p&gt;Here's wishing you all a happy Easter! &lt;img src="http://geekswithblogs.net/benny/aggbug/111037.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/04/06/111037.aspx</guid>
            <pubDate>Sat, 07 Apr 2007 10:58:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/04/06/111037.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/111037.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/111037.aspx</trackback:ping>
        </item>
        <item>
            <title>Latest BizTalk 2006 Documentation, PDF vs CHM, which is better?</title>
            <link>http://geekswithblogs.net/benny/archive/2007/03/29/110312.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/03/29/110312.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/03/29/110312.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Everybody these days seems to be pretty excited about the new PDF version of BizTalk 2006 documentation (Btw, a latest .CHM version is out as well, but there is no hoopla around that).&lt;/P&gt;
&lt;P&gt;So thought I'll&amp;nbsp; download the PDF version and check it out as I have been using only the .CHM version extensively. But I was not very impressed with what I saw.&lt;/P&gt;
&lt;P&gt;To start with, the PDF version is really huge file 114 MB (whereas the .CHM version is only 44MB, the contents are the same), there is no way my PDA mobile device will load that kind of thing even with external memory card.&lt;/P&gt;
&lt;P&gt;The links in the PDF version are not active (not clickable), so you cannot navigate through the document&lt;/P&gt;
&lt;P&gt;Searching through the pdf document is very slow and the interface not as user friendly as the .CHM version.&lt;/P&gt;
&lt;P&gt;The CHM version on the other hand (IMHO) is more convenient, and the search is blazing fast, you can do incremental search as well using the index tab.&lt;BR&gt;You can even maintain a list of favorite pages just like keeping shortcuts, and the best part is, when I overwrote the old .CHM file with the latest version, all the old favorite pages (shortcuts) appeared intact.&lt;/P&gt;
&lt;P&gt;I am not sure why we have a PDF version in the first place, I am sure missing out on something, someone kindly enlighten me please.&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Thanks &amp;amp; Regards&lt;BR&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&amp;nbsp;&lt;BR&gt;Website: &lt;A href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/A&gt;&lt;BR&gt;Blog: &lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;BizTalk Usergroup: &lt;A href="http://groups.google.co.in/group/b-bug"&gt;http://groups.google.co.in/group/b-bug&lt;/A&gt;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/110312.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/03/29/110312.aspx</guid>
            <pubDate>Fri, 30 Mar 2007 11:35:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/03/29/110312.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/110312.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/110312.aspx</trackback:ping>
        </item>
        <item>
            <title>Why you can’t access some promoted / distinguished properties inside the pipeline.</title>
            <link>http://geekswithblogs.net/benny/archive/2007/03/29/110226.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/03/29/110226.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/03/29/110226.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Some of us when new to building custom pipeline components would have faced this problem, especially with long messages.&lt;/P&gt;
&lt;P&gt;You have a custom pipeline component placed downstream after the disassembler component and expect that the disassembler component would have promoted / written the required schema fields into the context, so that your component can reach out to the context and access them, but you find that it fetches a null even when the message has a value.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;This is because the pipeline works in a streaming fashion&lt;/STRONG&gt;, which means, all components in the pipeline gets started as the message flows through them. For example, before the disassembler has finished its work, your custom component kicks-in and tries to access the context. Now if the value that you are looking for is somewhere at the end of a lengthy message, it would not yet have got read by the disassembler to be able to promote it into the context, but your custom component already tried fetching it and failed.&lt;/P&gt;
&lt;P&gt;One easy solution to this is to read the entire stream from your custom component before accessing the context, this will make sure that all previous components have finished its job and have promoted / written the value into the context. However this is not a good approach as you will end up reading the whole message into memory and may cause an Out-Of-Memory error. You will also anyway need to convert it back to a stream and reset the stream pointers before you can pass it on further since the whole BizTalk architecture is stream based.&lt;/P&gt;
&lt;P&gt;Another option (the correct way, but a bit more complex) is to wrap the stream in your own stream and hook to its events to notify when it had finished the reading fully, so that you can go ahead and access the context.&lt;/P&gt;
&lt;P&gt;If you are building a custom pipeline component, maybe its worth checking out an undocumented class called XpathMutatorStream, defined within the Microsoft.BizTalk.Streaming namespace (available only in the GAC, Microsoft.BizTalk.Streaming.dll) &lt;/P&gt;
&lt;P&gt;Check out the following article by Martijn Hoogendoorn for more on this:&lt;BR&gt;&amp;nbsp;&lt;A href="http://martijnh.blogspot.com/2006/03/xpathmutatorstream.html"&gt;http://martijnh.blogspot.com/2006/03/xpathmutatorstream.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;BR&gt;Thanks &amp;amp; Regards&lt;BR&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&amp;nbsp;&lt;BR&gt;Website: &lt;A href="http://www.seamless.in"&gt;http://www.seamless.in&lt;/A&gt;&lt;BR&gt;Blog: &lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;BizTalk Usergroup: &lt;A href="http://groups.google.co.in/group/b-bug"&gt;http://groups.google.co.in/group/b-bug&lt;/A&gt;&lt;BR&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/110226.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/03/29/110226.aspx</guid>
            <pubDate>Fri, 30 Mar 2007 01:21:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/03/29/110226.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/110226.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/110226.aspx</trackback:ping>
        </item>
        <item>
            <title>Did you know? (XMLReceivePipeline, Schema validation, XMLDisassembler)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/01/22/104208.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/01/22/104208.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/01/22/104208.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Did you know?&lt;BR&gt;The default XMLReceivePipeline does not validate the structure of the input XML message. Based on the MessageType of the input message, it will try to lookup a document specification (schema) and if it finds one, will do all the required property promotions / distinguish fields as specified in the schema and also promote the MessageType.&lt;BR&gt;If there is no schema deployed in BizTalk that match the MessageType of the input message, it simply throws an error as shown below.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Finding the document specification by message type &amp;lt;MessageType of the input message&amp;gt; failed. Verify the schema deployed properly.&amp;nbsp; &lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;On the other hand, if you are using a custom pipeline with "XML disassembler" component and you have added your schema in the document schemas collection, it will check to see if the MessageType of the input message match any of the schemas specified in the Document schemas collection ONLY, if not, it will throw an error a shown below.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;No Disassemble stage components can recognize the data.&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Note that, this error occurs even if you have a schema deployed that matches the MessageType of the input message, but is not available in the Document schemas collection.&lt;BR&gt;The above is obvious / expected behavior... this is just a refresher.&lt;/P&gt;
&lt;P&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;A href="http://www.seamless.in"&gt;http://www.seamless.in&lt;/A&gt;&lt;BR&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/104208.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/01/22/104208.aspx</guid>
            <pubDate>Tue, 23 Jan 2007 08:38:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/01/22/104208.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/104208.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/104208.aspx</trackback:ping>
        </item>
        <item>
            <title>Clean up your BizTalk databases</title>
            <link>http://geekswithblogs.net/benny/archive/2007/03/28/110122.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/03/28/110122.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/03/28/110122.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Here are a few scripts / stored procedures that most of the BizTalk newbies would love to know.&lt;/P&gt;
&lt;P&gt;These scripts are very useful in a development environment to clean up your MessageBox and Tracking databases.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=4&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=4&gt;To clean up the MessageBox&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;First create the stored procedure bts_CleanupMsgBox by running the sql script found in &lt;EM&gt;&amp;lt;BizTalk Installation Folder&amp;gt;&lt;/EM&gt;\Schema\&lt;STRONG&gt;msgbox_cleanup_logic.sql&lt;/STRONG&gt; against your MessageBox database(BizTalkMsgBoxDb). 
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;&lt;FONT color=#ff0000&gt;Note that your BizTalkMsgBoxDb database will already have a dummy stored procedure by the same name which does nothing, so it is important that you run the above script if this is your first time.&lt;/FONT&gt;&lt;/EM&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Stop all BizTalk services. 
&lt;LI&gt;Reset IIS server (run iisreset from start/run) if you are running any webservices 
&lt;LI&gt;Execute stored procedure bts_CleanupMsgbox on your message box database 
&lt;LI&gt;Execute stored procedure bts_PurgeSubscriptions on your message box database 
&lt;LI&gt;Restart all BizTalk services&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=4&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=4&gt;To clean up the Tracking data&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Stop all BizTalk services. 
&lt;LI&gt;Execute stored procedure dtasp_CleanHMData on your tracking database (BizTalkDTADb) 
&lt;LI&gt;Restart all BizTalk services&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Regards&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Website: &lt;A href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/A&gt;&lt;BR&gt;Blog: &lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;BizTalk Usergroup: &lt;A href="http://groups.google.co.in/group/b-bug"&gt;http://groups.google.co.in/group/b-bug&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/110122.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/03/28/110122.aspx</guid>
            <pubDate>Thu, 29 Mar 2007 07:29:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/03/28/110122.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/110122.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/110122.aspx</trackback:ping>
        </item>
        <item>
            <title>Books on BizTalk Server 2006</title>
            <link>http://geekswithblogs.net/benny/archive/2007/03/13/108581.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/03/13/108581.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/03/13/108581.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Here is a handy list of books available on BizTalk Server 2006. Note that some of them are not published as of this writing:&lt;BR&gt;&lt;BR&gt;1. &lt;STRONG&gt;BizTalk 2006 Recipes: A Problem-Solution Approach&lt;/STRONG&gt; by Mark Beckner, Ben &lt;BR&gt;Goeltz, Brandon Gross, and Brennan O'Reilly (Paperback - Sep 13, 2006)&lt;BR&gt;&lt;BR&gt;2. &lt;STRONG&gt;Pro BizTalk 2006 (Pro)&lt;/STRONG&gt; by George Dunphy and Ahmed Metwally (Paperback - &lt;BR&gt;Oct 23, 2006)&lt;BR&gt;&lt;BR&gt;3. &lt;STRONG&gt;Foundations of BizTalk Server 2006 (Foundations)&lt;/STRONG&gt; by Daniel Woolston &lt;BR&gt;(Paperback - Jan 8, 2007)&lt;BR&gt;&lt;BR&gt;Not yet published&lt;BR&gt;4. &lt;STRONG&gt;Microsoft BizTalk Server 2006 Unleashed&lt;/STRONG&gt; by Stephen Mohr and Scott &lt;BR&gt;Woodgate (Paperback)&lt;BR&gt;&lt;BR&gt;5. &lt;STRONG&gt;Professional BizTalk Server 2006 &lt;/STRONG&gt;by Darren Jefford and Kevin T. Smith &lt;BR&gt;(Paperback)&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;-- &lt;BR&gt;Regards&lt;BR&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;BR&gt;&lt;A href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/A&gt;&lt;BR&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;&lt;A href="http://groups.google.co.in/group/b-bug"&gt;http://groups.google.co.in/group/b-bug&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/108581.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/03/13/108581.aspx</guid>
            <pubDate>Tue, 13 Mar 2007 13:05:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/03/13/108581.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/108581.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/108581.aspx</trackback:ping>
        </item>
        <item>
            <title>New in BizTalk 2006</title>
            <link>http://geekswithblogs.net/benny/archive/2007/02/03/105323.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/02/03/105323.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/02/03/105323.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;When I do corporate training, I always get asked this question... "&lt;EM&gt;So what is new in BizTalk 2006 when compared to BizTalk 2004&lt;/EM&gt;?" mostly from people who have been using BizTalk 2004. So here I have tried to summarize some of the things. Note this is by no means an exhaustive listing as there are other small but significant improvements.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;SETUP&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Automatic installation of redistributable components. &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In BizTalk Server 2006, the BizTalk team provide a single file that contains the latest version of all redistributable components required by BizTalk Server during installation, eliminating the need for users to individually search for the components.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Simplified setup experience for first-time users. &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;BizTalk Server 2006 includes a significantly simpler installation experience for the developer, single machine user, and the first time user. Selecting to install the product by using the default setting will allow all of the product's components to be installed under a single account on one machine, with minimal need of user input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Flexible setup experience for advanced users. &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In BizTalk Server 2006, the setup experience has been redesigned to provide greater flexibility to support the advanced user tasked with deploying solutions across large server farm. Once installation completes, the custom configurations can be exported and imported to ease the installation of settings across server farms or development build labs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Seamless upgrade experience. &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;Upgrading from BizTalk Server 2004 to BizTalk Server 2006 is an in-place upgrade process. When a customer executes the BizTalk Server 2006 setup on a machine where BizTalk Server 2004 is already installed, the setup program will automatically upgrade the installation to BizTalk Server 2006. All solutions built for this earlier version will work unchanged in the new version.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;OPERATIONS&lt;/STRONG&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Introducing the application concept&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;&amp;nbsp;BizTalk Server 2006 formalizes the concept of a BizTalk application by providing a logical container for housing all the artifacts for a given solution. This allows administrators to work with a complete BizTalk application as a unit, greatly simplifying the management, troubleshooting, and deployment of business processes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Orchestration Zooming&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In BizTalk 2004, working with complex orchestrations in the Orchestration Designer sometimes requires a lot of scrolling on the design surface to view different parts of the orchestration. In BizTalk Server 2006, the designer has been enhanced to provide the ability to zoom in and out on an orchestration, allowing a developer to view only those parts of an orchestration of current interest.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Flat File Schema Wizard&lt;/STRONG&gt;&lt;BR&gt;The BizTalk Flat File Schema Wizard is designed to simplify the process of creating flat file schemas by providing the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;UL type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;The ability to use flat file instances as input&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;A visual design surface for working with delimited and positional flat file schemas&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;An interactive wizard-based process for adding elements to the schema and defining flat file related annotations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Application packaging&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;Using the BizTalk Administration Console, an administrator can package entire applications into .msi files by just right-clicking on the application and exporting as&amp;nbsp;.msi file.&amp;nbsp;Once packaged, installing these applications to one or more servers is as easy as running / importing the .msi file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;More Powerful Administration Console&lt;/STRONG&gt;&lt;BR&gt;In BizTalk Server 2006, all the management functionality is consolidated into the BizTalk Administration Console. Users now have the ability to create artifacts and messaging components by using the console in addition to configuring, deploying, stopping, and starting applications across multiple servers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Server health monitoring&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;&amp;nbsp;Using the BizTalk Administration Console's Group Hub page, an administrator can view at a glance the health of currently running BizTalk applications. Rather than requiring an administrator to search for problems, the Group Hub page uses color-coded indicators to display those problems, allowing the administrators to take a more proactive approach to application monitoring.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;ADAPTERS&lt;/STRONG&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;POP3 Adapter&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;BizTalk Server 2004 provides support for sending email through the SMTP adapter, however, no out-of-the-box support is provided for receiving email. With the introduction of the POP3 adapter in BizTalk Server 2006, BizTalk Server now supports receiving email messages and their attachments using version three of the Post Office Protocol (POP3) from any POP3 compliant mail server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Windows SharePoint Services Adapter&lt;/STRONG&gt;&lt;BR&gt;BizTalk Server 2006 introduces the Windows SharePoint Services Adapter to provide built-in support for accessing and publishing documents stored in Windows SharePoint Services document libraries. Organizations can now link the Office documents and tools familiar to knowledge workers with the enterprise portal systems that run their businesses.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;MQ Series Adapter&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;&amp;nbsp;For BizTalk Server 2004 the MQSeries adapter was available as a Web download. In BizTalk Server 2006, the MQSeries support comes built-in. With the MQSeries adapter, organizations can use XML-enabled MQSeries investments, making it possible to more securely and reliably integrate disparate applications&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;New Line-of-Business Adapters&lt;/STRONG&gt;&lt;BR&gt;SAP, PeopleSoft, JD Edwards, ODBC Adapter for Oracle, Siebel, TIBCO, IBM DB2&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;RUN TIME IMPROVEMENT&lt;/STRONG&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recoverable Interchange&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In BizTalk, an Interchange can contain two or more messages, such as a batch. In BizTalk Server 2004, a validation error in any message contained in the interchange will result in the entire interchange being suspended. With the introduction of Recoverable Interchange in BizTalk Server 2006, only messages that fail validation are suspended, and the messages can be resumed once the error is corrected.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Failed message routing&lt;/STRONG&gt;&lt;BR&gt;&amp;nbsp;In BizTalk Server 2004, when a message fails within a receive pipeline, the message is suspended and cannot be subscribed to by end points. In BizTalk Server 2006, functionality is introduced to allow orchestration and send ports to subscribe to failed messages. When used appropriately, failed message routing can be used for notifying users of failed messages or building rich error handling and message repair capabilities.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Message resume &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In BizTalk Server 2004, message resume is only enabled for the send side but not for the received side. In BizTalk Server 2006, nearly all receive-side messages can now be resumed through the Health and Activity Tracking tool.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;In-order message delivery&lt;/STRONG&gt;&lt;BR&gt;In BizTalk Server 2004, end-to-end, in-order processing is accomplished only when using MSMQT as a transport. In BizTalk Server 2006 this capability is expanded to support any send port that uses the same ordering semantics that outbound MSMQT does in BizTalk Server 2004 today.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Large Message Transformation&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;In previous releases of BizTalk Server, mapping of documents always occurred in-memory. While in-memory mapping provides the best performance, it can quickly consume resources when large documents are mapped. In BizTalk Server 2006, large messages will be mapped by the new large message transformation engine, which buffers message data to the file system, keeping the memory consumption flat.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Executing Pipelines within Orchestration&lt;/STRONG&gt;&lt;BR&gt;A new capability in BizTalk 2006 is the ability to synchronously call a pipeline from within an Orchestration. This enables orchestrations to leverage the message processing encapsulated within a pipeline (either send or receive) against a body of data without having to send that data through the messaging infrastructure.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;BAM IMPROVMENTS&lt;/STRONG&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;BAM portal&lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;&amp;nbsp;BAM has been enhanced in 2006 to include an out-of-the-box BAM portal that allows an information worker to easily examine and configure BAM information. Using the BAM portal, an information worker can select a particular instance of some business process to monitor and then choose a specific BAM view into the process to get a different perspective on the key performance indicators being monitored-sized image&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;BAM alerts &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;Through integration with SQL Server Notification Services, BizTalk Server 2006 allows BAM information to be delivered as notifications through e-mail or another communication channel to the business user, enabling them to make real-time business decisions based on this information.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;BAM Web service &lt;/STRONG&gt;&lt;B&gt;&lt;BR&gt;&lt;/B&gt;BAM in BizTalk Server 2006 builds on the existing Web services available in BizTalk Server 2004 and adds new Web service interfaces to expose the query of aggregate and instance data, creation of alerts, and retrieval of BAM configurations. The enhanced Web services interface can be utilized by custom applications to expose BAM functionalities within their user interface.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A name=_MailAutoSig&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT color=#000000&gt;Bangalore, India&lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;http://www.seamless.in&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;http://GeeksWithBlogs.net/benny&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/105323.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/02/03/105323.aspx</guid>
            <pubDate>Sat, 03 Feb 2007 23:39:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/02/03/105323.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/105323.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/105323.aspx</trackback:ping>
        </item>
        <item>
            <title>XLANG/s is not C# (Dos and Don't / Difference between XLANG/s and C#)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/02/14/106295.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/02/14/106295.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/02/14/106295.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;It is normal to find people who are new to BizTalk, writing expressions just like they do in C# programming language, well this works most of the time, it is when it doesn't work that you start wondering what is wrong, and end up wasting a lot of time figuring out the problem and some more time finding the solution.&lt;/P&gt;
&lt;P&gt;BizTalk uses a language called XLANG/s which is suitable for expressing the process flow (Just like BPEL) and resembles C# syntax when writing expressions, but it is not C# you are using there.&lt;/P&gt;
&lt;P&gt;One does not usually get to learn the complete XLANG/s syntax as we construct the orchestration visually by dropping and configuring shapes on to the orchestration surface. You can however see the XLANG/s if you open the orchestration in a text editor like Notepad.&lt;/P&gt;
&lt;P&gt;Here is a nice blog post by Charles Young mentioning list of things that are supported in BizTalk.&lt;BR&gt;&lt;A href="http://geekswithblogs.net/cyoung/articles/3820.aspx"&gt;http://geekswithblogs.net/cyoung/articles/3820.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Benny Mathew&lt;BR&gt;Seamless Integrations &lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;A href="http://www.seamless.in"&gt;http://www.seamless.in&lt;/A&gt;&lt;BR&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/106295.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/02/14/106295.aspx</guid>
            <pubDate>Thu, 15 Feb 2007 07:42:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/02/14/106295.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/106295.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/106295.aspx</trackback:ping>
        </item>
        <item>
            <title>Middleware Mania 2007</title>
            <link>http://geekswithblogs.net/benny/archive/2007/01/09/103139.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/01/09/103139.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/01/09/103139.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Last Saturday we had a one day event called &lt;B style="mso-bidi-font-weight: normal"&gt;Middleware Mania 2007&lt;/B&gt; at BDotNet (&lt;A href="http://groups.msn.com/BDOTNET"&gt;http://groups.msn.com/BDOTNET&lt;/A&gt;), &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:country-region w:st="on"&gt;India&lt;/st1:country-region&gt;'s largest and most active .NET user group in &lt;st1:City w:st="on"&gt;&lt;st1:place w:st="on"&gt;Bangalore&lt;/st1:place&gt;&lt;/st1:City&gt; with 8750+ members. Held in one of Microsoft's building, which received a good number of people right from junior developers, solutions architects&amp;nbsp;to project managers.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;I got invited to present 2 sessions at the event, one was on the &lt;B style="mso-bidi-font-weight: normal"&gt;New Features in BizTalk Server 2006&lt;/B&gt; and the other was on &lt;B style="mso-bidi-font-weight: normal"&gt;Adapter Development in BizTalk 2006&lt;/B&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;You can download the presentations and code form the link below.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.seamless.in/files/NewFeaturesInBizTalk2006.zip"&gt;http://www.seamless.in/files/NewFeaturesInBizTalk2006.zip&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.seamless.in/files/AdapterDevelopmentinBizTalk2006.zip"&gt;http://www.seamless.in/files/AdapterDevelopmentinBizTalk2006.zip&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;For me, this was a good event after a long time... there were other presenters who gave good presentations on RosettaNet Implementation Framework (RNIF), Introduction to BizTalk, &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Enterprise Integration Patterns etc. Received a lot of good feed back about the presentations.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Over all it was fun…, the audience was quite enthusiastic, they even did a little leg-pulling of one of the presenter and one funny lady who was there to promote her company and was woo-ing &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;everyone to join her company &lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Regards&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A name=_MailAutoSig&gt;&lt;SPAN style="mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#800080&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;http://www.seamless.in&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT color=#800080&gt;http://GeeksWithBlogs.net/benny&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/103139.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/01/09/103139.aspx</guid>
            <pubDate>Wed, 10 Jan 2007 04:57:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/01/09/103139.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/103139.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/103139.aspx</trackback:ping>
        </item>
        <item>
            <title>Mama Pendse (The artificial intelligence based chatterbox)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/01/11/103353.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/01/11/103353.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/01/11/103353.aspx&lt;/a&gt;&lt;/p&gt;&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Have you tried adding this guy / thing 'mama_pendse' (mama_pendse@yahoo.com) to your yahoo messenger buddy list?&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;You will love talking to him / it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;mama_pendse is an artificial linguistic entity (robot), uses artificial intelligence case-based reasoning to formulate replies to your comments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Activated at &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;&lt;st1:City w:st="on"&gt;Pune&lt;/st1:City&gt;, &lt;st1:country-region w:st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;, on November 20 2000. Created by Bhargav Pendse.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;I have it on my list from years now...&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;it can also provide you a lot of information like horoscope, dictionary meaning, directory information, country info, translation to other languages, distance between cities, time in any country, currency exchange rates, Climate, share price, traffic information, etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Just type help and you will get a big list of things that it can do.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Happy talking... err..scraping &lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A name=_MailAutoSig&gt;&lt;SPAN style="mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;st1:place w:st="on"&gt;&lt;st1:City w:st="on"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;Bangalore&lt;/SPAN&gt;&lt;/st1:City&gt;&lt;SPAN style="mso-no-proof: yes"&gt;, &lt;st1:country-region w:st="on"&gt;India&lt;/st1:country-region&gt;&lt;/SPAN&gt;&lt;/st1:place&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#800080&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;http://www.seamless.in&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT color=#800080&gt;http://GeeksWithBlogs.net/benny&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/103353.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/01/11/103353.aspx</guid>
            <pubDate>Fri, 12 Jan 2007 00:32:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/01/11/103353.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/103353.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/103353.aspx</trackback:ping>
        </item>
        <item>
            <title>Did you know? (Setting output filename to a field value of the message without any custom code or orchestration)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/03/09/108323.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/03/09/108323.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/03/09/108323.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&lt;BR&gt;I saw this question in the BizTalk newsgroups:&lt;/P&gt;
&lt;P&gt;&amp;gt; Hi,&lt;BR&gt;&amp;gt;&amp;nbsp; Is it possible to set the filename of a message with a value inside it &lt;BR&gt;&amp;gt; which is available as a promoted property..&lt;BR&gt;&amp;gt; I know this can be done using a custom pipeline component .But is there a &lt;BR&gt;&amp;gt; way without it?&lt;BR&gt;&amp;gt; I have no orchestrations in my solution..&lt;BR&gt;&amp;gt;&lt;BR&gt;&amp;gt; TIA&lt;BR&gt;&amp;gt;&lt;/P&gt;
&lt;P&gt;Yes, it is possible!... here is how.&lt;/P&gt;
&lt;P&gt;1.&amp;nbsp;Right click on the schema node you want to promote, select Promote--&amp;gt;show promotions.&lt;BR&gt;2.&amp;nbsp;On the “property fields” tab, click on the folder icon (to add new property &lt;BR&gt;schema)&lt;BR&gt;3.&amp;nbsp;Expand the references, expand Microsoft.BizTalk.GlobalPropertySchemas and select&amp;nbsp; FILE.bts_file_properties.&lt;BR&gt;4.&amp;nbsp;Add your node as promoted and select ReceivedFileName in the property column as the property to which to promote to.&lt;BR&gt;5.&amp;nbsp;In the send port configuration use the macro %SourceFileName%&lt;BR&gt;6.&amp;nbsp;Don’t forget to use XMLReceive pipeline at the receive port.&lt;/P&gt;
&lt;P&gt;That’ it! No custom pipeline no orchestration. This can be useful in content based routing scenarios where there are no orchestrations involved.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;The XMLReceive pipeline will overwrite the source file name value in the context with the value of the field inside the message.&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A name=_MailAutoSig&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#800080&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;http://www.seamless.in&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;&lt;FONT color=#800080&gt;http://GeeksWithBlogs.net/benny&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/108323.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/03/09/108323.aspx</guid>
            <pubDate>Fri, 09 Mar 2007 19:03:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/03/09/108323.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/108323.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/108323.aspx</trackback:ping>
        </item>
        <item>
            <title>Bangalore now has as local BizTalk user group (b-bug)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/02/22/107014.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/02/22/107014.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/02/22/107014.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&lt;A href="http://groups.google.co.in/group/b-bug"&gt;Bangalore BizTalk User Group (b-bug)&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Check it out here: &lt;A href="http://groups.google.co.in/group/b-bug"&gt;http://groups.google.co.in/group/b-bug&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;A name=_MailAutoSig&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;A href="http://www.seamless.in/"&gt;&lt;FONT color=#800080&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;http://www.seamless.in&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-no-proof: yes"&gt;&lt;FONT color=#800080&gt;http://GeeksWithBlogs.net/benny&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-bookmark: _MailAutoSig"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/107014.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/02/22/107014.aspx</guid>
            <pubDate>Fri, 23 Feb 2007 09:35:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/02/22/107014.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/107014.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/107014.aspx</trackback:ping>
        </item>
        <item>
            <title>Back to bloging</title>
            <link>http://geekswithblogs.net/benny/archive/2006/12/21/101781.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2006/12/21/101781.aspx'&gt;http://geekswithblogs.net/benny/archive/2006/12/21/101781.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;I am back to regular bloging... Year 2006 has been very different and unique, I experienced a lot of things that has made me more mature, faced a lot of ups and downs, learnt new things, even learnt&amp;nbsp;a little people management :)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;All this also gave me the strength and courage to quit Two Connect and startup my own company &lt;EM&gt;&lt;A href="http://www.seamless.in"&gt;Seamless Integration Solutions&lt;/A&gt;&lt;/EM&gt; (&lt;A href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/A&gt;).&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Hope 2007 will be a good year.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Wish you all a Merry Christmas and a Happy and Prosperous New Year.!!!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Cheers!&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: white"&gt;&lt;FONT color=#000000&gt;Regards&lt;BR&gt;Benny Mathew&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.seamless.in"&gt;Seamless Integration Solutions&lt;/A&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;BizTalk Consulting, Development, Training&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/A&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/101781.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2006/12/21/101781.aspx</guid>
            <pubDate>Fri, 22 Dec 2006 00:53:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2006/12/21/101781.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/101781.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/101781.aspx</trackback:ping>
        </item>
        <item>
            <title>Did you know (Mapping multiple schema nodes in one go using the "AutoLink By" property)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/02/20/106802.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/02/20/106802.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/02/20/106802.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Most of you might have come across situations where you have to map a huge number of elements from the source schema to the target schema using the BizTalk Mapper.&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;There is an easy way to do this depending on your source and target schema structures.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Actually there are two scenarios where you can make use of this:&lt;BR&gt;1. If your source and target schemas have an identical structure, or even if a part of your source schema and target schema have an identical structure.&lt;/P&gt;
&lt;P&gt;2. If your source and target schemas have an identical node names, or even if a part of your source schema and target schema have an identical node names.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here's how to do it:&lt;BR&gt;1. Bring up your BizTalk mapping editor and load the source and target schemas&lt;/P&gt;
&lt;P&gt;To Auto Map by Structure&lt;BR&gt;2. Click on the grid surface of the map and in the properties window and set the "AutoLink By" property to "Structure" (which is actually the default value)&lt;/P&gt;
&lt;P&gt;To Auto Map by Node Name&lt;BR&gt;2. Click on the grid surface of the map and in the properties window and set the "AutoLink By" property to "Node Name"&lt;/P&gt;
&lt;P&gt;3. Map the nodes by holding down the SHIFT key and drawing a line from the parent node of the source schema to the parent node in the target schema as shown in the figure below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;IMG alt="AutoLink By" src="http://www.seamless.in/Articles/BizTalk/Maps/AutoLinkBy/AutoMap.gif"&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Note that in our figure above, the node names as well as the structure is the same, so you could set the "AutoLink By" property to either "Structure" or "Node Names" in this case.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Benny Mathew&lt;BR&gt;Seamless Integration Solutions&lt;BR&gt;BizTalk Consulting, Development, Training&lt;BR&gt;Bangalore, India&lt;BR&gt;&lt;A href="http://www.seamless.in"&gt;http://www.seamless.in&lt;/A&gt;&lt;BR&gt;&lt;A href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/A&gt;&lt;BR&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/106802.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/02/20/106802.aspx</guid>
            <pubDate>Wed, 21 Feb 2007 09:34:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/02/20/106802.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/106802.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/106802.aspx</trackback:ping>
        </item>
        <item>
            <title>Did you know? (you can do XML debatching without custom pipeline)</title>
            <link>http://geekswithblogs.net/benny/archive/2007/02/15/106329.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2007/02/15/106329.aspx'&gt;http://geekswithblogs.net/benny/archive/2007/02/15/106329.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Everybody knows that you need to use a custom pipeline to debatch an XML file, where you use a custom XML disassembler pipeline component to specify the Envelop schema and Document schema. &lt;/p&gt;
&lt;p&gt;Well, you can do it with the built-in XMLReceive pipeline as well, provided you don't require advanced features like preserving header information, 'Recoverable interchange processing' or validating document structure  etc.&lt;/p&gt;
&lt;p&gt;Do the following:&lt;/p&gt;
&lt;p&gt;1. Create and deploy an envelope schema (Set the Body XPath property of the root node to the appropriate record in the envelope schema)&lt;br /&gt;
2. Create and deploy the document schema&lt;br /&gt;
3. Make sure the message you are receiving is an instance of the envelope schema&lt;br /&gt;
4. Make sure that the namespace and root node name of the document schema aligns with the MessageType of the debatched message (you may have to set the 'Element FormDefault' property of the Envelope schema to 'Qualified')&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
All of the above are something that you will anyway make sure even when using a custom pipeline, so nothing new.&lt;/p&gt;
&lt;p&gt;Benny Mathew&lt;br /&gt;
Seamless Integrations&lt;br /&gt;
BizTalk Consulting, Development, Training&lt;br /&gt;
Bangalore, India&lt;br /&gt;
&lt;a href="http://www.seamless.in"&gt;http://www.seamless.in&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://geekswithblogs.net/benny"&gt;http://GeeksWithBlogs.net/benny&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/106329.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2007/02/15/106329.aspx</guid>
            <pubDate>Thu, 15 Feb 2007 12:47:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2007/02/15/106329.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/106329.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/106329.aspx</trackback:ping>
        </item>
        <item>
            <title>Debatching a flat file in BizTalk 2006</title>
            <link>http://geekswithblogs.net/benny/archive/2006/02/05/68249.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/benny/archive/2006/02/05/68249.aspx'&gt;http://geekswithblogs.net/benny/archive/2006/02/05/68249.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Sometimes you receive a batch file containing multiple records and you have to split each record into a separate message and process them individually.&lt;/p&gt;
&lt;p&gt;This kind of splitting of a batch file is also known as debatching.&lt;/p&gt;
&lt;p&gt;Depending on your requirement, you can either debatch an incoming message inside the pipeline or inside the orchestration.&lt;/p&gt;
&lt;p&gt;The technique used to debatch a message inside the pipeline depends on whether the input is an XML file or a flat file.&lt;/p&gt;
&lt;p&gt;For an XML file, you will need to use an XML disassembler, an envelop schema and a document schema, which I will discuss some other time on separate blog post / article.&lt;/p&gt;
&lt;p&gt;Here I will show you how you can debatch a flat file.&lt;/p&gt;
&lt;p&gt;Let us assume that we need to debatch a flat file that contains the following structure.&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;Field1,Field2,Field3,Field4,Field5,Field6&lt;br /&gt;
Field1,Field2,Field3,Field4,Field5,Field6&lt;br /&gt;
Field1,Field2,Field3,Field4,Field5,Field6&lt;br /&gt;
Field1,Field2,Field3,Field4,Field5,Field6&lt;br /&gt;
Field1,Field2,Field3,Field4,Field5,Field6&lt;br /&gt;
Field1,Field2,Field3,Field4,Field5,Field6&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;First you need to create a flat file schema that looks similar to the one shown in the figure below.&lt;/p&gt;
&lt;img height="159" width="155" alt="" src="http://gwb.blob.core.windows.net/benny/FlatFileDebatching/FFSchema.GIF" /&gt;
&lt;p&gt;Make sure you have specified the correct child delimiters for the Root (&lt;font face="Courier New"&gt;0x0D 0x0A&lt;/font&gt;) node as well as the Record (&lt;font face="Courier New"&gt;,&lt;/font&gt;) node.&lt;/p&gt;
&lt;p&gt;Root Node:&lt;br /&gt;
Child Delimiter Type = Hexadecimal&lt;br /&gt;
Child Delimiter = 0x0d 0x0a&lt;br /&gt;
Child Order = Infix or Postfix&lt;/p&gt;
&lt;p&gt;Record Node:&lt;br /&gt;
Child Delimiter Type = Character&lt;br /&gt;
Child Delimiter = ,&lt;br /&gt;
Child Order = Infix&lt;/p&gt;
&lt;p&gt;Now select the &lt;font face="Verdana"&gt;Record&lt;/font&gt; node and set its &lt;font face="Verdana"&gt;MaxOccurs&lt;/font&gt; property to 1. This is actually the key to debatching. The flat file disassembler will automatically separate each record into individual message.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important: If you have set the &lt;em&gt;Child Order&lt;/em&gt; Property of the &lt;em&gt;Root&lt;/em&gt; node to &lt;em&gt;Infix&lt;/em&gt;, make sure you have also set the property '&lt;em&gt;Allow Message Breakup At Infix Root&lt;/em&gt;' to &lt;em&gt;Yes&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Next, as you would normally do, add a receive pipeline to the project and add a flat file disassembler and set the &lt;font face="Verdana"&gt;Document schema&lt;/font&gt; property to the schema we created.&lt;/p&gt;
&lt;p&gt;That’s all there is to it.&lt;/p&gt;
&lt;p&gt;Now suppose you have a flat file that also has a header record or a trailer (footer) record or both as shown below.&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;FirstName,LastName,RegNo,School,City&lt;br /&gt;
SubjectName1,Score1&lt;br /&gt;
SubjectName2,Score2&lt;br /&gt;
SubjectName3,Score3&lt;br /&gt;
SubjectName4,Score4&lt;br /&gt;
SubjectName5,Score5&lt;br /&gt;
SubjectName6,Score6&lt;br /&gt;
SubjectName7,Score7&lt;br /&gt;
SubjectName8,Score8&lt;br /&gt;
TotalScore&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;You would normally create a flat file schema as shown below to parse as one single message.&lt;/p&gt;
&lt;img height="221" width="176" alt="" src="http://gwb.blob.core.windows.net/benny/FlatFileDebatching/ScoreWhole.GIF" /&gt;
&lt;p&gt;But for the purpose of debatching the body records, you need to create 3 separate schemas as shown below. Make sure the &lt;font face="Verdana"&gt;MaxOccurs&lt;/font&gt; of the &lt;font face="Verdana"&gt;Body&lt;/font&gt; record is set to 1.&lt;/p&gt;
&lt;img height="132" width="513" alt="" src="http://gwb.blob.core.windows.net/benny/FlatFileDebatching/ScoreSeparate.GIF" /&gt;
&lt;p&gt;And in the flat file disassembler, you need to set the &lt;font face="Verdana"&gt;Header schema&lt;/font&gt;, &lt;font face="Verdana"&gt;Document schema&lt;/font&gt; and &lt;font face="Verdana"&gt;Trailer schema&lt;/font&gt; properties appropriately.&lt;/p&gt;
&lt;p&gt;Note: You might need to set a unique &lt;font face="Verdana"&gt;Tag Identifier&lt;/font&gt; property for each of the schemas, and also prefix the same tag identifier on the records as shown below, so that the flat file parser can distinguish the header, body and footer records.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName1,Score1&lt;br /&gt;
BSubjectName2,Score2&lt;br /&gt;
BSubjectName3,Score3&lt;br /&gt;
BSubjectName4,Score4&lt;br /&gt;
BSubjectName5,Score5&lt;br /&gt;
BSubjectName6,Score6&lt;br /&gt;
BSubjectName7,Score7&lt;br /&gt;
BSubjectName8,Score8&lt;br /&gt;
FTotalScore&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;It is possible to preserve the header record into the message context, by setting the &lt;font face="Verdana"&gt;Preserve header&lt;/font&gt; property of the flat file disassembler to &lt;font face="Arial"&gt;true&lt;/font&gt;, so that you can use it as a header record for each of the debatched message.&lt;/p&gt;
&lt;p&gt;To use the preserved header, you need to set the &lt;font face="Verdana"&gt;Header schema&lt;/font&gt; property of the flat file assembler to the same header schema you used in the disassembler. Here’s how the output will look.&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName1,Score1&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName2,Score2&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName3,Score3&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName4,Score4&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName5,Score5&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName6,Score6&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName7,Score7&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Courier New"&gt;HFirstName,LastName,RegNo,School,City&lt;br /&gt;
BSubjectName8,Score8&lt;/font&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Regards&lt;br /&gt;
Benny Mathew&lt;br /&gt;
&lt;a href="http://www.seamless.in"&gt;Seamless Integration Solutions&lt;/a&gt;&lt;br /&gt;
BizTalk Consulting, Development, Training&lt;br /&gt;
&lt;a href="http://www.seamless.in/"&gt;http://www.seamless.in/&lt;/a&gt;&lt;br /&gt;
&lt;/p&gt; &lt;img src="http://geekswithblogs.net/benny/aggbug/68249.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Benny Mathew</dc:creator>
            <guid>http://geekswithblogs.net/benny/archive/2006/02/05/68249.aspx</guid>
            <pubDate>Mon, 06 Feb 2006 11:46:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/benny/archive/2006/02/05/68249.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/benny/comments/commentRss/68249.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/benny/services/trackbacks/68249.aspx</trackback:ping>
        </item>
    </channel>
</rss>