seev.035.001.01
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:
- re-send a message previously sent (the sub-function of the message is Duplicate),
- provide a third party with a copy of a message for information (the sub-function of the message is Copy),
- re-send to a third party a copy of a message for information (the sub-function of the message is Copy Duplicate). ISO 15022 - 20022 COEXISTENCE This ISO 20022 message is reversed engineered from ISO 15022. Both standards will coexist for a certain number of years. Until this coexistence period ends, the usage of certain data types is restricted to ensure interoperability between ISO 15022 and 20022 users. Compliance to these rules is mandatory in a coexistence environment. The coexistence restrictions are described in a Textual Rule linked to the Message Items they concern. These coexistence textual rules are clearly identified as follows: “CoexistenceXxxxRule”.
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
%% CorporateActionMovementPreliminaryAdviceV01 recursion level 0 with max 0
CorporateActionMovementPreliminaryAdviceV01 *-- "1..1" DocumentIdentification11 : Identification
CorporateActionMovementPreliminaryAdviceV01 *-- "1..1" CorporateActionPreliminaryAdviceType1 : MovementPreliminaryAdviceGeneralInformation
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" DocumentIdentification15 : PreviousMovementPreliminaryAdviceIdentification
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" DocumentIdentification15 : NotificationIdentification
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" DocumentIdentification15 : MovementConfirmationIdentification
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" DocumentIdentification9 : InstructionIdentification
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" DocumentIdentification13 : OtherDocumentIdentification
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" CorporateActionEventReference1 : EventsLinkage
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" CorporateActionReversalReason1 : ReversalReason
CorporateActionMovementPreliminaryAdviceV01 *-- "1..1" CorporateActionGeneralInformation3 : CorporateActionGeneralInformation
CorporateActionMovementPreliminaryAdviceV01 *-- "1..1" IAccountIdentification7Choice : AccountDetails
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" CorporateActionOption10 : CorporateActionMovementDetails
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" CorporateActionNarrative6 : AdditionalInformation
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : MessageOriginator
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : MessageRecipient
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : IssuerAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : PayingAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : SubPayingAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : Registrar
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : ResellingAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : PhysicalSecuritiesAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : DropAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : SolicitationAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" IPartyIdentification10Choice : InformationAgent
CorporateActionMovementPreliminaryAdviceV01 *-- "0..1" Extension2 : Extension
Now, we will zero-in one-by-one on each of these building blocks.
Identification building block
Information that unambiguously identifies a CorporateActionMovementPreliminaryAdvice message as know by the account servicer. Identification and creation date of a document. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% DocumentIdentification11 recursion level 0 with max 1
class DocumentIdentification11{
Identification IsoMax35Text
CopyDuplicate CopyDuplicate1Code
}
DocumentIdentification11 *-- "0..1" IDateAndDateTimeChoice : CreationDateTime
%% IDateAndDateTimeChoice recursion level 1 with max 1
DocumentIdentification11 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Unique identifier of the document (message) assigned by the sender of the document. | IsoMax35Text - Required 1..1 |
| CreationDateTime | Date and time at which the document (message) was created by the sender. | IDateAndDateTimeChoice - Optional 0..1 |
| CopyDuplicate | Specifies if this document is a copy, a duplicate, or a duplicate of a copy. | CopyDuplicate1Code - Optional 0..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
%% CorporateActionPreliminaryAdviceType1 recursion level 0 with max 1
class CorporateActionPreliminaryAdviceType1{
Type CorporateActionPreliminaryAdviceType1Code
EligibilityIndicator IsoYesNoIndicator
}
CorporateActionPreliminaryAdviceType1 *-- "1..1" ICorporateActionProcessingStatus1Choice : ProcessingStatus
%% ICorporateActionProcessingStatus1Choice recursion level 1 with max 1
CorporateActionPreliminaryAdviceType1 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Type | Type of movement preliminary advice ie. new or replacement. | CorporateActionPreliminaryAdviceType1Code - Required 1..1 |
| ProcessingStatus | Specifies the status of the details of the event. | ICorporateActionProcessingStatus1Choice - 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
%% DocumentIdentification15 recursion level 0 with max 1
class DocumentIdentification15{
Identification IsoMax35Text
}
DocumentIdentification15 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% IProcessingPosition1Choice recursion level 1 with max 1
DocumentIdentification15 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Identifies the document. | IsoMax35Text - Required 1..1 |
| LinkageType | Specifies when this document is to be processed relative to an other referred document. | IProcessingPosition1Choice - Optional 0..1 |
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
%% DocumentIdentification15 recursion level 0 with max 1
class DocumentIdentification15{
Identification IsoMax35Text
}
DocumentIdentification15 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% IProcessingPosition1Choice recursion level 1 with max 1
DocumentIdentification15 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Identifies the document. | IsoMax35Text - Required 1..1 |
| LinkageType | Specifies when this document is to be processed relative to an other referred document. | IProcessingPosition1Choice - Optional 0..1 |
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
%% DocumentIdentification15 recursion level 0 with max 1
class DocumentIdentification15{
Identification IsoMax35Text
}
DocumentIdentification15 *-- "0..1" IProcessingPosition1Choice : LinkageType
%% IProcessingPosition1Choice recursion level 1 with max 1
DocumentIdentification15 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Identifies the document. | IsoMax35Text - Required 1..1 |
| LinkageType | Specifies when this document is to be processed relative to an other referred document. | IProcessingPosition1Choice - Optional 0..1 |
InstructionIdentification building block
Identification of a related instruction document. Identifies a document by a unique identification. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% DocumentIdentification9 recursion level 0 with max 1
class DocumentIdentification9{
Identification IsoMax35Text
}
DocumentIdentification9 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Identifies the document. | IsoMax35Text - Required 1..1 |
OtherDocumentIdentification building block
Identification of other documents as well as the document number. Identification of a document as well as the document number and type of link. For comparison, see the ISO20022 official specification
classDiagram direction tb %% DocumentIdentification13 recursion level 0 with max 1 DocumentIdentification13 *-- "1..1" IDocumentIdentification1Choice : Identification DocumentIdentification13 *-- "0..1" IDocumentNumber1Choice : DocumentNumber DocumentIdentification13 *-- "0..1" IProcessingPosition1Choice : LinkageType %% IDocumentIdentification1Choice recursion level 1 with max 1 %% IDocumentNumber1Choice recursion level 1 with max 1 %% IProcessingPosition1Choice recursion level 1 with max 1
DocumentIdentification13 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Unique identifier of the document (message) assigned either by the account servicer or the account owner. | IDocumentIdentification1Choice - Required 1..1 |
| DocumentNumber | Identification of the type of document. | IDocumentNumber1Choice - Optional 0..1 |
| LinkageType | Specifies when this document is to be processed relative to an other referred document. | IProcessingPosition1Choice - Optional 0..1 |
EventsLinkage building block
Identification of an other corporate action event that needs to be closely linked to the processing of the event notified in this document. Identification of a linked corporate action event. For comparison, see the ISO20022 official specification
classDiagram direction tb %% CorporateActionEventReference1 recursion level 0 with max 1 CorporateActionEventReference1 *-- "1..1" ICorporateActionEventReference1Choice : EventIdentification CorporateActionEventReference1 *-- "0..1" IProcessingPosition1Choice : LinkageType %% ICorporateActionEventReference1Choice recursion level 1 with max 1 %% IProcessingPosition1Choice recursion level 1 with max 1
CorporateActionEventReference1 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| EventIdentification | Identification of the linked corporate action event. | ICorporateActionEventReference1Choice - Required 1..1 |
| LinkageType | Specifies when this corporate action event is to be processed relative to a linked corporate action event. | IProcessingPosition1Choice - Optional 0..1 |
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
%% CorporateActionReversalReason1 recursion level 0 with max 1
class CorporateActionReversalReason1{
AdditionalReasonInformation IsoMax256Text
}
CorporateActionReversalReason1 *-- "1..1" ICorporateActionReversalReason1Choice : Reason
%% ICorporateActionReversalReason1Choice recursion level 1 with max 1
CorporateActionReversalReason1 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Reason | Specifies the reason for the reversal. | ICorporateActionReversalReason1Choice - 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
%% CorporateActionGeneralInformation3 recursion level 0 with max 1
class CorporateActionGeneralInformation3{
CorporateActionEventIdentification IsoMax35Text
OfficialCorporateActionEventIdentification IsoMax35Text
ClassActionNumber IsoMax35Text
}
CorporateActionGeneralInformation3 *-- "0..1" ICorporateActionEventProcessingTypeChoice : EventProcessingType
CorporateActionGeneralInformation3 *-- "1..1" ICorporateActionEventType3Choice : EventType
CorporateActionGeneralInformation3 *-- "1..1" ICorporateActionMandatoryVoluntary1Choice : MandatoryVoluntaryEventType
CorporateActionGeneralInformation3 *-- "0..1" IAdditionalBusinessProcessFormat2Choice : AdditionalBusinessProcessIndicator
CorporateActionGeneralInformation3 *-- "1..1" FinancialInstrumentAttributes7 : UnderlyingSecurity
%% ICorporateActionEventProcessingTypeChoice recursion level 1 with max 1
%% ICorporateActionEventType3Choice recursion level 1 with max 1
%% ICorporateActionMandatoryVoluntary1Choice recursion level 1 with max 1
%% IAdditionalBusinessProcessFormat2Choice recursion level 1 with max 1
%% FinancialInstrumentAttributes7 recursion level 1 with max 1
class FinancialInstrumentAttributes7{
DenominationCurrency ActiveOrHistoricCurrencyCode
NextCouponDate IsoISODate
ExpiryDate IsoISODate
FloatingRateFixingDate IsoISODate
MaturityDate IsoISODate
IssueDate IsoISODate
NextCallableDate IsoISODate
PutableDate IsoISODate
DatedDate IsoISODate
ConversionDate IsoISODate
}
FinancialInstrumentAttributes7 *-- "1..1" SecurityIdentification11 : SecurityIdentification
FinancialInstrumentAttributes7 *-- "0..1" MarketIdentification2 : PlaceOfListing
FinancialInstrumentAttributes7 *-- "0..1" IInterestComputationMethodFormat1Choice : DayCountBasis
FinancialInstrumentAttributes7 *-- "0..1" IClassificationType2Choice : ClassificationType
FinancialInstrumentAttributes7 *-- "0..1" IOptionStyle4Choice : OptionStyle
FinancialInstrumentAttributes7 *-- "0..1" IRateFormat3Choice : InterestRate
FinancialInstrumentAttributes7 *-- "0..1" IRateFormat3Choice : NextInterestRate
FinancialInstrumentAttributes7 *-- "0..1" IRateFormat3Choice : PercentageOfDebtClaim
FinancialInstrumentAttributes7 *-- "0..1" IRateFormat3Choice : PreviousFactor
FinancialInstrumentAttributes7 *-- "0..1" IRateFormat3Choice : NextFactor
FinancialInstrumentAttributes7 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumNominalQuantity
FinancialInstrumentAttributes7 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
FinancialInstrumentAttributes7 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
FinancialInstrumentAttributes7 *-- "0..1" IFinancialInstrumentQuantity1Choice : ContractSize
CorporateActionGeneralInformation3 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| CorporateActionEventIdentification | Reference assigned by the account servicer to unambiguously identify a corporate action event. | IsoMax35Text - Required 1..1 |
| OfficialCorporateActionEventIdentification | Official and unique reference assigned by the official central body/entity within each market at the beginning of a corporate action event. | IsoMax35Text - Optional 0..1 |
| ClassActionNumber | Reference assigned by a court to a class action. | IsoMax35Text - Optional 0..1 |
| EventProcessingType | Type of processing involved by a corporate action. | ICorporateActionEventProcessingTypeChoice - Optional 0..1 |
| EventType | Type of corporate action event. | ICorporateActionEventType3Choice - Required 1..1 |
| MandatoryVoluntaryEventType | Specifies whether the event is mandatory, mandatory with options or voluntary. | ICorporateActionMandatoryVoluntary1Choice - Required 1..1 |
| AdditionalBusinessProcessIndicator | Indicates whether the message is related to a claim on the associated corporate action event. | IAdditionalBusinessProcessFormat2Choice - Optional 0..1 |
| UnderlyingSecurity | Security concerned by the corporate action. | FinancialInstrumentAttributes7 - 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 %% IAccountIdentification7Choice recursion level 0 with max 1
AccountIdentification7Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
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
%% CorporateActionOption10 recursion level 0 with max 1
class CorporateActionOption10{
OptionNumber IsoExact3NumericText
NonDomicileCountry CountryCode
ValidDomicileCountry CountryCode
CurrencyOption ActiveCurrencyCode
ChargesAppliedIndicator IsoYesNoIndicator
CertificationIndicator IsoYesNoIndicator
WithdrawalAllowedIndicator IsoYesNoIndicator
ChangeAllowedIndicator IsoYesNoIndicator
}
CorporateActionOption10 *-- "1..1" ICorporateActionOption2Choice : OptionType
CorporateActionOption10 *-- "0..1" IFractionDispositionType1Choice : FractionDisposition
CorporateActionOption10 *-- "0..0" IOfferTypeFormat1Choice : OfferType
CorporateActionOption10 *-- "0..0" IOptionFeaturesFormat2Choice : OptionFeatures
CorporateActionOption10 *-- "0..1" IIntermediateSecuritiesDistributionTypeFormat2Choice : IntermediateSecuritiesDistributionType
CorporateActionOption10 *-- "0..1" IOptionAvailabilityStatus1Choice : OptionAvailabilityStatus
CorporateActionOption10 *-- "0..0" IBeneficiaryCertificationType1Choice : CertificationType
CorporateActionOption10 *-- "1..1" IDefaultProcessingOrStandingInstruction1Choice : DefaultProcessingOrStandingInstruction
CorporateActionOption10 *-- "0..1" SecurityIdentification11 : SecurityIdentification
CorporateActionOption10 *-- "0..1" CorporateActionDate8 : DateDetails
CorporateActionOption10 *-- "0..1" CorporateActionPeriod5 : PeriodDetails
CorporateActionOption10 *-- "0..1" CorporateActionRate5 : RateAndAmountDetails
CorporateActionOption10 *-- "0..1" CorporateActionPrice6 : PriceDetails
CorporateActionOption10 *-- "0..1" SecuritiesOption1 : SecuritiesQuantity
CorporateActionOption10 *-- "0..0" SecuritiesOption4 : SecuritiesMovementDetails
CorporateActionOption10 *-- "0..0" CashOption3 : CashMovementDetails
CorporateActionOption10 *-- "0..1" CorporateActionNarrative5 : AdditionalInformation
%% ICorporateActionOption2Choice recursion level 1 with max 1
%% IFractionDispositionType1Choice recursion level 1 with max 1
%% IOfferTypeFormat1Choice recursion level 1 with max 1
%% IOptionFeaturesFormat2Choice recursion level 1 with max 1
%% IIntermediateSecuritiesDistributionTypeFormat2Choice recursion level 1 with max 1
%% IOptionAvailabilityStatus1Choice recursion level 1 with max 1
%% IBeneficiaryCertificationType1Choice recursion level 1 with max 1
%% IDefaultProcessingOrStandingInstruction1Choice recursion level 1 with max 1
%% SecurityIdentification11 recursion level 1 with max 1
class SecurityIdentification11{
Description IsoMax140Text
}
SecurityIdentification11 *-- "1..1" ISecurityIdentification11Choice : Identification
%% CorporateActionDate8 recursion level 1 with max 1
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : EarlyResponseDeadline
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : CoverExpirationDate
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : ProtectDate
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : MarketDeadline
CorporateActionDate8 *-- "0..1" IDateFormat7Choice : ResponseDeadline
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : ExpiryDate
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : SubscriptionCostDebitDate
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : DepositoryCoverExpirationDate
CorporateActionDate8 *-- "0..1" IDateFormat6Choice : LeadPlaintiffDeadline
%% CorporateActionPeriod5 recursion level 1 with max 1
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : PriceCalculationPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : ParallelTradingPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : ActionPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : RevocabilityPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : PrivilegeSuspensionPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : AccountServicerRevocabilityPeriod
CorporateActionPeriod5 *-- "0..1" IPeriod1Choice : DepositorySuspensionPeriodForWithdrawal
%% CorporateActionRate5 recursion level 1 with max 1
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : AdditionalTax
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : ChargesFees
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat4Choice : FinalDividendRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : FiscalStamp
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : FullyFrankedRate
CorporateActionRate5 *-- "0..0" IGrossDividendRateFormat1Choice : GrossDividendRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : CashIncentiveRate
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : IndexFactor
CorporateActionRate5 *-- "0..0" IInterestRateUsedForPaymentFormat1Choice : InterestRateUsedForPayment
CorporateActionRate5 *-- "0..0" INetDividendRateFormat1Choice : NetDividendRate
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : NonResidentRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : MaximumAllowedOversubscriptionRate
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat4Choice : ProvisionalDividendRate
CorporateActionRate5 *-- "0..0" ITaxCreditRateFormat1Choice : TaxCreditRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : ProrationRate
CorporateActionRate5 *-- "0..1" ISolicitationFeeRateFormat1Choice : SolicitationFeeRate
CorporateActionRate5 *-- "0..1" ISolicitationFeeRateFormat1Choice : EarlySolicitationFeeRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : WithholdingTaxRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : TaxOnIncome
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : TaxOnProfits
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : TaxReclaimRate
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : WithholdingOfForeignTax
CorporateActionRate5 *-- "0..1" IRateAndAmountFormat3Choice : WithholdingOfLocalTax
CorporateActionRate5 *-- "0..0" RateTypeAndAmountAndStatus6 : TaxRelatedRate
CorporateActionRate5 *-- "0..1" IRateFormat2Choice : ApplicableRate
%% CorporateActionPrice6 recursion level 1 with max 1
CorporateActionPrice6 *-- "0..1" IPriceFormat11Choice : CashInLieuOfSharePrice
CorporateActionPrice6 *-- "0..1" IPriceFormat8Choice : ExercisePrice
CorporateActionPrice6 *-- "0..0" IPriceFormat9Choice : GenericCashPriceReceivedPerProduct
CorporateActionPrice6 *-- "0..1" IPriceFormat11Choice : OverSubscriptionDepositPrice
CorporateActionPrice6 *-- "0..1" IPriceFormat11Choice : GenericCashPricePaidPerProduct
CorporateActionPrice6 *-- "0..1" AmountPrice3 : TaxableIncomePerDividendShare
%% SecuritiesOption1 recursion level 1 with max 1
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity1Choice : MaximumExercisableQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewBoardLotQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity1Choice : NewDenominationQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity2Choice : FrontEndOddLotQuantity
SecuritiesOption1 *-- "0..1" IFinancialInstrumentQuantity2Choice : BackEndOddLotQuantity
%% SecuritiesOption4 recursion level 1 with max 1
class SecuritiesOption4{
CreditDebitIndicator CreditDebitCode
CurrencyOption ActiveCurrencyCode
}
SecuritiesOption4 *-- "1..1" FinancialInstrumentAttributes5 : SecurityDetails
SecuritiesOption4 *-- "0..1" ITemporaryFinancialInstrumentIndicator1Choice : TemporaryFinancialInstrumentIndicator
SecuritiesOption4 *-- "0..1" INonEligibleProceedsIndicator1Choice : NonEligibleProceedsIndicator
SecuritiesOption4 *-- "0..1" IQuantity6Choice : EntitledQuantity
SecuritiesOption4 *-- "0..1" ISafekeepingPlaceFormat2Choice : SafekeepingPlace
SecuritiesOption4 *-- "0..1" IFractionDispositionType1Choice : FractionDisposition
SecuritiesOption4 *-- "0..1" IPeriod1Choice : TradingPeriod
SecuritiesOption4 *-- "1..1" SecurityDate2 : DateDetails
SecuritiesOption4 *-- "0..1" CorporateActionRate7 : RateDetails
SecuritiesOption4 *-- "0..1" CorporateActionPrice10 : PriceDetails
%% CashOption3 recursion level 1 with max 1
class CashOption3{
CreditDebitIndicator CreditDebitCode
ContractualPaymentIndicator Payment1Code
}
CashOption3 *-- "0..1" INonEligibleProceedsIndicator1Choice : NonEligibleProceedsIndicator
CashOption3 *-- "0..1" GenericIdentification20 : IncomeType
CashOption3 *-- "0..1" ICashAccountIdentification5Choice : CashAccountIdentification
CashOption3 *-- "0..1" CorporateActionAmounts3 : AmountDetails
CashOption3 *-- "1..1" CorporateActionDate9 : DateDetails
CashOption3 *-- "0..1" ForeignExchangeTerms11 : ForeignExchangeDetails
CashOption3 *-- "0..1" IPriceFormat10Choice : GenericCashPriceReceivedPerProduct
%% CorporateActionNarrative5 recursion level 1 with max 1
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation3 : AdditionalText
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation3 : NarrativeVersion
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : InformationConditions
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : InformationToComplyWith
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : SecurityRestriction
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : TaxationConditions
CorporateActionNarrative5 *-- "0..1" UpdatedAdditionalInformation1 : Disclaimer
CorporateActionOption10 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| OptionNumber | Number identifying the available corporate action options. | IsoExact3NumericText - Required 1..1 |
| OptionType | Specifies the corporate action options available to the account owner. | ICorporateActionOption2Choice - Required 1..1 |
| FractionDisposition | Specifies how fractions resulting from derived securities will be processed or how prorated decisions will be rounding, if provided with a pro ration rate. | IFractionDispositionType1Choice - Optional 0..1 |
| OfferType | Specifies the conditions that apply to the offer. | IOfferTypeFormat1Choice - Unknown 0..0 |
| OptionFeatures | Specifies the features that may apply to a corporate action option. | IOptionFeaturesFormat2Choice - Unknown 0..0 |
| IntermediateSecuritiesDistributionType | Specifies the type of intermediates securities distribution. | IIntermediateSecuritiesDistributionTypeFormat2Choice - Optional 0..1 |
| OptionAvailabilityStatus | Specifies the status of the option. | IOptionAvailabilityStatus1Choice - Optional 0..1 |
| CertificationType | Type of certification which is required. | IBeneficiaryCertificationType1Choice - Unknown 0..0 |
| NonDomicileCountry | Holder of the security has to certify, in line with the terms of the corporate action, that it is not domiciled in the country indicated. | CountryCode - Unknown 0..0 |
| ValidDomicileCountry | Country of domicile in which the Corporate Action option is valid. The holder of the security has to certify that it is domiciled in the country indicated. | CountryCode - Unknown 0..0 |
| CurrencyOption | Currency in which the cash disbursed from an interest or dividend payment is offered. | ActiveCurrencyCode - Optional 0..1 |
| DefaultProcessingOrStandingInstruction | Indicates whether the corporate action movement is a default processing or a standing instruction. | IDefaultProcessingOrStandingInstruction1Choice - Required 1..1 |
| ChargesAppliedIndicator | Indicates whether redemption charges apply. | IsoYesNoIndicator - Optional 0..1 |
| CertificationIndicator | Indicates whether or not certification is required from the account owner. | Yes: certification required |
| WithdrawalAllowedIndicator | Indicates whether withdrawal of instruction is allowed. | IsoYesNoIndicator - Optional 0..1 |
| ChangeAllowedIndicator | Indicates whether change of instruction is allowed. | IsoYesNoIndicator - Optional 0..1 |
| SecurityIdentification | Identifies the financial instrument. | SecurityIdentification11 - Optional 0..1 |
| DateDetails | Provides information about the dates related to a corporate action option. | CorporateActionDate8 - Optional 0..1 |
| PeriodDetails | Provides information about the periods related to a corporate action option. | CorporateActionPeriod5 - Optional 0..1 |
| RateAndAmountDetails | Provides information about rates and amounts related to a corporate action option. | CorporateActionRate5 - Optional 0..1 |
| PriceDetails | Provides information about the prices related to a corporate action option. | CorporateActionPrice6 - Optional 0..1 |
| SecuritiesQuantity | Provides information about securities quantity related to a corporate action option. | SecuritiesOption1 - Optional 0..1 |
| SecuritiesMovementDetails | Provides information about securities movement related to a corporate action option. | SecuritiesOption4 - Unknown 0..0 |
| CashMovementDetails | Provides information about the cash movement linked to the corporate action option. | CashOption3 - Unknown 0..0 |
| AdditionalInformation | Provides additional information about the corporate action movement. | CorporateActionNarrative5 - Optional 0..1 |
AdditionalInformation building block
Provides additional information. Provides additional information such as the taxation conditions. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% CorporateActionNarrative6 recursion level 0 with max 1
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : AdditionalText
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : NarrativeVersion
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : InformationConditions
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : InformationToComplyWith
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : TaxationConditions
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : Disclaimer
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : PartyContactNarrative
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : DeclarationDetails
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : RegistrationDetails
CorporateActionNarrative6 *-- "0..1" UpdatedAdditionalInformation1 : BasketOrIndexInformation
%% 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
}
CorporateActionNarrative6 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 |
| DeclarationDetails | Provides declaration details narrative relative to the financial instrument, for example, beneficial ownership. | 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 |
MessageOriginator building block
Party that originated the message, if other than the sender. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
MessageRecipient building block
Party that is the final destination of the message, if other than the receiver. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
IssuerAgent building block
Party appointed to administer the event on behalf of the issuer company/offeror. The party may be contacted for more information about the event. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
PayingAgent building block
Agent (principal or fiscal paying agent) appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
SubPayingAgent building block
Sub-agent appointed to execute the payment for the corporate action event on behalf of the issuer company/offeror. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
Registrar building block
Party/agent responsible for maintaining the register of a security. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
ResellingAgent building block
A broker-dealer responsible for reselling to new investors securities (usually bonds) that have been tendered for purchase by their owner. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
PhysicalSecuritiesAgent building block
A trust company, bank or similar financial institution assigned by an issuer to accept presentations of instruments, usually bonds, for transfer and or exchange. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
DropAgent building block
A trust company, bank or similar financial institution who acts on behalf of an out of town agent or event agent where securities can be delivered in person. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
SolicitationAgent building block
A trust company, bank or similar financial institution assigned by an issuer to maintain records of investors and account balances and transactions for the consent of a material change. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
InformationAgent building block
A trust company, bank or similar financial institution assigned by an Issuer to provide information and copies of the offering documentation. Choice of identification of a party. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IPartyIdentification10Choice recursion level 0 with max 1
PartyIdentification10Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
Extension 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
%% Extension2 recursion level 0 with max 1
class Extension2{
PlaceAndName IsoMax350Text
}
Extension2 *-- "1..1" ExtensionEnvelope1 : ExtensionEnvelope
%% ExtensionEnvelope1 recursion level 1 with max 1
ExtensionEnvelope1 *-- "1..1" ExtensionContents1 : ExtensionContents
Extension2 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| PlaceAndName | Name qualifying the information provided in the Text field, and place where this information should be inserted. | IsoMax350Text - Optional 0..1 |
| ExtensionEnvelope | Technical element wrapping the extension. | ExtensionEnvelope1 - Required 1..1 |
Extensibility and generalization considerations
To facilitate generalized design patterns in the system, the CorporateActionMovementPreliminaryAdviceV01 implementation follows a specific implementaiton pattern. First of all, CorporateActionMovementPreliminaryAdviceV01 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, CorporateActionMovementPreliminaryAdviceV01Document implements IOuterDocument. Because CorporateActionMovementPreliminaryAdviceV01 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type CorporateActionMovementPreliminaryAdviceV01.
classDiagram
class IOuterRecord
CorporateActionMovementPreliminaryAdviceV01 --|> IOuterRecord : Implements
CorporateActionMovementPreliminaryAdviceV01Document --|> IOuterDocument~CorporateActionMovementPreliminaryAdviceV01~ : Implements
class IOuterDocument~CorporateActionMovementPreliminaryAdviceV01~ {
CorporateActionMovementPreliminaryAdviceV01 Message
}
Document wrapper for serialization
The only real purpose CorporateActionMovementPreliminaryAdviceV01Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:seev.035.001.01’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using CorporateActionMovementPreliminaryAdviceV01.ToDocument() method. The returned CorporateActionMovementPreliminaryAdviceV01Document value will serialize correctly according to ISO 20022 standards.
classDiagram
CorporateActionMovementPreliminaryAdviceV01Document *-- CorporateActionMovementPreliminaryAdviceV01 : 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.01">
<CorpActnMvmntPrlimryAdvc>
<Id>
<!-- Identification inner content -->
</Id>
<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>
<CorpActnMvmntDtls>
<!-- CorporateActionMovementDetails inner content -->
</CorpActnMvmntDtls>
<AddtlInf>
<!-- AdditionalInformation inner content -->
</AddtlInf>
<MsgOrgtr>
<!-- MessageOriginator inner content -->
</MsgOrgtr>
<MsgRcpt>
<!-- MessageRecipient inner content -->
</MsgRcpt>
<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>
<Xtnsn>
<!-- Extension inner content -->
</Xtnsn>
</CorpActnMvmntPrlimryAdvc>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_Td_rSdEwEd-BzquC8wXy7w_1611787017"
nextVersions="_SlTD4d3BEd-KAqAOGQOnnw"
name="CorporateActionMovementPreliminaryAdviceV01"
definition="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:
- re-send a message previously sent (the sub-function of the message is Duplicate),
- provide a third party with a copy of a message for information (the sub-function of the message is Copy),
- re-send to a third party a copy of a message for information (the sub-function of the message is Copy Duplicate).
ISO 15022 - 20022 COEXISTENCE
This ISO 20022 message is reversed engineered from ISO 15022. Both standards will coexist for a certain number of years. Until this coexistence period ends, the usage of certain data types is restricted to ensure interoperability between ISO 15022 and 20022 users. Compliance to these rules is mandatory in a coexistence environment. The coexistence restrictions are described in a Textual Rule linked to the Message Items they concern. These coexistence textual rules are clearly identified as follows: “CoexistenceXxxxRule”."
registrationStatus="Registered"
messageSet="_urpIICeJEeOCeO5e7islRQ"
xmlTag="CorpActnMvmntPrlimryAdvc"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<constraint
xmi:id="_TecXN9EwEd-BzquC8wXy7w_-617151014"
name="SafekeepingAccount1Rule"
definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR then any element in the list (MinimumNominalQuantity, MinimumExercisableQuantity,MinimumExercisableMultipleQuantity, ContractSize) must not be present in any occurrences of CorporateActionMovementDetails/SecuritiesMovementDetails/SecurityDetails;
(MT564 Rule C2 - part 1)."
registrationStatus="Provisionally Registered"
expression="<RuleDefinition><ComplexRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ComplexRule"><mustBe><connector>AND</connector><BooleanRule xsi:type="Absence"><leftOperand>/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumNominalQuantity</leftOperand></BooleanRule><BooleanRule xsi:type="Absence"><leftOperand>/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumExercisableQuantity</leftOperand></BooleanRule><BooleanRule xsi:type="Absence"><leftOperand>/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/MinimumExercisableQuantity</leftOperand></BooleanRule><BooleanRule xsi:type="Absence"><leftOperand>/CorporateActionMovementDetails[*]/SecuritiesMovementDetails[*]/SecurityDetails/ContractSize</leftOperand></BooleanRule></mustBe><onCondition><connector>AND</connector><BooleanRule xsi:type="Presence"><leftOperand>/AccountDetails/ForAllAccounts</leftOperand></BooleanRule><BooleanRule xsi:type="EqualToValue"><leftOperand>/AccountDetails/ForAllAccounts/IdentificationCode</leftOperand><rightOperand>General</rightOperand></BooleanRule></onCondition></ComplexRule></RuleDefinition>" />
<constraint
xmi:id="_TecXOtEwEd-BzquC8wXy7w_-1614223367"
name="SafekeepingAccount2Rule"
definition="If AccountDetails/ForAllAccounts/IdentificationCode value is GENR then AmountDetails must not be present in any occurrences of CorporateActionMovementDetails/CashMovementDetails.
(MT564 Rule C2 - part 2)."
registrationStatus="Provisionally Registered"
expression="<RuleDefinition><ComplexRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ComplexRule"><mustBe><connector>AND</connector><BooleanRule xsi:type="Absence"><leftOperand>/CorporateActionMovementDetails[*]/CashMovementDetails[*]/AmountDetails</leftOperand></BooleanRule></mustBe><onCondition><connector>AND</connector><BooleanRule xsi:type="Presence"><leftOperand>/AccountDetails/ForAllAccounts</leftOperand></BooleanRule><BooleanRule xsi:type="EqualToValue"><leftOperand>/AccountDetails/ForAllAccounts/IdentificationCode</leftOperand><rightOperand>General</rightOperand></BooleanRule></onCondition></ComplexRule></RuleDefinition>" />
<constraint
xmi:id="_TelhItEwEd-BzquC8wXy7w_-730990080"
name="OtherEventRule"
definition="If CorporateActionGeneralInformation/EventType/Code is OTHR, then at least one occurrence of AdditionalInformation/AdditionalText/AdditionalInformation must be present.
(MT564 NVR C4)."
registrationStatus="Provisionally Registered"
expression="<RuleDefinition><ComplexRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ComplexRule"><mustBe><connector>AND</connector><BooleanRule xsi:type="Presence"><leftOperand>/AdditionalInformation</leftOperand></BooleanRule><BooleanRule xsi:type="Presence"><leftOperand>/AdditionalInformation/AdditionalText</leftOperand></BooleanRule><BooleanRule xsi:type="Presence"><leftOperand>/AdditionalInformation/AdditionalText/AdditionalInformation[1]</leftOperand></BooleanRule></mustBe><onCondition><connector>AND</connector><BooleanRule xsi:type="Presence"><leftOperand>/CorporateActionGeneralInformation/EventType/Code</leftOperand></BooleanRule><BooleanRule xsi:type="EqualToValue"><leftOperand>/CorporateActionGeneralInformation/EventType/Code</leftOperand><rightOperand>OtherEvent</rightOperand></BooleanRule></onCondition></ComplexRule></RuleDefinition>" />
<constraint
xmi:id="_TelhJdEwEd-BzquC8wXy7w_1418283770"
name="IntermediateSecuritiesDistributionRule"
definition="If CorporateActionGeneralInformation/EventType/Code is RHDI, then CorporateActionMovementDetails/IntermediateSecuritiesDistributionType must be present in at least one occurrence of CorporateActionMovementDetails.
(MT 564 NVR C12)."
registrationStatus="Provisionally Registered"
expression="<RuleDefinition><ComplexRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ComplexRule"><mustBe><connector>AND</connector><BooleanRule xsi:type="Presence"><leftOperand>/CorporateActionMovementDetails[*]/IntermediateSecuritiesDistributionType</leftOperand></BooleanRule></mustBe><onCondition><connector>AND</connector><BooleanRule xsi:type="EqualToValue"><leftOperand>/CorporateActionGeneralInformation/EventType/Code</leftOperand><rightOperand>IntermediateSecuritiesDistribution</rightOperand></BooleanRule></onCondition></ComplexRule></RuleDefinition>" />
<constraint
xmi:id="_TelhKNEwEd-BzquC8wXy7w_1054928774"
name="CoexistenceCharacterSetXRule"
definition="During ISO 15022 – 20022 coexistence, characters used in all text fields must correspond to character set X, that is, a-z A-Z / - ? : ( ) . , ‘ + { } CR LF."
registrationStatus="Provisionally Registered" />
<constraint
xmi:id="_TelhK9EwEd-BzquC8wXy7w_1405345061"
name="CoexistenceIdentificationRule"
definition="During ISO 15022 – 20022 coexistence, all transaction and document identifications or references must be 16 characters or less. The field must not start or end with a slash ‘/’ or contain two consecutive slashes ‘//’."
registrationStatus="Provisionally Registered" />
<messageBuildingBlock
xmi:id="_Td_rStEwEd-BzquC8wXy7w_-1401758896"
name="Identification"
definition="Information that unambiguously identifies a CorporateActionMovementPreliminaryAdvice message as know by the account servicer."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="Id"
complexType="_RBcz8tp-Ed-ak6NoX_4Aeg_-746423515">
<semanticMarkup
xmi:id="_cHDndw5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDneA5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDneQ5lEeO42pgjaJ50lw"
name="value"
value=":20C::SEME" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_Td_rS9EwEd-BzquC8wXy7w_993770368"
name="MovementPreliminaryAdviceGeneralInformation"
definition="General information about the movement preliminary advice document."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="MvmntPrlimryAdvcGnlInf"
complexType="_QxNYhdp-Ed-ak6NoX_4Aeg_206813968" />
<messageBuildingBlock
xmi:id="_TeI1MNEwEd-BzquC8wXy7w_-387727187"
name="PreviousMovementPreliminaryAdviceIdentification"
definition="Identification of a previously sent movement preliminary advice document."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="PrvsMvmntPrlimryAdvcId"
complexType="_Tg5R59p-Ed-ak6NoX_4Aeg_1248673251" />
<messageBuildingBlock
xmi:id="_TeI1MdEwEd-BzquC8wXy7w_-1346344232"
name="NotificationIdentification"
definition="Identification of a previously sent notification document."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="NtfctnId"
complexType="_Tg5R59p-Ed-ak6NoX_4Aeg_1248673251" />
<messageBuildingBlock
xmi:id="_TeI1MtEwEd-BzquC8wXy7w_-636936703"
name="MovementConfirmationIdentification"
definition="Identification of a previously sent movement confirmation document."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="MvmntConfId"
complexType="_Tg5R59p-Ed-ak6NoX_4Aeg_1248673251" />
<messageBuildingBlock
xmi:id="_TeI1M9EwEd-BzquC8wXy7w_-988020441"
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="_TeI1NNEwEd-BzquC8wXy7w_-576128180"
name="OtherDocumentIdentification"
definition="Identification of other documents as well as the document number."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="OthrDocId"
complexType="_ThCb29p-Ed-ak6NoX_4Aeg_15602052" />
<messageBuildingBlock
xmi:id="_TeI1NdEwEd-BzquC8wXy7w_1397891250"
name="EventsLinkage"
definition="Identification of an other corporate action event that needs to be closely linked to the processing of the event notified in this document."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="EvtsLkg"
complexType="_QxXJhNp-Ed-ak6NoX_4Aeg_-1181547020" />
<messageBuildingBlock
xmi:id="_TeI1NtEwEd-BzquC8wXy7w_1632045745"
name="ReversalReason"
definition="Reason for the reversal."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="RvslRsn"
complexType="_QxDnh9p-Ed-ak6NoX_4Aeg_-2128428826" />
<messageBuildingBlock
xmi:id="_TeI1N9EwEd-BzquC8wXy7w_1471771489"
name="CorporateActionGeneralInformation"
definition="General information about the corporate action event."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="CorpActnGnlInf"
complexType="_TayC2dp-Ed-ak6NoX_4Aeg_108160147" />
<messageBuildingBlock
xmi:id="_TeSmMNEwEd-BzquC8wXy7w_-1655864801"
name="AccountDetails"
definition="General information about the safekeeping account, owner and account balance."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="AcctDtls"
complexType="_QSXgYtp-Ed-ak6NoX_4Aeg_-1261780269" />
<messageBuildingBlock
xmi:id="_TeSmMdEwEd-BzquC8wXy7w_-1840834741"
name="CorporateActionMovementDetails"
definition="Information about the corporate action option."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="CorpActnMvmntDtls"
complexType="_UEzQMtp-Ed-ak6NoX_4Aeg_-682473212" />
<messageBuildingBlock
xmi:id="_TeSmMtEwEd-BzquC8wXy7w_248559991"
name="AdditionalInformation"
definition="Provides additional information."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="AddtlInf"
complexType="_ULz3Jdp-Ed-ak6NoX_4Aeg_-1558716045">
<semanticMarkup
xmi:id="_cHDnhg5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnhw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDniA5lEeO42pgjaJ50lw"
name="value"
value=":70E:ADTX" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TeSmM9EwEd-BzquC8wXy7w_994766215"
name="MessageOriginator"
definition="Party that originated the message, if other than the sender."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="MsgOrgtr"
complexType="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnig5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDniw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnjA5lEeO42pgjaJ50lw"
name="value"
value=":95a::MEOR" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TeSmNNEwEd-BzquC8wXy7w_1065877947"
name="MessageRecipient"
definition="Party that is the final destination of the message, if other than the receiver."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="MsgRcpt"
complexType="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnjg5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnjw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnkA5lEeO42pgjaJ50lw"
name="value"
value=":95a::MERE" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TeSmNdEwEd-BzquC8wXy7w_1118516589"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnkg5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnkw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnlA5lEeO42pgjaJ50lw"
name="value"
value=":95a::ISAG" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TeSmNtEwEd-BzquC8wXy7w_1390957641"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnlg5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnlw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnmA5lEeO42pgjaJ50lw"
name="value"
value=":95a::PAYA" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TeSmN9EwEd-BzquC8wXy7w_1432514283"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnmg5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnmw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnnA5lEeO42pgjaJ50lw"
name="value"
value=":95a::CODO" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXMNEwEd-BzquC8wXy7w_686181954"
name="Registrar"
definition="Party/agent responsible for maintaining the register of a security."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="Regar"
complexType="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHDnng5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHDnnw5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHDnoA5lEeO42pgjaJ50lw"
name="value"
value=":95a::REGR" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXMdEwEd-BzquC8wXy7w_-157068985"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHNYIA5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHNYIQ5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHNYIg5lEeO42pgjaJ50lw"
name="value"
value=":95a::RESA" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXMtEwEd-BzquC8wXy7w_-920819365"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHNYJA5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHNYJQ5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHNYJg5lEeO42pgjaJ50lw"
name="value"
value=":95a::PSAG" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXM9EwEd-BzquC8wXy7w_-1003015589"
name="DropAgent"
definition="A trust company, bank or similar financial institution who acts on behalf of an out of town agent or event agent where securities can be delivered in person."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="DrpAgt"
complexType="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHNYKA5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHNYKQ5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHNYKg5lEeO42pgjaJ50lw"
name="value"
value=":95a::DROP" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXNNEwEd-BzquC8wXy7w_-145987139"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHNYLA5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHNYLQ5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHNYLg5lEeO42pgjaJ50lw"
name="value"
value=":95a::SOLA" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXNdEwEd-BzquC8wXy7w_-117359460"
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="_QQR1tdp-Ed-ak6NoX_4Aeg_-1244141483">
<semanticMarkup
xmi:id="_cHNYMA5lEeO42pgjaJ50lw"
type="Synonym">
<elements
xmi:id="_cHNYMQ5lEeO42pgjaJ50lw"
name="context"
value="ISO 15022" />
<elements
xmi:id="_cHNYMg5lEeO42pgjaJ50lw"
name="value"
value=":95a::INFA" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_TecXNtEwEd-BzquC8wXy7w_733410265"
name="Extension"
definition="Additional information that can not be captured in the structured fields and/or any other specific block."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="Xtnsn"
complexType="_QzJSNdp-Ed-ak6NoX_4Aeg_251191216" />
<messageDefinitionIdentifier
businessArea="seev"
messageFunctionality="035"
flavour="001"
version="01" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.