<?xml version="1.0" encoding="utf-8"?><definitions xmlns:s1="http://microsoft.com/wsdl/types/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.microsoft.com" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://www.microsoft.com" xmlns="http://schemas.xmlsoap.org/wsdl/">  <types>    <s:schema elementFormDefault="qualified" targetNamespace="http://www.microsoft.com">      <s:import namespace="http://microsoft.com/wsdl/types/" />      <!-- GetVersion -->      <s:element name="GetVersion">        <s:complexType />      </s:element>      <s:element name="GetVersionResult" type="s:string" />      <!-- GetCultures -->      <s:element name="GetCultures">        <s:complexType />      </s:element>      <s:element name="GetCulturesResult" type="s0:Cultures" />      <s:complexType name="Cultures">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="Culture" type="s0:Culture" />        </s:sequence>        <s:attribute name="Count" type="s:int" />      </s:complexType>      <s:complexType name="Culture">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="CultureID" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />        </s:sequence>      </s:complexType>      <!-- GetTopDownloads -->      <s:simpleType name="TopType">        <s:restriction base="s:string">          <s:enumeration value="Popular" />          <s:enumeration value="Recent" />        </s:restriction>      </s:simpleType>      <s:element name="GetTopDownloadsResult" type="s0:Downloads" />      <s:complexType name="Downloads">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="DownloadSummary" type="s0:DownloadSummary" />          <s:element minOccurs="0" maxOccurs="unbounded" name="Download" type="s0:Download" />        </s:sequence>        <s:attribute name="Count" type="s:string" />      </s:complexType>      <s:complexType name="DownloadSummary">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="DownloadID" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="CultureID" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="ShortDescription" type="s:string" />          <s:element minOccurs="1" maxOccurs="1" name="DatePublished" type="s:dateTime" />          <s:element minOccurs="0" maxOccurs="1" name="RankOverall" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="RankInThisCulture" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="DetailsUrl" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="Download">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="DownloadID" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="CultureID" type="s:string" />          <s:element minOccurs="1" maxOccurs="1" name="DatePublished" type="s:dateTime" />          <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="SubTitle" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Keywords" type="s:string" />          <s:element minOccurs="1" maxOccurs="1" name="MinTotalSize" type="s:int" />          <s:element minOccurs="1" maxOccurs="1" name="MaxTotalSize" type="s:int" />          <s:element minOccurs="0" maxOccurs="1" name="Requirements" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Instructions" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="ShortDescription" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="AdditionalInfo" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="RelatedLinks" type="s0:ArrayOfDownloadRelatedLink" />          <s:element minOccurs="0" maxOccurs="1" name="DCCategories" type="s0:ArrayOfDownloadDCCategory" />          <s:element minOccurs="0" maxOccurs="1" name="RelatedProductsOrTechnologies" type="s0:ArrayOfDownloadProductOrTechnology" />          <s:element minOccurs="0" maxOccurs="1" name="Releases" type="s0:ArrayOfDownloadRelease" />          <s:element minOccurs="0" maxOccurs="1" name="RelatedDownloads" type="s0:ArrayOfDownloadRelatedDownload" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadRelatedLink">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="RelatedLink" type="s0:DownloadRelatedLink" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadRelatedLink">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Url" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadDCCategory">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="DCCategory" type="s0:DownloadDCCategory" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadDCCategory">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadProductOrTechnology">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="ProductOrTechnology" type="s0:DownloadProductOrTechnology" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadProductOrTechnology">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="LegalName" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadRelease">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="Release" type="s0:DownloadRelease" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadRelease">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="SupportedLanguages" type="s0:ArrayOfDownloadReleaseSupportedLanguage" />          <s:element minOccurs="0" maxOccurs="1" name="SupportedOSs" type="s0:ArrayOfDownloadReleaseSupportedOS" />          <s:element minOccurs="0" maxOccurs="1" name="Files" type="s0:ArrayOfDownloadReleaseFile" />        </s:sequence>        <s:attribute name="ID" type="s:string" />      </s:complexType>      <s:complexType name="ArrayOfDownloadReleaseSupportedLanguage">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="SupportedLanguage" type="s0:DownloadReleaseSupportedLanguage" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadReleaseSupportedLanguage">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="CultureID" type="s:string" />        </s:sequence>        <s:attribute name="LCID" type="s:string" />      </s:complexType>      <s:complexType name="ArrayOfDownloadReleaseSupportedOS">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="SupportedOS" type="s0:DownloadReleaseSupportedOS" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadReleaseSupportedOS">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadReleaseFile">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="File" type="s0:DownloadReleaseFile" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadReleaseFile">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Url" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Size" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="Display" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="IsCombined" type="s:string" />        </s:sequence>      </s:complexType>      <s:complexType name="ArrayOfDownloadRelatedDownload">        <s:sequence>          <s:element minOccurs="0" maxOccurs="unbounded" name="RelatedDownload" type="s0:DownloadRelatedDownload" />        </s:sequence>      </s:complexType>      <s:complexType name="DownloadRelatedDownload">        <s:sequence>          <s:element minOccurs="0" maxOccurs="1" name="DownloadID" type="s:string" />          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />        </s:sequence>      </s:complexType>      <!-- GetDownloadDetail -->      <s:element name="GetDownloadDetailResult" type="s0:Download" />    </s:schema>    <!-- custom type for guid -->    <s:schema elementFormDefault="qualified" targetNamespace="http://microsoft.com/wsdl/types/">      <s:simpleType name="guid">        <s:restriction base="s:string">          <s:pattern value="[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}" />        </s:restriction>      </s:simpleType>    </s:schema>  </types><!-- messages -->  <!-- GetVersion messages -->  <message name="GetVersionHttpIn" />  <message name="GetVersionHttpOut">    <part name="return" element="s0:GetVersionResult" />  </message>  <!-- GetCultures messages -->  <message name="GetCulturesHttpIn" />  <message name="GetCulturesHttpOut">    <part name="return" element="s0:GetCulturesResult" />  </message>  <!-- GetTopDownloads messages -->  <message name="GetTopDownloadsHttpIn">    <part name="topType" type="s0:TopType" />    <part name="topN" type="s:int" />    <part name="cultureID" type="s:string" />  </message>  <message name="GetTopDownloadsHttpOut">    <part name="return" element="s0:GetTopDownloadsResult" />  </message>  <!-- GetDownloadDetail messages -->  <message name="GetDownloadDetailHttpIn">    <part name="downloadID" type="s1:guid" />    <part name="cultureID" type="s:string" />  </message>  <message name="GetDownloadDetailHttpOut">    <part name="return" element="s0:GetDownloadDetailResult" />  </message><!-- portType -->  <portType name="MsComServicesHttp">    <operation name="GetVersion" binding="s0:MsComServicesHttp">      <input message="s0:GetVersionHttpIn" />      <output message="s0:GetVersionHttpOut" />    </operation>    <operation name="GetCultures" binding="s0:MsComServicesHttp">      <input message="s0:GetCulturesHttpIn" />      <output message="s0:GetCulturesHttpOut" />    </operation>    <operation name="GetTopDownloads" binding="s0:MsComServicesHttp">      <input message="s0:GetTopDownloadsHttpIn" />      <output message="s0:GetTopDownloadsHttpOut" />    </operation>    <operation name="GetDownloadDetail" binding="s0:MsComServicesHttp">      <input message="s0:GetDownloadDetailHttpIn" />      <output message="s0:GetDownloadDetailHttpOut" />    </operation>  </portType><!-- bindings -->  <binding name="MsComServicesHttp" type="s0:MsComServicesHttp">    <http:binding verb="GET"/>    <operation name="GetVersion">      <http:operation location="/Version"/>      <input>        <http:urlEncoded/>      </input>      <output>       <mime:mimeXml part="return"/>      </output>    </operation>    <operation name="GetCultures">      <http:operation location="/Cultures"/>      <input>        <http:urlEncoded/>      </input>      <output>       <mime:mimeXml part="return"/>      </output>    </operation>    <operation name="GetTopDownloads">      <http:operation location="/TopDownloads"/>      <input>        <http:urlEncoded/>      </input>      <output>       <mime:mimeXml part="return"/>      </output>    </operation>    <operation name="GetDownloadDetail">      <http:operation location="/DownloadDetail"/>      <input>        <http:urlEncoded/>      </input>      <output>       <mime:mimeXml part="return"/>      </output>    </operation>  </binding>  <service name="MsComHttpServices">    <port name="MsComServicesHttp" binding="s0:MsComServicesHttp">      <http:address location="http://ws.microsoft.com/mscomservice" />    </port>  </service></definitions>