auth.049.001.01
The FinancialInstrumentReportingMarket IdentificationCodeReport provides the valid market identification code (MIC) of venues that are valid and registered to operate as a trading venue. This message is generated by ESMA for distribution to national competent authorities.
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 %% FinancialInstrumentReportingMarketIdentificationCodeReportV01 recursion level 0 with max 0 FinancialInstrumentReportingMarketIdentificationCodeReportV01 *-- "1..1" MarketIdentification92 : MarketIdentification FinancialInstrumentReportingMarketIdentificationCodeReportV01 *-- "0..1" SupplementaryData1 : SupplementaryData
Now, we will zero-in one-by-one on each of these building blocks.
MarketIdentification building block
Report of the market and associate descriptive details. Details on a trading venue as per ISO 10383. For comparison, see the ISO20022 official specification
classDiagram direction tb %% MarketIdentification92 recursion level 0 with max 1 class MarketIdentification92{ Operating IsoMICIdentifier Segment IsoMICIdentifier Type MarketIdentification1Code Category TradingVenue1Code InstitutionName IsoMax450Text Acronym IsoMax35Text City IsoMax35Text AuthorityName IsoMax450Text WebSite IsoMax210Text Note IsoMax450Text Modification Modification1Code CreationDate IsoISODate StatusDate IsoISODate LastUpdatedDate IsoISODateTime } MarketIdentification92 *-- "1..1" CountryCodeAndName3 : Country MarketIdentification92 *-- "1..1" IPeriod4Choice : ValidityPeriod %% CountryCodeAndName3 recursion level 1 with max 1 class CountryCodeAndName3{ Code CountryCode Name IsoMax70Text } %% IPeriod4Choice recursion level 1 with max 1
MarketIdentification92 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
Operating | Operating MIC of the venue. | IsoMICIdentifier - Required 1..1 |
Segment | Segment MIC of the venue where it exists, otherwise the Operating MIC. | IsoMICIdentifier - Required 1..1 |
Type | Define the type of Market Identification Code that is being supplied. | MarketIdentification1Code - Required 1..1 |
Category | Provides the category of market the venue operates in. | TradingVenue1Code - Optional 0..1 |
InstitutionName | The name or description of the institution, market, or infrastructure. | IsoMax450Text - Required 1..1 |
Acronym | Known acronym of the institution, market, or infrastructure. | IsoMax35Text - Optional 0..1 |
City | City where the institution, market, or infrastructure operates. | IsoMax35Text - Optional 0..1 |
Country | Two character country code and country name as per ISO 3166. | CountryCodeAndName3 - Required 1..1 |
AuthorityName | The name of the national competent authority associated with the MIC. | IsoMax450Text - Optional 0..1 |
WebSite | Website URI of the institution, market, or infrastructure. | IsoMax210Text - Optional 0..1 |
Note | Details additional information about the market operator. | IsoMax450Text - Optional 0..1 |
Modification | Additional information to help users identify the exchange or understand a modification. | Modification1Code - Optional 0..1 |
CreationDate | First date of the MIC issuance. | IsoISODate - Optional 0..1 |
ValidityPeriod | Details the validity of the specific record. | IPeriod4Choice - Required 1..1 |
StatusDate | Date when the market identification code was last modified. | IsoISODate - Optional 0..1 |
LastUpdatedDate | Date when this record was last modified. | IsoISODateTime - Optional 0..1 |
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 FinancialInstrumentReportingMarketIdentificationCodeReportV01 implementation follows a specific implementaiton pattern. First of all, FinancialInstrumentReportingMarketIdentificationCodeReportV01 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, FinancialInstrumentReportingMarketIdentificationCodeReportV01Document implements IOuterDocument. Because FinancialInstrumentReportingMarketIdentificationCodeReportV01 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type FinancialInstrumentReportingMarketIdentificationCodeReportV01.
classDiagram class IOuterRecord FinancialInstrumentReportingMarketIdentificationCodeReportV01 --|> IOuterRecord : Implements FinancialInstrumentReportingMarketIdentificationCodeReportV01Document --|> IOuterDocument~FinancialInstrumentReportingMarketIdentificationCodeReportV01~ : Implements class IOuterDocument~FinancialInstrumentReportingMarketIdentificationCodeReportV01~ { FinancialInstrumentReportingMarketIdentificationCodeReportV01 Message }
Document wrapper for serialization
The only real purpose FinancialInstrumentReportingMarketIdentificationCodeReportV01Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:auth.049.001.01’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using FinancialInstrumentReportingMarketIdentificationCodeReportV01.ToDocument() method. The returned FinancialInstrumentReportingMarketIdentificationCodeReportV01Document value will serialize correctly according to ISO 20022 standards.
classDiagram FinancialInstrumentReportingMarketIdentificationCodeReportV01Document *-- FinancialInstrumentReportingMarketIdentificationCodeReportV01 : 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:auth.049.001.01">
<FinInstrmRptgMktIdCdRpt>
<MktId>
<!-- MarketIdentification inner content -->
</MktId>
<SplmtryData>
<!-- SupplementaryData inner content -->
</SplmtryData>
</FinInstrmRptgMktIdCdRpt>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_4LK8ZURNEee7JdgA9zPESA"
nextVersions="_ILZ_QS6mEeiLE6ldFr13hQ"
name="FinancialInstrumentReportingMarketIdentificationCodeReportV01"
definition="The FinancialInstrumentReportingMarket IdentificationCodeReport provides the valid market identification code (MIC) of venues that are valid and registered to operate as a trading venue. This message is generated by ESMA for distribution to national competent authorities."
registrationStatus="Registered"
messageSet="_urpIICeJEeOCeO5e7islRQ _Smpa0G47Eeiuqc7swom0-A"
xmlTag="FinInstrmRptgMktIdCdRpt"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<messageBuildingBlock
xmi:id="_4LK8Z0RNEee7JdgA9zPESA"
nextVersions="_ILZ_Qy6mEeiLE6ldFr13hQ"
name="MarketIdentification"
definition="Report of the market and associate descriptive details."
registrationStatus="Provisionally Registered"
minOccurs="1"
xmlTag="MktId"
complexType="_BP5vEX5sEeasY4u9QTizPQ" />
<messageBuildingBlock
xmi:id="_4LK8aURNEee7JdgA9zPESA"
nextVersions="_ILZ_RS6mEeiLE6ldFr13hQ"
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="auth"
messageFunctionality="049"
flavour="001"
version="01" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.