seev.008.001.08
Scope The MeetingResultDissemination message is sent by an issuer, its agent or an intermediary to another intermediary, a party holding the right to vote, a registered security holder or to a beneficial holder to provide information on the voting results of a shareholders meeting. Usage The MeetingResultDissemination message is used to provide the vote results per resolution. It may also provide information on the level of participation. This message is also used to notify an update or amendment to a previously sent MeetingResultDissemination message. This message definition is intended for use with the Business Application Header (BAH).
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 %% MeetingResultDisseminationV08 recursion level 0 with max 0 class MeetingResultDisseminationV08{ MeetingResultDisseminationIdentification IsoMax35Text MeetingResultsDisseminationType NotificationType2Code PreviousMeetingResultsDisseminationIdentification IsoMax35Text } MeetingResultDisseminationV08 *-- "0..1" Pagination1 : Pagination MeetingResultDisseminationV08 *-- "1..1" MeetingReference10 : MeetingReference MeetingResultDisseminationV08 *-- "1..200" SecurityPosition19 : Security MeetingResultDisseminationV08 *-- "1..1000" Vote18 : VoteResult MeetingResultDisseminationV08 *-- "0..1" Participation5 : Participation MeetingResultDisseminationV08 *-- "0..1" CommunicationAddress11 : AdditionalInformation MeetingResultDisseminationV08 *-- "0..1" SupplementaryData1 : SupplementaryData
Now, we will zero-in one-by-one on each of these building blocks.
Pagination building block
Page number of the message and continuation indicator to indicate that the multi-part result dissemination message is to continue or that the message is the last page of the multi-part result dissemination. Number used to sequence pages when it is not possible for data to be conveyed in a single message and the data has to be split across several pages (messages). For comparison, see the ISO20022 official specification
classDiagram direction tb %% Pagination1 recursion level 0 with max 1 class Pagination1{ PageNumber IsoMax5NumericText LastPageIndicator IsoYesNoIndicator }
Pagination1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
PageNumber | Page number. | IsoMax5NumericText - Required 1..1 |
LastPageIndicator | Indicates the last page. | IsoYesNoIndicator - Required 1..1 |
MeetingResultDisseminationIdentification building block
Unique identification of the group of result dissemination messages when the result dissemination is split in multiple (paginated) messages. 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.
MeetingResultsDisseminationType building block
Type of dissemination report, that is, whether the report is new or a replacement. Specifies a type of notification. For comparison, see the ISO20022 official specification This message is declared as NotificationType2Code in the ISO specification. In our implementation, it is represented in source code as NotificationType2Code. Due to global using directives, it is treated as a System.String by the compiler and runtime.
PreviousMeetingResultsDisseminationIdentification building block
Identification of the previously sent meeting result dissemination message. 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.
MeetingReference building block
Set of elements to allow the unambiguous identification of a meeting. Identification of a meeting. For comparison, see the ISO20022 official specification
classDiagram direction tb %% MeetingReference10 recursion level 0 with max 1 class MeetingReference10{ MeetingIdentification IsoMax35Text IssuerMeetingIdentification IsoMax35Text MeetingDateAndTime IsoISODateTime Type MeetingType4Code } MeetingReference10 *-- "0..1" IMeetingTypeClassification2Choice : Classification MeetingReference10 *-- "0..5" PostalAddress1 : Location MeetingReference10 *-- "0..1" IPartyIdentification129Choice : Issuer %% IMeetingTypeClassification2Choice recursion level 1 with max 1 %% 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 } %% IPartyIdentification129Choice recursion level 1 with max 1
MeetingReference10 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
MeetingIdentification | Identification assigned to the general meeting by the party that provides the meeting notification. It must be unique to the party providing the notification. | IsoMax35Text - Required 1..1 |
IssuerMeetingIdentification | Identification assigned to the meeting by the issuer. It must be unique for the issuer. | IsoMax35Text - Optional 0..1 |
MeetingDateAndTime | Date and time at which the meeting will take place. | IsoISODateTime - Required 1..1 |
Type | Type of meeting for which instructions are sent. | MeetingType4Code - Required 1..1 |
Classification | Classification type of the meeting. | IMeetingTypeClassification2Choice - Optional 0..1 |
Location | Place of the company meeting for the scheduled meeting date. | PostalAddress1 - Collection 0..5 |
Issuer | Institution that is the issuer of the security to which the meeting applies. | IPartyIdentification129Choice - Optional 0..1 |
Security building block
Securities for which the meeting is organised. Identification of a security and its balance. For comparison, see the ISO20022 official specification
classDiagram direction tb %% SecurityPosition19 recursion level 0 with max 1 SecurityPosition19 *-- "1..1" SecurityIdentification19 : FinancialInstrumentIdentification SecurityPosition19 *-- "0..1000" EligiblePosition16 : Position %% SecurityIdentification19 recursion level 1 with max 1 class SecurityIdentification19{ ISIN IsoISINOct2015Identifier Description IsoMax140Text } SecurityIdentification19 *-- "0..0" OtherIdentification1 : OtherIdentification %% EligiblePosition16 recursion level 1 with max 1 class EligiblePosition16{ AccountIdentification IsoMax35Text BlockChainAddressOrWallet IsoMax140Text } EligiblePosition16 *-- "0..1" IPartyIdentification231Choice : AccountOwner EligiblePosition16 *-- "0..15" HoldingBalance11 : HoldingBalance EligiblePosition16 *-- "0..250" IPartyIdentification246Choice : RightsHolder
SecurityPosition19 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
FinancialInstrumentIdentification | Identification of the security, as assigned under a formal or proprietary identification scheme. | SecurityIdentification19 - Required 1..1 |
Position | Amount of securities that are eligible for the vote. | EligiblePosition16 - Collection 0..1000 |
VoteResult building block
Results per resolution. Vote results for one resolution. For comparison, see the ISO20022 official specification
classDiagram direction tb %% Vote18 recursion level 0 with max 1 class Vote18{ IssuerLabel IsoMax35Text ResolutionStatus ResolutionStatus2Code SubStatus ResolutionSubStatus1Code } Vote18 *-- "0..0" ItemDescription1 : Description Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : For Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : Against Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : Abstain Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : Withhold Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : WithManagement Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : AgainstManagement Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : Discretionary Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : OneYear Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : TwoYears Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : ThreeYears Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : NoAction Vote18 *-- "0..1" IFinancialInstrumentQuantity18Choice : Blank Vote18 *-- "0..4" ProprietaryVote2 : Proprietary %% ItemDescription1 recursion level 1 with max 1 class ItemDescription1{ Language ISO2ALanguageCode Title IsoMax350Text Description IsoMax1025Text } %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1 %% ProprietaryVote2 recursion level 1 with max 1 ProprietaryVote2 *-- "1..1" GenericIdentification30 : Code ProprietaryVote2 *-- "1..1" IFinancialInstrumentQuantity18Choice : Quantity
Vote18 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
IssuerLabel | Number of the resolution as specified by the issuer or its agent. | IsoMax35Text - Required 1..1 |
Description | Language, title and textual description of an agenda resolution. | ItemDescription1 - Unknown 0..0 |
ResolutionStatus | Acceptance status of the resolution. | ResolutionStatus2Code - Required 1..1 |
SubStatus | Specifies whether the resolution is a new or an amended resolution. | ResolutionSubStatus1Code - Optional 0..1 |
For | Number of votes in favour of one resolution. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Against | Number of votes against one resolution. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Abstain | Number of abstention votes. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Withhold | Total votes withheld, for example, in the case where a shareholder wishes not to endorse the election of a board member. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
WithManagement | Number of votes in line with the votes of the management. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
AgainstManagement | Number of votes against the voting recommendation of the management. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Discretionary | Number of votes for which the decision is left to the party that will exercise the voting right. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
OneYear | Number of votes in favour for one year for “say on pay” type of resolution. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
TwoYears | Number of votes in favour of two years for “say on pay” type of resolution. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
ThreeYears | Number of votes in favour of three years for “say on pay” type of resolution. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
NoAction | Number of votes for which no action has been taken. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Blank | Vote is cast as empty but the vote is counted. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
Proprietary | Other type of vote expressed as a proprietary code. | ProprietaryVote2 - Collection 0..4 |
Participation building block
Information about the participation to the voting process. Provide information on the level of participation to a shareholder meeting. For comparison, see the ISO20022 official specification
classDiagram direction tb %% Participation5 recursion level 0 with max 1 class Participation5{ TotalNumberOfVotingRights IsoNumber PercentageOfVotingRights IsoPercentageRate CalculationDate IsoISODate } Participation5 *-- "0..1" IFinancialInstrumentQuantity18Choice : TotalNumberOfSecuritiesOutstanding %% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1
Participation5 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
TotalNumberOfVotingRights | Number of rights admitted to the vote. | IsoNumber - Optional 0..1 |
PercentageOfVotingRights | Percentage of rights participating to the vote versus total voting rights. | IsoPercentageRate - Optional 0..1 |
TotalNumberOfSecuritiesOutstanding | Number of securities admitted to the vote, expressed as a number of units or a face amount. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
CalculationDate | Date of calculation of the total number of outstanding securities. | IsoISODate - Optional 0..1 |
AdditionalInformation building block
Information on where additional information can be received. Communication device number or electronic address used for communication. For comparison, see the ISO20022 official specification
classDiagram direction tb %% CommunicationAddress11 recursion level 0 with max 1 class CommunicationAddress11{ EmailAddress IsoMax256Text URLAddress IsoMax2048Text }
CommunicationAddress11 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
EmailAddress | Address for electronic mail (e-mail). | IsoMax256Text - Optional 0..1 |
URLAddress | Address for the Universal Resource Locator (URL), for example used over the www (HTTP) service. | IsoMax2048Text - Optional 0..1 |
SupplementaryData building block
Additional information that cannot 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 MeetingResultDisseminationV08 implementation follows a specific implementaiton pattern. First of all, MeetingResultDisseminationV08 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, MeetingResultDisseminationV08Document implements IOuterDocument. Because MeetingResultDisseminationV08 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type MeetingResultDisseminationV08.
classDiagram class IOuterRecord MeetingResultDisseminationV08 --|> IOuterRecord : Implements MeetingResultDisseminationV08Document --|> IOuterDocument~MeetingResultDisseminationV08~ : Implements class IOuterDocument~MeetingResultDisseminationV08~ { MeetingResultDisseminationV08 Message }
Document wrapper for serialization
The only real purpose MeetingResultDisseminationV08Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:seev.008.001.08’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using MeetingResultDisseminationV08.ToDocument() method. The returned MeetingResultDisseminationV08Document value will serialize correctly according to ISO 20022 standards.
classDiagram MeetingResultDisseminationV08Document *-- MeetingResultDisseminationV08 : 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.008.001.08">
<MtgRsltDssmntn>
<Pgntn>
<!-- Pagination inner content -->
</Pgntn>
<MtgRsltDssmntnId>
<!-- MeetingResultDisseminationIdentification inner content -->
</MtgRsltDssmntnId>
<MtgRsltsDssmntnTp>
<!-- MeetingResultsDisseminationType inner content -->
</MtgRsltsDssmntnTp>
<PrvsMtgRsltsDssmntnId>
<!-- PreviousMeetingResultsDisseminationIdentification inner content -->
</PrvsMtgRsltsDssmntnId>
<MtgRef>
<!-- MeetingReference inner content -->
</MtgRef>
<Scty>
<!-- Security inner content -->
</Scty>
<VoteRslt>
<!-- VoteResult inner content -->
</VoteRslt>
<Prtcptn>
<!-- Participation inner content -->
</Prtcptn>
<AddtlInf>
<!-- AdditionalInformation inner content -->
</AddtlInf>
<SplmtryData>
<!-- SupplementaryData inner content -->
</SplmtryData>
</MtgRsltDssmntn>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_nIzH7TQ7Ee22Z83HpR5E8w"
previousVersion="_sV77T_EkEeqRfth943bvEA"
name="MeetingResultDisseminationV08"
definition="Scope
The MeetingResultDissemination message is sent by an issuer, its agent or an intermediary to another intermediary, a party holding the right to vote, a registered security holder or to a beneficial holder to provide information on the voting results of a shareholders meeting.
Usage
The MeetingResultDissemination message is used to provide the vote results per resolution. It may also provide information on the level of participation.
This message is also used to notify an update or amendment to a previously sent MeetingResultDissemination message.
This message definition is intended for use with the Business Application Header (BAH)."
registrationStatus="Registered"
messageSet="_aYSVkfZkEemdMY5FVzFKKA"
xmlTag="MtgRsltDssmntn"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<constraint
xmi:id="_nIzH7zQ7Ee22Z83HpR5E8w"
previousVersion="_sV77UfEkEeqRfth943bvEA"
name="PreviousMeetingResultsDisseminationIdentificationRule"
definition="If MeetingResultsDisseminationType is REPL (Replacement), then PreviousMeetingResultsDisseminationIdentification must be present."
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>/PreviousMeetingResultsDisseminationIdentification</leftOperand></BooleanRule></mustBe><onCondition><connector>AND</connector><BooleanRule xsi:type="EqualToValue"><leftOperand>/MeetingResultsDisseminationType</leftOperand><rightOperand>Replacement</rightOperand></BooleanRule></onCondition></ComplexRule></RuleDefinition>" />
<messageBuildingBlock
xmi:id="_irQrYTUHEe2tRf29bleifQ"
name="Pagination"
definition="Page number of the message and continuation indicator to indicate that the multi-part result dissemination message is to continue or that the message is the last page of the multi-part result dissemination."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="Pgntn"
complexType="_xhMHQa6XEees_ufOy2ci-g" />
<messageBuildingBlock
xmi:id="_qwfGEDUHEe2tRf29bleifQ"
name="MeetingResultDisseminationIdentification"
definition="Unique identification of the group of result dissemination messages when the result dissemination is split in multiple (paginated) messages."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="MtgRsltDssmntnId"
simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
<messageBuildingBlock
xmi:id="_nIzH9zQ7Ee22Z83HpR5E8w"
previousVersion="_sV77WfEkEeqRfth943bvEA"
name="MeetingResultsDisseminationType"
definition="Type of dissemination report, that is, whether the report is new or a replacement."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="MtgRsltsDssmntnTp"
simpleType="_hl_zUK7wEemG7MmivSuE5g">
<semanticMarkup
xmi:id="_nIzH-TQ7Ee22Z83HpR5E8w"
type="Synonym">
<elements
xmi:id="_nIzH-zQ7Ee22Z83HpR5E8w"
name="context"
value="ISO 15022" />
<elements
xmi:id="_nIzH_TQ7Ee22Z83HpR5E8w"
name="value"
value=":23G:" />
</semanticMarkup>
</messageBuildingBlock>
<messageBuildingBlock
xmi:id="_nIzH_zQ7Ee22Z83HpR5E8w"
previousVersion="_sV77YfEkEeqRfth943bvEA"
name="PreviousMeetingResultsDisseminationIdentification"
definition="Identification of the previously sent meeting result dissemination message."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="PrvsMtgRsltsDssmntnId"
simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
<messageBuildingBlock
xmi:id="_nIzIATQ7Ee22Z83HpR5E8w"
previousVersion="_sV77Y_EkEeqRfth943bvEA"
name="MeetingReference"
definition="Set of elements to allow the unambiguous identification of a meeting."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="MtgRef"
complexType="_UP25gfKxEeqRfth943bvEA" />
<messageBuildingBlock
xmi:id="_nIzIAzQ7Ee22Z83HpR5E8w"
previousVersion="_sV77ZfEkEeqRfth943bvEA"
name="Security"
definition="Securities for which the meeting is organised."
registrationStatus="Provisionally Registered"
maxOccurs="200"
minOccurs="1"
xmlTag="Scty"
complexType="_olbwnzRTEe2id-MjcNoBdw" />
<messageBuildingBlock
xmi:id="_nIzIBTQ7Ee22Z83HpR5E8w"
previousVersion="_sV77Z_EkEeqRfth943bvEA"
name="VoteResult"
definition="Results per resolution."
registrationStatus="Provisionally Registered"
maxOccurs="1000"
minOccurs="1"
xmlTag="VoteRslt"
complexType="_y9dHgTUHEe2tRf29bleifQ" />
<messageBuildingBlock
xmi:id="_nIzIBzQ7Ee22Z83HpR5E8w"
previousVersion="_sV77afEkEeqRfth943bvEA"
name="Participation"
definition="Information about the participation to the voting process."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="Prtcptn"
complexType="_BMUVgbqREemCAOifqHrKJw" />
<messageBuildingBlock
xmi:id="_nIzICTQ7Ee22Z83HpR5E8w"
previousVersion="_sV77a_EkEeqRfth943bvEA"
name="AdditionalInformation"
definition="Information on where additional information can be received."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="AddtlInf"
complexType="_L13eAa4jEemG7MmivSuE5g" />
<messageBuildingBlock
xmi:id="_nIzICzQ7Ee22Z83HpR5E8w"
previousVersion="_sV77bfEkEeqRfth943bvEA"
name="SupplementaryData"
definition="Additional information that cannot 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="008"
flavour="001"
version="08" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.