XML Schema "fpml-repo-5-11.xsd"
Target Namespace:
Version:
$Revision: 11232 $
Defined Components:
elements (1 global + 60 local), complexTypes (15), element groups (4)
Default Namespace-Qualified Form:
Local Elements: qualified; Local Attributes: unqualified
Includes Schemas (1):
Included in Schemas (2):
All Element Summary
Accruals, relationship is clean price and accruals equals dirty price, all prices are expressed in percentage points, 100 is the initial value of the bond.
Type:
xsd:decimal
Content:
simple
Defined:
Accruals expressed as amount.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
Bond all-in-price which is a price that includes all relevant price adjustments (i.e. accrued interest, haircut or margin ratio, inflation factor,etc.).
Type:
xsd:decimal
Content:
simple
Defined:
assetReference (defined in CollateralValuation complexType)
A reference to explicitly identify which asset is being valued.
Type:
Content:
empty, 1 attribute
Defined:
locally within CollateralValuation complexType; see XML source
A reference to the collateral asset to which the margin requirement applies.
Type:
Content:
empty, 1 attribute
Defined:
Defines the latest date when the open repo transaction can be exercised (and no later than which it must be exercised) on demand by a party to the trade indicated in the electingParty element (or in the Master Agreement, if the electingParty element has AsDefinedInMasterAgreement value).
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within Repo complexType; see XML source
A party to the open repo transaction that has a right to demand for exercise of far leg of the open repo transaction.
Type:
Content:
simple
Defined:
locally within Repo complexType; see XML source
Bond clean price, expressed in percentage points, 100 is the initial value of the bond.
Type:
xsd:decimal
Content:
simple
Defined:
Collateral element is used to carry the quantity and price details that are required to ensure that a repo contract is executed at fair value, with the value of the collateral matching the cash amount of the repo.
Type:
Content:
complex, 15 elements
Defined:
locally within RepoFarLeg complexType; see XML source
Collateral element is used to carry the quantity and price details that are required to ensure that a repo contract is executed at fair value, with the value of the collateral matching the cash amount of the repo.
Type:
Content:
complex, 15 elements
Defined:
locally within RepoNearLeg complexType; see XML source
The collateral profile specified at the tri-party agent.
Type:
Content:
simple, 1 attribute
Defined:
locally within TriParty complexType; see XML source
The collateral type, which is a restriction of the collateral deemed acceptable for the purpose of the transaction.
Type:
Content:
simple, 1 attribute
Defined:
locally within TriParty complexType; see XML source
The day count fraction.
Type:
Content:
simple, 1 attribute
Defined:
locally within Repo complexType; see XML source
Specifies whether the transaction was settled using the Delivery-by-Value (DBV) mechanism.
Type:
xsd:boolean
Content:
simple
Defined:
locally within TriParty complexType; see XML source
Delivery Date for the transaction.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within RepoFarLeg complexType; see XML source
Delivery Date for the transaction.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within RepoNearLeg complexType; see XML source
Specifies a delivery method for the security transaction.
Type:
Content:
simple, 1 attribute
Defined:
locally within RepoFarLeg complexType; see XML source
Specifies a delivery method for the security transaction.
Type:
Content:
simple, 1 attribute
Defined:
locally within RepoNearLeg complexType; see XML source
Bond dirty price, expressed in percentage points, 100 is the initial value of the bond.
Type:
xsd:decimal
Content:
simple
Defined:
Bond dirty price, expressed in percentage points, 100 is the initial value of the bond.
Type:
xsd:decimal
Content:
simple
Defined:
A duration code for the repo transaction.
Type:
Content:
simple
Defined:
locally within Repo complexType; see XML source
Extension period for evergreen/extendable repos, as number of days.
Type:
Content:
complex, 1 attribute, 5 elements
Defined:
Type of extension provision: {Evergreen (close by mutual agreement), Extendable (extend by mutual agreement)}
Type:
Content:
simple
Defined:
The far leg of the repo contract, i.e. the repurchase transaction.
Type:
Content:
complex, 1 attribute, 12 elements
Defined:
locally within Repo complexType; see XML source
The fixed repo rate.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within Repo complexType; see XML source
The floating rate index and tenor, with additional definitions relating to the calculation of floating rate amounts, including spread and multiplier.
Type:
Content:
complex, 1 attribute, 11 elements
Defined:
locally within Repo complexType; see XML source
Indicates the rate of a currency conversion that is used to compute settlement amount for cross-currency transactions.
Type:
Content:
complex, 2 elements
Defined:
locally within RepoFarLeg complexType; see XML source
Indicates the rate of a currency conversion that is used to compute settlement amount for cross-currency transactions.
Type:
Content:
complex, 2 elements
Defined:
locally within RepoNearLeg complexType; see XML source
An element defining a haircut expressed as the percentage difference between the Market Value of the collateral and the Purchase Price of the repo and calculated as 100 multiplied by a ratio of the difference between the Market Value of the collateral and the Purchase Price of the repo to the Market Value of the collateral.
Type:
xsd:decimal
Content:
simple
Defined:
An element defining a haircut percentage threshold which is the value above (when it's lower than initial haircut) or below (when it's higher than initial haircut) which parties agree they will not call a margin from each other.
Type:
xsd:decimal
Content:
simple
Defined:
The inflation factor is specified for inflation-linked products which require some additional elements to calculate prices correctly.
Type:
xsd:decimal
Content:
simple
Defined:
Defines initial margin applied to a repo transaction.
Type:
Content:
complex, 4 elements
Defined:
locally within Repo complexType; see XML source
Initial margin calculation for a collateral asset.
Type:
Content:
complex, 5 elements
Defined:
locally within InitialMargin complexType; see XML source
An element defining an initial margin expressed as a ratio of the Market Value of the collateral to the Purchase Price.
Type:
xsd:decimal
Content:
simple
Defined:
An element defining a margin ratio threshold which is the value above (when it's lower than initial margin ratio) or below (when it's higher than initial margin ratio) which parties agree they will not call a margin from each other.
Type:
xsd:decimal
Content:
simple
Defined:
An element defining a margin threshold which is the Net Exposure of a trade below which parties agree they will not call a margin from each other.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within InitialMargin complexType; see XML source
An element defining the type of assets (cash or securities) specified to apply as margin to the repo transaction.
Type:
Content:
simple
Defined:
locally within InitialMargin complexType; see XML source
An element defining a minimum transfer amount which is the minimum margin call parties will make once the margin threshold (or margin ratio threshold / haircut threshold) has been exceeded.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within InitialMargin complexType; see XML source
A repo contract is modeled as two purchase/repurchase transactions which are called legs.
Type:
Content:
complex, 1 attribute, 10 elements
Defined:
locally within Repo complexType; see XML source
Total nominal amount of the security.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
Total nominal amount of the security.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
noticePeriod (defined in PartyNoticePeriod complexType)
Notice period for open repo transactions in number of days.
Type:
Content:
complex, 1 attribute, 5 elements
Defined:
locally within PartyNoticePeriod complexType; see XML source
Notice period for open repo transactions in number of days.
Type:
Content:
complex, 1 attribute, 5 elements
Defined:
locally within Repo complexType; see XML source
Notice period for open repo transactions referenced to a party to the trade, in number of days.
Type:
Content:
complex, 2 elements
Defined:
locally within Repo complexType; see XML source
partyReference (defined in PartyNoticePeriod complexType)
A reference to a party who has the right to request exercise of the open repo trade and for whom noticePeriod is defined.
Type:
Content:
empty, 1 attribute
Defined:
locally within PartyNoticePeriod complexType; see XML source
quantity (defined in BondCollateral.model group)
The number of units (securities).
Type:
Content:
simple
Defined:
quantity (defined in BondCollateral.model group)
The number of units (securities).
Type:
Content:
simple
Defined:
The number of units (securities).
Type:
Content:
simple
Defined:
The number of units (securities).
Type:
Content:
simple
Defined:
The optional units in which the price is expressed.
Type:
Content:
simple, 1 attribute
Defined:
Bond price relative to a Benchmark.
Type:
Content:
complex, 4 elements
Defined:
Global element representing a Repo.
Type:
Content:
complex, 1 attribute, 22 elements
Subst.Gr:
may substitute for element product
Defined:
globally; see XML source
Used:
never
The repo interest is basically the difference between the settlement amounts at spot and forward date.
Type:
xsd:decimal
Content:
simple
Defined:
locally within RepoFarLeg complexType; see XML source
Settlement Amount
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within RepoNearLeg complexType; see XML source
settlementDate (defined in RepoLegBase complexType)
Settlement or Payment Date for the transaction.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
locally within RepoLegBase complexType; see XML source
Basis Point spread over a Benchmark.
Type:
xsd:decimal
Content:
simple
Defined:
locally within RelativePrice complexType; see XML source
Type:
Content:
complex, 4 elements
Defined:
locally within Repo complexType; see XML source
The reference to the tri-party agent.
Type:
Content:
empty, 1 attribute
Defined:
locally within TriParty complexType; see XML source
The price of each unit (security).
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
Market / Fair Value amount.
Type:
Content:
complex, 1 attribute, 2 elements
Defined:
Yield to Maturity.
Type:
xsd:decimal
Content:
simple
Defined:
Complex Type Summary
An adjustable offset can be used to specify a number of days, business or calendar, for example in a notice period.
Content:
complex, 1 attribute, 5 elements
Defined:
globally; see XML source
Used:
Content:
simple, 1 attribute
Defined:
globally; see XML source
Includes:
definition of 1 attribute
Used:
Content:
simple, 1 attribute
Defined:
globally; see XML source
Includes:
definition of 1 attribute
Used:
This type is used in Repo trades, to specify the valuation of a specific piece of collateral in the transaction.
Content:
complex, 15 elements
Defined:
globally; see XML source
Includes:
definition of 1 element
Used:
Specifies delivery methods for securities transactions.
Content:
simple, 1 attribute
Defined:
globally; see XML source
Includes:
definition of 1 attribute
Used:
Defines initial margin applied to a repo or SBL transaction.
Content:
complex, 4 elements
Defined:
globally; see XML source
Includes:
definitions of 4 elements
Used:
Defines the initial margin calculation applicable to a single piece of collateral.
Content:
complex, 5 elements
Defined:
globally; see XML source
Includes:
definitions of 5 elements
Used:
A type to represent agreed period of notice to be given in advance before exercise of the open repo trade by a party requesting such exercise and reference to that party.
Content:
complex, 2 elements
Defined:
globally; see XML source
Includes:
definitions of 2 elements
Used:
A type which represents Pricing relative to a Benchmark.
Content:
complex, 4 elements
Defined:
globally; see XML source
Includes:
definition of 1 element
Used:
A Repo, modeled as an FpML:Product.
Content:
complex, 1 attribute, 22 elements
Defined:
globally; see XML source
Includes:
definitions of 12 elements
Used:
A transaction leg for a repo is equivalent to a single cash transaction.
Content:
complex, 1 attribute, 12 elements
Defined:
globally; see XML source
Includes:
definitions of 5 elements
Used:
A transaction leg for a repo is equivalent to a single cash transaction.
Content:
complex, 1 attribute, 5 elements
Defined:
globally; see XML source
Includes:
definition of 1 element
Used:
A transaction leg for a repo is equivalent to a single cash transaction.
Content:
complex, 1 attribute, 10 elements
Defined:
globally; see XML source
Includes:
definitions of 5 elements
Used:
Content:
complex, 15 elements
Defined:
globally; see XML source
Used:
The tri-party terms.
Content:
complex, 4 elements
Defined:
globally; see XML source
Includes:
definitions of 4 elements
Used:
Element Group Summary
A group which has Collateral elements.
Content:
Defined:
globally; see XML source
Includes:
definitions of 4 elements
Used:
A group which has either Bond Price or Yield elements.
Content:
Defined:
globally; see XML source
Includes:
definitions of 8 elements
Used:
Extension provisions
Content:
Defined:
globally; see XML source
Includes:
definitions of 2 elements
Used:
Content:
Defined:
globally; see XML source
Includes:
definitions of 7 elements
Used:
XML Source
<?xml version="1.0" encoding="utf-8"?>
<!--
== Copyright (c) 2018-2019 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 attributeFormDefault="unqualified" ecore:documentRoot="FpML" ecore:nsPrefix="conf" ecore:package="org.fpml.confirmation" elementFormDefault="qualified" targetNamespace="http://www.fpml.org/FpML-5/confirmation" version="$Revision: 11232 $" xmlns="http://www.fpml.org/FpML-5/confirmation" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:fpml-annotation="http://www.fpml.org/annotation" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:include schemaLocation="fpml-asset-5-11.xsd"/>
<xsd:complexType name="CollateralValuation">
<xsd:annotation>
<xsd:documentation xml:lang="en">
This type is used in Repo trades, to specify the valuation of a specific piece of collateral in the transaction.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:choice>
<xsd:group ref="BondCollateral.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
When the instrument being used in a transaction is a bond, the group above should be used to properly value the instrument, in terms of price, accruals and notional.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:group ref="UnitContract.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
When the instrument being used in a transaction is an equity, or any contract traded in units, this group should be used to define the quantity, price and valuation of the instrument.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
</xsd:choice>
<xsd:element name="assetReference" type="AssetReference">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A reference to explicitly identify which asset is being valued.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DeliveryMethod">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Specifies delivery methods for securities transactions. This coding-scheme defines the possible delivery methods for securities.
</xsd:documentation>
</xsd:annotation>
<xsd:simpleContent>
<xsd:extension base="Scheme">
<xsd:attribute default="http://www.fpml.org/coding-scheme/delivery-method" name="deliveryMethodScheme" type="NonEmptyURI"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:complexType name="InitialMargin">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Defines initial margin applied to a repo or SBL transaction. Initial margin is an agreed premium to the Purchase Price of a repo or the Leding Price of the SBL to determine the required Market Value of the collateral to be delivered on the Purchase or Delivery Date respectfully. It reflects quality of the collateral. Its aim is to calculate the risk-adjusted or liquidation value of collateral.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="marginType" type="MarginTypeEnum">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining the type of assets (cash or securities) specified to apply as margin to the repo transaction. See GMRA 2011 paragraph 2(h) for "Cash Margin" and GMRA 2011 paragraph 2(cc) for "Margin Securities".
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="unbounded" name="margin" type="InitialMarginCalculation">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Initial margin calculation for a collateral asset. Initial margin requirements may be specified for multiple pieces of collateral.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="marginThreshold" type="NonNegativeMoney">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining a margin threshold which is the Net Exposure of a trade below which parties agree they will not call a margin from each other.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="minimumTransferAmount" type="NonNegativeMoney">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining a minimum transfer amount which is the minimum margin call parties will make once the margin threshold (or margin ratio threshold / haircut threshold) has been exceeded.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="InitialMarginCalculation">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Defines the initial margin calculation applicable to a single piece of collateral.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:choice>
<xsd:annotation>
<xsd:documentation xml:lang="en">
A choice between initial margin ratio and haircut.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="marginRatio" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining an initial margin expressed as a ratio of the Market Value of the collateral to the Purchase Price. A default value of initial margin ratio of 1.00 means there is no margin and thus no risk related with the collateral. See GMRA 2000 paragraph 2(z) and GMRA 2011 paragraph 2(bb).
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="2" minOccurs="0" name="marginRatioThreshold" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining a margin ratio threshold which is the value above (when it's lower than initial margin ratio) or below (when it's higher than initial margin ratio) which parties agree they will not call a margin from each other.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:sequence>
<xsd:element name="haircut" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining a haircut expressed as the percentage difference between the Market Value of the collateral and the Purchase Price of the repo and calculated as 100 multiplied by a ratio of the difference between the Market Value of the collateral and the Purchase Price of the repo to the Market Value of the collateral. Haircut is alternative way to adjust the value of collateral sold in a repurchase agreement to initial margin ratio. Because an initial margin is a percentage of the Purchase Price, while a haircut is a percentage of the Market Value of collateral, the arithmetic of initial margins and haircuts is slightly different. For example, an initial margin of 102% is not equivalent to a haircut of 2%, but to 1.961% (ie 100/102%). See GMRA 2011 paragraph 2(aa).
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="2" minOccurs="0" name="haircutThreshold" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An element defining a haircut percentage threshold which is the value above (when it's lower than initial haircut) or below (when it's higher than initial haircut) which parties agree they will not call a margin from each other.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:choice>
<xsd:element minOccurs="0" name="assetReference" type="AssetReference">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A reference to the collateral asset to which the margin requirement applies. This element should be produced in the case where margin requirements are specified for multiple pieces of collateral, and may be omitted otherwise.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Repo">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A Repo, modeled as an FpML:Product. Note: this Repo model is a candidate model for further industry input.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="Product">
<xsd:sequence>
<xsd:choice>
<xsd:element name="fixedRateSchedule" type="Schedule">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The fixed repo rate. It is usually fixed for the duration of the agreement but can be changed with mid-life events (rate changes) except for sell/buy-back trades.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:annotation>
<xsd:documentation xml:lang="en">
The floating rate index and tenor, with additional definitions relating to the calculation of floating rate amounts, including spread and multiplier. It is used for floating rate repos. For example, floating rate repos on European markets are made against EONIA.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element name="dayCountFraction" type="DayCountFraction">
<xsd:annotation>
<xsd:documentation xml:lang="en">The day count fraction.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:choice>
<xsd:sequence>
<xsd:element name="duration" type="RepoDurationEnum">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A duration code for the repo transaction. This defines a type of a repo transaction with fixed duration.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:group minOccurs="0" ref="ExtensionPeriod.model"/>
</xsd:sequence>
<xsd:sequence>
<xsd:element name="callingParty" type="CallingPartyEnum">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A party to the open repo transaction that has a right to demand for exercise of far leg of the open repo transaction. This element represents an enumerated list that includes InitialBuyer, InitialSeller, Either, AsDefinedInMasterAgreement. In the default case either party can call for closing open repo transaction, unless otherwise specified. If electing parties are not defined in open repo confirmation, when they are defined by default in the Master Agreement, AsDefinedInMasterAgreement value should be used. Exact buyer/seller related parties, including any third parties who can demand exercise of open repo transactions on behalf of the parties to the trade (calculation agent, executing broker, etc.), can be defined in the relatedParty element (tradeHeader/partyTradeInformation).
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="callDate" type="AdjustableOrRelativeDate">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Defines the latest date when the open repo transaction can be exercised (and no later than which it must be exercised) on demand by a party to the trade indicated in the electingParty element (or in the Master Agreement, if the electingParty element has AsDefinedInMasterAgreement value). For instance, in the open repo transaction with callDate agreed as business day one year after the trade date far leg can be settled on any day after the near leg settlement date and before and including the callDate. If the call date is not defined in trade terms and / or not included into trade confirmation this element can be omitted.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:choice minOccurs="0">
<xsd:element name="noticePeriod" type="AdjustableOffset">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Notice period for open repo transactions in number of days. This element represents agreed period of notice to be given in advance before exercise of the repo trade by a party requesting such exercise.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="2" name="partyNoticePeriod" type="PartyNoticePeriod">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Notice period for open repo transactions referenced to a party to the trade, in number of days. This element represents agreed period of notice to be given in advance before exercise of the repo trade by a party requesting such exercise and reference to that party.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
</xsd:sequence>
</xsd:choice>
<xsd:element minOccurs="0" name="initialMargin" type="InitialMargin">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Defines initial margin applied to a repo transaction.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="nearLeg" type="RepoNearLeg">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A repo contract is modeled as two purchase/repurchase transactions which are called legs. This is the near leg, i.e. the transaction that will be executed on the near settlement date of the contract.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="farLeg" type="RepoFarLeg">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The far leg of the repo contract, i.e. the repurchase transaction. The BuyerSeller model in the far leg must be the exact opposite of the one found in the near leg.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:choice>
<xsd:group maxOccurs="unbounded" ref="BondEquity.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A list of the financial instruments that the repo contract may reference.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:element name="triParty" type="TriParty"/>
</xsd:choice>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RepoFarLeg">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A transaction leg for a repo is equivalent to a single cash transaction. It is augmented here to carry some values that are of interest for the repo. Also note that the BuyerSeller model in this transaction must be the exact opposite of the one found in the near leg.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="RepoLegBase">
<xsd:sequence>
<xsd:group ref="SettlementAmountOrCurrency.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Settlement amount of the securities transaction. When the exact financial amount to the transaction is not known (for instance in far leg of a floating rate repo), this structure allows participants to state the currency of the transaction.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:element minOccurs="0" name="fxRate" type="FxRate">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Indicates the rate of a currency conversion that is used to compute settlement amount for cross-currency transactions.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:sequence minOccurs="0">
<xsd:element name="deliveryMethod" type="DeliveryMethod">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Specifies a delivery method for the security transaction.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="deliveryDate" type="AdjustableOrRelativeDate">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Delivery Date for the transaction. Delivery Date can be populated when it is not equal to the Settlement Date.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="unbounded" name="collateral" type="CollateralValuation">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Collateral element is used to carry the quantity and price details that are required to ensure that a repo contract is executed at fair value, with the value of the collateral matching the cash amount of the repo. Collateral is declared as optional here, with multiple cardinalities, since there can be a repo "Multi", with multiple instruments specified, or a "Cash Borrow/Loan" and &#8220;TriPartyRepo&#8221; with no collateral. In general cases, however it should be specified. This element can be omitted in farLeg.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:element minOccurs="0" name="repoInterest" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The repo interest is basically the difference between the settlement amounts at spot and forward date. It is a fully figured amount, but it does not have to be specified in the message. It is not a 'Money' amount as it is implicitly expressed in the settlement currency.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RepoLegBase">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A transaction leg for a repo is equivalent to a single cash transaction. It is augmented here to carry some values that are of interest for the repo. Also note that the BuyerSeller model in this transaction must be the exact opposite of the one found in the near leg.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="Leg">
<xsd:sequence>
<xsd:group ref="BuyerSeller.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
References to the buyer and the seller of this leg of the repo contract.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:element name="settlementDate" type="AdjustableOrRelativeDate">
<xsd:annotation>
<xsd:documentation xml:lang="en">Settlement or Payment Date for the transaction.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RepoNearLeg">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A transaction leg for a repo is equivalent to a single cash transaction.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="RepoLegBase">
<xsd:sequence>
<xsd:element name="settlementAmount" type="Money">
<xsd:annotation>
<xsd:documentation xml:lang="en">Settlement Amount</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="fxRate" type="FxRate">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Indicates the rate of a currency conversion that is used to compute settlement amount for cross-currency transactions.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:sequence minOccurs="0">
<xsd:element name="deliveryMethod" type="DeliveryMethod">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Specifies a delivery method for the security transaction.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="deliveryDate" type="AdjustableOrRelativeDate">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Delivery Date for the transaction. Delivery Date can be populated when it is not equal to the Settlement Date.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element maxOccurs="unbounded" name="collateral" type="CollateralValuation">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Collateral element is used to carry the quantity and price details that are required to ensure that a repo contract is executed at fair value, with the value of the collateral matching the cash amount of the repo. Collateral is declared as optional here, with multiple cardinalities, since there can be a repo "Multi", with multiple instruments specified, or a "Cash Borrow/Loan" and &#8220;TriPartyRepo&#8221; with no collateral. In general cases, however it should be specified. This element can be omitted in farLeg.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="repo" substitutionGroup="product" type="Repo">
<xsd:annotation>
<xsd:documentation xml:lang="en">Global element representing a Repo.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:group name="BondCollateral.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">A group which has Collateral elements.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<!-- <xsd:element name="nominalAmount" type="Money" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">Total nominal amount of the given bonds used as collateral.</xsd:documentation>
<xsd:appinfo>
<view:override view="recordkeeping" minOccurs="1"/>
<view:override view="confirmation" minOccurs="1"/>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
-->
<xsd:choice>
<xsd:sequence>
<xsd:element name="nominalAmount" type="Money">
<xsd:annotation>
<xsd:documentation xml:lang="en">Total nominal amount of the security.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="quantity" type="NonNegativeDecimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">The number of units (securities).</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:element name="quantity" type="NonNegativeDecimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">The number of units (securities).</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:group minOccurs="0" ref="BondPriceAndYield.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A model describing price of the given bonds used as collateral.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:element minOccurs="0" name="accrualsAmount" type="Money">
<xsd:annotation>
<xsd:documentation xml:lang="en">Accruals expressed as amount.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:group>
<xsd:complexType name="AdjustableOffset">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An adjustable offset can be used to specify a number of days, business or calendar, for example in a notice period.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="Offset">
<xsd:sequence>
<xsd:group minOccurs="0" ref="BusinessCentersOrReference.model"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="CollateralProfile">
<xsd:simpleContent>
<xsd:extension base="Scheme">
<xsd:attribute name="collateralProfileScheme" type="NonEmptyURI"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:complexType name="CollateralType">
<xsd:simpleContent>
<xsd:extension base="Scheme">
<xsd:attribute name="collateralTypeScheme" type="NonEmptyURI"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:complexType name="PartyNoticePeriod">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A type to represent agreed period of notice to be given in advance before exercise of the open repo trade by a party requesting such exercise and reference to that party.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="partyReference" type="PartyReference">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A reference to a party who has the right to request exercise of the open repo trade and for whom noticePeriod is defined.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="noticePeriod" type="AdjustableOffset">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Notice period for open repo transactions in number of days. This element represents agreed period of notice to be given in advance before exercise of the repo trade by a party requesting such exercise.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="RelativePrice">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A type which represents Pricing relative to a Benchmark.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="spread" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">Basis Point spread over a Benchmark.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:group maxOccurs="unbounded" ref="BondEquity.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The benchmark being referred to; either a bond or equity product.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SecurityValuation">
<xsd:group ref="SecurityValuation.model"/>
</xsd:complexType>
<xsd:complexType name="TriParty">
<xsd:annotation>
<xsd:documentation xml:lang="en">The tri-party terms.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="triPartyAgent" type="PartyReference">
<xsd:annotation>
<xsd:documentation xml:lang="en">The reference to the tri-party agent.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="collateralProfile" type="CollateralProfile">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The collateral profile specified at the tri-party agent.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="collateralType" type="CollateralType">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The collateral type, which is a restriction of the collateral deemed acceptable for the purpose of the transaction.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="deliveryByValue" type="xsd:boolean">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Specifies whether the transaction was settled using the Delivery-by-Value (DBV) mechanism.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:group name="BondPriceAndYield.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A group which has either Bond Price or Yield elements.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:annotation>
<xsd:documentation xml:lang="en">
These elements express a price in terms of percentage of nominal amount.
</xsd:documentation>
</xsd:annotation>
<xsd:choice>
<xsd:annotation>
<xsd:documentation xml:lang="en">One of cleanPrice or dirtyPrice must exist.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="cleanPrice" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Bond clean price, expressed in percentage points, 100 is the initial value of the bond.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="accruals" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Accruals, relationship is clean price and accruals equals dirty price, all prices are expressed in percentage points, 100 is the initial value of the bond.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="dirtyPrice" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Bond dirty price, expressed in percentage points, 100 is the initial value of the bond.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:element name="dirtyPrice" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Bond dirty price, expressed in percentage points, 100 is the initial value of the bond.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element minOccurs="0" name="relativePrice" type="RelativePrice">
<xsd:annotation>
<xsd:documentation xml:lang="en">Bond price relative to a Benchmark.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="yieldToMaturity" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">Yield to Maturity.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="inflationFactor" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The inflation factor is specified for inflation-linked products which require some additional elements to calculate prices correctly.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="allInPrice" type="xsd:decimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Bond all-in-price which is a price that includes all relevant price adjustments (i.e. accrued interest, haircut or margin ratio, inflation factor,etc.). It expresses a price in terms of percentage of nominal amount.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:group>
<xsd:group name="ExtensionPeriod.model">
<xsd:annotation>
<xsd:documentation>Extension provisions</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="extensionStyle" type="ExtensionStyleEnum">
<xsd:annotation>
<xsd:documentation>
Type of extension provision: {Evergreen (close by mutual agreement), Extendable (extend by mutual agreement)}
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="extensionPeriod" type="AdjustableOffset">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Extension period for evergreen/extendable repos, as number of days.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:group>
<xsd:group name="SecurityValuation.model">
<xsd:sequence>
<xsd:sequence>
<xsd:element ref="security"/>
</xsd:sequence>
<xsd:choice>
<xsd:sequence>
<xsd:element name="nominalAmount" type="Money">
<xsd:annotation>
<xsd:documentation xml:lang="en">Total nominal amount of the security.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="quantity" type="NonNegativeDecimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">The number of units (securities).</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:element name="quantity" type="NonNegativeDecimal">
<xsd:annotation>
<xsd:documentation xml:lang="en">The number of units (securities).</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:choice>
<xsd:group ref="BondPriceAndYield.model">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A model describing price of the given bonds used as collateral.
</xsd:documentation>
</xsd:annotation>
</xsd:group>
<xsd:sequence>
<xsd:element name="unitPrice" type="NonNegativeMoney">
<xsd:annotation>
<xsd:documentation xml:lang="en">The price of each unit (security).</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element minOccurs="0" name="quoteUnits" type="PriceQuoteUnits">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The optional units in which the price is expressed. If not supplied, this is assumed to be a price/value in currency units.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:choice>
<xsd:element minOccurs="0" name="valuationAmount" type="PositiveMoney">
<xsd:annotation>
<xsd:documentation xml:lang="en">Market / Fair Value amount.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:group>
<!---->
</xsd:schema>

XML schema documentation generated with DocFlex/XML 1.10b5 using DocFlex/XML XSDDoc 2.8.1 template set. All content model diagrams generated by Altova XMLSpy via DocFlex/XML XMLSpy Integration.