<?xml version="1.0" encoding="UTF-8"?>
<definitions targetNamespace="http://ukmail.business-post.com/mailmark/manifest" xmlns:ns2="http://schemas.xmlsoap.org/wsdl/jms/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://schemas.xmlsoap.org/wsdl/http/" xmlns:ns3="http://www.w3.org/2006/05/addressing/wsdl" xmlns:hdr="http://ns.ukmail.com/msg/header/1.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns0="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:envelope="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:manifest="http://ukmail.business-post.com/mailmark/manifest" xmlns:flt="http://ns.ukmail.com/msg/fault/1.0" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Handbuilt</wsdl:documentation>
  <wsp:UsingPolicy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" wsdl:Required="true" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" />
  <wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
    <sp:SecurityHeader MustManifestEncryption="true" MustPrepend="true" xmlns:sp="http://schemas.xmlsoap.org/ws/2002/12/secext" />
  </wsp:Policy>
  <wsp:Policy wsu:Id="SecurityTokens" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsp:ExactlyOne>
      <wsp:All>
        <sp:SecurityToken xmlns:sp="http://schemas.xmlsoap.org/ws/2002/12/secext">
          <sp:TokenType>sp:UsernameToken</sp:TokenType>
        </sp:SecurityToken>
      </wsp:All>
    </wsp:ExactlyOne>
  </wsp:Policy>
  <wsp:Policy wsu:Id="spoils-1_input_policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsp:PolicyReference URI="#SecurityTokens" />
  </wsp:Policy>
  <types>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:import namespace="http://ukmail.business-post.com/mailmark/manifest">
        <!--schemaLocation='./wsdlfile.asvc?keyid=ECA0-aMqXNO6mZtUc9VMB-970A74A0'-->
      </xsd:import>
    </xsd:schema>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:import namespace="http://ns.ukmail.com/msg/header/1.0">
        <!--schemaLocation='./wsdlfile.asvc?keyid=FCA0-aMqXNO6mZtUc9VMB-970A74A0'-->
      </xsd:import>
    </xsd:schema>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:import namespace="http://ns.ukmail.com/msg/fault/1.0">
        <!--schemaLocation='./wsdlfile.asvc?keyid=0DA0-aMqXNO6mZtUc9VMB-970A74A0'-->
      </xsd:import>
    </xsd:schema>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://ukmail.business-post.com/mailmark/manifest" xmlns:manifest="http://ukmail.business-post.com/mailmark/manifest">
      <xs:element name="Spoils">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="BatchReference" type="manifest:BatchReference" />
            <xs:element name="SCID" type="manifest:SCID" />
            <xs:element name="Date" type="manifest:Date" />
            <xs:element minOccurs="0" name="Items" type="manifest:Items" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SpoilsResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="BatchReference" type="manifest:BatchReference" />
            <xs:element name="SCID" type="manifest:SCID" />
            <xs:element name="Date" type="manifest:Date" />
            <xs:element name="Status" type="xs:string" />
            <xs:element name="Items" type="manifest:Items" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:simpleType name="Date">
        <xs:restriction base="xs:date" />
      </xs:simpleType>
      <xs:simpleType name="BatchReference">
        <xs:restriction base="xs:string">
          <xs:minLength value="1" />
          <xs:pattern value=".*[^\s].*" />
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType name="SCID">
        <xs:restriction base="xs:string">
          <xs:minLength value="1" />
          <xs:pattern value=".*[^\s].*" />
        </xs:restriction>
      </xs:simpleType>
      <xs:complexType name="Items">
        <xs:sequence>
          <xs:element maxOccurs="1000" minOccurs="0" name="Item" type="manifest:Item" />
        </xs:sequence>
      </xs:complexType>
      <xs:complexType name="Item">
        <xs:sequence>
          <xs:element name="EIBItemId">
            <xs:simpleType>
              <xs:annotation>
                <xs:documentation>Field EIBItemId must exist but cannot be empty</xs:documentation>
              </xs:annotation>
              <xs:restriction base="xs:int">
                <xs:pattern value="[0-9]{1,8}" />
              </xs:restriction>
            </xs:simpleType>
          </xs:element>
          <!--xs:element name="Status" type="xs:string" minOccurs="0"/>
		<xs:element name="ErrorCode" type="xs:int" minOccurs="0"/-->
        </xs:sequence>
      </xs:complexType>
      <!--End Import From='http://actionalqa1.business-post.com:4400/sst/wsdlfile.asvc?keyid=ECA0-aMqXNO6mZtUc9VMB-970A74A0'-->
    </xs:schema>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://ns.ukmail.com/msg/header/1.0" xmlns="http://ns.ukmail.com/msg/header/1.0">
      <xs:element name="ukmail" type="header" />
      <xs:complexType name="header">
        <xs:annotation>
          <xs:appinfo>Integration Documentation</xs:appinfo>
          <xs:documentation xml:lang="en">The enterprise header
				element, describing the Integration properties for the message
				payload.</xs:documentation>
        </xs:annotation>
        <xs:all>
          <xs:element minOccurs="1" name="Timestamp" type="timestamp">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">The date-time, with
						timezone support of the creation date of the message from an
						application perspective.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="1" name="Application" type="application">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">Identifier of the
						application that created/sends the message.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="1" name="MessageType" type="messagetype">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">The type of message
						that is being sent in, as sanctioned/described in the project
						documentation and the service repository.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="1" name="Version" type="version">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">An identifier of
						version, defined on a [major].[minor] basis.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="1" name="MessageId" type="UUID">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">A uniquely generated
						type 4 UUID, randomUUID() in 8-4-4-4-12 characters with -
						separator.
						xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx where x is any hexadecimal digit and y is one of 8, 9, A, or B
					</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="0" name="CorrelationId" nillable="true" type="correlationid">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">A label for application
						side tracking or identification, used to bind/group multiple
						message interactions.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="0" name="Priority" nillable="true" type="priority">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">Request capability for
						elevated priority.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="0" name="Expire" nillable="true" type="xs:dateTime">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">A suggested expiration
						date for the message.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="0" name="Username" nillable="true" type="xs:string">
            <xs:annotation>
              <xs:appinfo>Integration Documentation</xs:appinfo>
              <xs:documentation xml:lang="en">AD account</xs:documentation>
            </xs:annotation>
          </xs:element>
          <!--<xs:element name="userId" type="xs:token" minOccurs="0"/> -->
          <!--<xs:element name="environment"> <xs:simpleType> <xs:restriction base="xs:token"> 
				<xs:enumeration value="DEV"/> <xs:enumeration value="TST"/> <xs:enumeration 
				value="INT"/> <xs:enumeration value="UAT"/> <xs:enumeration value="LIVE"/> 
				</xs:restriction> </xs:simpleType> </xs:element> -->
        </xs:all>
        <!--<xs:anyAttribute namespace="##other" processContents="lax"/> -->
      </xs:complexType>
      <xs:simpleType name="timestamp">
        <xs:restriction base="xs:dateTime" />
      </xs:simpleType>
      <xs:simpleType name="application">
        <xs:restriction base="xs:token" />
      </xs:simpleType>
      <xs:simpleType name="messagetype">
        <xs:restriction base="xs:token" />
      </xs:simpleType>
      <xs:simpleType name="UUID">
        <xs:restriction base="xs:string">
          <xs:length fixed="true" value="36" />
          <xs:pattern value="[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}" />
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType name="correlationid">
        <xs:restriction base="xs:token" />
      </xs:simpleType>
      <xs:simpleType name="version">
        <xs:restriction base="xs:string">
          <xs:pattern value="[0-9]{1,}\.[0-9]{1,}" />
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType name="priority">
        <xs:restriction base="xs:string">
          <xs:pattern value="[1-9]" />
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType name="expiration">
        <xs:restriction base="xs:dateTime" />
      </xs:simpleType>
      <xs:complexType name="ukmail">
        <xs:all>
          <xs:element name="ukmail" type="header" />
        </xs:all>
      </xs:complexType>
      <!--End Import From='http://actionalqa1.business-post.com:4400/sst/wsdlfile.asvc?keyid=FCA0-aMqXNO6mZtUc9VMB-970A74A0'-->
    </xs:schema>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://ns.ukmail.com/msg/fault/1.0" xmlns:flt="http://ns.ukmail.com/msg/fault/1.0">
      <xs:element name="FaultDetail" type="xs:string" />
      <!--End Import From='http://actionalqa1.business-post.com:4400/sst/wsdlfile.asvc?keyid=0DA0-aMqXNO6mZtUc9VMB-970A74A0'-->
    </xs:schema>
  </types>
  <message name="spoils-1.request">
    <part name="spoils-1.request" element="manifest:Spoils" />
  </message>
  <message name="Header">
    <part name="header" element="hdr:ukmail" />
  </message>
  <message name="Fault">
    <part name="Fault" element="flt:FaultDetail" />
  </message>
  <message name="spoils-1.response">
    <part name="spoils-1.response" element="manifest:SpoilsResponse" />
  </message>
  <portType name="mailmark">
    <operation name="spoils-1">
      <input message="manifest:spoils-1.request" />
      <output message="manifest:spoils-1.response" />
      <fault name="Fault" message="manifest:Fault" />
    </operation>
  </portType>
  <binding name="mailmark.spoils-1.0" type="manifest:mailmark">
    <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="spoils-1">
      <soap12:operation soapAction="http://ukmail.business-post.com/mailmark/spoils" />
      <input>
        <soap12:header message="manifest:Header" part="header" use="literal">
        </soap12:header>
        <soap12:body use="literal" />
        <wsp:PolicyReference xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" URI="#spoils-1_input_policy" />
      </input>
      <output>
        <soap12:header message="manifest:Header" part="header" use="literal">
        </soap12:header>
        <soap12:body use="literal" />
      </output>
      <fault name="Fault">
        <soap12:fault name="Fault" use="literal" />
      </fault>
    </operation>
  </binding>
  <service name="spoils">
    <port name="spoils-1.0.binding.soap" binding="manifest:mailmark.spoils-1.0">
      <soap12:address location="https://mailmark.ukmail.com/sst/spoil-1" />
    </port>
  </service>
</definitions>