Schema Name: fpml-fx-targets-5-9.xsd
Target Namespace: http://www.fpml.org/FpML-5/transparency
Collapse XSD Schema Code:

<!-- 
  == Copyright (c) 2002-2017 All rights reserved. 
  == Financial Products Markup Language is subject to the FpML public license. 
  == A copy of this license is available at http://www.fpml.org/license/license.html
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns="http://www.fpml.org/FpML-5/transparency" xmlns:fpml-annotation="http://www.fpml.org/annotation" targetNamespace="http://www.fpml.org/FpML-5/transparency" ecore:documentRoot="FpML" ecore:nsPrefix="trnsp" ecore:package="org.fpml.transparency" version="$Revision: 11478 $" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xsd:include schemaLocation="fpml-fx-5-9.xsd" />
<!--
    ================
        complexTypes    
    ================
    -->
  <xsd:complexType name="FxComplexBarrierBaseReference">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Reference to a barrier structure defined within the parametric representation.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Reference">
        <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="FxComplexBarrierBase" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxDateOffset">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The representation of the schedule as an offset relative to another schedule. For example, the settlement schedule may be relative to the expiry schedule by an FxForward offset.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="convention" type="FxOffsetConventionEnum" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The FX Offset Convention can be FxSpot or FxForward.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="offset" type="Period" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The settlement offset to the expiry schedule or the expiry offset to the settlement schedule. It is only specified when the settlement convention is FxForward.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="relativeTo" type="FxScheduleReference" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Indicates whether the settlement schedule is relative to the expiry schedule or the expiry schedule is relative to the settlement schedule.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="FxExchangedCurrency">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Indicates the direction who pays and receives a specific currency without specifying the amount.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:group ref="PayerReceiver.model" />
      <xsd:element name="currency" type="Currency" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="FxExpirySchedule">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the expiry/observation schedule of the target.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FxSchedule">
        <xsd:sequence>
          <xsd:element name="finalExpiryDate" type="xsd:date">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The final expiry date facilitates informing the final date without having to process all expiry dates in the schedule.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxLevel">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Level is expressed as Schedule, with an initial value and optional steps.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Schedule" />
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxLevelReference">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Reference to a level structure.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Reference">
        <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="FxLevel" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxPivot">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Pivot is expressed as Schedule, with an initial value and optional steps.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Schedule" />
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxPivotReference">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Reference to a pivot structure.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Reference">
        <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="FxPivot" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxSchedule">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The FxSchedule may be expressed as explicit adjusted dates, or a parametric representation plus optional adjusted dates, or as an offset plus optional adusted dates.</xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:sequence>
        <xsd:element name="dateAdjustments" type="BusinessDayAdjustments" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">Date adjustments applied to the adjusted dates including the business day convention and the business centers.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="adjustedDate" type="xsd:date" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">List of schedule dates. These dates have been subject to adjustments based on the dateAdjustments structure.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
      <xsd:sequence>
        <xsd:choice>
          <xsd:group ref="ParametricSchedule.model">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Parametric representation of the schedule.</xsd:documentation>
            </xsd:annotation>
          </xsd:group>
          <xsd:element name="dateOffset" type="FxDateOffset">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The representation of the schedule as an offset relative to another schedule. For example, the settlement schedule may be relative to the expiry schedule by an FxForward offset.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:choice>
        <xsd:element name="adjustedDate" type="xsd:date" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">List of schedule dates. These dates have been subject to adjustments based on the dateAdjustments structure.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:choice>
    <xsd:attribute name="id" type="xsd:ID" />
  </xsd:complexType>
  <xsd:complexType name="FxScheduleReference">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Reference to a FX Schedule structure.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Reference">
        <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="FxTarget" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxStrike">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Strike is expressed as Schedule, with an initial value and optional steps.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Schedule" />
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxStrikeReference">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Reference to a strike structure.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Reference">
        <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="FxStrike" />
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxTargetConstantPayoff">
    <xsd:choice>
      <xsd:sequence>
        <xsd:group ref="PayerReceiver.model" />
        <xsd:element name="payment" type="PositiveMoney" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">Cash payment.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
      <xsd:element name="fixingAdjustment" type="xsd:decimal">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Payoff (gain) expressed as a fixing adjustment. This style is used in the "bonus collar" TARF.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="FxTargetConstantPayoffRegion">
    <xsd:annotation>
      <xsd:documentation>A fixing region in which the payoff is a constant value (a binary|digital payoff, or zero).</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FxTargetPayoffRegion">
        <xsd:sequence>
          <xsd:group ref="FxTargetRegionBound.model" />
          <xsd:element name="payoff" type="FxTargetConstantPayoff" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation>A binary|digital payoff, expressed either as a cash payment, or a (non-zero) fixing adjustment.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="physicalSettlement" type="FxTargetPhysicalSettlement" minOccurs="0" />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxTargetKnockoutForward">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A structured forward product which consists of a strip of forwards. Each forward may be settled as an exchange of currencies or cash settled. At each settlement, the amount of gain that one party achieves is measured. The product has a target level of gain. Once the accumulated gain exceeds the target level, the product terminates and there are no further settlements.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="Product">
        <xsd:sequence>
          <xsd:element name="quotedCurrencyPair" type="QuotedCurrencyPair" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">The Quoted Currency Pair that is used accross the product.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="notionalAmount" type="NonNegativeAmountSchedule">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Notional amount of the Target.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="expirySchedule" type="FxExpirySchedule">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Defines the expiry/observation schedule of the target product.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:sequence>
            <xsd:sequence minOccurs="0">
              <xsd:element name="pivot" type="FxPivot">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">The boundary where the contract flips from being long and short is the pivot point. So the pivot indicates the level in which there is a change in direction of the currencies exchanged by the parties.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="constantPayoffRegion" type="FxTargetConstantPayoffRegion" minOccurs="0" maxOccurs="unbounded">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">A region in which constant payoff applies i.e. the payoff is defined as a contant currency amount or fixing adjustment, unrelated to the fixing. In absence of the "payoff" element, zero payoff is assumed (note: zero payoff does not necessarily imply that no settlement occurs).</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="linearPayoffRegion" type="FxTargetLinearPayoffRegion">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">A region in which linear payoff applies i.e. the payoff bears a linear relationship to the fixing value (increases/decreases linearly with the fixing).</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:sequence>
            <xsd:sequence>
              <xsd:element name="constantPayoffRegion" type="FxTargetConstantPayoffRegion" minOccurs="0" maxOccurs="unbounded">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">It defines a region in which a digital payment occurs.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="linearPayoffRegion" type="FxTargetLinearPayoffRegion">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">A region in which linear payoff applies i.e. the payoff bears a linear relationship to the fixing value (increases/decreases linearly with the fixing).</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="unbounded">
              <xsd:annotation>
                <xsd:documentation xml:lang="en">Choice permitting digital-, vanilla- and zero- PayoffRegions to be combined arbitrarily.</xsd:documentation>
              </xsd:annotation>
              <xsd:element name="constantPayoffRegion" type="FxTargetConstantPayoffRegion">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">It defines a region in which a digital payment occurs.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="linearPayoffRegion" type="FxTargetLinearPayoffRegion">
                <xsd:annotation>
                  <xsd:documentation xml:lang="en">A region in which linear payoff applies i.e. the payoff bears a linear relationship to the fixing value (increases/decreases linearly with the fixing).</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:choice>
          </xsd:sequence>
          <xsd:element name="additionalPayment" type="SimplePayment" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">It supports the representation of premiums, fees, etc.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="cashSettlement" type="FxCashSettlementSimple" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Cash settlement currency.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxTargetLinearPayoffRegion">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A fixing region in which the payoff varies linearly with the fixing value.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="FxTargetPayoffRegion">
        <xsd:sequence>
          <xsd:element name="strike" type="FxStrike" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Strike price of the Target.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FxTargetPayoffRegion" abstract="true">
    <xsd:attribute name="id" type="xsd:ID" use="optional" />
  </xsd:complexType>
  <xsd:complexType name="FxTargetRegionLowerBound">
    <xsd:sequence>
      <xsd:element name="condition" type="FxRegionLowerBoundDirectionEnum" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">AtOrAbove, Above.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:group ref="FxTargetConditionLevel.model" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="FxTargetRegionUpperBound">
    <xsd:sequence>
      <xsd:element name="condition" type="FxRegionUpperBoundDirectionEnum" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">AtOrBelow, Below.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:group ref="FxTargetConditionLevel.model" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="FxTargetPhysicalSettlement">
    <xsd:sequence>
      <xsd:group ref="FxExchangedCurrency.model">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Indicates the direction of physical settlement exchanges.</xsd:documentation>
        </xsd:annotation>
      </xsd:group>
      <xsd:element name="settlementAdjustmentStyle" type="FxSettlementAdjustmentMethodEnum" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The Settlement Adjustment Style can be VariedStrike or VariedNotional.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:group ref="StrikeOrStrikeReference.model" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">The strike should be specified if the Settlement Style is VariedNotional.</xsd:documentation>
        </xsd:annotation>
      </xsd:group>
    </xsd:sequence>
  </xsd:complexType>
<!--
================
    elements    
================
-->
  <xsd:element name="fxTargetKnockoutForward" type="FxTargetKnockoutForward" substitutionGroup="product">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">A structured forward product which consists of a strip of forwards. Each forward may be settled as an exchange of currencies or cash settled. At each settlement, the amount of gain that one party achieves is measured. The product has a target level of gain. Once the accumulated gain exceeds the target level, the product terminates and there are no further settlements.</xsd:documentation>
    </xsd:annotation>
  </xsd:element>
<!--
================
    groups    
================
-->
  <xsd:group name="FxExchangedCurrency.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Indicates the directions of who pays and receives a specific currency without specifying the amount.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="exchangedCurrency1" type="FxExchangedCurrency">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Indicates the first direction of who pays and receives a specific currency without specifying the amount.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="exchangedCurrency2" type="FxExchangedCurrency">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Indicates the second direction of who pays and receives a specific currency without specifying the amount.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:group>
  <xsd:group name="FxTargetConditionLevel.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Conditions can be expressed in different ways: as a specific level, as strike, pivot, or barrier.</xsd:documentation>
    </xsd:annotation>
    <xsd:choice>
      <xsd:element name="level" type="FxLevel">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Level expressed as a level with optional steps different from strike, pivot, or barrier.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="strikeReference" type="FxStrikeReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Reference to a strike defined within the FX product.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="pivotReference" type="FxPivotReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Reference to the pivot defined within the FX product.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="barrierReference" type="FxComplexBarrierBaseReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Reference to a perExpiryBarrier component to indicate theat the bound of the region is defined by the barrier component.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="levelReference" type="FxLevelReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Reference to a level defined within the FX product.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:group>
  <xsd:group name="FxTargetRegionBound.model">
    <xsd:choice>
      <xsd:element name="upperBound" type="FxTargetRegionUpperBound">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Defines the upper bound of a payoff region.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:sequence>
        <xsd:element name="lowerBound" type="FxTargetRegionLowerBound">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">Defines the lower bound of a payoff region.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="upperBound" type="FxTargetRegionUpperBound" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">Defines the upper bound of a payoff region.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:choice>
  </xsd:group>
  <xsd:group name="ParametricSchedule.model">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">The schedule defined by the set of parameters to be able to calculate the schedule of adjusted date. The combination of the [start/endDate + dayType + businessCenters] will be used only to represent a daily schedule and the combination of [start/endDate + observationFrequency + dateAdjustments] for parametric representation of the schedules other than daily schedule.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:choice>
        <xsd:sequence>
          <xsd:element name="startDate" type="xsd:date">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Start of the schedule.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="endDate" type="xsd:date" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">End of the schedule.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
        <xsd:element name="endDate" type="xsd:date">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">End of the schedule.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:choice>
      <xsd:choice>
        <xsd:sequence>
          <xsd:element name="observationFrequency" type="ObservationFrequency">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Defines the frequency at which calculation period end dates occur within the period schedule and their roll date convention.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="dateAdjustments" type="BusinessDayAdjustments" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Date adjustments applied to the schedule including the business day convention and the business centers.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
        </xsd:sequence>
        <xsd:sequence>
          <xsd:element name="dayType" type="DayTypeEnum" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">A day type classification, e.g. Business, Calendar, etc.</xsd:documentation>
            </xsd:annotation>
          </xsd:element>
          <xsd:group ref="BusinessCentersOrReference.model" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation xml:lang="en">Business day calender location, or pointer style reference.</xsd:documentation>
            </xsd:annotation>
          </xsd:group>
        </xsd:sequence>
      </xsd:choice>
    </xsd:sequence>
  </xsd:group>
  <xsd:group name="StrikeOrStrikeReference.model">
    <xsd:choice>
      <xsd:element name="strike" type="FxStrike">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Strike price of the Target.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="strikeReference" type="FxStrikeReference">
        <xsd:annotation>
          <xsd:documentation xml:lang="en">Reference to an existing strike structure within the FX product.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:group>
</xsd:schema>

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