CorporateActionMovementPreliminaryAdvice002V12

seev.035.002.12

Scope The CorporateActionMovementPreliminaryAdvice message is sent by an account servicer to an account owner or its designated agent to pre-advise an upcoming posting or reversal of securities and/or cash postings. 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
%% CorporateActionMovementPreliminaryAdvice002V12 recursion level 0 with max 0
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" Pagination1 : Pagination
CorporateActionMovementPreliminaryAdvice002V12 *-- "1..1" CorporateActionPreliminaryAdviceType2 : MovementPreliminaryAdviceGeneralInformation
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" DocumentIdentification37 : PreviousMovementPreliminaryAdviceIdentification
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" DocumentIdentification37 : NotificationIdentification
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" DocumentIdentification37 : MovementConfirmationIdentification
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" DocumentIdentification17 : InstructionIdentification
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" DocumentIdentification38 : OtherDocumentIdentification
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" CorporateActionEventReference4 : EventsLinkage
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" CorporateActionReversalReason4 : ReversalReason
CorporateActionMovementPreliminaryAdvice002V12 *-- "1..1" CorporateActionGeneralInformation151 : CorporateActionGeneralInformation
CorporateActionMovementPreliminaryAdvice002V12 *-- "1..1" IAccountIdentification45Choice : AccountDetails
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" CorporateAction49 : CorporateActionDetails
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" CorporateActionOption190 : CorporateActionMovementDetails
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" CorporateActionNarrative37 : AdditionalInformation
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification151Choice : IssuerAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : PayingAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : SubPayingAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : Registrar
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : ResellingAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : PhysicalSecuritiesAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : DropAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : SolicitationAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification137Choice : InformationAgent
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" SupplementaryData1 : SupplementaryData
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification151Choice : Issuer
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification151Choice : Offeror
CorporateActionMovementPreliminaryAdvice002V12 *-- "0..1" IPartyIdentification151Choice : TransferAgent
  

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

Pagination building block

Page number of the message and continuation indicator to indicate that the multi-part preliminary advice is to continue or that the message is the last page of the multi-part preliminary advice. Number used to sequence pages when it is not possible for data to be conveyed in a single message and the data has to be split across several pages (messages). For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% Pagination1 recursion level 0 with max 1
class Pagination1{
    PageNumber IsoMax5NumericText
    LastPageIndicator IsoYesNoIndicator
}
  

Pagination1 members

Member name Description Data Type / Multiplicity
PageNumber Page number. IsoMax5NumericText - Required 1..1
LastPageIndicator Indicates the last page. IsoYesNoIndicator - Required 1..1

MovementPreliminaryAdviceGeneralInformation building block

General information about the movement preliminary advice document. Type of movement preliminary advice document. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionPreliminaryAdviceType2 recursion level 0 with max 1
class CorporateActionPreliminaryAdviceType2{
    Type CorporateActionPreliminaryAdviceType1Code
    EligibilityIndicator IsoYesNoIndicator
}
  

CorporateActionPreliminaryAdviceType2 members

Member name Description Data Type / Multiplicity
Type Type of movement preliminary advice, for example. new or replacement. CorporateActionPreliminaryAdviceType1Code - Required 1..1
EligibilityIndicator Indicates whether the movement preliminary advice is sent after entitlement date. Value is Yes (true) if sent after entitlement date and No (false) if sent before entitlement date. IsoYesNoIndicator - Optional 0..1

PreviousMovementPreliminaryAdviceIdentification building block

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

classDiagram
   direction tb
%% DocumentIdentification37 recursion level 0 with max 1
class DocumentIdentification37{
    Identification IsoRestrictedFINXMax16Text
}
DocumentIdentification37 *-- "0..1" IProcessingPosition10Choice : LinkageType
%% IProcessingPosition10Choice recursion level 1 with max 1
  

DocumentIdentification37 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoRestrictedFINXMax16Text - Required 1..1
LinkageType Specifies when this document is to be processed relative to another referred document. IProcessingPosition10Choice - Optional 0..1

NotificationIdentification 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
%% DocumentIdentification37 recursion level 0 with max 1
class DocumentIdentification37{
    Identification IsoRestrictedFINXMax16Text
}
DocumentIdentification37 *-- "0..1" IProcessingPosition10Choice : LinkageType
%% IProcessingPosition10Choice recursion level 1 with max 1
  

DocumentIdentification37 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoRestrictedFINXMax16Text - Required 1..1
LinkageType Specifies when this document is to be processed relative to another referred document. IProcessingPosition10Choice - Optional 0..1

MovementConfirmationIdentification building block

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

classDiagram
   direction tb
%% DocumentIdentification37 recursion level 0 with max 1
class DocumentIdentification37{
    Identification IsoRestrictedFINXMax16Text
}
DocumentIdentification37 *-- "0..1" IProcessingPosition10Choice : LinkageType
%% IProcessingPosition10Choice recursion level 1 with max 1
  

DocumentIdentification37 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoRestrictedFINXMax16Text - Required 1..1
LinkageType Specifies when this document is to be processed relative to another referred document. IProcessingPosition10Choice - 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
%% DocumentIdentification17 recursion level 0 with max 1
class DocumentIdentification17{
    Identification IsoRestrictedFINXMax16Text
}
  

DocumentIdentification17 members

Member name Description Data Type / Multiplicity
Identification Identifies the document. IsoRestrictedFINXMax16Text - 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
%% DocumentIdentification38 recursion level 0 with max 1
DocumentIdentification38 *-- "1..1" IDocumentIdentification4Choice : Identification
DocumentIdentification38 *-- "0..1" IDocumentNumber6Choice : DocumentNumber
DocumentIdentification38 *-- "0..1" IProcessingPosition10Choice : LinkageType
%% IDocumentIdentification4Choice recursion level 1 with max 1
%% IDocumentNumber6Choice recursion level 1 with max 1
%% IProcessingPosition10Choice recursion level 1 with max 1
  

DocumentIdentification38 members

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

EventsLinkage building block

Identification of another 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
%% CorporateActionEventReference4 recursion level 0 with max 1
CorporateActionEventReference4 *-- "1..1" ICorporateActionEventReference4Choice : EventIdentification
CorporateActionEventReference4 *-- "0..1" IProcessingPosition10Choice : LinkageType
%% ICorporateActionEventReference4Choice recursion level 1 with max 1
%% IProcessingPosition10Choice recursion level 1 with max 1
  

CorporateActionEventReference4 members

Member name Description Data Type / Multiplicity
EventIdentification Identification of the linked corporate action event. ICorporateActionEventReference4Choice - Required 1..1
LinkageType Specifies when this corporate action event is to be processed relative to a linked corporate action event. IProcessingPosition10Choice - Optional 0..1

ReversalReason building block

Reason for the reversal. Specifies the reason why the corporate action reversal occurs. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionReversalReason4 recursion level 0 with max 1
class CorporateActionReversalReason4{
    AdditionalReasonInformation IsoRestrictedFINXMax256Text
}
CorporateActionReversalReason4 *-- "1..1" ICorporateActionReversalReason4Choice : Reason
%% ICorporateActionReversalReason4Choice recursion level 1 with max 1
  

CorporateActionReversalReason4 members

Member name Description Data Type / Multiplicity
Reason Specifies the reason for the reversal. ICorporateActionReversalReason4Choice - Required 1..1
AdditionalReasonInformation Provides additional information about the processed instruction. IsoRestrictedFINXMax256Text - 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
%% CorporateActionGeneralInformation151 recursion level 0 with max 1
class CorporateActionGeneralInformation151{
    CorporateActionEventIdentification IsoRestrictedFINXMax16Text
    OfficialCorporateActionEventIdentification IsoRestrictedFINXMax16Text
    ClassActionNumber IsoRestrictedFINXMax16Text
}
CorporateActionGeneralInformation151 *-- "0..1" ICorporateActionEventProcessingType3Choice : EventProcessingType
CorporateActionGeneralInformation151 *-- "1..1" ICorporateActionEventType97Choice : EventType
CorporateActionGeneralInformation151 *-- "1..1" ICorporateActionMandatoryVoluntary4Choice : MandatoryVoluntaryEventType
CorporateActionGeneralInformation151 *-- "1..1" FinancialInstrumentAttributes85 : UnderlyingSecurity
%% ICorporateActionEventProcessingType3Choice recursion level 1 with max 1
%% ICorporateActionEventType97Choice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary4Choice recursion level 1 with max 1
%% FinancialInstrumentAttributes85 recursion level 1 with max 1
class FinancialInstrumentAttributes85{
    DenominationCurrency ActiveOrHistoricCurrencyCode
    NextCouponDate IsoISODate
    ExpiryDate IsoISODate
    FloatingRateFixingDate IsoISODate
    MaturityDate IsoISODate
    IssueDate IsoISODate
    NextCallableDate IsoISODate
    PutableDate IsoISODate
    DatedDate IsoISODate
    ConversionDate IsoISODate
}
FinancialInstrumentAttributes85 *-- "1..1" SecurityIdentification20 : FinancialInstrumentIdentification
FinancialInstrumentAttributes85 *-- "0..1" IMarketIdentification4Choice : PlaceOfListing
FinancialInstrumentAttributes85 *-- "0..1" IInterestComputationMethodFormat5Choice : DayCountBasis
FinancialInstrumentAttributes85 *-- "0..1" IClassificationType33Choice : ClassificationType
FinancialInstrumentAttributes85 *-- "0..1" IOptionStyle9Choice : OptionStyle
FinancialInstrumentAttributes85 *-- "0..1" IRateFormat3Choice : InterestRate
FinancialInstrumentAttributes85 *-- "0..1" IRateFormat3Choice : NextInterestRate
FinancialInstrumentAttributes85 *-- "0..1" IRateFormat3Choice : PercentageOfDebtClaim
FinancialInstrumentAttributes85 *-- "0..1" IRateFormat12Choice : PreviousFactor
FinancialInstrumentAttributes85 *-- "0..1" IRateFormat12Choice : NextFactor
FinancialInstrumentAttributes85 *-- "0..1" QuantityToQuantityRatio2 : WarrantParity
FinancialInstrumentAttributes85 *-- "0..1" IFinancialInstrumentQuantity15Choice : MinimumNominalQuantity
FinancialInstrumentAttributes85 *-- "0..1" IFinancialInstrumentQuantity15Choice : ContractSize
  

CorporateActionGeneralInformation151 members

Member name Description Data Type / Multiplicity
CorporateActionEventIdentification Reference assigned by the account servicer to unambiguously identify a corporate action event. IsoRestrictedFINXMax16Text - 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. IsoRestrictedFINXMax16Text - Optional 0..1
ClassActionNumber Reference assigned by a court to a class action. IsoRestrictedFINXMax16Text - Optional 0..1
EventProcessingType Type of processing involved by a corporate action. ICorporateActionEventProcessingType3Choice - Optional 0..1
EventType Type of corporate action event. ICorporateActionEventType97Choice - Required 1..1
MandatoryVoluntaryEventType Specifies whether the event is mandatory, mandatory with options or voluntary. ICorporateActionMandatoryVoluntary4Choice - Required 1..1
UnderlyingSecurity Security concerned by the corporate action. FinancialInstrumentAttributes85 - Required 1..1

AccountDetails building block

General information about the safekeeping account, owner and account balance. Choice between all accounts and one or more selected accounts and balance information. For comparison, see the ISO20022 official specification

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

AccountIdentification45Choice members

Member name Description Data Type / Multiplicity

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
%% CorporateAction49 recursion level 0 with max 1
CorporateAction49 *-- "0..1" CorporateActionDate70 : DateDetails
CorporateAction49 *-- "0..1" ICorporateActionEventStageFormat15Choice : EventStage
CorporateAction49 *-- "0..1" IAdditionalBusinessProcessFormat13Choice : AdditionalBusinessProcessIndicator
CorporateAction49 *-- "0..1" ILotteryTypeFormat5Choice : LotteryType
CorporateAction49 *-- "0..1" CorporateActionQuantity10 : SecuritiesQuantity
%% CorporateActionDate70 recursion level 1 with max 1
CorporateActionDate70 *-- "0..1" IDateFormat49Choice : RecordDate
CorporateActionDate70 *-- "0..1" IDateFormat49Choice : ExDividendDate
CorporateActionDate70 *-- "0..1" IDateFormat49Choice : LotteryDate
%% ICorporateActionEventStageFormat15Choice recursion level 1 with max 1
%% IAdditionalBusinessProcessFormat13Choice recursion level 1 with max 1
%% ILotteryTypeFormat5Choice recursion level 1 with max 1
%% CorporateActionQuantity10 recursion level 1 with max 1
CorporateActionQuantity10 *-- "0..1" IFinancialInstrumentQuantity22Choice : BaseDenomination
CorporateActionQuantity10 *-- "0..1" IFinancialInstrumentQuantity22Choice : IncrementalDenomination
  

CorporateAction49 members

Member name Description Data Type / Multiplicity
DateDetails Provides information about the dates related to a corporate action event. CorporateActionDate70 - Optional 0..1
EventStage Stage in the corporate action event life cycle. ICorporateActionEventStageFormat15Choice - Optional 0..1
AdditionalBusinessProcessIndicator Indicates whether the message is related to a claim on the associated corporate action event. IAdditionalBusinessProcessFormat13Choice - Optional 0..1
LotteryType Specifies the type of lottery announced. ILotteryTypeFormat5Choice - Optional 0..1
SecuritiesQuantity Provides information about securities quantity linked to a corporate action. CorporateActionQuantity10 - Optional 0..1

CorporateActionMovementDetails 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
%% CorporateActionOption190 recursion level 0 with max 1
class CorporateActionOption190{
    OptionNumber IsoExact3NumericText
    NonDomicileCountry CountryCode
    ValidDomicileCountry CountryCode
    CurrencyOption ActiveCurrencyCode
    ChargesAppliedIndicator IsoYesNoIndicator
    CertificationBreakdownIndicator IsoYesNoIndicator
    WithdrawalAllowedIndicator IsoYesNoIndicator
    ChangeAllowedIndicator IsoYesNoIndicator
    AppliedOptionIndicator IsoYesNoIndicator
}
CorporateActionOption190 *-- "1..1" ICorporateActionOption46Choice : OptionType
CorporateActionOption190 *-- "0..1" IFractionDispositionType31Choice : FractionDisposition
CorporateActionOption190 *-- "0..0" IOfferTypeFormat11Choice : OfferType
CorporateActionOption190 *-- "0..0" IOptionFeaturesFormat26Choice : OptionFeatures
CorporateActionOption190 *-- "0..1" IIntermediateSecuritiesDistributionTypeFormat18Choice : IntermediateSecuritiesDistributionType
CorporateActionOption190 *-- "0..1" IOptionAvailabilityStatus4Choice : OptionAvailabilityStatus
CorporateActionOption190 *-- "0..0" IBeneficiaryCertificationType12Choice : CertificationBreakdownType
CorporateActionOption190 *-- "1..1" IDefaultProcessingOrStandingInstruction1Choice : DefaultProcessingOrStandingInstruction
CorporateActionOption190 *-- "0..1" SecurityIdentification20 : SecurityIdentification
CorporateActionOption190 *-- "0..1" CorporateActionDate81 : DateDetails
CorporateActionOption190 *-- "0..1" CorporateActionPeriod12 : PeriodDetails
CorporateActionOption190 *-- "0..1" CorporateActionRate109 : RateAndAmountDetails
CorporateActionOption190 *-- "0..1" CorporateActionPrice69 : PriceDetails
CorporateActionOption190 *-- "0..1" SecuritiesOption56 : SecuritiesQuantity
CorporateActionOption190 *-- "0..0" SecuritiesOption75 : SecuritiesMovementDetails
CorporateActionOption190 *-- "0..0" CashOption74 : CashMovementDetails
CorporateActionOption190 *-- "0..1" CorporateActionNarrative36 : AdditionalInformation
%% ICorporateActionOption46Choice recursion level 1 with max 1
%% IFractionDispositionType31Choice recursion level 1 with max 1
%% IOfferTypeFormat11Choice recursion level 1 with max 1
%% IOptionFeaturesFormat26Choice recursion level 1 with max 1
%% IIntermediateSecuritiesDistributionTypeFormat18Choice recursion level 1 with max 1
%% IOptionAvailabilityStatus4Choice recursion level 1 with max 1
%% IBeneficiaryCertificationType12Choice recursion level 1 with max 1
%% IDefaultProcessingOrStandingInstruction1Choice recursion level 1 with max 1
%% SecurityIdentification20 recursion level 1 with max 1
class SecurityIdentification20{
    ISIN IsoISINOct2015Identifier
    Description IsoRestrictedFINXMax140Text
}
SecurityIdentification20 *-- "0..0" OtherIdentification2 : OtherIdentification
%% CorporateActionDate81 recursion level 1 with max 1
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : EarlyResponseDeadline
CorporateActionDate81 *-- "0..1" IDateFormat43Choice : CoverExpirationDeadline
CorporateActionDate81 *-- "0..1" IDateFormat43Choice : ProtectDeadline
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : MarketDeadline
CorporateActionDate81 *-- "0..1" IDateFormat54Choice : ResponseDeadline
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : ExpiryDate
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : SubscriptionCostDebitDate
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : DepositoryCoverExpirationDate
CorporateActionDate81 *-- "0..1" IDateFormat49Choice : StockLendingDeadline
CorporateActionDate81 *-- "0..0" BorrowerLendingDeadline6 : BorrowerStockLendingDeadline
%% CorporateActionPeriod12 recursion level 1 with max 1
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : PriceCalculationPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : ParallelTradingPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : ActionPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : RevocabilityPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : PrivilegeSuspensionPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : AccountServicerRevocabilityPeriod
CorporateActionPeriod12 *-- "0..1" IPeriod6Choice : DepositorySuspensionPeriodForWithdrawal
%% CorporateActionRate109 recursion level 1 with max 1
CorporateActionRate109 *-- "0..1" IRateAndAmountFormat46Choice : AdditionalTax
CorporateActionRate109 *-- "0..0" IGrossDividendRateFormat41Choice : GrossDividendRate
CorporateActionRate109 *-- "0..0" INetDividendRateFormat43Choice : NetDividendRate
CorporateActionRate109 *-- "0..0" IInterestRateUsedForPaymentFormat10Choice : InterestRateUsedForPayment
CorporateActionRate109 *-- "0..1" IRateFormat3Choice : MaximumAllowedOversubscriptionRate
CorporateActionRate109 *-- "0..1" IRateFormat3Choice : ProrationRate
CorporateActionRate109 *-- "0..0" IRateAndAmountFormat47Choice : WithholdingTaxRate
CorporateActionRate109 *-- "0..0" IRateAndAmountFormat47Choice : SecondLevelTax
CorporateActionRate109 *-- "0..0" RateTypeAndAmountAndStatus33 : TaxableIncomePerDividendShare
CorporateActionRate109 *-- "0..1" IRateAndAmountFormat46Choice : TaxOnIncome
%% CorporateActionPrice69 recursion level 1 with max 1
CorporateActionPrice69 *-- "0..1" IPriceFormat57Choice : CashInLieuOfSharePrice
CorporateActionPrice69 *-- "0..1" IPriceFormat57Choice : OverSubscriptionDepositPrice
CorporateActionPrice69 *-- "0..1" IPriceFormat62Choice : MaximumCashToInstruct
CorporateActionPrice69 *-- "0..1" IPriceFormat62Choice : MinimumCashToInstruct
CorporateActionPrice69 *-- "0..1" IPriceFormat62Choice : MinimumMultipleCashToInstruct
%% SecuritiesOption56 recursion level 1 with max 1
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity21Choice : MaximumQuantityToInstruct
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity21Choice : MinimumQuantityToInstruct
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity22Choice : MinimumMultipleQuantityToInstruct
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity22Choice : NewBoardLotQuantity
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity22Choice : NewDenominationQuantity
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity22Choice : FrontEndOddLotQuantity
SecuritiesOption56 *-- "0..1" IFinancialInstrumentQuantity22Choice : BackEndOddLotQuantity
%% SecuritiesOption75 recursion level 1 with max 1
class SecuritiesOption75{
    CreditDebitIndicator CreditDebitCode
    NewSecuritiesIssuanceIndicator NewSecuritiesIssuanceType5Code
    CountryOfIncomeSource CountryCode
    CurrencyOption ActiveCurrencyCode
}
SecuritiesOption75 *-- "1..1" FinancialInstrumentAttributes83 : SecurityDetails
SecuritiesOption75 *-- "0..1" ITemporaryFinancialInstrumentIndicator4Choice : TemporaryFinancialInstrumentIndicator
SecuritiesOption75 *-- "0..1" INonEligibleProceedsIndicator4Choice : NonEligibleProceedsIndicator
SecuritiesOption75 *-- "0..1" IIssuerOfferorTaxabilityIndicator1Choice : IssuerOfferorTaxabilityIndicator
SecuritiesOption75 *-- "0..1" GenericIdentification47 : IncomeType
SecuritiesOption75 *-- "0..0" GenericIdentification47 : ExemptionType
SecuritiesOption75 *-- "0..1" IQuantity10Choice : EntitledQuantity
SecuritiesOption75 *-- "0..1" ISafekeepingPlaceFormat39Choice : SafekeepingPlace
SecuritiesOption75 *-- "0..1" IFractionDispositionType31Choice : FractionDisposition
SecuritiesOption75 *-- "0..1" IPeriod6Choice : TradingPeriod
SecuritiesOption75 *-- "1..1" SecurityDate18 : DateDetails
SecuritiesOption75 *-- "0..1" CorporateActionRate95 : RateDetails
SecuritiesOption75 *-- "0..1" CorporateActionPrice66 : PriceDetails
%% CashOption74 recursion level 1 with max 1
class CashOption74{
    CreditDebitIndicator CreditDebitCode
    ContractualPaymentIndicator Payment1Code
    CountryOfIncomeSource CountryCode
}
CashOption74 *-- "0..1" INonEligibleProceedsIndicator4Choice : NonEligibleProceedsIndicator
CashOption74 *-- "0..1" IIssuerOfferorTaxabilityIndicator1Choice : IssuerOfferorTaxabilityIndicator
CashOption74 *-- "0..1" GenericIdentification47 : IncomeType
CashOption74 *-- "0..0" GenericIdentification47 : ExemptionType
CashOption74 *-- "0..1" ICashAccountIdentification6Choice : CashAccountIdentification
CashOption74 *-- "0..1" CorporateActionAmounts58 : AmountDetails
CashOption74 *-- "1..1" CorporateActionDate72 : DateDetails
CashOption74 *-- "0..1" ForeignExchangeTerms28 : ForeignExchangeDetails
CashOption74 *-- "0..1" Rate38 : RateAndAmountDetails
CashOption74 *-- "0..1" PriceDetails25 : PriceDetails
%% CorporateActionNarrative36 recursion level 1 with max 1
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation6 : AdditionalText
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation6 : NarrativeVersion
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : InformationConditions
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : InformationToComplyWith
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : SecurityRestriction
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : TaxationConditions
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : Disclaimer
CorporateActionNarrative36 *-- "0..1" UpdatedAdditionalInformation5 : CertificationBreakdown
  

CorporateActionOption190 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. ICorporateActionOption46Choice - 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. IFractionDispositionType31Choice - Optional 0..1
OfferType Specifies the conditions that apply to the offer. IOfferTypeFormat11Choice - Unknown 0..0
OptionFeatures Specifies the features that may apply to a corporate action option. IOptionFeaturesFormat26Choice - Unknown 0..0
IntermediateSecuritiesDistributionType Specifies the type of intermediates securities distribution. IIntermediateSecuritiesDistributionTypeFormat18Choice - Optional 0..1
OptionAvailabilityStatus Specifies the status of the option. IOptionAvailabilityStatus4Choice - Optional 0..1
CertificationBreakdownType Type of certification/breakdown. IBeneficiaryCertificationType12Choice - 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 redemption charges apply. IsoYesNoIndicator - Optional 0..1
CertificationBreakdownIndicator Indicates whether certification/breakdown is required from the account owner. Yes: certification required No: no certification required. IsoYesNoIndicator - Optional 0..1
WithdrawalAllowedIndicator Indicates whether withdrawal of instruction is allowed. IsoYesNoIndicator - Optional 0..1
ChangeAllowedIndicator Indicates whether change of instruction is allowed. IsoYesNoIndicator - Optional 0..1
AppliedOptionIndicator Indicates whether the option, different from the default one, shall be applied by the account owner. IsoYesNoIndicator - Optional 0..1
SecurityIdentification Identifies the financial instrument. SecurityIdentification20 - Optional 0..1
DateDetails Provides information about the dates related to a corporate action option. CorporateActionDate81 - Optional 0..1
PeriodDetails Provides information about the periods related to a corporate action option. CorporateActionPeriod12 - Optional 0..1
RateAndAmountDetails Provides information about rates and amounts related to a corporate action option. CorporateActionRate109 - Optional 0..1
PriceDetails Provides information about the prices related to a corporate action option. CorporateActionPrice69 - Optional 0..1
SecuritiesQuantity Provides information about securities quantity related to a corporate action option. SecuritiesOption56 - Optional 0..1
SecuritiesMovementDetails Provides information about securities movement related to a corporate action option. SecuritiesOption75 - Unknown 0..0
CashMovementDetails Provides information about the cash movement linked to the corporate action option. CashOption74 - Unknown 0..0
AdditionalInformation Provides additional information about the corporate action movement. CorporateActionNarrative36 - 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
%% CorporateActionNarrative37 recursion level 0 with max 1
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : AdditionalText
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : NarrativeVersion
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : InformationConditions
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : InformationToComplyWith
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : TaxationConditions
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : Disclaimer
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : PartyContactNarrative
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : RegistrationDetails
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : BasketOrIndexInformation
CorporateActionNarrative37 *-- "0..1" UpdatedAdditionalInformation5 : CertificationBreakdown
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
%% UpdatedAdditionalInformation5 recursion level 1 with max 1
class UpdatedAdditionalInformation5{
    UpdateDescription IsoRestrictedFINXMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoRestrictedFINXMax350Text
}
  

CorporateActionNarrative37 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. UpdatedAdditionalInformation5 - 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. UpdatedAdditionalInformation5 - 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. UpdatedAdditionalInformation5 - 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. UpdatedAdditionalInformation5 - 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). UpdatedAdditionalInformation5 - Optional 0..1
Disclaimer Provides a disclaimer relative to the information provided in the message. It may be ignored for automated processing. UpdatedAdditionalInformation5 - 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. UpdatedAdditionalInformation5 - Optional 0..1
RegistrationDetails Provides information required for the registration. UpdatedAdditionalInformation5 - Optional 0..1
BasketOrIndexInformation Provides additional information on the basket or index underlying a security, for example a warrant. UpdatedAdditionalInformation5 - Optional 0..1
CertificationBreakdown Provides additional information about the type of certification/breakdown required. UpdatedAdditionalInformation5 - 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification151Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice members

Member name Description Data Type / Multiplicity

Registrar building block

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

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

PartyIdentification137Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice members

Member name Description Data Type / Multiplicity

DropAgent building block

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

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

PartyIdentification137Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice 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 between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification137Choice 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

Issuer building block

Issuer of the financial instrument. Choice between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification151Choice members

Member name Description Data Type / Multiplicity

Offeror building block

Party making the offer and which is different from the issuing company. Choice between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification151Choice members

Member name Description Data Type / Multiplicity

TransferAgent building block

A trust company, bank or similar financial institution appointed by a fund management company to maintain records of investors and account balances. The transfer agent records transactions, including subscriptions, redemptions, switches, transfers, and re-registrations. Choice between different formats for the identification of a party. For comparison, see the ISO20022 official specification

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

PartyIdentification151Choice members

Member name Description Data Type / Multiplicity

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    CorporateActionMovementPreliminaryAdvice002V12 --|> IOuterRecord : Implements
    CorporateActionMovementPreliminaryAdvice002V12Document --|> IOuterDocument~CorporateActionMovementPreliminaryAdvice002V12~ : Implements
    class IOuterDocument~CorporateActionMovementPreliminaryAdvice002V12~ {
        CorporateActionMovementPreliminaryAdvice002V12 Message
     }
  

Document wrapper for serialization

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

classDiagram
    CorporateActionMovementPreliminaryAdvice002V12Document *-- CorporateActionMovementPreliminaryAdvice002V12 : 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.035.002.12">
    <CorpActnMvmntPrlimryAdvc>
        <Pgntn>
            <!-- Pagination inner content -->
        </Pgntn>
        <MvmntPrlimryAdvcGnlInf>
            <!-- MovementPreliminaryAdviceGeneralInformation inner content -->
        </MvmntPrlimryAdvcGnlInf>
        <PrvsMvmntPrlimryAdvcId>
            <!-- PreviousMovementPreliminaryAdviceIdentification inner content -->
        </PrvsMvmntPrlimryAdvcId>
        <NtfctnId>
            <!-- NotificationIdentification inner content -->
        </NtfctnId>
        <MvmntConfId>
            <!-- MovementConfirmationIdentification inner content -->
        </MvmntConfId>
        <InstrId>
            <!-- InstructionIdentification inner content -->
        </InstrId>
        <OthrDocId>
            <!-- OtherDocumentIdentification inner content -->
        </OthrDocId>
        <EvtsLkg>
            <!-- EventsLinkage inner content -->
        </EvtsLkg>
        <RvslRsn>
            <!-- ReversalReason inner content -->
        </RvslRsn>
        <CorpActnGnlInf>
            <!-- CorporateActionGeneralInformation inner content -->
        </CorpActnGnlInf>
        <AcctDtls>
            <!-- AccountDetails inner content -->
        </AcctDtls>
        <CorpActnDtls>
            <!-- CorporateActionDetails inner content -->
        </CorpActnDtls>
        <CorpActnMvmntDtls>
            <!-- CorporateActionMovementDetails inner content -->
        </CorpActnMvmntDtls>
        <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>
        <Issr>
            <!-- Issuer inner content -->
        </Issr>
        <Offerr>
            <!-- Offeror inner content -->
        </Offerr>
        <TrfAgt>
            <!-- TransferAgent inner content -->
        </TrfAgt>
    </CorpActnMvmntPrlimryAdvc>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_ZHTykx9REeuFz_FaCzCLgQ"
  nextVersions="_ps9cUzi7Eeydid5dcNPKvg"
  previousVersion="_bZtMIwVTEeqjd8n6wD9JVw"
  name="CorporateActionMovementPreliminaryAdvice002V12"
  definition="Scope&#xD;&#xA;The CorporateActionMovementPreliminaryAdvice message is sent by an account servicer to an account owner or its designated agent to pre-advise an upcoming posting or reversal of securities and/or cash postings.&#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), using the relevant elements in the business application header (BAH)."
  registrationStatus="Registered"
  messageSet="_urpIICeJEeOCeO5e7islRQ"
  xmlTag="CorpActnMvmntPrlimryAdvc"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <constraint
    xmi:id="_ZHTylR9REeuFz_FaCzCLgQ"
    name="RateAndCorporateActionEventRule"
    definition="If CorporateActionMovementDetails/RateAndAmountDetails/GrossDividendRate/NotSpecifiedRate Code value or CorporateActionMovementDetails/RateAndAmountDetails/InterestRateUsedForPayment/NotSpecifiedRate Code value is NILP (Nil Payment), then CorporateActionGeneralInformation/EventType/Code must be either DVCA (CashDividend) or INTR (InterestPayment).&#xD;&#xA;If CorporateActionMovementDetails/CashMovementDetails/RateAndAmountDetails/GrossDividendRate/NotSpecifiedRate Code value or CorporateActionMovementDetails/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="_ZHTylx9REeuFz_FaCzCLgQ"
    name="SafekeepingAccount1Rule"
    definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR (General), then any element in the list (MinimumNominalQuantity, MinimumExercisableQuantity,MinimumExercisableMultipleQuantity, ContractSize) must not be present in any occurrences of CorporateActionMovementDetails/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;/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumNominalQuantity&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumQuantityToInstruct&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumMultipleQuantityToInstruct&lt;/leftOperand&gt;&lt;/BooleanRule&gt;&lt;BooleanRule xsi:type=&quot;Absence&quot;&gt;&lt;leftOperand&gt;/CorporateActionMovementDetails[*]/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="_ZHTymR9REeuFz_FaCzCLgQ"
    name="SafekeepingAccount2Rule"
    definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR (General), then AmountDetails must not be present in any occurrences of CorporateActionMovementDetails/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;/CorporateActionMovementDetails[*]/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="_ZHTymx9REeuFz_FaCzCLgQ"
    name="OtherEventRule"
    definition="If CorporateActionGeneralInformation/EventType/Code is OTHR (Other), 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="_ZHTynR9REeuFz_FaCzCLgQ"
    name="IntermediateSecuritiesDistributionRule"
    definition="If CorporateActionGeneralInformation/EventType/Code is RHDI (IntermediateSecuritiesDistribution), then CorporateActionMovementDetails/IntermediateSecuritiesDistributionType must be present in at least one occurrence of CorporateActionMovementDetails.&#xD;&#xA;(MT 564 NVR C11)."
    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;/CorporateActionMovementDetails[*]/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;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="_ZHTynx9REeuFz_FaCzCLgQ"
    name="AppliedOptionRule"
    definition="If CorporateActionMovementDetails/AppliedOptionIndicator value is 'true' or '1' (Yes) in one or more occurrences of CorporateActionMovementDetails, then CorporateActionGeneralInformation/MandatoryVoluntaryEventType/Code value must be CHOS (MandatoryWithOptions) and at least one of the CorporateActionDetails/AdditionalBusinessProcessIndicator/Code values must be REAC (RequiredAction)."
    registrationStatus="Provisionally Registered" />
  <constraint
    xmi:id="_ZHTyoR9REeuFz_FaCzCLgQ"
    name="BeneficialOwnerBreakdownRequestRule"
    definition="If in at least one occurrence of CorporateActionMovementDetails, OptionType/Code value is BOBD (BeneficialOwnerBreakdownRequest), then CorporateActionGeneralInformation/EventType/Code value must be WTRC (Withholding Tax Relief Certification).&#xD;&#xA;(MT 564 NVR C23)."
    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;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionGeneralInformation/EventType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;WithholdingTaxReliefCertification&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/mustBe&gt;&lt;onCondition&gt;&lt;connector&gt;AND&lt;/connector&gt;&lt;BooleanRule xsi:type=&quot;EqualToValue&quot;&gt;&lt;leftOperand&gt;/CorporateActionMovementDetails[*]/OptionType/Code&lt;/leftOperand&gt;&lt;rightOperand&gt;BeneficialOwnerBreakdownRequest&lt;/rightOperand&gt;&lt;/BooleanRule&gt;&lt;/onCondition&gt;&lt;/ComplexRule&gt;&lt;/RuleDefinition&gt;" />
  <messageBuildingBlock
    xmi:id="_ZHTyph9REeuFz_FaCzCLgQ"
    name="Pagination"
    definition="Page number of the message and continuation indicator to indicate that the multi-part preliminary advice is to continue or that the message is the last page of the multi-part preliminary advice."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Pgntn"
    complexType="_xhMHQa6XEees_ufOy2ci-g" />
  <messageBuildingBlock
    xmi:id="_ZHTyqB9REeuFz_FaCzCLgQ"
    name="MovementPreliminaryAdviceGeneralInformation"
    definition="General information about the movement preliminary advice document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="MvmntPrlimryAdvcGnlInf"
    complexType="_hX_uQSqeEeObprHJy8Zrxg" />
  <messageBuildingBlock
    xmi:id="_ZHTyqh9REeuFz_FaCzCLgQ"
    name="PreviousMovementPreliminaryAdviceIdentification"
    definition="Identification of the previously sent movement preliminary advice document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="PrvsMvmntPrlimryAdvcId"
    complexType="_chT0l5KQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTyrB9REeuFz_FaCzCLgQ"
    name="NotificationIdentification"
    definition="Identification of a previously sent notification document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="NtfctnId"
    complexType="_chT0l5KQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTyrh9REeuFz_FaCzCLgQ"
    name="MovementConfirmationIdentification"
    definition="Identification of a previously sent movement confirmation document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="MvmntConfId"
    complexType="_chT0l5KQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTysB9REeuFz_FaCzCLgQ"
    name="InstructionIdentification"
    definition="Identification of a related instruction document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="InstrId"
    complexType="_XWm_Otp-Ed-ak6NoX_4Aeg_-1145599038" />
  <messageBuildingBlock
    xmi:id="_ZHTysh9REeuFz_FaCzCLgQ"
    name="OtherDocumentIdentification"
    definition="Identification of other documents as well as the document number."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OthrDocId"
    complexType="_chUbxZKQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTytB9REeuFz_FaCzCLgQ"
    name="EventsLinkage"
    definition="Identification of another 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="_chUcRZKQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTyth9REeuFz_FaCzCLgQ"
    name="ReversalReason"
    definition="Reason for the reversal."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="RvslRsn"
    complexType="_ctOKKZKQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTyuB9REeuFz_FaCzCLgQ"
    name="CorporateActionGeneralInformation"
    definition="General information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CorpActnGnlInf"
    complexType="_bZt0TQVTEeqjd8n6wD9JVw" />
  <messageBuildingBlock
    xmi:id="_ZHTyuh9REeuFz_FaCzCLgQ"
    name="AccountDetails"
    definition="General information about the safekeeping account, owner and account balance."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="AcctDtls"
    complexType="_csxih_fSEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyvB9REeuFz_FaCzCLgQ"
    name="CorporateActionDetails"
    definition="Information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnDtls"
    complexType="_k9k-583xEee5nJBZsW8MFQ" />
  <messageBuildingBlock
    xmi:id="_ZHTyvh9REeuFz_FaCzCLgQ"
    name="CorporateActionMovementDetails"
    definition="Information about the corporate action option."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="CorpActnMvmntDtls"
    complexType="_ZHeyJR9REeuFz_FaCzCLgQ" />
  <messageBuildingBlock
    xmi:id="_ZHTywB9REeuFz_FaCzCLgQ"
    name="AdditionalInformation"
    definition="Provides additional information."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="AddtlInf"
    complexType="_ctq1c5KQEeWHWpTQn1FFVg" />
  <messageBuildingBlock
    xmi:id="_ZHTywh9REeuFz_FaCzCLgQ"
    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="_ctD2W_fSEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyxB9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyxh9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyyB9REeuFz_FaCzCLgQ"
    name="Registrar"
    definition="Party/agent responsible for maintaining the register of a security."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Regar"
    complexType="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyyh9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyzB9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTyzh9REeuFz_FaCzCLgQ"
    name="DropAgent"
    definition="A trust company, bank or similar financial institution that 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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTy0B9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTy0h9REeuFz_FaCzCLgQ"
    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="__2ajK_fDEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTy1B9REeuFz_FaCzCLgQ"
    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" />
  <messageBuildingBlock
    xmi:id="_ZHTy1h9REeuFz_FaCzCLgQ"
    name="Issuer"
    definition="Issuer of the financial instrument."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Issr"
    complexType="_ctD2W_fSEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTy2B9REeuFz_FaCzCLgQ"
    name="Offeror"
    definition="Party making the offer and which is different from the issuing company."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="Offerr"
    complexType="_ctD2W_fSEeiNZp_PtLohLw" />
  <messageBuildingBlock
    xmi:id="_ZHTy2h9REeuFz_FaCzCLgQ"
    name="TransferAgent"
    definition="A trust company, bank or similar financial institution appointed by a fund management company to maintain records of investors and account balances. The transfer agent records transactions, including subscriptions, redemptions, switches, transfers, and re-registrations."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="TrfAgt"
    complexType="_ctD2W_fSEeiNZp_PtLohLw" />
  <messageDefinitionIdentifier
    businessArea="seev"
    messageFunctionality="035"
    flavour="002"
    version="12" />
</messageDefinition>

ISO Building Blocks

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