<!--
== Copyright (c) 2002-2007. 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="http://www.fpml.org/2007/FpML-4-4" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:fpml="http://www.fpml.org/2007/FpML-4-4" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" ecore:nsPrefix="fpml" ecore:package="org.fpml" ecore:documentRoot="FpML" targetNamespace="http://www.fpml.org/2007/FpML-4-4" version="$Revision: 2350 $" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xsd:include schemaLocation="fpml-msg-4-4.xsd" />
<xsd:include schemaLocation="fpml-valuation-4-4.xsd" />
<xsd:complexType name="RequestPositionReport">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type defining the content model for a message requesting a position report .</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="RequestMessage">
<xsd:sequence>
<xsd:element name="asOfDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The date for which this request desires positions and valuations.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:choice>
<xsd:element name="dataSetName" type="xsd:normalizedString">
<xsd:annotation>
<xsd:documentation xml:lang="en">The name of the data set (portfolio, product type, etc.) that this request corresponds to. Describes the desired report.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="requestedPositions" type="RequestedPositions">
<xsd:annotation>
<xsd:documentation xml:lang="en">The name of the data set (portfolio, product type, etc.) that this request corresponds to. Describes the desired report.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element name="party" type="Party" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="PortfolioValuationItem">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type used in valuation enquiry messages which relates a portfolio to its trades and current value.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element ref="portfolio">
<xsd:annotation>
<xsd:documentation xml:lang="en">Portfolio identifier</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="tradeValuationItem" type="TradeValuationItem" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">Zero or more trade valuation items.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element ref="valuationSet" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The portfolio valuation.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PositionReport">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type defining the content model for a message allowing one party to send a report consisting of positions.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="NotificationMessage">
<xsd:sequence>
<xsd:element name="asOfDate" type="IdentifiedDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The date for which this document reports positions and valuations.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="dataSetName" type="xsd:string" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The name of the data set (portfolio, product type, etc.) that this report corresponds to. Used to help document the contents of the report.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="quotationCharacteristics" type="QuotationCharacteristics" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The default quotation characteristics for this document (e.g. currency, location). Currency must be specified; other fields may be specified.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="position" type="Position" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">The positions included in the position report.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="party" type="Party" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">The parties whose trades are included included in this position report.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RequestedPositions">
<xsd:annotation>
<xsd:documentation xml:lang="en">A definition of the positions that are requested.</xsd:documentation>
</xsd:annotation>
<xsd:choice>
<xsd:element name="queryPortfolio" type="QueryPortfolio">
<xsd:annotation>
<xsd:documentation xml:lang="en">The desired query portfolio.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:group ref="PositionIdAndVersion.model" />
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="RequestValuationReport">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type defining the content model for a message allowing one party a report containing valuations of one or many existing trades.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="RequestMessage">
<xsd:sequence>
<xsd:element name="party" type="Party" maxOccurs="unbounded" />
<xsd:element ref="market" minOccurs="0" />
<xsd:element name="portfolioValuationItem" type="PortfolioValuationItem" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">An instance of a unique portfolio valuation.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="tradeValuationItem" type="TradeValuationItem" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">An instance of a unique trade valuation.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="TradeValuationItem">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type used in trade valuation enquiry messages which relates a trade identifier to its current value.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:choice minOccurs="0">
<xsd:element name="partyTradeIdentifier" type="PartyTradeIdentifier" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">One or more trade identifiers needed to uniquely identify a trade.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="trade" type="Trade">
<xsd:annotation>
<xsd:documentation xml:lang="en">Fully-described trades whose values are reported.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element ref="valuationSet">
<xsd:annotation>
<xsd:documentation xml:lang="en">The trade valuation.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ValuationReport">
<xsd:annotation>
<xsd:documentation xml:lang="en">A type defining the content model for a message normally generated in response to a RequestValuationReport request.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="NotificationMessage">
<xsd:sequence>
<xsd:element name="party" type="Party" maxOccurs="unbounded" />
<xsd:element ref="market" minOccurs="0" />
<xsd:element name="portfolioValuationItem" type="PortfolioValuationItem" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">An instance of a unique portfolio valuation.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="tradeValuationItem" type="TradeValuationItem" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">A collection of data values describing the state of the given trade.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="portfolio" type="Portfolio">
<xsd:annotation>
<xsd:documentation xml:lang="en">Global portfolio element used as a basis for a substitution group.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="queryPortfolio" type="QueryPortfolio" substitutionGroup="portfolio">
<xsd:annotation>
<xsd:documentation xml:lang="en">Global element used to substitute for "portfolio".</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:schema>
|