Skip to content

Instantly share code, notes, and snippets.

@mikaelcom
Created August 17, 2023 19:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikaelcom/6e9139088377338f8f8961c81b223355 to your computer and use it in GitHub Desktop.
Save mikaelcom/6e9139088377338f8f8961c81b223355 to your computer and use it in GitHub Desktop.
Bing Structs
<?xml version="1.0" encoding="utf-8" ?>
<wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:tns="http://schemas.microsoft.com/LiveSearch/2008/03/Search" targetNamespace="http://schemas.microsoft.com/LiveSearch/2008/03/Search">
<wsdl:types>
<xsd:schema elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/LiveSearch/2008/03/Search">
<xsd:complexType name="SearchRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Version" type="xsd:string" default="2.2" />
<xsd:element minOccurs="0" maxOccurs="1" name="Market" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="UILanguage" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="Query" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="AppId" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Adult" type="tns:AdultOption" />
<xsd:element minOccurs="0" maxOccurs="1" name="Latitude" type="xsd:double" />
<xsd:element minOccurs="0" maxOccurs="1" name="Longitude" type="xsd:double" />
<xsd:element minOccurs="0" maxOccurs="1" name="Radius" type="xsd:double" />
<xsd:element minOccurs="0" maxOccurs="1" name="Options" type="tns:ArrayOfSearchOption" />
<xsd:element minOccurs="1" maxOccurs="1" name="Sources" type="tns:ArrayOfSourceType" />
<xsd:element minOccurs="0" maxOccurs="1" name="Web" type="tns:WebRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="Image" type="tns:ImageRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="Phonebook" type="tns:PhonebookRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="Video" type="tns:VideoRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="News" type="tns:NewsRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="MobileWeb" type="tns:MobileWebRequest" />
<xsd:element minOccurs="0" maxOccurs="1" name="Translation" type="tns:TranslationRequest" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="AdultOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Off" />
<xsd:enumeration value="Moderate" />
<xsd:enumeration value="Strict" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ArrayOfSearchOption">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="SearchOption" type="tns:SearchOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="SearchOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="DisableLocationDetection" />
<xsd:enumeration value="EnableHighlighting" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ArrayOfSourceType">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="SourceType" type="tns:SourceType" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="SourceType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Spell" />
<xsd:enumeration value="Web" />
<xsd:enumeration value="Image" />
<xsd:enumeration value="RelatedSearch" />
<xsd:enumeration value="Phonebook" />
<xsd:enumeration value="Showtimes" />
<xsd:enumeration value="Weather" />
<xsd:enumeration value="Video" />
<xsd:enumeration value="Ad" />
<xsd:enumeration value="XRank" />
<xsd:enumeration value="InstantAnswer" />
<xsd:enumeration value="News" />
<xsd:enumeration value="QueryLocation" />
<xsd:enumeration value="MobileWeb" />
<xsd:enumeration value="Translation" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="WebRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="FileType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Options" type="tns:ArrayOfWebSearchOption" />
<xsd:element minOccurs="0" maxOccurs="1" name="SearchTags" type="tns:ArrayOfString" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfWebSearchOption">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="WebSearchOption" type="tns:WebSearchOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="WebSearchOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="DisableHostCollapsing" />
<xsd:enumeration value="DisableQueryAlterations" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="guid">
<xsd:restriction base="xsd:string">
<xsd:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ArrayOfGuid">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="string" type="tns:guid" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="SimpleBooleanType">
<xsd:restriction base="xsd:boolean">
<xsd:pattern value="true"/>
<xsd:pattern value="false"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ControlsType">
<xsd:sequence>
<xsd:element name="ProcessByDistributor" type="tns:SimpleBooleanType">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfString">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="string" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ImageRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Filters" type="tns:ArrayOfString" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PhonebookRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="FileType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SortBy" type="tns:PhonebookSortOption" />
<xsd:element minOccurs="0" maxOccurs="1" name="LocId" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Category" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="PhonebookSortOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Default" />
<xsd:enumeration value="Relevance" />
<xsd:enumeration value="Distance" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="VideoRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Filters" type="tns:ArrayOfString" />
<xsd:element minOccurs="0" maxOccurs="1" name="SortBy" type="tns:VideoSortOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="VideoSortOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Relevance" />
<xsd:enumeration value="Date" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="NewsRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" default="10" />
<xsd:element minOccurs="0" maxOccurs="1" name="LocationOverride" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Category" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SortBy" type="tns:NewsSortOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="NewsSortOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Relevance" />
<xsd:enumeration value="Date" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="MobileWebRequest">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Count" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Options" type="tns:ArrayOfMobileWebSearchOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfMobileWebSearchOption">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="MobileWebSearchOption" type="tns:MobileWebSearchOption" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="MobileWebSearchOption">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="DisableHostCollapsing" />
<xsd:enumeration value="DisableQueryAlterations" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="TranslationRequest">
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="SourceLanguage" type="xsd:string" />
<xsd:element minOccurs="1" maxOccurs="1" name="TargetLanguage" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SearchResponse">
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="Version" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Query" type="tns:Query" />
<xsd:element minOccurs="0" maxOccurs="1" name="Spell" type="tns:SpellResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="Web" type="tns:WebResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="Image" type="tns:ImageResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="RelatedSearch" type="tns:RelatedSearchResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="Video" type="tns:VideoResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="InstantAnswer" type="tns:InstantAnswerResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="News" type="tns:NewsResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="MobileWeb" type="tns:MobileWebResponse" />
<xsd:element minOccurs="0" maxOccurs="1" name="Errors" type="tns:ArrayOfError" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Query">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="SearchTerms" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="AlteredQuery" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="AlterationOverrideQuery" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SpellResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfSpellResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfSpellResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="SpellResult" type="tns:SpellResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SpellResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Value" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="WebResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfWebResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfWebResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="WebResult" type="tns:WebResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="WebResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Description" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="CacheUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="DisplayUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="DateTime" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SearchTags" type="tns:ArrayOfWebSearchTag" />
<xsd:element minOccurs="0" maxOccurs="1" name="DeepLinks" type="tns:ArrayOfDeepLink" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfWebSearchTag">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="WebSearchTag" type="tns:WebSearchTag" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="WebSearchTag">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Name" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Value" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfDeepLink">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="DeepLink" type="tns:DeepLink" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DeepLink">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ImageResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfImageResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfImageResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="ImageResult" type="tns:ImageResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ImageResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="MediaUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="DisplayUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Width" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Height" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="FileSize" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="ContentType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Thumbnail" type="tns:Thumbnail" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Thumbnail">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="ContentType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Width" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Height" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="FileSize" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="RunTime" type="xsd:unsignedInt" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="RelatedSearchResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfRelatedSearchResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfRelatedSearchResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="RelatedSearchResult" type="tns:RelatedSearchResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="RelatedSearchResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="VideoResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfVideoResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfVideoResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="VideoResult" type="tns:VideoResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="VideoResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="PlayUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SourceTitle" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="RunTime" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="ClickThroughPageUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="StaticThumbnail" type="tns:Thumbnail" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="InstantAnswerResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfInstantAnswerResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfInstantAnswerResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="InstantAnswerResult" type="tns:InstantAnswerResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="InstantAnswerResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="ContentType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="ClickThroughUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Attribution" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="InstantAnswerSpecificData" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="NewsResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="RelatedSearches" type="tns:ArrayOfNewsRelatedSearch" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfNewsResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfNewsRelatedSearch">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="NewsRelatedSearch" type="tns:NewsRelatedSearch" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="NewsRelatedSearch">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfNewsResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="NewsResult" type="tns:NewsResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="NewsResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Source" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Snippet" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Date" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="BreakingNews" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="NewsCollections" type="tns:ArrayOfNewsCollection" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfNewsCollection">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="NewsCollection" type="tns:NewsCollection" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="NewsCollection">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Name" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="NewsArticles" type="tns:ArrayOfNewsArticle" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfNewsArticle">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="NewsArticle" type="tns:NewsArticle" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="NewsArticle">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Source" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Snippet" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Date" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="MobileWebResponse">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Total" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Offset" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Results" type="tns:ArrayOfMobileWebResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfMobileWebResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="MobileWebResult" type="tns:MobileWebResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="MobileWebResult">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Title" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Description" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Url" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="DisplayUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="DateTime" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfError">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="Error" type="tns:Error" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Error">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="1" name="Code" type="xsd:unsignedInt" />
<xsd:element minOccurs="0" maxOccurs="1" name="Message" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Parameter" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="Value" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="HelpUrl" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SourceType" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="1" name="SourceTypeErrorCode" type="xsd:unsignedInt" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="SearchRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="parameters" type="tns:SearchRequest" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SearchResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="1" maxOccurs="1" name="parameters" type="tns:SearchResponse" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="SearchRequestMessage">
<wsdl:part name="parameters" element="tns:SearchRequest" />
</wsdl:message>
<wsdl:message name="SearchResponseMessage">
<wsdl:part name="parameters" element="tns:SearchResponse" />
</wsdl:message>
<wsdl:portType name="BingPortType">
<wsdl:operation name="Search">
<wsdl:input message="tns:SearchRequestMessage" wsa:Action="http://schemas.microsoft.com/LiveSearch/2008/03/Search/BingPortType/SearchRequest" />
<wsdl:output message="tns:SearchResponseMessage" wsa:Action="http://schemas.microsoft.com/LiveSearch/2008/03/Search/BingPortType/SearchResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="BingPortBinding" type="tns:BingPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
<wsdl:operation name="Search">
<soap:operation soapAction="http://schemas.microsoft.com/LiveSearch/2008/03/Search/Search" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="BingService">
<wsdl:port name="BingPort" binding="tns:BingPortBinding">
<soap:address location="http://api.bing.net:80/soap.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
<?php
declare(strict_types=1);
namespace StructType;
use InvalidArgumentException;
use WsdlToPhp\PackageBase\AbstractStructBase;
/**
* This class stands for NewsRequest StructType
* @subpackage Structs
*/
class NewsRequest extends AbstractStructBase
{
/**
* The Offset
* Meta information extracted from the WSDL
* - maxOccurs: 1
* - minOccurs: 0
* @var int|null
*/
protected ?int $Offset = null;
/**
* The Count
* Meta information extracted from the WSDL
* - default: 10
* - maxOccurs: 1
* - minOccurs: 0
* @var int|null
*/
protected ?int $Count = null;
/**
* The LocationOverride
* Meta information extracted from the WSDL
* - maxOccurs: 1
* - minOccurs: 0
* @var string|null
*/
protected ?string $LocationOverride = null;
/**
* The Category
* Meta information extracted from the WSDL
* - maxOccurs: 1
* - minOccurs: 0
* @var string|null
*/
protected ?string $Category = null;
/**
* The SortBy
* Meta information extracted from the WSDL
* - maxOccurs: 1
* - minOccurs: 0
* @var string|null
*/
protected ?string $SortBy = null;
/**
* Constructor method for NewsRequest
* @uses NewsRequest::setOffset()
* @uses NewsRequest::setCount()
* @uses NewsRequest::setLocationOverride()
* @uses NewsRequest::setCategory()
* @uses NewsRequest::setSortBy()
* @param int $offset
* @param int $count
* @param string $locationOverride
* @param string $category
* @param string $sortBy
*/
public function __construct(?int $offset = null, ?int $count = 10, ?string $locationOverride = null, ?string $category = null, ?string $sortBy = null)
{
$this
->setOffset($offset)
->setCount($count)
->setLocationOverride($locationOverride)
->setCategory($category)
->setSortBy($sortBy);
}
/**
* Get Offset value
* @return int|null
*/
public function getOffset(): ?int
{
return $this->Offset;
}
/**
* Set Offset value
* @param int $offset
* @return \StructType\NewsRequest
*/
public function setOffset(?int $offset = null): self
{
// validation for constraint: int
if (!is_null($offset) && !(is_int($offset) || ctype_digit($offset))) {
throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($offset, true), gettype($offset)), __LINE__);
}
$this->Offset = $offset;
return $this;
}
/**
* Get Count value
* @return int|null
*/
public function getCount(): ?int
{
return $this->Count;
}
/**
* Set Count value
* @param int $count
* @return \StructType\NewsRequest
*/
public function setCount(?int $count = 10): self
{
// validation for constraint: int
if (!is_null($count) && !(is_int($count) || ctype_digit($count))) {
throw new InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($count, true), gettype($count)), __LINE__);
}
$this->Count = $count;
return $this;
}
/**
* Get LocationOverride value
* @return string|null
*/
public function getLocationOverride(): ?string
{
return $this->LocationOverride;
}
/**
* Set LocationOverride value
* @param string $locationOverride
* @return \StructType\NewsRequest
*/
public function setLocationOverride(?string $locationOverride = null): self
{
// validation for constraint: string
if (!is_null($locationOverride) && !is_string($locationOverride)) {
throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($locationOverride, true), gettype($locationOverride)), __LINE__);
}
$this->LocationOverride = $locationOverride;
return $this;
}
/**
* Get Category value
* @return string|null
*/
public function getCategory(): ?string
{
return $this->Category;
}
/**
* Set Category value
* @param string $category
* @return \StructType\NewsRequest
*/
public function setCategory(?string $category = null): self
{
// validation for constraint: string
if (!is_null($category) && !is_string($category)) {
throw new InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($category, true), gettype($category)), __LINE__);
}
$this->Category = $category;
return $this;
}
/**
* Get SortBy value
* @return string|null
*/
public function getSortBy(): ?string
{
return $this->SortBy;
}
/**
* Set SortBy value
* @uses \EnumType\NewsSortOption::valueIsValid()
* @uses \EnumType\NewsSortOption::getValidValues()
* @throws InvalidArgumentException
* @param string $sortBy
* @return \StructType\NewsRequest
*/
public function setSortBy(?string $sortBy = null): self
{
// validation for constraint: enumeration
if (!\EnumType\NewsSortOption::valueIsValid($sortBy)) {
throw new InvalidArgumentException(sprintf('Invalid value(s) %s, please use one of: %s from enumeration class \EnumType\NewsSortOption', is_array($sortBy) ? implode(', ', $sortBy) : var_export($sortBy, true), implode(', ', \EnumType\NewsSortOption::getValidValues())), __LINE__);
}
$this->SortBy = $sortBy;
return $this;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment