<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.02"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="urn:iso:std:iso:20022:tech:xsd:head.001.001.02"
    elementFormDefault="qualified">
  <xs:element name="AppHdr" type="BusinessApplicationHeaderV02_2"/>
  <xs:complexType name="BranchAndFinancialInstitutionIdentification6">
    <xs:sequence>
      <xs:element name="FinInstnId" type="FinancialInstitutionIdentification18"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="BranchAndFinancialInstitutionIdentification6_2">
    <xs:complexContent>
      <xs:restriction base="BranchAndFinancialInstitutionIdentification6">
        <xs:sequence>
          <xs:element name="FinInstnId" type="FinancialInstitutionIdentification18_2"/>
        </xs:sequence>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="BusinessApplicationHeaderV02">
    <xs:sequence>
      <xs:element name="Fr" type="Party44Choice"/>
      <xs:element name="To" type="Party44Choice"/>
      <xs:element name="BizMsgIdr" type="Max35Text"/>
      <xs:element name="MsgDefIdr" type="Max35Text"/>
      <xs:element name="CreDt" type="ISODateTime"/>
      <xs:element name="CpyDplct" type="CopyDuplicate1Code" minOccurs="0"/>
      <xs:element name="PssblDplct" type="YesNoIndicator" minOccurs="0"/>
      <xs:element name="Sgntr" type="SignatureEnvelope" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="BusinessApplicationHeaderV02_2">
    <xs:complexContent>
      <xs:restriction base="BusinessApplicationHeaderV02">
        <xs:sequence>
          <xs:element name="Fr" type="Party44Choice_2"/>
          <xs:element name="To" type="Party44Choice_2"/>
          <xs:element name="BizMsgIdr" type="Max35Text_2"/>
          <xs:element name="MsgDefIdr" type="Max35Text_3"/>
          <xs:element name="CreDt" type="ISODateTime_2"/>
          <xs:element name="CpyDplct" type="CopyDuplicate1Code" minOccurs="0"/>
          <xs:element name="PssblDplct" type="YesNoIndicator" minOccurs="0"/>
          <xs:element name="Sgntr" type="SignatureEnvelope" minOccurs="0"/>
        </xs:sequence>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>
  <xs:simpleType name="CopyDuplicate1Code">
    <xs:restriction base="xs:string">
      <xs:enumeration value="CODU"/>
      <xs:enumeration value="COPY"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="FinancialInstitutionIdentification18">
    <xs:sequence>
      <xs:element name="LEI" type="LEIIdentifier"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="FinancialInstitutionIdentification18_2">
    <xs:complexContent>
      <xs:restriction base="FinancialInstitutionIdentification18">
        <xs:sequence>
          <xs:element name="LEI" type="LEIIdentifier"/>
        </xs:sequence>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>
  <xs:simpleType name="ISODateTime">
    <xs:restriction base="xs:dateTime"/>
  </xs:simpleType>
  <xs:simpleType name="ISODateTime_2">
    <xs:restriction base="ISODateTime">
      <xs:pattern value=".*(\+|-)((0[0-9])|(1[0-3])):[0-5][0-9]+"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="LEIIdentifier">
    <xs:restriction base="xs:string">
      <xs:pattern value="[A-Z0-9]{18,18}[0-9]{2,2}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="Max35Text">
    <xs:restriction base="xs:string">
      <xs:minLength value="1"/>
      <xs:maxLength value="35"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="Max35Text_2">
    <xs:restriction base="Max35Text">
      <xs:pattern value="(B)[0-9]{8}[A-Za-z0-9]{12}(S|M|F)[A-Za-z0-9]{13}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="Max35Text_3">
    <xs:restriction base="Max35Text">
      <xs:enumeration value="acmt.022.001.03"/>
      <xs:enumeration value="admi.002.001.01"/>
      <xs:enumeration value="admi.004.001.02"/>
      <xs:enumeration value="camt.036.001.05"/>
      <xs:enumeration value="camt.037.001.07"/>
      <xs:enumeration value="pacs.002.001.11"/>
      <xs:enumeration value="pacs.004.001.10"/>
      <xs:enumeration value="pacs.008.001.09"/>
      <xs:enumeration value="pacs.028.001.04"/>
      <xs:enumeration value="pain.001.001.10"/>
      <xs:enumeration value="pain.002.001.11"/>
      <xs:pattern value="[0-9a-zA-Z/\-\?:\(\)\.,&apos;\+ ]+"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="Party44Choice">
    <xs:choice>
      <xs:element name="FIId" type="BranchAndFinancialInstitutionIdentification6"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="Party44Choice_2">
    <xs:complexContent>
      <xs:restriction base="Party44Choice">
        <xs:choice>
          <xs:element name="FIId" type="BranchAndFinancialInstitutionIdentification6_2"/>
        </xs:choice>
      </xs:restriction>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="SignatureEnvelope">
    <xs:sequence>
      <xs:any namespace="http://www.w3.org/2000/09/xmldsig#" processContents="lax"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="YesNoIndicator">
    <xs:restriction base="xs:boolean"/>
  </xs:simpleType>
</xs:schema>
