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.