AgentCANotificationCancellationRequestV01

seev.010.001.01

Scope This message is sent by an issuer (or its agent) to a CSD to request the cancellation of a notification advice message. Usage When this message is used to request the cancellation of a notification advice message, the function of the message must be cancellation. When this message is used to request the withdrawal of a Corporate Action event or option, then the function of the message must be withdrawal. In both cases, the building block notification advice identification must be present to link this cancellation request to the notification advice that was previously sent.

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
%% AgentCANotificationCancellationRequestV01 recursion level 0 with max 0
AgentCANotificationCancellationRequestV01 *-- "1..1" DocumentIdentification8 : Identification
AgentCANotificationCancellationRequestV01 *-- "1..1" NotificationCancellation1 : NotificationCancellationTypeAndLinkage
AgentCANotificationCancellationRequestV01 *-- "1..1" CorporateActionInformation2 : CorporateActionGeneralInformation
AgentCANotificationCancellationRequestV01 *-- "0..1" CorporateActionNotificationAdvice1 : CorporateActionNotificationDetails
  

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

NotificationCancellationTypeAndLinkage building block

Provides information about the type of notification cancellation request and linked message. Information about the cancellation of a notification advice or the withdrawal of a CA event. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% NotificationCancellation1 recursion level 0 with max 1
class NotificationCancellation1{
    NotificationCancellationType CorporateActionNotificationType2Code
}
NotificationCancellation1 *-- "1..1" DocumentIdentification8 : LinkedAgentCANotificationAdviceIdentification
%% DocumentIdentification8 recursion level 1 with max 1
class DocumentIdentification8{
    Identification IsoMax35Text
    CreationDateTime IsoISODateTime
}
  

NotificationCancellation1 members

Member name Description Data Type / Multiplicity
NotificationCancellationType The function of the notification e.g. new notification. CorporateActionNotificationType2Code - Required 1..1
LinkedAgentCANotificationAdviceIdentification The identification of the linked notification advice. DocumentIdentification8 - Required 1..1

CorporateActionGeneralInformation building block

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

classDiagram
   direction tb
%% CorporateActionInformation2 recursion level 0 with max 1
class CorporateActionInformation2{
    IssuerCorporateActionIdentification IsoMax35Text
    CorporateActionProcessingIdentification IsoMax35Text
}
CorporateActionInformation2 *-- "1..1" IPartyIdentification2Choice : AgentIdentification
CorporateActionInformation2 *-- "1..1" ICorporateActionEventType2FormatChoice : EventType
CorporateActionInformation2 *-- "0..1" ICorporateActionEventProcessingType1FormatChoice : EventProcessingType
CorporateActionInformation2 *-- "1..1" ICorporateActionMandatoryVoluntary1FormatChoice : MandatoryVoluntaryEventType
CorporateActionInformation2 *-- "1..1" FinancialInstrumentDescription3 : UnderlyingSecurity
CorporateActionInformation2 *-- "0..0" FinancialInstrumentDescription3 : OtherUnderlyingSecurity
%% IPartyIdentification2Choice recursion level 1 with max 1
%% ICorporateActionEventType2FormatChoice recursion level 1 with max 1
%% ICorporateActionEventProcessingType1FormatChoice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary1FormatChoice 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
%% FinancialInstrumentDescription3 recursion level 1 with max 1
class FinancialInstrumentDescription3{
    PlaceOfListing IsoMICIdentifier
}
FinancialInstrumentDescription3 *-- "1..1" SecurityIdentification7 : SecurityIdentification
FinancialInstrumentDescription3 *-- "0..1" IPartyIdentification2Choice : SafekeepingPlace
  

CorporateActionInformation2 members

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

CorporateActionNotificationDetails building block

Detailed information of the notification advice to be cancelled. Provides detailed information about an announcement. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionNotificationAdvice1 recursion level 0 with max 1
CorporateActionNotificationAdvice1 *-- "1..1" CorporateAction2 : CorporateActionDetails
CorporateActionNotificationAdvice1 *-- "0..0" CorporateActionOption1 : CorporateActionOptionDetails
%% CorporateAction2 recursion level 1 with max 1
class CorporateAction2{
    DefaultOptionNumber IsoExact3NumericText
    RestrictionIndicator IsoYesNoIndicator
    PartialElectionIndicator IsoYesNoIndicator
    CouponNumber IsoMax3NumericText
    InterestAccruedNumberOfDays IsoNumber
    NewDenominationCurrency ActiveCurrencyCode
    CertificationRequiredIndicator IsoYesNoIndicator
    CapitalGain EUCapitalGain2Code
    TaxableIncomePerShareCalculated TaxableIncomePerShareCalculated2Code
    NewPlaceOfIncorporation IsoMax70Text
    RedemptionChargesAppliedIndicator IsoYesNoIndicator
}
CorporateAction2 *-- "0..0" ICorporateActionEventStage1FormatChoice : EventStage
CorporateAction2 *-- "0..1" ICorporateActionOption1FormatChoice : DefaultOptionType
CorporateAction2 *-- "0..1" ICorporateActionCalculationMethod1FormatChoice : CalculationMethod
CorporateAction2 *-- "0..1" IUnitOrFaceAmountOrCode1Choice : BackEndOddLotSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmountOrCode1Choice : FrontEndOddLotSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : MinimumExercisableSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : MinimumExercisableMultipleSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : IncrementalDenomination
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : NewDenominationSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : NewBoardLotSecuritiesQuantity
CorporateAction2 *-- "0..1" IUnitOrFaceAmountOrCode1Choice : SecuritiesQuantitySought
CorporateAction2 *-- "0..1" IUnitOrFaceAmount1Choice : BaseDenomination
CorporateAction2 *-- "0..0" ICorporateActionChangeType1FormatChoice : ChangeType
CorporateAction2 *-- "0..0" IOfferType1FormatChoice : OfferType
CorporateAction2 *-- "0..1" IElectionMovementType1FormatChoice : ElectionType
CorporateAction2 *-- "0..1" ILotteryType1FormatChoice : LotteryType
CorporateAction2 *-- "0..1" GenericIdentification13 : IncomeType
CorporateAction2 *-- "0..1" ICorporateActionFrequencyType1FormatChoice : DividendType
CorporateAction2 *-- "0..1" IIntermediateSecurityDistributionType1FormatChoice : IntermediateSecuritiesDistributionType
CorporateAction2 *-- "0..1" CorporateActionDate2 : DateDetails
CorporateAction2 *-- "0..0" CorporateActionPrice2 : PriceDetails
CorporateAction2 *-- "0..1" CorporateActionPeriod1 : PeriodDetails
CorporateAction2 *-- "0..1" CorporateActionRate1 : RateAndAmountDetails
CorporateAction2 *-- "0..1" CorporateActionNarrative1 : CorporateActionAdditionalInformation
CorporateAction2 *-- "0..1" IBeneficiaryCertificationType1FormatChoice : CertificationType
CorporateAction2 *-- "0..1" IRenounceableStatus1FormatChoice : RenounceableEntitlementStatusType
CorporateAction2 *-- "0..1" IConversionType1FormatChoice : ConversionType
CorporateAction2 *-- "0..1" IDistributionType1FormatChoice : DistributionType
%% CorporateActionOption1 recursion level 1 with max 1
class CorporateActionOption1{
    OptionNumber IsoExact3NumericText
    CertificationIndicator IsoYesNoIndicator
    AgentSecuritiesAccountIdentification IsoMax35Text
    WithdrawalAllowedIndicator IsoYesNoIndicator
    ChangeAllowedIndicator IsoYesNoIndicator
    RedemptionChargesAppliedIndicator IsoYesNoIndicator
}
CorporateActionOption1 *-- "1..1" ICorporateActionOption1FormatChoice : OptionType
CorporateActionOption1 *-- "1..1" ICorporateActionEventStatus2FormatChoice : OptionAvailabilityStatus
CorporateActionOption1 *-- "0..1" IBeneficiaryCertificationType1FormatChoice : CertificationType
CorporateActionOption1 *-- "0..1" SecurityIdentification7 : AssentedLineSecurityIdentification
CorporateActionOption1 *-- "0..1" IAccountIdentification2Choice : AgentCashAccountIdentification
CorporateActionOption1 *-- "0..0" IOfferType1FormatChoice : OfferType
CorporateActionOption1 *-- "0..1" IIntermediateSecurityDistributionType1FormatChoice : IntermediateSecuritiesDistributionType
CorporateActionOption1 *-- "0..1" CorporateActionDate4 : DateDetails
CorporateActionOption1 *-- "0..1" CorporateActionRate2 : RateAndAmountDetails
CorporateActionOption1 *-- "0..1" CorporateActionPrice1 : PriceDetails
CorporateActionOption1 *-- "0..1" CorporateActionPeriod2 : PeriodDetails
CorporateActionOption1 *-- "0..0" SecurityOption1 : SecuritiesMovementDetails
CorporateActionOption1 *-- "0..0" CashOption1 : CashMovementDetails
CorporateActionOption1 *-- "0..0" CorporateActionAgent1 : CorporateActionOtherAgentDetails
CorporateActionOption1 *-- "0..1" IFractionDispositionType1FormatChoice : FractionDisposition
CorporateActionOption1 *-- "0..0" IOptionFeatures1FormatChoice : OptionFeatures
CorporateActionOption1 *-- "0..1" CorporateActionNarrative1 : CorporateActionAdditionalInformation
  

CorporateActionNotificationAdvice1 members

Member name Description Data Type / Multiplicity
CorporateActionDetails Provides detailed information about the corporate action event. CorporateAction2 - Required 1..1
CorporateActionOptionDetails Provides information about an option of a CA event. CorporateActionOption1 - Unknown 0..0

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    AgentCANotificationCancellationRequestV01 --|> IOuterRecord : Implements
    AgentCANotificationCancellationRequestV01Document --|> IOuterDocument~AgentCANotificationCancellationRequestV01~ : Implements
    class IOuterDocument~AgentCANotificationCancellationRequestV01~ {
        AgentCANotificationCancellationRequestV01 Message
     }
  

Document wrapper for serialization

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

classDiagram
    AgentCANotificationCancellationRequestV01Document *-- AgentCANotificationCancellationRequestV01 : 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.010.001.01">
    <AgtCANtfctnCxlReq>
        <Id>
            <!-- Identification inner content -->
        </Id>
        <NtfctnCxlTpAndLkg>
            <!-- NotificationCancellationTypeAndLinkage inner content -->
        </NtfctnCxlTpAndLkg>
        <CorpActnGnlInf>
            <!-- CorporateActionGeneralInformation inner content -->
        </CorpActnGnlInf>
        <CorpActnNtfctnDtls>
            <!-- CorporateActionNotificationDetails inner content -->
        </CorpActnNtfctnDtls>
    </AgtCANtfctnCxlReq>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_TRVISdEwEd-BzquC8wXy7w_1381384285"
  name="AgentCANotificationCancellationRequestV01"
  definition="Scope&#xD;&#xA;This message is sent by an issuer (or its agent) to a CSD to request the cancellation of a notification advice message.&#xD;&#xA;Usage&#xD;&#xA;When this message is used to request the cancellation of a notification advice message, the function of the message must be cancellation.&#xD;&#xA;When this message is used to request the withdrawal of a Corporate Action event or option, then the function of the message must be withdrawal.&#xD;&#xA;In both cases, the building block notification advice identification must be present to link this cancellation request to the notification advice that was previously sent."
  registrationStatus="Registered"
  messageSet="_wRe70k2rEeG_I4xRYCA_7g"
  xmlTag="AgtCANtfctnCxlReq"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_TRVIStEwEd-BzquC8wXy7w_-958501125"
    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="_TRVIS9EwEd-BzquC8wXy7w_604000016"
    name="NotificationCancellationTypeAndLinkage"
    definition="Provides information about the type of notification cancellation request and linked message."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="NtfctnCxlTpAndLkg"
    complexType="_Rjual9p-Ed-ak6NoX_4Aeg_493176942" />
  <messageBuildingBlock
    xmi:id="_TRVITNEwEd-BzquC8wXy7w_-624173928"
    name="CorporateActionGeneralInformation"
    definition="General information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CorpActnGnlInf"
    complexType="_Td6PVdp-Ed-ak6NoX_4Aeg_2005876121" />
  <messageBuildingBlock
    xmi:id="_TRVITdEwEd-BzquC8wXy7w_807888623"
    name="CorporateActionNotificationDetails"
    definition="Detailed information of the notification advice to be cancelled."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnNtfctnDtls"
    complexType="_RjH9odp-Ed-ak6NoX_4Aeg_245466411" />
  <messageDefinitionIdentifier
    businessArea="seev"
    messageFunctionality="010"
    flavour="001"
    version="01" />
</messageDefinition>

ISO Building Blocks

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