<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions name="Soap12" 
    targetNamespace="http://schemas.servicestack.net/types" 
    xmlns:svc="http://schemas.servicestack.net/types" 
    xmlns:tns="http://schemas.servicestack.net/types" 
    
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
    xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" 
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" 
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
    xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" 
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" 
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" 
    xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" 
    xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" 
    xmlns:wsa10="http://www.w3.org/2005/08/addressing" 
    xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex">

	<wsdl:types>
		<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="anyType" nillable="true" type="xs:anyType" />
  <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
  <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
  <xs:element name="boolean" nillable="true" type="xs:boolean" />
  <xs:element name="byte" nillable="true" type="xs:byte" />
  <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
  <xs:element name="decimal" nillable="true" type="xs:decimal" />
  <xs:element name="double" nillable="true" type="xs:double" />
  <xs:element name="float" nillable="true" type="xs:float" />
  <xs:element name="int" nillable="true" type="xs:int" />
  <xs:element name="long" nillable="true" type="xs:long" />
  <xs:element name="QName" nillable="true" type="xs:QName" />
  <xs:element name="short" nillable="true" type="xs:short" />
  <xs:element name="string" nillable="true" type="xs:string" />
  <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
  <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
  <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
  <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
  <xs:element name="char" nillable="true" type="tns:char" />
  <xs:simpleType name="char">
    <xs:restriction base="xs:int" />
  </xs:simpleType>
  <xs:element name="duration" nillable="true" type="tns:duration" />
  <xs:simpleType name="duration">
    <xs:restriction base="xs:duration">
      <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
      <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
      <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="guid" nillable="true" type="tns:guid" />
  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>
  <xs:attribute name="FactoryType" type="xs:QName" />
  <xs:attribute name="Id" type="xs:ID" />
  <xs:attribute name="Ref" type="xs:IDREF" />
</xs:schema>
<xs:schema xmlns:tns="http://schemas.servicestack.net/types" elementFormDefault="qualified" targetNamespace="http://schemas.servicestack.net/types" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="ResponseStatus">
    <xs:sequence>
      <xs:element minOccurs="0" name="ErrorCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StackTrace" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Errors" nillable="true" type="tns:ArrayOfResponseError" />
      <xs:element minOccurs="0" name="Meta" nillable="true" xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q1:ArrayOfKeyValueOfstringstring" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ResponseStatus" nillable="true" type="tns:ResponseStatus" />
  <xs:complexType name="ArrayOfResponseError">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ResponseError" nillable="true" type="tns:ResponseError" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfResponseError" nillable="true" type="tns:ArrayOfResponseError" />
  <xs:complexType name="ResponseError">
    <xs:sequence>
      <xs:element minOccurs="0" name="ErrorCode" nillable="true" type="xs:string">
        <xs:annotation>
          <xs:appinfo>
            <DefaultValue EmitDefaultValue="false" xmlns="http://schemas.microsoft.com/2003/10/Serialization/" />
          </xs:appinfo>
        </xs:annotation>
      </xs:element>
      <xs:element minOccurs="0" name="FieldName" nillable="true" type="xs:string">
        <xs:annotation>
          <xs:appinfo>
            <DefaultValue EmitDefaultValue="false" xmlns="http://schemas.microsoft.com/2003/10/Serialization/" />
          </xs:appinfo>
        </xs:annotation>
      </xs:element>
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string">
        <xs:annotation>
          <xs:appinfo>
            <DefaultValue EmitDefaultValue="false" xmlns="http://schemas.microsoft.com/2003/10/Serialization/" />
          </xs:appinfo>
        </xs:annotation>
      </xs:element>
      <xs:element minOccurs="0" name="Meta" nillable="true" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q2:ArrayOfKeyValueOfstringstring">
        <xs:annotation>
          <xs:appinfo>
            <DefaultValue EmitDefaultValue="false" xmlns="http://schemas.microsoft.com/2003/10/Serialization/" />
          </xs:appinfo>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ResponseError" nillable="true" type="tns:ResponseError" />
</xs:schema>
<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ArrayOfKeyValueOfstringstring">
    <xs:annotation>
      <xs:appinfo>
        <IsDictionary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsDictionary>
      </xs:appinfo>
    </xs:annotation>
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="KeyValueOfstringstring">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Key" nillable="true" type="xs:string" />
            <xs:element name="Value" nillable="true" type="xs:string" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfKeyValueOfstringstring" nillable="true" type="tns:ArrayOfKeyValueOfstringstring" />
  <xs:complexType name="ArrayOfstring">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfstring" nillable="true" type="tns:ArrayOfstring" />
</xs:schema>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/DuluxGroup.API.Services.Model" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/DuluxGroup.API.Services.Model" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="CategoryMasterColour">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MasterColour">
        <xs:sequence>
          <xs:element minOccurs="0" name="CategoryNameStripped" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RangeNameStripped" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Colours" nillable="true" type="tns:ArrayOfColour" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="CategoryMasterColour" nillable="true" type="tns:CategoryMasterColour" />
  <xs:complexType name="MasterColour">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Code" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameStripped" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SpecifierNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ChipNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ChipPosition" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ChipBarcode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ValidFrom" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="ValidTo" nillable="true" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MasterColour" nillable="true" type="tns:MasterColour" />
  <xs:complexType name="ArrayOfColour">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Colour" nillable="true" type="tns:Colour" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfColour" nillable="true" type="tns:ArrayOfColour" />
  <xs:complexType name="Colour">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Red" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Green" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Blue" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="LRV" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Mask" nillable="true" type="tns:Mask" />
      <xs:element minOccurs="0" name="BaseId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="WoodType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Coats" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ColourScheme" nillable="true" type="tns:ColourScheme" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Colour" nillable="true" type="tns:Colour" />
  <xs:complexType name="Mask">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ThumbnailUrl" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Url" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Mask" nillable="true" type="tns:Mask" />
  <xs:complexType name="ColourScheme">
    <xs:sequence>
      <xs:element minOccurs="0" name="ColourSchemeMasterColours" nillable="true" type="tns:ArrayOfColourSchemeMasterColour" />
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="MasterColourId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Type" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ColourScheme" nillable="true" type="tns:ColourScheme" />
  <xs:complexType name="ArrayOfColourSchemeMasterColour">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ColourSchemeMasterColour" nillable="true" type="tns:ColourSchemeMasterColour" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfColourSchemeMasterColour" nillable="true" type="tns:ArrayOfColourSchemeMasterColour" />
  <xs:complexType name="ColourSchemeMasterColour">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MasterColourResponse">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ColourSchemeMasterColour" nillable="true" type="tns:ColourSchemeMasterColour" />
  <xs:complexType name="MasterColourResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MasterColour">
        <xs:sequence>
          <xs:element minOccurs="0" name="Colours" nillable="true" type="tns:ArrayOfColour" />
          <xs:element minOccurs="0" name="RelatedMasterColours" nillable="true" type="tns:ArrayOfRelatedMasterColours" />
          <xs:element minOccurs="0" name="LinkedColourCards" nillable="true" type="tns:ArrayOfColourCardForMasterColour" />
          <xs:element minOccurs="0" name="LinkedImages" nillable="true" type="tns:ArrayOfImageForMasterColour" />
          <xs:element minOccurs="0" name="LinkedColourSchemes" nillable="true" type="tns:ArrayOfColourScheme" />
          <xs:element minOccurs="0" name="LinkedProducts" nillable="true" type="tns:ArrayOfProduct" />
          <xs:element minOccurs="0" name="RangeName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RangeNameStripped" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CategoryName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CategoryNameStripped" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="MasterColourResponse" nillable="true" type="tns:MasterColourResponse" />
  <xs:complexType name="ArrayOfRelatedMasterColours">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RelatedMasterColours" nillable="true" type="tns:RelatedMasterColours" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfRelatedMasterColours" nillable="true" type="tns:ArrayOfRelatedMasterColours" />
  <xs:complexType name="RelatedMasterColours">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MasterColour">
        <xs:sequence>
          <xs:element minOccurs="0" name="RangeName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RangeNameStripped" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CategoryName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CategoryNameStripped" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="PositionX" type="xs:int" />
          <xs:element minOccurs="0" name="PositionY" type="xs:int" />
          <xs:element minOccurs="0" name="Colours" nillable="true" type="tns:ArrayOfColour" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="RelatedMasterColours" nillable="true" type="tns:RelatedMasterColours" />
  <xs:complexType name="ArrayOfColourCardForMasterColour">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ColourCardForMasterColour" nillable="true" type="tns:ColourCardForMasterColour" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfColourCardForMasterColour" nillable="true" type="tns:ArrayOfColourCardForMasterColour" />
  <xs:complexType name="ColourCardForMasterColour">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:ColourCard">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ColourCardForMasterColour" nillable="true" type="tns:ColourCardForMasterColour" />
  <xs:complexType name="ColourCard">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ColourCard" nillable="true" type="tns:ColourCard" />
  <xs:complexType name="ArrayOfImageForMasterColour">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ImageForMasterColour" nillable="true" type="tns:ImageForMasterColour" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfImageForMasterColour" nillable="true" type="tns:ArrayOfImageForMasterColour" />
  <xs:complexType name="ImageForMasterColour">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Image">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ImageForMasterColour" nillable="true" type="tns:ImageForMasterColour" />
  <xs:complexType name="Image">
    <xs:sequence>
      <xs:element minOccurs="0" name="Copyright" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Height" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Locations" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Orientation" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Size" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Source" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Tags" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TagsArray" nillable="true" xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q1:ArrayOfstring" />
      <xs:element minOccurs="0" name="Url" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Width" nillable="true" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Image" nillable="true" type="tns:Image" />
  <xs:complexType name="ArrayOfColourScheme">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ColourScheme" nillable="true" type="tns:ColourScheme" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfColourScheme" nillable="true" type="tns:ArrayOfColourScheme" />
  <xs:complexType name="ArrayOfProduct">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Product" nillable="true" type="tns:Product" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProduct" nillable="true" type="tns:ArrayOfProduct" />
  <xs:complexType name="Product">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameStripped" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ProductType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RangeName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RangeNameStripped" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IndexOrder" nillable="true" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Product" nillable="true" type="tns:Product" />
  <xs:complexType name="ProductResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Product">
        <xs:sequence>
          <xs:element minOccurs="0" name="LinkedImages" nillable="true" type="tns:ArrayOfImage" />
          <xs:element minOccurs="0" name="LinkedStores" nillable="true" type="tns:ArrayOfProductStores" />
          <xs:element minOccurs="0" name="LinkedMasterColours" nillable="true" type="tns:ArrayOfRelatedMasterColours" />
          <xs:element minOccurs="0" name="LinkedVariants" nillable="true" type="tns:ArrayOfProductVariants" />
          <xs:element minOccurs="0" name="LinkedBases" nillable="true" type="tns:ArrayOfProductBases" />
          <xs:element minOccurs="0" name="LinkedProducts" nillable="true" type="tns:ArrayOfRelatedProduct" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ProductResponse" nillable="true" type="tns:ProductResponse" />
  <xs:complexType name="ArrayOfImage">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Image" nillable="true" type="tns:Image" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfImage" nillable="true" type="tns:ArrayOfImage" />
  <xs:complexType name="ArrayOfProductStores">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductStores" nillable="true" type="tns:ProductStores" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductStores" nillable="true" type="tns:ArrayOfProductStores" />
  <xs:complexType name="ProductStores">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductStores" nillable="true" type="tns:ProductStores" />
  <xs:complexType name="ArrayOfProductVariants">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductVariants" nillable="true" type="tns:ProductVariants" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductVariants" nillable="true" type="tns:ArrayOfProductVariants" />
  <xs:complexType name="ProductVariants">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Image" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsActive" type="xs:boolean" />
      <xs:element minOccurs="0" name="IsPurchaseable" type="xs:boolean" />
      <xs:element minOccurs="0" name="SapId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SizeUnits" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SizeValue" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Sku" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductVariants" nillable="true" type="tns:ProductVariants" />
  <xs:complexType name="ArrayOfProductBases">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductBases" nillable="true" type="tns:ProductBases" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductBases" nillable="true" type="tns:ArrayOfProductBases" />
  <xs:complexType name="ProductBases">
    <xs:sequence>
      <xs:element minOccurs="0" name="Colours" nillable="true" type="tns:ArrayOfColour" />
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductBases" nillable="true" type="tns:ProductBases" />
  <xs:complexType name="ArrayOfRelatedProduct">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RelatedProduct" nillable="true" type="tns:RelatedProduct" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfRelatedProduct" nillable="true" type="tns:ArrayOfRelatedProduct" />
  <xs:complexType name="RelatedProduct">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NameStripped" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ProductType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="RangeName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LinkedImages" nillable="true" type="tns:ArrayOfImage" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="RelatedProduct" nillable="true" type="tns:RelatedProduct" />
  <xs:complexType name="ProductSearchResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:ProductResponse">
        <xs:sequence>
          <xs:element minOccurs="0" name="MSDS" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ProductDataSheet" nillable="true" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q2:ArrayOfstring" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ProductSearchResponse" nillable="true" type="tns:ProductSearchResponse" />
</xs:schema>
	</wsdl:types>

	<wsdl:message name="ColourFilterIn">
        <wsdl:part name="par" element="tns:ColourFilter" />
    </wsdl:message>
    <wsdl:message name="ColourFilterOut">
        <wsdl:part name="par" element="tns:ColourFilterResponse" />
    </wsdl:message><wsdl:message name="ProductFilterIn">
        <wsdl:part name="par" element="tns:ProductFilter" />
    </wsdl:message>
    <wsdl:message name="ProductFilterOut">
        <wsdl:part name="par" element="tns:ProductFilterResponse" />
    </wsdl:message><wsdl:message name="ProductStainsIn">
        <wsdl:part name="par" element="tns:ProductStains" />
    </wsdl:message>
    <wsdl:message name="ProductStainsOut">
        <wsdl:part name="par" element="tns:ProductStainsResponse" />
    </wsdl:message><wsdl:message name="ProjectsIn">
        <wsdl:part name="par" element="tns:Projects" />
    </wsdl:message>
    <wsdl:message name="ProjectsOut">
        <wsdl:part name="par" element="tns:ProjectsResponse" />
    </wsdl:message><wsdl:message name="ProductsIn">
        <wsdl:part name="par" element="tns:Products" />
    </wsdl:message>
    <wsdl:message name="ProductsOut">
        <wsdl:part name="par" element="tns:ProductsResponse" />
    </wsdl:message><wsdl:message name="ImagesIn">
        <wsdl:part name="par" element="tns:Images" />
    </wsdl:message>
    <wsdl:message name="ImagesOut">
        <wsdl:part name="par" element="tns:ImagesResponse" />
    </wsdl:message>

	

	<wsdl:portType name="ISyncReply"><wsdl:operation name="ColourFilter">
        <wsdl:input message="svc:ColourFilterIn" />
        <wsdl:output message="svc:ColourFilterOut" />
    </wsdl:operation><wsdl:operation name="ProductFilter">
        <wsdl:input message="svc:ProductFilterIn" />
        <wsdl:output message="svc:ProductFilterOut" />
    </wsdl:operation><wsdl:operation name="ProductStains">
        <wsdl:input message="svc:ProductStainsIn" />
        <wsdl:output message="svc:ProductStainsOut" />
    </wsdl:operation><wsdl:operation name="Projects">
        <wsdl:input message="svc:ProjectsIn" />
        <wsdl:output message="svc:ProjectsOut" />
    </wsdl:operation><wsdl:operation name="Products">
        <wsdl:input message="svc:ProductsIn" />
        <wsdl:output message="svc:ProductsOut" />
    </wsdl:operation><wsdl:operation name="Images">
        <wsdl:input message="svc:ImagesIn" />
        <wsdl:output message="svc:ImagesOut" />
    </wsdl:operation></wsdl:portType>

	

	<wsdl:binding name="WSHttpBinding_ISyncReply" type="svc:ISyncReply">
		<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="ColourFilter">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/ColourFilter" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation><wsdl:operation name="ProductFilter">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/ProductFilter" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation><wsdl:operation name="ProductStains">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/ProductStains" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation><wsdl:operation name="Projects">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/Projects" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation><wsdl:operation name="Products">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/Products" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation><wsdl:operation name="Images">
      <soap12:operation soapAction="http://schemas.servicestack.net/types/Images" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
	</wsdl:binding>
        
	

	<wsdl:service name="SyncReply">
		<wsdl:port name="WSHttpBinding_ISyncReply" binding="svc:WSHttpBinding_ISyncReply">
			<soap12:address location="https://digital-prod-umbracosharedapi-appservice.azurewebsites.net/soap12" />
		</wsdl:port>
	</wsdl:service>

	
	
</wsdl:definitions>