CorporateActionMovementPreliminaryAdviceV09

seev.035.001.09

Scope An account servicer sends the CorporateActionMovementPreliminaryAdvice message to an account owner or its designated agent to pre-advise 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
%% CorporateActionMovementPreliminaryAdviceV09 recursion level 0 with max 0
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" Pagination1 : Pagination
CorporateActionMovementPreliminaryAdviceV09 *-- "1..1" CorporateActionPreliminaryAdviceType2 : MovementPreliminaryAdviceGeneralInformation
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" DocumentIdentification31 : PreviousMovementPreliminaryAdviceIdentification
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" DocumentIdentification31 : NotificationIdentification
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" DocumentIdentification31 : MovementConfirmationIdentification
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" DocumentIdentification9 : InstructionIdentification
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" DocumentIdentification32 : OtherDocumentIdentification
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" CorporateActionEventReference3 : EventsLinkage
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" CorporateActionReversalReason3 : ReversalReason
CorporateActionMovementPreliminaryAdviceV09 *-- "1..1" CorporateActionGeneralInformation128 : CorporateActionGeneralInformation
CorporateActionMovementPreliminaryAdviceV09 *-- "1..1" IAccountIdentification32Choice : AccountDetails
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" CorporateAction42 : CorporateActionDetails
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" CorporateActionOption139 : CorporateActionMovementDetails
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" CorporateActionNarrative28 : AdditionalInformation
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : IssuerAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : PayingAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : SubPayingAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : Registrar
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : ResellingAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : PhysicalSecuritiesAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : DropAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : SolicitationAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" IPartyIdentification71Choice : InformationAgent
CorporateActionMovementPreliminaryAdviceV09 *-- "0..1" SupplementaryData1 : SupplementaryData
  

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 a previously sent movement preliminary advice document. Identification of a document and type of link. For comparison, see the ISO20022 official specification

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

DocumentIdentification31 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 another referred document. IProcessingPosition7Choice - 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
%% DocumentIdentification31 recursion level 0 with max 1
class DocumentIdentification31{
    Identification IsoMax35Text
}
DocumentIdentification31 *-- "0..1" IProcessingPosition7Choice : LinkageType
%% IProcessingPosition7Choice recursion level 1 with max 1
  

DocumentIdentification31 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 another referred document. IProcessingPosition7Choice - 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
%% DocumentIdentification31 recursion level 0 with max 1
class DocumentIdentification31{
    Identification IsoMax35Text
}
DocumentIdentification31 *-- "0..1" IProcessingPosition7Choice : LinkageType
%% IProcessingPosition7Choice recursion level 1 with max 1
  

DocumentIdentification31 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 another referred document. IProcessingPosition7Choice - 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
%% DocumentIdentification32 recursion level 0 with max 1
DocumentIdentification32 *-- "1..1" IDocumentIdentification3Choice : Identification
DocumentIdentification32 *-- "0..1" IDocumentNumber5Choice : DocumentNumber
DocumentIdentification32 *-- "0..1" IProcessingPosition7Choice : LinkageType
%% IDocumentIdentification3Choice recursion level 1 with max 1
%% IDocumentNumber5Choice recursion level 1 with max 1
%% IProcessingPosition7Choice recursion level 1 with max 1
  

DocumentIdentification32 members

Member name Description Data Type / Multiplicity
Identification Unique identifier of the document (message) assigned either by the account servicer or the account owner. IDocumentIdentification3Choice - Required 1..1
DocumentNumber Identification of the type of document. IDocumentNumber5Choice - Optional 0..1
LinkageType Specifies when this document is to be processed relative to another referred document. IProcessingPosition7Choice - 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
%% CorporateActionEventReference3 recursion level 0 with max 1
CorporateActionEventReference3 *-- "1..1" ICorporateActionEventReference3Choice : EventIdentification
CorporateActionEventReference3 *-- "0..1" IProcessingPosition7Choice : LinkageType
%% ICorporateActionEventReference3Choice recursion level 1 with max 1
%% IProcessingPosition7Choice recursion level 1 with max 1
  

CorporateActionEventReference3 members

Member name Description Data Type / Multiplicity
EventIdentification Identification of the linked corporate action event. ICorporateActionEventReference3Choice - Required 1..1
LinkageType Specifies when this corporate action event is to be processed relative to a linked corporate action event. IProcessingPosition7Choice - 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
%% CorporateActionReversalReason3 recursion level 0 with max 1
class CorporateActionReversalReason3{
    AdditionalReasonInformation IsoMax256Text
}
CorporateActionReversalReason3 *-- "1..1" ICorporateActionReversalReason3Choice : Reason
%% ICorporateActionReversalReason3Choice recursion level 1 with max 1
  

CorporateActionReversalReason3 members

Member name Description Data Type / Multiplicity
Reason Specifies the reason for the reversal. ICorporateActionReversalReason3Choice - Required 1..1
AdditionalReasonInformation Provides additional information about the processed instruction. IsoMax256Text - 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
%% CorporateActionGeneralInformation128 recursion level 0 with max 1
class CorporateActionGeneralInformation128{
    CorporateActionEventIdentification IsoMax35Text
    OfficialCorporateActionEventIdentification IsoMax35Text
    ClassActionNumber IsoMax35Text
}
CorporateActionGeneralInformation128 *-- "0..1" ICorporateActionEventProcessingType2Choice : EventProcessingType
CorporateActionGeneralInformation128 *-- "1..1" ICorporateActionEventType75Choice : EventType
CorporateActionGeneralInformation128 *-- "1..1" ICorporateActionMandatoryVoluntary3Choice : MandatoryVoluntaryEventType
CorporateActionGeneralInformation128 *-- "1..1" FinancialInstrumentAttributes79 : UnderlyingSecurity
%% ICorporateActionEventProcessingType2Choice recursion level 1 with max 1
%% ICorporateActionEventType75Choice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary3Choice recursion level 1 with max 1
%% FinancialInstrumentAttributes79 recursion level 1 with max 1
class FinancialInstrumentAttributes79{
    DenominationCurrency ActiveOrHistoricCurrencyCode
    NextCouponDate IsoISODate
    ExpiryDate IsoISODate
    FloatingRateFixingDate IsoISODate
    MaturityDate IsoISODate
    IssueDate IsoISODate
    NextCallableDate IsoISODate
    PutableDate IsoISODate
    DatedDate IsoISODate
    ConversionDate IsoISODate
}
FinancialInstrumentAttributes79 *-- "1..1" SecurityIdentification19 : FinancialInstrumentIdentification
FinancialInstrumentAttributes79 *-- "0..1" IMarketIdentification3Choice : PlaceOfListing
FinancialInstrumentAttributes79 *-- "0..1" IInterestComputationMethodFormat4Choice : DayCountBasis
FinancialInstrumentAttributes79 *-- "0..1" IClassificationType32Choice : ClassificationType
FinancialInstrumentAttributes79 *-- "0..1" IOptionStyle8Choice : OptionStyle
FinancialInstrumentAttributes79 *-- "0..1" IRateFormat3Choice : InterestRate
FinancialInstrumentAttributes79 *-- "0..1" IRateFormat3Choice : NextInterestRate
FinancialInstrumentAttributes79 *-- "0..1" IRateFormat3Choice : PercentageOfDebtClaim
FinancialInstrumentAttributes79 *-- "0..1" IRateFormat12Choice : PreviousFactor
FinancialInstrumentAttributes79 *-- "0..1" IRateFormat12Choice : NextFactor
FinancialInstrumentAttributes79 *-- "0..1" QuantityToQuantityRatio1 : WarrantParity
FinancialInstrumentAttributes79 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumNominalQuantity
FinancialInstrumentAttributes79 *-- "0..1" IFinancialInstrumentQuantity1Choice : ContractSize
  

CorporateActionGeneralInformation128 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. ICorporateActionEventProcessingType2Choice - Optional 0..1
EventType Type of corporate action event. ICorporateActionEventType75Choice - Required 1..1
MandatoryVoluntaryEventType Specifies whether the event is mandatory, mandatory with options or voluntary. ICorporateActionMandatoryVoluntary3Choice - Required 1..1
UnderlyingSecurity Security concerned by the corporate action. FinancialInstrumentAttributes79 - 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
%% IAccountIdentification32Choice recursion level 0 with max 1
  

AccountIdentification32Choice 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
%% CorporateAction42 recursion level 0 with max 1
CorporateAction42 *-- "0..1" CorporateActionDate63 : DateDetails
CorporateAction42 *-- "0..1" ICorporateActionEventStageFormat14Choice : EventStage
CorporateAction42 *-- "0..1" IAdditionalBusinessProcessFormat10Choice : AdditionalBusinessProcessIndicator
CorporateAction42 *-- "0..1" ILotteryTypeFormat4Choice : LotteryType
CorporateAction42 *-- "0..1" CorporateActionQuantity9 : SecuritiesQuantity
%% CorporateActionDate63 recursion level 1 with max 1
CorporateActionDate63 *-- "0..1" IDateFormat43Choice : RecordDate
CorporateActionDate63 *-- "0..1" IDateFormat43Choice : ExDividendDate
CorporateActionDate63 *-- "0..1" IDateFormat43Choice : LotteryDate
%% ICorporateActionEventStageFormat14Choice recursion level 1 with max 1
%% IAdditionalBusinessProcessFormat10Choice recursion level 1 with max 1
%% ILotteryTypeFormat4Choice recursion level 1 with max 1
%% CorporateActionQuantity9 recursion level 1 with max 1
CorporateActionQuantity9 *-- "0..1" IFinancialInstrumentQuantity20Choice : BaseDenomination
CorporateActionQuantity9 *-- "0..1" IFinancialInstrumentQuantity20Choice : IncrementalDenomination
  

CorporateAction42 members

Member name Description Data Type / Multiplicity
DateDetails Provides information about the dates related to a corporate action event. CorporateActionDate63 - Optional 0..1
EventStage Stage in the corporate action event life cycle. ICorporateActionEventStageFormat14Choice - Optional 0..1
AdditionalBusinessProcessIndicator Indicates whether the message is related to a claim on the associated corporate action event. IAdditionalBusinessProcessFormat10Choice - Optional 0..1
LotteryType Specifies the type of lottery announced. ILotteryTypeFormat4Choice - Optional 0..1
SecuritiesQuantity Provides information about securities quantity linked to a corporate action. CorporateActionQuantity9 - 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
%% CorporateActionOption139 recursion level 0 with max 1
class CorporateActionOption139{
    OptionNumber IsoExact3NumericText
    NonDomicileCountry CountryCode
    ValidDomicileCountry CountryCode
    CurrencyOption ActiveCurrencyCode
    ChargesAppliedIndicator IsoYesNoIndicator
    CertificationBreakdownIndicator IsoYesNoIndicator
    WithdrawalAllowedIndicator IsoYesNoIndicator
    ChangeAllowedIndicator IsoYesNoIndicator
    AppliedOptionIndicator IsoYesNoIndicator
}
CorporateActionOption139 *-- "1..1" ICorporateActionOption18Choice : OptionType
CorporateActionOption139 *-- "0..1" IFractionDispositionType26Choice : FractionDisposition
CorporateActionOption139 *-- "0..0" IOfferTypeFormat10Choice : OfferType
CorporateActionOption139 *-- "0..0" IOptionFeaturesFormat22Choice : OptionFeatures
CorporateActionOption139 *-- "0..1" IIntermediateSecuritiesDistributionTypeFormat15Choice : IntermediateSecuritiesDistributionType
CorporateActionOption139 *-- "0..1" IOptionAvailabilityStatus3Choice : OptionAvailabilityStatus
CorporateActionOption139 *-- "0..0" IBeneficiaryCertificationType9Choice : CertificationBreakdownType
CorporateActionOption139 *-- "1..1" IDefaultProcessingOrStandingInstruction1Choice : DefaultProcessingOrStandingInstruction
CorporateActionOption139 *-- "0..1" SecurityIdentification19 : SecurityIdentification
CorporateActionOption139 *-- "0..1" CorporateActionDate64 : DateDetails
CorporateActionOption139 *-- "0..1" CorporateActionPeriod12 : PeriodDetails
CorporateActionOption139 *-- "0..1" CorporateActionRate86 : RateAndAmountDetails
CorporateActionOption139 *-- "0..1" CorporateActionPrice68 : PriceDetails
CorporateActionOption139 *-- "0..1" SecuritiesOption51 : SecuritiesQuantity
CorporateActionOption139 *-- "0..0" SecuritiesOption64 : SecuritiesMovementDetails
CorporateActionOption139 *-- "0..0" CashOption57 : CashMovementDetails
CorporateActionOption139 *-- "0..1" CorporateActionNarrative29 : AdditionalInformation
%% ICorporateActionOption18Choice recursion level 1 with max 1
%% IFractionDispositionType26Choice recursion level 1 with max 1
%% IOfferTypeFormat10Choice recursion level 1 with max 1
%% IOptionFeaturesFormat22Choice recursion level 1 with max 1
%% IIntermediateSecuritiesDistributionTypeFormat15Choice recursion level 1 with max 1
%% IOptionAvailabilityStatus3Choice recursion level 1 with max 1
%% IBeneficiaryCertificationType9Choice recursion level 1 with max 1
%% IDefaultProcessingOrStandingInstruction1Choice recursion level 1 with max 1
%% SecurityIdentification19 recursion level 1 with max 1
class SecurityIdentification19{
    ISIN IsoISINOct2015Identifier
    Description IsoMax140Text
}
SecurityIdentification19 *-- "0..0" OtherIdentification1 : OtherIdentification
%% CorporateActionDate64 recursion level 1 with max 1
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : EarlyResponseDeadline
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : CoverExpirationDate
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : ProtectDate
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : MarketDeadline
CorporateActionDate64 *-- "0..1" IDateFormat44Choice : ResponseDeadline
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : ExpiryDate
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : SubscriptionCostDebitDate
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : DepositoryCoverExpirationDate
CorporateActionDate64 *-- "0..1" IDateFormat43Choice : StockLendingDeadline
CorporateActionDate64 *-- "0..0" BorrowerLendingDeadline3 : 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
%% CorporateActionRate86 recursion level 1 with max 1
CorporateActionRate86 *-- "0..1" IRateAndAmountFormat37Choice : AdditionalTax
CorporateActionRate86 *-- "0..0" IGrossDividendRateFormat27Choice : GrossDividendRate
CorporateActionRate86 *-- "0..0" INetDividendRateFormat29Choice : NetDividendRate
CorporateActionRate86 *-- "0..1" IRateAndAmountFormat37Choice : IndexFactor
CorporateActionRate86 *-- "0..0" IInterestRateUsedForPaymentFormat8Choice : InterestRateUsedForPayment
CorporateActionRate86 *-- "0..1" IRateFormat3Choice : MaximumAllowedOversubscriptionRate
CorporateActionRate86 *-- "0..1" IRateFormat3Choice : ProrationRate
CorporateActionRate86 *-- "0..0" IRateAndAmountFormat41Choice : WithholdingTaxRate
CorporateActionRate86 *-- "0..0" IRateAndAmountFormat41Choice : SecondLevelTax
CorporateActionRate86 *-- "0..0" RateTypeAndAmountAndStatus26 : TaxableIncomePerDividendShare
CorporateActionRate86 *-- "0..1" IRateAndAmountFormat37Choice : TaxOnIncome
%% CorporateActionPrice68 recursion level 1 with max 1
CorporateActionPrice68 *-- "0..1" IPriceFormat45Choice : CashInLieuOfSharePrice
CorporateActionPrice68 *-- "0..1" IPriceFormat45Choice : OverSubscriptionDepositPrice
CorporateActionPrice68 *-- "0..1" IPriceFormat61Choice : MaximumCashToInstruct
CorporateActionPrice68 *-- "0..1" IPriceFormat61Choice : MinimumCashToInstruct
CorporateActionPrice68 *-- "0..1" IPriceFormat61Choice : MinimumMultipleCashToInstruct
%% SecuritiesOption51 recursion level 1 with max 1
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity19Choice : MaximumQuantityToInstruct
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity19Choice : MinimumQuantityToInstruct
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity20Choice : MinimumMultipleQuantityToInstruct
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity20Choice : NewBoardLotQuantity
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity20Choice : NewDenominationQuantity
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity20Choice : FrontEndOddLotQuantity
SecuritiesOption51 *-- "0..1" IFinancialInstrumentQuantity20Choice : BackEndOddLotQuantity
%% SecuritiesOption64 recursion level 1 with max 1
class SecuritiesOption64{
    CreditDebitIndicator CreditDebitCode
    NewSecuritiesIssuanceIndicator NewSecuritiesIssuanceType5Code
    CountryOfIncomeSource CountryCode
    CurrencyOption ActiveCurrencyCode
}
SecuritiesOption64 *-- "1..1" FinancialInstrumentAttributes80 : SecurityDetails
SecuritiesOption64 *-- "0..1" ITemporaryFinancialInstrumentIndicator3Choice : TemporaryFinancialInstrumentIndicator
SecuritiesOption64 *-- "0..1" INonEligibleProceedsIndicator3Choice : NonEligibleProceedsIndicator
SecuritiesOption64 *-- "0..1" IIssuerOfferorTaxabilityIndicator1Choice : IssuerOfferorTaxabilityIndicator
SecuritiesOption64 *-- "0..1" GenericIdentification30 : IncomeType
SecuritiesOption64 *-- "0..0" GenericIdentification30 : ExemptionType
SecuritiesOption64 *-- "0..1" IQuantity6Choice : EntitledQuantity
SecuritiesOption64 *-- "0..1" ISafekeepingPlaceFormat10Choice : SafekeepingPlace
SecuritiesOption64 *-- "0..1" IFractionDispositionType26Choice : FractionDisposition
SecuritiesOption64 *-- "0..1" IPeriod6Choice : TradingPeriod
SecuritiesOption64 *-- "1..1" SecurityDate16 : DateDetails
SecuritiesOption64 *-- "0..1" CorporateActionRate89 : RateDetails
SecuritiesOption64 *-- "0..1" CorporateActionPrice56 : PriceDetails
%% CashOption57 recursion level 1 with max 1
class CashOption57{
    CreditDebitIndicator CreditDebitCode
    ContractualPaymentIndicator Payment1Code
    CountryOfIncomeSource CountryCode
}
CashOption57 *-- "0..1" INonEligibleProceedsIndicator3Choice : NonEligibleProceedsIndicator
CashOption57 *-- "0..1" IIssuerOfferorTaxabilityIndicator1Choice : IssuerOfferorTaxabilityIndicator
CashOption57 *-- "0..1" GenericIdentification30 : IncomeType
CashOption57 *-- "0..0" GenericIdentification30 : ExemptionType
CashOption57 *-- "0..1" ICashAccountIdentification5Choice : CashAccountIdentification
CashOption57 *-- "0..1" CorporateActionAmounts43 : AmountDetails
CashOption57 *-- "1..1" CorporateActionDate62 : DateDetails
CashOption57 *-- "0..1" ForeignExchangeTerms24 : ForeignExchangeDetails
CashOption57 *-- "0..1" RateDetails31 : RateAndAmountDetails
CashOption57 *-- "0..1" PriceDetails22 : PriceDetails
%% CorporateActionNarrative29 recursion level 1 with max 1
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation3 : AdditionalText
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation3 : NarrativeVersion
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : InformationConditions
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : InformationToComplyWith
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : SecurityRestriction
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : TaxationConditions
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : Disclaimer
CorporateActionNarrative29 *-- "0..1" UpdatedAdditionalInformation1 : CertificationBreakdown
  

CorporateActionOption139 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. ICorporateActionOption18Choice - 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. IFractionDispositionType26Choice - Optional 0..1
OfferType Specifies the conditions that apply to the offer. IOfferTypeFormat10Choice - Unknown 0..0
OptionFeatures Specifies the features that may apply to a corporate action option. IOptionFeaturesFormat22Choice - Unknown 0..0
IntermediateSecuritiesDistributionType Specifies the type of intermediates securities distribution. IIntermediateSecuritiesDistributionTypeFormat15Choice - Optional 0..1
OptionAvailabilityStatus Specifies the status of the option. IOptionAvailabilityStatus3Choice - Optional 0..1
CertificationBreakdownType Type of certification/breakdown. IBeneficiaryCertificationType9Choice - 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. SecurityIdentification19 - Optional 0..1
DateDetails Provides information about the dates related to a corporate action option. CorporateActionDate64 - 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. CorporateActionRate86 - Optional 0..1
PriceDetails Provides information about the prices related to a corporate action option. CorporateActionPrice68 - Optional 0..1
SecuritiesQuantity Provides information about securities quantity related to a corporate action option. SecuritiesOption51 - Optional 0..1
SecuritiesMovementDetails Provides information about securities movement related to a corporate action option. SecuritiesOption64 - Unknown 0..0
CashMovementDetails Provides information about the cash movement linked to the corporate action option. CashOption57 - Unknown 0..0
AdditionalInformation Provides additional information about the corporate action movement. CorporateActionNarrative29 - 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
%% CorporateActionNarrative28 recursion level 0 with max 1
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : AdditionalText
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : NarrativeVersion
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : InformationConditions
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : InformationToComplyWith
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : TaxationConditions
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : Disclaimer
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : PartyContactNarrative
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : RegistrationDetails
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : BasketOrIndexInformation
CorporateActionNarrative28 *-- "0..1" UpdatedAdditionalInformation1 : CertificationBreakdown
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
%% UpdatedAdditionalInformation1 recursion level 1 with max 1
class UpdatedAdditionalInformation1{
    UpdateDescription IsoMax140Text
    UpdateDate IsoISODate
    AdditionalInformation IsoMax350Text
}
  

CorporateActionNarrative28 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. UpdatedAdditionalInformation1 - 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. UpdatedAdditionalInformation1 - 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. UpdatedAdditionalInformation1 - 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. UpdatedAdditionalInformation1 - 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). UpdatedAdditionalInformation1 - Optional 0..1
Disclaimer Provides a disclaimer relative to the information provided in the message. It may be ignored for automated processing. UpdatedAdditionalInformation1 - 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. UpdatedAdditionalInformation1 - Optional 0..1
RegistrationDetails Provides information required for the registration. UpdatedAdditionalInformation1 - Optional 0..1
BasketOrIndexInformation Provides additional information on the basket or index underlying a security, for example a warrant. UpdatedAdditionalInformation1 - Optional 0..1
CertificationBreakdown Provides additional information about the type of certification/breakdown required. UpdatedAdditionalInformation1 - 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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
%% IPartyIdentification71Choice recursion level 0 with max 1
  

PartyIdentification71Choice 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 CorporateActionMovementPreliminaryAdviceV09 implementation follows a specific implementaiton pattern. First of all, CorporateActionMovementPreliminaryAdviceV09 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, CorporateActionMovementPreliminaryAdviceV09Document implements IOuterDocument. Because CorporateActionMovementPreliminaryAdviceV09 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type CorporateActionMovementPreliminaryAdviceV09.

classDiagram
    class IOuterRecord
    CorporateActionMovementPreliminaryAdviceV09 --|> IOuterRecord : Implements
    CorporateActionMovementPreliminaryAdviceV09Document --|> IOuterDocument~CorporateActionMovementPreliminaryAdviceV09~ : Implements
    class IOuterDocument~CorporateActionMovementPreliminaryAdviceV09~ {
        CorporateActionMovementPreliminaryAdviceV09 Message
     }
  

Document wrapper for serialization

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

classDiagram
    CorporateActionMovementPreliminaryAdviceV09Document *-- CorporateActionMovementPreliminaryAdviceV09 : 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.001.09">
    <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>
    </CorpActnMvmntPrlimryAdvc>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_65Nyx5SbEeeh5JjedkaA_g"
  nextVersions="_BBQdCbT-EeiTob_PrFFUxA"
  previousVersion="_ynU474b4Eea9VrPZgV7UBQ"
  name="CorporateActionMovementPreliminaryAdviceV09"
  definition="Scope&#xD;&#xA;An account servicer sends the CorporateActionMovementPreliminaryAdvice message to an account owner or its designated agent to pre-advise 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),&#xD;&#xA;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="_65NyyZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdC7T-EeiTob_PrFFUxA"
    previousVersion="_ynU48Yb4Eea9VrPZgV7UBQ"
    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="_65Nyy5SbEeeh5JjedkaA_g"
    nextVersions="_BBQdDbT-EeiTob_PrFFUxA"
    previousVersion="_ynU484b4Eea9VrPZgV7UBQ"
    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="_65NyzZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdD7T-EeiTob_PrFFUxA"
    previousVersion="_ynU49Yb4Eea9VrPZgV7UBQ"
    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="_65Nyz5SbEeeh5JjedkaA_g"
    nextVersions="_BBQdEbT-EeiTob_PrFFUxA"
    previousVersion="_ynU494b4Eea9VrPZgV7UBQ"
    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="_65Ny0ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdE7T-EeiTob_PrFFUxA"
    previousVersion="_ynU4-Yb4Eea9VrPZgV7UBQ"
    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="_65Ny05SbEeeh5JjedkaA_g"
    nextVersions="_BBQdFbT-EeiTob_PrFFUxA"
    previousVersion="_ynU4-4b4Eea9VrPZgV7UBQ"
    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" />
  <messageBuildingBlock
    xmi:id="_65Ny1ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdF7T-EeiTob_PrFFUxA"
    previousVersion="_ynU4_Yb4Eea9VrPZgV7UBQ"
    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="_65Ny15SbEeeh5JjedkaA_g"
    nextVersions="_BBQdGbT-EeiTob_PrFFUxA"
    previousVersion="_ynU4_4b4Eea9VrPZgV7UBQ"
    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="_65Ny2ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdG7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5AYb4Eea9VrPZgV7UBQ"
    name="PreviousMovementPreliminaryAdviceIdentification"
    definition="Identification of a previously sent movement preliminary advice document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="PrvsMvmntPrlimryAdvcId"
    complexType="_e22_UTnXEeWLJsP1cO-amg" />
  <messageBuildingBlock
    xmi:id="_65Ny25SbEeeh5JjedkaA_g"
    nextVersions="_BBQdHbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5A4b4Eea9VrPZgV7UBQ"
    name="NotificationIdentification"
    definition="Identification of a previously sent notification document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="NtfctnId"
    complexType="_e22_UTnXEeWLJsP1cO-amg" />
  <messageBuildingBlock
    xmi:id="_65Ny3ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdH7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5BYb4Eea9VrPZgV7UBQ"
    name="MovementConfirmationIdentification"
    definition="Identification of a previously sent movement confirmation document."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="MvmntConfId"
    complexType="_e22_UTnXEeWLJsP1cO-amg" />
  <messageBuildingBlock
    xmi:id="_65Ny35SbEeeh5JjedkaA_g"
    nextVersions="_BBQdIbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5B4b4Eea9VrPZgV7UBQ"
    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="_65Ny4ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdI7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5CYb4Eea9VrPZgV7UBQ"
    name="OtherDocumentIdentification"
    definition="Identification of other documents as well as the document number."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OthrDocId"
    complexType="_ni5s8TnYEeWLJsP1cO-amg" />
  <messageBuildingBlock
    xmi:id="_65Ny45SbEeeh5JjedkaA_g"
    nextVersions="_BBQdJbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5C4b4Eea9VrPZgV7UBQ"
    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="_n8yzsznYEeWLJsP1cO-amg" />
  <messageBuildingBlock
    xmi:id="_65Ny5ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdJ7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5DYb4Eea9VrPZgV7UBQ"
    name="ReversalReason"
    definition="Reason for the reversal."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="RvslRsn"
    complexType="_bvXBQUGKEeWqy4niLuXETA" />
  <messageBuildingBlock
    xmi:id="_65Ny55SbEeeh5JjedkaA_g"
    nextVersions="_BBQdKbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5D4b4Eea9VrPZgV7UBQ"
    name="CorporateActionGeneralInformation"
    definition="General information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="CorpActnGnlInf"
    complexType="_cJTyo5SfEeeh5JjedkaA_g" />
  <messageBuildingBlock
    xmi:id="_65Ny6ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdK7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5EYb4Eea9VrPZgV7UBQ"
    name="AccountDetails"
    definition="General information about the safekeeping account, owner and account balance."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="AcctDtls"
    complexType="_wLAW4Tq3EeWQ1Y7f8kds2A" />
  <messageBuildingBlock
    xmi:id="_65Ny65SbEeeh5JjedkaA_g"
    nextVersions="_BBQdLbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5E4b4Eea9VrPZgV7UBQ"
    name="CorporateActionDetails"
    definition="Information about the corporate action event."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnDtls"
    complexType="_bQpNkZcCEee8S7xwGG7Veg" />
  <messageBuildingBlock
    xmi:id="_65Ny7ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdL7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5FYb4Eea9VrPZgV7UBQ"
    name="CorporateActionMovementDetails"
    definition="Information about the corporate action option."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="CorpActnMvmntDtls"
    complexType="_O6R6w5ShEeeh5JjedkaA_g" />
  <messageBuildingBlock
    xmi:id="_65Ny75SbEeeh5JjedkaA_g"
    nextVersions="_BBQdMbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5F4b4Eea9VrPZgV7UBQ"
    name="AdditionalInformation"
    definition="Provides additional information."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="AddtlInf"
    complexType="_Wh6eIWLKEeWR9ZSfjmHwUA" />
  <messageBuildingBlock
    xmi:id="_65Ny8ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdM7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5GYb4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny85SbEeeh5JjedkaA_g"
    nextVersions="_BBQdNbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5G4b4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny9ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdN7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5HYb4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny95SbEeeh5JjedkaA_g"
    nextVersions="_BBQdObT-EeiTob_PrFFUxA"
    previousVersion="_ynU5H4b4Eea9VrPZgV7UBQ"
    name="Registrar"
    definition="Party/agent responsible for maintaining the register of a security."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Regar"
    complexType="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny-ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdO7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5IYb4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny-5SbEeeh5JjedkaA_g"
    nextVersions="_BBQdPbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5I4b4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny_ZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdP7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5JYb4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65Ny_5SbEeeh5JjedkaA_g"
    nextVersions="_BBQdQbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5J4b4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65NzAZSbEeeh5JjedkaA_g"
    nextVersions="_BBQdQ7T-EeiTob_PrFFUxA"
    previousVersion="_ynU5KYb4Eea9VrPZgV7UBQ"
    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="_jLJCYe5NEeCisYr99QEiWA_-835354834" />
  <messageBuildingBlock
    xmi:id="_65NzA5SbEeeh5JjedkaA_g"
    nextVersions="_BBQdRbT-EeiTob_PrFFUxA"
    previousVersion="_ynU5K4b4Eea9VrPZgV7UBQ"
    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="035"
    flavour="001"
    version="09" />
</messageDefinition>

ISO Building Blocks

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