<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.pluralsight.com/community/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>Kirill's notes</title><link>http://www.pluralsight.com/community/blogs/kirillg/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2008 SP1 (Build: 30619.63)</generator><item><title>Control generated WSDL in WCF - Part 1. Namespaces.</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/18/28380.aspx</link><pubDate>Sun, 18 Jun 2006 17:08:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:28380</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>10</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=28380</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/18/28380.aspx#comments</comments><description>&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;How to control WSDL namespaces&amp;nbsp;in WCF is a common question, so I will tackle this first. I will assume WSDL basics to be known.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;WSDLs exported by WCF&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;WCF services by default export a tree of WSDLs, i.e. several WSDLs, imported one from another using wsdl:import construct. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;This is because different WSDL elements exported by WCF service have different lifecycles: wsdl:service, wsdl:binding, wsdl:portType and schemas. &amp;nbsp;For example schemas are prescribed by vertical industry standard; contract is written once for all providers; binding is prescribed by a vertical industry standard; service is implemented by individual provider. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Each of these WSDL elements has a namespace uri associated with it. In WSDL such namespace uri is assigned by the @targetNamespace attribute on &amp;lt;wsdl:definitions&amp;gt; root that contains one of these elements. Hence there are four types of namespaces in WSDLs generated by WCF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;There is always one WSDL generated for one target namespace URI. I.e. if the namespaces uris match for wsdl:portType and wsdl:binding , these elements are bundled into the same WSDL. XML Schemas are always exported as separate documents. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Compatibility note&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;wsdl:import &amp;#8211; the construct that allows to build the WSDL tree and put wsdl:service, wsdl:binding and wsdl:portType into different namespaces - was not very well supported by early toolkits. For example if your service is required to be consumed by early versions of InfoPath or Visual Studio ATL &amp;nbsp;sproxy.exe tool, you will need to set the target namespaces for wsdl:service, wsdl:binding and wsdl:portType to the same URI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Control WSDL Namespaces&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Here is how you control target namespaces for wsdl:service, wsdl:binding , wsdl:portType and schemas. WSDL has also wsdl:message &amp;#8211; those are bundled together with the wsdl:portType&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Service namespace &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;This is the target namespace of the root WSDL where &amp;lt;wsdl:service&amp;#8230;/&amp;gt; element resides containing endpoints (&amp;lt;wsdl:port&amp;gt;) &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Code &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Set via ServiceBehavior attribute on the service class (not the contract!)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;[&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;ServiceBehavior&lt;/SPAN&gt;&lt;/FONT&gt;(Name=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"MyService"&lt;/SPAN&gt;&lt;/FONT&gt;, Namespace=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://myservice.com/"&lt;/SPAN&gt;&lt;/FONT&gt;, &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&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; ConfigurationName=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"MyServiceConfiguration"&lt;/SPAN&gt;&lt;/FONT&gt;)]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;MyService&lt;/SPAN&gt;&lt;/FONT&gt; : &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;IMyServiceContract&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;default for ConfigurationName (used in config) and Name (exported name into WSDL) is the name of the class. Default for the namespace is the &amp;#8220;http://tempuri.org&amp;#8221; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;WSDL&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyService&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com/&lt;/SPAN&gt;&lt;/FONT&gt;" &amp;#8230;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:service&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyService&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Note, we had an unfortunate bug in RC0 that caused stack overflow when you used this setting. This is fixed in later bits.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Binding namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;This is the target namespace for the WSDL that contains wsdl:binding elements. wsdl:binding is where WCF exports bindings together with certain serialization aspects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Config&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;services&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;service&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;MyServiceConfiguration&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;...&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;endpoint&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"MyServiceEndpoint"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;bindingNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com/binding&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;contract&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"Namespaces.MyServiceContract" ...&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Code &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=teal size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Courier New'"&gt;Binding&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; b = &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;CustomBinding&lt;/SPAN&gt;&lt;/FONT&gt;();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;b.Namespace = &lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://myservice.com/binding"&lt;/SPAN&gt;&lt;/FONT&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;se = sh.AddServiceEndpoint(&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;&lt;/FONT&gt;(MyServiceContract), b, &lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://myservice.com:8080"&lt;/SPAN&gt;&lt;/FONT&gt;);&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;WSDL&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com/binding&lt;/SPAN&gt;&lt;/FONT&gt;" &amp;#8230;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:binding&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyServiceEndpoint&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Contract namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;This is the target namespace for the WSDL that contains wsdl:portType . ServiceContract is exported there. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;[&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;ServiceContract&lt;/SPAN&gt;&lt;/FONT&gt;(Name = &lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"MyServiceContract"&lt;/SPAN&gt;&lt;/FONT&gt;, Namespace = &lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://gadgets.org/contract"&lt;/SPAN&gt;&lt;/FONT&gt;)]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;interface&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;MyServiceContract&lt;/SPAN&gt;&lt;/FONT&gt; {}&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;WSDL&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/contract&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:portType&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyServiceContract&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Schema namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;DataContract types , XmlSeriazer types and wrapper elements defined by MessageContract are being exported into schemas. &amp;nbsp;Schemas namespace are set on individual DataContract , XmlSerializer or MessageContract attributes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;[&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;DataContract&lt;/SPAN&gt;&lt;/FONT&gt;(Name=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"Order"&lt;/SPAN&gt;&lt;/FONT&gt;, Namespace=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://gadgets.org/types"&lt;/SPAN&gt;&lt;/FONT&gt;)]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;Order&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;DataMember&lt;/SPAN&gt;&lt;/FONT&gt;]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;&lt;/FONT&gt; Id;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;[&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;MessageContract&lt;/SPAN&gt;&lt;/FONT&gt;(IsWrapped = &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;/FONT&gt;, WrapperNamespace=&lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://gadgets.org/messages"&lt;/SPAN&gt;&lt;/FONT&gt;)]&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;MyServiceUpdateRequest&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;MessageBodyMember&lt;/SPAN&gt;&lt;/FONT&gt;(Namespace = &lt;FONT color=maroon&gt;&lt;SPAN style="COLOR: maroon"&gt;"http://startrek.net/messages"&lt;/SPAN&gt;&lt;/FONT&gt;)]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=teal&gt;&lt;SPAN style="COLOR: teal"&gt;Order&lt;/SPAN&gt;&lt;/FONT&gt; Order;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;}&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;WSDL&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;wsdl:types is always put into the same WSDL as wsdl:portType. It always contains a single xsd:schema referencing all the schemas used by that portType.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:definitions&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/contract&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:types&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xsd:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/contract/Imports&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xsd:import&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;schemaLocation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com:8080/?xsd=xsd0&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;namespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/messages&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xsd:import&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;schemaLocation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com:8080/?xsd=xsd1&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&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; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;namespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://schemas.microsoft.com/2003/10/Serialization/&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xsd:import&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;schemaLocation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://myservice.com:8080/?xsd=xsd2&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;namespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/types&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xsd:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:types&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:message&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyServiceUpdateRequest&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:part&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;parameters&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;element&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;q1:MyServiceUpdateRequest&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:q1&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/messages&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;wsdl:message&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;I&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: navy; FONT-STYLE: italic; FONT-FAMILY: Arial"&gt;XSD&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;xs:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;elementFormDefault&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;qualified&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT color=red&gt;&lt;SPAN style="FONT-WEIGHT: bold; COLOR: red"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/messages&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/B&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:xs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://www.w3.org/2001/XMLSchema&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:tns&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/messages&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:import&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;schemaLocation&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://localhost:8080/?xsd=xsd2&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;namespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/types&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:element&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;MyServiceUpdateRequest&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:complexType&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:sequence&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:element&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;minOccurs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;Order&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;nillable&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;q1:Order&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:q1&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/types&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:sequence&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:complexType&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:element&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;elementFormDefault&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;qualified&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;targetNamespace&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/types&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:xs&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://www.w3.org/2001/XMLSchema&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;xmlns:tns&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;http://gadgets.org/types&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN lang=DE style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:complexType&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;Order&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:sequence&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:complexType&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:element&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=red size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;Order&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;nillable&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=red&gt;&lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;tns:Order&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=blue&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=maroon size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;xs:schema&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color=blue size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial color=navy size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;Note there is the third schema whenever you use DataContract / XmlFormatter as a formatter for your service contract. This defines several helper elements and types for certain CLR types schema representation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=28380" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>Control generated WSDL WCF</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/18/28379.aspx</link><pubDate>Sun, 18 Jun 2006 17:04:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:28379</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=28379</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/18/28379.aspx#comments</comments><description>&lt;P&gt;There were many questions recently on how to control various aspects of WSDL (metadata) generated by WCF services.&lt;/P&gt;
&lt;P&gt;There are three phases one can use: &lt;/P&gt;
&lt;P&gt;1) Design time: settings on data contract, message contract, service contract, service behavior, binding,&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2) Runtime: implement IWsdlImportExtension and work with ServiceDescriptionCollection inside BeforeImport call.&lt;/P&gt;
&lt;P&gt;3) Runtime: substitute&amp;nbsp; your own MetadataImporter&amp;nbsp;and&amp;nbsp;party on.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The following two posts&amp;nbsp;I will dedicate to #1. &lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=28379" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>TechEd 2006: WCF Interop sessions with Oracle and Sun</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/12/27343.aspx</link><pubDate>Tue, 13 Jun 2006 05:29:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:27343</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=27343</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/06/12/27343.aspx#comments</comments><description>&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Wednesday June 14th 8:30 / 9:30 myself and Nilesh Junnarkar from Oracle will show Interoperability between WCF and Oracle Fusion MiddleWare on Secure Reliable and Binary web services. &lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 9pt; MARGIN: 0in; FONT-FAMILY: verdana; mso-outline-level: 1"&gt;&lt;SPAN style="FONT-WEIGHT: bold"&gt;CON319&amp;nbsp;-&amp;nbsp;(WinFX) Windows Communication Foundation: Building Interoperable Services&lt;/SPAN&gt; &lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Room 153ABC. Wed June 14th, 8:30am - 9:45am.&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;We show interop between Java and .Net quite often, but usually use pure .Net "hello world" app talking to Java "hello world" service. In reality folks want to see Office talking to SAP/Oracle/DB2/SQL backends.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;This year we're up to the challenge and will include Excel app invoking Java web services hosted on Oracle Fusion app server securely and reliably via WCF Service Moniker.&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Scenario will include Infocard authentication&amp;nbsp;and basic WS-Federation exchange. &lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Right next to it, at chalk talk:&lt;/P&gt;
&lt;P style="FONT-SIZE: 9pt; MARGIN: 0in; FONT-FAMILY: verdana; mso-outline-level: 1"&gt;&lt;SPAN style="FONT-WEIGHT: bold"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 9pt; MARGIN: 0in; FONT-FAMILY: verdana; mso-outline-level: 1"&gt;&lt;SPAN style="FONT-WEIGHT: bold"&gt;CONTLC37&amp;nbsp;-&amp;nbsp;Enterprise Web Services Interoperability between .NET and Java Using WCF and Sun's GlassFish&lt;/SPAN&gt; &lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Connected Systems Theater, Blue Arena in TLC, Wed June 14th, 14:00 - 15:15&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;myself and &lt;A href="http://blog.beuchelt.com/"&gt;Gerald Beuchelt&lt;/A&gt; will show set of demos with Sun GlassFish/WSIT code - repeat from JavaOne 2006, but not only. The jewel in certain sense will be Gerald's FIFI - Fast Infoset channel for WCF. If you're into how to make webservices fast yet interoperable, should be interesting discussion.&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;A href="http://blogs.msdn.com/kavitak/default.aspx"&gt;Kavita &lt;/A&gt;has full&amp;nbsp;list of&amp;nbsp;chalk talk sessions &lt;A href="http://blogs.msdn.com/kavitak/attachment/615621.ashx"&gt;here&lt;/A&gt;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=27343" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>WCF and InfoCards at JavaOne 2006</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/05/15/23717.aspx</link><pubDate>Tue, 16 May 2006 06:05:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:23717</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=23717</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/05/15/23717.aspx#comments</comments><description>&lt;P&gt;This is the second year Microsoft actively participates at JavaOne. Monday was a long day of endless installation&amp;nbsp;hassle and frustration:), but tomorrow&amp;nbsp;will be fun. Expect significant progress on interoperability in core&amp;nbsp;WS-* protocols and identity space between WCF and Java to&amp;nbsp;be demostrated.&lt;/P&gt;
&lt;P&gt;1)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the Jonathan Schwartz / Jeff Jackson&amp;#8217;s keynote 9:20-10:10am myself and Sun &lt;A href="http://weblogs.java.net/blog/haroldcarr/archive/2006/02/an_overview_of_1.html"&gt;Tango&lt;/A&gt; team will demo &lt;A href="http://msdn.microsoft.com/webservices/infocard/default.aspx"&gt;InfoCard &lt;/A&gt;&amp;amp; &lt;A href="http://msdn.microsoft.com/webservices/indigo/default.aspx"&gt;WCF &lt;/A&gt;interoperating with Sun Java Web Services and&amp;nbsp; Security Token Service (Identity provider) built using Tango project; as well as&amp;nbsp;Java and WCF services and Identity Providers interoperating on Secure RM exchange with Federated Trust.&amp;nbsp; Single Sign-On and Federated Trust interop between MS and Sun at JavaOne is another encouraging&amp;nbsp;sign of convergence in the area of Identity.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;2)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the following session TS-5540, 11am, Esplanade,307-310&amp;nbsp; we will drill into the keynote demo and cover interoperability between&amp;nbsp;WCF / InfoCard and Sun GlassFish stack on a fairly involved business integration scenario featuring: MTOM, WS-Security 1.1/SecureConversation/WS-Trust, Secure RM, Secure MTOM.&lt;BR&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;3)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the evening, BOF-2477, 9:30-10:20pm, Hall E-135, &amp;nbsp;Mike Jones and I will participate together with Sun folks in the BOF dedicated to Web Services Security and Identity.&lt;/P&gt;
&lt;P&gt;more - later&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=23717" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>Looking for Interop PM</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/01/06/17864.aspx</link><pubDate>Fri, 06 Jan 2006 18:46:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:17864</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=17864</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2006/01/06/17864.aspx#comments</comments><description>&lt;P&gt;In WCF (Indigo) we are taking interop seriously. Given the scale of Indigo, the WS-* architecture&amp;nbsp;and future plans, there is&amp;nbsp;work&amp;nbsp;to do.&amp;nbsp;I am looking for an energetic strong technical program manager passionated about distributed systems, web services and interoperability to help me on this endeavour.&amp;nbsp;If you are it, you're welcome to drop me a note&amp;nbsp;at &lt;A href="mailto:kirillg_public@hotmail.com"&gt;kirillg_public@hotmail.com&lt;/A&gt;&amp;nbsp;(or my ms alias),&amp;nbsp;while we're waiting for&amp;nbsp;the&amp;nbsp;job description&amp;nbsp;to propagate to members.microsoft.com/careers .&lt;/P&gt;
&lt;P&gt;Job&amp;nbsp;ad is pasted here:&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Arial color=black size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;The Windows Communication Foundation (WCF, aka &amp;#8220;Indigo&amp;#8221;) is Microsoft&amp;#8217;s next generation distributed application platform.&amp;nbsp; Join the Indigo team and make cross platform interoperability a reality for WCF.&amp;nbsp;&lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;&lt;st1:City w:st="on"&gt;Enterprise&lt;/st1:City&gt;&lt;/st1:place&gt; solutions are never based&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; on one platform. &lt;FONT color=black&gt;&lt;SPAN style="COLOR: black"&gt;As illustrated by &lt;/SPAN&gt;&lt;/FONT&gt;the "&lt;FONT color=navy&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;A title=http://www.microsoft.com/mscorp/execmail/2005/02-03interoperability.asp href="http://www.microsoft.com/mscorp/execmail/2005/02-03interoperability.asp"&gt;Building Software That Is Interoperable By Design&lt;/A&gt;&lt;/SPAN&gt;&lt;/FONT&gt;" mail &lt;FONT color=black&gt;&lt;SPAN style="COLOR: black"&gt;from&lt;/SPAN&gt;&lt;/FONT&gt; Bill Gates and with almost every distributed platform feature decision we are betting success of our enterprise business on interoperability. &lt;FONT color=black&gt;&lt;SPAN style="COLOR: black"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=black size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Arial color=black size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;You will engage with product teams from&amp;nbsp;our industry partners driving interoperability between our respective platforms. You will be involved in analyzing and addressing customer requirements in the product, working on tools that help diagnose interoperability issues as well as improve interoperability experience for enterprise developers. This effort will affect the WCF programming model, and will focus on ensuring that developers are productive building interoperable Enterprise-grade distributed applications.&amp;nbsp; This is a highly challenging technical position with a great deal of interaction with architecture, development, and test teams as well as a significant percentage of coding required implementing the tools.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Verdana color=black size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Arial color=black size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;This position requires strong design skills, excellent communication skills (you will interact frequently with internal/external customers) and the ability to make the right feature tradeoffs.&amp;nbsp; A passion for SOAP interoperability across vendor stacks and a solid software development or/and computer science background are required.&amp;nbsp;Familiarity with Microsoft &lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt; technologies (such as C#, &lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt; Framework and the CLR) and/or competitive offerings (Java, &lt;st1:mswterms w:st="on"&gt;J2EE&lt;/st1:mswterms&gt;, WebLogic or &lt;st1:mswterms w:st="on"&gt;WebSphere&lt;/st1:mswterms&gt;) is a strong plus.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=17864" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>PDC 2005 reflections</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/10/05/15343.aspx</link><pubDate>Thu, 06 Oct 2005 04:40:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:15343</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=15343</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/10/05/15343.aspx#comments</comments><description>&lt;P&gt;While preparing for PDC then decompressing after it, I completely forgot about blogging. It was a&amp;nbsp;great event. A number&amp;nbsp;of intriguing conversations about Web Services, Security, interop. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;We did a talk with Simon where I played Dr. WCF and he was the patient. Interesting demos involving interop on Security, Secure MTOM, Secure RM with WebLogic and Apache Axis:&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;In the first demo we were showing off new HL7 wizard (software factory) in Whidbey that allows you to pick exact use-case and generate HL7 WSDLs for it. Really cool stuff, especially if you know the complexity of HL7 WSDLs and schemas - don't try to put them together by hand..&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;The second demo we accessed a service running on WebLogic for patient's record locator info (EMR pointer).The EMR was pointing to a service running Apache Axis 2.0 + WSS4J that we queried for an XRay using Secure MTOM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;The third demo was&amp;nbsp;taking Simon's heartbeat measurements using real Nellcor device and sending them using Indigo over Secure RM to a service running Apache Axis 1.3, Sandesha and WSS4J.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.cocoondev.org/dims/"&gt;Dims &lt;/A&gt;has the Apache Axis part of&amp;nbsp;2nd and 3rd demos &lt;A href="http://ws.zones.apache.org/~dims/pdc2005/"&gt;here&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;We will post the WCF (Indigo) part closer to B2 release. The most fun of course was preparation of those demos...:) Dims is just plain awesome to work with. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Our slides are available &lt;A href="http://216.55.183.63/pdc2005/slides/COM423_Gavrylyuk.ppt"&gt;here&lt;/A&gt;, including the infamous BIG WS-* TENT. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=15343" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/General/default.aspx">General</category></item><item><title>Indigo / Windows Communication Foundation (WCF) Interop Plug-fest - 7-10 Nov 2005</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/10/05/15339.aspx</link><pubDate>Thu, 06 Oct 2005 00:01:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:15339</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=15339</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/10/05/15339.aspx#comments</comments><description>&lt;P class=MsoNormal&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;We are planning a 4-day Windows Communications Foundation (WCF, a.k.a Indigo) Interop Plug-fest on Monday November 7, 2005 to Thursday November 10, 2005 at Microsoft Redmond campus.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;The WCF (Indigo) Interop Plug-fest is an ad-hoc, open forum for implementers of various Web Services protocols to meet with engineers from the WCF(Indigo) team and test interoperability with the upcoming release.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;Please&amp;nbsp;send mail&amp;nbsp;to &lt;A title=mailto:kirillg@microsoft.com href="mailto:kirillg@microsoft.com"&gt;kirillg@microsoft.com&lt;/A&gt; and &lt;A title=mailto:jthelin@microsoft.com href="mailto:jthelin@microsoft.com"&gt;jthelin@microsoft.com&lt;/A&gt; introducing your implementation if you&amp;#8217;re interested in attending.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;Scenarios drafts as well as pointers to test endpoints are available online - &lt;A title=http://mssoapinterop.org/ilab/wcfinteroplab.htm href="http://mssoapinterop.org/ilab/wcfinteroplab.htm"&gt;http://mssoapinterop.org/ilab/wcfinteroplab.htm&lt;/A&gt; . We recommend you to join the &lt;FONT color=#333333&gt;&lt;SPAN style="COLOR: #333333"&gt;&lt;A title=mailto:WS-Builders@yahoogroups.com href="mailto:WS-Builders@yahoogroups.com"&gt;WS-Builders@yahoogroups.com&lt;/A&gt; discussion group &lt;/SPAN&gt;&lt;/FONT&gt;and use it for questions around scenarios documents and WCF(Indigo) interoperability.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;Here is an invite with further logistics info: &lt;A title=http://mssoapinterop.org/ilab/WCFInteropPlugFest_invite.doc href="http://mssoapinterop.org/ilab/WCFInteropPlugFest_invite.doc"&gt;http://mssoapinterop.org/ilab/WCFInteropPlugFest_invite.doc&lt;/A&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=15339" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>Attending ExpoLinux 2005</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/08/09/13946.aspx</link><pubDate>Wed, 10 Aug 2005 01:26:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:13946</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=13946</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/08/09/13946.aspx#comments</comments><description>&lt;P&gt;I decided to attend ExpoLinux 2005 (&amp;nbsp;&lt;A href="http://www.expolinux.org/"&gt;http://www.expolinux.org/&lt;/A&gt; ) to show some examples of&amp;nbsp;leveraging web services interop&amp;nbsp;using .Net and Java . Naturally all the demos will be Indigo-based on .Net side. Never been on Linux-focused conference before. I'm excited.&lt;/P&gt;
&lt;P&gt;I hear frequent questions&amp;nbsp;nowdays on what does MS do on Linux conferences? I think the answer is simple - customers need practical solutions to integrate apps&amp;nbsp;running the&amp;nbsp;two platforms. It does not do any good to ignore the problem and force customers to make a binary choice. So we're there to help.&amp;nbsp;No difference then interoperability work with WebSphere or Apache Axis.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=13946" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/General/default.aspx">General</category></item><item><title>Lax vs Strict on read</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/20/8491.aspx</link><pubDate>Sat, 21 May 2005 03:27:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:8491</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=8491</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/20/8491.aspx#comments</comments><description>&lt;P&gt;Your interop experience with Indigo (especially the upcoming drop or if you have been on one of the interop workshops) may lead you to&amp;nbsp;say &amp;#8220;man this thing is strict:&amp;#8221;. Indigo rejects many invalid messages that other toolkits would accept.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The key reason for being strict on read is to keep the protocols architecture simple and viable long term. Look at the browsers world - so much invalid html can be happily accepted, that it is simply impossible to describe the established profile. And therefore it is very hard to build a new implementation/fix existing implementations that would not break someone's page. We&amp;nbsp;should make&amp;nbsp;web services future&amp;nbsp;cleaner.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you really need Indigo to consume some invalid message, &lt;A href="http://blogs.msdn.com/vipulmodi/default.aspx"&gt;Vipul &lt;/A&gt;shared a great post &lt;A href=" http://blogs.msdn.com/vipulmodi/archive/2005/05/20/420475.aspx"&gt;here&lt;/A&gt;&amp;nbsp;that will help.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=8491" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>WS-Management interop workshop May 16th - 20th</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/20/8490.aspx</link><pubDate>Sat, 21 May 2005 03:13:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:8490</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=8490</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/20/8490.aspx#comments</comments><description>&lt;P&gt;This week (May 16th -&amp;nbsp;20th) we held WS-Management interop workshop&amp;nbsp;in Redmond. Indigo participated among others.&amp;nbsp;Three things I liked about this workshop:&lt;/P&gt;
&lt;P&gt;1) Atmosphere - it's all about getting things to work, very much&amp;nbsp;like in old soapbuilders days, pure interop fest. Sure there are some agreements to sign to ensure that feedback provided does not limit broad availability (as one of my favorite folks at MS put &amp;#8220;welcome to 21st century&amp;#8221;), but everything else is very informal.&lt;/P&gt;
&lt;P&gt;2) Presence of both software and hardware&amp;nbsp;among the 13 participating implementations.&amp;nbsp;This trully shows the spec is mature and is set to succeed.Interoperability rate accomplished was&amp;nbsp;impressive.&lt;/P&gt;
&lt;P&gt;3) Imagine being able to discover everything about management interfaces without having to search the web about what particular methods this resource exposes and what types it works with. Indigo will provide great development framework for the WS-Management interfaces. Add Web Reference experience, generated Indigo&amp;nbsp;proxy&amp;nbsp;and VS intellisense - everything you need to explore management interfaces.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=8490" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>Another comment about WS-I BP and WS-*</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/11/8216.aspx</link><pubDate>Thu, 12 May 2005 05:08:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:8216</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=8216</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/11/8216.aspx#comments</comments><description>&lt;P&gt;&lt;A href="http://pluralsight.com/blogs/tewald/default.aspx"&gt;Tim &lt;/A&gt;poses a great &lt;A href="http://pluralsight.com/blogs/tewald/archive/2005/05/05/8062.aspx"&gt;question &lt;/A&gt;about Basic Profile, SOAP1.2/WS-* protocols and Indigo. Tim mentions SOAP 1.2 as the main differentiator between BP1.1 and Indigo WsProfileBinding.&amp;nbsp;SOAP1.2&amp;nbsp;is a good choice for WS-* simply because it's a cleaner spec. Take for example the SOAP Header fault singularity in SOAP1.1&amp;nbsp;and what a nightmare it brings into WS-* world:) &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Another issue&amp;nbsp;with using BP for WS-* and&amp;nbsp;app&amp;nbsp;protocols going forward is BP1.1 R2710 and the definition of the &amp;#8220;wire signature&amp;#8220;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;R2710 The operations in a wsdl:binding in a DESCRIPTION MUST result in wire signatures that are different from one another. &lt;/EM&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;The Profile defines the "wire signature" of an operation in a wsdl:binding to be the fully qualified name of the child element of the soap:Body of the SOAP input message it describes. For the case of an empty soap:Body this name is an empty string. &lt;/EM&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;The goal I believe was to allow to differentiate incoming soap messages based on the message content itself. An unfortunate side effect is that Profile singles out Body, but does not treat headers targeted at the ultimate destination as part of the wire signature. While SOAP 1.1 spec explicitly states:&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;A body entry is semantically equivalent to a header entry intended for the default actor and with a SOAP mustUnderstand attribute with a value of "1".&lt;/EM&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;Same I believe can be said (while not explicitly stated) for SOAP1.2 processing of the Body. This BP1.1/1.0 inconsistency with the underlying SOAP spec&amp;nbsp;makes BP1.1 hardly useable for WS-* scenarios.&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;As Tim mentions in the comment to his blog, Indigo does provide BP1.1 compliant binding, called BasicProfileBinding.&lt;/SPAN&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=8216" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>Indigo March CTP interop troubleshooting notes</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/11/8215.aspx</link><pubDate>Thu, 12 May 2005 04:33:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:8215</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=8215</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/05/11/8215.aspx#comments</comments><description>&lt;P&gt;This is belated, but I felt was important to get out. &lt;A href="http://www.pocketsoap.com/weblog/2005/04/1525.html"&gt;Simon Fell&lt;/A&gt; made couple firm but fair comments on Indigo March CTP interop (thanks for feedback:) ).&lt;/P&gt;
&lt;P&gt;Here are some troubleshooting notes on the CTP interop&amp;nbsp;and update on what to expect in upcoming next Indigo public drop, mostly repeating my offline discussion with Simon.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;1) As noted by many, you need to always use &lt;BR&gt;svcutil.exe /uxs &amp;lt;url&amp;gt;&lt;BR&gt;switch when you import wsdl not generated by Indigo. When complex types are used, you need to use &lt;BR&gt;svcutil.exe /tm /uxs &amp;lt;url&amp;gt;&lt;BR&gt;to generate typed messages. This will be still true in next Indigo public drop.&lt;/P&gt;
&lt;P&gt;2)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Element order while serializing request.&lt;BR&gt;svcutil.exe has a bug where it will not preserve the order of the children of the direct child of the Body when /tm switch is used. Instead it will serialize fields alphabetically. For example, schema is:&lt;/P&gt;
&lt;P&gt;&amp;lt;complexType name="login"&amp;gt;&lt;BR&gt;&amp;lt;sequence&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;element name="user" type="xs:string"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;element name="password" type="xs:string"/&amp;gt;&lt;BR&gt;&amp;lt;/sequence&amp;gt;&lt;BR&gt;&amp;lt;/complexType&amp;gt;&lt;BR&gt;We generate &lt;BR&gt;[System.ServiceModel.MessageContractAttribute()]&lt;BR&gt;public class login_RequestMessage&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [System.ServiceModel.MessageBodyAttribute(Namespace = "...")]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string username;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [System.ServiceModel.MessageBodyAttribute(Namespace = "...")]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string password;&lt;BR&gt;}&lt;BR&gt;and serialize invalid instance:&lt;BR&gt;&amp;lt;foo&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;password&amp;gt;..&amp;lt;/password&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;user&amp;gt;...&amp;lt;/password&amp;gt;&lt;BR&gt;&amp;lt;/foo&amp;gt;&lt;/P&gt;
&lt;P&gt;The reason is: &lt;BR&gt;with /tm switch we map the direct child of the body to a class that supports MessageContract. MessageBody attribute for MessageContract class fields has additional parameter &amp;#8220;Position&amp;#8221; that svcutil.exe "forgets" to emit. &lt;/P&gt;
&lt;P&gt;Workaround: add inside the proxy Position parameter to MessageBody attribute: &lt;/P&gt;
&lt;P&gt;[System.ServiceModel.MessageContractAttribute()]&lt;BR&gt;public class login_RequestMessage&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [System.ServiceModel.MessageBodyAttribute(Namespace = "urn:enterprise.soap.sforce.com", Position = 0)]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string username;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [System.ServiceModel.MessageBodyAttribute(Namespace = "urn:enterprise.soap.sforce.com", Position = 1)]&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string password;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;The message would become correct.&amp;nbsp; Unfortunately this bug will be present in the next Indigo public drop as well.&lt;/P&gt;
&lt;P&gt;3)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; generated SOAPAction header does not match WSDL. &lt;BR&gt;This has been fixed in upcoming CTP.&lt;/P&gt;
&lt;P&gt;4)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exception during deserialization of the fault content.&lt;/P&gt;
&lt;P&gt;In March CTP bits we had problems with parsing &amp;lt;detail&amp;gt; element as well as handling whitespaces inside elements. This has been fixed in next Indigo public drop. We translate Fault into &amp;#8220;UnknownFault&amp;#8221; exception with access to fault info.&lt;/P&gt;
&lt;P&gt;5)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the generated proxy for operations that are maxOccurs="unbound" don't generate an array in the generated xxx_RequestMessage object&lt;BR&gt;Bug in March CTP bits, fixed in the next Indigo public drop&lt;/P&gt;
&lt;P&gt;6)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; endpoint URL is in WSDL but doesn't end up in the generated proxy anywhere&lt;BR&gt;this is by design &amp;#8211; we generate address into config. The idea is that everything from wsdl:binding and wsdl:port goes into config (except for settings that impact serialization and action URIs), since it can change from deployment to deployment.&lt;/P&gt;
&lt;P&gt;7)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; How do I change proxy to use https?&lt;/P&gt;
&lt;P&gt;In addition to changing the url, you need to use httpsTransport inside &amp;lt;customBinding&amp;gt; or use BasicSecurityProfileBinding (changed it in B1 to be just an attribute on the BasicProfileBinding). In&amp;nbsp;the next Indigo public drop svcutil.exe&amp;nbsp;correctly generates one or another in the config based on the url.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=8215" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>How do I change key wrap and encryption algorithms in WSE2.0?</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/14/7317.aspx</link><pubDate>Thu, 14 Apr 2005 08:02:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:7317</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=7317</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/14/7317.aspx#comments</comments><description>&lt;P&gt;Related to my previous blog on WS-Security interop with WebSphere.&lt;/P&gt;
&lt;P&gt;Recommended combination of the crypto algorithms is AES256 for symmetric encryption and RSA-OAEP for key-wrap. In Indigo for example, this is the default Algorithm suite used.&amp;nbsp; WSE2.0 used RSA1.5 + AES128 by default, which will most likely change in WSE3.0.&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;However, there isn't a great deal&amp;nbsp;of commonality yet&amp;nbsp;in what defaults different WS-Security toolkits use. Here is how to configure WSE to use other encryption and key-wrap algorithms.&lt;/P&gt;
&lt;P&gt;For example, to make WSE to use TripleDes for encryption and/or RSA-OAEP for key transfer, add the following in config:&lt;/P&gt;
&lt;P&gt;&amp;lt;microsoft.web.services2&amp;gt;&lt;BR&gt;...&lt;BR&gt;&amp;nbsp; &amp;lt;security&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; .... &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;binarySecurityTokenManager &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; valueType="&lt;A href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"&gt;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3&lt;/A&gt;"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sessionKeyAlgorithm name="TripleDES"/&amp;gt; &amp;lt;!-- add this to switch to TripleDes from default AES128 --&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;keyAlgorithm name="RSAOAEP"/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- add this to switch to RSA-OEAP&amp;nbsp; from default RSA15&amp;nbsp; --&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/binarySecurityTokenManager&amp;gt; &lt;BR&gt;&amp;nbsp; &amp;lt;/security&amp;gt;&lt;BR&gt;...&lt;BR&gt;&amp;lt;microsoft.web.services2&amp;gt;&lt;/P&gt;
&lt;P&gt;or in code:&lt;/P&gt;
&lt;P&gt;ISecurityTokenManager stm = SecurityTokenManager.GetSecurityTokenManagerByTokenType(WSTrust.TokenTypes.X509v3);&lt;BR&gt;stm.DefaultSessionKeyAlgorithm = "TripleDES";&lt;BR&gt;stm.DefaultKeyAlgorithm = "RSAOAEP";&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=7317" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>WS-Security, WSE2.0 SP3 and WebSphere 6.0</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/13/7315.aspx</link><pubDate>Thu, 14 Apr 2005 06:47:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:7315</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>16</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=7315</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/13/7315.aspx#comments</comments><description>&lt;P&gt;I'm sure WS fans applaud when IBM released WebSphere 6.0 last December with support for WS-Security. Finally IBM and Microsoft support the same version of a WS-* protocol other then SOAP and WSDL in their mainline supported products.&lt;/P&gt;
&lt;P&gt;So how can we&amp;nbsp;make them work?&lt;/P&gt;
&lt;P&gt;Consider the following three basic WS-Security scenarios supported by both products&lt;/P&gt;
&lt;P&gt;1. UsernameToken sent over HTTPS. UsernameToken is used for client authentication, HTTPS is used for message protection. Beneficial for the internet deployments, supersedes HTTP Basic Auth over HTTPS, as incorporates token in the message, allows to flow the token end to end, allows for multiple tokens. &lt;/P&gt;
&lt;P&gt;In order to configure WSE 2.0 SP3 to consume UsernameToken from WebSphere, one needs to send Password in Text and disable WSE replayDetection feature as discussed &lt;A href="http://pluralsight.com/blogs/kirillg/archive/2005/04/12/7286.aspx"&gt;here &lt;/A&gt;. The reverse (sending UsernameToken from WSE2.0 client to WebSphere 6.0 service) does not require any config changes.&lt;/P&gt;
&lt;P&gt;2. X509 Signing. Requestor signs a request using private key associated with Requestor's X509v3 certificate. Responder verifies the message signature using the public key associated with Requestor's certificate. &lt;/P&gt;
&lt;P&gt;To make WebSphere 6.0 and WSE2.0 interoperate on this scenario, one needs to set on WebSphere 6.0 side (on the Security config tab) the BinarySecurityToken token type to be &amp;#8220;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3&amp;#8221; - the value from the OASIS WSS1.0 standard. The default setting in WebSphere 6.0 is &amp;#8220;&amp;#8230;#X509&amp;#8221; which was introduced in the non-normative errata from TC and would not interoperate with WSE2.0 SP3.&lt;/P&gt;
&lt;P&gt;3. X509 Mutual Authentication, Sign then Encrypt. Client and Service each have a cert, representing their identities. Client authentication is provided using Client's certificate. Server's authentication is provided using Server's cert. Request is signed using private key corresponding to the Client's certificate then encrypted using ephemeral key K1 wrapped for Server's certificate. Response is signed using private key of Server;s certificate then encrypted using ephemeral key K2 wrapped for Client's cert. This is a great scenario for server to server (B2B) communication. Or if the client app relies on PKI infrastructure (e.g. smartcards).&lt;/P&gt;
&lt;P&gt;There is unfortunately no way to make WSE2.0 SP3 and WebSphere 6.0 interoperate on Scenario #3 due to breaking differences between the OASIS WSS X509 Token Profile 1.0 standard that WSE2.0 SP3 implements and OASIS WSS X509 Token Profile 1.0 non-normative errata that WebSphere 6.0 followed. Specifically the issue is in the different URIs used for &lt;A href="mailto:KeyIdentifier/@ValueType"&gt;KeyIdentifier/@ValueType&lt;/A&gt; in an external reference to the wrapping X509 token inside EncryptedKey. OASIS TC is aware of the problem with errata and is working to resolve the issue and remove breaking changes from errata. IBM is aware of the issue and plans to have a fix in the next service pack to support OASIS WSS 1.0&lt;BR&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=7315" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item><item><title>WSE2.0 SP3 and Interop on UsernameToken</title><link>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/12/7286.aspx</link><pubDate>Tue, 12 Apr 2005 10:47:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:7286</guid><dc:creator>kirill-gavrylyuk</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/kirillg/rsscomments.aspx?PostID=7286</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/kirillg/archive/2005/04/12/7286.aspx#comments</comments><description>&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;One of the most common problems folks run into when using WSE2.0 together with other WS-Security toolkits is interop on UsernameToken.&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Consider a simple scenario:&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;UsernameToken sent over HTTPS. UsernameToken is used for client authentication, HTTPS is used for message protection. Beneficial for the internet deployments, supersedes HTTP Basic Auth over HTTPS, as incorporates token in the message, allows to flow the token end to end, allows for multiple tokens. &lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;WSE2.0 supports all three forms of sending password inside UsernameToken: None, Hashed, Text. I recommend to always use Text and protect the password using other means (transport or message-level encryption) to maximize interop.&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;In order to configure WSE 2.0 SP3 to consume UsernameToken from products like WebSphere or WebLogic, one needs to disable WSE replayDetection feature, i.e. add the following to your config:&lt;BR&gt;&lt;MICROSOFT.WEB.SERVICES2&gt;&lt;MICROSOFT.WEB.SERVICES2&gt;&lt;BR&gt;&amp;nbsp;&amp;lt;microsoft.web.services2&amp;gt;&lt;BR&gt;&amp;nbsp;...&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;securityTokenManager&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;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:wsse="&lt;A href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"&gt;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd&lt;/A&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; qname="wsse:UsernameToken"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;replayDetection enabled="false"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/securityTokenManager&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/security&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR&gt;&amp;lt;/microsoft.web.services2&amp;gt;&lt;BR&gt;&lt;?xml:namespace prefix = securityTokenManager  xmlns /&gt;&lt;securityTokenManager  xmlns:wsse="&lt;A href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"&gt;&lt;BR&gt;&lt;/MICROSOFT.WEB.SERVICES2&gt;&lt;/P&gt;
&lt;P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/P&gt;&lt;/securityTokenManager  xmlns:wsse="&lt;A&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=7286" width="1" height="1"&gt;</description><category domain="http://www.pluralsight.com/community/blogs/kirillg/archive/tags/Interop/default.aspx">Interop</category></item></channel></rss>