http://www.fpml.org/spec/fpml-4-2-9-lcwd-2
http://www.fpml.org/spec/fpml-4-2-9-lcwd-2
https://www.fpml.org/spec/rec-fpml-4-2-2007-05-14/
http://www.fpml.org/spec/errata/fpml-4-2-9-lcwd-2-errata.html
Document built: Tue 05/18/2021 8:04:45.25
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.
Inherited element(s): (This definition inherits the content defined by the type xsd:string)
Attribute: additionalDataScheme (xsd:anyURI) - optional
<xsd:complexType name="AdditionalData"> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="additionalDataScheme" type="xsd:anyURI" use="optional"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
Abstract base class for Contract notification messages that require Contract Reference only
Inherited element(s): (This definition inherits the content defined by the type NotificationMessage)
contractReference (exactly one occurrence; of the type ContractReference)
party (one or more occurrences; of the type Party)
<xsd:complexType name="ContractReferenceMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> Abstract base class for Contract notification messages that require Contract Reference only </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="NotificationMessage"> <xsd:sequence> <xsd:element name="contractReference" type="ContractReference"/> <xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: conversationIdScheme (xsd:anyURI) - required
<xsd:complexType name="ConversationId"> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="conversationIdScheme" type="xsd:anyURI" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A type defining the basic structure of all FpML messages which is refined by its derived types.
Inherited element(s): (This definition inherits the content defined by the type Document)
<xsd:complexType name="Message" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic structure of all FpML messages which is refined by its derived types. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Document"/> </xsd:complexContent> </xsd:complexType>
The data type used for identifying a message address. It includes a partyIdScheme for keeping the type backward compatible with the PartyId complex type. In the next major version, partyIdScheme attribute will be replaced by a messageAddressScheme attribute.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: partyIdScheme (xsd:anyURI)
<xsd:complexType name="MessageAddress"> <xsd:annotation> <xsd:documentation xml:lang="en"> The data type used for identifying a message address. It includes a partyIdScheme for keeping the type backward compatible with the PartyId complex type. In the next major version, partyIdScheme attribute will be replaced by a messageAddressScheme attribute. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="partyIdScheme" type="xsd:anyURI" default="http://www.fpml.org/ext/iso9362"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A type defining the content model for a generic message header that is refined by its derived classes.
conversationId (zero or one occurrence; of the type ConversationId)
messageId (exactly one occurrence; of the type MessageId)
<xsd:complexType name="MessageHeader" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a generic message header that is refined by its derived classes. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="conversationId" type="ConversationId" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="messageId" type="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within its coding scheme) assigned to the message by its creating party. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
The data type use for message identifiers.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: messageIdScheme (xsd:anyURI) - required
<xsd:complexType name="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> The data type use for message identifiers. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="messageIdScheme" type="xsd:anyURI" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A type defining the content for a standard message sent when a recipient cannot interpret or process an earlier message.
Inherited element(s): (This definition inherits the content defined by the type NotificationMessage)
reason (one or more occurrences; of the type Reason)
additionalData (zero or one occurrence; of the type AdditionalData)
<xsd:complexType name="MessageRejected"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content for a standard message sent when a recipient cannot interpret or process an earlier message. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="NotificationMessage"> <xsd:sequence> <xsd:group ref="Exception.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type defining the basic content for a message sent to inform another system that some 'business event' has occured. Notifications are not expected to be replied to.
Inherited element(s): (This definition inherits the content defined by the type Message)
header (exactly one occurrence; of the type NotificationMessageHeader)
validation (zero or more occurrences; of the type Validation)
<xsd:complexType name="NotificationMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic content for a message sent to inform another system that some 'business event' has occured. Notifications are not expected to be replied to. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="NotificationMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type that refines the generic message header to match the requirements of a NotificationMessage.
Inherited element(s): (This definition inherits the content defined by the type MessageHeader)
inReplyTo (zero or one occurrence; of the type MessageId)
sentBy (exactly one occurrence; of the type MessageAddress)
sendTo (zero or more occurrences; of the type MessageAddress)
copyTo (zero or more occurrences; of the type MessageAddress)
creationTimestamp (exactly one occurrence; of the type xsd:dateTime)
expiryTimestamp (zero or one occurrence; of the type xsd:dateTime)
partyMessageInformation (zero or more occurrences; of the type PartyMessageInformation)
dsig:Signature (zero or more occurrences; defined in an imported schema)
<xsd:complexType name="NotificationMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type that refines the generic message header to match the requirements of a NotificationMessage. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:element name="inReplyTo" type="MessageId" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A copy of the unique message identifier (within it own coding scheme) to which this message is responding. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type defining additional information that may be recorded against a message.
partyReference (exactly one occurrence; of the type PartyReference)
<xsd:complexType name="PartyMessageInformation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining additional information that may be recorded against a message. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partyReference" type="PartyReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Identifies that party that has ownership of this information. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: problemLocationScheme (xsd:anyURI)
<xsd:complexType name="ProblemLocation"> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="problemLocationScheme" type="xsd:anyURI"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A type defining a content model for describing the nature and possible location of a error within a previous message.
reasonCode (exactly one occurrence; of the type ReasonCode)
location (zero or one occurrence; of the type ProblemLocation)
description (zero or one occurrence; of the type xsd:string)
validationRuleId (zero or one occurrence; of the type Validation)
additionalData (zero or more occurrences; of the type AdditionalData)
<xsd:complexType name="Reason"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining a content model for describing the nature and possible location of a error within a previous message. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="reasonCode" type="ReasonCode"> <xsd:annotation> <xsd:documentation xml:lang="en"> A machine interpretable error code. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="location" type="ProblemLocation" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A value indicating the location of the problem within the subject message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="description" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Plain English text describing the associated error condition </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="validationRuleId" type="Validation" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference identifying a rule within a validation scheme </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="additionalData" type="AdditionalData" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Any string of additional data that may help the message processor, for example in a rejection message this might contain a code value or the text of any one of the messages (within a CDATA section). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
Defines a list of machine interpretable error codes.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: reasonCodeScheme (xsd:anyURI)
<xsd:complexType name="ReasonCode"> <xsd:annotation> <xsd:documentation xml:lang="en"> Defines a list of machine interpretable error codes. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="reasonCodeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/reason-code-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A type defining the basic content of a message that requests the receiver to perform some business operation determined by the message type and its content.
Inherited element(s): (This definition inherits the content defined by the type Message)
header (exactly one occurrence; of the type RequestMessageHeader)
validation (zero or more occurrences; of the type Validation)
<xsd:complexType name="RequestMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic content of a message that requests the receiver to perform some business operation determined by the message type and its content. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="RequestMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type refining the generic message header content to make it specific to request messages.
Inherited element(s): (This definition inherits the content defined by the type MessageHeader)
sentBy (exactly one occurrence; of the type MessageAddress)
sendTo (zero or more occurrences; of the type MessageAddress)
copyTo (zero or more occurrences; of the type MessageAddress)
creationTimestamp (exactly one occurrence; of the type xsd:dateTime)
expiryTimestamp (zero or one occurrence; of the type xsd:dateTime)
partyMessageInformation (zero or more occurrences; of the type PartyMessageInformation)
dsig:Signature (zero or more occurrences; defined in an imported schema)
<xsd:complexType name="RequestMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message header content to make it specific to request messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type defining the content model for a message allowing one party to query the status of one or many trades previously sent to another party.
Inherited element(s): (This definition inherits the content defined by the type RequestMessage)
tradeIdentifier (one or more occurrences; of the type TradeIdentifier)
party (one or more occurrences; of the type Party)
<xsd:complexType name="RequestTradeStatus"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a message allowing one party to query the status of one or many trades previously sent to another party. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="RequestMessage"> <xsd:sequence> <xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="party" type="Party" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type refining the generic message content model to make it specific to response messages.
Inherited element(s): (This definition inherits the content defined by the type Message)
header (exactly one occurrence; of the type ResponseMessageHeader)
validation (zero or more occurrences; of the type Validation)
<xsd:complexType name="ResponseMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message content model to make it specific to response messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="ResponseMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type refining the generic message header to make it specific to response messages.
Inherited element(s): (This definition inherits the content defined by the type MessageHeader)
inReplyTo (exactly one occurrence; of the type MessageId)
sentBy (exactly one occurrence; of the type MessageAddress)
sendTo (zero or more occurrences; of the type MessageAddress)
copyTo (zero or more occurrences; of the type MessageAddress)
creationTimestamp (exactly one occurrence; of the type xsd:dateTime)
expiryTimestamp (zero or one occurrence; of the type xsd:dateTime)
partyMessageInformation (zero or more occurrences; of the type PartyMessageInformation)
dsig:Signature (zero or more occurrences; defined in an imported schema)
<xsd:complexType name="ResponseMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message header to make it specific to response messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:element name="inReplyTo" type="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A copy of the unique message identifier (within it own coding scheme) to which this message is responding. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type defining the content model of a response message generated when an operation as requested on a trade unknown to the service.
Inherited element(s): (This definition inherits the content defined by the type ResponseMessage)
tradeIdentifier (exactly one occurrence; of the type fpml:TradeIdentifier)
party (exactly one occurrence; of the type fpml:Party)
<xsd:complexType name="TradeNotFound"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model of a response message generated when an operation as requested on a trade unknown to the service. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="ResponseMessage"> <xsd:sequence> <xsd:choice> <xsd:element name="tradeIdentifier" type="fpml:TradeIdentifier"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="fpml:TradeOrTradeReference.model"/> </xsd:choice> <xsd:element name="party" type="fpml:Party"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type defining the content model for a message normally generated in response to a RequestTradeStatus request.
Inherited element(s): (This definition inherits the content defined by the type ResponseMessage)
tradeStatusItem (one or more occurrences; of the type TradeStatusItem)
party (one or more occurrences; of the type Party)
<xsd:complexType name="TradeStatus"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a message normally generated in response to a RequestTradeStatus request. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="ResponseMessage"> <xsd:sequence> <xsd:element name="tradeStatusItem" type="TradeStatusItem" 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:element name="party" type="Party" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A type used in trade status enquiry messages which relates a trade identifier to its current status value.
tradeIdentifier (exactly one occurrence; of the type TradeIdentifier)
tradeStatusValue (exactly one occurrence; of the type TradeStatusValue)
<xsd:complexType name="TradeStatusItem"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type used in trade status enquiry messages which relates a trade identifier to its current status value. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="tradeIdentifier" type="TradeIdentifier"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="tradeStatusValue" type="TradeStatusValue"> <xsd:annotation> <xsd:documentation xml:lang="en"> The trade status value. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
The type used to hold TradeStatusScheme values.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: tradeStatusScheme (xsd:anyURI)
<xsd:complexType name="TradeStatusValue"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type used to hold TradeStatusScheme values. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="tradeStatusScheme" type="xsd:anyURI"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A model group which has exception elements.
reason (one or more occurrences; of the type Reason)
additionalData (zero or one occurrence; of the type AdditionalData)
<xsd:group name="Exception.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A model group which has exception elements. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="reason" type="Reason" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of the Reason type used to record the nature of any errors associated with a message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="additionalData" type="AdditionalData" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Any string of additional data that may help the message processor, for example in a rejection message this might contain a code value or the text of the original request (within a CDATA section). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
sentBy (exactly one occurrence; of the type MessageAddress)
sendTo (zero or more occurrences; of the type MessageAddress)
copyTo (zero or more occurrences; of the type MessageAddress)
creationTimestamp (exactly one occurrence; of the type xsd:dateTime)
expiryTimestamp (zero or one occurrence; of the type xsd:dateTime)
partyMessageInformation (zero or more occurrences; of the type PartyMessageInformation)
dsig:Signature (zero or more occurrences; defined in an imported schema)
<xsd:group name="MessageHeader.model"> <xsd:sequence> <xsd:element name="sentBy" type="MessageAddress"> <xsd:annotation> <xsd:documentation xml:lang="en"> The unique identifier (within its coding scheme) for the originator of a message instance. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sendTo" type="MessageAddress" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within its coding scheme) indicating an intended recipent of a message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="copyTo" type="MessageAddress" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="creationTimestamp" type="xsd:dateTime"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time (on the source system) when this message instance was created. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time (on the source system) when this message instance will be considered expired. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="partyMessageInformation" type="PartyMessageInformation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Additional message information that may be provided by each involved party. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:group>
<xsd:schema targetNamespace="http://www.fpml.org/2005/FpML-4-2" elementFormDefault="qualified" attributeFormDefault="unqualified" version="$Revision: 1091 $"> <xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/> <xsd:include schemaLocation="fpml-doc-4-2.xsd"/> <xsd:complexType name="AdditionalData"> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="additionalDataScheme" type="xsd:anyURI" use="optional"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="ContractReferenceMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> Abstract base class for Contract notification messages that require Contract Reference only </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="NotificationMessage"> <xsd:sequence> <xsd:element name="contractReference" type="ContractReference"/> <xsd:element name="party" type="Party" minOccurs="2" maxOccurs="unbounded"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ConversationId"> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="conversationIdScheme" type="xsd:anyURI" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="Message" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic structure of all FpML messages which is refined by its derived types. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Document"/> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="MessageAddress"> <xsd:annotation> <xsd:documentation xml:lang="en"> The data type used for identifying a message address. It includes a partyIdScheme for keeping the type backward compatible with the PartyId complex type. In the next major version, partyIdScheme attribute will be replaced by a messageAddressScheme attribute. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="partyIdScheme" type="xsd:anyURI" default="http://www.fpml.org/ext/iso9362"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="MessageHeader" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a generic message header that is refined by its derived classes. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="conversationId" type="ConversationId" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier created by the initiator of a conversation allowing a group of message exchanges to be recognized as related. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="messageId" type="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within its coding scheme) assigned to the message by its creating party. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> The data type use for message identifiers. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="messageIdScheme" type="xsd:anyURI" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="MessageRejected"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content for a standard message sent when a recipient cannot interpret or process an earlier message. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="NotificationMessage"> <xsd:sequence> <xsd:group ref="Exception.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="NotificationMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic content for a message sent to inform another system that some 'business event' has occured. Notifications are not expected to be replied to. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="NotificationMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="NotificationMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type that refines the generic message header to match the requirements of a NotificationMessage. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:element name="inReplyTo" type="MessageId" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A copy of the unique message identifier (within it own coding scheme) to which this message is responding. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="PartyMessageInformation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining additional information that may be recorded against a message. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partyReference" type="PartyReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Identifies that party that has ownership of this information. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="ProblemLocation"> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="problemLocationScheme" type="xsd:anyURI"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="Reason"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining a content model for describing the nature and possible location of a error within a previous message. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="reasonCode" type="ReasonCode"> <xsd:annotation> <xsd:documentation xml:lang="en"> A machine interpretable error code. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="location" type="ProblemLocation" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A value indicating the location of the problem within the subject message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="description" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Plain English text describing the associated error condition </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="validationRuleId" type="Validation" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference identifying a rule within a validation scheme </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="additionalData" type="AdditionalData" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Any string of additional data that may help the message processor, for example in a rejection message this might contain a code value or the text of any one of the messages (within a CDATA section). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="ReasonCode"> <xsd:annotation> <xsd:documentation xml:lang="en"> Defines a list of machine interpretable error codes. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="reasonCodeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/reason-code-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="RequestMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the basic content of a message that requests the receiver to perform some business operation determined by the message type and its content. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="RequestMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="RequestMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message header content to make it specific to request messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="RequestTradeStatus"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a message allowing one party to query the status of one or many trades previously sent to another party. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="RequestMessage"> <xsd:sequence> <xsd:element name="tradeIdentifier" type="TradeIdentifier" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="party" type="Party" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ResponseMessage" abstract="true"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message content model to make it specific to response messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Message"> <xsd:sequence> <xsd:element name="header" type="ResponseMessageHeader"/> <xsd:group ref="Validation.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ResponseMessageHeader"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type refining the generic message header to make it specific to response messages. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="MessageHeader"> <xsd:sequence> <xsd:element name="inReplyTo" type="MessageId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A copy of the unique message identifier (within it own coding scheme) to which this message is responding. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="MessageHeader.model"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="TradeNotFound"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model of a response message generated when an operation as requested on a trade unknown to the service. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="ResponseMessage"> <xsd:sequence> <xsd:choice> <xsd:element name="tradeIdentifier" type="fpml:TradeIdentifier"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="fpml:TradeOrTradeReference.model"/> </xsd:choice> <xsd:element name="party" type="fpml:Party"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="TradeStatus"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining the content model for a message normally generated in response to a RequestTradeStatus request. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="ResponseMessage"> <xsd:sequence> <xsd:element name="tradeStatusItem" type="TradeStatusItem" 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:element name="party" type="Party" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An entity having a role in a trade lifecycle. For example, the principal parties obligated to make payments from time to time during the term of the trade, but may include other parties involved in, or incidental to, the trade, such as parties acting in the role of novation transferor/transferee, broker, calculation agent, etc. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="TradeStatusItem"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type used in trade status enquiry messages which relates a trade identifier to its current status value. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="tradeIdentifier" type="TradeIdentifier"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of a unique trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="tradeStatusValue" type="TradeStatusValue"> <xsd:annotation> <xsd:documentation xml:lang="en"> The trade status value. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="TradeStatusValue"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type used to hold TradeStatusScheme values. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="tradeStatusScheme" type="xsd:anyURI"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:group name="Exception.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A model group which has exception elements. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="reason" type="Reason" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> An instance of the Reason type used to record the nature of any errors associated with a message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="additionalData" type="AdditionalData" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Any string of additional data that may help the message processor, for example in a rejection message this might contain a code value or the text of the original request (within a CDATA section). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="MessageHeader.model"> <xsd:sequence> <xsd:element name="sentBy" type="MessageAddress"> <xsd:annotation> <xsd:documentation xml:lang="en"> The unique identifier (within its coding scheme) for the originator of a message instance. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sendTo" type="MessageAddress" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within its coding scheme) indicating an intended recipent of a message. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="copyTo" type="MessageAddress" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier (within the specified coding scheme) giving the details of some party to whom a copy of this message will be sent for reference. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="creationTimestamp" type="xsd:dateTime"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time (on the source system) when this message instance was created. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="expiryTimestamp" type="xsd:dateTime" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time (on the source system) when this message instance will be considered expired. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="partyMessageInformation" type="PartyMessageInformation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Additional message information that may be provided by each involved party. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="dsig:Signature" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:group> </xsd:schema>