This example is available as DB_to_XBRL.mfd in the ...\MapForceExamples folder, and uses various filters and functions to extract the database data.
The taxonomy nanonull.xsd is derived from US:GAAP. The mapping creates an XBRL output instance which contains all contexts, concepts, units and footnotes for one Disclosure and three Statements.
The report "091 - Disclosure - Segment Revenue and Operating Income" shows how MapForce can map dimension values. The hypercube "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTable" contains an explicit dimension "us-gaap:StatementOperatingActivitiesSegmentAxis".
Its domain has been extended in the taxonomy by the three dimension values "nanonull:USA", "nanonull:Europe" and "nanonull:Asia" The mapping shows how a value-map maps the values of the database column "Name" of the table "Region" to the required dimension values of type QName.
The report "106 - Statement - Nanonull and Consolidated Statement of Cash Flows" illustrates how MapForce can be used to write facts into the output instance which relates to both duration and instant periods.
As the mapping shows, proper reporting of facts such as "Cash and cash equivalents at beginning (end) of period" can be achieved by duplicating the period item in the hierarchy structure.
The mapping defines two units in the output instance, "USD" and "perShareItemType". The xbrli:unit element must be duplicated to do this. The related measure elements are created using the functions "xbrl-measure-currency" and "xbrl-measure-shares" from the XBRL library.
The facts in the database tables have been split up depending on whether they relate to an instant or duration period.
|•||The table FactsForInstantPeriod is a flat table of values.|
|•||The table FactsForDuration is hierarchical and each fact it contains, relates to a specific PeriodID as well as a RegionID.|
The Period table uses FromDate and ToDate fields to define the start and end period dates; while the Region table relates each of the facts to a specific region, i.e. Asia, Europe or USA.
Mandatory XBRL items needed in a XBRL instance file:
|•||unitRef and either decimals or precision in monetary concepts|
|•||xbrli:identifier and scheme of the identifier dimension|
|•||xbrli:period and either xbrli:instant or xbrli:startDate/xbrli:endDate elements|
|•||xbrli:id and xbrli:measure in the xbrli:unit element|
See also Microsoft Excel to XBRL.
© 2019 Altova GmbH