DTCCCANOCSDDataSD1V12

supl.001.001.12

The DTCCCANOCSDDataSD1 message extends ISO corporate action notification (CANO) asset servicer data message (CSD type) with data elements that are not covered by the standard message, and additionally, with issuer/offeror/market values where DTC corresponding values are mapped to CANO. For example DTCC announced cash rate will be mapped to the CANO and issuer/offeror/ market declared cash rate will be extended in this message.

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
%% DTCCCANOCSDDataSD1V12 recursion level 0 with max 0
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionNotificationSD9 : NotificationGeneralInformation
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionGeneralInformationSD41 : CorporateActionGeneralInformation
DTCCCANOCSDDataSD1V12 *-- "0..1" FinancialInstrumentAttributesSD15 : UnderlyingSecurity
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionSD17 : CorporateActionDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionDateSD10 : CorporateActionDateDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionPriceSD4 : CorporateActionPriceDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionPeriodSD3 : CorporateActionPeriodDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionRateSD9 : CorporateActionRateAndAmountDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionQuantitySD3 : CorporateActionSecuritiesQuantity
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionOptionSD13 : OptionDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionDateSD11 : OptionDateDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" SecuritiesOptionSD9 : SecuritiesMovementDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" FinancialInstrumentAttributesSD16 : SecuritiesMovementSecurityDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionRateSD10 : SecuritiesMovementRateDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" CorporateActionPriceSD5 : SecuritiesMovementCashInLieuDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" FractionDispositionTypeSD3 : SecuritiesMovementFractionDisposition
DTCCCANOCSDDataSD1V12 *-- "0..1" CashOptionSD11 : CashMovementDetails
DTCCCANOCSDDataSD1V12 *-- "0..1" PartyIdentificationSD5 : NewAgent
DTCCCANOCSDDataSD1V12 *-- "0..1" PartyIdentificationSD6 : Agent
  

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

NotificationGeneralInformation building block

Information to be extended as supplementary data to notification general information. Provides additional information regarding notification general information details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionNotificationSD9 recursion level 0 with max 1
class CorporateActionNotificationSD9{
    PlaceAndName IsoMax350Text
    CreateDateAndTime IsoISODateTime
    UpdateDateAndTime IsoISODateTime
}
  

CorporateActionNotificationSD9 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
CreateDateAndTime Date and time when DTCC (The Depository Trust and Clearing Corporation) created the announcement record. IsoISODateTime - Required 1..1
UpdateDateAndTime Date and time when DTCC (The Depository Trust and Clearing Corporation) last updated the announcement. IsoISODateTime - Optional 0..1

CorporateActionGeneralInformation building block

Information to be extended as supplementary data to notification general information. Provides additional information regarding corporate action general information details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionGeneralInformationSD41 recursion level 0 with max 1
class CorporateActionGeneralInformationSD41{
    PlaceAndName IsoMax350Text
    EventGroup EventGroup1Code
    EventType ExtendedEventType6Code
    SubEventType DTCCSubEventType8Code
    InstructionMessagingEligibilityFlag IsoYesNoIndicator
    RedemptionIdentification IsoMax10NumericText
    DTCFCPElectionFlag IsoYesNoIndicator
    AssetServicerProcessingFlag IsoYesNoIndicator
}
  

CorporateActionGeneralInformationSD41 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
EventGroup DTC processing domain/ category for event types. EventGroup1Code - Optional 0..1
EventType DTCC (The Depository Trust and Clearing Corporation) native corporate action event type name. Used in place for the events that cannot be classified by ISO code and mapped to OTHR or when two or more distinct events (in DTCC model) use same ISO code and there are no additional data elements that distinguish those two or more events. ExtendedEventType6Code - Optional 0..1
SubEventType DTCC (The Depository Trust and Clearing Corporation) native corporate action sub event type name further defines the event type. DTCCSubEventType8Code - Optional 0..1
InstructionMessagingEligibilityFlag Indicates whether the event is eligible for Elective Dividend Services instruction messaging or voluntary reorganization instruction messaging. IsoYesNoIndicator - Optional 0..1
RedemptionIdentification Unique number systemically assigned to all lottery and non-lottery events announced in DTC redemptions (REDS) participant terminal system (PTS)/ participant browser system(PBS) function. IsoMax10NumericText - Optional 0..1
DTCFCPElectionFlag Identifies events that offer instruction processing specific to foreign currency payment (FCP) elections. IsoYesNoIndicator - Optional 0..1
AssetServicerProcessingFlag Indicates whether the event is being processed by DTC. IsoYesNoIndicator - Optional 0..1

UnderlyingSecurity building block

Information to be extended as supplementary data to underlying security details. Provides additional information regarding underlying security details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% FinancialInstrumentAttributesSD15 recursion level 0 with max 1
class FinancialInstrumentAttributesSD15{
    PlaceAndName IsoMax350Text
    IncomeSourceCountry CountryCode
    DTCAssetClass AssetClass1Code
    DTCAssetType DTCAssetType3Code
    SecurityEligibilityIndicator IsoYesNoIndicator
    TickerSymbol IsoMax35Text
    DIVANNSecurityDescription IsoMax50Text
    ForeignIssueFlag IsoYesNoIndicator
}
FinancialInstrumentAttributesSD15 *-- "0..1" SecurityIdentification20 : LinkedSecurity
FinancialInstrumentAttributesSD15 *-- "0..1" OtherIdentification2 : OriginatingSecurityIdentification
%% SecurityIdentification20 recursion level 1 with max 1
class SecurityIdentification20{
    ISIN IsoISINOct2015Identifier
    Description IsoRestrictedFINXMax140Text
}
SecurityIdentification20 *-- "0..0" OtherIdentification2 : OtherIdentification
%% OtherIdentification2 recursion level 1 with max 1
class OtherIdentification2{
    Identification IsoRestrictedFINXMax31Text
    Suffix IsoMax16Text
}
OtherIdentification2 *-- "1..1" IIdentificationSource4Choice : Type
  

FinancialInstrumentAttributesSD15 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
IncomeSourceCountry Country of source income for the security. CountryCode - Optional 0..1
DTCAssetClass Classification of instruments into asset classes at DTC (The Depository Trust Corporation). AssetClass1Code - Optional 0..1
DTCAssetType Further classification of instruments into (issue) asset types at DTC (The Depository Trust Corporation). DTCAssetType3Code - Optional 0..1
SecurityEligibilityIndicator Indicates whether the security is eligible for holding at DTC. IsoYesNoIndicator - Optional 0..1
TickerSymbol Ticket symbol for the event security (underlying security). IsoMax35Text - Optional 0..1
LinkedSecurity Security whose characteristics mirror the event security for purposes of FCP eligibility and tax relief. Certain derivative securities like HOLDR may have certain events where the source of payments are from an underlying security. SecurityIdentification20 - Optional 0..1
OriginatingSecurityIdentification Represents the ‘original’ security identifier of the event. It is used in the scenarios like “partial call” where there are 2 events. The first event distributes into the Contra CUSIP, a temporary security; and on the second event that temporary security becomes the underlying security of the event. This element is used in the second event to point to the original CUSIP. OtherIdentification2 - Optional 0..1
DIVANNSecurityDescription Security description associated with DIVANN legacy system which contains additional values such as NTL for interest only notional. IsoMax50Text - Optional 0..1
ForeignIssueFlag Indicates whether the event security is a foreign issue. This field will be initially used for CD Early Redemptions AC63. IsoYesNoIndicator - Optional 0..1

CorporateActionDetails building block

Information to be extended as supplementary data to corporate action details. Provides additional information regarding corporate action details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionSD17 recursion level 0 with max 1
class CorporateActionSD17{
    PlaceAndName IsoMax350Text
    NoticeType NoticeType1Code
    EventCashValue IsoRestrictedFINActiveCurrencyAnd13DecimalAmount
    NumberOfSharesToBeIssued IsoDecimalNumber
    TotalNumberOfSharesOffered IsoDecimalNumber
    CutOffDays IsoMax3Number
    DTCAutomatedOfferProgram DTCAutoOfferProgram1Code
    DTCRecycleCutOffIndicator CutOff1Code
    LongShortPaymentIndicator AccrualPeriodType1Code
    OversubscriptionType OversubscriptionType1Code
    ConditionalPaymentApplicableFlag IsoYesNoIndicator
    SolicitationDealerFeeFlag IsoYesNoIndicator
    DTCCustodyEligibleFlag IsoYesNoIndicator
    DTCReorganisationCustodyEligibleFlag IsoYesNoIndicator
    DTCReorganisationDepositEligibleFlag IsoYesNoIndicator
    SurrenderSharesToAgentFlag IsoYesNoIndicator
    StepUpPrivilegeFlag IsoYesNoIndicator
    RightsOversubscriptionFlag IsoYesNoIndicator
    RightsRoundUpPrivilegeFlag IsoYesNoIndicator
    RightsTransferableFlag IsoYesNoIndicator
    NonExemptAllowedIndicator IsoYesNoIndicator
    EDSMessagingCountryCode CountryCode
    RDPReferenceNumber IsoExact32AlphaNumericText
}
CorporateActionSD17 *-- "0..0" CorporateActionSD15 : CertificateDetails
%% CorporateActionSD15 recursion level 1 with max 1
class CorporateActionSD15{
    CertificateNumber IsoMax15AlphaNumericText
    CertificateCalledAmount IsoDecimalNumber
}
  

CorporateActionSD17 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
NoticeType Indicates whether the notice received was universal or specific to securities registered in DTC’s nominee name. NoticeType1Code - Optional 0..1
EventCashValue Amount of cash set aside by the offeror. This is the maximum amount that the offeror is willing to pay out to the holders who elect to take part in the offer. IsoRestrictedFINActiveCurrencyAnd13DecimalAmount - Optional 0..1
NumberOfSharesToBeIssued Number of shares the issuer is creating as part of the event. IsoDecimalNumber - Optional 0..1
TotalNumberOfSharesOffered Total number of shares that are part of the offer for example subscription offer. IsoDecimalNumber - Optional 0..1
CutOffDays Number of additional days used to establish a DTC processing cut-off date. For example, DTC typically adds a cut-off off day (making it one business day prior) to the record date for issues with agents outside NYC. This allows time for DTC to deliver the securities. IsoMax3Number - Optional 0..1
DTCAutomatedOfferProgram Indicator that identifies the type of interface an event agent has with DTC (The Depository Trust Corporation). It defines how time sensitive instruction and withdrawal process is. Offline (non automated) agent will have earlier deadlines which will be reflected in response deadlines but importantly withdrawal procedures for manual agent require hard copy sign off from the agent that has to be delivered to DTC to proceed with withdrawal. DTCAutoOfferProgram1Code - Optional 0..1
DTCRecycleCutOffIndicator Indicates whether the recycling of instructions for eligible positions is set to end early or late at DTC (The Depository Trust Corporation). CutOff1Code - Optional 0..1
LongShortPaymentIndicator Denotes whether the first accrual period for debt instruments is either long or short, compared to the normal accrual period of the security. AccrualPeriodType1Code - Optional 0..1
OversubscriptionType Type of oversubscription on the event. OversubscriptionType1Code - Optional 0..1
ConditionalPaymentApplicableFlag Indicates whether the payment made by the issuer is based on a stated condition. IsoYesNoIndicator - Optional 0..1
SolicitationDealerFeeFlag Indicates whether there is a solicitation fee on the event. This fee is paid by the soliciting dealer. IsoYesNoIndicator - Optional 0..1
DTCCustodyEligibleFlag Indicates whether positions held in custody program are eligible for instruction processing at DTC (The Depository Trust Corporation). IsoYesNoIndicator - Optional 0..1
DTCReorganisationCustodyEligibleFlag Indicates whether the event is eligible for custody reorganisation service at DTC (The Depository Trust Corporation). IsoYesNoIndicator - Optional 0..1
DTCReorganisationDepositEligibleFlag Indicates whether the event is eligible for reorganisation deposit service at DTC (The Depository Trust Corporation). IsoYesNoIndicator - Optional 0..1
SurrenderSharesToAgentFlag Indicates whether shares outside of DTC need to be delivered to the agent in order to receive entitlement. IsoYesNoIndicator - Optional 0..1
StepUpPrivilegeFlag Indicates that the holder has the privilege to buy additional rights. Upon exercising this privilege, the holder may subscribe to one additional share of the new security in lieu of fractional shares to which the holder might otherwise be entitled. IsoYesNoIndicator - Optional 0..1
RightsOversubscriptionFlag Indicates whether holders of rights will be afforded the opportunity to subscribe to purchase extra shares that are not picked up by the remaining holders. IsoYesNoIndicator - Optional 0..1
RightsRoundUpPrivilegeFlag Indicates whether the shareholder will be able to round up his/her subscription in the event his/her rights are less than the requirement. IsoYesNoIndicator - Optional 0..1
RightsTransferableFlag Indicates whether rights can be transferred. IsoYesNoIndicator - Optional 0..1
NonExemptAllowedIndicator Indicates whether the certificate of deposit early redemption event is exempt from the presentation of the required legal documentation. When presentation is exempt, the instructing client agrees to maintain such documentation for at least 30 months following payment of the request. IsoYesNoIndicator - Optional 0..1
CertificateDetails Provides details of certificates that have been called for redemption. CorporateActionSD15 - Unknown 0..0
EDSMessagingCountryCode Country of issue used to determine whether the electable option requires tax Exempt or wire information when sending EDS elections via the CAIN message type. CountryCode - Optional 0..1
RDPReferenceNumber Unique DTCC legacy reference used for matching and reconciling legacy CCF records. The element will be populated to all levels of the message (event details, options, movements) where applicable to indicate how values are sourced from CCF legacy files. For example: event has 2 related activity types 74, and 54. If event details and cash option are sourced from the activity type 74, then activity type 74 will be in RDP reference number in event details, and also on the cash option. The activity type 54 will be “on” the security option. Also, usage rules will specify the different layouts of the RDP reference number based on DTCC event group (reorganization, distribution, or redemption). IsoExact32AlphaNumericText - Optional 0..1

CorporateActionDateDetails building block

Information to be extended as supplementary data to corporate action date details. Provides additional information regarding corporate action date details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionDateSD10 recursion level 0 with max 1
class CorporateActionDateSD10{
    PlaceAndName IsoMax350Text
    DTCLastDayForEarlyRedemption IsoISODate
    DTCPositionCaptureDate IsoISODate
    NewYorkCutOffDate IsoISODate
    DTCExtendedCutOffDate IsoISODate
    EffectiveDateByExchange IsoISODate
    DateDeclaredWorthless IsoISODate
    DeleteWorthlessSecurityDate IsoISODate
    DTCExitDate IsoISODate
    SubscriptionBeginDate IsoISODate
    RightsDistributionAsOfDate IsoISODate
    RightsDistributionDate IsoISODate
    TimingDate IsoISODate
}
  

CorporateActionDateSD10 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DTCLastDayForEarlyRedemption Last day on which DTC (The Depository Trust Corporation) will accept instructions for CD early redemptions. This is specific to CDs when the registered holder is deceased. IsoISODate - Optional 0..1
DTCPositionCaptureDate Date when positions are captured and entitlements are calculated in the system at DTC (The Depository Trust Corporation). IsoISODate - Optional 0..1
NewYorkCutOffDate Last day to deposit securities at DTC and receive the entitlement for an event approaching record date. Issues that have a New York cut-off date have an out-of-town agent on DTC’s records. IsoISODate - Optional 0..1
DTCExtendedCutOffDate Cut Off date for DTC (The Depository Trust Corporation) deposit and withdrawal activity. Certain events require an earlier cut off date. This is typically used on event securities requiring the submission of bearer coupons. Those events usually stop deposit and withdrawal activity one month prior to the declared record date. IsoISODate - Optional 0..1
EffectiveDateByExchange Effective date as declared by the primary exchange that generally coincides with cessation of trading in the old security and commencement of trading in the new security. IsoISODate - Optional 0..1
DateDeclaredWorthless Date that DTC received formal notification from the agent/issuer stating that the securities are null and void. IsoISODate - Optional 0..1
DeleteWorthlessSecurityDate Date when DTC participant positions will be deleted. Typically used for expired rights and warrants. IsoISODate - Optional 0..1
DTCExitDate Date on which securities will be exited to DTC participants from DTC (The Depository Trust Corporation). IsoISODate - Optional 0..1
SubscriptionBeginDate Date on which a holder can begin to subscribe for new/additional shares. IsoISODate - Optional 0..1
RightsDistributionAsOfDate Date used for determining client position for allocating rights. IsoISODate - Optional 0..1
RightsDistributionDate Date at which the rights allocation occurred. IsoISODate - Optional 0..1
TimingDate Date which defines the timing of the Dividend Equivalent payment as per IRS regulation 871m. IsoISODate - Optional 0..1

CorporateActionPriceDetails building block

Information to be extended as corporate action price supplementary data. Provides additional information regarding corporate action details price details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionPriceSD4 recursion level 0 with max 1
class CorporateActionPriceSD4{
    PlaceAndName IsoMax350Text
    SubscriptionPrice IsoRestrictedFINActiveCurrencyAnd13DecimalAmount
}
  

CorporateActionPriceSD4 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
SubscriptionPrice Cost to subscribe to additional share(s) of the underlying security. IsoRestrictedFINActiveCurrencyAnd13DecimalAmount - Optional 0..1

CorporateActionPeriodDetails building block

Information to be extended as supplementary data to corporate action period. Provides additional information regarding corporate action details periods details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionPeriodSD3 recursion level 0 with max 1
class CorporateActionPeriodSD3{
    PlaceAndName IsoMax350Text
}
CorporateActionPeriodSD3 *-- "0..1" Period13 : DTCReorganisationDepositPeriod
%% Period13 recursion level 1 with max 1
Period13 *-- "1..1" IDateFormat47Choice : StartDate
Period13 *-- "1..1" IDateFormat47Choice : EndDate
  

CorporateActionPeriodSD3 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DTCReorganisationDepositPeriod Period during which the securities can be submitted to reorganisation deposit service at DTC (The Depository Trust Corporation). DTC “first day for reorganisation deposit” (start date) is the day on which security is eligible for reorganisation deposit service at DTC. DTC “last day for reorganisation deposit” is the last day on which securities are eligible to be submitted for reorganisation deposit service at DTC. Period13 - Optional 0..1

CorporateActionRateAndAmountDetails building block

Information to be extended as supplementary data to corporate action rate and amount. Provides additional information regarding corporate action details rates and amounts details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionRateSD9 recursion level 0 with max 1
class CorporateActionRateSD9{
    PlaceAndName IsoMax350Text
    DeferredInterestRate IsoPercentageRate
}
CorporateActionRateSD9 *-- "0..1" CorporateActionRateSD2 : AmericanOrGlobalDepositReceiptRatio
%% CorporateActionRateSD2 recursion level 1 with max 1
class CorporateActionRateSD2{
    ReceiptBaseQuantity IsoDecimalNumber
    OrdinaryShare IsoDecimalNumber
}
  

CorporateActionRateSD9 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DeferredInterestRate Applicable to structured securities where there is a set schedule of principal and interest payments for the life of the issue. A portion of the scheduled interest payment will not be paid at the time of distribution. IsoPercentageRate - Optional 0..1
AmericanOrGlobalDepositReceiptRatio American or Global Depository Receipt(s) per ordinary share(s) ratio. CorporateActionRateSD2 - Optional 0..1

CorporateActionSecuritiesQuantity building block

Information to be extended as supplementary data to corporate action securities quantity. Provides additional information regarding corporate action securities quantity details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionQuantitySD3 recursion level 0 with max 1
class CorporateActionQuantitySD3{
    PlaceAndName IsoMax350Text
}
CorporateActionQuantitySD3 *-- "0..1" IRatioFormat23Choice : SubscriptionQuantity
%% IRatioFormat23Choice recursion level 1 with max 1
  

CorporateActionQuantitySD3 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
SubscriptionQuantity Represents “subscription base” (Quantity2) and “subscription disbursed” (Quantity1) quantity elements. “Subscription base quantity” is the quantity of the rights security that forms the basis for calculating the payout. It is located on the distribution announcement, with the rights subscription announcement following later. “Subscription disbursed quantity” is the quantity of securities received in the security payout. It is located on the distribution announcement, with the rights subscription announcement following later. IRatioFormat23Choice - Optional 0..1

OptionDetails building block

Information to be extended as supplementary data to option details. Provides additional information regarding corporate action option details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionOptionSD13 recursion level 0 with max 1
class CorporateActionOptionSD13{
    PlaceAndName IsoMax350Text
    ExtendedOptionFeatures ExtendedOptionFeature1Code
    DefaultOptionFlag IsoYesNoIndicator
    OptionalDividendSupplementaryDataRequiredFlag IsoYesNoIndicator
    OversubscriptionChargeFlag IsoYesNoIndicator
    ProtectChargeFlag IsoYesNoIndicator
    StepUpChargeFlag IsoYesNoIndicator
    SubscriptionChargeFlag IsoYesNoIndicator
    RDPReferenceNumber IsoExact32AlphaNumericText
    NumberOfConditions IsoMax2NumericText
    ProrationRoundingIndicator FractionDispositionType12Code
    ProrationFraction IsoDecimalNumber
}
CorporateActionOptionSD13 *-- "0..99" TaxCategory1 : TaxCategory
%% TaxCategory1 recursion level 1 with max 1
class TaxCategory1{
    Identification IsoMax2NumericText
    Description IsoMax35Text
    Country CountryCode
}
  

CorporateActionOptionSD13 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
ExtendedOptionFeatures Used for options that have particular proprietary feature that cannot be represented in standard ISO message. ExtendedOptionFeature1Code - Optional 0..1
DefaultOptionFlag Identifies whether the option is declared as default by the issuer / offeror, and will be treated as default by the issuer / offeror if no elections is made. IsoYesNoIndicator - Optional 0..1
OptionalDividendSupplementaryDataRequiredFlag Indicates whether optional dividend supplementary data are required in the ISO 20022 CAIN instructions for this event. IsoYesNoIndicator - Optional 0..1
OversubscriptionChargeFlag Indicates whether the cash debit for the oversubscription charge is made at the time of instruction submission. IsoYesNoIndicator - Optional 0..1
ProtectChargeFlag Indicates whether the cash debit for the protect charge is made at the time of instruction submission. IsoYesNoIndicator - Optional 0..1
StepUpChargeFlag Indicates whether the cash debit for the step-up charge is made at the time of instruction submission. IsoYesNoIndicator - Optional 0..1
SubscriptionChargeFlag Indicates whether the cash debit for the subscription charge is made at the time of instruction submission. IsoYesNoIndicator - Optional 0..1
RDPReferenceNumber Unique DTCC legacy reference used for matching and reconciling legacy CCF records. The element will be populated to all levels of the message (event details, options, movements) where applicable to indicate how values are sourced from CCF legacy files. For example: event has 2 related activity types 74, and 54. If event details and cash option are sourced from the activity type 74, then activity type 74 will be in RDP reference number in event details, and also on the cash option. The activity type 54 will be “on” the security option. Also, usage rules will specify the different layouts of the RDP reference number based on DTCC event group (reorganization, distribution, or redemption). IsoExact32AlphaNumericText - Optional 0..1
NumberOfConditions Number of conditions for a given option that must be acknowledged upon submission of instruction for voluntary reorganisation events. IsoMax2NumericText - Optional 0..1
TaxCategory Identification of the tax category as issuers, their agents, or tax authorities may require a breakdown of holders at a category level that have requested to receive a distribution at a favourable rate of tax. TaxCategory1 - Collection 0..99
ProrationRoundingIndicator Indicates how fractional positions will be handled for events with prorated options. FractionDispositionType12Code - Optional 0..1
ProrationFraction Decimal above which numbers are rounded for prorated options. For example if the rounding factor is 0.5, numbers of 0.5 and above will be rounded up. IsoDecimalNumber - Optional 0..1

OptionDateDetails building block

Information to be extended as supplementary data to option date details. Provides additional information regarding corporate action options date details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionDateSD11 recursion level 0 with max 1
class CorporateActionDateSD11{
    PlaceAndName IsoMax350Text
    DTCEarliestPaymentDate IsoISODate
}
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : ActualEarlyExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : ActualProtectExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : ActualEarlyProtectExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : DTCEarlyProtectExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : ActualEarlyCoverProtectExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : DTCEarlyCoverProtectExpirationDate
CorporateActionDateSD11 *-- "0..1" IDateFormat49Choice : ProcessToDate
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
%% IDateFormat49Choice recursion level 1 with max 1
  

CorporateActionDateSD11 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
ActualEarlyExpirationDate Actual early expiration time as set by the issuer/offer/agent. IDateFormat49Choice - Optional 0..1
ActualProtectExpirationDate Last day protect instructions can be submitted to the issuer / agent. IDateFormat49Choice - Optional 0..1
ActualEarlyProtectExpirationDate Last day protect instructions can be submitted to the issuer / agent for the early expiration. IDateFormat49Choice - Optional 0..1
DTCEarlyProtectExpirationDate Last day protect instructions can be submitted to DTC for the early expiration. IDateFormat49Choice - Optional 0..1
ActualEarlyCoverProtectExpirationDate Last day cover early protect instructions can be submitted to the issuer / agent. IDateFormat49Choice - Optional 0..1
DTCEarlyCoverProtectExpirationDate Last day cover early protect instructions can be submitted to DTC. IDateFormat49Choice - Optional 0..1
ProcessToDate For Reorganization events, date at which instructions will be accepted by agent for payment. IDateFormat49Choice - Optional 0..1
DTCEarliestPaymentDate Date on which DTC expects to receive funds for distribution from the issuer / offeror. It will be used before payout details are available. IsoISODate - Optional 0..1

SecuritiesMovementDetails building block

Information to be extended as supplementary data to securities movement details. Provides additional information regarding corporate action option securities movement details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% SecuritiesOptionSD9 recursion level 0 with max 1
class SecuritiesOptionSD9{
    PlaceAndName IsoMax350Text
    PayoutType DTCCPayoutType4Code
    DTCPayMethod IsoMax3Text
    DTCPayOrder IsoMax3Text
    ReinvestmentIncomeClassification ReinvestmentIncomeClassification2Code
    EntitlementCalculationMethod DTCEntitlementCalculationMethod1Code
    PriceBasis DTCBaseDisbursed1Code
    DTCExitExplanationIndicator SecuritiesExitReason1Code
    ChargeFlag IsoYesNoIndicator
    ProtectChargeFlag IsoYesNoIndicator
    EstimatedPriceFlag IsoYesNoIndicator
    RDPReferenceNumber IsoExact32AlphaNumericText
}
SecuritiesOptionSD9 *-- "0..1" Period13 : DTCFractionalShareInstructionPeriod
SecuritiesOptionSD9 *-- "0..1" Period13 : DTCUSTaxInstructionPeriod
%% Period13 recursion level 1 with max 1
Period13 *-- "1..1" IDateFormat47Choice : StartDate
Period13 *-- "1..1" IDateFormat47Choice : EndDate
%% Period13 recursion level 1 with max 1
Period13 *-- "1..1" IDateFormat47Choice : StartDate
Period13 *-- "1..1" IDateFormat47Choice : EndDate
  

SecuritiesOptionSD9 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
PayoutType Specifies the type of payout associated with the event (for example: principal, long term capital gain). DTCCPayoutType4Code - Required 1..1
DTCPayMethod Indicates the type of payment. Used in stock dividends processing at DTC(The Depository Trust Corporation). Valid values list will be maintained separately from the schema. IsoMax3Text - Optional 0..1
DTCPayOrder Indicates the payment order. Used in stock dividends processing at DTC (The Depository Trust Corporation). Valid values list will be maintained separately from the schema. IsoMax3Text - Optional 0..1
ReinvestmentIncomeClassification Income classification of the cash proceeds for dividend reinvestment. ReinvestmentIncomeClassification2Code - Optional 0..1
EntitlementCalculationMethod Indicates how the entitlements were calculated optional dividends. DTCEntitlementCalculationMethod1Code - Optional 0..1
PriceBasis Price is based on either base or disbursed security. DTCBaseDisbursed1Code - Optional 0..1
DTCExitExplanationIndicator Specifies the reason for DTC (The Depository Trust Corporation) to exit the shares. SecuritiesExitReason1Code - Optional 0..1
ChargeFlag Indicates whether a DTC (The Depository Trust Corporation) participant, using one or more payment bonds in connection with a warrant exercise, will be charged (through settlement on exercise date) the value of the upcoming interest payment on the bond(s). IsoYesNoIndicator - Optional 0..1
ProtectChargeFlag Indicates whether a charge is levied on the protect instructions at the time when the protect is submitted or at the time of the cover. Applies to warrants or rights exercise scenario where the holder must put up money with rights or warrants execution. When this flag is set to yes - charges are due at the time of the protect, when it is set to “no” changes are due when protect is covered. IsoYesNoIndicator - Optional 0..1
EstimatedPriceFlag Indicates whether the price from the offeror is estimated or final. IsoYesNoIndicator - Optional 0..1
DTCFractionalShareInstructionPeriod Time period during which instructions regarding the disposition of fractional entitlements will be accepted at DTC (The Depository Trust Corporation). Period13 - Optional 0..1
DTCUSTaxInstructionPeriod Indicates the period during which the instructions for US Tax service will be accepted at DTC (The Depository Trust Corporation). Period13 - Optional 0..1
RDPReferenceNumber Unique DTCC legacy reference used for matching and reconciling legacy CCF records. The element will be populated to all levels of the message (event details, options, movements) where applicable to indicate how values are sourced from CCF legacy files. For example: event has 2 related activity types 74, and 54. If event details and cash option are sourced from the activity type 74, then activity type 74 will be in RDP reference number in event details, and also on the cash option. The activity type 54 will be “on” the security option. Also, usage rules will specify the different layouts of the RDP reference number based on DTCC event group (reorganization, distribution, or redemption). IsoExact32AlphaNumericText - Optional 0..1

SecuritiesMovementSecurityDetails building block

Information to be extended as supplementary data to securities movement security details. Provides additional information regarding corporate action option securities movement security details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% FinancialInstrumentAttributesSD16 recursion level 0 with max 1
class FinancialInstrumentAttributesSD16{
    PlaceAndName IsoMax350Text
    DTCSecurityTransferableFlag IsoYesNoIndicator
    DTCDisbursedSecurityAssetType DTCAssetType3Code
    DTCDisbursedSecurityAssetClass AssetClass1Code
    BabyBondDenomination IsoDecimalNumber
}
FinancialInstrumentAttributesSD16 *-- "0..1" FinancialInstrumentAttributesSD18 : DeclaredDisbursedSecurityDetails
%% FinancialInstrumentAttributesSD18 recursion level 1 with max 1
class FinancialInstrumentAttributesSD18{
    DeclaredDisbursedSecurityDescription IsoMax140Text
}
FinancialInstrumentAttributesSD18 *-- "0..1" SecurityIdentification20 : DeclaredDisbursedSecurityIdentification
  

FinancialInstrumentAttributesSD16 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DTCSecurityTransferableFlag Indicates whether or not the newly issued securities are transferable by the agent. This flag is specific to DTC (The Depository Trust Corporation). IsoYesNoIndicator - Optional 0..1
DeclaredDisbursedSecurityDetails Details of security that is being distributed as a result of a corporate action as declared by the issuer or offeror on the market. FinancialInstrumentAttributesSD18 - Optional 0..1
DTCDisbursedSecurityAssetType Further classification of DTC disbursed security instruments into (issue) asset types at DTC (The Depository Trust Corporation). DTCAssetType3Code - Optional 0..1
DTCDisbursedSecurityAssetClass Classification of DTC disbursed security instruments into asset classes at DTC (The Depository Trust Corporation). AssetClass1Code - Optional 0..1
BabyBondDenomination Dollar amount attributed to the bond when the par value is less than 1000. IsoDecimalNumber - Optional 0..1

SecuritiesMovementRateDetails building block

Information to be extended as supplementary data to securities movement rate details. Provides additional information regarding corporate action option securities movement rate details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionRateSD10 recursion level 0 with max 1
class CorporateActionRateSD10{
    PlaceAndName IsoMax350Text
    EstimatedRateFlag IsoYesNoIndicator
}
CorporateActionRateSD10 *-- "0..1" ICorporateActionRateSD7Choice : DeclaredSecurityRate
CorporateActionRateSD10 *-- "0..1" IPriceFormatSD3Choice : DeclaredFeeRate
%% ICorporateActionRateSD7Choice recursion level 1 with max 1
%% IPriceFormatSD3Choice recursion level 1 with max 1
  

CorporateActionRateSD10 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DeclaredSecurityRate Corresponding rate of the security being disbursed as a result of the corporate action as declared by the issuer or offeror on the market. ICorporateActionRateSD7Choice - Optional 0..1
EstimatedRateFlag Denotes whether the rate is approximate. IsoYesNoIndicator - Optional 0..1
DeclaredFeeRate Rate at which the fee will be charged to a DTC participant. IPriceFormatSD3Choice - Optional 0..1

SecuritiesMovementCashInLieuDetails building block

Information to be extended as securities movement cash in lieu supplementary data. Provides additional information regarding corporate action option securities movement price details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CorporateActionPriceSD5 recursion level 0 with max 1
class CorporateActionPriceSD5{
    PlaceAndName IsoMax350Text
    DeclaredCashInLieuPrice IsoRestrictedFINActiveCurrencyAnd13DecimalAmount
}
  

CorporateActionPriceSD5 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
DeclaredCashInLieuPrice Corresponding cash in lieu price as declared on the market by issuer/ offeror. IsoRestrictedFINActiveCurrencyAnd13DecimalAmount - Optional 0..1

SecuritiesMovementFractionDisposition building block

Information to be extended as supplementary data to securities movement fraction disposition. Provides additional information regarding corporate action securities movement fraction disposition details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% FractionDispositionTypeSD3 recursion level 0 with max 1
class FractionDispositionTypeSD3{
    PlaceAndName IsoMax350Text
    RoundingFactor IsoDecimalNumber
}
  

FractionDispositionTypeSD3 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
RoundingFactor Decimal above which numbers are rounded. For an example if rounding factor is 0.6 this means that fractional units greater than or equal to 6 will be rounded up and less than 6 will be rounded down. IsoDecimalNumber - Optional 0..1

CashMovementDetails building block

Information to be extended as supplementary data to cash movement details. Provides additional information regarding corporate action option cash movement details. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% CashOptionSD11 recursion level 0 with max 1
class CashOptionSD11{
    PlaceAndName IsoMax350Text
    PayoutType DTCCPayoutType5Code
    DTCPayMethod IsoMax3Text
    DTCPayOrder IsoMax3Text
    EntitlementCalculationMethod DTCEntitlementCalculationMethod1Code
    EstimatedRateFlag IsoYesNoIndicator
    NRATaxReportableFlag IsoYesNoIndicator
    ProtectChargeFlag IsoYesNoIndicator
    RDPReferenceNumber IsoExact32AlphaNumericText
}
CashOptionSD11 *-- "0..1" IPriceFormatSD3Choice : DeclaredCashRate
CashOptionSD11 *-- "0..1" IPriceFormatSD3Choice : DeclaredGrossRate
CashOptionSD11 *-- "0..1" IPriceFormatSD3Choice : DeclaredNetRate
CashOptionSD11 *-- "0..1" IPriceFormatSD3Choice : DeclaredFeeRate
CashOptionSD11 *-- "0..1" Period13 : DTCUSTaxInstructionPeriod
%% IPriceFormatSD3Choice recursion level 1 with max 1
%% IPriceFormatSD3Choice recursion level 1 with max 1
%% IPriceFormatSD3Choice recursion level 1 with max 1
%% IPriceFormatSD3Choice recursion level 1 with max 1
%% Period13 recursion level 1 with max 1
Period13 *-- "1..1" IDateFormat47Choice : StartDate
Period13 *-- "1..1" IDateFormat47Choice : EndDate
  

CashOptionSD11 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
PayoutType Specifies the type of payout associated with the event (for example: principal, long term capital gain). DTCCPayoutType5Code - Required 1..1
DTCPayMethod Indicates the type of payment. Used in stock dividends processing at DTC (The Depository Trust Corporation). Valid values list will be maintained separately from the schema. IsoMax3Text - Optional 0..1
DTCPayOrder Indicates the payment order. Used in stock dividends processing at DTC (The Depository Trust Corporation). Valid values list will be maintained separately from the schema. IsoMax3Text - Optional 0..1
EntitlementCalculationMethod Indicates how the entitlements were calculated optional dividends. DTCEntitlementCalculationMethod1Code - Optional 0..1
EstimatedRateFlag Denotes whether the rate is approximate. IsoYesNoIndicator - Optional 0..1
NRATaxReportableFlag Identifies the income events which are subject to withholding tax if paid to a non-U.S. resident alien (NRA). IsoYesNoIndicator - Optional 0..1
ProtectChargeFlag Indicates whether a charge is levied on the protect instructions at the time when the protect is submitted or at the time of the cover. Applies to warrants or rights exercise scenario where the holder must put up money with rights or warrants execution. When this flag is set to yes - charges are due at the time of the protect, when it is set to “no” changes are due when protect is covered. IsoYesNoIndicator - Optional 0..1
DeclaredCashRate Cash rate associated to the payout as declared on the market by the issuer or offeror. IPriceFormatSD3Choice - Optional 0..1
DeclaredGrossRate Gross cash rate associated to the payout as declared on the market by the issuer or offeror. IPriceFormatSD3Choice - Optional 0..1
DeclaredNetRate Net cash rate associated to the payout as declared on the market by the issuer or offeror. IPriceFormatSD3Choice - Optional 0..1
DeclaredFeeRate Rate at which the fee will be charged to a DTC participant. IPriceFormatSD3Choice - Optional 0..1
DTCUSTaxInstructionPeriod Indicates the period during which the instructions for DTC (The Depository Trust Corporation) US Tax service will be accepted. Period13 - Optional 0..1
RDPReferenceNumber Unique DTCC legacy reference used for matching and reconciling legacy CCF records. The element will be populated to all levels of the message (event details, options, movements) where applicable to indicate how values are sourced from CCF legacy files. For example: event has 2 related activity types 74, and 54. If event details and cash option are sourced from the activity type 74, then activity type 74 will be in RDP reference number in event details, and also on the cash option. The activity type 54 will be “on” the security option. Also, usage rules will specify the different layouts of the RDP reference number based on DTCC event group (reorganization, distribution, or redemption). IsoExact32AlphaNumericText - Optional 0..1

NewAgent building block

Information to be extended new agent block. Used when required ISO agent type does not exist and entire new component must be generated. Provides additional information regarding the new agent component. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% PartyIdentificationSD5 recursion level 0 with max 1
class PartyIdentificationSD5{
    PlaceAndName IsoMax350Text
    AgentType AgentType1Code
    AgentIdentification IsoMax8Text
    AgentTelephoneNumber IsoPhoneNumber
    AgentEmailAddress IsoMax256Text
}
PartyIdentificationSD5 *-- "1..1" NameAndAddress5 : AgentNameAndAddress
PartyIdentificationSD5 *-- "0..1" PartyIdentificationSD4 : ContactInformation
%% NameAndAddress5 recursion level 1 with max 1
class NameAndAddress5{
    Name IsoMax350Text
}
NameAndAddress5 *-- "0..1" PostalAddress1 : Address
%% PartyIdentificationSD4 recursion level 1 with max 1
PartyIdentificationSD4 *-- "0..1" ContactIdentification1 : ContactPerson
PartyIdentificationSD4 *-- "0..1" PartyIdentificationSD3 : EmployingParty
  

PartyIdentificationSD5 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
AgentType Function the agent is performing. AgentType1Code - Required 1..1
AgentIdentification DTC agent identification number. IsoMax8Text - Optional 0..1
AgentNameAndAddress Name and address of the agent. NameAndAddress5 - Required 1..1
AgentTelephoneNumber Telephone number of the agent. IsoPhoneNumber - Optional 0..1
AgentEmailAddress Email address of the event agent. IsoMax256Text - Optional 0..1
ContactInformation Agent designated contact Information details. PartyIdentificationSD4 - Optional 0..1

Agent building block

Provides additional information to agent details (to message agent like “issuer agent”, “reselling agent”). Used when required “ISO agent type” exists and only additional details need to be extended. Provides additional information regarding the existing agent component. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% PartyIdentificationSD6 recursion level 0 with max 1
class PartyIdentificationSD6{
    PlaceAndName IsoMax350Text
    AgentIdentification IsoMax8Text
    AgentTelephoneNumber IsoPhoneNumber
    AgentEmailAddress IsoMax256Text
}
PartyIdentificationSD6 *-- "0..1" PartyIdentificationSD4 : ContactInformation
PartyIdentificationSD6 *-- "0..1" PostalAddress1 : AgentAddress
%% PartyIdentificationSD4 recursion level 1 with max 1
PartyIdentificationSD4 *-- "0..1" ContactIdentification1 : ContactPerson
PartyIdentificationSD4 *-- "0..1" PartyIdentificationSD3 : EmployingParty
%% PostalAddress1 recursion level 1 with max 1
class PostalAddress1{
    AddressType AddressType2Code
    AddressLine IsoMax70Text
    StreetName IsoMax70Text
    BuildingNumber IsoMax16Text
    PostCode IsoMax16Text
    TownName IsoMax35Text
    CountrySubDivision IsoMax35Text
    Country CountryCode
}
  

PartyIdentificationSD6 members

Member name Description Data Type / Multiplicity
PlaceAndName Xpath to the element that is being extended. IsoMax350Text - Optional 0..1
AgentIdentification DTC agent identification number. IsoMax8Text - Optional 0..1
AgentTelephoneNumber Telephone number of the agent. IsoPhoneNumber - Optional 0..1
ContactInformation Agent designated contact information details. PartyIdentificationSD4 - Optional 0..1
AgentEmailAddress Email address of the event agent. IsoMax256Text - Optional 0..1
AgentAddress Event agent address. PostalAddress1 - Optional 0..1

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    DTCCCANOCSDDataSD1V12 --|> IOuterRecord : Implements
    DTCCCANOCSDDataSD1V12Document --|> IOuterDocument~DTCCCANOCSDDataSD1V12~ : Implements
    class IOuterDocument~DTCCCANOCSDDataSD1V12~ {
        DTCCCANOCSDDataSD1V12 Message
     }
  

Document wrapper for serialization

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

classDiagram
    DTCCCANOCSDDataSD1V12Document *-- DTCCCANOCSDDataSD1V12 : 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:supl.001.001.12">
    <DTCCCANOCSDDataSD1>
        <NtfctnGnlInf>
            <!-- NotificationGeneralInformation inner content -->
        </NtfctnGnlInf>
        <CorpActnGnlInf>
            <!-- CorporateActionGeneralInformation inner content -->
        </CorpActnGnlInf>
        <UndrlygScty>
            <!-- UnderlyingSecurity inner content -->
        </UndrlygScty>
        <CorpActnDtls>
            <!-- CorporateActionDetails inner content -->
        </CorpActnDtls>
        <CorpActnDtDtls>
            <!-- CorporateActionDateDetails inner content -->
        </CorpActnDtDtls>
        <CorpActnPricDtls>
            <!-- CorporateActionPriceDetails inner content -->
        </CorpActnPricDtls>
        <CorpActnPrdDtls>
            <!-- CorporateActionPeriodDetails inner content -->
        </CorpActnPrdDtls>
        <CorpActnRateAndAmtDtls>
            <!-- CorporateActionRateAndAmountDetails inner content -->
        </CorpActnRateAndAmtDtls>
        <CorpActnSctiesQty>
            <!-- CorporateActionSecuritiesQuantity inner content -->
        </CorpActnSctiesQty>
        <OptnDtls>
            <!-- OptionDetails inner content -->
        </OptnDtls>
        <OptnDtDtls>
            <!-- OptionDateDetails inner content -->
        </OptnDtDtls>
        <SctiesMvmntDtls>
            <!-- SecuritiesMovementDetails inner content -->
        </SctiesMvmntDtls>
        <SctiesMvmntSctyDtls>
            <!-- SecuritiesMovementSecurityDetails inner content -->
        </SctiesMvmntSctyDtls>
        <SctiesMvmntRateDtls>
            <!-- SecuritiesMovementRateDetails inner content -->
        </SctiesMvmntRateDtls>
        <SctiesMvmntCshInLieuDtls>
            <!-- SecuritiesMovementCashInLieuDetails inner content -->
        </SctiesMvmntCshInLieuDtls>
        <SctiesMvmntFrctnDspstn>
            <!-- SecuritiesMovementFractionDisposition inner content -->
        </SctiesMvmntFrctnDspstn>
        <CshMvmntDtls>
            <!-- CashMovementDetails inner content -->
        </CshMvmntDtls>
        <NewAgt>
            <!-- NewAgent inner content -->
        </NewAgt>
        <Agt>
            <!-- Agent inner content -->
        </Agt>
    </DTCCCANOCSDDataSD1>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_x6QR0QB6EeqouY-yI_q3qQ"
  nextVersions="_q_pKQQ4zEeuIpNw_GxsBOw"
  previousVersion="_b_Y1IeaHEei5aPS232E3Mw"
  name="DTCCCANOCSDDataSD1V12"
  definition="The DTCCCANOCSDDataSD1 message extends ISO corporate action notification (CANO) asset servicer data message (CSD type) with data elements that are not covered by the standard message, and additionally, with issuer/offeror/market values where DTC corresponding values are mapped to CANO. For example DTCC announced cash rate will be mapped to the CANO and issuer/offeror/ market declared cash rate will be extended in this message."
  registrationStatus="Registered"
  messageSet="_urpIICeJEeOCeO5e7islRQ"
  xmlTag="DTCCCANOCSDDataSD1"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_x6QR0wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKQw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1I-aHEei5aPS232E3Mw"
    name="NotificationGeneralInformation"
    definition="Information to be extended as supplementary data to notification general information."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="NtfctnGnlInf"
    complexType="_vkOZsb5NEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR1QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKRQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1JeaHEei5aPS232E3Mw"
    name="CorporateActionGeneralInformation"
    definition="Information to be extended as supplementary data to notification general information."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnGnlInf"
    complexType="_6riH8QB_EeqouY-yI_q3qQ" />
  <messageBuildingBlock
    xmi:id="_x6QR1wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKRw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1J-aHEei5aPS232E3Mw"
    name="UnderlyingSecurity"
    definition="Information to be extended as supplementary data to underlying security details."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="UndrlygScty"
    complexType="_3beX4b5PEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR2QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKSQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1KeaHEei5aPS232E3Mw"
    name="CorporateActionDetails"
    definition="Information to be extended as supplementary data to corporate action details."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnDtls"
    complexType="__mbAEb5PEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR2wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKSw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1K-aHEei5aPS232E3Mw"
    name="CorporateActionDateDetails"
    definition="Information to be extended as supplementary data to corporate action date details."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnDtDtls"
    complexType="_bmP1AeaKEei5aPS232E3Mw" />
  <messageBuildingBlock
    xmi:id="_x6QR3QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKTQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1LeaHEei5aPS232E3Mw"
    name="CorporateActionPriceDetails"
    definition="Information to be extended as corporate action price supplementary data."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnPricDtls"
    complexType="_KAVaMb5QEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR3wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKTw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1L-aHEei5aPS232E3Mw"
    name="CorporateActionPeriodDetails"
    definition="Information to be extended as supplementary data to corporate action period."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnPrdDtls"
    complexType="_qdhPgb5WEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR4QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKUQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1MeaHEei5aPS232E3Mw"
    name="CorporateActionRateAndAmountDetails"
    definition="Information to be extended as supplementary data to corporate action rate and amount."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnRateAndAmtDtls"
    complexType="_wA70wb5WEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR4wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKUw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1M-aHEei5aPS232E3Mw"
    name="CorporateActionSecuritiesQuantity"
    definition="Information to be extended as supplementary data to corporate action securities quantity."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="CorpActnSctiesQty"
    complexType="_1RnrQb5WEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR5QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKVQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1NeaHEei5aPS232E3Mw"
    name="OptionDetails"
    definition="Information to be extended as supplementary data to option details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OptnDtls"
    complexType="_g_ekAQCAEeqouY-yI_q3qQ" />
  <messageBuildingBlock
    xmi:id="_x6QR5wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKVw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1N-aHEei5aPS232E3Mw"
    name="OptionDateDetails"
    definition="Information to be extended as supplementary data to option date details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OptnDtDtls"
    complexType="_CPKmse2KEeiWtrflKsFqHg" />
  <messageBuildingBlock
    xmi:id="_x6QR6QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKWQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1OeaHEei5aPS232E3Mw"
    name="SecuritiesMovementDetails"
    definition="Information to be extended as supplementary data to securities movement details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SctiesMvmntDtls"
    complexType="_B30Wwb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR6wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKWw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1O-aHEei5aPS232E3Mw"
    name="SecuritiesMovementSecurityDetails"
    definition="Information to be extended as supplementary data to securities movement security details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SctiesMvmntSctyDtls"
    complexType="_FkrDAb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR7QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKXQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1PeaHEei5aPS232E3Mw"
    name="SecuritiesMovementRateDetails"
    definition="Information to be extended as supplementary data to securities movement rate details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SctiesMvmntRateDtls"
    complexType="_IeDD4b5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR7wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKXw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1P-aHEei5aPS232E3Mw"
    name="SecuritiesMovementCashInLieuDetails"
    definition="Information to be extended as securities movement cash in lieu supplementary data."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SctiesMvmntCshInLieuDtls"
    complexType="_MNH9sb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR8QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKYQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1QeaHEei5aPS232E3Mw"
    name="SecuritiesMovementFractionDisposition"
    definition="Information to be extended as supplementary data to securities movement fraction disposition."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SctiesMvmntFrctnDspstn"
    complexType="_PhIFEb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR8wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKYw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1Q-aHEei5aPS232E3Mw"
    name="CashMovementDetails"
    definition="Information to be extended as supplementary data to cash movement details."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="CshMvmntDtls"
    complexType="_SveQYb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR9QB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKZQ4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1ReaHEei5aPS232E3Mw"
    name="NewAgent"
    definition="Information to be extended new agent block. Used when required ISO agent type does not exist and entire new component must be generated."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="NewAgt"
    complexType="_XrLVYb5XEeexmbB7KsjCwA" />
  <messageBuildingBlock
    xmi:id="_x6QR9wB6EeqouY-yI_q3qQ"
    nextVersions="_q_pKZw4zEeuIpNw_GxsBOw"
    previousVersion="_b_Y1R-aHEei5aPS232E3Mw"
    name="Agent"
    definition="Provides additional information to agent details (to message agent like &quot;issuer agent&quot;, &quot;reselling agent&quot;). Used when required &quot;ISO agent type&quot; exists and only additional details need to be extended."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="Agt"
    complexType="_bTHFYb5XEeexmbB7KsjCwA" />
  <messageDefinitionIdentifier
    businessArea="supl"
    messageFunctionality="001"
    flavour="001"
    version="12" />
</messageDefinition>

ISO Building Blocks

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