ShareholdersIdentificationDisclosureRequestV02

seev.045.001.02

The ShareholdersIdentificationDisclosureRequest message is sent by an issuer or by a third party nominated by the issuer (such as an issuer’s agent) to the first intermediaries in a custody chain or is sent by any intermediaries in a custody chain to the next intermediary down the chain of intermediaries (towards the investor side of the chain) in order to request the disclosure of shareholders identity and provides information on the receiving party to whom responses must be sent, on the financial instrument concerned and on the deadline to respond.

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
%% ShareholdersIdentificationDisclosureRequestV02 recursion level 0 with max 0
class ShareholdersIdentificationDisclosureRequestV02{
    IssuerDisclosureRequestIdentification IsoMax35Text
    DisclosureRequestType DisclosureRequestType1Code
    ForwardRequestIndicator IsoYesNoIndicator
    ResponseThroughChainIndicator IsoYesNoIndicator
    ShareholderRightsDirectiveIndicator IsoYesNoIndicator
    SharesQuantityThreshold IsoDecimalNumber
}
ShareholdersIdentificationDisclosureRequestV02 *-- "1..1" SecurityIdentification19 : FinancialInstrumentIdentification
ShareholdersIdentificationDisclosureRequestV02 *-- "1..1" IDateFormat46Choice : ShareholdersDisclosureRecordDate
ShareholdersIdentificationDisclosureRequestV02 *-- "0..1" IRequestShareHeldDate1Choice : RequestShareHeldDate
ShareholdersIdentificationDisclosureRequestV02 *-- "1..1" PartyIdentification214 : DisclosureResponseRecipient
ShareholdersIdentificationDisclosureRequestV02 *-- "1..1" IDateFormat46Choice : IssuerDisclosureDeadline
ShareholdersIdentificationDisclosureRequestV02 *-- "0..1" IDateFormat46Choice : DisclosureResponseDeadline
ShareholdersIdentificationDisclosureRequestV02 *-- "0..1" IPartyIdentification129Choice : Issuer
ShareholdersIdentificationDisclosureRequestV02 *-- "0..1" SupplementaryData1 : SupplementaryData
  

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

IssuerDisclosureRequestIdentification building block

Official and unique identification assigned to a shareholders identification disclosure request process by the issuer or third party nominated by it. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

DisclosureRequestType building block

Specifies the type of disclosure request. Type of disclosure request. For comparison, see the ISO20022 official specification This message is declared as DisclosureRequestType1Code in the ISO specification. In our implementation, it is represented in source code as DisclosureRequestType1Code. Due to global using directives, it is treated as a System.String by the compiler and runtime.

ForwardRequestIndicator building block

Indicates whether the request is to be forwarded to and responded by the other intermediaries down the chain of intermediaries or not. If not to be forwarded, the indicator may not be present. Indicates a “Yes” or “No” type of answer for an element. For comparison, see the ISO20022 official specification This message is declared as YesNoIndicator in the ISO specification. In our implementation, it is represented in source code as IsoYesNoIndicator. Due to global using directives, it is treated as a System.String by the compiler and runtime.

ResponseThroughChainIndicator building block

Indicates whether the shareholder identification disclosure response is to be sent back down the chain of intermediaries or directly to the identified response recipient. If “true” or “1”, the response must be sent back through the chain of intermediaries. If “false” or “0”, the response must be sent directly to the identified response recipient and the indicator may not be present. Indicates a “Yes” or “No” type of answer for an element. For comparison, see the ISO20022 official specification This message is declared as YesNoIndicator in the ISO specification. In our implementation, it is represented in source code as IsoYesNoIndicator. Due to global using directives, it is treated as a System.String by the compiler and runtime.

ShareholderRightsDirectiveIndicator building block

Indicates whether the request was initiated by the first intermediary in the custody chain in accordance with SRD II. Indicates a “Yes” or “No” type of answer for an element. For comparison, see the ISO20022 official specification This message is declared as YesNoIndicator in the ISO specification. In our implementation, it is represented in source code as IsoYesNoIndicator. Due to global using directives, it is treated as a System.String by the compiler and runtime.

FinancialInstrumentIdentification building block

Identifies the financial instrument. Identification of a security. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% SecurityIdentification19 recursion level 0 with max 1
class SecurityIdentification19{
    ISIN IsoISINOct2015Identifier
    Description IsoMax140Text
}
SecurityIdentification19 *-- "0..0" OtherIdentification1 : OtherIdentification
%% OtherIdentification1 recursion level 1 with max 1
class OtherIdentification1{
    Identification IsoMax35Text
    Suffix IsoMax16Text
}
OtherIdentification1 *-- "1..1" IIdentificationSource3Choice : Type
  

SecurityIdentification19 members

Member name Description Data Type / Multiplicity
ISIN International Securities Identification Number (ISIN). A numbering system designed by the United Nation’s International Organisation for Standardisation (ISO). The ISIN is composed of a 2-character prefix representing the country of issue, followed by the national security number (if one exists), and a check digit. Each country has a national numbering agency that assigns ISIN numbers for securities in that country. IsoISINOct2015Identifier - Optional 0..1
OtherIdentification Identification of a security by proprietary or domestic identification scheme. OtherIdentification1 - Unknown 0..0
Description Textual description of a security instrument. IsoMax140Text - Optional 0..1

ShareholdersDisclosureRecordDate building block

Date set by the issuer on which shareholders identity is determined based on the settled positions struck in the books of the Issuer CSD or any other first intermediary at the close of business day. Choice between an ISODate or ISODateTime format or a date code. For comparison, see the ISO20022 official specification

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

DateFormat46Choice members

Member name Description Data Type / Multiplicity

SharesQuantityThreshold building block

Minimum number of shares held by a shareholder above which the identification must be disclosed. Number of objects represented as a decimal number, for example 0.75 or 45.6. For comparison, see the ISO20022 official specification This message is declared as DecimalNumber in the ISO specification. In our implementation, it is represented in source code as IsoDecimalNumber. Due to global using directives, it is treated as a System.UInt64 by the compiler and runtime.

RequestShareHeldDate building block

Indicates whether the date from which the shares have been held must be communicated into the disclosure response and according to which method theses dates have to be communicated. Choice between different ways of specifying the method to determine as from when shares have been held by an investor. For comparison, see the ISO20022 official specification

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

RequestShareHeldDate1Choice members

Member name Description Data Type / Multiplicity

DisclosureResponseRecipient building block

Issuer or third party nominated by the issuer to whom the disclosure response shall be transmitted by the intermediary. Identification of a party. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% PartyIdentification214 recursion level 0 with max 1
class PartyIdentification214{
    RecipientName IsoMax350Text
}
PartyIdentification214 *-- "1..1" IPartyIdentification203Choice : Identification
PartyIdentification214 *-- "1..1" PartyAddress1 : ResponseRecipientAddress
%% IPartyIdentification203Choice recursion level 1 with max 1
%% PartyAddress1 recursion level 1 with max 1
class PartyAddress1{
    AnyBIC IsoAnyBICDec2014Identifier
    EmailAddress IsoMax256Text
    URLAddress IsoMax2048Text
}
PartyAddress1 *-- "0..1" PostalAddress26 : PostalAddress
  

PartyIdentification214 members

Member name Description Data Type / Multiplicity
Identification Identification of the party to which the disclosure response must be sent. IPartyIdentification203Choice - Required 1..1
RecipientName Name of the party to which the disclosure response must be sent. IsoMax350Text - Required 1..1
ResponseRecipientAddress Address of the party to which the disclosure response must be sent. PartyAddress1 - Required 1..1

IssuerDisclosureDeadline building block

Latest date/time set by the issuer or a third party appointed by the issuer at which a response to the request to disclose shareholder identity shall be provided by each intermediary to the recipient to whom the response must be sent.
Choice between an ISODate or ISODateTime format or a date code. For comparison, see the ISO20022 official specification

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

DateFormat46Choice members

Member name Description Data Type / Multiplicity

DisclosureResponseDeadline building block

Latest date/time set by an intermediary at which a response to the request to disclose shareholder identity shall be provided when sending the response though the chain of intermediaries.
Choice between an ISODate or ISODateTime format or a date code. For comparison, see the ISO20022 official specification

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

DateFormat46Choice members

Member name Description Data Type / Multiplicity

Issuer building block

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

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

PartyIdentification129Choice members

Member name Description Data Type / Multiplicity

SupplementaryData building block

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

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

SupplementaryData1 members

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

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    ShareholdersIdentificationDisclosureRequestV02 --|> IOuterRecord : Implements
    ShareholdersIdentificationDisclosureRequestV02Document --|> IOuterDocument~ShareholdersIdentificationDisclosureRequestV02~ : Implements
    class IOuterDocument~ShareholdersIdentificationDisclosureRequestV02~ {
        ShareholdersIdentificationDisclosureRequestV02 Message
     }
  

Document wrapper for serialization

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

classDiagram
    ShareholdersIdentificationDisclosureRequestV02Document *-- ShareholdersIdentificationDisclosureRequestV02 : 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.045.001.02">
    <ShrhldrsIdDsclsrReq>
        <IssrDsclsrReqId>
            <!-- IssuerDisclosureRequestIdentification inner content -->
        </IssrDsclsrReqId>
        <DsclsrReqTp>
            <!-- DisclosureRequestType inner content -->
        </DsclsrReqTp>
        <FwdReqInd>
            <!-- ForwardRequestIndicator inner content -->
        </FwdReqInd>
        <RspnThrghChainInd>
            <!-- ResponseThroughChainIndicator inner content -->
        </RspnThrghChainInd>
        <ShrhldrRghtsDrctvInd>
            <!-- ShareholderRightsDirectiveIndicator inner content -->
        </ShrhldrRghtsDrctvInd>
        <FinInstrmId>
            <!-- FinancialInstrumentIdentification inner content -->
        </FinInstrmId>
        <ShrhldrsDsclsrRcrdDt>
            <!-- ShareholdersDisclosureRecordDate inner content -->
        </ShrhldrsDsclsrRcrdDt>
        <ShrsQtyThrshld>
            <!-- SharesQuantityThreshold inner content -->
        </ShrsQtyThrshld>
        <ReqShrHeldDt>
            <!-- RequestShareHeldDate inner content -->
        </ReqShrHeldDt>
        <DsclsrRspnRcpt>
            <!-- DisclosureResponseRecipient inner content -->
        </DsclsrRspnRcpt>
        <IssrDsclsrDdln>
            <!-- IssuerDisclosureDeadline inner content -->
        </IssrDsclsrDdln>
        <DsclsrRspnDdln>
            <!-- DisclosureResponseDeadline inner content -->
        </DsclsrRspnDdln>
        <Issr>
            <!-- Issuer inner content -->
        </Issr>
        <SplmtryData>
            <!-- SupplementaryData inner content -->
        </SplmtryData>
    </ShrhldrsIdDsclsrReq>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_bt4YATkqEequeo9XmZe9AQ"
  nextVersions="_9U3hYfEkEeqRfth943bvEA"
  previousVersion="_BGiKcDnYEemL_ewJY9QP1g"
  name="ShareholdersIdentificationDisclosureRequestV02"
  definition="The ShareholdersIdentificationDisclosureRequest message is sent by an issuer or by a third party nominated by the issuer (such as an issuer's agent) to the first intermediaries in a custody chain or is sent by any intermediaries in a custody chain to the next intermediary down the chain of intermediaries (towards the investor side of the chain) in order to request the disclosure of shareholders identity and provides information on the receiving party to whom responses must be sent, on the financial instrument concerned and on the deadline to respond."
  registrationStatus="Registered"
  messageSet="_urpIICeJEeOCeO5e7islRQ"
  xmlTag="ShrhldrsIdDsclsrReq"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_bt4YCTkqEequeo9XmZe9AQ"
    nextVersions="_9U3hafEkEeqRfth943bvEA"
    previousVersion="_gqVyoDncEemL_ewJY9QP1g"
    name="IssuerDisclosureRequestIdentification"
    definition="Official and unique identification assigned to a shareholders identification disclosure request process by the issuer or third party nominated by it."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="IssrDsclsrReqId"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
  <messageBuildingBlock
    xmi:id="_bt4YCzkqEequeo9XmZe9AQ"
    nextVersions="_9U3ha_EkEeqRfth943bvEA"
    previousVersion="_oF6hcDneEemL_ewJY9QP1g"
    name="DisclosureRequestType"
    definition="Specifies the type of disclosure request."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="DsclsrReqTp"
    simpleType="_OQLLYEV3EemRx7jyevcLwg" />
  <messageBuildingBlock
    xmi:id="_bt4YDTkqEequeo9XmZe9AQ"
    nextVersions="_9U3hbfEkEeqRfth943bvEA"
    previousVersion="_s9Uf0DnfEemL_ewJY9QP1g"
    name="ForwardRequestIndicator"
    definition="Indicates whether the request is to be forwarded to and responded by the other intermediaries down the chain of intermediaries or not. &#xD;&#xA;If not to be forwarded, the indicator may not be present."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="FwdReqInd"
    simpleType="_YXbjA9p-Ed-ak6NoX_4Aeg_-2040117978" />
  <messageBuildingBlock
    xmi:id="_bt4YDzkqEequeo9XmZe9AQ"
    nextVersions="_9U3hb_EkEeqRfth943bvEA"
    previousVersion="_-1rLMHI3EemNhNOCZKENuw"
    name="ResponseThroughChainIndicator"
    definition="Indicates whether the shareholder identification disclosure response is to be sent back down the chain of intermediaries or directly to the identified response recipient. &#xD;&#xA;If &quot;true&quot; or &quot;1&quot;, the response must be sent back through the chain of intermediaries.&#xD;&#xA;If &quot;false&quot; or &quot;0&quot;, the response must be sent directly to the identified response recipient and the indicator may not be present."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="RspnThrghChainInd"
    simpleType="_YXbjA9p-Ed-ak6NoX_4Aeg_-2040117978" />
  <messageBuildingBlock
    xmi:id="_xPh7kTkqEequeo9XmZe9AQ"
    nextVersions="_9U3hcfEkEeqRfth943bvEA"
    name="ShareholderRightsDirectiveIndicator"
    definition="Indicates whether the request was initiated by the first intermediary in the custody chain in accordance with SRD II."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="ShrhldrRghtsDrctvInd"
    simpleType="_YXbjA9p-Ed-ak6NoX_4Aeg_-2040117978" />
  <messageBuildingBlock
    xmi:id="_bt4YETkqEequeo9XmZe9AQ"
    nextVersions="_9U3hc_EkEeqRfth943bvEA"
    previousVersion="_NkV1UDngEemL_ewJY9QP1g"
    name="FinancialInstrumentIdentification"
    definition="Identifies the financial instrument."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="FinInstrmId"
    complexType="_ho6XQYlXEeWPSZi0kAOXhg" />
  <messageBuildingBlock
    xmi:id="_bt4YEzkqEequeo9XmZe9AQ"
    nextVersions="_9U3hdfEkEeqRfth943bvEA"
    previousVersion="_cocRMDnhEemL_ewJY9QP1g"
    name="ShareholdersDisclosureRecordDate"
    definition="Date set by the issuer on which shareholders identity is determined based on the settled positions struck in the books of the Issuer CSD or any other first intermediary at the close of business day. "
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="ShrhldrsDsclsrRcrdDt"
    complexType="_5BWFwbQYEeeKRKrD60ELBQ" />
  <messageBuildingBlock
    xmi:id="_bt4YFTkqEequeo9XmZe9AQ"
    nextVersions="_9U3hd_EkEeqRfth943bvEA"
    previousVersion="_9R7SkDnmEemL_ewJY9QP1g"
    name="SharesQuantityThreshold"
    definition="Minimum number of shares held by a shareholder above which the identification must be disclosed."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="ShrsQtyThrshld"
    simpleType="_YXlUA9p-Ed-ak6NoX_4Aeg_1283031972" />
  <messageBuildingBlock
    xmi:id="_bt4YFzkqEequeo9XmZe9AQ"
    nextVersions="_9U3hefEkEeqRfth943bvEA"
    previousVersion="_4xTVIDnoEemL_ewJY9QP1g"
    name="RequestShareHeldDate"
    definition="Indicates whether the date from which the shares have been held must be communicated into the disclosure response and according to which method theses dates have to be communicated."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="ReqShrHeldDt"
    complexType="_iOMVYFSTEempisJfoIfvvQ" />
  <messageBuildingBlock
    xmi:id="_bt4YGTkqEequeo9XmZe9AQ"
    nextVersions="_9U3he_EkEeqRfth943bvEA"
    previousVersion="_E0QJoDnpEemL_ewJY9QP1g"
    name="DisclosureResponseRecipient"
    definition="Issuer or third party nominated by the issuer to whom the disclosure response shall be transmitted by the intermediary."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="DsclsrRspnRcpt"
    complexType="_AQe65TqWEemL_ewJY9QP1g" />
  <messageBuildingBlock
    xmi:id="_bt4YGzkqEequeo9XmZe9AQ"
    nextVersions="_9U3hffEkEeqRfth943bvEA"
    previousVersion="_InfZcDnjEemL_ewJY9QP1g"
    name="IssuerDisclosureDeadline"
    definition="Latest date/time set by the issuer or  a third party appointed by the issuer at which a response to the request to disclose shareholder identity shall be provided by each intermediary to the recipient to whom the response must be sent.  "
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="IssrDsclsrDdln"
    complexType="_5BWFwbQYEeeKRKrD60ELBQ" />
  <messageBuildingBlock
    xmi:id="_bt4YHTkqEequeo9XmZe9AQ"
    nextVersions="_9U3hf_EkEeqRfth943bvEA"
    previousVersion="_fD8ssHI8EemNhNOCZKENuw"
    name="DisclosureResponseDeadline"
    definition="Latest date/time set by an intermediary at which a response to the request to disclose shareholder identity shall be provided when sending the response though the chain of intermediaries.  "
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="DsclsrRspnDdln"
    complexType="_5BWFwbQYEeeKRKrD60ELBQ" />
  <messageBuildingBlock
    xmi:id="_bt4YHzkqEequeo9XmZe9AQ"
    nextVersions="_9U3hgfEkEeqRfth943bvEA"
    previousVersion="_0GY5YTqREemL_ewJY9QP1g"
    name="Issuer"
    definition="Issuer of the financial instrument."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="Issr"
    complexType="_CIhQ4bXLEeiTob_PrFFUxA" />
  <messageBuildingBlock
    xmi:id="_bt4YITkqEequeo9XmZe9AQ"
    nextVersions="_9U3hg_EkEeqRfth943bvEA"
    previousVersion="_-NwmYTtfEemIf7eyjCwinw"
    name="SupplementaryData"
    definition="Additional information that can not be captured in the structured fields and/or any other specific block."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SplmtryData"
    complexType="_Qn0zC9p-Ed-ak6NoX_4Aeg_468227563" />
  <messageDefinitionIdentifier
    businessArea="seev"
    messageFunctionality="045"
    flavour="001"
    version="02" />
</messageDefinition>

ISO Building Blocks

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