<?xml version="1.0" encoding="utf-8"?>
<!-- 
	== Copyright (c) 2002-2006. 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:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.fpml.org/2005/FpML-4-2" targetNamespace="http://www.fpml.org/2005/FpML-4-2" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xsd:include schemaLocation="fpml-msg-4-2.xsd"/>
	<xsd:include schemaLocation="fpml-ird-4-2.xsd"/>
	<xsd:include schemaLocation="fpml-valuation-base-4-2.xsd"/>
	<xsd:include schemaLocation="fpml-tradeexec-4-2.xsd"/>
	<xsd:complexType name="AllegedCashflow">
		<xsd:sequence>
			<xsd:element name="asOfDate" type="xsd:dateTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The date and time at which the set of cashflows was defined.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="tradeCashflowsId" type="TradeCashflowsId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Unique identifier assigned by the party asserting the set of cashflows to be reconciled.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:group ref="TradeCashflows.model" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AssertedCashflow">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A type that defines a cashflow (or set of cashflows for cross-currency swap) asserted by one of the parties.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="asOfDate" type="xsd:dateTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The date and time at which the set of cashflows was defined.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="tradeCashflowsId" type="TradeCashflowsId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Unique identifier assigned by the party asserting the set of cashflows to be reconciled.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:group ref="TradeCashflows.model" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<!-- Message for cancellation of  payments to be reconciled-->
	<xsd:complexType name="CancelTradeCashflows">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A message sent to indicate that previously asserted TradeCashFlows are no longer in effect. For example, this may be caused by a trade's being terminated or assigned after a TradeCashflowsAsserted message has been sent but before the payment date.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="tradeCashflowsId" type="TradeCashflowsId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Unique identifier assigned by either party or matching service, as agreed, to a set of payments that need to be cancelled.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="TradeCashflows.model" minOccurs="0"/>
					<xsd:element name="matchId" type="MatchId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier assigned by matching service to each set of matched cashflows.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">One party element for each of the principal parties and any other party that is referenced.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="CalculationDetails">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A cashflow component with optional calculation details that explain how the cashflow amount was computed.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="grossCashflow" type="GrossCashflow" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Payment details of this cash flow component, including currency, amount and payer/payee.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="observationElements" type="CashflowObservation" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The underlyer rate or price observation(s) used to compute the amount of this cashflow component.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="calculationElements" type="CashflowCalculationElements" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CashflowCalculationElements">
		<xsd:sequence>
			<xsd:element name="numberOfUnits" type="UnderlyerReferenceUnits" minOccurs="0"/>
			<xsd:element name="notional" type="CashflowNotional" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Identifies the notional in effect for this calculation period.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="calculatedRate" type="CashflowFixing" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The computed rate(s) or price(s) used to calculate the amount of this cashflow component. These computed rates or prices may include averaging and/or various types of rate treatment rules.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="calculationPeriod" type="CashflowCalculationPeriod" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The period details for calculation/accrual periods that comprise this cashflow component.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CashflowCalculationPeriod">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">The period calculation details for a calculation/accrual period. This will include information about the dates and duration of the accrual period, the rate fixing(s), the notional in effect, and the amount of the accrual.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="calculatedRateReference" type="Reference" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Reference to the fixing details defined somewhere in the document.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="adjustedStartDate" type="xsd:date" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Date that defines the beginning of the calculation period.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="adjustedEndDate" type="xsd:date" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Date that defines the end of the calculation period.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="numberOfDays" type="xsd:positiveInteger" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The number of days from the adjusted effective / start date to the adjusted termination / end date calculated in accordance with the applicable day count fraction.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="fixedRateStepReference" type="Reference" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Reference to the fixed rate schedule's step in order to identify the calculation period fixed rate.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dayCountFraction" type="DayCountFraction" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The specification for how the number of days between two dates is calculated for purposes of calculation of a fixed or floating payment amount and the basis for how many days are assumed to be in a year. Day Count Fraction is an ISDA term. The equivalent AFB (Association Francaise de Banques) term is Calculation Basis.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="dayCountYearFraction" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The year fraction value of the calculation period, result of applying the ISDA rules for day count fraction defined in the ISDA Annex.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="compoundingMethod" type="CompoundingMethodEnum" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">If more that one calculation period contributes to a single payment amount this element specifies whether compounding is applicable, and if so, what compounding method is to be used. This element must only be included when more that one calculation period contributes to a single payment amount.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="accruedAmount" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The amount of payment accrued during this accrual period. This is required only when there are multiple calculation periods within the same cashflow component, for example when the calculation period is shorter than the payment period.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CashflowFixing">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">Details of the computation of a computed rate or price used to calculate the amount of a cashflow component. This computed rate or price may include averaging and/or various types of rate treatment rules. The details include all of the observations, the calculation parameters, and the resulting value.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="observationReference" type="Reference" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Reference to the observation details of a particular rate observation.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="calculatedValue" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The value computed based on averaging the underlying observation and applying any spreads, multipliers, and cap and floors values. average or treated value computed based on the underlyer observations, following the calculation rules.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="multiplier" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A rate multiplier to apply to the floating rate. The multiplier can be a positive or negative decimal. This element should only be included if the multiplier is not equal to 1 (one).</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="spread" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The ISDA Spread, if any, which applies for the calculation period. It also defines spread as price. The spread is a per annum rate, expressed as a decimal. For purposes of determining a calculation period amount, if positive the spread will be added to the floating rate and if negative the spread will be subtracted from the floating rate. A positive 10 basis point (0.1%) spread would be represented as 0.001.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="capValue" type="Strike" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The cap rate or price, if any, which applies to the floating rate for the calculation period. The cap rate (strike) is only required where the floating rate on a swap stream is capped at a certain strike level. The cap rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. A cap rate of 5% would be represented as 0.05.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="floorValue" type="Strike" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The floor rate or price, if any, which applies to the floating rate for the calculation period. The floor rate (strike) is only required where the floating rate on a swap stream is floored at a certain strike level. The floor rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. The floor rate of 5% would be represented as 0.05.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="id" type="xsd:ID"/>
	</xsd:complexType>
	<xsd:complexType name="CashflowId">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An identifier used to identify a single component cashflow.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="cashflowIdScheme" type="xsd:anyURI"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="CashflowNotional">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">The notional/principal value/quantity/volume used to compute the cashflow.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:choice>
				<xsd:element name="currency" type="Currency">
					<xsd:annotation>
						<xsd:documentation xml:lang="en">The currency in which an amount is denominated.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="units" type="xsd:normalizedString">
					<xsd:annotation>
						<xsd:documentation xml:lang="en">The units in which an amount (not monetary) is denominated.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:choice>
			<xsd:element name="amount" type="xsd:decimal">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The quantity of notional (in currency or other units).</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="id" type="xsd:ID"/>
	</xsd:complexType>
	<xsd:complexType name="CashflowObservation">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An observation of a rate or a price of an underlyer used in the computation of a cash flow amount.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="underlyerReference" type="Reference">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The underlyer whose rate or price is observed. Reference to an underlyer defined within the tradeDetails structure.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="underlyingAsset" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">In cases where the underlying index is observed by observing the value of a specific security different from the index (typically a futures price), the specific security whose price was observed. For example, the underlying index might be NYMEX Crude Oil, and the underlying asset whose price is observed on a particular day might be CLU7. The index is specified via the underlyerReference, while the specific asset is specified via the underlyingAsset.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="observationDate" type="xsd:date">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The date when the rate is observed. Corresponds to adjustedFixingDate on the Interest Rate Derivatives subschema.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="observedValue" type="BasicQuotation" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The observed rate or price, together with descriptive information such as units.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="weight" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The factor used to weight the observation in computing a weighted average. This is typically based on the number of days weighting to be associated with the rate observation, i.e. the number of days such rate is in effect. This is applicable in the case of a weighted average method of calculation where more than one observate date is established for a single calculation period. If omitted all observations are weighted equally. For Equity Derivatives Products it defines the basket percentage.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="id" type="xsd:ID" use="optional"/>
	</xsd:complexType>
	<xsd:complexType name="GrossCashflow">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A payment component owed from one party to the other for the cash flow date. This payment component should by of only a single type, e.g. a fee or a cashflow from a cashflow stream.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:sequence minOccurs="0">
				<xsd:element name="cashflowId" type="CashflowId">
					<xsd:annotation>
						<xsd:documentation xml:lang="en">Unique identifier for a cash flow.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:group ref="PayerReceiver.model"/>
				<xsd:element name="cashflowAmount" type="Money">
					<xsd:annotation>
						<xsd:documentation xml:lang="en">Cash flow amount in a given currency to be paid/received.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
			</xsd:sequence>
			<xsd:element name="cashflowType" type="CashflowType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Defines the type of cash flow. For instance, a type of fee, premium, principal exchange, leg fee.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="MatchId">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An identifier used to identify matched cashflows.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="matchIdScheme" type="xsd:anyURI"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="PaymentId">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An identifier used to identify a matchable payment.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="paymentIdScheme" type="xsd:anyURI"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="PaymentMatching">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A global type describing the payment exposed to the matching process, along with its gross component(s) and calculation details.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="identifier" type="PaymentId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Unique identifier assigned by either party or matching service, as agreed, to a payment.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:group ref="PayerReceiver.model"/>
			<xsd:element name="paymentAmount" type="Money">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Payment amount in a given currency to be paid/received.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="calculationDetails" type="CalculationDetails" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The set of cash flow components with calculations that comprise this payment.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!-- Message for assertion of  payments to be reconciled-->
	<xsd:complexType name="TradeCashflowsAsserted">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">Notification message that submits cashflows that need to be reconciled per payment date at the trade level.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="NotificationMessage">
				<xsd:sequence>
					<xsd:element name="asOfDate" type="xsd:dateTime" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">The date and time at which the set of cashflows was defined.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="tradeCashflowsId" type="TradeCashflowsId">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Unique identifier assigned by either party or matching service, as agreed, to a set of cashflows.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:group ref="TradeCashflows.model"/>
					<xsd:element name="matchId" type="MatchId" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">A unique identifier assigned by either party, or matching service, as agreed, to each set of matched cashflows.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">One party element for each of the principal parties and any other party that is referenced.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeCashflowsId">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An identifier used to identify the collection of cashflows for a particular trade on a particular day.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="tradeCashflowsIdScheme" type="xsd:anyURI"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<!-- Message for sending match results-->
	<xsd:complexType name="TradeCashflowsMatchResult">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">Response message that returns the status of the set of cashflows (more than one in the case of cross-currency swaps) that have been reconciled.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="ResponseMessage">
				<xsd:sequence>
					<xsd:element name="status" type="TradeCashflowsStatus">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">Reconciliation status of the set of cashflows.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:choice>
						<xsd:sequence>
							<xsd:element name="assertedCashflow" type="AssertedCashflow">
								<xsd:annotation>
									<xsd:documentation xml:lang="en">Cashflow (or set of cashflows for cross-currency swap) asserted by one of the parties.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
							<xsd:element name="proposedMatch" type="TradeCashflowsProposedMatch" minOccurs="0" maxOccurs="unbounded">
								<xsd:annotation>
									<xsd:documentation xml:lang="en">"Other side's" cashflow that meets the minimimum matching criteria and is proposed as match to the cashflow that is being asserted.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
						<xsd:element name="allegedCashflow" type="AllegedCashflow">
							<xsd:annotation>
								<xsd:documentation xml:lang="en">Cashflow (or set of cashflows for cross-currency swap) asserted by the "other side's" party.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:choice>
					<xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation xml:lang="en">One party element for each of the principal parties and any other party that is referenced.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="TradeCashflowsProposedMatch">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">"Other side's" cashflow that meets the minimimum matching criteria and is proposed as match to the cash flow that is being asserted.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tradeCashflowsId" type="TradeCashflowsId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Unique identifier assigned by either party to a set of cashflows.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="matchId" type="MatchId">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A unique identifier assigned by the matching service to each set of matched cashflows.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:group ref="TradeCashflows.model" minOccurs="0"/>
			<xsd:element name="difference" type="TradeDifference" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A type used to record the details of a difference between two sides of a payment.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeCashflowsStatus">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">An coding scheme used to describe the matching status of a TradeCashFlows element.</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleContent>
			<xsd:extension base="xsd:normalizedString">
				<xsd:attribute name="tradeCashflowsStatusScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/trade-cashflows-status-1-0"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="TradeDetails">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">Summary trade economic details used to help identify a trade where no shared trade ID is available.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tradeDate" type="IdentifiedDate">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The trade date.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="effectiveDate" type="AdjustableDate2">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The earliest of all the effective dates of all constituent streams.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="terminationDate" type="AdjustableDate2">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The latest of all of the termination dates of the constituent streams.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="productType" type="ProductType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A classification of the type of product. FpML does not define domain values for this element.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="underlyer" type="TradeUnderlyer" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The set of underlyers to the trade that can be used in computing the trade's cashflows. If this information is needed to identify the trade, all of the trade's underlyers should be specified, whether or not they figure into the cashflow calculation. Otherwise, only those underlyers used to compute this particular cashflow need be supplied.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="notional" type="CashflowNotional" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The notional or notionals in effect on the last day of the last calculation period in each stream.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeIdentifyingItems">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">Data elements that can be used to identify the trade for which cashflows are being communicated. This includes both explicit trade identifiers and summary economic details.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="partyTradeIdentifier" type="PartyTradeIdentifier" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Structure defining one or more trade identifiers allocated to the trade by a party. It is expected that for external communication of trade there will be only one tradeId sent in the document per party.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="tradeDetails" type="TradeDetails" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Structure that holds some trade-specific elements for identifying the trade only in the case of trades that have not been negotiated through electronic platforms and for which the counterparty's trade ID has not been captured.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TradeUnderlyer">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">The underlying asset/index/reference price etc. whose rate/price may be observed to compute the value of the cashflow. It can be an index, fixed rate, listed security, quoted currency pair, or a reference entity (for credit derivatives).</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="floatingRate" type="FloatingRate">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">A floating rate.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="fixedRate" type="Schedule">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The fixed rate or fixed rate schedule expressed as explicit fixed rates and dates. In the case of a schedule, the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="underlyingAsset">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Define the underlying asset when it is a listed security.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="referenceEntity" type="LegalEntity">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The corporate or sovereign entity on which you are buying or selling protection and any successor that assumes all or substantially all of its contractual and other obligations. It is vital to use the correct legal name of the entity and to be careful not to choose a subsidiary if you really want to trade protection on a parent company. Please note, Reference Entities cannot be senior or subordinated. It is the obligations of the Reference Entities that can be senior or subordinated. ISDA 2003 Term: Reference Entity</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:choice>
		<xsd:attribute name="id" type="xsd:ID"/>
	</xsd:complexType>
	<xsd:complexType name="UnderlyerReferenceUnits">
		<xsd:sequence>
			<xsd:element name="underlyerReference" type="Reference">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Reference to the underlyer defined in the trade details structure.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="quantity" type="xsd:decimal">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Amount of units.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:group name="TradeCashflows.model">
		<xsd:annotation>
			<xsd:documentation xml:lang="en">A group describing the cashflows owing on a particular adjustedPaymentDate for a specific trade.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="tradeIdentifyingItems" type="TradeIdentifyingItems">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Structure that holds reference to the trade through the tradeId and optionally some trade-specific elements for identifying the trade in the case of trades that have not been negotiated through electronic platforms and for which the counterparty's trade ID has not been captured.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="adjustedPaymentDate" type="xsd:date">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">The adjusted date in which the payments are being paid/received.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="payment" type="PaymentMatching" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation xml:lang="en">Specifies the payment that is exposed to the matching process. Usually there will be a single payment but for cross-currency swaps a different payment per currency shall be provided.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
</xsd:schema>
