FpML 4.3 Trial Recommendation

14 December 2007

Reporting Component Definitions

Version: 4.3

This Version:

http://www.fpml.org/spec/fpml-4-3-9-tr-1

Latest Version:

http://www.fpml.org/spec/fpml-4-3-9-tr-1

Previous Version:

http://www.fpml.org/spec/2007/lcwd-fpml-4-3-2007-10-30/

Errata for this Version:

http://www.fpml.org/spec/fpml-4-3-9-tr-1/html/fpml-4-3-errata.html

Document built: Mon 01/14/2008 12:55:43.69


Copyright (c) 1999 - 2006 by INTERNATIONAL SWAPS AND DERIVATIVES ASSOCIATION, INC.
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.html



The FpML specifications provided are without warranty of any kind, either expressed or implied, including, without limitation, warranties that FpML, or the FpML specifications are free of defects, merchantable, fit for a particular purpose or non-infringing. The entire risk as to the quality and performance of the specifications is with you. Should any of the FpML specifications prove defective in any respect, you assume the cost of any necessary servicing or repair. Under no circumstances and under no legal theory, whether tort (including negligence), contract, or otherwise, shall ISDA, any of its members, or any distributor of documents or software containing any of the FpML specifications, or any supplier of any of such parties, be liable to you or any other person for any indirect, special, incidental, or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, even if such party shall have been informed of the possibility of such damages.


Contents

Global Simple Types

Global Complex Types
PortfolioValuationItem
PositionReport
RequestedPositions
RequestPositionReport
RequestValuationReport
TradeValuationItem
ValuationReport

Global Elements
portfolio
queryPortfolio

Groups

Schema Listing

Global Simple Types

The schema does not contain any global simple types.


Global Complex Types

PortfolioValuationItem

Description:

A type used in valuation enquiry messages which relates a portfolio to its trades and current value.

Figure:

Contents:

Portfolio identifier portfolio (exactly one occurrence; of the type Portfolio)

tradeValuationItem (zero or more occurrences; of the type TradeValuationItem)

The portfolio valuation. valuationSet (zero or one occurrence; of the type ValuationSet)

Used by:

Schema Fragment:

<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>

PositionReport

Description:

A type defining the content model for a message allowing one party to send a report consisting of positions.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type NotificationMessage)

asOfDate (zero or one occurrence; of the type IdentifiedDate)

dataSetName (zero or one occurrence; of the type xsd:string)

quotationCharacteristics (zero or one occurrence; of the type QuotationCharacteristics)

position (one or more occurrences; of the type Position)

party (one or more occurrences; of the type Party)

Used by:

Extension of:

Schema Fragment:

<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>

RequestedPositions

Description:

A definition of the positions that are requested.

Figure:

Contents:


There can be one occurance of the following structure; Choice of either

Used by:

Schema Fragment:

<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>

RequestPositionReport

Description:

A type defining the content model for a message requesting a position report .

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type RequestMessage)

asOfDate (zero or one occurrence; with locally defined content) ...


There can be one occurance of the following structure; Choice of either

Or


party (zero or more occurrences; of the type Party)

Used by:

Extension of:

Schema Fragment:

<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>

RequestValuationReport

Description:

A type defining the content model for a message allowing one party a report containing valuations of one or many existing trades.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type RequestMessage)

party (one or more occurrences; of the type Party)

market (zero or one occurrence; of the type Market)

portfolioValuationItem (zero or more occurrences; of the type PortfolioValuationItem)

tradeValuationItem (zero or more occurrences; of the type TradeValuationItem)

Used by:

Extension of:

Schema Fragment:

<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>

TradeValuationItem

Description:

A type used in trade valuation enquiry messages which relates a trade identifier to its current value.

Figure:

Contents:


There can be zero or one occurance of the following structure; Choice of either

Or


The trade valuation. valuationSet (exactly one occurrence; of the type ValuationSet)

Used by:

Schema Fragment:

<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>

ValuationReport

Description:

A type defining the content model for a message normally generated in response to a RequestValuationReport request.

Figure:

Contents:

Inherited element(s): (This definition inherits the content defined by the type NotificationMessage)

party (one or more occurrences; of the type Party)

market (zero or one occurrence; of the type Market)

portfolioValuationItem (zero or more occurrences; of the type PortfolioValuationItem)

tradeValuationItem (zero or more occurrences; of the type TradeValuationItem)

Used by:

Extension of:

Schema Fragment:

<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>

Global Elements

portfolio

Description:

Global portfolio element used as a basis for a substitution group.

Figure:

Contents:

Element portfolio is defined by the complex type Portfolio

Used by:

Substituted by:

Schema Fragment:

<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>

queryPortfolio

Description:

Global element used to substitute for "portfolio".

Figure:

Contents:

Element queryPortfolio is defined by the complex type QueryPortfolio

Used by:

Schema Fragment:

<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>

Groups

The schema does not contain any groups.


Full XML Schema

<xsd:schema ecore:nsPrefix="fpml" ecore:package="org.fpml" ecore:documentRoot="FpML" targetNamespace="http://www.fpml.org/2007/FpML-4-3" version="$Revision: 2351 $" attributeFormDefault="unqualified" elementFormDefault="qualified">
  <xsd:include schemaLocation="fpml-msg-4-3.xsd"/>
  <xsd:include schemaLocation="fpml-valuation-4-3.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>