<?xml version="1.0" encoding="utf-8"?>
<!--Generated by Turbo XML 2.3.1.100. Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<xsd:schema targetNamespace="http://www.fpml.org/2003/FpML-4-0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.fpml.org/2003/FpML-4-0" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<!--
  == Copyright (c) 2002-2003. 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/documents/license
  -->
	<xsd:include schemaLocation="fpml-doc-4-0.xsd"/>
	<xsd:include schemaLocation="fpml-fx-4-0.xsd"/>
	<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
	<xsd:complexType name="ConversationId">
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="conversationIdScheme" type="xsd:anyURI" use="required"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="Message" abstract="true">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the basic structure of all FpML messages which is refined by its derived types.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="Document">
				<xsd:sequence>
					<xsd:element name="header" type="MessageHeader">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The generic definition of header in the Message type contains all the possible header information items and is specialised by restriction in derived classes.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="Validation.model"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="MessageId">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">The data type use for message identifiers.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="messageIdScheme" type="xsd:anyURI" use="required"/>
			</xsd:extension>
		</xsd:simpleContent>
		<!-- BAL: resolve issues with examples -->
	</xsd:complexType>
	<xsd:complexType name="MessageHeader">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a generic message header that is refined by its derived classes.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="conversationId" type="ConversationId" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="messageId" type="MessageId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) assigned to the message by its creating party.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="inReplyTo" type="MessageId" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A copy of the unique message identifier (within it own coding scheme) to which this message is responding.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="sentBy" type="PartyId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The unique identifier (within its coding scheme) for the originator of a message instance.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="sendTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) indicating an intended recipent of a message.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="copyTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="creationTimestamp" type="xsd:dateTime">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance was created.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance will be considered expired.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="MessageRejected">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content for a standard message sent when a recipient cannot interpret or process an earlier message.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="reason" type="Reason" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of the Reason type used to record the nature of any errors associated with a message.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="additionalData" type="xsd:string" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Any string of additional data that may help the message processor, for example in a rejection message this might contain the text of the original request (within a CDATA section).</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ModifyTradeConfirmation">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message requesting that the details of a trade previously sent for confirmation be changed.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ModifyTradeMatch">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content of a message requesting that the details of a trade previously sent for matching be modified.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="NotificationMessage">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the basic content for a message sent to inform another system that some 'business event' has occured. Notifications are not expected to be replied to.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="Message">
				<xsd:sequence>
					<xsd:element name="header" type="NotificationMessageHeader">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Overrides the definition of header in the Message type to make it specific to NotificationMessage instances.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="Validation.model"/>
				</xsd:sequence>
				<xsd:attributeGroup ref="StandardAttributes.atts"/>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="NotificationMessageHeader">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type that refines the generic message header to match the requirements of a NotificationMessage.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="MessageHeader">
				<xsd:sequence>
					<xsd:element name="conversationId" type="ConversationId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="messageId" type="MessageId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) assigned to the message by its creating party.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="inReplyTo" type="MessageId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A copy of the unique message identifier (within it own coding scheme) to which this message is responding.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sentBy" type="PartyId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The unique identifier (within its coding scheme) for the originator of a message instance.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sendTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) indicating an intended recipent of a message.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="copyTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="creationTimestamp" type="xsd:dateTime">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance was created.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance will be considered expired.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Reason">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining a content model for describing the nature and possible location of a error within a previous message.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="reasonCode" type="xsd:token">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A machine interpretable error code.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="location" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>An value indicating the location of the problem within the subject message.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="xsd:string">
							<xsd:attribute name="locationType" type="xsd:normalizedString"/>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="description" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Plain English text describing the associated error condition</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="validationRuleId" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>A reference identifying a rule within a validation scheme</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="ValidationRuleId">
							<xsd:attribute name="validationScheme" type="xsd:anyURI"/>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="additionalData" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Any string of additional data that may help the message processor, for example in a rejection message this might contain the text of the original request (within a CDATA section).</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="xsd:string">
							<xsd:attribute name="additionalDataType" type="xsd:normalizedString"/>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ResponseMessage">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type refining the generic message content model to make it specific to response messages.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="Message">
				<xsd:sequence>
					<xsd:element name="header" type="ResponseMessageHeader">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Overrides the definition of header in the Message type to make it specific to ResponseMessage instances.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="Validation.model"/>
				</xsd:sequence>
				<xsd:attributeGroup ref="StandardAttributes.atts"/>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ResponseMessageHeader">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type refining the generic message header to make it specific to response messages.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="MessageHeader">
				<xsd:sequence>
					<xsd:element name="conversationId" type="ConversationId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="messageId" type="MessageId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) assigned to the message by its creating party.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="inReplyTo" type="MessageId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A copy of the unique message identifier (within it own coding scheme) to which this message is responding.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sentBy" type="PartyId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The unique identifier (within its coding scheme) for the originator of a message instance.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sendTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) indicating an intended recipent of a message.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="copyTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="creationTimestamp" type="xsd:dateTime">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance was created.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance will be considered expired.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestMessage" abstract="true">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the basic content of a message that requests the receiver to perform some business operation determined by the message type and its content.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="Message">
				<xsd:sequence>
					<xsd:element name="header" type="RequestMessageHeader">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Overrides the definition of header in the Message type to make it specific to RequestMessage instances.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="Validation.model"/>
				</xsd:sequence>
				<xsd:attributeGroup ref="StandardAttributes.atts"/>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestMessageHeader">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type refining the generic message header content to make it specific to request messages.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:restriction base="MessageHeader">
				<xsd:sequence>
					<xsd:element name="conversationId" type="ConversationId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="messageId" type="MessageId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) assigned to the message by its creating party.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sentBy" type="PartyId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The unique identifier (within its coding scheme) for the originator of a message instance.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="sendTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within its coding scheme) indicating an intended recipent of a message.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="copyTo" type="PartyId" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="creationTimestamp" type="xsd:dateTime">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance was created.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time (on the source system) when this message instance will be considered expired.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:restriction>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestTradeConfirmation">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message requesting that the contained trade be put forward for matching and confirmation.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestTradeMatch">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message requesting that the contained trade be put forward for matching.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestTradeStatus">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message allowing one party to query the status of one or many trades previously sent to another party.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAffirmation">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message that indicates that a trade is considered affirmed by the sender.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAffirmed">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message generated when a party confirms that a trade is affirmed.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAlleged">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message sent by a confirmation provider when it believes that one party has been tardy in providing its side of a transaction.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="bestFitTradeId" type="TradeIdentifier" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A trade identifier for a transaction that closely resembles the characteristics of the trade under consideration.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAlreadyMatched">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message sent by a confirmation provider when it believes that one party has repeated a request to confirm a trade.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAlreadySubmitted">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message sent by a confirmation provider when it believes that one party has repeated a request to confirm a trade.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeConfirmed">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model of a message generated when a trade is determined to be confirmed.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The root element in an FpML trade document.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeDifference">
		<xsd:annotation>
			<xsd:documentation>A type used to record the details of a difference between two business objects/</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="differenceType" type="DifferenceTypeEnum">
				<xsd:annotation>
					<xsd:documentation>The type of difference that exists.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="differenceSeverity" type="DifferenceSeverityEnum">
				<xsd:annotation>
					<xsd:documentation>An indication of the severity of the difference.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="element" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>The name of the element affected.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="basePath" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>XPath to the element in the base object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="baseValue" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>The valie of the element in the base object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="otherPath" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>XPath to the element in the other object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="otherValue" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Value of the element in the other trade.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="missingElement" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Element(s) that are missing in the other trade.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="extraElement" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Element(s) that are extraneous in the other object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="message" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>A human readable description of the problem.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeMatched">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message indicating that a correlation has been made between two transactions.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="differences" type="TradeDifference" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeMismatched">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model of a message generated when a trade is determined to be mismatched.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="bestFitTrade" type="BestFitTrade" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeNotFound">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model of a response message generated when an operation as requested on a trade unknown to the service.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeStatus">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message normally generated in response to a RequestTradeStatus request.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeStatusItem" type="TradeStatusItem" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A collection of data values describing the state of the given trade.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeStatusItem">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type used in trade status enquiry messages which relates a trade identifier to its current status value.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tradeIdentifier" type="TradeIdentifier">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="tradeStatusValue" type="TradeStatusValue">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The trade status value.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeStatusValue">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">The type used to hold TradeStatusScheme values.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="tradeStatusScheme" type="xsd:anyURI"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="TradeUnmatched">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model of a message generated when a trade is determined to be unmatched.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="bestFitTradeId" type="TradeIdentifier" minOccurs="0" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A trade identifier for a transaction that closely resembles the characteristics of the trade under consideration.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BestFitTrade">
		<xsd:annotation>
			<xsd:documentation>A type used to record the differences between the current trade and another indicated trade.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tradeIdentifier" type="TradeIdentifier">
				<xsd:annotation>
					<xsd:documentation>The identifier for the trade compared against.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="differences" type="TradeDifference" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>An optional set of detailed difference records.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CancelTradeMatch">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message requesting that a previously requested TradeMatch process be cancelled.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="partyTradeIdentifier" type="PartyTradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The trade reference identifier(s) allocated to the trade by the parties involved.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="CancelTradeConfirmation">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message requesting that a previously requested TradeConfirmation process be cancelled.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="partyTradeIdentifier" type="PartyTradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The trade reference identifier(s) allocated to the trade by the parties involved.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ConfirmationCancelled">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for the message generated in reponse to a CancelConfirmation request under normal circumstances.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">An instance of a unique trade identifier.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ConfirmTrade">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type defining the content model for a message that indicates acceptance of a previously matched trade.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element name="partyTradeIdentifier" type="PartyTradeIdentifier">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The trade reference identifier(s) allocated to the trade by the parties involved.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The parties obligated to make payments from time to time during the term of the trade. This will include, at a minimum, the principal parties involved in the swap or forward rate agreement. Other parties paying or receiving fees, commissions etc. must also be specified if referenced in other party payments.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="QuotablePayment">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type for defining payments
      
			
			
			
			
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="payerPartyReference" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A pointer style reference to a party identifier
defined elsewhere in the document.
          
					
					
					
					
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:attribute name="href" type="xsd:IDREF" use="required"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="receiverPartyReference" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A pointer style reference to a party identifier
defined elsewhere in the document.
          
					
					
					
					
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:attribute name="href" type="xsd:IDREF" use="required"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="paymentAmount" type="Money" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The currency amount of the payment.
          
					
					
					
					
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="paymentDate" type="AdjustableDate" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The payment date. This date is subject to
adjustment in accordance with any applicable
business day convention.
          
					
					
					
					
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="QuotableProduct">
		<xsd:annotation>
			<xsd:documentation>The abstract base class for all product definitions for pre-trade quotation</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="productType" type="ProductType" minOccurs="0"/>
			<xsd:element name="productId" type="ProductId" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:element name="quotableProduct" type="QuotableProduct"/>
	<xsd:element name="quotableFxSingleLeg" type="QuotableFXLeg" substitutionGroup="quotableProduct"/>
	<xsd:complexType name="QuotableFXRate">
		<xsd:sequence>
			<xsd:element name="quotedCurrencyPair" type="QuotedCurrencyPair"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeCreated">
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade"/>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeAmended">
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade"/>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeCancelled">
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="QuotableFXLeg">
		<xsd:annotation>
			<xsd:documentation>A type that represents a single exchange of one currency for another that may be quoted on. The definition allows currency amounts to
be absent and does not include an exchange rate.
      
			
			
			
			
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="QuotableProduct">
				<xsd:sequence>
					<xsd:element name="exchangedCurrency" type="QuotablePayment" minOccurs="0"/>
					<xsd:element name="exchangeRate" type="QuotableFXRate"/>
					<xsd:element name="nonDeliverableForward" type="FXCashSettlement" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Used to describe a particular type of FX forward transaction that is settled in a single
currency.
              
							
							
							
							
							</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestQuote">
		<xsd:complexContent>
			<xsd:extension base="RequestMessage">
				<xsd:sequence>
					<xsd:element ref="quotableProduct" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RequestQuoteResponse">
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element ref="product" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="AcceptQuote">
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="QuoteAcceptanceConfirmed">
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="trade" type="Trade" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="QuoteUpdated">
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element ref="quotableProduct" maxOccurs="unbounded"/>
					<xsd:element name="party" type="Party" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="QuoteAlreadyExpired">
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage"/>
		</xsd:complexContent>
	</xsd:complexType>
</xsd:schema>
