<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Christof Claessens' WebLog</title><link>http://weblogs.asp.net/christof_claessens/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>BizTalk Server Documentation Update</title><link>http://weblogs.asp.net/christof_claessens/archive/2005/02/15/373651.aspx</link><pubDate>Tue, 15 Feb 2005 22:07:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:373651</guid><dc:creator>christof claessens</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=373651</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2005/02/15/373651.aspx#comments</comments><description>&lt;p&gt;Get the last BizTalk Server documentation update &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=CDD47461-F4E2-4BC6-B5C2-2018AFF2823D&amp;amp;displaylang=en"&gt;here&lt;/a&gt;.&amp;nbsp; As always the online help remains available at&amp;nbsp;&lt;a href="http://www.msdn.microsoft.com/library/default.asp?url=/library/en-us/def/htm/ebiz_def_portal_page.asp"&gt;MSDN&lt;/a&gt; as well.&lt;br /&gt;Together with this core documentation, following updated documents are also available for download:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9F718376-28DB-498E-989A-008728F41840"&gt;the user guide for information workers&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=9C64562C-3FA7-49BA-885E-82213D00776E"&gt;the BizTalk Server tutorials&lt;/a&gt;&lt;/li&gt; &lt;li&gt;and last but certainly not least: &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=32FF7D19-9E25-44CE-8A8C-03E3EB5D726F&amp;amp;displaylang=en"&gt;the installation guide&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=373651" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>Paul's admin tool moved</title><link>http://weblogs.asp.net/christof_claessens/archive/2005/02/11/371309.aspx</link><pubDate>Fri, 11 Feb 2005 20:40:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:371309</guid><dc:creator>christof claessens</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=371309</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2005/02/11/371309.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blog.paul.somers.com/blog"&gt;Paul Somers&lt;/a&gt; (winner of the BTS2004 competition) was so kind to notify me that his BizTalk Admin tool has moved &lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=992ca223-553c-475a-ac87-da7ae2c9016a"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Reading his latest post: the BizTalk Exam certainly tests your BAM skills as well Paul :-)&lt;/p&gt; &lt;p&gt;It looks like we've a lot of good community projects by now and more are coming up.&amp;nbsp; For example: Brian Travis is working on&amp;nbsp;a cool BizTalk Server Message Dashboard; based on&amp;nbsp;my sample project (&lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/06/10/152787.aspx"&gt;BizTalk Server Tracking Playground&lt;/a&gt;) I made available in June 2004.&amp;nbsp; Hope it will be finished soon as this is cool stuff: his dashboard allows for inspecting tracked messages and context without needing HAT.&amp;nbsp; Even click-through to related messages is supported.&amp;nbsp; More on this as he finishes :-)&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=371309" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>Microsoft BizTalk Adapter for WSE 2.0 Available NOW!</title><link>http://weblogs.asp.net/christof_claessens/archive/2005/02/10/370364.aspx</link><pubDate>Thu, 10 Feb 2005 09:56:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:370364</guid><dc:creator>christof claessens</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=370364</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2005/02/10/370364.aspx#comments</comments><description>&lt;p&gt;We just released the WSE 2.0 adapter for BizTalk Server!&amp;nbsp; In my opinion this is an important milestone: webservices are increasingly fast&amp;nbsp;becoming the number one interoperable transport both inside and between companies.&amp;nbsp; The need for security, trust and policy is crucial to further extend the wealth of scenario's that webservices enable.&amp;nbsp; I find it an exciting idea to know that Web Services within your business processes now have become just a matter of configuration!&amp;nbsp; Get it here: &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=BA643360-E9DC-4FC5-8D60-8E6C5ECA7861&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=BA643360-E9DC-4FC5-8D60-8E6C5ECA7861&amp;amp;displaylang=en&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=370364" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>BizTalk Server 2004 - An update</title><link>http://weblogs.asp.net/christof_claessens/archive/2005/01/27/361331.aspx</link><pubDate>Thu, 27 Jan 2005 05:06:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:361331</guid><dc:creator>christof claessens</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=361331</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2005/01/27/361331.aspx#comments</comments><description>&lt;p&gt;Recently the BizTalk Server exam has been released.&amp;nbsp; Just do as I did and take it to get yourself certified!&amp;nbsp; For more information, see &lt;a href="http://blogs.msdn.com/scottwoo"&gt;Scott's blog&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Another important milestone in the life of this great product: SP1 has been released TODAY!!&amp;nbsp; &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=f4a5ab9e-d599-4cc8-abdf-ae6ae68bac3d"&gt;Get it NOW!&lt;/a&gt;&lt;br /&gt;I strongly advise everyone to test it in your test environment and bring it in production as soon you can: it's worth it!&amp;nbsp; In addition to that, we got now an adapter migration toolkit: something you might find interesting if you're planning to migrate your integration solutions from BizTalk Server 2002 to 2004.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=361331" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>I'm still alive :-)</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/11/14/257168.aspx</link><pubDate>Sun, 14 Nov 2004 14:25:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:257168</guid><dc:creator>christof claessens</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=257168</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/11/14/257168.aspx#comments</comments><description>&lt;p&gt;Due to several reasons (priority shifts...), it's a while ago I blogged here.&amp;nbsp; To eliminate all doubts: I'm still alive and still open to all BizTalk/XML/SOA related questions and discussions&amp;nbsp;:-)&lt;/p&gt; &lt;p&gt;I'm also glad to announce that tomorrow I'll join Microsoft as a product technical presales.&amp;nbsp; It remains to be seen how many spare time I'll have to dedicate to this blog ;-)&lt;/p&gt; &lt;p&gt;Just one more thing I'd like to share here:&amp;nbsp;if you're into the enterprise space and love the integration solutions Microsoft is providing, make sure to check out &lt;a href="http://www.microsoft.com/windowsserversystem/miis2003/default.mspx"&gt;MIIS &lt;/a&gt;(Microsoft Identity Integration Server) as well!&amp;nbsp; &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=257168" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/Random+reflections/default.aspx">Random reflections</category></item><item><title>More GMail accounts for BizTalk Server people</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/10/01/236557.aspx</link><pubDate>Fri, 01 Oct 2004 11:12:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:236557</guid><dc:creator>christof claessens</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=236557</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/10/01/236557.aspx#comments</comments><description>&lt;p&gt;As appearantly everyone is eagerly looking for a gmail account, I will give away a few more.&amp;nbsp; (At least, my &lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/09/01/224158.aspx"&gt;previous blog &lt;/a&gt;makes me think that :-)) &lt;/p&gt; &lt;p&gt;I'll invite to gmail, the first 5 people who can tell me why I implemented my &lt;a href="http://download.microsoft.com/download/d/f/c/dfc7a022-3426-4868-b23c-3818a6e54305/custompp.zip"&gt;streaming pipeline component &lt;/a&gt;using multiple threads instead of just one :-p.&lt;/p&gt; &lt;p&gt;[Yes, that's right :-)&amp;nbsp; You'll have to read the article on &lt;a href="http://www.microsoft.com/belux/nl/msdn/community/columns/claessens/custompp.mspx"&gt;custom pipeline processing&lt;/a&gt;&amp;nbsp;for this one :-))))))))))) ]&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;font size="2"&gt;P.S. Make sure you include your name and current emailaddress in your comment as I need these to invite you.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#a52a2a"&gt;[Update: I've invited the people who responded.&amp;nbsp; If you don't receive your invitiation, please let me know.]&lt;/font&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=236557" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>New paper on pipeline components finally published!</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/09/24/233754.aspx</link><pubDate>Fri, 24 Sep 2004 06:39:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:233754</guid><dc:creator>christof claessens</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=233754</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/09/24/233754.aspx#comments</comments><description>&lt;p&gt;Waaw... &lt;a href="http://www.microsoft.com/belux/nl/msdn/community/columns/claessens/custompp.mspx"&gt;Finally got my new paper published.&lt;/a&gt;&amp;nbsp; Like I already &lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/07/05/173362.aspx"&gt;promised &lt;/a&gt;a while ago, I was working on a sample and paper, showing how custom pipelinecomponents can be created.&amp;nbsp; Even better: the paper and sample code will show you how to create a *streaming* pipelinecomponent that is able to put data into the msgcontext based upon an XPath expression.&lt;/p&gt; &lt;p&gt;&lt;em&gt;"How's that possible?&amp;nbsp; XPath only works on a DOM Christof - you never can make this streaming!"&amp;nbsp; &lt;/em&gt;Yes I can, because of Dare Obasanjo, who recently published a paper and sample code on so called "streaming xpath", which makes up a subset of XPath that can be handled in a streaming, forward-only, way.&lt;/p&gt; &lt;p&gt;For all those funky things: visit the Belgium MSDN site &lt;a href="http://www.microsoft.com/belux/nl/msdn/community/columns/claessens/custompp.mspx"&gt;here&lt;/a&gt;!&lt;/p&gt; &lt;p&gt;All feedback is welcome, please enjoy this!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=233754" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/XML+Technologies/default.aspx">XML Technologies</category></item><item><title>Funky BizTalk Server toys!</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/09/14/229540.aspx</link><pubDate>Tue, 14 Sep 2004 18:28:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:229540</guid><dc:creator>christof claessens</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=229540</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/09/14/229540.aspx#comments</comments><description>&lt;p&gt;Microsoft just made the &lt;a href="http://msdn.microsoft.com/bpi/"&gt;results of the BizTalk Server contest &lt;/a&gt;&amp;nbsp;public.&amp;nbsp; I immediately started googling but it appears that Paul Somer's entry is not downloadable yet... (Please drop me a line if I'm wrong.)&amp;nbsp; Neverthless, a few cool cool toys appeared on gotdotnet in the mean time.&amp;nbsp; My selection of these:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=d66e1651-98e5-4ef4-9158-ac030a9b8a32"&gt;BizTalk Server 2004 "deploy with Nant" template&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Integrating BizTalk Server with Nant&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=1d4f7d6b-7d27-4f05-a8ee-48cfcd5abf4a"&gt;BizTalk Server 2004 Pipeline Component Wizard&lt;/a&gt;&amp;nbsp;&lt;br /&gt;&lt;em&gt;VS.NET addin for quickly building pipeline components&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=62d94220-c0e0-46d4-a2d6-85d3d911467a"&gt;BizTalk AutoDeploy Utility&lt;/a&gt;&lt;br /&gt;&lt;em&gt;VS.NET addin for quickly (re)deploying BizTalk Server solutions.&amp;nbsp; No need for Ant&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=ca5285b6-8657-4468-9462-e36b06b3dbeb"&gt;BizTalk Server 2004 Performance Tool&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Tool that allows for BizTalk Server tuning.&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=15c441be-4cda-40db-a10e-0ac9b481abc8"&gt;BizTalk Server 2004 Transactional .NET Adapter&lt;/a&gt;&lt;br /&gt;&lt;em&gt;My own adapter that allows for transactional message transmission to any .NET component.&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=a87e75e6-8de5-48fd-8a77-9345ae3d718e"&gt;BizTalk Server 2004 Tracking Playground&lt;/a&gt;&lt;br /&gt;&lt;em&gt;My own little tracking demo application showing how to make use of the tracking db views and WMI.&lt;/em&gt; &lt;li&gt;&lt;strong&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=2E461C07-7953-40A7-A7CE-639AE7BB9BEF"&gt;BizTalk Server 2004 Management Tool&lt;br /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;em&gt;I'm very curious about this one!&amp;nbsp; There's a GotDotNet workspace but it's empty as for now...&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=c2bd2cac-6fd8-4ee5-b524-4dcba88f7464"&gt;BizTalk Explorer&lt;br /&gt;&lt;/a&gt;&lt;em&gt;Doing what VS.NET allows you to do, without VS.NET :-)&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=cf64cccf-00de-4608-9a6f-ac4d25a6afbb"&gt;BizTalk Server Service Windows&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Allows for more flexible service windows.&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=38de5410-b207-4d1f-9926-e10a4ec366c2"&gt;BizTalk Server POP3 Adapter&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Inbound email messages in BizTalk Server&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=081ee89e-d702-47c3-836a-3bb7f49bd139"&gt;BizTalk Server TIBCO Adapter&lt;br /&gt;&lt;/a&gt;&lt;em&gt;Rudimentary sample&lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=189360ed-b216-45d2-b11a-b42828a3697d"&gt;BizTalk Server SQL BLOB Adapter&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Reading and writing message to binary SQL columns.&lt;/em&gt; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Please note: I haven't tested nor downloaded all of these.&amp;nbsp; I do not make any judgement on the quality nor availability of the entries above.&amp;nbsp; My only intention here is to give a short overview of what's currently available.&lt;/p&gt; &lt;p&gt;Have fun!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=229540" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>Reply to Todd's comments on the Transactional .NET Adapter</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/09/06/226146.aspx</link><pubDate>Mon, 06 Sep 2004 21:06:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:226146</guid><dc:creator>christof claessens</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=226146</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/09/06/226146.aspx#comments</comments><description>&lt;p&gt;Todd Sussman posted a few comments/requests on my &lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=15c441be-4cda-40db-a10e-0ac9b481abc8"&gt;Transactional .NET Adapter&lt;/a&gt;.&amp;nbsp; One of the things I was&amp;nbsp;asked for several times already is whether it would be hard to make it work in a request/response way.&amp;nbsp; Now, to be honest, I did consider this when implementing.&amp;nbsp; A few random thoughts:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Since the adapter is transactional, and since .NET remoting does not support transactions: the code called by the adapter would always run in process in the same appdomain.&amp;nbsp; (I would need to do really funky things to do this otherwise.) &lt;li&gt;I would advice against doing too much work in the component called by the adapter; remember there's a transaction in progress!&amp;nbsp; Ideally the component would access some queue, database or other transactional backend system.&amp;nbsp; Don't start any actions that take a long time and could risk the transaction to time-out. &lt;li&gt;Don't start any new threads in your component unless you don't really need the transaction.&amp;nbsp; Any new threads would not retain the transaction context...&amp;nbsp; (Widbey would do a better job here.) &lt;li&gt;I decided not to promote request reponse too much since I felt that would raise the risk of blocking the worker thread too long.&amp;nbsp; I was convinced that people needing this functionality would better use another transport to correlate response messages with their request.&amp;nbsp; For example: dropping messages from within your .NET component back on a queue which is asynchronously read by the MQSeries or MSMQ adapter...&amp;nbsp; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Was I wrong?&amp;nbsp; Probably... I'd like to hear all comments you have on this.&amp;nbsp; If you feel you need to have request reponse on the&amp;nbsp;transactional .NET adapter&amp;nbsp;in a scenario, please let me know!&lt;/p&gt; &lt;p&gt;Note to myself:&amp;nbsp;a few other enhancements that I could make:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;load each custom client assembly in a separate appdomain, this would allow for: &lt;ul&gt; &lt;li&gt;separate security settings for each assembly &lt;li&gt;configurable .NET config file for each assembly &lt;li&gt;unloading of the appdomain, would prevent needing to restart the BizTalk Service to release an assembly handle&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;the request response I just discussed &lt;li&gt;provide user with multiple interfaces so they can choose to receive an XmlDocument, XmlReader or just the plain bytestream&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=226146" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>XML Schema Element reuse vs Type reuse</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/09/02/224748.aspx</link><pubDate>Thu, 02 Sep 2004 15:48:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:224748</guid><dc:creator>christof claessens</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=224748</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/09/02/224748.aspx#comments</comments><description>&lt;p&gt;What my last post demonstrated was actually how element reuse limits your ability to reusing an XML Schema&amp;nbsp;definition.&amp;nbsp; Last few weeks I saw still too many people reusing elements over and over without considering what consequences this can have when later on a schema has to be updated, reused or extended...&lt;/p&gt; &lt;p&gt;Regarding the sample, which was correctly identified as invalid by Martijn, Sachin, Peter and Wilco: indeed the XML Schema spec, paragraph 3.3.3 states that "If ref is present, then all of &amp;lt;complexType&amp;gt;, &amp;lt;simpleType&amp;gt;, &amp;lt;key&amp;gt;, &amp;lt;keyref&amp;gt;, &amp;lt;unique&amp;gt;, nillable, default, fixed, form, block and type must be absent, i.e. only minOccurs, maxOccurs, id are allowed in addition to ref, along with &amp;lt;annotation&amp;gt;."&lt;/p&gt; &lt;p&gt;Unless it is very clear that in each and every situation an element will have the same name and exactly the same structure, an element reference is probably not safe to use.&amp;nbsp; I prefer reusing types, wich allow for much more flexible reuse.&lt;/p&gt; &lt;p&gt;Thanks for the comments - you surprised me :-)&lt;/p&gt; &lt;p&gt;&lt;em&gt;Note: I know of a few people already but if anyone else is planning to use the &lt;/em&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=15c441be-4cda-40db-a10e-0ac9b481abc8"&gt;&lt;em&gt;BizTalk Server 2004 Transactional .NET Adapter &lt;/em&gt;&lt;/a&gt;&lt;em&gt;I've written in a production environment, please get in contact.&amp;nbsp; I'd like to know how this goes, what you plan to use it for and how any additional needs can be further addressed.&lt;/em&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=224748" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/XML+Technologies/default.aspx">XML Technologies</category></item><item><title>Win a free GMail account by solving this!</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/09/01/224158.aspx</link><pubDate>Wed, 01 Sep 2004 18:58:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:224158</guid><dc:creator>christof claessens</dc:creator><slash:comments>15</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=224158</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/09/01/224158.aspx#comments</comments><description>&lt;p&gt;Good news :-) &lt;/p&gt; &lt;p&gt;I've a couple of GMail accounts to give away.&amp;nbsp; Let's make this a little contest :-)&amp;nbsp;&amp;nbsp;Since I'm curious how deep the average XML Schema knowledge goes, I'll grant GMail access to the first two people that post a comment explaining what is wrong with the XML Schema below.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;em&gt;Note: XMLSpy will mark this schema as valid while it certainly is not!&amp;nbsp; &lt;/em&gt;(Has anyone accidently noticed my aversion against this tool? :-))) )&lt;/p&gt;&lt;font color="#0000ff" size="1"&gt;&lt;font color="#0000ff" size="1"&gt; &lt;p align="left"&gt;&amp;lt;?&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xml&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;version&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="1.0"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;encoding&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="UTF-8"?&amp;gt;&lt;/p&gt; &lt;p align="left"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:schema&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#800000" size="1"&gt;xmlns&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt;:&lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;xs&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="http://www.w3.org/2001/XMLSchema"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;elementFormDefault&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="qualified"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;attributeFormDefault&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="unqualified"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;targetNamespace&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="myTargetNamespace"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#800000" size="1"&gt;xmlns&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt;:&lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;tns&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="myTargetNamespace"&amp;gt;&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="address"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;type&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="tns:addressType"/&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="customerDetails"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:complexType&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:sequence&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="firstName"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;type&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="xs:string"/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;ref&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="tns:address"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;nillable&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="true"/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:sequence&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:complexType&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:complexType&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="addressType"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:sequence&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="street"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;type&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="xs:string"/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:element&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;name&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="number"&lt;/font&gt;&lt;font color="#ff00ff" size="1"&gt; &lt;/font&gt;&lt;font color="#ff0000" size="1"&gt;type&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;="xs:string"/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:sequence&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:complexType&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;br /&gt;&amp;lt;/&lt;/font&gt;&lt;font color="#800000" size="1"&gt;xs:schema&lt;/font&gt;&lt;font color="#0000ff" size="1"&gt;&amp;gt;&lt;/p&gt;&lt;/font&gt;&lt;/font&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=224158" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/XML+Technologies/default.aspx">XML Technologies</category></item><item><title>BizTalk Server Contest Entry</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/08/29/222383.aspx</link><pubDate>Sun, 29 Aug 2004 20:28:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:222383</guid><dc:creator>christof claessens</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=222383</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/08/29/222383.aspx#comments</comments><description>&lt;p&gt;Finally submitted my entry to the &lt;a href="http://www.gotdotnet.com/team/wsservers/bts2004/Contest/BTS2004DeveloperCompetition.aspx"&gt;BizTalk Server contest&lt;/a&gt;.&amp;nbsp; Curious?&lt;/p&gt; &lt;p&gt;I created a transactional .NET adapter.&amp;nbsp; This adapter allows you to submit messages to any .NET component that implements a certain interface, in a transactional manner.&amp;nbsp; This means that, for example, if you access SQL Server from within your component, every operation on SQL will be in the same transaction as all message box operations.&amp;nbsp; This guarantees high reliability between the message box and any transactional backend.&amp;nbsp; If the transaction fails, everything will be rollbacked (including all operations on the message box)&amp;nbsp;and the message transmission will be retried.&lt;/p&gt; &lt;p&gt;So, instead of accessing your components using an expression shape inside an orchestration, you finally might think of doing things asynchronously now!&amp;nbsp; By calling .NET component asynchronously using the BizTalk Server 2004 Transactional DOTNET Adapter you can leverage the retries, backup transport, tracking and BAM features as well.&lt;/p&gt; &lt;p&gt;What's in the package?&lt;/p&gt; &lt;ul&gt; &lt;li&gt;MSI installation package&lt;/li&gt; &lt;li&gt;.chm documentation files&lt;/li&gt; &lt;li&gt;couple of samples&lt;/li&gt; &lt;li&gt;full documented source code&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;To show the adapter framework's inner workings, I programmed directly against the adapter framework.&amp;nbsp; (Not using the SDK adapter base classes.)&amp;nbsp; &lt;/p&gt; &lt;p&gt;Now it's up to you guys for using this: please provide me with comments, feedback.&amp;nbsp; Tell me what's good and what isn't.&amp;nbsp; Tell me what or how to improve...&amp;nbsp; But first of all: enjoy it.&amp;nbsp; It's there, it's free, it's for you!&lt;/p&gt; &lt;p&gt;Have fun with the pet project I've spent couple of months with: &lt;/p&gt; &lt;p&gt;The &lt;strong&gt;&lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=15c441be-4cda-40db-a10e-0ac9b481abc8"&gt;BizTalk Server 2004 Transactional DOTNET Adapter&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Special thanks to my girlfriend for all the patience she had!&amp;nbsp; &lt;/em&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=222383" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>About XML Schema's determism requirement...</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/08/17/215663.aspx</link><pubDate>Tue, 17 Aug 2004 13:07:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:215663</guid><dc:creator>christof claessens</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=215663</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/08/17/215663.aspx#comments</comments><description>&lt;p&gt;For those of you who haven't noticed yet: &lt;a href="http://blogs.msdn.com/dareobasanjo/"&gt;Dare Obasanjo&lt;/a&gt; has published a &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnexxml/html/xml07212004.asp"&gt;refined version&lt;/a&gt; of the work &lt;a href="http://www.xml.com/lpt/a/2003/12/03/versioning.html"&gt;David Orchard&lt;/a&gt; did about a year ago.&amp;nbsp; Doing so, Dare explains best practices in&amp;nbsp;designing an extensible xml schema.&amp;nbsp; Writing schemas that are both forward and backward compatible is not easy, believe me.&amp;nbsp; Even an experienced schema author can be tricked by some of the requirements the xml schema spec needs you to comply with.&lt;/p&gt; &lt;p&gt;One of the most import things to be aware of when designing xml schemas is the&amp;nbsp;requirement on the xml content model to be deterministic.&amp;nbsp; Some people like to&amp;nbsp;refer to this as the "Unique Particle Attribution Constraint".&amp;nbsp; For the &lt;a href="http://www.w3.org/TR/xmlschema-1/#non-ambig"&gt;normative definition&lt;/a&gt; of this constraint, I'd like to refer to the W3C.&amp;nbsp; No one could explain this so fuzzy as they can!!&amp;nbsp; &lt;a href=" http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconnon-deterministicschema.asp"&gt;MSDN &lt;/a&gt;does certainly a better job :-)&lt;/p&gt; &lt;p&gt;Even the very first xml spec itself has &lt;a href="http://www.w3.org/TR/2000/REC-xml-20001006#determinism"&gt;recommendations&lt;/a&gt; about this in a non normative section.&amp;nbsp; For compatibility reasons with SGML. In addition section 3.2.1 in this specification says: "For compatibility, it is an error if an element in the document can match more than one occurrence of an element type in the content model."&lt;/p&gt; &lt;p&gt;As for the question "why"... even Tim Ewald, recently &lt;a href="http://pluralsight.com/blogs/tewald/archive/2004/08/16/1881.aspx"&gt;wondered&lt;/a&gt;&amp;nbsp;why exactly xml schema had this requirement in the first place...&amp;nbsp; I can only guess... but it certainly makes writing an xml parser way easier since only one single&amp;nbsp;lookahead symbol is required...&amp;nbsp;(While otherwise some form of backtracking is needed, which could mean an enormous perf hit!)&lt;/p&gt; &lt;p&gt;.NET is a good xml citizen and requires you to comply with this constraint.&amp;nbsp; If you don't, you won't even be able to validate your schema.&amp;nbsp; Good work guys!&amp;nbsp; As close to the standards as possible!&lt;/p&gt; &lt;p&gt;Could someone explain to me then, why it is that&amp;nbsp;"&lt;a href="http://www.xmlspy.com"&gt;the world's leading product family of XML development tools&lt;/a&gt;" - laughing out loud now&amp;nbsp;-&amp;nbsp;doesn't even *support* detection of this constraint!!!&amp;nbsp; .NET, BizTalk Server, Word and InfoPath certainly do a&amp;nbsp;better job!&amp;nbsp; It's not because of &lt;a href="http://xml.apache.org/"&gt;Xerces &lt;/a&gt;supporting this kind of bad schema's that they have an excuse not to implement at least a check for this critical type of content model requirements!&amp;nbsp; Even worse, I came across &lt;a href="http://www.xmlspy.com/support_faq_ide_schema.html#q6_schema"&gt;this post &lt;/a&gt;in their public FAQ.&amp;nbsp; They publicly state that the detection of a non-deterministic model as an error would be wrong!&amp;nbsp; Pfffff... so far for the standards.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=215663" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/XML+Technologies/default.aspx">XML Technologies</category></item><item><title>Querying the WMI MSBTS_MessageInstance class</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/08/10/212097.aspx</link><pubDate>Tue, 10 Aug 2004 18:16:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:212097</guid><dc:creator>christof claessens</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=212097</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/08/10/212097.aspx#comments</comments><description>&lt;P&gt;As I suppose not everyone reading my blog is reading the newsgroups on a daily basis, here's a highlight.&amp;nbsp; Today,&amp;nbsp;a question came up regarding the querying of the MSBTS_MessageInstance class.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Let's summarise what is possible with this WMI class:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Retreiving all message instances that are currently available in the message box. 
&lt;LI&gt;Retreiving all message instances that comply with certain conditions and are currently available in the message box. 
&lt;LI&gt;Saving any of those messages to the file system.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;What is not possible with this class?&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Saving or retreiving&amp;nbsp;a message that is tracked.&amp;nbsp; Tracked messages are not handled in the same way as messages that are still resided in the message box.&amp;nbsp; If you want to save tracked message instances, you need to use the MSBTS_TrackedMessageInstance WMI class.&amp;nbsp; Please keep in mind, when doing this, that this class does *not* support enumeration.&amp;nbsp; You will need to use the MessageInstanceID in order to create an instance of it!&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In addition, remember that it is not possible to use the MSBTS_MessageInstance&amp;nbsp;class to make select queries based upon the content of the message context!&amp;nbsp; Why?&amp;nbsp; Message context is something dynamic and is not compiled into the WMI classes.&amp;nbsp; The message context is accessible on the class as an XML string though...&amp;nbsp; Making selects is only possible using the WMI properties on this class.&amp;nbsp; Like: ServiceName, ServiceInstanceStatus, ServiceInstanceID, ServiceClassId, ServiceClass...&lt;/P&gt;
&lt;P&gt;If you'd like to see this class in action using real life code - please check out my pet project: &lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/06/10/152787.aspx"&gt;the BizTalk Server 2004 Tracking Playground&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Happy coding!&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=212097" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item><item><title>More on pipeline components</title><link>http://weblogs.asp.net/christof_claessens/archive/2004/07/30/202517.aspx</link><pubDate>Fri, 30 Jul 2004 20:45:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:202517</guid><dc:creator>christof claessens</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/christof_claessens/rsscomments.aspx?PostID=202517</wfw:commentRss><comments>http://weblogs.asp.net/christof_claessens/archive/2004/07/30/202517.aspx#comments</comments><description>&lt;P&gt;A while ago, I &lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/06/20/160507.aspx"&gt;blogged &lt;/A&gt;about pipeline components and what you need to pay attention to.&amp;nbsp; Stephen, in reply to this, was wondering (see his &lt;A href="http://weblogs.asp.net/christof_claessens/archive/2004/06/20/160507.aspx#162938"&gt;comment&lt;/A&gt;) how tracking came into play.&amp;nbsp; And... to be honest - I didn't have a clue!&amp;nbsp; Only recently I managed to get the answer.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;It turns out that Stephen's question&amp;nbsp;actually was really valuable in helping me understand how exactly things work underneath... So, here's my - somewhat delayed - response and comments to his question.&lt;/P&gt;
&lt;P&gt;Assume that your pipeline component screws up and that tracking before the pipeline, is enabled.&amp;nbsp; What happens?&amp;nbsp; &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;if the message's body stream is seekable: 
&lt;UL&gt;
&lt;LI&gt;it gets tracked&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;if the message's body stream is *not* seekable: 
&lt;UL&gt;
&lt;LI&gt;it is *not* tracked&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In both cases, the message ends up suspended.&amp;nbsp; The body might be in the suspended message if the body stream was seekable, otherwise not.&amp;nbsp; (You should always have the context.)&lt;/P&gt;
&lt;P&gt;For example: in the case of HTTP, the stream will not be seekable and the body will not be tracked nor suspended in case of a fatal pipeline component failure.&amp;nbsp; (Note: the client will not get an HTTP either!)&lt;/P&gt;
&lt;P&gt;So, the only advise I can give is:&amp;nbsp;*never* screw up in your pipeline component :-)))&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=202517" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/christof_claessens/archive/tags/BizTalk+Server+2004/default.aspx">BizTalk Server 2004</category></item></channel></rss>