<?xml version="1.0"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/ProductCommunicationSystem.ServiceModel" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/ProductCommunicationSystem.ServiceModel" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import namespace="http://schemas.datacontract.org/2004/07/ProductCommunicationSystem.ServiceModel.Types" />
  <xs:complexType name="CreateNewShortURL">
    <xs:sequence>
      <xs:element minOccurs="0" name="LongGUID" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TargetURL" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CreateNewShortURL" nillable="true" type="tns:CreateNewShortURL" />
  <xs:complexType name="GetMessageInfo">
    <xs:sequence>
      <xs:element minOccurs="0" name="messageId" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetMessageInfo" nillable="true" type="tns:GetMessageInfo" />
  <xs:complexType name="MessageInfo">
    <xs:sequence>
      <xs:element minOccurs="0" name="MessageId" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MessageInfo" nillable="true" type="tns:MessageInfo" />
  <xs:complexType name="RetrieveLeadData">
    <xs:sequence>
      <xs:element minOccurs="0" name="Communication_GUID" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="RetrieveLeadData" nillable="true" type="tns:RetrieveLeadData" />
  <xs:complexType name="LeadData">
    <xs:sequence>
      <xs:element minOccurs="0" name="Communication_GUID" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="LeadData" nillable="true" type="tns:LeadData" />
  <xs:complexType name="UnsubscribeRecipient">
    <xs:sequence>
      <xs:element minOccurs="0" name="Communication_GUID" nillable="true" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="UnsubscribeRecipient" nillable="true" type="tns:UnsubscribeRecipient" />
  <xs:complexType name="SendNewMessage">
    <xs:sequence>
      <xs:element minOccurs="0" name="EncryptedMessage" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SendNewMessage" nillable="true" type="tns:SendNewMessage" />
  <xs:complexType name="NewMessage">
    <xs:sequence>
      <xs:element minOccurs="0" name="AlternativeContact" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AttachmentData" nillable="true" type="xs:base64Binary" />
      <xs:element minOccurs="0" name="Attachments" nillable="true" xmlns:q1="http://schemas.datacontract.org/2004/07/ProductCommunicationSystem.ServiceModel.Types" type="q1:ArrayOfNewAttachments" />
      <xs:element minOccurs="0" name="BCCAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CCAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CSR" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Content" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ExperimentCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ExperimentID" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="FromAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LeadGUID" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="MessageTypeID" nillable="true" type="xs:short" />
      <xs:element minOccurs="0" name="Protocol" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SendToUnsubscribed" type="xs:boolean" />
      <xs:element minOccurs="0" name="Subject" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TemplateCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TemplateID" nillable="true" type="xs:short" />
      <xs:element minOccurs="0" name="TemplateParameters" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ToAddress" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="NewMessage" nillable="true" type="tns:NewMessage" />
  <xs:complexType name="MessageRequestResult">
    <xs:sequence>
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="MessageID" type="xs:int" />
      <xs:element minOccurs="0" name="Success" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MessageRequestResult" nillable="true" type="tns:MessageRequestResult" />
</xs:schema>