<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/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>Don Smith : Work Related</title><link>http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx</link><description>Tags: Work Related</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Updating the factories to VS2010</title><link>http://blogs.msdn.com/donsmith/archive/2009/11/05/updating-the-factories-to-vs2010.aspx</link><pubDate>Fri, 06 Nov 2009 00:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9918314</guid><dc:creator>donsmith</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/9918314.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=9918314</wfw:commentRss><description>This is just a quick post to let you know that I just posted an &lt;A href="http://blogs.msdn.com/simplifying_patterns_and_practices/archive/2009/11/05/factories-on-visual-studio-2010-an-update.aspx" mce_href="http://blogs.msdn.com/simplifying_patterns_and_practices/archive/2009/11/05/factories-on-visual-studio-2010-an-update.aspx"&gt;update&lt;/A&gt; over on the &lt;A href="http://blogs.msdn.com/simplifying_patterns_and_practices/" mce_href="http://blogs.msdn.com/simplifying_patterns_and_practices/"&gt;p&amp;amp;p team blog&lt;/A&gt;. Since this effort spans GAT/GAX and 3 factories, it makes more sense to post the updates there instead of here. Sorry for any confusion. Feel free to ping me if you have any questions. I'll still be blogging here (hopefully more) just not about the factory refresh project. Thanks.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9918314" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/GAX/default.aspx">GAX</category></item><item><title>Data Access Guidance</title><link>http://blogs.msdn.com/donsmith/archive/2009/07/23/data-access-guidance.aspx</link><pubDate>Fri, 24 Jul 2009 03:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9846979</guid><dc:creator>donsmith</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/9846979.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=9846979</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/Database_2.png" mce_href="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/Database_2.png"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: 0px" title=Database border=0 alt=Database align=right src="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/Database_thumb.png" width=230 height=225 mce_src="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/Database_thumb.png"&gt;&lt;/A&gt; A few of us in &lt;A href="http://msdn.microsoft.com/practices" mce_href="http://msdn.microsoft.com/practices"&gt;patterns &amp;amp; practices&lt;/A&gt;, with some help from our partners on the &lt;A href="http://msdn.microsoft.com/en-us/data/default.aspx" mce_href="http://msdn.microsoft.com/en-us/data/default.aspx"&gt;Data Platform&lt;/A&gt; team have been working on some guidance to help .NET customers build data access layers (DALs). We’ve been hearing for a while that data access on the .NET platform is not intuitive and this confusion is related to technology choices, approaches, design decisions, and implementations. So in response, we putting together some guidance that will hopefully reduce the confusion.&lt;/P&gt;
&lt;H5&gt;&amp;nbsp;&amp;nbsp; High-level Description&lt;/H5&gt;
&lt;P&gt;The role of the DAL is to consume services* that save and retrieve data on behalf of the application. Preferably it’s loosely coupled from the application through interface definitions provided by the application layer. Often the service it’s consuming is a SQL Server (TDS/T-SQL), which implies a relational store, and there are lots of APIs to use to do this (like ADO.NET). Other times – like when you can’t get to the SQL Server or when you’re using something other than a relational store – it’s a different kind of service or one you must build yourself (e.g. REST). &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;EM&gt;* I draw a distinction between these data services and services that represent course-grained business processes and operations (think SOA, SOAP, and things in that vein). I’m not talking about business services, but I am talking about crossing tiers.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;There are quite a few factors that will influence the type of store you use and the services used to interact with the store. While I personally believe our industry needs (and is continuing to go through) a reassessment of various data storage solutions, that’s not the aim of this guidance project – we just don’t have the experience and resources to do an adequate job right now. So this project is scoped to address relational stores and custom data services.&lt;/P&gt;
&lt;P&gt;Assuming a relational store, the app will either be able to access the SQL Server directly, or it won’t. This guidance will address both of these scenarios. In the case of being able to go straight to the SQL Server, there are 2 high-level patterns for doing so: object/relational mapping (O/RM), and tabular access. So to summarize the high-level scope of the guidance:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Direct access to SQL Server 
&lt;UL&gt;
&lt;LI&gt;1. Use object/relational mapping (ADO.NET Entity Framework) &lt;/LI&gt;
&lt;LI&gt;2. Use tabular access (Classic ADO.NET) &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;
&lt;LI&gt;No access to SQL Server 
&lt;UL&gt;
&lt;LI&gt;3. Consuming data services (ADO.NET Data Services, WCF, etc.) &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;H5&gt;&amp;nbsp;&amp;nbsp; Specifics&lt;/H5&gt;
&lt;P&gt;We’re going to use 2 forms of guidance to illustrate these 3 primary scenarios: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Reference Implementation (RI).&lt;/STRONG&gt; This is a real world&lt;EM&gt;ish&lt;/EM&gt; application that is made up of an ASP.NET MVC web app, a WPF client, and a Silverlight client that each cater to the 3 different roles who use the solution. This RI will only include the O/RM and data services scenario. Tabular access isn’t illustrated since it is better understood. The image below summarizes this online commerce platform. &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Written guidance.&lt;/STRONG&gt; This book/PDF will have 2 parts. 
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Architecture.&lt;/STRONG&gt; Technology-agnostic topics and cover important concepts, principles, and framing. These topics will cover all 3 scenarios (O/RM, Tabular, and Data Services). &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Implementation.&lt;/STRONG&gt; Technology-specific topics that correlate the architecture topics with how and where they are implemented in the RI. &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/overview_2.png" mce_href="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/overview_2.png"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=overview border=0 alt=overview src="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/overview_thumb.png" width=516 height=404 mce_src="http://blogs.msdn.com/blogfiles/donsmith/WindowsLiveWriter/DataAccessGuidance_FEE0/overview_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;H5&gt;&amp;nbsp;&amp;nbsp; Engage!&lt;/H5&gt;
&lt;P&gt;Like all p&amp;amp;p projects, we’re dropping code after each iteration (2 weeks) on &lt;A href="http://dataguidance.codeplex.com/" mce_href="http://dataguidance.codeplex.com/"&gt;the CodePlex community site&lt;/A&gt; and are actively soliciting feedback from YOU about what you need and how we’re doing – the more you engage, the better the guidance will be.&lt;/P&gt;
&lt;P&gt;So hop over, download the &lt;A href="http://dataguidance.codeplex.com/Release/ProjectReleases.aspx#ReleaseFiles" mce_href="http://dataguidance.codeplex.com/Release/ProjectReleases.aspx#ReleaseFiles"&gt;latest drop&lt;/A&gt;, and let us know what you think of how we view the world of .NET data access. We’ve set up a specific &lt;A href="http://dataguidance.codeplex.com/Wiki/View.aspx?title=Feedback" mce_href="http://dataguidance.codeplex.com/Wiki/View.aspx?title=Feedback"&gt;page for feedback&lt;/A&gt; if you’re curious what questions we have – we’ll continue to build on this list over time. We’re looking forward to your feedback!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9846979" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/data+access/default.aspx">data access</category></item><item><title>What's the deal between Devs and DBAs?</title><link>http://blogs.msdn.com/donsmith/archive/2009/07/01/what-s-the-deal-between-devs-and-dbas.aspx</link><pubDate>Wed, 01 Jul 2009 21:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9811656</guid><dc:creator>donsmith</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/9811656.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=9811656</wfw:commentRss><description>&lt;P&gt;As part of this Data Access Guidance project I'm workin on (which I'll blog more about soon), we're having a discussion with our advisors about the contention between the influence a Developer has on an enterprise solution and the influence a DBA has on the same solution. Because one of the deliverables of this project will be some written guidance, this seemed like a great opportunity to help each side identify with the other perspective so they both can have maximum impact on the solution. This will likely have a considerable effect on the architecture of the solution too. &lt;/P&gt;
&lt;P&gt;I've created a &lt;A title="wiki page" href="http://dataguidance.codeplex.com/Wiki/View.aspx?title=DevsAndDBAs&amp;amp;referringTitle=Home" mce_href="http://dataguidance.codeplex.com/Wiki/View.aspx?title=DevsAndDBAs&amp;amp;referringTitle=Home"&gt;wiki page&lt;/A&gt; on the project's CodePlex site so we can capture your experinece. Please pop over and drop us a line. We'll incorporate the comments into the draft over time. Thanks!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9811656" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/data+access/default.aspx">data access</category></item><item><title>Using MessageContracts and DataContracts</title><link>http://blogs.msdn.com/donsmith/archive/2008/03/10/using-messagecontracts-and-datacontracts.aspx</link><pubDate>Tue, 11 Mar 2008 05:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8142209</guid><dc:creator>donsmith</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/8142209.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=8142209</wfw:commentRss><description>&lt;P&gt;Users of the &lt;A href="http://msdn.com/servicefactory" mce_href="http://msdn.com/servicefactory"&gt;Service Factory&lt;/A&gt; often ask about the rationale behind the required use of MessageContracts even though the use of MessageContracts aren't mandated by WCF. I've answered this question in other venues, but it seemed like a good thing to put here in case I need to point others to it in the future.&lt;/P&gt;
&lt;P&gt;If you ask the WCF product team when you should use a MessageContract versus a DataContract, their guidance usually revolves around the level of control you need over the message - like when you need to use custom SOAP headers*. You can find more detail in &lt;A href="http://msdn2.microsoft.com/en-us/library/ms730255.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms730255.aspx"&gt;this topic&lt;/A&gt; of the WCF documentation. Their guidance makes complete sense if you think about the motivation they had when building WCF: to unify all of the Microsoft communication mechanisms into a single approach that is relevant to all scenarios. This is great for someone who has traditionally only done object-oriented or component-oriented development. They can be successful without understanding the nuances of building Web services. &lt;/P&gt;
&lt;P&gt;In our experience one of the biggest hurdles for many developers who are new to Web services has been the concept of the &lt;STRONG&gt;message&lt;/STRONG&gt; - rather than just passing around types like they've always done. You can characterize this distinction as implicit versus explicit message design. We have a topic in the Service Factory documentation that touches on this distinction. I think there is some room for improvement on this topic, but you can find it &lt;A href="http://msdn2.microsoft.com/en-us/library/cc304802.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/cc304802.aspx"&gt;here&lt;/A&gt; nevertheless. &lt;/P&gt;
&lt;P&gt;However, the confusion over a message isn't the only reason we elevate the importance of the message and recommend these usage patterns. We intentionally draw a clear distinction between types (both primitive types like string, and complex types like Customer) and messages (like ProcessExpenseReportRequest). From our perspective, DataContracts represent types and types are reusable. Messages are not used as types but rather the payload a method operates on - and it is not reusable since they are specific to the operation they are passed to and from. This level of distinction provides architects and lead developers a means of achieving better consistency throughout their organization by being more prescriptive about reusability. &lt;/P&gt;
&lt;P&gt;I am aware that Juval's position is that MessageContracts are rarely needed. And, I hold Juval in the highest regard - I've not yet had an opportunity to learn what is motivating him to take this position. Some might argue that MessageContracts are just an additional (unnecessary) level of redirection. I can understand this point of view. We just feel the benefits greatly outweigh this nominal cost, and the feedback we've received from customers has been completely supportive of this approach. &lt;/P&gt;
&lt;P&gt;&lt;EM&gt;* In my opinion, there is only one reason you would need to create a custom SOAP header that isn't already defined by a standards body like WS-*. (hint: if it's already defined elsewhere, you should use it to ensure interoperability, instead of "rolling your own") And, that reason is if you need to pass around localization information (like "en-us"). I don't think this is covered by any WS-* or other spec.&lt;/EM&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8142209" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Pretty Impressive Management</title><link>http://blogs.msdn.com/donsmith/archive/2008/02/24/pretty-impressive-management.aspx</link><pubDate>Mon, 25 Feb 2008 08:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7888532</guid><dc:creator>donsmith</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/7888532.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=7888532</wfw:commentRss><description>&lt;P&gt;&lt;EM&gt;I was pretty impressed by something my manager did recently. I've shared it with a few other people, but I think this is noteworthy enough for a blog entry. My hopes are that other mangers will be equally impressed and carry out similar acts.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;My manager (we'll call him Shaun ... since that's his name) and I were talking about career development during one of our weekly one-on-ones about 8 months ago and I mentioned to him that I would really like to take on some direct reports and more responsibilities at the group-level (of patterns &amp;amp; practices). I've always enjoyed seeing people succeed and am ready for my job to allow me to have a more direct opportunity to influence that more. I've also been in p&amp;amp;p for almost 3 years now and feel I have a deep understanding of what we do and how we do it. &lt;/P&gt;
&lt;P&gt;I really shared this with him so he would know what I was thinking - not because I expected him to do anything about it. Actually, I didn't think he could do anything about it. You see, p&amp;amp;p is a small group - only about 30 full-time Microsoft employees. In other words, there is no way for me to move up and stay in p&amp;amp;p unless another manager slot opens up, which isn't likely, or Shaun leaves his position, which I also didn't think was likely. Shaun was basically the second employee of p&amp;amp;p - he and Mike Kropp founded the group.&lt;/P&gt;
&lt;P&gt;Of course Shaun also knew there wasn't anywhere for me to go if I wanted to stay in the group (which he knew I absolutely wanted to do). Imagine my surprise when I found out that it was around this time that he began looking for other opportunities outside of p&amp;amp;p. Fast forward to today. Shaun has found a very challenging role in another group in Microsoft and has named me acting* Senior Product Planner. After this week, I will be honored to have &lt;A href="http://blogs.msdn.com/gblock/" mce_href="http://blogs.msdn.com/gblock/"&gt;Glenn&lt;/A&gt;, and &lt;A href="http://blogs.msdn.com/agile/" mce_href="http://blogs.msdn.com/agile/"&gt;Grigori&lt;/A&gt; reporting to me and I'll have to hire my replacement (let me know if you're interested).&lt;/P&gt;
&lt;P&gt;When he told me that it was my desire to move up that caused him to reevaluate his situation, I was more than impressed. Yes, Shaun has been a fantastic manager (Glenn and Grigori agree) and it is this kind of act that speaks volumes about the kind of person and manager he is. I'm not so naive to think that my desires are the only thing that motivated him to move on, but knowing it was a factor is impressive enough. It's very different from the "yeah, I'll get to move up when Joey Stayput dies" situation we always hear about.&lt;/P&gt;
&lt;P&gt;Thank you Shaun. I have some great shoes to fill and I promise do my best.&lt;/P&gt;
&lt;P&gt;* Right now p&amp;amp;p doesn't have a leader. Once one is appointed (hopefully in the next 2 weeks) he will decide if I take on the role completely or if he would rather hire someone else into it. So until then, I'm just "acting".&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7888532" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Roger joins the fray ... w00t!</title><link>http://blogs.msdn.com/donsmith/archive/2008/02/13/roger-joins-the-fray-w00t.aspx</link><pubDate>Wed, 13 Feb 2008 20:32:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7678144</guid><dc:creator>donsmith</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/7678144.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=7678144</wfw:commentRss><description>&lt;P&gt;My good friend &lt;A class="" title="Roger Lamb" href="http://blogs.msdn.com/rogerla" mce_href="http://blogs.msdn.com/rogerla"&gt;Roger Lamb&lt;/A&gt; has just joined the blogsphere and I assure you that if you are interested in anything remotely related to Sharepoint, you'll want to subscribe now. Check out &lt;A class="" href="http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx" mce_href="http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx"&gt;his first post&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;You see how I just did that? How I increased&amp;nbsp;your expectation, and thus, his commitment around his blog?&lt;/EM&gt; &lt;/P&gt;
&lt;P&gt;Isn't the blogsphere wonderful? haha&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Welcome to the chaos bro!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7678144" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Rambling/default.aspx">Rambling</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Personal+Stuff/default.aspx">Personal Stuff</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Influence MSF guidance</title><link>http://blogs.msdn.com/donsmith/archive/2007/09/27/influence-msf-guidance.aspx</link><pubDate>Thu, 27 Sep 2007 19:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5170474</guid><dc:creator>donsmith</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/5170474.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=5170474</wfw:commentRss><description>My colleague, Andrew Delin, is making the process of developing software real for development teams. However, he doesn't want to do it in a vacuum. If you think you know anything about development processes, I'm sure he'd love to hear from you. &lt;A href="http://blogs.msdn.com/processblog/archive/2007/09/25/so-tell-us-what-you-think-about-the-msf-guidance.aspx"&gt;http://blogs.msdn.com/processblog/archive/2007/09/25/so-tell-us-what-you-think-about-the-msf-guidance.aspx&lt;/A&gt;. Thanks.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5170474" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>A time for reflection and assessment</title><link>http://blogs.msdn.com/donsmith/archive/2007/05/07/a-time-for-reflection-and-assessment.aspx</link><pubDate>Tue, 08 May 2007 09:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2475307</guid><dc:creator>donsmith</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/2475307.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=2475307</wfw:commentRss><description>&lt;P&gt;Wow, it's hard to believe it has been almost a&amp;nbsp;year since the patterns &amp;amp; practices team released&amp;nbsp;our first software factories.&amp;nbsp;Remember when the early customer previews were called Baseline Architecture Toolkits? Oh, the nostalgia :) We could have had so much fun with the BAT acronym ... haha.&lt;/P&gt;
&lt;P&gt;So that means now&amp;nbsp;is a perfect time to take a quick assessment on how we're doing so far ... that's right, a survey. &lt;STRONG&gt;Now hold on a second!&lt;/STRONG&gt; At least hear me out for the rest of the paragraph. I can't&amp;nbsp;devulge too much detail yet, but some team in Microsoft might be in the middle of building some serious software factory infrastructure for a future version of Visual Studio - that's right, much better than GAX and DSL tools. Do you want it to suck? Do you think software factories are just a pipe dream and would rather they build something else? If you're thinking, "Oh no Don, I like software factories, especially the Service Factory (okay, I'm embellishing - haha)," then I would ask you to keep reading. I promise we've tried to optimize the survey to allow you the highest level of impact in the least amount of time possible.&lt;/P&gt;
&lt;P&gt;Whew, you're still reading ... excellent! Okay, so you're only looking at 9 generic questions and 9 questions for each software factory you've evaluated/used. This survey covers the 4 factories released by p&amp;amp;p (&lt;A class="" title="Web Service Software Factory" href="http://msdn2.microsoft.com/en-us/library/aa480534.aspx" target=_blank mce_href="http://msdn2.microsoft.com/en-us/library/aa480534.aspx"&gt;web service&lt;/A&gt;, &lt;A class="" title="Smart Client Software Factory" href="http://msdn2.microsoft.com/en-us/library/aa480482.aspx" target=_blank mce_href="http://msdn2.microsoft.com/en-us/library/aa480482.aspx"&gt;smart client&lt;/A&gt;, &lt;A class="" title="Web Client Software Factory" href="http://msdn2.microsoft.com/en-us/library/bb264518.aspx" target=_blank mce_href="http://msdn2.microsoft.com/en-us/library/bb264518.aspx"&gt;web client&lt;/A&gt;, and &lt;A class="" title="Mobile Client Software Factory" href="http://msdn2.microsoft.com/en-us/library/aa480471.aspx" target=_blank mce_href="http://msdn2.microsoft.com/en-us/library/aa480471.aspx"&gt;mobile client&lt;/A&gt;). The first 8 questions will take no more than a minute or two. The 9 questions for each factory shouldn't take more than 10 minutes each and you will only see the questions for the factories you choose. The last question is an anything-else-you-want-to-share question - you can take as long as you want on it. That's it ... super quick-n-easy.&lt;/P&gt;
&lt;P&gt;Here is the URL you need to&amp;nbsp;take the survey: &lt;A href="http://www.zoomerang.com/survey.zgi?p=WEB2266YYVWSKP"&gt;http://www.zoomerang.com/survey.zgi?p=WEB2266YYVWSKP&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;We're really looking forward to your feedback so&amp;nbsp;we can help&amp;nbsp;the future&amp;nbsp;include some truly kick-ass factories.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2475307" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>First Service Factory v3 Community Drop</title><link>http://blogs.msdn.com/donsmith/archive/2007/04/06/first-service-factory-v3-community-drop.aspx</link><pubDate>Sat, 07 Apr 2007 09:28:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2044125</guid><dc:creator>donsmith</dc:creator><slash:comments>26</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/2044125.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=2044125</wfw:commentRss><description>&lt;P&gt;Okay, we're off and running now. Earlier today I posted the first of many community drops for Service Factory v3 - don't let "build 19" fool you - this is the first one. It took us longer than expected to get this one&amp;nbsp;out the door, but we're all set now. &lt;/P&gt;
&lt;P&gt;I suspect the first question you have is "&lt;EM&gt;What is so specially about this release?&lt;/EM&gt;"&amp;nbsp;Fair enough question. Well, probably the biggest thing is the addition of models. This alone accounts for most of the improvements over v2. I'm not going to go into too much detail here (there will be plenty of time for that later), but here are the high points:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Now Visual Studio has a memory about&amp;nbsp;your decisions. In v2&amp;nbsp;you&amp;nbsp;place your decisions&amp;nbsp;in wizards. In addition to models, there are still wizards, but it's the model that "remembers" so you can generate code anytime you like.&lt;/LI&gt;
&lt;LI&gt;Now you have a visualization of the application you are building. The designers provide this. Right now there are 2 designers/models.&amp;nbsp;The first screen shot below shows the one for service contracts and the one after that shows data contracts.&lt;/LI&gt;
&lt;LI&gt;Now you can delay the platform decision (WCF/ASMX/etc) and the language decision (C#/VB/etc) until as late as you like (way after you define all the service, message, and data interfaces.&lt;/LI&gt;
&lt;LI&gt;With this version there is also no assumption that you have already define the service contract before you start using the factory. You can either approach the solution from a capability perspective (dropping operations on the service contract designer) or from a data perspective (dropping data contracts on its designer).&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Here is what they look like (I added the thin red boxes):&lt;/P&gt;
&lt;P&gt;&lt;IMG title="Service Contract Designer" alt="Service Contract Designer" src="http://dev4net.members.winisp.net/images/sc.png" mce_src="http://dev4net.members.winisp.net/images/sc.png"&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG title="Data Contract Designer" alt="Data Contract Designer" src="http://dev4net.members.winisp.net/images/dc.png" mce_src="http://dev4net.members.winisp.net/images/dc.png"&gt;&lt;/P&gt;
&lt;P&gt;I'm trying something new during this release&amp;nbsp;by including a "start here" document and a&amp;nbsp;"walkthrough" document for each drop. I'm hoping this will:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Save you lots of time in evaluating this drop. &lt;/LI&gt;
&lt;LI&gt;Set your expectations around how much time you will need to evaluate the drops.&lt;/LI&gt;
&lt;LI&gt;Provide you a very directed way to provide feedback about the drop.&lt;/LI&gt;
&lt;LI&gt;Give you an easy way to see what the new features are every 2 weeks.&lt;/LI&gt;
&lt;LI&gt;Let you know what the known issues are with each drop.&lt;/LI&gt;
&lt;LI&gt;Get me more high quality feedback so I'll know we're building the best, most appropriate Service Factory we can for you.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;So please use these docments and give me your thoughts about them. &lt;/P&gt;
&lt;P&gt;You can expect new community drop every other Friday until the end of October (unless something really unexpected happens of course).&lt;/P&gt;
&lt;P&gt;&lt;A class="" href="http://www.codeplex.com/servicefactory/Release/ProjectReleases.aspx?ReleaseId=2928" mce_href="http://www.codeplex.com/servicefactory/Release/ProjectReleases.aspx?ReleaseId=2928"&gt;&lt;STRONG&gt;Download Service Factory v3 Community Drop 19 here&lt;/STRONG&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Looking forward to your feedback ...&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2044125" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Now Available: Aaron's new Service Factory article on MSDN</title><link>http://blogs.msdn.com/donsmith/archive/2007/01/11/now-available-aaron-s-new-service-factory-article-on-msdn.aspx</link><pubDate>Thu, 11 Jan 2007 11:04:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1449828</guid><dc:creator>donsmith</dc:creator><slash:comments>8</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/1449828.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=1449828</wfw:commentRss><description>&lt;P&gt;&lt;A class="" href="http://blogs.msdn.com/toub" target=_blank mce_href="http://blogs.msdn.com/toub"&gt;Steven&lt;/A&gt; just told me that &lt;A class="" href="http://pluralsight.com/blogs/aaron/default.aspx" target=_blank mce_href="http://pluralsight.com/blogs/aaron/default.aspx"&gt;Aaron Skonnard's&lt;/A&gt; &lt;A class="" href="http://msdn.microsoft.com/msdnmag/issues/07/02/ServiceStation/default.aspx" mce_href="http://msdn.microsoft.com/msdnmag/issues/07/02/ServiceStation/default.aspx"&gt;latest Service Factory article about&amp;nbsp;the&amp;nbsp;December release&lt;/A&gt;&amp;nbsp;was just published through his &lt;A class="" href="http://msdn.microsoft.com/msdnmag/find/default.aspx?type=Ti&amp;amp;phrase=Service%20Station&amp;amp;words=exact" target=_blank mce_href="http://msdn.microsoft.com/msdnmag/find/default.aspx?type=Ti&amp;amp;phrase=Service%20Station&amp;amp;words=exact"&gt;Service Station column in the&amp;nbsp;MSDN Magazine&lt;/A&gt;. Talk about timing ... sweet.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Even though&amp;nbsp;it was written and finished before we locked down the code, it is still very accurate and comprehensive. I mean, it's Aaron ...&amp;nbsp;what&amp;nbsp;else would&amp;nbsp;you expect?! There a few minor places where we changed the code out from under him so if you have a question about anything in it, feel free to leave a comment here and I'll field it. &lt;/P&gt;
&lt;P&gt;Oh, and if you're building ASMX services, be sure to check out &lt;A class="" href="http://msdn.microsoft.com/msdnmag/issues/06/12/ServiceStation" mce_href="http://msdn.microsoft.com/msdnmag/issues/06/12/ServiceStation"&gt;his first Service Factory article&amp;nbsp;about the July (ASMX) release&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;Great job Aaron!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1449828" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>... come and get yer Service Factory!</title><link>http://blogs.msdn.com/donsmith/archive/2007/01/09/come-and-get-yer-service-factory.aspx</link><pubDate>Wed, 10 Jan 2007 07:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1442259</guid><dc:creator>donsmith</dc:creator><slash:comments>24</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/1442259.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=1442259</wfw:commentRss><description>&lt;P&gt;That's right ladies and gentlemen, the December release of the Web Service Software Factory and a VB.NET version&amp;nbsp;is now available for your consumption, modification, and production pleasures :) &lt;/P&gt;
&lt;P&gt;Okay, I'm just going to do&amp;nbsp;3 things in this post since I know there will be many more to follow: &lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Lay some links on ya. For downloading the Service Factory releases and more info.&lt;/LI&gt;
&lt;LI&gt;Share my favorite new features of the Service Factory with you.&lt;/LI&gt;
&lt;LI&gt;Give you a sense of what is to come in the near and not-so-near future.&lt;/LI&gt;&lt;/OL&gt;
&lt;H4&gt;&lt;STRONG&gt;Links&lt;/STRONG&gt;&lt;/H4&gt;
&lt;UL&gt;
&lt;LI&gt;Service Factory&amp;nbsp;December release helps you build both WCF and ASMX services in C#. The old July release is no longer available since everything it contained is included in this release.&amp;nbsp;&lt;A title="Web Service Software Factory–December 2006 (ASP.NET and WCF services in C#)" href="http://www.microsoft.com/downloads/details.aspx?familyid=db996113-6e92-4894-9b7e-0debb614d72f &amp;amp;displaylang=en"&gt;&lt;STRONG&gt;&lt;FONT color=#006bad&gt;Web Service Software Factory–December 2006 (ASP.NET and WCF services in C#)&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Service Factory July release that helps you build ASMX services in VB.NET. Yes, I know this is new and was actually published in December, but it is effectively the same exact version as the original July release - it's just been converted to VB.NET (that's why we're calling it the July release). If this is confusing, I apologize ... I'm to blame.&amp;nbsp;&lt;A title="Web Service Software Factory–July 2006 (ASP.NET services in VB.NET)" href="http://www.microsoft.com/downloads/details.aspx?familyid=7dda69a4-d404-4cc0-b1ad-a9856c3af646&amp;amp;displaylang=en"&gt;&lt;STRONG&gt;&lt;FONT color=#006bad&gt;Web Service Software Factory–July 2006 (ASP.NET services in VB.NET)&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Service Factory information. If you're not sure what the Service Factory is and want to find out before downloading it, go to &lt;A href="http://msdn.com/servicefactory"&gt;&lt;STRONG&gt;&lt;FONT color=#006bad&gt;http://msdn.com/servicefactory&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt; to learn more about it.&lt;/LI&gt;&lt;/UL&gt;
&lt;H4&gt;Favs&lt;/H4&gt;
&lt;P&gt;&lt;STRONG&gt;WSDL-first support&lt;/STRONG&gt;. This feature definitely wasn't the most challenging to include, but I still love it. I've spent a lot of time over the years monkeying around with WSDL files. The fact that Service Factory has a single recipe (wizard) that will take a single WSDL and generate the service interface, service implementation, binding configuration (config file), and all of the associated DataContracts/XmlSerializable types is just freakin' sweet. You have to see it even if you don't define all your contracts in WSDL first.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Versioning guidance&lt;/STRONG&gt;. This is a favorite of mine because ... well, I wrote it haha. No, seriously ... it's no secret this is a topic that is near and dear to my heart. I have labeled the topic "emerging guidance" in the Service Factory documentation because I want to gather more evidence from customers that this approach is actually working for them before I propose&amp;nbsp;we call&amp;nbsp;it a&amp;nbsp;"proven practice". I have spoken with a number of customers who have taken this approach and it is working well for them. I haven't spoken to anyone it didn't work for, but I'd love to hear from you. If you're interested in reading or sharing, I've also posted the topic on my blog &lt;A title="Versioning Web Services" href="http://blogs.msdn.com/donsmith/pages/VersioningWebServices.aspx"&gt;&lt;STRONG&gt;&lt;FONT color=#006bad&gt;here&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt;. Personally, I think the "strategy" section of the guidance&amp;nbsp;is still weak on content, but more on that in the "futures" section of this post. I also plan to do a webcast on it.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;WCF Code analysis&lt;/STRONG&gt;. This one turned out to be the sleeper feature&amp;nbsp;- we didn't expect this to turn out so&amp;nbsp;sweet. As you may know, FxCop has been integrated into Visual Studio 2005 under the name &lt;EM&gt;Code Analysis&lt;/EM&gt;. Well, we took all of the same rules that used to be the Security Analyzer back in the WSE days and converted them all to code analysis rules. They also work against the code AND the config files (something FxCop hasn't done historically). I know, pretty sweet, huh? Well, when we showed this to the WCF team, they asked if we could include some of the rules that they fire at run-time so they could be run at design-time (like the ones that make sure all the binding stuff is consistent). "Sure", we said. So there are about a dozen of them too ... and it's all integrated into Visual Studio ... even if you're not using Service Factory.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recipe runner&lt;/STRONG&gt;. Okay, now I'm cheating a little. This isn't actually a feature ... and it's not really included in Service Factory. One thing we learned while building the July release was that testing GAX recipes is feakin' hard. Well, harder than it should be. So the team took a couple of months at the beginning of this version to get it right. The result is something we call RecipeRunner. Those of you who are creating your own recipes or heavily modifying the ones we provide will really like this if you care about testing, which you should. We'll be making it available on the community site in the near future.&lt;/P&gt;
&lt;P&gt;There are loads more things that are new and way cool in this release, but I want you to discover some of them for yourself too. Of course I'll be mentioning them as time goes on and in some mini videos. Oh, that brings me to the last item on my agenda.&lt;/P&gt;
&lt;H4&gt;Futures&lt;/H4&gt;
&lt;P&gt;&lt;STRONG&gt;Blogcasts&lt;/STRONG&gt;. The very next things you're going to start seeing are more of the &lt;A href="http://blogs.msdn.com/donsmith/archive/2006/04.aspx"&gt;&lt;STRONG&gt;&lt;FONT color=#006bad&gt;blogcasts&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/A&gt; I did some months back. Many of them are outdated now and I need to do more of them now that&amp;nbsp;the WCF Service Factory&amp;nbsp;has released. The feedback was very positive (thank you) and because I claim to listen to you, I promise to&amp;nbsp;do more of them shortly.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;HOL exercises&lt;/STRONG&gt;. I've already began the process of converting the existing hands-on lab (HOL) to WCF. Additionally, we'll be adding a bunch of new exercises. What I need from you is some details so we're sure they are helpful. This is what we have in mind:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Modifying a guidance package&lt;/STRONG&gt; - There is already a how-to in the Service Factory documentation, but customers are always telling me they need more help. If you tell me what kind of changes you're making to guidance packages I will try to create an exercise that illustrates how to make that change.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Building a service agent&lt;/STRONG&gt; - A service agent is that layer of code on the consumer side that invokes the proxy (that's right, you're NOT suppose to do it in the button's click event handler :). It manages things like retries, response caching, offline support, asynchronicity, etc. I need you to tell me what kind of challenges YOU (not your neighbor) need. That will help me get this exercise right.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Versioning&lt;/STRONG&gt; - this will build on the topic I mentioned earlier and will walk you through how to evolve a service in a number of ways.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Message validation&lt;/STRONG&gt; - The reference implementation already illustrates this. But would you find a HOL exercise valuable? If not, cool, I'll spend that energy somewhere else. If so, also cool.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Exception shielding&lt;/STRONG&gt; - The reference implementation also illustrates this. Same question ...&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Create a code analysis rule&lt;/STRONG&gt; - I think this is also covered in the VS documentation, but I've never looked for it. Are you going to be writing your own rules? If so,&amp;nbsp;would you find a HOL exercise helpful?&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Workflow Foundation&lt;/STRONG&gt; - we actually did a lot of work with this, but had to pull it at the last minute (yeah, sometimes cutting scope at the last minute hurts). We might be in a position to create an exercise as a result of what we already have. We'll see.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;v3 planning&lt;/STRONG&gt;. We have already began the planning process for v3. But because we JUST started, we don't have a lot to share just yet. I can tell you (if you didn't already guess) that a service&amp;nbsp;domain specific language (DSL) is the primary theme of the next version.&amp;nbsp;I will be sharing everything with you around the features and their priorities as soon as we have something to share. As always, we'll be&amp;nbsp;counting on you to steer us where you need us to go. All of this communication will naturally happen on the Service Factory community site, which will be moving to CodePlex in the very near future. More on that later too.&lt;/P&gt;
&lt;P&gt;Okay, it's getting late and the weather is getting nasty so I'm heading home. Until next time, you have a lot to keep you busy :D Looking forward to your feedback. Thanks!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1442259" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Handcrafting WCF-friendly WSDLs</title><link>http://blogs.msdn.com/donsmith/archive/2006/10/06/Handcrafting-WCF_2D00_friendly-WSDLs.aspx</link><pubDate>Fri, 06 Oct 2006 10:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:795666</guid><dc:creator>donsmith</dc:creator><slash:comments>13</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/795666.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=795666</wfw:commentRss><description>&lt;P&gt;It's 10:15 pm and I'm still in the office, but I really think I should get this entry posted before I head home - or it won't ever get posted. I was supposed to be working on my demo for my Service Factory session at the &lt;A href="http://www.impactevents.com/biztalkconference/" mce_href="http://www.impactevents.com/biztalkconference/"&gt;SOA Conference&lt;/A&gt; tomorrow, but I got side-tracked early in the day when I started playing with a new feature of Service Factory (that I'm going to demo). This new recipe (hereforth referred to as "&lt;EM&gt;the new recipe&lt;/EM&gt;") allows you to create the service interface, data contracts, and a stub of the service implementation from an existing WSDL document. Yeah, pretty cool, huh? Of course you can do the same thing in svcutil &lt;EM&gt;if &lt;/EM&gt;you have the .NET 3.0 SDK installed, but you have to leave Visual Studio and head off to the command prompt - and it won't separate the parts into multiple files and place them in the appropriate projects. &lt;/P&gt;
&lt;P&gt;As I'm sure you've already realized, we've added this feature for the masses who have adopted a contract-first approach to building services. Unfortunately for these masses, the object model you have to code against after you've generated code from your existing WSDLs (using either svcutil or &lt;EM&gt;the new recipe&lt;/EM&gt;) is not as enjoyable as what you get with the code-first approach WCF and its DataContract offer. I'm hoping this entry will add some clarity for those of you who wish to have the best of both worlds: Contract-First and DataContracts. First, let's talk about the DataContract.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The DataContract&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Rather than start from ground zero with DataContract basics and the DataContractSerializer, I'm going to recommend you go read &lt;A href="http://www.pluralsight.com/blogs/aaron/default.aspx" mce_href="http://www.pluralsight.com/blogs/aaron/default.aspx"&gt;Aaron Skonnard's&lt;/A&gt; excellent Service Station article on &lt;A href="http://msdn.microsoft.com/msdnmag/issues/06/08/ServiceStation/default.aspx" mce_href="http://msdn.microsoft.com/msdnmag/issues/06/08/ServiceStation/default.aspx"&gt;Serialization in WCF&lt;/A&gt; before continuing. Okay, now that you know DataContract only supports a subset of &lt;A href="http://www.w3.org/TR/xmlschema-0/" mce_href="http://www.w3.org/TR/xmlschema-0/"&gt;XML Schema&lt;/A&gt;, let's get more specific about this "subset". I am in no way stating that this is a complete list, but these are the things I've personally been able to verify. If you use any of the following constructs, svcutil and &lt;EM&gt;the new recipe&lt;/EM&gt; will fall back to creating XML serializable types (like the ones in ASMX) instead of DataContracts.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&amp;lt;xs:element ref= ... 
&lt;LI&gt;&amp;lt;xs:anyAttribute ... 
&lt;LI&gt;&amp;lt;xs:group ref= ... 
&lt;LI&gt;&amp;lt;xs:attribute ... 
&lt;LI&gt;&amp;lt;xs:choice ... 
&lt;LI&gt;&amp;lt;xs:any ... 
&lt;LI&gt;&amp;lt;xs:all ...&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Of course this pretty much means to be safe, you need to stick with a &amp;lt;xs:sequence&amp;gt; of &amp;lt;xs:elements&amp;gt;. However, I was a little surprised to see that a &amp;lt;xs:simpleType&amp;gt; &amp;lt;xs:restriction&amp;gt; on a xs:string generated a very nice enum. Oh, News Flash! &lt;A href="http://pluralsight.com/blogs/kirillg/default.aspx" mce_href="http://pluralsight.com/blogs/kirillg/default.aspx"&gt;Kirill&lt;/A&gt; just responded to my email (hey, what's he doing&amp;nbsp;on email&amp;nbsp;this late?) and pointed me to some [internal] beta documentation that &lt;STRONG&gt;very&lt;/STRONG&gt; clearly defines how all XSD constructs map to DataContracts. The doc looks awesome -&amp;nbsp;I'll be sure to update this entry once it is live on the Web (if I don't, remind me). Okay, but you're not in the clear yet. You see, now we have to navigate the message wrapping issue.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The MessageContract&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Because the DataContract is all about simplifying interop and the object model (OM), it hides wrapping element from the code, but (obviously) not from the WSDL. So, if you're going to import your handcrafted WSDLs, you need to know how to represent the wrapper&amp;nbsp;"message" in WSDL in such a way that you don't have to deal with them in your OM. I think the easiest way to explain this part would be to start with a fragment of a WSDL and show what must change to get the right stuff in code. Consider this:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;xmlns:wsdl&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://schemas.xmlsoap.org/wsdl/&lt;/SPAN&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;xmlns:xs&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://www.w3.org/2001/XMLSchema&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:srvc&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:data&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetNamespace&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:types&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;elementFormDefault&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;qualified&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; targetNamespace&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:tns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;tns:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&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; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;ID&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;xs:int&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&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; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;Name&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;xs:string&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:types&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeSoapIn&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:part&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;request&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;data:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeSoapOut&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:part&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;response&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;data:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:portType&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;IEmployeeManager&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:operation&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:input&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;srvc:AddEmployeeSoapIn&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:output&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;message&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;srvc:AddEmployeeSoapOut&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:operation&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:portType&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:binding&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red; FONT-FAMILY: consolas"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: consolas"&gt;"&lt;SPAN style="COLOR: blue"&gt;YouGetTheIdea&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon; FONT-FAMILY: consolas"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; FONT-FAMILY: consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Yes, I know I'm sending and receiving the same type. I'm trying to balance between brevity and reality (cut me some slack). Hopefully at this point I have some contract-first readers nodding their head thinking, "Ok, I'll buy that - seems reasonable enough." Now let's look at how we would have to write this to get the nice dev experience with WCF ('cause this won't create it).&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xmlns:wsdl&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://schemas.xmlsoap.org/wsdl/&lt;/SPAN&gt;"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xmlns:xs&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://www.w3.org/2001/XMLSchema&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; xmlns:srvc&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; xmlns:data&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; targetNamespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:types&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;elementFormDefault&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;qualified&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; targetNamespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; xmlns:tns&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;tns:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas"&gt;&lt;SPAN&gt;xs:element&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas"&gt;&lt;/SPAN&gt;&lt;SPAN&gt;name&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas"&gt;&lt;SPAN&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;ID&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;/SPAN&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;xs:int&lt;/SPAN&gt;&lt;/SPAN&gt;" &lt;SPAN style="BACKGROUND: #ffff99; COLOR: red"&gt;nillable&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: #ffff99"&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&lt;/SPAN&gt;&lt;SPAN&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman','serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas"&gt;xs:element&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas"&gt;&lt;/SPAN&gt;&lt;SPAN&gt;name&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas"&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas"&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Name&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;/SPAN&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;xs:string&lt;/SPAN&gt;&lt;/SPAN&gt;" &lt;SPAN style="BACKGROUND: #ffff99; COLOR: red"&gt;nillable&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: #ffff99"&gt;"&lt;SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&lt;/SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #ffff99"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;elementFormDefault&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;qualified&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; targetNamespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;BR&gt;&lt;SPAN style="COLOR: red"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; xmlns:data&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.DataContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; xmlns:tns&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;http://MyOrg.HrSrvc.SrvcContracts/2006/10&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: maroon"&gt;xs:import&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://MyOrg.HrSrvc.DataContracts/2006/10"/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&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; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;request&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;data:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeResponse&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&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; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeResult&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;data:Employee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:sequence&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:complexType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:element&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;xs:schema&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:types&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeSoapIn&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:part&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;parameters&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;srvc:AddEmployee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployeeSoapOut&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:part&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;parameters&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;element&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="BACKGROUND: #ffff99; COLOR: blue"&gt;srvc:AddEmployeeResponse&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:portType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;IEmployeeManager&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:operation&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;AddEmployee&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:input&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;srvc:AddEmployeeSoapIn&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:output&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;message&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;srvc:AddEmployeeSoapOut&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:operation&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:portType&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:binding&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;"&lt;SPAN style="COLOR: blue"&gt;YouGetTheIdea&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;?xml namespace="" ns="urn:schemas-microsoft-com:office:office"
                                                    prefix="o" ?&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;The highlighted areas are the parts I added/changed from the first snippet. It’s after midnight now. I’ve learned the beta of Windows Live Writer I &lt;I style="mso-bidi-font-style: normal"&gt;was&lt;/I&gt; using has a length limitation and doesn’t color XML snippets (yes, I did this manually for your reading pleasure). So rather than continue to wow you with my use of compelling prose, I’ll just bulletize (see?) the significant parts:&lt;?xml
                namespace="" ns="urn:schemas-microsoft-com:office:office" prefix="o" ?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;What’s up with the nillable=”true” on the data types?&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt; That actually turns out to be pretty critical. I haven’t really thought to much about why yet, but without this construct, it complicates the OM bigtime.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;What about that new schema … doesn’t that complicate the OM?&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt; Surprisingly not! It won’t even show up in the generated code. Notice how it imports the existing schema to reference the existing types, which do show up in the code. If you don’t explicitly create this wrapper, it will think the first element it finds (Employee otherwise) is the wrapper … yuck. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Can the wrapper elements (AddEmployee &amp;amp; AddEmployeeResponse) be in the same namespace as the data type (Employee)?&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt; Well, that depends. They can if that namespace just happens to be the same as the service. In other words, the wrapper schema has to share the same namespace as the service. It doesn’t matter if the data types are in the same namespace or not.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Don, is the fact you named the wrapper elements “AddEmployee” and “AddEmployeeResponse” important?&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt; Yes. If you don’t follow this convention, you’ll see these as types in the code … yuck!&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Let me guess, it’s also important that I name the data:Employee elements “request” and “AddEmployeeResult” respectively?&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt; Well, not really so much. If you name them something else, like “RequestMessage” and “ResponseMessage,” the System.ServiceModel.MessageParameterAttribute will step in to make sure the response message is correct on the wire, but it won’t affect the OM so much. It will look like this:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;[System.CodeDom.Compiler.GeneratedCodeAttribute(&lt;SPAN style="COLOR: maroon"&gt;"System.ServiceModel"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: maroon"&gt;"3.0.0.0"&lt;/SPAN&gt;)]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;[ServiceContract(Namespace=&lt;SPAN style="COLOR: maroon"&gt;"http://MyOrg.HrSrvc.SrvcContracts/2006/10"&lt;/SPAN&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;public&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;interface&lt;/SPAN&gt; IEmployeeManager&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; 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 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;[OperationContract(Action=&lt;SPAN style="COLOR: maroon"&gt;"..."&lt;/SPAN&gt;, ReplyAction=&lt;SPAN style="COLOR: maroon"&gt;"*"&lt;/SPAN&gt;)]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;[return: MessageParameter(Name="ResponseMessage")]&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; 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 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;Employee AddEmployee(Employee &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: #ffff99; COLOR: blue; FONT-FAMILY: Consolas; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial"&gt;RequestMessage&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; 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 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Consolas; mso-bidi-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;}&lt;BR&gt;&lt;BR&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;EM&gt;Alright, what’s up with the “parameter” message part names?&lt;/EM&gt; Yeah, that’s important too. That basically says this contract is wrapped and not bare.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;I think that’s about it. I’ll update this entry if I think (or learn) of anything else, but I’m going home now. Hope you find this helpful. BTW, I was listening to the &lt;A href="http://www.emusic.com/artist/10556/10556388.html"&gt;Lemonheads&lt;/A&gt; the entire time I was putting this together … pretty cool.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=795666" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Web+Services/default.aspx">Web Services</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/XML/default.aspx">XML</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>Written Guidance. Necessary?</title><link>http://blogs.msdn.com/donsmith/archive/2006/09/03/737644.aspx</link><pubDate>Sun, 03 Sep 2006 10:40:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:737644</guid><dc:creator>donsmith</dc:creator><slash:comments>26</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/737644.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=737644</wfw:commentRss><description>&lt;p&gt;&lt;/p&gt; &lt;p&gt;In my last post I mentioned that we are having a lot of hallway discussions lately. Another topic that is getting a lot of airtime lately is written guidance. As you know, the patterns &amp;amp; practices team has been producing written guidance since the team was created. Over the years we've evolved the the code-based guidance considerably - from reference implementations and application blocks to software factories that contain guidance package (code generation), the written guidance has pretty much stayed the same. This may or may not be a problem, but there inlies the problem - we don't know. We actually get VERY LITTLE feedback on written guidance. That could mean one of a few things: it is perfect and can't be improved, no one is reading it, or no one cares. If it has no need for improvement, great, but I find that hard to believe. If no one is reading it or doesn't care, THAT is a problem. We invest a lot resources into the parts of the deliverables you can read and print. If those resources can be repurposed - that would be a good thing to know. I would love for you all to educate me with some comments. Feel free to use the questions as examples of the things we're interested in. Thanks! &lt;ul&gt; &lt;li&gt;If you've downloaded any of the &lt;a href="http://msdn.microsoft.com/practices/guidetype/SoftwareFactories/default.aspx"&gt;factories&lt;/a&gt;, did you read any of the written guidance?&lt;/li&gt; &lt;li&gt;If so, when did you read it? before doing anything else? only when you ran into a problem? when you were interested in the rationale behind the guidance?&lt;/li&gt; &lt;li&gt;Did you find what you were looking for? What is your impression of the overall quality?&lt;/li&gt; &lt;li&gt;What are the most important sections (how-tos, patterns, explained, etc)?&lt;/li&gt; &lt;li&gt;Should we continue to make investments in written guidance? should we increase or cut back?&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=737644" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>It's all about community!</title><link>http://blogs.msdn.com/donsmith/archive/2006/09/02/736299.aspx</link><pubDate>Sat, 02 Sep 2006 13:26:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:736299</guid><dc:creator>donsmith</dc:creator><slash:comments>12</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/736299.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=736299</wfw:commentRss><description>&lt;p&gt;There have been a lot of hallway conversations on the p&amp;amp;p team lately and the state of our community infrastructure is one of the popular subjects. Customer feedback influences our guidance more than anything else ... &lt;strong&gt;period&lt;/strong&gt; ... and since our communities are one of the primary ways we interact with customers, you can imagine how important it is to us that they be happy with the experience. &lt;/p&gt; &lt;p&gt;GotDotNet, as it exists today, is not a long-term solution. By the end of the fiscal year,&amp;nbsp;I&amp;nbsp;will have a plan in place to transition off of it and on to ... well, that still remains to be decided. These hallway conversations have been about how we can improve the community experience. Unfortunately, we don't have a very good understanding of how our customers WANT to interact with us - seems strange to hear that, huh? So right now I'm drafting a document that lists all of the capabilities (stacked and ranked) we feel are necessary for our community infrastructure to have - independent of anything that may already exists.&amp;nbsp;&lt;/p&gt; &lt;p&gt;I fully intend on making this document publically available, but first,&amp;nbsp;we would really like to know how YOU would like to interact with it. First, think about the communities you've seen and use today: &lt;a href="http://gotdotnet.com"&gt;gotdotnet.com&lt;/a&gt;, &lt;a href="http://channel9.msdn.com"&gt;channel9.msdn.com&lt;/a&gt;, &lt;a href="http://codeplex.com"&gt;codeplex.com&lt;/a&gt;, &lt;a href="http://forums.microsoft.com/"&gt;forums.microsoft.com&lt;/a&gt;, &lt;a href="http://sourceforge.net"&gt;sourceforge.net&lt;/a&gt;, &lt;a href="http://netfx3.com"&gt;netfx3.com&lt;/a&gt;, blogs, etc. Think about the things you like, and don't like. Think about the things you use and don't use. Feel free to&amp;nbsp;read the following questions to stimulate some brainstorming even though it is&amp;nbsp;a far-from-comprehensive list.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;Membership&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;What are your thoughts about "joining" a site?  &lt;li&gt;What do you prefer for member credentials (username/password, hotmail/passport account, other)?  &lt;li&gt;What is needed as far as roles go (owner, contributor, member, anonymous)?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Release Management&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;How do you want to get new drops (zip, exe, msi)?  &lt;li&gt;Do you want a source code tree to sync with?  &lt;li&gt;What is the right frequency for releases (weekly, forthnightly, monthly)?  &lt;li&gt;What is the right quality bar for releases (just builds, no exceptions, very stable)?  &lt;li&gt;How far back do you want to be able to go? Realistically?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Issue Tracking&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Do you want to be able to submit bugs? And track them (priority, status, etc.)? How?  &lt;li&gt;What kind of queries do you want to run against the bug database?  &lt;li&gt;What would you use the issue tracking feature for?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Two-way Communication&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Is a forum (message board)&amp;nbsp;the most appropriate mechanism? If not, what is?  &lt;li&gt;What features are needed (sticky posts, creator control, post popping, quoting, etc.)?  &lt;li&gt;What metrics are you most interested in (e.g. number of [unread/answered] posts)?  &lt;li&gt;How do you want to provide feedback to the team?&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;One-way Communication&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Is wiki the most appropriate mechanism? If not, what is?  &lt;li&gt;Will you edit pages (like written guidance) if given the choice?  &lt;li&gt;Would you contribute new topics if given the opportunity?  &lt;li&gt;How can the team communicate to you more effectively?&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt; &lt;p&gt;Like I said, this is FAR from comprehensive, but hopefully it generated some sparks.&amp;nbsp;I can tell you that any direction you can give us will influence our decisions in a big way. Think of what the perfect community site would let you do - and let us know. Thanks!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=736299" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item><item><title>WCF Guidance Packages now available for consumption</title><link>http://blogs.msdn.com/donsmith/archive/2006/08/31/733680.aspx</link><pubDate>Thu, 31 Aug 2006 19:21:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:733680</guid><dc:creator>donsmith</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/donsmith/comments/733680.aspx</comments><wfw:commentRss>http://blogs.msdn.com/donsmith/commentrss.aspx?PostID=733680</wfw:commentRss><description>&lt;p&gt;If you've been &lt;a href="http://practices.gotdotnet.com/svcfactory"&gt;following the Service Factory project&lt;/a&gt;, you'll know that we had to put the WCF guidance on hold for a little while as we were getting the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=67205&amp;amp;clcid=0x409"&gt;ASMX Service Factory released&lt;/a&gt;. Well ever since it was released, we've been working on getting caught up on the WCF guidance. This actually took longer than expected because in addition to making the WCF Feb CTP -&amp;gt; July CTP changes we felt the need to fix a bunch of the bugs we identified in the similar ASMX GPs so now there is some fidelity between the two.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Is this release of the Service Factory going to go down like the last one?&lt;/strong&gt; You know, that is a great question. If you mean, "&lt;em&gt;Are you going to release regularly to the community?&lt;/em&gt;" and "&lt;em&gt;Are you going to solicit as much feedback from us as possible?&lt;/em&gt;" the answer is absolutely &lt;strong&gt;yes&lt;/strong&gt;! As a matter of fact, we're even trying to improve.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Drops will be more regular and predictable - monthly to be exact and at the end of the month to be specific&lt;/li&gt; &lt;li&gt;We're separating the documentation drops from the code drops. They will also be released monthly [in CHM format]&amp;nbsp;... they will just be 2 weeks after the code drops&lt;/li&gt; &lt;li&gt;I've changed the way we're making the known issues available. Rather than putting some of them in the readme file, now you can find &lt;em&gt;all &lt;/em&gt;of them in an Excel spreadsheet. Just Ctrl-F the issue you're looking for.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;As always, I'm interested to know what you think about these changes. What would make is easier to follow this project?&lt;/p&gt; &lt;p&gt;&lt;em&gt;Side note: I think it's still a little strange for some people to realize the impact they can have on a team, like patterns&amp;nbsp;&amp;amp; practices, where "customer connected engineering" is the basis for everything they do, how they do it, and what they deliver. There aren't too many teams [even in Microsoft] that are applying this amount of feedback from their customers.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Anyway, &lt;a href="http://practices.gotdotnet.com/svcfactory"&gt;check it out&lt;/a&gt; and let us know what you think. We're listening.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=733680" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/donsmith/archive/tags/Service+Factory/default.aspx">Service Factory</category><category domain="http://blogs.msdn.com/donsmith/archive/tags/Work+Related/default.aspx">Work Related</category></item></channel></rss>