Schema Name: fpml-confirmation-processes-5-9.xsd
Target Namespace: http://www.fpml.org/FpML-5/confirmation
Documentation:
Confirmation messages.
Collapse XSD Schema Code:

<!-- 
== Copyright (c) 2002-2017 All rights reserved. 
== Financial Products Markup Language is subject to the FpML public license. 
== A copy of this license is available at http://www.fpml.org/license/license.html
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns="http://www.fpml.org/FpML-5/confirmation" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:fpml-annotation="http://www.fpml.org/annotation" targetNamespace="http://www.fpml.org/FpML-5/confirmation" ecore:documentRoot="FpML" ecore:nsPrefix="conf" ecore:package="org.fpml.confirmation" version="$Revision: 12665 $" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xsd:include schemaLocation="fpml-business-events-5-9.xsd" />
  <xsd:complexType name="AllocationApproved">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a request to allocate a trade has been approved by the sender.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="blockTradeIdentifier" type="TradeIdentifier" minOccurs="0" />
          <xsd:element name="allocations" type="Allocations" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="AllocationRefused">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a request to allocate a trade has been refused by the sender.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="blockTradeIdentifier" type="TradeIdentifier" minOccurs="0" />
          <xsd:element name="allocations" type="Allocations" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
          <xsd:element name="reason" type="Reason" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ApprovalStatusNotification">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message describing the approvals currently applied to the trade and their status (e.g. pending, approved, refused).</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NotificationMessage">
        <xsd:sequence>
          <xsd:choice>
            <xsd:element name="trade" type="Trade" />
            <xsd:element name="tradeIdentifier" type="TradeIdentifier" />
          </xsd:choice>
          <xsd:element name="approvals" type="Approvals">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">All of the approvals for a specific trade.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="Clearing">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A structure describing a trade registration event that is part of a clearing process.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="submitted" type="TradeWrapper">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The original trade or event submitted to the clearing service.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="cleared" type="TradeWrapper" minOccurs="2" maxOccurs="2">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The trades or events generated by the clearing service as a result of clearing.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ClearingConfirmed">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a clearing request has been acted on and as a result a trade has been cleared.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NotificationMessage">
        <xsd:sequence>
          <xsd:group ref="Compression.model" minOccurs="0" />
          <xsd:group ref="PortfolioReference.model" minOccurs="0" />
          <xsd:group ref="ClearingResults.model" minOccurs="0" />
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:element name="creditLimitInformation" type="CreditLimitInformation" minOccurs="0" maxOccurs="unbounded" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ClearingRefused">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a clearing request has not been acted on due to a business decision and therefore no trade has been cleared.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NotificationMessage">
        <xsd:sequence>
          <xsd:group ref="TradingEvents.model" minOccurs="0" />
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
          <xsd:element name="reason" type="Reason" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ClearingStatus">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message providing the current status of a clearing request.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NotificationMessage">
        <xsd:sequence>
          <xsd:element name="clearingStatusItem" type="ClearingStatusItem" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Describes the status of the clearing process relating to the identified trade.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConfirmationAgreed">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a confirmation has been agreed by a counterparty.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEventsBase.model" />
            <xsd:group ref="PostTradeEventsBase.model" />
            <xsd:group ref="ChangeEventsBase.model" />
            <xsd:group ref="OptionsEventsBase.model" />
            <xsd:element ref="additionalEvent" />
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConfirmationDisputed">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a confirmation has not been agreed by a counterparty.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEventsBase.model" />
            <xsd:group ref="PostTradeEventsBase.model" />
            <xsd:group ref="ChangeEventsBase.model" />
            <xsd:group ref="OptionsEventsBase.model" />
            <xsd:element ref="additionalEvent" />
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
          <xsd:element name="reason" type="Reason" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConfirmationRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that a confirmation request has been withdrawn by the submitter.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingAndPostTradeEvents.model" />
            <xsd:element name="optionExercise" type="OptionExercise">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing an option exercise event. The optionExercise event supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConfirmationStatus">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Message for sending matching results. Response message that returns the status of an event that have been submitted for matching.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="status" type="EventStatus">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Defines the confirmation status of a trade or post-trade event (e.g. Matched, Mismatched, Unmatched, Alleged).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:choice>
            <xsd:sequence>
              <xsd:element name="assertedEvent" type="EventsChoice">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">Event (trade or post-trade event) asserted by one of the parties.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="proposedMatch" type="EventProposedMatch" minOccurs="0" maxOccurs="unbounded">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">"Other side's" event (trade or post-trade event) that meets the minimimum matching criteria and is proposed as match to the event that is being asserted.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:sequence>
            <xsd:element name="allegedEvent" type="EventsChoice">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">Event (trade post-trade event) asserted by the "other side's" party.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConsentGranted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that the sender grants consent for the recipient to perform the requested action.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="type" type="ApprovalType" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of approval (e.g. "pre-clearing credit").</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approver" type="PersonId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The full name or identifiying ID of the relevant approver.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approvingPartyReference" type="PartyReference" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A pointer style reference to a party defined elsewhere in the document. The party referenced needs to approve the specified item (e.g. trade or allocation).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approvalId" type="ApprovalId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">An identifer for a specific appoval, to allow the approval to be identified and tracked.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PortfolioReferenceBase.model" minOccurs="0" />
          <xsd:group ref="EventsOrInfo.model" minOccurs="0" />
          <xsd:element name="creditLimitInformation" type="CreditLimitInformation" minOccurs="0" maxOccurs="unbounded" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ConsentRefused">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message indicating that the sender does not grant consent for the recipient to perform the requested action.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="type" type="ApprovalType" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of approval (e.g. "pre-clearing credit").</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approver" type="PersonId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The full name or identifiying ID of the relevant approver.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approvingPartyReference" type="PartyReference" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A pointer style reference to a party defined elsewhere in the document. The party referenced needs to approve the specified item (e.g. trade or allocation).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PortfolioReferenceBase.model" minOccurs="0" />
          <xsd:group ref="EventsOrInfo.model" minOccurs="0" />
          <xsd:element name="creditLimitInformation" type="CreditLimitInformation" minOccurs="0" maxOccurs="unbounded" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
          <xsd:element name="reason" type="Reason" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="EventRequestAcknowledgement">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the structure for a message acknowledging an event request.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage">
        <xsd:sequence>
          <xsd:element name="originalMessage" type="UnprocessedElementWrapper" minOccurs="0" />
          <xsd:group ref="TradeReferenceInformation.model" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExecutionAdvice">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message advising a third party that a trade execution has occurred.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="productType" type="ProductType" minOccurs="0" />
          <xsd:choice>
            <xsd:group ref="TradingEventsBase.model" />
            <xsd:group ref="PostTradeEventsBase.model" />
            <xsd:group ref="ChangeEventsBase.model" />
            <xsd:group ref="OptionsEventsBase.model" />
            <xsd:element ref="additionalEvent" />
          </xsd:choice>
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:element name="paymentDetails" type="PaymentDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Details of the payments, like amount breakdowns, settlement information.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExecutionAdviceRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message that withdraws an advice to a third party that a trade execution has occurred.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEventsBase.model" />
            <xsd:group ref="PostTradeEventsBase.model" />
            <xsd:group ref="ChangeEventsBase.model" />
            <xsd:group ref="OptionsEventsBase.model" />
            <xsd:element ref="additionalEvent" />
          </xsd:choice>
          <xsd:element name="paymentDetails" type="PaymentDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Details of the payments, like amount breakdowns, settlement information.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExecutionNotification">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message notifying a party that a trade execution has occurred. (Typically this is sent by an execution platform to a participant.)</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice>
            <xsd:group ref="TradingEventsBase.model" />
            <xsd:element name="amendment" type="TradeAmendmentContent" />
            <xsd:group ref="OptionsEventsBase.model" />
            <xsd:element ref="additionalEvent" />
          </xsd:choice>
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="ExecutionRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message retracting a notification to a party that a trade execution has occurred. (Typically this is sent by an execution platform to a participant.)</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEvents.model" />
            <xsd:element name="optionExercise" type="OptionExercise">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing an option exercise event. The optionExercise event supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="MaturityNotification">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message used to notify another party that a trade has matured. This can be used to report, for example, that a swap has passed its final payment and can be removed, or that an option has expired without being executed.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice>
            <xsd:element name="optionExpiry" type="OptionExpiryBase" />
            <xsd:element name="tradeMaturity" type="TradeMaturity" />
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestAllocation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message requesting that a trade be split among several accounts.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="relatedParty" type="RelatedParty" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Identifies a related party performing a role within the transaction.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="blockTradeIdentifier" type="TradeIdentifier" />
          <xsd:element name="allocations" type="Allocations" />
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestAllocationRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message withdrawing a request that a trade be split among several accounts.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="blockTradeIdentifier" type="TradeIdentifier" minOccurs="0" />
          <xsd:element name="allocations" type="Allocations" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestClearing">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message requesting that a trade be cleared by a clearing service.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:group ref="PortfolioReference.model" minOccurs="0" />
          <xsd:choice>
            <xsd:group ref="TradingEvents.model" />
            <xsd:element name="deClear" type="DeClear">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that it has been done.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestClearingRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message withdrawing a request that a trade be cleared by a clearing service.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEvents.model" />
            <xsd:element name="deClear" type="DeClear">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that it has been done.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestConfirmation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message type defining the start of the confirmation process. The message may be used to request the confirmation of a new trade or any other event supported by FpML such as novation, terminations, amendments, etc.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice>
            <xsd:group ref="TradingAndPostTradeEvents.model" />
            <xsd:element name="optionExercise" type="OptionExercise">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing an option exercise event. The optionExercise event supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestConsent">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message requesting that the sender be authorized by the recipient to peform an action.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="requestedAction" type="RequestedAction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The reason the consent was requested.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="type" type="ApprovalType" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of approval (e.g. "pre-clearing credit").</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approver" type="PersonId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The full name or identifiying ID of the relevant approver.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approvingPartyReference" type="PartyReference" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A pointer style reference to a party defined elsewhere in the document. The party referenced needs to approve the specified item (e.g. trade or allocation).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PortfolioReference.model" minOccurs="0" />
          <xsd:group ref="Compression.model" minOccurs="0" />
          <xsd:choice>
            <xsd:group ref="TradingAndPostTradeEvents.model" />
            <xsd:element name="deClear" type="DeClear">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that it has been done.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestConsentRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message withdrawing a request that the sender be authorized by the recipient to peform an action.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="type" type="ApprovalType" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of approval (e.g. "pre-clearing credit").</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approver" type="PersonId" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The full name or identifiying ID of the relevant approver.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="approvingPartyReference" type="PartyReference" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A pointer style reference to a party defined elsewhere in the document. The party referenced needs to approve the specified item (e.g. trade or allocation).</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingAndPostTradeEvents.model" />
            <xsd:element name="deClear" type="DeClear">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that it has been done.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestExecution">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message requesting that an order be executed.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice>
            <xsd:group ref="TradingEvents.model" />
            <xsd:element name="optionExercise" type="OptionExercise">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing an option exercise event. The optionExercise event supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestExecutionRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message withdrawing a request that an order be executed.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:choice minOccurs="0">
            <xsd:group ref="TradingEvents.model" />
            <xsd:element name="optionExercise" type="OptionExercise">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">A structure describing an option exercise event. The optionExercise event supports partial exercise (specify the number of options or amount to exercise), full exercise (use fullExercise flag), as well as the option to request options not to be exercised.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:choice>
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestTradeReferenceInformationUpdate">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the structure for a message requesting information updates to a trade. The trade reference information should contain at least one trade identifier that the recipient is aware of.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:group ref="TradeReferenceInformation.model" />
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestTradeReferenceInformationUpdateRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the structure for a message retracting a request to updated information about trade.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:group ref="TradeReferenceInformation.model" />
          <xsd:group ref="PartiesAndAccounts.model" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="TradeChangeAdvice">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the structure for a message indicating that a trade is being changed due to a non-negotiated event.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="change" type="TradeChangeContent">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Describes the details of the change.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="EventValuation.model" minOccurs="0" />
          <xsd:element name="paymentDetails" type="PaymentDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Details of the payments, like amount breakdowns, settlement information.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="TradeChangeAdviceRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the structure for a message retracting a prior change advice.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="NonCorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="tradeIdentifier" type="PartyTradeIdentifier" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The qualified identifiers of the subject trade.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="change" type="TradeChangeContent" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Describes the details of the change being retracted.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="paymentDetails" type="PaymentDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Details of the payments, like amount breakdowns, settlement information.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="TradeWrapper">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A structure that contains a business event.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:group ref="TradeOrInfo.model" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="RequestCollateralAllocation">
    <xsd:complexContent>
      <xsd:extension base="CorrectableRequestMessage">
        <xsd:sequence>
          <xsd:element name="serviceName" type="NormalizedString" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The name of the service to which the message applies</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="requestedAction" type="RequestedCollateralAllocationAction" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The type of change requested for the collateral allocation.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="collateralGiverPartyReference" type="PartyReference" maxOccurs="1">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The party paying the margin / issuing the allocation request.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="collateralAllocation" type="ProposedCollateralAllocation" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Allocation details</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="PartiesAndAccounts.model" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="RequestedCollateralAllocationAction">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A type that describes the type of collateral allocation action that is requested. The purpose is to allow FCMs to specify how the allocations are to be processed.</xsd:documentation>
    </xsd:annotation>
    <xsd:simpleContent>
      <xsd:extension base="Scheme">
        <xsd:attribute name="requestedCollateralAllocationActionScheme" type="NonEmptyURI" default="http://www.fpml.org/coding-scheme/requested-collateral-allocation-action" />
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="CollateralAllocationAccepted">
    <xsd:complexContent>
      <xsd:extension base="ResponseMessage" />
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:group name="ClearingResults.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Events/Results that are applicable to clearing processes.</xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:group ref="TradingEvents.model" />
      <xsd:sequence>
        <xsd:element name="terminatingEvent" type="TerminatingEvent" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">This may be used to describe why a trade was terminated.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="termination" type="TradeNotionalChange" />
      </xsd:sequence>
      <xsd:element name="deClear" type="DeClear">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">A structure describing a declear event. The deClear event allows a firm to request that a trade be removed from clearing, or a clearing service to request consent for this, or to report that it has been done.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="clearing" type="Clearing" />
    </xsd:choice>
  </xsd:group>
  <xsd:group name="EventsOrInfo.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines a model group that allows either details of an event or information about a trade to be provided. Typically this will be used in a response to a request.</xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:group ref="TradingAndPostTradeEvents.model" />
      <xsd:group ref="TradeReferenceInformation.model" />
    </xsd:choice>
  </xsd:group>
  <xsd:annotation>
    <xsd:documentation xml:lang="en">Confirmation messages.</xsd:documentation>
  </xsd:annotation>
<!-- Execution -->
  <xsd:element name="requestExecution" type="RequestExecution" />
  <xsd:element name="requestExecutionRetracted" type="RequestExecutionRetracted" />
  <xsd:element name="executionNotification" type="ExecutionNotification" />
  <xsd:element name="executionRetracted" type="ExecutionRetracted" />
  <xsd:element name="executionAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="executionException" type="Exception" />
<!-- Execution Advice -->
  <xsd:element name="executionAdvice" type="ExecutionAdvice" />
  <xsd:element name="executionAdviceRetracted" type="ExecutionAdviceRetracted" />
  <xsd:element name="executionAdviceAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="executionAdviceException" type="Exception" />
<!-- Maturity -->
  <xsd:element name="maturityNotification" type="MaturityNotification" />
  <xsd:element name="maturityAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="maturityException" type="Exception" />
<!-- Trade Info update -->
  <xsd:element name="requestTradeReferenceInformationUpdate" type="RequestTradeReferenceInformationUpdate" />
  <xsd:element name="requestTradeReferenceInformationUpdateRetracted" type="RequestTradeReferenceInformationUpdateRetracted" />
  <xsd:element name="tradeReferenceInformationUpdateAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="tradeReferenceInformationUpdateException" type="Exception" />
<!-- Trade Change -->
  <xsd:element name="tradeChangeAdvice" type="TradeChangeAdvice" />
  <xsd:element name="tradeChangeAdviceRetracted" type="TradeChangeAdviceRetracted" />
  <xsd:element name="tradeChangeAdviceAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="tradeChangeAdviceException" type="Exception" />
<!-- Consent Negotiation -->
  <xsd:element name="requestConsent" type="RequestConsent" />
  <xsd:element name="requestConsentRetracted" type="RequestConsentRetracted" />
  <xsd:element name="consentAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="consentException" type="Exception" />
  <xsd:element name="consentGranted" type="ConsentGranted" />
  <xsd:element name="consentRefused" type="ConsentRefused" />
  <xsd:element name="approvalStatusNotification" type="ApprovalStatusNotification" />
<!-- Confirmation -->
  <xsd:element name="requestConfirmation" type="RequestConfirmation">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The confirmation process starts with the requestConfirmation message. The message may be used to request the confirmation of a new trade or any other event supported by FpML such as novation, terminations, amendments, etc.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="requestConfirmationRetracted" type="ConfirmationRetracted">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A requestConfirmation message may be cancelled using the requestConfirmationRetracted message.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="confirmationAcknowledgement" type="EventRequestAcknowledgement">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A business acknowledgement message to indicate that the previously sent message was sucessfully processed.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="confirmationException" type="Exception">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A message sent to inform another system that some exception has been detected.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="confirmationStatus" type="ConfirmationStatus">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The confirmationStatus message provides the status of the matching process: matched, mismatched, unmatched, or alleged. It may also provide the best fit trade(s) or event(s) as result of the matching process.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="confirmationAgreed" type="ConfirmationAgreed">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The confirmationAgreed message is sent when the matching process returns a proposed match (trade or event) and the Confirmation Requester agrees with it.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
  <xsd:element name="confirmationDisputed" type="ConfirmationDisputed">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The confirmationDisputed message is sent when the matching process returns a proposed match (trade or event) and the Confirmation Requester disputes it.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
<!-- Clearing -->
  <xsd:element name="requestClearing" type="RequestClearing" />
  <xsd:element name="requestClearingRetracted" type="RequestClearingRetracted" />
  <xsd:element name="clearingAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="clearingException" type="Exception" />
  <xsd:element name="clearingRefused" type="ClearingRefused" />
  <xsd:element name="clearingStatus" type="ClearingStatus" />
  <xsd:element name="clearingConfirmed" type="ClearingConfirmed" />
<!-- Allocation -->
  <xsd:element name="requestAllocation" type="RequestAllocation" />
  <xsd:element name="requestAllocationRetracted" type="RequestAllocationRetracted" />
  <xsd:element name="allocationAcknowledgement" type="EventRequestAcknowledgement" />
  <xsd:element name="allocationException" type="Exception" />
  <xsd:element name="allocationRefused" type="AllocationRefused" />
  <xsd:element name="allocationApproved" type="AllocationApproved" />
<!-- Collateral Allocation -->
  <xsd:element name="requestCollateralAllocation" type="RequestCollateralAllocation" />
  <xsd:element name="collateralAllocationAcknowledgement" type="Acknowledgement" />
  <xsd:element name="collateralAllocationRejected" type="Exception" />
  <xsd:element name="collateralAllocationAccepted" type="CollateralAllocationAccepted" />
<!--Option Exercise / Expiry  -->
  <xsd:element name="optionExpirationNotification" type="ExecutionNotification" />
</xsd:schema>

Collapse ComplexTypes:
Collapse Elements:
Collapse Groups:
Collapse Comments:
blog comments powered by Disqus