CorporateActionNotificationV02

seev.031.001.02

Scope An account servicer sends the CorporateActionNotification message to an account owner or its designated agent to notify details of a corporate action event and optionally account information, eligible balance and entitlements. It may also include possible elections or choices available to the account owner. The account servicer can initially send the CorporateActionNotification message as a preliminary advice, subsequently replaced by another CorporateActionNotification message with complete or confirmed information. It may also be sent to an account owner or its designated agent, to remind of event details and/or of missing or incomplete instructions for a corporate action event. Usage The message may also be used to:

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
%% CorporateActionNotificationV02 recursion level 0 with max 0
CorporateActionNotificationV02 *-- "1..1" CorporateActionNotification2 : NotificationGeneralInformation
CorporateActionNotificationV02 *-- "0..1" DocumentIdentification15 : PreviousNotificationIdentification
CorporateActionNotificationV02 *-- "0..1" DocumentIdentification9 : InstructionIdentification
CorporateActionNotificationV02 *-- "0..1" DocumentIdentification13 : OtherDocumentIdentification
CorporateActionNotificationV02 *-- "0..1" CorporateActionEventReference1 : EventsLinkage
CorporateActionNotificationV02 *-- "1..1" CorporateActionGeneralInformation22 : CorporateActionGeneralInformation
CorporateActionNotificationV02 *-- "1..1" IAccountIdentification12Choice : AccountDetails
CorporateActionNotificationV02 *-- "0..1" FinancialInstrumentAttributes17 : IntermediateSecurity
CorporateActionNotificationV02 *-- "0..1" CorporateAction5 : CorporateActionDetails
CorporateActionNotificationV02 *-- "0..1" CorporateActionOption19 : CorporateActionOptionDetails
CorporateActionNotificationV02 *-- "0..1" CorporateActionNarrative11 : AdditionalInformation
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : IssuerAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : PayingAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : SubPayingAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : Registrar
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : ResellingAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : PhysicalSecuritiesAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : DropAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : SolicitationAgent
CorporateActionNotificationV02 *-- "0..1" IPartyIdentification47Choice : InformationAgent
CorporateActionNotificationV02 *-- "0..1" SupplementaryData1 : SupplementaryData
  

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

NotificationGeneralInformation building block

General information about the event notification type, status and contents. Corporate action event notification status and contents. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionNotification2 recursion level 0 with max 1
class CorporateActionNotification2{
    NotificationType CorporateActionNotificationType1Code
    EligibleBalanceIndicator IsoYesNoIndicator
}
CorporateActionNotification2 *-- "1..1" ICorporateActionProcessingStatus1Choice : ProcessingStatus
%% ICorporateActionProcessingStatus1Choice recursion level 1 with max 1
  

CorporateActionNotification2 members

Member name Description Data Type / Multiplicity
NotificationType Specifies the type of notification. CorporateActionNotificationType1Code - Required 1..1
ProcessingStatus Specifies the status of the details of the corporate action event. ICorporateActionProcessingStatus1Choice - Required 1..1
EligibleBalanceIndicator Indicates whether the eligible balance is final except for a voluntary corporate action event where it can represent the current eligible balance when communicated before expiration date of that event. IsoYesNoIndicator - Optional 0..1

PreviousNotificationIdentification building block

Identification of a previously sent notification document. Identification of a document and type of link. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification15 recursion level 0 with max 1
class DocumentIdentification15{
    Identification IsoMax35Text
}
DocumentIdentification15 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% IProcessingPosition1Choice recursion level 1 with max 1
  

DocumentIdentification15 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoMax35Text - Required 1..1
LinkageType Specifies when this document is to be processed relative to an other referred document. IProcessingPosition1Choice - Optional 0..1

InstructionIdentification building block

Identification of a related instruction document. Identifies a document by a unique identification. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification9 recursion level 0 with max 1
class DocumentIdentification9{
    Identification IsoMax35Text
}
  

DocumentIdentification9 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoMax35Text - Required 1..1

OtherDocumentIdentification building block

Identification of other documents as well as the document number. Identification of a document as well as the document number and type of link. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification13 recursion level 0 with max 1
DocumentIdentification13 *-- "1..1" IDocumentIdentification1Choice : Identification
DocumentIdentification13 *-- "0..1" IDocumentNumber1Choice : DocumentNumber
DocumentIdentification13 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% IDocumentIdentification1Choice recursion level 1 with max 1
%% IDocumentNumber1Choice recursion level 1 with max 1
%% IProcessingPosition1Choice recursion level 1 with max 1
  

DocumentIdentification13 members

Member name Description Data Type / Multiplicity
Identification Unique identifier of the document (message) assigned either by the account servicer or the account owner. IDocumentIdentification1Choice - Required 1..1
DocumentNumber Identification of the type of document. IDocumentNumber1Choice - Optional 0..1
LinkageType Specifies when this document is to be processed relative to an other referred document. IProcessingPosition1Choice - Optional 0..1

EventsLinkage building block

Identification of an other corporate action event that needs to be closely linked to the processing of the event notified in this document. Identification of a linked corporate action event. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionEventReference1 recursion level 0 with max 1
CorporateActionEventReference1 *-- "1..1" ICorporateActionEventReference1Choice : EventIdentification
CorporateActionEventReference1 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% ICorporateActionEventReference1Choice recursion level 1 with max 1
%% IProcessingPosition1Choice recursion level 1 with max 1
  

CorporateActionEventReference1 members

Member name Description Data Type / Multiplicity
EventIdentification Identification of the linked corporate action event. ICorporateActionEventReference1Choice - Required 1..1
LinkageType Specifies when this corporate action event is to be processed relative to a linked corporate action event. IProcessingPosition1Choice - 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
%% CorporateActionGeneralInformation22 recursion level 0 with max 1
class CorporateActionGeneralInformation22{
    CorporateActionEventIdentification IsoMax35Text
    OfficialCorporateActionEventIdentification IsoMax35Text
    ClassActionNumber IsoMax35Text
}
CorporateActionGeneralInformation22 *-- "0..1" ICorporateActionEventProcessingTypeChoice : EventProcessingType
CorporateActionGeneralInformation22 *-- "1..1" ICorporateActionEventType3Choice : EventType
CorporateActionGeneralInformation22 *-- "1..1" ICorporateActionMandatoryVoluntary1Choice : MandatoryVoluntaryEventType
CorporateActionGeneralInformation22 *-- "1..1" FinancialInstrumentAttributes19 : UnderlyingSecurity
%% ICorporateActionEventProcessingTypeChoice recursion level 1 with max 1
%% ICorporateActionEventType3Choice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary1Choice recursion level 1 with max 1
%% FinancialInstrumentAttributes19 recursion level 1 with max 1
class FinancialInstrumentAttributes19{
    DenominationCurrency ActiveOrHistoricCurrencyCode
    NextCouponDate IsoISODate
    ExpiryDate IsoISODate
    FloatingRateFixingDate IsoISODate
    MaturityDate IsoISODate
    IssueDate IsoISODate
    NextCallableDate IsoISODate
    PutableDate IsoISODate
    DatedDate IsoISODate
    ConversionDate IsoISODate
}
FinancialInstrumentAttributes19 *-- "1..1" SecurityIdentification14 : SecurityIdentification
FinancialInstrumentAttributes19 *-- "0..1" MarketIdentification2 : PlaceOfListing
FinancialInstrumentAttributes19 *-- "0..1" IInterestComputationMethodFormat1Choice : DayCountBasis
FinancialInstrumentAttributes19 *-- "0..1" IClassificationType2Choice : ClassificationType
FinancialInstrumentAttributes19 *-- "0..1" IOptionStyle4Choice : OptionStyle
FinancialInstrumentAttributes19 *-- "0..1" IRateFormat3Choice : InterestRate
FinancialInstrumentAttributes19 *-- "0..1" IRateFormat3Choice : NextInterestRate
FinancialInstrumentAttributes19 *-- "0..1" IRateFormat3Choice : PercentageOfDebtClaim
FinancialInstrumentAttributes19 *-- "0..1" IRateFormat3Choice : PreviousFactor
FinancialInstrumentAttributes19 *-- "0..1" IRateFormat3Choice : NextFactor
FinancialInstrumentAttributes19 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumNominalQuantity
FinancialInstrumentAttributes19 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
FinancialInstrumentAttributes19 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
FinancialInstrumentAttributes19 *-- "0..1" IFinancialInstrumentQuantity1Choice : ContractSize
  

CorporateActionGeneralInformation22 members

Member name Description Data Type / Multiplicity
CorporateActionEventIdentification Reference assigned by the account servicer to unambiguously identify a corporate action event. IsoMax35Text - Required 1..1
OfficialCorporateActionEventIdentification Official and unique reference assigned by the official central body/entity within each market at the beginning of a corporate action event. IsoMax35Text - Optional 0..1
ClassActionNumber Reference assigned by a court to a class action. IsoMax35Text - Optional 0..1
EventProcessingType Type of processing involved by a corporate action. ICorporateActionEventProcessingTypeChoice - Optional 0..1
EventType Type of corporate action event. ICorporateActionEventType3Choice - Required 1..1
MandatoryVoluntaryEventType Specifies whether the event is mandatory, mandatory with options or voluntary. ICorporateActionMandatoryVoluntary1Choice - Required 1..1
UnderlyingSecurity Security concerned by the corporate action. FinancialInstrumentAttributes19 - Required 1..1

AccountDetails building block

General information about the safekeeping account, owner and account balance. Choice between all accounts (GENR - General in ISO 15022) or one or more selected accounts and balance information. For comparison, see the ISO20022 official specification

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

AccountIdentification12Choice members

Member name Description Data Type / Multiplicity

IntermediateSecurity building block

Provides details on rights credited to the account as for instance trading period, expiry date, renounceability. Description of the financial instrument. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% FinancialInstrumentAttributes17 recursion level 0 with max 1
class FinancialInstrumentAttributes17{
    Quantity IsoDecimalNumber
}
FinancialInstrumentAttributes17 *-- "1..1" SecurityIdentification14 : SecurityIdentification
FinancialInstrumentAttributes17 *-- "0..1" IRenounceableEntitlementStatusTypeFormat1Choice : RenounceableEntitlementStatusType
FinancialInstrumentAttributes17 *-- "0..1" IFractionDispositionType9Choice : FractionDisposition
FinancialInstrumentAttributes17 *-- "0..1" QuantityToQuantityRatio1 : IntermediateSecuritiesToUnderlyingRatio
FinancialInstrumentAttributes17 *-- "0..1" AmountPrice2 : MarketPrice
FinancialInstrumentAttributes17 *-- "1..1" IDateFormat16Choice : ExpiryDate
FinancialInstrumentAttributes17 *-- "1..1" IDateFormat16Choice : PostingDate
FinancialInstrumentAttributes17 *-- "0..1" Period4 : TradingPeriod
FinancialInstrumentAttributes17 *-- "0..1" IBalanceFormat1Choice : UninstructedBalance
FinancialInstrumentAttributes17 *-- "0..1" IBalanceFormat1Choice : InstructedBalance
%% SecurityIdentification14 recursion level 1 with max 1
class SecurityIdentification14{
    ISIN IsoISINIdentifier
    Description IsoMax140Text
}
SecurityIdentification14 *-- "0..0" OtherIdentification1 : OtherIdentification
%% IRenounceableEntitlementStatusTypeFormat1Choice recursion level 1 with max 1
%% IFractionDispositionType9Choice recursion level 1 with max 1
%% QuantityToQuantityRatio1 recursion level 1 with max 1
class QuantityToQuantityRatio1{
    Quantity1 IsoDecimalNumber
    Quantity2 IsoDecimalNumber
}
%% AmountPrice2 recursion level 1 with max 1
class AmountPrice2{
    AmountPriceType AmountPriceType2Code
    PriceValue IsoActiveCurrencyAnd13DecimalAmount
}
%% IDateFormat16Choice recursion level 1 with max 1
%% IDateFormat16Choice recursion level 1 with max 1
%% Period4 recursion level 1 with max 1
Period4 *-- "1..1" IDateFormat18Choice : StartDate
Period4 *-- "1..1" IDateFormat18Choice : EndDate
%% IBalanceFormat1Choice recursion level 1 with max 1
%% IBalanceFormat1Choice recursion level 1 with max 1
  

FinancialInstrumentAttributes17 members

Member name Description Data Type / Multiplicity
SecurityIdentification Identifies the financial instrument. SecurityIdentification14 - Required 1..1
Quantity Quantity of entitled intermediate securities based on the balance of underlying securities. IsoDecimalNumber - Optional 0..1
RenounceableEntitlementStatusType Specifies whether terms of the event allow resale of the rights. IRenounceableEntitlementStatusTypeFormat1Choice - Optional 0..1
FractionDisposition Specifies how fractions resulting from derived securities will be processed or how prorated decisions will be rounding, if provided with a pro ration rate. IFractionDispositionType9Choice - Optional 0..1
IntermediateSecuritiesToUnderlyingRatio Quantity of intermediate securities awarded for a given quantity of underlying security. QuantityToQuantityRatio1 - Optional 0..1
MarketPrice Last reported/known price of a financial instrument in a market. AmountPrice2 - Optional 0..1
ExpiryDate Date on which an order expires or at which a privilege or offer terminates. IDateFormat16Choice - Required 1..1
PostingDate Date of the posting (credit or debit) to the account. IDateFormat16Choice - Required 1..1
TradingPeriod Period during which intermediate or outturn securities are tradable in a secondary market. Period4 - Optional 0..1
UninstructedBalance Balance of uninstructed position. IBalanceFormat1Choice - Optional 0..1
InstructedBalance Balance of instructed position. IBalanceFormat1Choice - Optional 0..1

CorporateActionDetails building block

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

classDiagram
   direction tb
%% CorporateAction5 recursion level 0 with max 1
class CorporateAction5{
    InterestAccruedNumberOfDays IsoMax3Number
    CertificationRequiredIndicator IsoYesNoIndicator
    ChargesAppliedIndicator IsoYesNoIndicator
    RestrictionIndicator IsoYesNoIndicator
    AccruedInterestIndicator IsoYesNoIndicator
    NewPlaceOfIncorporation IsoMax70Text
}
CorporateAction5 *-- "0..1" CorporateActionDate14 : DateDetails
CorporateAction5 *-- "0..1" CorporateActionPeriod6 : PeriodDetails
CorporateAction5 *-- "0..1" CorporateActionRate16 : RateAndAmountDetails
CorporateAction5 *-- "0..1" CorporateActionPrice17 : PriceDetails
CorporateAction5 *-- "0..1" CorporateActionQuantity3 : SecuritiesQuantity
CorporateAction5 *-- "0..0" IIdentificationFormat1Choice : CouponNumber
CorporateAction5 *-- "0..1" IDividendTypeFormat3Choice : DividendType
CorporateAction5 *-- "0..1" IConversionTypeFormat1Choice : ConversionType
CorporateAction5 *-- "0..1" IDistributionTypeFormat1Choice : DistributionType
CorporateAction5 *-- "0..0" IOfferTypeFormat1Choice : OfferType
CorporateAction5 *-- "0..1" IRenounceableEntitlementStatusTypeFormat1Choice : RenounceableEntitlementStatusType
CorporateAction5 *-- "0..0" ICorporateActionEventStageFormat3Choice : EventStage
CorporateAction5 *-- "0..0" IAdditionalBusinessProcessFormat1Choice : AdditionalBusinessProcessIndicator
CorporateAction5 *-- "0..0" ICorporateActionChangeTypeFormat1Choice : ChangeType
CorporateAction5 *-- "0..1" IIntermediateSecuritiesDistributionTypeFormat5Choice : IntermediateSecuritiesDistributionType
CorporateAction5 *-- "0..1" ICapitalGainFormat1Choice : CapitalGainInOutIndicator
CorporateAction5 *-- "0..1" ITaxableIncomePerShareCalculatedFormat1Choice : TaxableIncomePerShareCalculated
CorporateAction5 *-- "0..1" IElectionTypeFormat1Choice : ElectionType
CorporateAction5 *-- "0..1" ILotteryTypeFormat1Choice : LotteryType
CorporateAction5 *-- "0..1" ICertificationTypeFormat1Choice : CertificationType
CorporateAction5 *-- "0..1" CorporateActionNarrative3 : AdditionalInformation
%% CorporateActionDate14 recursion level 1 with max 1
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : AnnouncementDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : CertificationDeadline
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : CourtApprovalDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : EarlyClosingDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : EffectiveDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : EqualisationDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : FurtherDetailedAnnouncementDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : IndexFixingDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : LotteryDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : NewMaturityDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : MeetingDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : MarginFixingDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : ProrationDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : RecordDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : RegistrationDeadline
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : ResultsPublicationDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : DeadlineToSplit
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : DeadlineForTaxBreakdownInstruction
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : TradingSuspendedDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : UnconditionalDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : WhollyUnconditionalDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : ExDividendDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : OfficialAnnouncementPublicationDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : SpecialExDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : GuaranteedParticipationDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : ElectionToCounterpartyDeadline
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : LapsedDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : PaymentDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : ThirdPartyDeadline
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : EarlyThirdPartyDeadline
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : MarketClaimTrackingEndDate
CorporateActionDate14 *-- "0..1" IDateFormat19Choice : LeadPlaintiffDeadline
%% CorporateActionPeriod6 recursion level 1 with max 1
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : PriceCalculationPeriod
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : InterestPeriod
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : CompulsoryPurchasePeriod
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : BlockingPeriod
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : ClaimPeriod
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForBookEntryTransfer
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForDepositAtAgent
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForDeposit
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForPledge
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForSegregation
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForWithdrawalAtAgent
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForWithdrawalInNomineeName
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForWithdrawalInStreetName
CorporateActionPeriod6 *-- "0..1" IPeriod3Choice : BookClosurePeriod
%% CorporateActionRate16 recursion level 1 with max 1
CorporateActionRate16 *-- "0..1" IRateAndAmountFormat14Choice : Interest
CorporateActionRate16 *-- "0..1" IRateFormat5Choice : PercentageSought
CorporateActionRate16 *-- "0..1" IRateFormat6Choice : RelatedIndex
CorporateActionRate16 *-- "0..1" IRateFormat6Choice : Spread
CorporateActionRate16 *-- "0..1" IRateAndAmountFormat14Choice : BidInterval
CorporateActionRate16 *-- "0..1" IRateFormat3Choice : PreviousFactor
CorporateActionRate16 *-- "0..1" IRateFormat3Choice : NextFactor
CorporateActionRate16 *-- "0..1" IRateFormat6Choice : ReinvestmentDiscountRateToMarket
%% CorporateActionPrice17 recursion level 1 with max 1
CorporateActionPrice17 *-- "0..1" IPriceFormat19Choice : MaximumPrice
CorporateActionPrice17 *-- "0..1" IPriceFormat19Choice : MinimumPrice
%% CorporateActionQuantity3 recursion level 1 with max 1
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity16Choice : MaximumQuantity
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity16Choice : MinimumQuantitySought
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewBoardLotQuantity
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewDenominationQuantity
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : BaseDenomination
CorporateActionQuantity3 *-- "0..1" IFinancialInstrumentQuantity1Choice : IncrementalDenomination
%% IIdentificationFormat1Choice recursion level 1 with max 1
%% IDividendTypeFormat3Choice recursion level 1 with max 1
%% IConversionTypeFormat1Choice recursion level 1 with max 1
%% IDistributionTypeFormat1Choice recursion level 1 with max 1
%% IOfferTypeFormat1Choice recursion level 1 with max 1
%% IRenounceableEntitlementStatusTypeFormat1Choice recursion level 1 with max 1
%% ICorporateActionEventStageFormat3Choice recursion level 1 with max 1
%% IAdditionalBusinessProcessFormat1Choice recursion level 1 with max 1
%% ICorporateActionChangeTypeFormat1Choice recursion level 1 with max 1
%% IIntermediateSecuritiesDistributionTypeFormat5Choice recursion level 1 with max 1
%% ICapitalGainFormat1Choice recursion level 1 with max 1
%% ITaxableIncomePerShareCalculatedFormat1Choice recursion level 1 with max 1
%% IElectionTypeFormat1Choice recursion level 1 with max 1
%% ILotteryTypeFormat1Choice recursion level 1 with max 1
%% ICertificationTypeFormat1Choice recursion level 1 with max 1
%% CorporateActionNarrative3 recursion level 1 with max 1
CorporateActionNarrative3 *-- "0..1" UpdatedAdditionalInformation3 : Offeror
CorporateActionNarrative3 *-- "0..1" UpdatedAdditionalInformation3 : NewCompanyName
CorporateActionNarrative3 *-- "0..1" UpdatedURLlnformation : URLAddress
  

CorporateAction5 members

Member name Description Data Type / Multiplicity
DateDetails Provides information about the dates related to a corporate action event. CorporateActionDate14 - Optional 0..1
PeriodDetails Provides information about the periods related to a corporate action event. CorporateActionPeriod6 - Optional 0..1
RateAndAmountDetails Provides information about rates and amounts related to a corporate action event. CorporateActionRate16 - Optional 0..1
PriceDetails Provides information about the prices related to a corporate action event. CorporateActionPrice17 - Optional 0..1
SecuritiesQuantity Provides information about securities quantity linked to a corporate action. CorporateActionQuantity3 - Optional 0..1
InterestAccruedNumberOfDays Number of days used for calculating the accrued interest amount. IsoMax3Number - Optional 0..1
CouponNumber Number of the coupon attached/associated with a security. IIdentificationFormat1Choice - Unknown 0..0
CertificationRequiredIndicator Indicates whether certification is required from the account owner. Yes = certification required.
ChargesAppliedIndicator Indicates whether charges apply to the holder, for instance redemption charges. IsoYesNoIndicator - Optional 0..1
RestrictionIndicator Indicates whether there is restrictions apply to the corporate action event or not. Yes = There is restrictions.
AccruedInterestIndicator Indicates whether the holder is entitled to accrued interest. IsoYesNoIndicator - Optional 0..1
DividendType Specifies the conditions in which a dividend is paid. IDividendTypeFormat3Choice - Optional 0..1
ConversionType Specifies the conversion type of an instrument. IConversionTypeFormat1Choice - Optional 0..1
DistributionType Specifies whether the proceeds of the event will be distributed on a rolling basis rather than on a specific date. IDistributionTypeFormat1Choice - Optional 0..1
OfferType Specifies the conditions that apply to the offer. IOfferTypeFormat1Choice - Unknown 0..0
RenounceableEntitlementStatusType Specifies whether terms of the event allow resale of the rights. IRenounceableEntitlementStatusTypeFormat1Choice - Optional 0..1
EventStage Stage in the corporate action event life cycle. ICorporateActionEventStageFormat3Choice - Unknown 0..0
AdditionalBusinessProcessIndicator Specifies the type of the additional business process linked to a corporate action event such as a claim compensation or tax refund. IAdditionalBusinessProcessFormat1Choice - Unknown 0..0
ChangeType Specifies the type of change announced. ICorporateActionChangeTypeFormat1Choice - Unknown 0..0
IntermediateSecuritiesDistributionType Type of intermediates securities distribution. IIntermediateSecuritiesDistributionTypeFormat5Choice - Optional 0..1
CapitalGainInOutIndicator Specifies whether the capital gain is in the scope of the EU Savings directive for the income realised upon the sale, refund or redemption of shares and units (.) (Article 6(1d)). ICapitalGainFormat1Choice - Optional 0..1
TaxableIncomePerShareCalculated Specifies whether the financial instrument calculates the taxable income per dividend/taxable income per share. ITaxableIncomePerShareCalculatedFormat1Choice - Optional 0..1
ElectionType Specifies the effect on the holdings of electing a corporate action option. IElectionTypeFormat1Choice - Optional 0..1
LotteryType Specifies the type of lottery announced. ILotteryTypeFormat1Choice - Optional 0..1
CertificationType Specifies the certification format required, this is, physical or electronic format. ICertificationTypeFormat1Choice - Optional 0..1
NewPlaceOfIncorporation New company’s place of incorporation. IsoMax70Text - Optional 0..1
AdditionalInformation Provides additional information. This field may only be used when the information to be transmitted, cannot be coded. CorporateActionNarrative3 - Optional 0..1

CorporateActionOptionDetails building block

Information about the corporate action option. Provides information about the corporate action option. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionOption19 recursion level 0 with max 1
class CorporateActionOption19{
    OptionNumber IsoExact3NumericText
    NonDomicileCountry CountryCode
    ValidDomicileCountry CountryCode
    CurrencyOption ActiveCurrencyCode
    ChargesAppliedIndicator IsoYesNoIndicator
    CertificationIndicator IsoYesNoIndicator
    WithdrawalAllowedIndicator IsoYesNoIndicator
    ChangeAllowedIndicator IsoYesNoIndicator
}
CorporateActionOption19 *-- "1..1" ICorporateActionOption2Choice : OptionType
CorporateActionOption19 *-- "0..1" IFractionDispositionType1Choice : FractionDisposition
CorporateActionOption19 *-- "0..0" IOfferTypeFormat1Choice : OfferType
CorporateActionOption19 *-- "0..0" IOptionFeaturesFormat5Choice : OptionFeatures
CorporateActionOption19 *-- "0..1" IOptionAvailabilityStatus1Choice : OptionAvailabilityStatus
CorporateActionOption19 *-- "0..0" IBeneficiaryCertificationType1Choice : CertificationType
CorporateActionOption19 *-- "1..1" IDefaultProcessingOrStandingInstruction1Choice : DefaultProcessingOrStandingInstruction
CorporateActionOption19 *-- "0..1" SecurityIdentification14 : SecurityIdentification
CorporateActionOption19 *-- "0..1" CorporateActionDate15 : DateDetails
CorporateActionOption19 *-- "0..1" CorporateActionPeriod7 : PeriodDetails
CorporateActionOption19 *-- "0..1" CorporateActionRate15 : RateAndAmountDetails
CorporateActionOption19 *-- "0..1" CorporateActionPrice16 : PriceDetails
CorporateActionOption19 *-- "0..1" SecuritiesOption15 : SecuritiesQuantity
CorporateActionOption19 *-- "0..0" SecuritiesOption14 : SecuritiesMovementDetails
CorporateActionOption19 *-- "0..0" CashOption10 : CashMovementDetails
CorporateActionOption19 *-- "0..1" CorporateActionNarrative5 : AdditionalInformation
%% ICorporateActionOption2Choice recursion level 1 with max 1
%% IFractionDispositionType1Choice recursion level 1 with max 1
%% IOfferTypeFormat1Choice recursion level 1 with max 1
%% IOptionFeaturesFormat5Choice recursion level 1 with max 1
%% IOptionAvailabilityStatus1Choice recursion level 1 with max 1
%% IBeneficiaryCertificationType1Choice recursion level 1 with max 1
%% IDefaultProcessingOrStandingInstruction1Choice recursion level 1 with max 1
%% SecurityIdentification14 recursion level 1 with max 1
class SecurityIdentification14{
    ISIN IsoISINIdentifier
    Description IsoMax140Text
}
SecurityIdentification14 *-- "0..0" OtherIdentification1 : OtherIdentification
%% CorporateActionDate15 recursion level 1 with max 1
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : EarlyResponseDeadline
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : CoverExpirationDate
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : ProtectDate
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : MarketDeadline
CorporateActionDate15 *-- "0..1" IDateFormat20Choice : ResponseDeadline
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : ExpiryDate
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : SubscriptionCostDebitDate
CorporateActionDate15 *-- "0..1" IDateFormat19Choice : DepositoryCoverExpirationDate
%% CorporateActionPeriod7 recursion level 1 with max 1
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : PriceCalculationPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : ParallelTradingPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : ActionPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : RevocabilityPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : PrivilegeSuspensionPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : AccountServicerRevocabilityPeriod
CorporateActionPeriod7 *-- "0..1" IPeriod3Choice : DepositorySuspensionPeriodForWithdrawal
%% CorporateActionRate15 recursion level 1 with max 1
CorporateActionRate15 *-- "0..1" IRateAndAmountFormat14Choice : AdditionalTax
CorporateActionRate15 *-- "0..0" IGrossDividendRateFormat5Choice : GrossDividendRate
CorporateActionRate15 *-- "0..1" IRateAndAmountFormat14Choice : IndexFactor
CorporateActionRate15 *-- "0..0" IInterestRateUsedForPaymentFormat5Choice : InterestRateUsedForPayment
CorporateActionRate15 *-- "0..1" IRateFormat6Choice : MaximumAllowedOversubscriptionRate
CorporateActionRate15 *-- "0..1" IRateFormat6Choice : ProrationRate
CorporateActionRate15 *-- "0..1" IRateFormat6Choice : WithholdingTaxRate
CorporateActionRate15 *-- "0..0" RateTypeAndAmountAndStatus6 : TaxRelatedRate
CorporateActionRate15 *-- "0..0" RateTypeAndAmountAndStatus11 : TaxableIncomePerDividendShare
%% CorporateActionPrice16 recursion level 1 with max 1
CorporateActionPrice16 *-- "0..1" IPriceFormat19Choice : CashInLieuOfSharePrice
CorporateActionPrice16 *-- "0..0" IPriceFormat20Choice : GenericCashPriceReceivedPerProduct
CorporateActionPrice16 *-- "0..1" IPriceFormat19Choice : OverSubscriptionDepositPrice
%% SecuritiesOption15 recursion level 1 with max 1
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity1Choice : MaximumExercisableQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewBoardLotQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewDenominationQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity16Choice : FrontEndOddLotQuantity
SecuritiesOption15 *-- "0..1" IFinancialInstrumentQuantity16Choice : BackEndOddLotQuantity
%% SecuritiesOption14 recursion level 1 with max 1
class SecuritiesOption14{
    CreditDebitIndicator CreditDebitCode
    CurrencyOption ActiveCurrencyCode
}
SecuritiesOption14 *-- "1..1" FinancialInstrumentAttributes16 : SecurityDetails
SecuritiesOption14 *-- "0..1" ITemporaryFinancialInstrumentIndicator1Choice : TemporaryFinancialInstrumentIndicator
SecuritiesOption14 *-- "0..1" INonEligibleProceedsIndicator1Choice : NonEligibleProceedsIndicator
SecuritiesOption14 *-- "0..1" IQuantity6Choice : EntitledQuantity
SecuritiesOption14 *-- "0..1" IFractionDispositionType1Choice : FractionDisposition
SecuritiesOption14 *-- "0..1" IPeriod3Choice : TradingPeriod
SecuritiesOption14 *-- "1..1" SecurityDate5 : DateDetails
SecuritiesOption14 *-- "0..1" CorporateActionRate17 : RateDetails
SecuritiesOption14 *-- "0..1" CorporateActionPrice18 : PriceDetails
%% CashOption10 recursion level 1 with max 1
class CashOption10{
    CreditDebitIndicator CreditDebitCode
}
CashOption10 *-- "0..1" INonEligibleProceedsIndicator1Choice : NonEligibleProceedsIndicator
CashOption10 *-- "0..1" GenericIdentification20 : IncomeType
CashOption10 *-- "0..1" ICashAccountIdentification5Choice : CashAccountIdentification
CashOption10 *-- "0..1" CorporateActionAmounts10 : AmountDetails
CashOption10 *-- "1..1" CorporateActionDate17 : DateDetails
CashOption10 *-- "0..1" ForeignExchangeTerms13 : ForeignExchangeDetails
CashOption10 *-- "0..1" RateDetails3 : RateAndAmountDetails
CashOption10 *-- "0..1" PriceDetails3 : PriceDetails
%% CorporateActionNarrative5 recursion level 1 with max 1
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation3 : AdditionalText
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation3 : NarrativeVersion
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : InformationConditions
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : InformationToComplyWith
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : SecurityRestriction
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : TaxationConditions
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : Disclaimer
  

CorporateActionOption19 members

Member name Description Data Type / Multiplicity
OptionNumber Number identifying the available corporate action options. IsoExact3NumericText - Required 1..1
OptionType Specifies the corporate action options available to the account owner. ICorporateActionOption2Choice - Required 1..1
FractionDisposition Specifies how fractions resulting from derived securities will be processed or how prorated decisions will be rounding, if provided with a pro ration rate. IFractionDispositionType1Choice - Optional 0..1
OfferType Specifies the conditions that apply to the offer. IOfferTypeFormat1Choice - Unknown 0..0
OptionFeatures Specifies the features that may apply to a corporate action option. IOptionFeaturesFormat5Choice - Unknown 0..0
OptionAvailabilityStatus Specifies the status of the option. IOptionAvailabilityStatus1Choice - Optional 0..1
CertificationType Type of certification which is required. IBeneficiaryCertificationType1Choice - Unknown 0..0
NonDomicileCountry Holder of the security has to certify, in line with the terms of the corporate action, that it is not domiciled in the country indicated. CountryCode - Unknown 0..0
ValidDomicileCountry Country of domicile in which the Corporate Action option is valid. The holder of the security has to certify that it is domiciled in the country indicated. CountryCode - Unknown 0..0
CurrencyOption Currency in which the cash disbursed from an interest or dividend payment is offered. ActiveCurrencyCode - Optional 0..1
DefaultProcessingOrStandingInstruction Indicates whether the corporate action movement is a default processing or a standing instruction. IDefaultProcessingOrStandingInstruction1Choice - Required 1..1
ChargesAppliedIndicator Indicates whether charges apply to the holder, for instance redemption charges. IsoYesNoIndicator - Optional 0..1
CertificationIndicator Whether or not certification is required from the account owner. Yes: certification required
WithdrawalAllowedIndicator Indicates whether withdrawal of instruction is allowed. IsoYesNoIndicator - Optional 0..1
ChangeAllowedIndicator Indicates whether change of instruction is allowed. IsoYesNoIndicator - Optional 0..1
SecurityIdentification Identifies the financial instrument. SecurityIdentification14 - Optional 0..1
DateDetails Provides information about the dates related to a corporate action option. CorporateActionDate15 - Optional 0..1
PeriodDetails Provides information about the periods related to a corporate action option. CorporateActionPeriod7 - Optional 0..1
RateAndAmountDetails Provides information about rates and amounts related to a corporate action option. CorporateActionRate15 - Optional 0..1
PriceDetails Provides information about the prices related to a corporate action option. CorporateActionPrice16 - Optional 0..1
SecuritiesQuantity Provides information about securities quantity linked to a corporate action option. SecuritiesOption15 - Optional 0..1
SecuritiesMovementDetails Provides information about the securities movement linked to the corporate action option. SecuritiesOption14 - Unknown 0..0
CashMovementDetails Provides information about the cash movement linked to the corporate action option. CashOption10 - Unknown 0..0
AdditionalInformation Provides additional information. CorporateActionNarrative5 - Optional 0..1

AdditionalInformation building block

Provides additional information. Provides additional information such as the taxation conditions. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionNarrative11 recursion level 0 with max 1
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : AdditionalText
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : NarrativeVersion
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : InformationConditions
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : InformationToComplyWith
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : TaxationConditions
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : Disclaimer
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : PartyContactNarrative
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : DeclarationDetails
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : RegistrationDetails
CorporateActionNarrative11 *-- "0..1" UpdatedAdditionalInformation2 : BasketOrIndexInformation
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
%% UpdatedAdditionalInformation2 recursion level 1 with max 1
class UpdatedAdditionalInformation2{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax8000Text
}
  

CorporateActionNarrative11 members

Member name Description Data Type / Multiplicity
AdditionalText Provides additional information or specifies in more detail the content of a message. This field may only be used when the information to be transmitted, cannot be coded. UpdatedAdditionalInformation2 - Optional 0..1
NarrativeVersion Provides information that can be ignored for automated processing; - reiteration of information that has been included within structured fields of this message, - or narrative information not needed for automatic processing. UpdatedAdditionalInformation2 - Optional 0..1
InformationConditions Provides conditional information related to the event, for example, an offer is subject to 50 percent acceptance, the offeror allows the securities holder to set some conditions. UpdatedAdditionalInformation2 - Optional 0..1
InformationToComplyWith Provides information conditions to the account owner that are to be complied with, for example, not open to US/Canadian residents, Qualified Institutional Buyers (QIB) or SIL (Sophisticated Investor Letter) to be provided. UpdatedAdditionalInformation2 - Optional 0..1
TaxationConditions Provides taxation conditions that cannot be included within the structured fields of this message and has not been mentioned in the Service Level Agreement (SLA). UpdatedAdditionalInformation2 - Optional 0..1
Disclaimer Provides a disclaimer relative to the information provided in the message. It may be ignored for automated processing. UpdatedAdditionalInformation2 - Optional 0..1
PartyContactNarrative Provides additional information regarding the party, for example, the contact unit or person responsible for the transaction identified in the message. UpdatedAdditionalInformation2 - Optional 0..1
DeclarationDetails Provides declaration details narrative relative to the financial instrument, for example, beneficial ownership. UpdatedAdditionalInformation2 - Optional 0..1
RegistrationDetails Provides information required for the registration. UpdatedAdditionalInformation2 - Optional 0..1
BasketOrIndexInformation Provides additional information on the basket or index underlying a security, for example a warrant. UpdatedAdditionalInformation2 - Optional 0..1

IssuerAgent building block

Party appointed to administer the event on behalf of the issuer company/offeror. The party may be contacted for more information about the event. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

PayingAgent building block

Agent (principal or fiscal paying agent) appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

SubPayingAgent building block

Sub-agent appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

Registrar building block

Party/agent responsible for maintaining the register of a security. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

ResellingAgent building block

A broker-dealer responsible for reselling to new investors securities (usually bonds) that have been tendered for purchase by their owner. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

PhysicalSecuritiesAgent building block

A trust company, bank or similar financial institution assigned by an issuer to accept presentations of instruments, usually bonds, for transfer and or exchange. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

DropAgent building block

A trust company, bank or similar financial institution who acts on behalf of an out of town agent or event agent where securities can be delivered in person. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

SolicitationAgent building block

A trust company, bank or similar financial institution assigned by an issuer to maintain records of investors and account balances and transactions for the consent of a material change. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

InformationAgent building block

A trust company, bank or similar financial institution assigned by an Issuer to provide information and copies of the offering documentation. Choice of identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification47Choice members

Member name Description Data Type / Multiplicity

SupplementaryData building block

Additional information that can not be captured in the structured fields and/or any other specific block. Additional information that can not be captured in the structured fields and/or any other specific block. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% SupplementaryData1 recursion level 0 with max 1
class SupplementaryData1{
    PlaceAndName IsoMax350Text
}
SupplementaryData1 *-- "1..1" IsoSupplementaryDataEnvelope1 : Envelope
%% IsoSupplementaryDataEnvelope1 recursion level 1 with max 1
  

SupplementaryData1 members

Member name Description Data Type / Multiplicity
PlaceAndName Unambiguous reference to the location where the supplementary data must be inserted in the message instance. In the case of XML, this is expressed by a valid XPath. IsoMax350Text - Optional 0..1
Envelope Technical element wrapping the supplementary data. IsoSupplementaryDataEnvelope1 - Required 1..1

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    CorporateActionNotificationV02 --|> IOuterRecord : Implements
    CorporateActionNotificationV02Document --|> IOuterDocument~CorporateActionNotificationV02~ : Implements
    class IOuterDocument~CorporateActionNotificationV02~ {
        CorporateActionNotificationV02 Message
     }
  

Document wrapper for serialization

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

classDiagram
    CorporateActionNotificationV02Document *-- CorporateActionNotificationV02 : 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.031.001.02">
    <CorpActnNtfctn>
        <NtfctnGnlInf>
            <!-- NotificationGeneralInformation inner content -->
        </NtfctnGnlInf>
        <PrvsNtfctnId>
            <!-- PreviousNotificationIdentification inner content -->
        </PrvsNtfctnId>
        <InstrId>
            <!-- InstructionIdentification inner content -->
        </InstrId>
        <OthrDocId>
            <!-- OtherDocumentIdentification inner content -->
        </OthrDocId>
        <EvtsLkg>
            <!-- EventsLinkage inner content -->
        </EvtsLkg>
        <CorpActnGnlInf>
            <!-- CorporateActionGeneralInformation inner content -->
        </CorpActnGnlInf>
        <AcctDtls>
            <!-- AccountDetails inner content -->
        </AcctDtls>
        <IntrmdtScty>
            <!-- IntermediateSecurity inner content -->
        </IntrmdtScty>
        <CorpActnDtls>
            <!-- CorporateActionDetails inner content -->
        </CorpActnDtls>
        <CorpActnOptnDtls>
            <!-- CorporateActionOptionDetails inner content -->
        </CorpActnOptnDtls>
        <AddtlInf>
            <!-- AdditionalInformation inner content -->
        </AddtlInf>
        <IssrAgt>
            <!-- IssuerAgent inner content -->
        </IssrAgt>
        <PngAgt>
            <!-- PayingAgent inner content -->
        </PngAgt>
        <SubPngAgt>
            <!-- SubPayingAgent inner content -->
        </SubPngAgt>
        <Regar>
            <!-- Registrar inner content -->
        </Regar>
        <RsellngAgt>
            <!-- ResellingAgent inner content -->
        </RsellngAgt>
        <PhysSctiesAgt>
            <!-- PhysicalSecuritiesAgent inner content -->
        </PhysSctiesAgt>
        <DrpAgt>
            <!-- DropAgent inner content -->
        </DrpAgt>
        <SlctnAgt>
            <!-- SolicitationAgent inner content -->
        </SlctnAgt>
        <InfAgt>
            <!-- InformationAgent inner content -->
        </InfAgt>
        <SplmtryData>
            <!-- SupplementaryData inner content -->
        </SplmtryData>
    </CorpActnNtfctn>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_EWOhod23Ed-KAqAOGQOnnw"
  nextVersions="_nn6bcfmMEeC_eLZALo-S0A"
  previousVersion="_Tid7kNEwEd-BzquC8wXy7w_1341196327"
  name="CorporateActionNotificationV02"
  definition="Scope&#xD;&#xA;An account servicer sends the CorporateActionNotification message to an account owner or its designated agent to notify details of a corporate action event and optionally account information, eligible balance and entitlements. It may also include possible elections or choices available to the account owner.&#xD;&#xA;The account servicer can initially send the CorporateActionNotification message as a preliminary advice, subsequently replaced by another CorporateActionNotification message with complete or confirmed information.&#xD;&#xA;It may also be sent to an account owner or its designated agent, to remind of event details and/or of missing or incomplete instructions for a corporate action event.&#xD;&#xA;Usage&#xD;&#xA;The message may also be used to:&#xD;&#xA;- re-send a message previously sent (the sub-function of the message is Duplicate),&#xD;&#xA;- provide a third party with a copy of a message for information (the sub-function of the message is Copy),&#xD;&#xA;- re-send to a third party a copy of a message for information (the sub-function of the message is Copy Duplicate),&#xD;&#xA;using the relevant elements in the business application header (BAH).&#xA;ISO 15022 - 20022 COEXISTENCE&#xA;This ISO 20022 message is reversed engineered from ISO 15022. Both standards will coexist for a certain number of years. Until this coexistence period ends, the usage of certain data types is restricted to ensure interoperability between ISO 15022 and 20022 users. Compliance to these rules is mandatory in a coexistence environment. The coexistence restrictions are described in a Textual Rule linked to the Message Items they concern. These coexistence textual rules are clearly identified as follows: “CoexistenceXxxxRule”."
  registrationStatus="Registered"
  messageSet="_urpIICeJEeOCeO5e7islRQ"
  xmlTag="CorpActnNtfctn"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <constraint
    xmi:id="_29BtIffnEd-kzO1iJmuTsg"
    name="InterestPaymentRule"
    definition="CorporateActionDetails/RateAndAmountDetails/Interest and CorporateActionOptionsDetails/RateAndAmountDetails/InterestRateUsedforPayment must not be mixed. Interest is used to provide the annual rate of the financial instrument. InterestRateUsedforPayment is used to provide the applicable rate for the current payment, after all calculations have been performed, that is, application of period and method of interest computation."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh0923Ed-KAqAOGQOnnw"
    name="SafekeepingAccount1Rule"
    definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR then any element in the list (MinimumNominalQuantity, MinimumExercisableQuantity,MinimumExercisableMultipleQuantity, ContractSize) must not be present in any occurrences of CorporateActionOptionDetails/SecuritiesMovementDetails/SecurityDetails;&#xD;&#xA;(MT564 Rule C2 - part 1)."
    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;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumNominalQuantity&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumExercisableQuantity&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumExercisableMultipleQuantity&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/ContractSize&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;/AccountDetails/ForAllAccounts&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/AccountDetails/ForAllAccounts/IdentificationCode&lt;/leftOperand&gt;&lt;rightOperand&gt;General&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh1d23Ed-KAqAOGQOnnw"
    name="SafekeepingAccount2Rule"
    definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR then AmountDetails must not be present in any occurrences of CorporateActionOptionDetails/CashMovementDetails.&#xD;&#xA;(MT564 Rule C2 - part 2)."
    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;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[*]/CashMovementDetails[*]/AmountDetails&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;/AccountDetails/ForAllAccounts&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/AccountDetails/ForAllAccounts/IdentificationCode&lt;/leftOperand&gt;&lt;rightOperand&gt;General&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh1923Ed-KAqAOGQOnnw"
    name="QuantityOfIntermediateSecuritiesRule"
    definition="If NotificationGeneralInformation/EligibleBalanceIndicator is &quot;true&quot; or &quot;1&quot; (yes) and if IntermediateSecurity is present, then IntermediateSecurity/Quantity must be present.&#xD;&#xA;(MT564 Rule C3)."
    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;/IntermediateSecurity/Quantity&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;/NotificationGeneralInformation/EligibleBalanceIndicator&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/NotificationGeneralInformation/EligibleBalanceIndicator&lt;/leftOperand&gt;&lt;rightOperand&gt;true&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/IntermediateSecurity&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh2d23Ed-KAqAOGQOnnw"
    name="OtherEventRule"
    definition="If CorporateActionGeneralInformation/EventType/Code is OTHR then at least one occurrence of AdditionalInformation/AdditionalText/AdditionalInformation must be present.&#xD;&#xA;(MT564 NVR C4)."
    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;/AdditionalInformation&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/AdditionalInformation/AdditionalText&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/AdditionalInformation/AdditionalText/AdditionalInformation[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;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;OtherEvent&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh2923Ed-KAqAOGQOnnw"
    name="IntermediateSecurity1Rule"
    definition="If CorporateActionGeneralInformation/EventType/Code is RHDI, then IntermediateSecurity must be absent.&#xA;(MT 564 NVR C7)."
    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;Absence&quot;&gt;&lt;leftOperand&gt;/IntermediateSecurity&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;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;IntermediateSecuritiesDistribution&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh3d23Ed-KAqAOGQOnnw"
    name="IntermediateSecurity2Rule"
    definition="If CorporateActionGeneralInformation/EventType/Code is RHTS, then IntermediateSecurity must be present.&#xA;(MT 564 NVR C7)."
    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;/IntermediateSecurity&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;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;RightsIssue&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh3923Ed-KAqAOGQOnnw"
    name="NotificationIdentificationRule"
    definition="If NotificationGeneralInformation/NotificationType is REPL or RMDR then PreviousNotificationIdentification must be present. &#xD;&#xA;(MT 564 NVR C10)."
    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;/PreviousNotificationIdentification&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/mustBe&gt;&lt;onCondition&gt;&lt;connector&gt;OR&lt;/connector&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/NotificationGeneralInformation/NotificationType&lt;/leftOperand&gt;&lt;rightOperand&gt;Replacement&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/NotificationGeneralInformation/NotificationType&lt;/leftOperand&gt;&lt;rightOperand&gt;Reminder&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh4d23Ed-KAqAOGQOnnw"
    name="IntermediateSecuritiesDistribution1Rule"
    definition="If CorporateActionGeneralInformation/EventType/Code is RHDI, then CorporateActionDetails/&#xD;&#xA;IntermediateSecuritiesDistributionType must be present in at least one occurrence of CorporateActionDetails.&#xD;&#xA;(MT 564 NVR C12)."
    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;/CorporateActionDetails&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/CorporateActionDetails/IntermediateSecuritiesDistributionType&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;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;IntermediateSecuritiesDistribution&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh5d23Ed-KAqAOGQOnnw"
    name="PaymentDateRule"
    definition="If at least one occurrence of CorporateActionOptionDetails/SecuritiesMovementDetails or at least one occurrence of CorporateActionOptionDetails/CashMovementDetails is present, then CorporateActionDetails/DateDetails/PaymentDate must be absent. (MT 564 NVR C17)."
    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;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionDetails/DateDetails/PaymentDate&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/mustBe&gt;&lt;onCondition&gt;&lt;connector&gt;OR&lt;/connector&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[1]/CashMovementDetails[1]&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Presence&quot;&gt;&lt;leftOperand&gt;/CorporateActionOptionDetails[1]/SecuritiesMovementDetails[1]&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <constraint
    xmi:id="_EWOh5923Ed-KAqAOGQOnnw"
    name="NameChangeRule"
    definition="If CorporateActionDetails/AdditionalInformation/NewCompanyName/AdditionalInformation is present, then CorporateActionGeneralInformation/EventType/Code value CHAN must be present and CorporateActionDetails/ChangeType/Code value NAME must be present in at least one occurrence of CorporateActionDetails/ChangeType.&#xD;&#xA;(MT 564 NVR C11)."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh6d23Ed-KAqAOGQOnnw"
    name="RateAndCorporateActionEventRule"
    definition="If CorporateActionOptionDetails/RateAndAmountDetails/GrossDividendRate/NotSpecifiedRate/Code value or CorporateActionOptionDetails/RateAndAmountDetails/InterestRateUsedForPayment/NotSpecifiedRate/Code value is NILP (Nil Payment), then CorporateActionGeneralInformation/EventType/Code must be either DVCA (CashDividend) or INTR (InterestPayment).&#xD;&#xA;If CorporateActionOptionDetails/CashMovementDetails/RateAndAmountDetails/GrossDividendRate/NotSpecifiedRate/Code value or CorporateActionOptionDetails/CashMovementDetails/RateAndAmountDetails/InterestRateUsedForPayment/NotSpecifiedRate/Code value is NILP (Nil Payment), then CorporateActionGeneralInformation/EventType/Code must be either DVCA (CashDividend) or INTR (InterestPayment)."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh6923Ed-KAqAOGQOnnw"
    name="TotalEligibleBalanceRule"
    definition="If NotificationGeneralInformation/EligibleBalanceIndicator is 'Yes' ('true' or '1'), then at least one occurrence of AccountDetails/AccountsListAndBalanceDetails must be present and TotalEligibleBalance must be present in all occurrences of AccountDetails/AccountsListAndBalanceDetails/Balance.&#xD;&#xA;If NotificationGeneralInformation/EligibleBalanceIndicator is 'No' ('false' or '0') or is not present, then TotalEligibleBalance may or may not be present in all occurrences of AccountDetails/AccountsListAndBalanceDetails/Balance but it will not necessarily be the final eligible balance quantity."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh7923Ed-KAqAOGQOnnw"
    name="MinimumExercisableQuantityGuideline"
    definition="MinimumExercisableQuantity and MinimumExercisableMultipleQuantity elements in CorporateActionOptionDetails/SecuritiesQuantity are different from MinimumExercisableQuantity and MinimumExercisableMultipleQuantity elements in CorporateActionGeneralInformation/UnderlyingSecurity as they give indication on quantity of financial instrument in the precise context of the described corporate actions for a given account servicer.&#xA;In CorporateActionGeneralInformation/UnderlyingSecurity, the quantity given are the quantity pertaining to the financial instrument in general, not specifics to the corporate action processing."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh8d23Ed-KAqAOGQOnnw"
    name="IssuerAgentGuideline"
    definition="IssuerAgent must be used only in the communication between a CSD and local custodians."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh8923Ed-KAqAOGQOnnw"
    name="CoexistenceCharacterSetXRule"
    definition="During ISO 15022 – 20022 coexistence, characters used in all text fields (except for CorporateActionDetails/CorporateActionAdditionalInformation/URLAddress)  must correspond to character set X, that is, a-z A-Z / - ? : ( ) . , ‘ + { } CR LF."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh9d23Ed-KAqAOGQOnnw"
    name="CoexistenceIdentificationRule"
    definition="During ISO 15022 – 20022 coexistence, all transaction and document identifications or references must be 16 characters or less. The field must not start or end with a slash ‘/’ or contain two consecutive slashes ‘//’."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_EWOh7d23Ed-KAqAOGQOnnw"
    name="MaturityDateRule"
    definition="If CorporateActionDetails/DateDetails/MaturityDate is present, then CorporateActionGeneralInformation/EventType/Code is EXTM (Maturity Extension)."
    registrationStatus="Provisionally Registered" />
  <messageBuildingBlock
    xmi:id="_EWOhpd23Ed-KAqAOGQOnnw"
    name="NotificationGeneralInformation"
    definition="General information about the event notification type, status and contents."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="NtfctnGnlInf"
    complexType="_UKK4adp-Ed-ak6NoX_4Aeg_1604589270" />
  <messageBuildingBlock
    xmi:id="_EWOhp923Ed-KAqAOGQOnnw"
    name="PreviousNotificationIdentification"
    definition="Identification of a previously sent notification document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="PrvsNtfctnId"
    complexType="_Tg5R59p-Ed-ak6NoX_4Aeg_1248673251" />
  <messageBuildingBlock
    xmi:id="_EWOhqd23Ed-KAqAOGQOnnw"
    name="InstructionIdentification"
    definition="Identification of a related instruction document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="InstrId"
    complexType="_RXpteNp-Ed-ak6NoX_4Aeg_66239534" />
  <messageBuildingBlock
    xmi:id="_EWOhq923Ed-KAqAOGQOnnw"
    name="OtherDocumentIdentification"
    definition="Identification of other documents as well as the document number."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OthrDocId"
    complexType="_ThCb29p-Ed-ak6NoX_4Aeg_15602052" />
  <messageBuildingBlock
    xmi:id="_EWOhrd23Ed-KAqAOGQOnnw"
    name="EventsLinkage"
    definition="Identification of an other corporate action event that needs to be closely linked to the processing of the event notified in this document."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="EvtsLkg"
    complexType="_QxXJhNp-Ed-ak6NoX_4Aeg_-1181547020" />
  <messageBuildingBlock
    xmi:id="_EWOhr923Ed-KAqAOGQOnnw"
    name="CorporateActionGeneralInformation"
    definition="General information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CorpActnGnlInf"
    complexType="_buPe4eaUEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhsd23Ed-KAqAOGQOnnw"
    name="AccountDetails"
    definition="General information about the safekeeping account, owner and account balance."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="AcctDtls"
    complexType="_jINvYeaPEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhs923Ed-KAqAOGQOnnw"
    name="IntermediateSecurity"
    definition="Provides details on rights credited to the account as for instance trading period, expiry date, renounceability."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="IntrmdtScty"
    complexType="_0Zq7QeEMEd-qUMZtd_eZuQ" />
  <messageBuildingBlock
    xmi:id="_EWOhtd23Ed-KAqAOGQOnnw"
    name="CorporateActionDetails"
    definition="Information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnDtls"
    complexType="_SFIFId24Ed-KAqAOGQOnnw" />
  <messageBuildingBlock
    xmi:id="_EWOht923Ed-KAqAOGQOnnw"
    name="CorporateActionOptionDetails"
    definition="Information about the corporate action option."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="CorpActnOptnDtls"
    complexType="_Di_cId3eEd-KAqAOGQOnnw" />
  <messageBuildingBlock
    xmi:id="_EWOhud23Ed-KAqAOGQOnnw"
    name="AdditionalInformation"
    definition="Provides additional information."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="AddtlInf"
    complexType="_ULEQUNp-Ed-ak6NoX_4Aeg_-1561052303" />
  <messageBuildingBlock
    xmi:id="_EWOhv923Ed-KAqAOGQOnnw"
    name="IssuerAgent"
    definition="Party appointed to administer the event on behalf of the issuer company/offeror. The party may be contacted for more information about the event."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="IssrAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhwd23Ed-KAqAOGQOnnw"
    name="PayingAgent"
    definition="Agent (principal or fiscal paying agent) appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="PngAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhw923Ed-KAqAOGQOnnw"
    name="SubPayingAgent"
    definition="Sub-agent appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SubPngAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhxd23Ed-KAqAOGQOnnw"
    name="Registrar"
    definition="Party/agent responsible for maintaining the register of a security."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Regar"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhx923Ed-KAqAOGQOnnw"
    name="ResellingAgent"
    definition="A broker-dealer responsible for reselling to new investors securities (usually bonds) that have been tendered for purchase by their owner."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="RsellngAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhyd23Ed-KAqAOGQOnnw"
    name="PhysicalSecuritiesAgent"
    definition="A trust company, bank or similar financial institution assigned by an issuer to accept presentations of instruments, usually bonds, for transfer and or exchange."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="PhysSctiesAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhy923Ed-KAqAOGQOnnw"
    name="DropAgent"
    definition="A trust company, bank or similar financial institution who acts on behalf of an out of town agent or event agent where securities can be delivered in person."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="DrpAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhzd23Ed-KAqAOGQOnnw"
    name="SolicitationAgent"
    definition="A trust company, bank or similar financial institution assigned by an issuer to maintain records of investors and account balances and transactions for the consent of a material change."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SlctnAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOhz923Ed-KAqAOGQOnnw"
    name="InformationAgent"
    definition="A trust company, bank or similar financial institution assigned by an Issuer to provide information and copies of the offering documentation."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="InfAgt"
    complexType="_rFE_oeaMEd-q8fx_Zl_34A" />
  <messageBuildingBlock
    xmi:id="_EWOh0d23Ed-KAqAOGQOnnw"
    name="SupplementaryData"
    definition="Additional information that can not be captured in the structured fields and/or any other specific block."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SplmtryData"
    complexType="_Qn0zC9p-Ed-ak6NoX_4Aeg_468227563" />
  <messageDefinitionIdentifier
    businessArea="seev"
    messageFunctionality="031"
    flavour="001"
    version="02" />
</messageDefinition>

ISO Building Blocks

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