<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>BizTalk</title>
        <link>http://geekswithblogs.net/Chilberto/category/7018.aspx</link>
        <description>BizTalk</description>
        <language>en-NZ</language>
        <copyright>Chilberto</copyright>
        <managingEditor>Chilberto@yahoo.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>BizTalk Msi Export: Customisation</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2008/06/24/123111.aspx</link>
            <description>&lt;p&gt;Here are some notes on customising exports created via the BizTalk Administration Export MSI file.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="287" alt="image" width="310" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Before creating the export, add any externally referenced .Net assemblies by adding them as a resource in the BizTalk Application's Resources folder:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image9.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="117" alt="image" width="275" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image9_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;This will allow you to include the added resources in your export and will add them to the Global Assembly Cache during installation.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image12.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="375" alt="image" width="335" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image12_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;This is also a good means of deploying binding files for different environments.&lt;/p&gt;
&lt;p&gt;Also, verify the Destination Location of all resources are set to install in the deployment folder.  The following assembly &lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image6.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="77" alt="image" width="536" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image6_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Should be modified so it will install in the installation folder:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_12.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="73" alt="image" width="539" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_thumb_1.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;A tool like Orca (available in vista SDK) can be used to modify the default deployment folder by changing the manufacturer property.  The screen below shows the property to be modified:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_14.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="33" alt="image" width="540" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMsiExportCustomisation_EE49/image_thumb_5.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Just some notes...&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=123111"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=123111" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/123111.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2008/06/24/123111.aspx</guid>
            <pubDate>Tue, 24 Jun 2008 20:11:40 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/123111.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2008/06/24/123111.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/123111.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/123111.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk Map: Comparison between Table Looping and Looping functoids</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2008/04/16/121274.aspx</link>
            <description>&lt;p&gt;I had a surprise recently about the behaviour of the Table Looping and Looping functoids that I wasn't expecting and involves when the scripting functoid is evaluated.&lt;/p&gt;
&lt;h3&gt;For those of you only interested in the comparison... &lt;/h3&gt;
&lt;p&gt;In the following map, the highlighted scripting functoid will be evaluated once per Client element.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="354" alt="image" width="566" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;In the following map, the highlighted scripting functoid will be evaluated once per element in the Client element.  In other words, for every Client element, the scripting functoid will be evaluated 11 times.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_6.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="313" alt="image" width="566" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_thumb_2.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;In other words, for an message containing 100 clients:&lt;/p&gt;
&lt;p&gt;Looping Map:  1100 script evaluations&lt;/p&gt;
&lt;p&gt;Table Looping Map: 121,000 script evaluations (100 clients * 11 script functoids * 11 elements)&lt;/p&gt;
&lt;h2&gt;Details of Comparison&lt;/h2&gt;
&lt;h3&gt;Schemas&lt;/h3&gt;
&lt;p&gt;Both of the example maps accomplish the same thing, namely going from one schema to another where the content structure does not match.&lt;/p&gt;
&lt;p&gt;An example source xml message:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_8.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="252" alt="image" width="429" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_thumb_3.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;An example destination xml message:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_10.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="284" alt="image" width="429" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_thumb_4.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: The destination xml is based on the Sharepoint Lists.asmx UpdateListItems() method&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt; &lt;/h3&gt;
&lt;h3&gt;Script Functoid&lt;/h3&gt;
&lt;p&gt;In this example, I am just calling an external assembly that updates a performance counter.  In the real-world scenario, I was calling an external assembly that did a Sharepoint lists lookup to determine the lookup id for a lookup list.  For clarity, the script functoid settings in the Table Looping Map are:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_12.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="383" alt="image" width="429" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapComparisonbetweenTableLoopinga_B5B9/image_thumb_5.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Where the IncrementTable in the Table Looping Map and IncrementLoop in the Looping Map method updates a Performance Counter BTSComparison for instance Table and Loop respectively.&lt;/p&gt;
&lt;h3&gt;Orchestration&lt;/h3&gt;
&lt;p&gt;The orchestration simply reads in a single xml file and using the maps generates two identical output files. &lt;/p&gt;
&lt;h3&gt; &lt;/h3&gt;
&lt;h2&gt;Summary&lt;/h2&gt;
&lt;p&gt;As there are a ton of resources on the net showing similar maps and orchestrations, I have not gone in to much detail.  If anyone is interested in this example in more detail, let me know and I'll post a better explanation and source.&lt;/p&gt;
&lt;p&gt;Obviously I am still getting my head around the mapping functoids as to when best to use which one.  Like elsewhere in BizTalk there are more than one way to accomplish the same task...&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121274"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121274" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/121274.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2008/04/16/121274.aspx</guid>
            <pubDate>Wed, 16 Apr 2008 18:40:34 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/121274.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2008/04/16/121274.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/121274.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/121274.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk Map: Choice Element</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2008/02/28/120023.aspx</link>
            <description>&lt;p&gt;In my schema file, I have a choice element that only contains a single child element.  For example:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapChoiceElement_8D00/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="194" alt="image" width="375" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BizTalkMapChoiceElement_8D00/image_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;The above example is actually a crude schema of the where clause of a Sharepoint call to Lists.asmx where in the case I have only 1 item, I want to send a where clause of &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;lt;Where&amp;gt; &lt;br /&gt;
  &amp;lt;Eq&amp;gt; &lt;br /&gt;
    &amp;lt;FieldRef Name="ItemID"/&amp;gt; &lt;br /&gt;
    &amp;lt;Value Type="Text"&amp;gt;99900&amp;lt;/Value&amp;gt; &lt;br /&gt;
  &amp;lt;/Eq&amp;gt; &lt;br /&gt;
&amp;lt;/Where&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;And in the case that I have multiple items, I want to send something like:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;lt;Where&amp;gt; &lt;br /&gt;
  &amp;lt;Or&amp;gt; &lt;br /&gt;
    &amp;lt;Eq&amp;gt; &lt;br /&gt;
      &amp;lt;FieldRef Name="ItemID" /&amp;gt; &lt;br /&gt;
      &amp;lt;Value Type="Text"&amp;gt;3394&amp;lt;/Value&amp;gt; &lt;br /&gt;
    &amp;lt;/Eq&amp;gt; &lt;br /&gt;
... &lt;br /&gt;
    &amp;lt;Eq&amp;gt; &lt;br /&gt;
      &amp;lt;FieldRef Name="ItemID" /&amp;gt; &lt;br /&gt;
      &amp;lt;Value Type="Text"&amp;gt;9867&amp;lt;/Value&amp;gt; &lt;br /&gt;
    &amp;lt;/Eq&amp;gt; &lt;br /&gt;
  &amp;lt;/Or&amp;gt; &lt;br /&gt;
&amp;lt;/Where&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In my map, it is a simple operation of using &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;A &lt;em&gt;Record Count&lt;/em&gt; functoid to receive a count of the number of items &lt;/li&gt;
    &lt;li&gt;A &lt;em&gt;Greater Than&lt;/em&gt; functoid to compare the result of the count of items against 1 &lt;/li&gt;
    &lt;li&gt;A &lt;em&gt;Equal To &lt;/em&gt;functoid to compare the result of the count of items against 1 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The map is then composed by connecting the items record in the source document to the &lt;em&gt;Record Count&lt;/em&gt; functoid, the result of the &lt;em&gt;Greater Than&lt;/em&gt; functoid to the Or choice element, and the result of the &lt;em&gt;Equal To&lt;/em&gt; functoid to the Eq choice element.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120023"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120023" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/120023.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2008/02/28/120023.aspx</guid>
            <pubDate>Thu, 28 Feb 2008 16:01:50 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/120023.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2008/02/28/120023.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/120023.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/120023.aspx</trackback:ping>
        </item>
        <item>
            <title>BAM Tip: Visual Studio External Tools</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2008/02/19/119770.aspx</link>
            <description>&lt;p&gt;Here is a simple way to open a command window from within Visual Studio that is aware of the BizTalk Management Utility (bm.exe).  I have found this useful while working with interceptor configuration files.  This tip will add the Visual Studio Command Prompt to the Tools menu.  &lt;/p&gt;  &lt;p&gt;Nothing too dramatic here, just a time saver when defining interceptor configuration files from within Visual Studio without adding shortcuts on my desktop or quick launch bar.&lt;/p&gt;  &lt;h5&gt;Add Visual Studio Command Prompt to External Tools&lt;/h5&gt;  &lt;p&gt;Simply select the External Tools option off of the Tools menu.  To keep thing simple, I basically duplicated the Visual Studio Command prompt settings by viewing its properties.  &lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BAMTipVisualStudioExternalTools_9452/image_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="241" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/BAMTipVisualStudioExternalTools_9452/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h5&gt;Modify Visual Studio Command Prompt's PATH&lt;/h5&gt;  &lt;p&gt;Depending on the operating system you are running Visual Studio on, the following will be different.  To determine where to modify, open the file indicated in the command arguments.  For me it was: &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;In the file you will see a supplied parameter, e.g., &lt;em&gt;x86&lt;/em&gt;, indicates were the settings are located for the specific operating system.  Note that %~dp0 indicates the where the batch file was run from.  For me it was: &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;This file just pointed to another file &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat&lt;/em&gt;. In this file is where the environment settings are stored.  I modified the file to include the location of bm.exe as part of the PATH environment variable.  The following line was inserted after the current @set PATH line:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;strong&gt;@set PATH=C:\Program Files\Microsoft BizTalk Server 2006\Tracking;%PATH%&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=119770"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=119770" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/119770.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2008/02/19/119770.aspx</guid>
            <pubDate>Wed, 20 Feb 2008 03:32:46 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/119770.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2008/02/19/119770.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/119770.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/119770.aspx</trackback:ping>
        </item>
        <item>
            <title>Another BizTalk Gotcha...</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2007/10/04/115825.aspx</link>
            <description>&lt;p&gt;Similar to remembering to update the Activate property to true in your first receive shape in a BizTalk orchestration, there is a BAM &lt;em&gt;whoops&lt;/em&gt; that catches me out occasionally. &lt;/p&gt; &lt;p&gt;If you find yourself looking at your aggregate view wondering why there is not any data while in the activity search it clearly shows there is...  Ask yourself, "Did I remember to mark real time aggregation" while designing the view?  &lt;/p&gt; &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/AnotherBizTalkGotcha_76D4/image.png" atomicselection="true"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="40" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/Chilberto/WindowsLiveWriter/AnotherBizTalkGotcha_76D4/image_thumb.png" width="424" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;When you select the "Mark the selected pivot table as Real Time Aggregation" option when designing your view, triggers are created against the tables that store Active and Completed activity within your BAMPrimaryImport database.  These triggers update the aggregate tables.&lt;/p&gt; &lt;p&gt;This is assuming you want the behavior of real time aggregation...&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115825"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115825" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/115825.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2007/10/04/115825.aspx</guid>
            <pubDate>Thu, 04 Oct 2007 13:28:29 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/115825.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2007/10/04/115825.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/115825.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/115825.aspx</trackback:ping>
        </item>
        <item>
            <title>WCF BAM Interceptors and primaryImportConnectionString</title>
            <link>http://geekswithblogs.net/Chilberto/archive/2007/08/24/114936.aspx</link>
            <description>&lt;p&gt;When trying to get the example in &lt;a target="_blank" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=56278FDE-B708-469C-987E-DED9C6C5E580&amp;amp;displaylang=en"&gt;Instrumenting the WCF Getting Started Sample (BizTalk Server Sample)&lt;/a&gt; to run, I encountered the following error:  &lt;/p&gt;
&lt;span&gt;
&lt;h1&gt;Server Error in '/servicemodelsamples' Application. &lt;hr width="100%" color="#c0c0c0" size="1" /&gt;
&lt;/h1&gt;
&lt;h2&gt;&lt;em&gt;Configuration Error&lt;/em&gt; &lt;/h2&gt;
&lt;/span&gt;&lt;font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif "&gt;&lt;strong&gt;Description: &lt;/strong&gt;An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Parser Error Message: &lt;/strong&gt;Unrecognized attribute 'primaryImportConnectionString'. Note that attribute names are case-sensitive.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Source Error:&lt;/strong&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;table width="1214" bgcolor="#ffffcc" unselectable="on"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td width="1212"&gt;&lt;code&gt;
            &lt;pre&gt;Line 50:       &amp;lt;endpointBehaviors&amp;gt;
Line 51:         &amp;lt;behavior name="bamBehavior"&amp;gt;
&lt;font color="#ff0000"&gt;Line 52: 			&amp;lt;BamBehaviorExtension primaryImportConnectionString=&lt;br /&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;"Integrated Security=SSPI;Data Source=.;Initial Catalog=BAMPrimaryImport;" PollingIntervalSec="1500"  &amp;gt;
&lt;/font&gt;Line 53: 			 &amp;lt;/BamBehaviorExtension&amp;gt;
Line 54: 			&lt;/pre&gt;
            &lt;/code&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;br /&gt;
&lt;strong&gt;Source File: &lt;/strong&gt;f:\inetpub\wwwroot\servicemodelsamples\web.config&lt;strong&gt;    Line: &lt;/strong&gt;52 &lt;br /&gt;
&lt;br /&gt;
&lt;hr width="100%" color="#c0c0c0" size="1" /&gt;
&lt;strong&gt;Version Information:&lt;/strong&gt; Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42 &lt;/font&gt;&lt;!-- 
[ConfigurationErrorsException]: Unrecognized attribute 'primaryImportConnectionString'. Note that attribute names are case-sensitive. (f:\inetpub\wwwroot\servicemodelsamples\web.config line 52)
   at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
   at System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult, Boolean getLkg, Boolean getRuntimeObject, Object&amp; result, Object&amp; resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object&amp; result, Object&amp; resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSection(String configKey, Boolean getLkg, Boolean checkPermission)
   at System.Configuration.BaseConfigurationRecord.GetSection(String configKey)
   at System.Web.Configuration.WebConfigurationManager.GetSection(String sectionName, String path)
   at System.ServiceModel.Configuration.ConfigurationHelpers.GetSectionFromWebConfigurationManager(String sectionPath)
   at System.ServiceModel.Configuration.ConfigurationHelpers.GetSection(String sectionPath)
   at System.ServiceModel.Configuration.ServicesSection.GetSection()
   at System.ServiceModel.Description.ConfigLoader.LookupService(String serviceConfigurationName)
   at System.ServiceModel.ServiceHostBase.ApplyConfiguration()
   at System.ServiceModel.ServiceHostBase.InitializeDescription(UriSchemeKeyedCollection baseAddresses)
   at System.ServiceModel.ServiceHost..ctor(Type serviceType, Uri[] baseAddresses)
   at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(Type serviceType, Uri[] baseAddresses)
   at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses)
   at System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath)
   at System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
   at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
[ServiceActivationException]: The service '/servicemodelsamples/service.svc' cannot be activated due to an exception during compilation.  The exception message is: Unrecognized attribute 'primaryImportConnectionString'. Note that attribute names are case-sensitive. (f:\inetpub\wwwroot\servicemodelsamples\web.config line 52).
   at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   at System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
   at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.HandleRequest()
   at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.BeginRequest()
   at System.ServiceModel.Activation.HostedHttpModuleRequestAsyncResult.BeginRequest()
   at System.ServiceModel.Activation.HttpModule.StartBeginProcessRequest(Object sender, EventArgs e, AsyncCallback cb, Object extraData)
   at System.ServiceModel.Activation.HttpModule.ProcessRequest(Object sender, EventArgs e)
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp; completedSynchronously)
--&gt;
&lt;p&gt;After using &lt;a target="_blank" href="http://www.aisto.com/roeder/dotnet/"&gt;Lutz Roeder's Reflector&lt;/a&gt;, I was able to determine that the configuration should be changed to:&lt;/p&gt;
&lt;div style="BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: gray 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 8pt; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: gray 1px solid; WIDTH: 97.5%; CURSOR: text; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: gray 1px solid; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BACKGROUND-COLOR: #f4f4f4"&gt;
&lt;div style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; BORDER-BOTTOM-STYLE: none"&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #606060"&gt;   1:&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;behavior&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;name&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="bamBehavior"&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #606060"&gt;   2:&lt;/span&gt;     &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;BamEndpointBehaviorExtension&lt;/span&gt; &lt;/pre&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #606060"&gt;   3:&lt;/span&gt;         &lt;span style="COLOR: #ff0000"&gt;ConnectionString&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="Integrated Security=SSPI;Data Source=.;Initial Catalog=BAMPrimaryImport;"&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #606060"&gt;   4:&lt;/span&gt;         &lt;span style="COLOR: #ff0000"&gt;PollingIntervalSec&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="1500"&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #606060"&gt;   5:&lt;/span&gt;   &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;behavior&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;I could not find a mention of this in Google, so hopefully this will save someone some time out there.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=114936"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=114936" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Chilberto/aggbug/114936.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Chilberto</dc:creator>
            <guid>http://geekswithblogs.net/Chilberto/archive/2007/08/24/114936.aspx</guid>
            <pubDate>Fri, 24 Aug 2007 20:50:05 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Chilberto/comments/114936.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Chilberto/archive/2007/08/24/114936.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/Chilberto/comments/commentRss/114936.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Chilberto/services/trackbacks/114936.aspx</trackback:ping>
        </item>
    </channel>
</rss>