This is the main model that MFN delivers through its APIs. Our objective to be very clear about the following
How to identify the news item (news_id)
How to identify versions of the news item (group_id)
Who is the author (author)
Who is being referenced in the pressrelease (subjects)
What it is regarding (properties)
Model
{// A id that uniquely identifies this new item"news_id": UUID string,// A id that uniquely identifies a set of news item with different languages"group_id": UUID string,// A url that links to a public page where the item can be viewed"url": URL string,// A object describing who is the author of the news item"author": Entity ,// A array of objects describing who the news item relates to// This field discribe how is subject in the press release,// NOT the subject of the item"subjects": [Entity],// A object containing properties relating to the news item"properties": Properties,// A object containing the content of the news item"content": NewsContent,// Should always be mfn and describes the source of the press release "source": string,// A object where new types of metadata might be added at futer date"extensions": Extension }
Entity
The entity describes a entity that in some way is referenceable. This includes, but not limited to companies. It can also be other types of entities such as funds. Entities is used for referencing both the author and the subjects of the news item. This serve to define Who says something and about Whom. In most cases Author entity and Subjects entity will be the same in the case of regular press releases
Important to note regarding Entities is that the number of fields might grow to allow for more precise identification of the entity, therefor it is important to to for your model allow for this. In statically typed languages such as Java or C# it is a good idea to have a “AnySetter” for your model, that consumes all other parameters that you have not specified.
Model
{// A MFN reference to the entity"entity_id": UUID string,// The name that MFN uses for the entity"name": string,// A url friendly version of the entity name"slug": string,// An array containing all historical slugs of the entity"slugs": [string],// A url to a image illustrating the brands of the entity "brand_image_url": URL string,// Isin referring to stocks associated with entity"isins": [strings],// References to the entity by LEI, https://www.gleif.org/"leis": [strings],// Reference to entity in a country, e.g. SE:556920-1998"local_ref": [strings],// Publicly traded entities will have tickers attached to them // they follow the pattern of primary_market_mic:symbol, eg XSTO:VOLV B"tickers": [strings] }
NewsContent
The news content contains the content of the news item as well as attachments, such as pdfs.
Model
{// The title of the press release"title": string,// A url friendly version of the title"slug": string,// The first paragraph of the press release"preamble": string,// The content of the news, including preamble, footers and attachemtns// formatted as html "html": html string,// The content of the news, including preamble, footers and attachemtns// formatted as monospace text "text": string,// RFC3339 time format, 2006-01-02T15:04:05Z07:00"publish_date": date string,// Attachments that augments the news item."attachments": [Attachment] }
Attachment
Attachments allow for files of different types to be attached to a News Item. This can include pdf, images or just links
Model
{// Display name for file"file_title": string,// MIME type for file, e.g. application/pdf"content_type": mime string // The url where the file can be retrieved."url": url string // Attachment tags// ':generated' is an attachment generated by MFN (usually the item in PDF format)// ':primary' is an attachment containing the news item content// 'img:article' hints that the image should be displayed as ingress to new item// 'img:footer' hints that the image should be displayed after all text// 'img:float:right' hints that the image should float right // 'img:float:left' hints that the image should float right "tags": [string] }
Properties
The properties object contain metadata about the news item that describes it. One of the more important aspects of this object is the type property which relates for whom the news item is targeted. If it is set to IR, Investor Relation, this means that the target is investors and the stock market. While pr, Public Relation, is meant for news desks and should have no real bearing on the stock market. By default all APIs only relay IR types
Model
{// The type of news item, Investor Relations or Public Relation, e.g. ir or pr."type": typestring, // The language of newsitem.content, ISO-639, e.g. sv or en"lang": lang string,// Metadata regarding the news item, both MFN specific and Author specific"tags": [Tag string],}
Tags
Tags is an array of strings, each string defines one tag. A tag can be viewed as a boolean property being true if present. A tag is divided into at least two parts, a namespace and the content, e.g. sub:report:interim where sub is the namespace. Tag can be added to the different namespaces over time, but they should always appear in this documentation
Tags describe in general the taxonomy and classification of press releases. This is done primary through the root and sub namespace listed below. The tags are hierarchical by nature and the entire hierarchy should be present, mening that id sub:report:interim:q4 appears in a tag, sub:report:interim and sub:report also appears
Namespaces
There are a few namespaces and tags that follow with each.
Root namespace
This namespace is important in some contexts and will always be the first thing in the array. It is defined by metadata that must be present.
Tags
:regulatory indicates that news item is required by some regulation
:regulatory:marindicates that news item is required by EU Market Abuse Regulation
:regulatory:vpmlindicates that news item is required by Swedish "Lagen om värdepappersmarknaden" Regulation
:regulatory:lhfiindicates that news item is required by Swedish "Lagen om handel med finansiella instrument" Regulation
:regulatory:listingindicates that news item is Stock Exchange Listing Requirement
:correction A correction of a previous sent news item
:correction:{news_id} A correction with a reference to the news id of which it corrects
Subject namespace, prefix sub:
This namespace contain metadata that helps to categorize the news item. This namespace is defined by MFN and addition .
sub:reportindicates that news is report of some kind
sub:report:annualindicates that news is a Annual report
sub:report:interimindicates that news is a Interim report
sub:report:interim:q1indicates that news is a First Quarter Interim report
sub:report:interim:q2indicates that news is a Second Quarter Interim report, a.k.a. Semi Annual
sub:report:interim:q3indicates that news is a Third Quarter Interim report
sub:report:interim:q4indicates that news is a Forth Quarter Interim report, a.k.a. Year End
sub:caindicates that news item is related to a Corporate Action
sub:ca:sharesindicates that news item is related a change in number of shares or votes
sub:ca:shares:issuanceindicates that news item informs about stock issuance
sub:ca:shares:repurchaseindicates that news item informs repurchase of stocks
sub:ca:shares:rightsindicates that news item informs about changes to stock rights or classes
sub:ca:maindicates that news item is related to Mergers & Acquisitions
sub:ca:ipoindicates that news item is related to a ipo
sub:ca:prospectusindicates that news item is related to a prospectus
sub:ca:otherindicates that news item is related to other Corporate Action
sub:ciindicates that news item is related to Corporate Information
sub:ci:gmindicates that news item is related to a general meeting
sub:ci:gm:noticeindicates that news item is a Notice to a General Meeting
sub:ci:gm:infoindicates that news item is a Report from a General Meeting
sub:ci:insiderindicates that news item is a insider transaction
sub:ci:shareholder-announcementindicates that news item is a shareholder announcement
sub:ci:calendarindicates that news item is a financial calendar
sub:ci:presentationindicates that news item is related to a presentation
sub:ci:nominationindicates that news item is related to Nomination Committee
sub:ci:earningsindicates that news item informs about a earnings report
sub:ci:salesindicates that news item informs about some sales
sub:ci:sales:orderindicates that news item informs about a incoming sales order
sub:ci:staffindicates that news item is related to staff changes
sub:ci:staff:xxoindicates that news item is related to executive staff changes
sub:ci:otherindicates that news item is related to other Corporate Information
Custom namespace, prefix cus:
Author of a news item can add their own tags in order to categorize their content, but should in most cases probably be ignored by third parties. example might be cus:fintech
JSON Example
{"news_id": "a7566f9a-673a-4fa3-9cd7-1343b5cad0ee","group_id": "16849475-df12-4d95-82bb-0cbe44d9307f","url": "https://mfn.se/a/volvo/new-number-of-votes-in-ab-volvo-a7566f9a","subjects": [ {"entity_id":"26c373c6-5688-4bfa-bb55-b9c62249d4ef","slug":"volvo","slugs": ["volvo" ],"name":"Volvo","brand_image_url":"/assets/img/test/volvo.jpg","isins": ["SE0000115446","SE0000115420" ],"leis": ["549300HGV012CNC8JD22" ],"local_refs": ["SE:556012-5790" ],"tickers": ["XSTO:VOLV B","XSTO:VOLV A" ] } ],"content": {"title":"New number of votes in AB Volvo","slug":"new-number-of-votes-in-ab-volvo-a7566f9a","publish_date":"2018-12-28T12:00:00Z","preamble":"The number of votes in AB Volvo has changed due to the conversi...","html":"<div class=\"mfn-preamble\">The number of votes in AB Volvo has cha...","text":"The number of votes in AB Volvo has changed due to the conversion o...","attachments": [ {"file_title":"New number of votes in AB Volvo","content_type":"application/pdf","url":"https://mfn.se/xassets/c59bd97e-22e8-414b-a7dd-c3b4cc767b62","tags":null } ] },"author": {"entity_id":"26c373c6-5688-4bfa-bb55-b9c62249d4ef","slug":"volvo","slugs": ["volvo" ],"name":"Volvo","brand_image_url":"/assets/img/test/volvo.jpg","isins": ["SE0000115446","SE0000115420" ],"leis": ["549300HGV012CNC8JD22" ],"local_refs": ["SE:556012-5790" ],"tickers": ["XSTO:VOLV B","XSTO:VOLV A" ] },"properties": {"lang":"en","type":"ir","tags": [":regulatory",":regulatory:lhfi","sub:ci","sub:ci:shares" ] },"source": "mfn"}
XML Example
<?xml version="1.0" encoding="UTF-8"?>
<NewsItem>
<newsId>a7566f9a-673a-4fa3-9cd7-1343b5cad0ee</newsId>
<groupId>16849475-df12-4d95-82bb-0cbe44d9307f</groupId>
<url>https://mfn.se/a/volvo/new-number-of-votes-in-ab-volvo-a7566f9a</url>
<subjects>
<subject>
<entityId>26c373c6-5688-4bfa-bb55-b9c62249d4ef</entityId>
<slug>volvo</slug>
<slugs>
<slug>volvo</slug>
</slugs>
<name>Volvo</name>
<brandImageUrl>https://mfn.se/assets/img/test/volvo.jpg</brandImageUrl>
<isins>
<isin>SE0000115446</isin>
<isin>SE0000115420</isin>
</isins>
<leis>
<lei>549300HGV012CNC8JD22</lei>
</leis>
<localRefs>
<localRef>SE:556012-5790</localRef>
</localRefs>
<tickers>
<ticker>XSTO:VOLV B</ticker>
<ticker>XSTO:VOLV A</ticker>
</tickers>
</subject>
</subjects>
<content>
<title>New number of votes in AB Volvo</title>
<slug>new-number-of-votes-in-ab-volvo-a7566f9a</slug>
<publishDate>2018-12-28T12:00:00Z</publishDate>
<preamble>The number of votes in AB Volvo has changed due to the co... </preamble>
<html><![CDATA[<div class="mfn-preamble">The number of votes in AB Vo...]]></html>
<text><![CDATA[The number of votes in AB Volvo has changed due to the...]]></text>
<attachments>
<attachment>
<fileTitle>New number of votes in AB Volvo</fileTitle>
<contentType>application/pdf</contentType>
<url>https://mfn.se/xassets/c59bd97e-22e8-414b-a7dd-c3b4cc767b62</url>
<tags />
</attachment>
</attachments>
</content>
<author>
<entityId>26c373c6-5688-4bfa-bb55-b9c62249d4ef</entityId>
<slug>volvo</slug>
<slugs>
<slug>volvo</slug>
</slugs>
<name>Volvo</name>
<brandImageUrl>https://mfn.se/assets/img/test/volvo.jpg</brandImageUrl>
<isins>
<isin>SE0000115446</isin>
<isin>SE0000115420</isin>
</isins>
<leis>
<lei>549300HGV012CNC8JD22</lei>
</leis>
<localRefs>
<localRef>SE:556012-5790</localRef>
</localRefs>
<tickers>
<ticker>XSTO:VOLV B</ticker>
<ticker>XSTO:VOLV A</ticker>
</tickers>
</author>
<properties>
<lang>en</lang>
<tags>
<tag>:regulatory</tag>
<tag>:regulatory:lhfi</tag>
<tag>sub:ci</tag>
<tag>sub:ci:shares</tag>
</tags>
<type>ir</type>
</properties>
<source>mfn</source>
</NewsItem>