BusinessApplicationHeaderV03

head.001.001.03

The Business Layer deals with Business Messages. The behaviour of the Business Messages is fully described by the Business Transaction and the structure of the Business Messages is fully described by the Message Definitions and related Message Rules, Rules and Market Practices. All of which are registered in the ISO 20022 Repository. A single new Business Message (with its accompagnying business application header) is created - by the sending MessagingEndpoint - for each business event; that is each interaction in a Business Transaction. A Business Message adheres to the following principles: " A Business Message (and its business application header) must not contain information about the Message Transport System or the mechanics or mechanism of message sending, transportation, or receipt. " A Business Message must be comprehensible outside of the context of the Transport Message. That is the Business Message must not require knowledge of the Transport Message to be understood. " A Business Message may contain headers, footers, and envelopes that are meaningful for the business. When present, they are treated as any other message content, which means that they are considered part of the Message Definition of the Business Message and as such will be part of the ISO 20022 Repository. " A Business Message refers to Business Actors by their Name. Each instance of a Business Actor has one Name. The Business Actor must not be referred to in the Transport Layer. Specific usage of this BusinessMessageHeader may be defined by the relevant SEG.

Message Construction

Every ISO20022 message has at the highest level what we call ‘building blocks’. Because the message is constructed as immutable records, the association is by composition. Below you can see the relationship between the message and its constituent building blocks: For comparison, see the ISO20022 official specification

classDiagram
     direction LR
%% BusinessApplicationHeaderV03 recursion level 0 with max 0
class BusinessApplicationHeaderV03{
    CharacterSet UnicodeChartsCode
    BusinessMessageIdentifier IsoMax35Text
    MessageDefinitionIdentifier IsoMax35Text
    BusinessService IsoMax35Text
    CreationDate IsoISODateTime
    BusinessProcessingDate IsoISODateTime
    CopyDuplicate CopyDuplicate1Code
    PossibleDuplicate IsoYesNoIndicator
    Priority BusinessMessagePriorityCode
}
BusinessApplicationHeaderV03 *-- "1..1" IParty44Choice : From
BusinessApplicationHeaderV03 *-- "1..1" IParty44Choice : To
BusinessApplicationHeaderV03 *-- "0..1" ImplementationSpecification1 : MarketPractice
BusinessApplicationHeaderV03 *-- "0..1" IsoSignatureEnvelope : Signature
BusinessApplicationHeaderV03 *-- "0..1" BusinessApplicationHeader7 : Related
  

Now, we will zero-in one-by-one on each of these building blocks.

CharacterSet building block

Contains the character set of the text-based elements used in the Business Message. codelist containing the names of the UNICODE code block name as specified on http://unicode.org/Public/UNIDATA/Blocks.txt. For comparison, see the ISO20022 official specification This message is declared as UnicodeChartsCode in the ISO specification. In our implementation, it is represented in source code as UnicodeChartsCode. Due to global using directives, it is treated as a System.String by the compiler and runtime.

From building block

The sending MessagingEndpoint that has created this Business Message for the receiving MessagingEndpoint that will process this Business Message.

Note the sending MessagingEndpoint might be different from the sending address potentially contained in the transport header (as defined in the transport layer). Identification of a person, an organisation or a financial institution. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% IParty44Choice recursion level 0 with max 1
  

Party44Choice members

Member name Description Data Type / Multiplicity

To building block

The MessagingEndpoint designated by the sending MessagingEndpoint to be the recipient who will ultimately process this Business Message.

Note the receiving MessagingEndpoint might be different from the receiving address potentially contained in the transport header (as defined in the transport layer). Identification of a person, an organisation or a financial institution. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% IParty44Choice recursion level 0 with max 1
  

Party44Choice members

Member name Description Data Type / Multiplicity

BusinessMessageIdentifier building block

Unambiguously identifies the Business Message to the MessagingEndpoint that has created the Business Message. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

MessageDefinitionIdentifier building block

The Message Definition Identifier of the Business Message instance with which this Business Application Header instance is associated. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

BusinessService building block

Specifies the business service agreed between the two MessagingEndpoints under which rules this Business Message is exchanged. To be used when there is a choice of processing services or processing service levels.

Example: “marketx.hvps.01” and “marketx.xbdr.01” might be used to indicate that the associated messages are subject to different processing levels for domestic high value payments versus cross-border payments within the same market practice. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

MarketPractice building block

Specifies the market practice to which the message conforms. The market practices are a set of rules agreed between parties that restricts the usage of the messages in order to achieve better STP (Straight Through Processing) rates. A market practice specification may also extend the underlying message specification by using extensions or supplementary data of this underlying message. Identifies the implementation specification to which the ISO 20022 message conforms. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ImplementationSpecification1 recursion level 0 with max 1
class ImplementationSpecification1{
    Registry IsoMax350Text
    Identification IsoMax2048Text
}
  

ImplementationSpecification1 members

Member name Description Data Type / Multiplicity
Registry Name of the implementation specification registry in which the implementation specification of the ISO 20022 message is maintained. For example, “MyStandards”. IsoMax350Text - Required 1..1
Identification Identifier which unambiguously identifies, within the implementation specification registry, the implementation specification to which the ISO 20022 message is compliant. This can be done via a URN. It can also contain a version number or date. For instance, “2018-01-01 – Version 2” or “urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66”. IsoMax2048Text - Required 1..1

CreationDate building block

Date and time when this Business Message (header) was created. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in “XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004” which is aligned with ISO 8601. Note on the time format:

  1. beginning / end of calendar day 00:00:00 = the beginning of a calendar day 24:00:00 = the end of a calendar day
  2. fractions of second in time format Decimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed. For comparison, see the ISO20022 official specification This message is declared as ISODateTime in the ISO specification. In our implementation, it is represented in source code as IsoISODateTime. Due to global using directives, it is treated as a System.DateTime by the compiler and runtime.

BusinessProcessingDate building block

Processing date and time indicated by the sender for the receiver of the business message. This date may be different from the date and time provided in the CreationDate.

Usage: Market practice or bilateral agreement should specify how this element should be used. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ), local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm), or local time format (YYYY-MM-DDThh:mm:ss.sss). These representations are defined in “XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004” which is aligned with ISO 8601. Note on the time format:

  1. beginning / end of calendar day 00:00:00 = the beginning of a calendar day 24:00:00 = the end of a calendar day
  2. fractions of second in time format Decimal fractions of seconds may be included. In this case, the involved parties shall agree on the maximum number of digits that are allowed. For comparison, see the ISO20022 official specification This message is declared as ISODateTime in the ISO specification. In our implementation, it is represented in source code as IsoISODateTime. Due to global using directives, it is treated as a System.DateTime by the compiler and runtime.

CopyDuplicate building block

Indicates whether the message is a Copy, a Duplicate or a copy of a duplicate of a previously sent ISO 20022 Message. Specifies if this document is a copy, a duplicate, or a duplicate of a copy. For comparison, see the ISO20022 official specification This message is declared as CopyDuplicate1Code in the ISO specification. In our implementation, it is represented in source code as CopyDuplicate1Code. Due to global using directives, it is treated as a System.String by the compiler and runtime.

PossibleDuplicate building block

Flag indicating if the Business Message exchanged between the MessagingEndpoints is possibly a duplicate. If the receiving MessagingEndpoint did not receive the original, then this Business Message should be processed as if it were the original.

If the receiving MessagingEndpoint did receive the original, then it should perform necessary actions to avoid processing this Business Message again.

This will guarantee business idempotent behaviour.

NOTE: this is named “PossResend” in FIX - this is an application level resend not a network level retransmission. Indicates a “Yes” or “No” type of answer for an element. For comparison, see the ISO20022 official specification This message is declared as YesNoIndicator in the ISO specification. In our implementation, it is represented in source code as IsoYesNoIndicator. Due to global using directives, it is treated as a System.String by the compiler and runtime.

Priority building block

Relative indication of the processing precedence of the message over a (set of) Business Messages with assigned priorities. Specifies the priority levels for the BusinessMessage. The different priorities are typically user / service / implementation dependent. The semantics of the different values for a Mesage (Set) need to be defined by the relevant user community (SEG.). For comparison, see the ISO20022 official specification This message is declared as BusinessMessagePriorityCode in the ISO specification. In our implementation, it is represented in source code as BusinessMessagePriorityCode. Due to global using directives, it is treated as a System.String by the compiler and runtime.

Signature building block

Contains the digital signature of the Business Entity authorised to sign this Business Message. The W3C XML Schema that specifies following standard signature: XML Signature Syntax and Processing (Second Edition) W3C Recommendation 10 June 2008 http://www.w3.org/TR/2008/REC-xmldsig-core-20080610/. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% IsoSignatureEnvelope recursion level 0 with max 1
  

SignatureEnvelope members

Member name Description Data Type / Multiplicity

Specifies the Business Application Header(s) of the Business Message(s) to which this Business Message relates. Can be used when replying to a query; can also be used when canceling or amending. Specifies the Business Application Header of the Business Message. Can be used when replying to a query; can also be used when canceling or amending. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% BusinessApplicationHeader7 recursion level 0 with max 1
class BusinessApplicationHeader7{
    CharacterSet UnicodeChartsCode
    BusinessMessageIdentifier IsoMax35Text
    MessageDefinitionIdentifier IsoMax35Text
    BusinessService IsoMax35Text
    CreationDate IsoISODateTime
    BusinessProcessingDate IsoISODateTime
    CopyDuplicate CopyDuplicate1Code
    PossibleDuplicate IsoYesNoIndicator
    Priority BusinessMessagePriorityCode
}
BusinessApplicationHeader7 *-- "1..1" IParty44Choice : From
BusinessApplicationHeader7 *-- "1..1" IParty44Choice : To
BusinessApplicationHeader7 *-- "0..1" ImplementationSpecification1 : MarketPractice
BusinessApplicationHeader7 *-- "0..1" IsoSignatureEnvelope : Signature
%% IParty44Choice recursion level 1 with max 1
%% IParty44Choice recursion level 1 with max 1
%% ImplementationSpecification1 recursion level 1 with max 1
class ImplementationSpecification1{
    Registry IsoMax350Text
    Identification IsoMax2048Text
}
%% IsoSignatureEnvelope recursion level 1 with max 1
  

BusinessApplicationHeader7 members

Member name Description Data Type / Multiplicity
CharacterSet Contains the character set of the text-based elements used in the Business Message. UnicodeChartsCode - Optional 0..1
From The sending MessagingEndpoint that has created this Business Message for the receiving MessagingEndpoint that will process this Business Message. Note the sending MessagingEndpoint might be different from the sending address potentially contained in the transport header (as defined in the transport layer). IParty44Choice - Required 1..1
To The MessagingEndpoint designated by the sending MessagingEndpoint to be the recipient who will ultimately process this Business Message. Note the receiving MessagingEndpoint might be different from the receiving address potentially contained in the transport header (as defined in the transport layer). IParty44Choice - Required 1..1
BusinessMessageIdentifier Unambiguously identifies the Business Message to the MessagingEndpoint that has created the Business Message. IsoMax35Text - Required 1..1
MessageDefinitionIdentifier The Message Definition Identifier of the Business Message instance with which this Business Application Header instance is associated. IsoMax35Text - Required 1..1
BusinessService Specifies the business service agreed between the two MessagingEndpoints under which rules this Business Message is exchanged. To be used when there is a choice of processing services or processing service levels. Example: “marketx.hvps.01” and “marketx.xbdr.01” might be used to indicate that the associated messages are subject to different processing levels for domestic high value payments versus cross-border payments within the same market practice. IsoMax35Text - Optional 0..1
MarketPractice Specifies the market practice to which the message conforms. The market practices are a set of rules agreed between parties that restricts the usage of the messages in order to achieve better STP (Straight Through Processing) rates. A market practice specification may also extend the underlying message specification by using extensions or supplementary data of this underlying message. ImplementationSpecification1 - Optional 0..1
CreationDate Date and time when this Business Message (header) was created. Note Times must be normalized, using the “Z” annotation. IsoISODateTime - Required 1..1
BusinessProcessingDate Processing date and time indicated by the sender for the receiver of the business message. This date may be different from the date and time provided in the CreationDate. Usage: Market practice or bilateral agreement should specify how this element should be used. IsoISODateTime - Optional 0..1
CopyDuplicate Indicates whether the message is a Copy, a Duplicate or a copy of a duplicate of a previously sent ISO 20022 Message. CopyDuplicate1Code - Optional 0..1
PossibleDuplicate Flag indicating if the Business Message exchanged between the MessagingEndpoints is possibly a duplicate. If the receiving MessagingEndpoint did not receive the original, then this Business Message should be processed as if it were the original. If the receiving MessagingEndpoint did receive the original, then it should perform necessary actions to avoid processing this Business Message again. This will guarantee business idempotent behaviour. NOTE: this is named “PossResend” in FIX - this is an application level resend not a network level retransmission. IsoYesNoIndicator - Optional 0..1
Priority Relative indication of the processing precedence of the message over a (set of) Business Messages with assigned priorities. BusinessMessagePriorityCode - Optional 0..1
Signature Contains the digital signature of the Business Entity authorised to sign this Business Message. IsoSignatureEnvelope - Optional 0..1

Extensibility and generalization considerations

To facilitate generalized design patterns in the system, the BusinessApplicationHeaderV03 implementation follows a specific implementaiton pattern. First of all, BusinessApplicationHeaderV03 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, BusinessApplicationHeaderV03Document implements IOuterDocument. Because BusinessApplicationHeaderV03 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type BusinessApplicationHeaderV03.

classDiagram
    class IOuterRecord
    BusinessApplicationHeaderV03 --|> IOuterRecord : Implements
    BusinessApplicationHeaderV03Document --|> IOuterDocument~BusinessApplicationHeaderV03~ : Implements
    class IOuterDocument~BusinessApplicationHeaderV03~ {
        BusinessApplicationHeaderV03 Message
     }
  

Document wrapper for serialization

The only real purpose BusinessApplicationHeaderV03Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:head.001.001.03’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using BusinessApplicationHeaderV03.ToDocument() method. The returned BusinessApplicationHeaderV03Document value will serialize correctly according to ISO 20022 standards.

classDiagram
    BusinessApplicationHeaderV03Document *-- BusinessApplicationHeaderV03 : Document
  

Sample of message format

This is an abbreviated version of what the message should look like.

<Document xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.03">
    <AppHdr>
        <CharSet>
            <!-- CharacterSet inner content -->
        </CharSet>
        <Fr>
            <!-- From inner content -->
        </Fr>
        <To>
            <!-- To inner content -->
        </To>
        <BizMsgIdr>
            <!-- BusinessMessageIdentifier inner content -->
        </BizMsgIdr>
        <MsgDefIdr>
            <!-- MessageDefinitionIdentifier inner content -->
        </MsgDefIdr>
        <BizSvc>
            <!-- BusinessService inner content -->
        </BizSvc>
        <MktPrctc>
            <!-- MarketPractice inner content -->
        </MktPrctc>
        <CreDt>
            <!-- CreationDate inner content -->
        </CreDt>
        <BizPrcgDt>
            <!-- BusinessProcessingDate inner content -->
        </BizPrcgDt>
        <CpyDplct>
            <!-- CopyDuplicate inner content -->
        </CpyDplct>
        <PssblDplct>
            <!-- PossibleDuplicate inner content -->
        </PssblDplct>
        <Prty>
            <!-- Priority inner content -->
        </Prty>
        <Sgntr>
            <!-- Signature inner content -->
        </Sgntr>
        <Rltd>
            <!-- Related inner content -->
        </Rltd>
    </AppHdr>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_MQFE8fmsEeuM-bZFEQa_yw"
  previousVersion="_6wX5Uch7Eei73Ywzx0CAAg"
  name="BusinessApplicationHeaderV03"
  definition="The Business Layer deals with Business Messages. The behaviour of the Business Messages is fully described by the Business Transaction and the structure of the Business Messages is fully described by the Message Definitions and related Message Rules, Rules and Market Practices. All of which are registered in the ISO 20022 Repository.&#xD;&#xA;A single new Business Message (with its accompagnying business application header) is created - by the sending MessagingEndpoint - for each business event; that is each interaction in a Business Transaction. A Business Message adheres to the following principles:&#xD;&#xA;&quot; A Business Message (and its business application header) must not contain information about the Message Transport System or the mechanics or mechanism of message sending, transportation, or receipt. &#xD;&#xA;&quot; A Business Message must be comprehensible outside of the context of the Transport Message. That is the Business Message must not require knowledge of the Transport Message to be understood.&#xD;&#xA;&quot; A Business Message may contain headers, footers, and envelopes that are meaningful for the business. When present, they are treated as any other message content, which means that they are considered part of the Message Definition of the Business Message and as such will be part of the ISO 20022 Repository.&#xD;&#xA;&quot; A Business Message refers to Business Actors by their Name. Each instance of a Business Actor has one Name. The Business Actor must not be referred to in the Transport Layer.&#xD;&#xA;Specific usage of this BusinessMessageHeader may be defined by the relevant SEG."
  registrationStatus="Registered"
  messageSet="_PgdWwE5QEeqUWMKO7k5sCQ"
  xmlTag="AppHdr"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <constraint
    xmi:id="_MQFE8_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5U8h7Eei73Ywzx0CAAg"
    name="RelatedPresentWhenCopyDupl"
    definition="Related MUST contain the relevant BusinessMessageHeader elements of the BusinessMessage to which this BusinessMessage relates.&#xD;&#xA;&#xD;&#xA;If CopyDuplicate is present, then Related MUST be present."
    registrationStatus="Provisionally Registered"
    expression="&lt;RuleDefinition&gt;&lt;ComplexRule xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:type=&quot;ComplexRule&quot;&gt;&lt;mustBe&gt;&lt;connector&gt;AND&lt;/connector&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/Related[1]&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/mustBe&gt;&lt;onCondition&gt;&lt;connector&gt;AND&lt;/connector&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/CopyDuplicate&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <messageBuildingBlock
    xmi:id="_MQO18fmsEeuM-bZFEQa_yw"
    previousVersion="_6wX5Vch7Eei73Ywzx0CAAg"
    name="CharacterSet"
    definition="Contains the character set of the text-based elements used in the Business Message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CharSet"
    simpleType="_YghNkNp-Ed-ak6NoX_4Aeg_728068642" />
  <messageBuildingBlock
    xmi:id="_MQO18_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5V8h7Eei73Ywzx0CAAg"
    name="From"
    definition="The sending MessagingEndpoint that has created this Business Message for the receiving MessagingEndpoint that will process this Business Message.&#xD;&#xA;&#xD;&#xA;Note&#x9;the sending MessagingEndpoint might be different from the sending address potentially contained in the transport header (as defined in the transport layer)."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="Fr"
    complexType="_9vWUh249EeiU9cctagi5ow" />
  <messageBuildingBlock
    xmi:id="_MQO19fmsEeuM-bZFEQa_yw"
    previousVersion="_6wX5Wch7Eei73Ywzx0CAAg"
    name="To"
    definition="The MessagingEndpoint designated by the sending MessagingEndpoint to be the recipient who will ultimately process this Business Message.&#xD;&#xA;&#xD;&#xA;Note the receiving MessagingEndpoint might be different from the receiving address potentially contained in the transport header (as defined in the transport layer)."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="To"
    complexType="_9vWUh249EeiU9cctagi5ow" />
  <messageBuildingBlock
    xmi:id="_MQO19_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5W8h7Eei73Ywzx0CAAg"
    name="BusinessMessageIdentifier"
    definition="Unambiguously identifies the Business Message to the MessagingEndpoint that has created the Business Message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="BizMsgIdr"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
  <messageBuildingBlock
    xmi:id="_MQO1-fmsEeuM-bZFEQa_yw"
    previousVersion="_6wX5Xch7Eei73Ywzx0CAAg"
    name="MessageDefinitionIdentifier"
    definition="The Message Definition Identifier of the Business Message instance with which this Business Application Header instance is associated."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="MsgDefIdr"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446">
    <example>camt.003.001.07</example>
  </messageBuildingBlock>
  <messageBuildingBlock
    xmi:id="_MQO1-_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5X8h7Eei73Ywzx0CAAg"
    name="BusinessService"
    definition="Specifies the business service agreed between the two MessagingEndpoints under which rules this Business Message is exchanged.&#xD;&#xA;To be used when there is a choice of processing services or processing service levels.&#xD;&#xA;&#xD;&#xA;Example: &#xD;&#xA;“marketx.hvps.01” and “marketx.xbdr.01” might be used to indicate that the associated messages are subject to different processing levels for domestic high value payments versus cross-border payments  within the same market practice."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="BizSvc"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
  <messageBuildingBlock
    xmi:id="_MQO1_fmsEeuM-bZFEQa_yw"
    previousVersion="_v5qgkMieEei73Ywzx0CAAg"
    name="MarketPractice"
    definition="Specifies the market practice to which the message conforms. The market practices are a set of rules agreed between parties that restricts the usage of the messages in order to achieve better STP (Straight Through Processing) rates.&#xD;&#xA;A market practice specification may also extend the underlying message specification by using extensions or supplementary data of this underlying message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="MktPrctc"
    complexType="_6Pu8gMieEei73Ywzx0CAAg" />
  <messageBuildingBlock
    xmi:id="_MQO1__msEeuM-bZFEQa_yw"
    previousVersion="_6wX5Ych7Eei73Ywzx0CAAg"
    name="CreationDate"
    definition="Date and time when this Business Message (header) was created."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CreDt"
    simpleType="_YW1tKtp-Ed-ak6NoX_4Aeg_-1624336183" />
  <messageBuildingBlock
    xmi:id="_MQO2AfmsEeuM-bZFEQa_yw"
    previousVersion="_A2wWAMiuEei73Ywzx0CAAg"
    name="BusinessProcessingDate"
    definition="Processing date and time indicated by the sender for the receiver of the business message. This date may be different from the date and time provided in the CreationDate.&#xD;&#xA;&#xD;&#xA;Usage: Market practice or bilateral agreement should specify how this element should be used."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="BizPrcgDt"
    simpleType="_YW1tKtp-Ed-ak6NoX_4Aeg_-1624336183" />
  <messageBuildingBlock
    xmi:id="_MQO2A_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5Y8h7Eei73Ywzx0CAAg"
    name="CopyDuplicate"
    definition="Indicates whether the message is a Copy, a Duplicate or a copy of a duplicate of a previously sent ISO 20022 Message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CpyDplct"
    simpleType="_bCWRI9p-Ed-ak6NoX_4Aeg_-462671342" />
  <messageBuildingBlock
    xmi:id="_MQO2BfmsEeuM-bZFEQa_yw"
    previousVersion="_6wX5Zch7Eei73Ywzx0CAAg"
    name="PossibleDuplicate"
    definition="Flag indicating if the Business Message exchanged between the MessagingEndpoints is possibly a duplicate. &#xD;&#xA;If the receiving MessagingEndpoint did not receive the original, then this Business Message should be processed as if it were the original. &#xD;&#xA;&#xD;&#xA;If the receiving MessagingEndpoint did receive the original, then it should perform necessary actions to avoid processing this Business Message again.&#xD;&#xA;&#xD;&#xA;This will guarantee business idempotent behaviour.&#xD;&#xA;&#xD;&#xA;NOTE: this is named &quot;PossResend&quot; in FIX - this is an application level resend not a network level retransmission."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="PssblDplct"
    simpleType="_YXbjA9p-Ed-ak6NoX_4Aeg_-2040117978" />
  <messageBuildingBlock
    xmi:id="_MQO2B_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5Z8h7Eei73Ywzx0CAAg"
    name="Priority"
    definition="Relative indication of the processing precedence of the message over a (set of) Business Messages with assigned priorities."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Prty"
    simpleType="_Ybm4ZNp-Ed-ak6NoX_4Aeg_1557209084" />
  <messageBuildingBlock
    xmi:id="_MQO2CfmsEeuM-bZFEQa_yw"
    previousVersion="_6wX5ach7Eei73Ywzx0CAAg"
    name="Signature"
    definition="Contains the digital signature of the Business Entity authorised to sign this Business Message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Sgntr"
    complexType="_O-3vQKYkEeS0NIlWNmtQyw" />
  <messageBuildingBlock
    xmi:id="_MQO2C_msEeuM-bZFEQa_yw"
    previousVersion="_6wX5a8h7Eei73Ywzx0CAAg"
    name="Related"
    definition="Specifies the Business Application Header(s) of the Business Message(s) to which this Business Message relates.&#xD;&#xA;Can be used when replying to a query; can also be used when canceling or amending."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="Rltd"
    complexType="_VujxkfmsEeuM-bZFEQa_yw" />
  <messageDefinitionIdentifier
    businessArea="head"
    messageFunctionality="001"
    flavour="001"
    version="03" />
</messageDefinition>

ISO Building Blocks

The following items are used as building blocks to construct this message.