This is the main model that MFN delivers through its APIs. Our objective to be very clear about the following
How to uniquely identify the news item (news_id)
How to group different languages versions of the same press release (group_id)
Who the author is (author)
Who is being referenced in the press release (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 serves to define Who says something and about Whom. In most cases the 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 (author)
{
// 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.
The example should give you an idea of the structure, elements and classes found in a press release HTML.
Disclaimer and correction are alternativ.
Footers can be several or none at all.
Model (content)
{
// The title of the press release
"title": string,
// A url friendly version of the title
"slug": string,
// The content of the news, including preamble, footers and attachemtns
// formatted as html
"html": html string,
// RFC3339 time format, 2006-01-02T15:04:05Z07:00
"publish_date": date string,
//Preamble (intro) from MFN news items if added in editor.Not shown by default can be activated by us
"preamble": 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 spreadsheets a full list of attachments can be found further down.
If you would like to scale the images, you can use the following query param that is used in the example.
{
// 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
"tags": [string]
}
If content_type is empty the attachment is to be considered an external URL / link. For example a link to a webcast. content_type
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 Relations, this means that the target is investors and the stock market. While "pr", Public Relations, is meant for news that should have no real bearing on the stock market, and is only for the company website and email subscribers. Many times PR is shown on a separate or tab, labelled "News".
Model
{
// The type of news item, Investor Relations or Public Relation, e.g. ir or pr.
"type": type string,
// 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
JSON Example
{
"news_id": "a7566f9a-673a-4fa3-9cd7-1343b5cad0ee",
"group_id": "16849475-df12-4d95-82bb-0cbe44d9307f",
"url": "https://feed.mfn.se/v1/item/a7566f9a-673a-4fa3-9cd7-1343b5cad0ee.html",
"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",
"html": "<div class=\"mfn-preamble\">The number of votes in AB Volvo has cha...",
"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://feed.mfn.se/v1/item/a7566f9a-673a-4fa3-9cd7-1343b5cad0ee.html</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>
<html><![CDATA[<div class="mfn-preamble">The number of votes in AB Vo...]]></html>
<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>