AgentCAElectionCancellationRequestV01

seev.014.001.01

Scope This message is sent by a CSD to the issuer (or its agent) to request the cancellation of a previously sent Agent Corporate Action Election Advice message. Usage This message may only be used to cancel an entire Agent Corporate Action Election Advice message that was previously sent by the CSD. No partial cancellation is allowed. This message must contain the identification of the Agent Corporate Action Election Advice to be cancelled, the agent identification and the corporate action references. This message may also contain details of the election advice to be cancelled, but this is not recommended.

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
%% AgentCAElectionCancellationRequestV01 recursion level 0 with max 0
AgentCAElectionCancellationRequestV01 *-- "1..1" DocumentIdentification8 : Identification
AgentCAElectionCancellationRequestV01 *-- "1..1" DocumentIdentification8 : AgentCAElectionAdviceIdentification
AgentCAElectionCancellationRequestV01 *-- "1..1" CorporateActionInformation1 : CorporateActionGeneralInformation
AgentCAElectionCancellationRequestV01 *-- "0..1" CorporateActionElection3 : ElectionDetails
  

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

Identification building block

Identification assigned by the Sender to unambiguously identify the cancellation request. Identifies the document by providing a unique identification and optionally the date/time of the creation of the document. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification8 recursion level 0 with max 1
class DocumentIdentification8{
    Identification IsoMax35Text
    CreationDateTime IsoISODateTime
}
  

DocumentIdentification8 members

Member name Description Data Type / Multiplicity
Identification Unique identification of the document. IsoMax35Text - Required 1..1
CreationDateTime Date/time of the creation of the document. IsoISODateTime - Optional 0..1

AgentCAElectionAdviceIdentification building block

Identification of the Agent CA Election Advice to be cancelled. Identifies the document by providing a unique identification and optionally the date/time of the creation of the document. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification8 recursion level 0 with max 1
class DocumentIdentification8{
    Identification IsoMax35Text
    CreationDateTime IsoISODateTime
}
  

DocumentIdentification8 members

Member name Description Data Type / Multiplicity
Identification Unique identification of the document. IsoMax35Text - Required 1..1
CreationDateTime Date/time of the creation of the document. IsoISODateTime - Optional 0..1

CorporateActionGeneralInformation building block

General information about the corporate action event. General information about the corporate action event. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionInformation1 recursion level 0 with max 1
class CorporateActionInformation1{
    IssuerCorporateActionIdentification IsoMax35Text
    CorporateActionProcessingIdentification IsoMax35Text
}
CorporateActionInformation1 *-- "1..1" IPartyIdentification2Choice : AgentIdentification
CorporateActionInformation1 *-- "1..1" ICorporateActionEventType2FormatChoice : EventType
CorporateActionInformation1 *-- "1..1" ICorporateActionMandatoryVoluntary1FormatChoice : MandatoryVoluntaryEventType
CorporateActionInformation1 *-- "0..1" ICorporateActionEventProcessingType1FormatChoice : EventProcessingType
CorporateActionInformation1 *-- "1..1" FinancialInstrumentDescription3 : UnderlyingSecurity
%% IPartyIdentification2Choice recursion level 1 with max 1
%% ICorporateActionEventType2FormatChoice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary1FormatChoice recursion level 1 with max 1
%% ICorporateActionEventProcessingType1FormatChoice recursion level 1 with max 1
%% FinancialInstrumentDescription3 recursion level 1 with max 1
class FinancialInstrumentDescription3{
    PlaceOfListing IsoMICIdentifier
}
FinancialInstrumentDescription3 *-- "1..1" SecurityIdentification7 : SecurityIdentification
FinancialInstrumentDescription3 *-- "0..1" IPartyIdentification2Choice : SafekeepingPlace
  

CorporateActionInformation1 members

Member name Description Data Type / Multiplicity
AgentIdentification Identification of the issuer agent. IPartyIdentification2Choice - Required 1..1
IssuerCorporateActionIdentification Reference given to the event by the CA event issuer (agent). IsoMax35Text - Optional 0..1
CorporateActionProcessingIdentification Reference assigned by the account servicer to unambiguously identify a corporate action event. IsoMax35Text - Optional 0..1
EventType Type of corporate action event. ICorporateActionEventType2FormatChoice - Required 1..1
MandatoryVoluntaryEventType Specifies whether the event is mandatory, mandatory with options or voluntary. ICorporateActionMandatoryVoluntary1FormatChoice - Required 1..1
EventProcessingType Type of processing involved by a Corporate Action. ICorporateActionEventProcessingType1FormatChoice - Optional 0..1
UnderlyingSecurity Identification of the underlying financial instrument, ie, the financial instrument affected by the corporate action event. FinancialInstrumentDescription3 - Required 1..1

ElectionDetails building block

Provides information about the election advice to be cancelled. Provides information about a corporate action election. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionElection3 recursion level 0 with max 1
class CorporateActionElection3{
    OptionNumber IsoExact3NumericText
    ProposedRate IsoPercentageRate
}
CorporateActionElection3 *-- "0..1" SecuritiesAccount7 : AccountDetails
CorporateActionElection3 *-- "0..1" ICorporateActionOption1FormatChoice : OptionType
CorporateActionElection3 *-- "0..1" IUnitOrFaceAmount1Choice : InstructedUnderlyingSecuritiesQuantity
CorporateActionElection3 *-- "0..1" IUnitOrFaceAmount1Choice : InstructedSecuritiesQuantityToReceive
CorporateActionElection3 *-- "0..0" CorporateActionCashMovements2 : CashMovementDetails
CorporateActionElection3 *-- "0..0" CorporateActionSecuritiesMovement2 : SecuritiesMovementDetails
%% SecuritiesAccount7 recursion level 1 with max 1
class SecuritiesAccount7{
    AccountIdentification IsoMax35Text
}
SecuritiesAccount7 *-- "0..1" IPartyIdentification2Choice : AccountOwnerIdentification
%% ICorporateActionOption1FormatChoice recursion level 1 with max 1
%% IUnitOrFaceAmount1Choice recursion level 1 with max 1
%% IUnitOrFaceAmount1Choice recursion level 1 with max 1
%% CorporateActionCashMovements2 recursion level 1 with max 1
class CorporateActionCashMovements2{
    PostingIdentification IsoMax35Text
    PostingAmount IsoActiveCurrencyAndAmount
}
CorporateActionCashMovements2 *-- "0..1" IDateAndDateTimeChoice : PostingDateTime
CorporateActionCashMovements2 *-- "1..2" CashAccount19 : AccountDetails
%% CorporateActionSecuritiesMovement2 recursion level 1 with max 1
class CorporateActionSecuritiesMovement2{
    PostingIdentification IsoMax35Text
}
CorporateActionSecuritiesMovement2 *-- "1..1" SecurityIdentification7 : SecurityIdentification
CorporateActionSecuritiesMovement2 *-- "0..1" IDateAndDateTimeChoice : PostingDateTime
CorporateActionSecuritiesMovement2 *-- "1..1" IUnitOrFaceAmount1Choice : PostingQuantity
CorporateActionSecuritiesMovement2 *-- "1..2" SecuritiesAccount9 : AccountDetails
  

CorporateActionElection3 members

Member name Description Data Type / Multiplicity
AccountDetails Provides information about the account. SecuritiesAccount7 - Optional 0..1
OptionType Specifies the corporate action options available to the account owner. ICorporateActionOption1FormatChoice - Optional 0..1
OptionNumber Number identifying the available corporate action options. IsoExact3NumericText - Optional 0..1
InstructedUnderlyingSecuritiesQuantity Quantity of underlying securities to which this instruction applies. IUnitOrFaceAmount1Choice - Optional 0..1
InstructedSecuritiesQuantityToReceive Quantity of the benefits that the account owner wants to receive, eg, as a result of dividend reinvestment. IUnitOrFaceAmount1Choice - Optional 0..1
ProposedRate Rate proposed in a remarketing of variable rate notes. IsoPercentageRate - Optional 0..1
CashMovementDetails Provides information about the cash movement resulting from the election instruction. CorporateActionCashMovements2 - Unknown 0..0
SecuritiesMovementDetails Provides information about the securities movement resulting from the election instruction. CorporateActionSecuritiesMovement2 - Unknown 0..0

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    AgentCAElectionCancellationRequestV01 --|> IOuterRecord : Implements
    AgentCAElectionCancellationRequestV01Document --|> IOuterDocument~AgentCAElectionCancellationRequestV01~ : Implements
    class IOuterDocument~AgentCAElectionCancellationRequestV01~ {
        AgentCAElectionCancellationRequestV01 Message
     }
  

Document wrapper for serialization

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

classDiagram
    AgentCAElectionCancellationRequestV01Document *-- AgentCAElectionCancellationRequestV01 : 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:seev.014.001.01">
    <AgtCAElctnCxlReq>
        <Id>
            <!-- Identification inner content -->
        </Id>
        <AgtCAElctnAdvcId>
            <!-- AgentCAElectionAdviceIdentification inner content -->
        </AgtCAElctnAdvcId>
        <CorpActnGnlInf>
            <!-- CorporateActionGeneralInformation inner content -->
        </CorpActnGnlInf>
        <ElctnDtls>
            <!-- ElectionDetails inner content -->
        </ElctnDtls>
    </AgtCAElctnCxlReq>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_TNTj4NEwEd-BzquC8wXy7w_-1473498229"
  name="AgentCAElectionCancellationRequestV01"
  definition="Scope&#xD;&#xA;This message is sent by a CSD to the issuer (or its agent) to request the cancellation of a previously sent Agent Corporate Action Election Advice message.&#xD;&#xA;Usage&#xD;&#xA;This message may only be used to cancel an entire Agent Corporate Action Election Advice message that was previously sent by the CSD. No partial cancellation is allowed.&#xD;&#xA;This message must contain the identification of the Agent Corporate Action Election Advice to be cancelled, the agent identification and the corporate action references. This message may also contain details of the election advice to be cancelled, but this is not recommended."
  registrationStatus="Registered"
  messageSet="_wRe70k2rEeG_I4xRYCA_7g"
  xmlTag="AgtCAElctnCxlReq"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_TNTj4dEwEd-BzquC8wXy7w_691501595"
    name="Identification"
    definition="Identification assigned by the Sender to unambiguously identify the cancellation request."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="Id"
    complexType="_RXNBiNp-Ed-ak6NoX_4Aeg_-320016249" />
  <messageBuildingBlock
    xmi:id="_TNTj4tEwEd-BzquC8wXy7w_704429510"
    name="AgentCAElectionAdviceIdentification"
    definition="Identification of the Agent CA Election Advice to be cancelled."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="AgtCAElctnAdvcId"
    complexType="_RXNBiNp-Ed-ak6NoX_4Aeg_-320016249" />
  <messageBuildingBlock
    xmi:id="_TNTj49EwEd-BzquC8wXy7w_-444231690"
    name="CorporateActionGeneralInformation"
    definition="General information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CorpActnGnlInf"
    complexType="_TdxFY9p-Ed-ak6NoX_4Aeg_1155832018" />
  <messageBuildingBlock
    xmi:id="_TNTj5NEwEd-BzquC8wXy7w_-178719566"
    name="ElectionDetails"
    definition="Provides information about the election advice to be cancelled."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="ElctnDtls"
    complexType="_UJ39d9p-Ed-ak6NoX_4Aeg_-1634086378" />
  <messageDefinitionIdentifier
    businessArea="seev"
    messageFunctionality="014"
    flavour="001"
    version="01" />
</messageDefinition>

ISO Building Blocks

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