Open Information Model 1.0

Candidate Recommendation 02 May 2017

Copyright © XBRL International Inc., All Rights Reserved.

This version:
<http://www.xbrl.org/Specification/oim/CR-2017-05-02/oim-CR-2017-05-02.html>
Editors:
Paul Warren, XBRL International Inc. <pdw@xbrl.org>
Herm Fischer, Mark V Systems Limited <fischer@markv.com>
Mark Goodhand, CoreFiling <mrg@corefiling.com>
Contributor:
Daniel Dracott, CoreFiling <djd@corefiling.com>

Status

Circulation of this Candidate Recommendation is unrestricted. This document is normative. Other documents may supersede this document. Recipients are invited to submit comments to oim@xbrl.org, and to submit notification of any relevant patent rights of which they are aware and provide supporting documentation.

Abstract

This document describes a syntax-independent model for business reports that conform to the XBRL v2.1 and XBRL Dimensions v1.0 specifications. The model is intended to enable easy and lossless transformation of a well defined set of semantics between a variety of different syntactic representations, including the XML syntax defined in the above specifications.

Comments

1 Paul Warren:The decision to include or exclude this feature is a topic for discussion within the Working Group, and the approach taken may change in future releases of this specification. It is recognised that custom attributes are in use in some implementations, but the OIM attempts to balance the need to support XBRL v2.1 features that are in widespread use, with a desire to provide a simplified model that reduces the number of essentially equivalent technical syntaxes that are available for representing a given requirement. The Working Group is actively seeking feedback on this point.
2 Paul Warren:It should be noted that the model does not capture the resource role for footnote resources. The working group is actively seeking feedback on this point. It is currently felt that the combination of extended link role ("footnote group") and arcrole ("footnote type") provide adequate scope for customisation and classification of footnotes, and that an additional property is unnecessarily complex and confusing outside of the XML syntax (and thus in the absence of XLink).

Table of Contents

1 Introduction
1.1 Scope
1.2 Terminology
1.3 Namespaces and namespace prefixes
2 Assumptions
2.1 Constraints
2.1.1 Non-dimensional segment/scenario content
2.1.2 Mixing segment and scenario elements
2.1.3 Complex-typed dimensions
2.1.4 Unsupported concept data types
2.1.5 Unsupported dimension data types
2.1.6 Use of non-standard footnote resource roles
2.1.7 Use of zero-precision numeric facts
2.2 Other unsupported features
3 XBRL Report Model (non-GL)
3.1 Aspects
3.2 Footnotes

Appendices

A References
B Intellectual property status (non-normative)
C Document History (non-normative)
D Errata Corrections incorporated in this document

Table

1 Namespaces and namespace prefixes

Definitions

Aspect
Concept Core Aspect (Component)
Core Aspect
DTS Reference (Component)
Entity Core Aspect (Component)
Fact (Abstract Component)
Fact Footnote (Component)
Footnote
Footnote (Abstract Component)
Language Core Aspect (Component)
Numeric simple fact
Period Core Aspect (Component)
Report (Component)
Simple Fact (Component)
Supported specification
Taxonomy-defined Aspect (Component)
Text Footnote (Component)
Text simple fact
Tuple Fact (Component)
Tuple Order Aspect (Component)
Tuple Parent Aspect (Component)
Unit Core Aspect (Component)


1 Introduction

The XBRL v2.1 [XBRL 2.1] and XBRL Dimensions v1.0 [DIMENSIONS] specifications define an XML-based syntax for business reports, and accompanying meta-data definitions known as taxonomies. It is becoming increasingly appealing to work with XBRL data in a variety of different format such as JSON, relational and other databases and CSVs. Such use is hampered by the lack of a clear definition of the information that may be considered significant in an XBRL report, as distinct from that which is syntactic detail. This leads to inconsistency in the data that is understood and how it is represented, and often to the exposure of unnecessary syntactic detail to end users.

This specification defines a syntax-independent model for an XBRL report, which allows different syntactic formats to be used to represent the same data. The model captures a subset of the information that can be represented in the XML syntax defined by XBRL v2.1, in order to provide a simple and portable model.

1.1 Scope

This document provides a model for an XBRL report (or XBRL instance) that conforms to the set of supported specifications. It does not attempt to model the meta-data information defined in an XBRL taxonomy. The Working Group recognises the importance of taxonomy information when working with XBRL data, but believes that there is considerable value in a model that is restricted in scope to XBRL report on its own, and thus has chosen to address this requirement first.

Taxonomy information is expected to form the basis of future specifications that expose such information either in a separate model, or as layers of additional information that augment the model defined in this specification.

The supported specifications are:

1.2 Terminology

The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, in this specification, are to be interpreted as described in [IETF RFC 2119].

The keywords concept, context, DTS, fact footnote resource and XBRL instance are to be interpreted as described in the XBRL specification [XBRL 2.1].

The keywords dimension, hypercube, typed dimension, explicit dimension and dimension default are to be interpreted as described in the XBRL Dimensions specification [DIMENSIONS].

The keywords time interval, local time and zone designator are to be interpreted as defined in ISO 8601 [ISO8601].

1.3 Namespaces and namespace prefixes

Namespace prefixes [XML Names] will be used for elements and attributes in the form ns:name where ns is the namespace prefix and name is the local name. Throughout this specification, the mappings from namespace prefixes to actual namespaces are consistent with Table 1.

The prefix column in Table 1 is non normative. The namespace URI column is normative.

Table 1: Namespaces and namespace prefixes
Prefix Namespace URI
xbrl http://www.xbrl.org/CR/2017-05-02/oim
xsd http://www.w3.org/2001/XMLSchema

2 Assumptions

In order to achieve a simplified, logical view of XBRL data, the OIM only supports a subset of the functionality available in the XBRL v2.1 and related specifications.

2.1 Constraints

The OIM only supports documents that conform to assumptions listed below. OIM Processors MUST raise an error when consuming a document if any of these assumptions are not satisfied.

2.1.1 Non-dimensional segment/scenario content

The <xbrli:segment> and <xbrli:scenario> elements MUST only contain <xbrldi:explicitMember> and <xbrldi:typedMember> elements.

2.1.2 Mixing segment and scenario elements

All hypercubes within the DTS of a report MUST be defined for use on the same container (either "segment" or "scenario"). The container that is not used for dimensions MUST be empty in all contexts in the XBRL instance.

2.1.3 Complex-typed dimensions

The XBRL instance MUST NOT make use of any typed dimensions that have a complex type.

2.1.4 Unsupported concept data types

The XBRL instance MUST NOT make use of any concepts with a type of, or derived from, the following data types:

  • xbrli:fractionItemType
  • xbrli:doubleItemType
  • xbrli:floatItemType

2.1.5 Unsupported dimension data types

The XBRL instance MUST NOT make use of any typed dimensions with a type of, or derived from, the following data types:

  • xsd:double
  • xsd:float

2.1.6 Use of non-standard footnote resource roles

The XBRL instance MUST NOT contain any footnote resources with a role other than http://www.xbrl.org/2003/role/footnote. Footnote resources MAY be present with an unspecified role.

2.1.7 Use of zero-precision numeric facts

The XBRL instance MUST NOT contain any facts that have a precision of zero.

2.2 Other unsupported features

In addition, it should be noted that the model does not support XML custom attributes (i.e. attributes that are permitted by the XBRL v2.1 specification [XBRL 2.1], but which are not explicitly defined by any supported specification. Unlike the features listed above, OIM Processors MUST NOT treat custom attributes as an error, but the information present in such custom attributes will not be present in the resulting model.

[Paul Warren: The decision to include or exclude this feature is a topic for discussion within the Working Group, and the approach taken may change in future releases of this specification. It is recognised that custom attributes are in use in some implementations, but the OIM attempts to balance the need to support XBRL v2.1 features that are in widespread use, with a desire to provide a simplified model that reduces the number of essentially equivalent technical syntaxes that are available for representing a given requirement. The Working Group is actively seeking feedback on this point. ]

3 XBRL Report Model (non-GL)

The report model is defined as a series of components, each having a set of named properties. These components, and their associated properties are defined in the tables shown below. Components may also have constraints associated with them which all instantiations of these components must adhere to.

The top-level component is a report.

This model is not intended to support reports that use XBRL GL [GLOBALLEDGER]. Whilst XBRL GL reports can be represented in the XBRL v2.1 XML syntax, the manner in which the syntax is used is different, and so is best captured in a separate model which will be added in future drafts of this specification.

Component: Report
Properties:
{DTS references}
A set of DTS references
{facts}
An unordered list of simple facts and tuple facts.
Abstract Component: Fact
A fact is a discrete piece of information in an XBRL Report. A fact is either a simple fact or a tuple fact. All facts have the following common properties.
Properties:
{id}
An optional unique identifier for the fact. The value must be an NCName, and must be unique across all simple facts and tuple facts within the report.
{aspects}
A set of aspects. The set may contain at most one of each core aspect. The set may contain multiple taxonomy defined aspects, but their {name} properties must be unique within the set.
{footnotes}
A list of footnotes associated with the fact. The ordering between footnotes with same {footnote type} and {footnote group} is significant and MUST be preserved. The ordering between footnotes with different {footnote type} or {footnote group} is not significant.
Component: Simple Fact
Simple facts inherit the common properties of facts.
Properties:
{value}
The value associated with this fact. This may be the special value "nil". The meaning of a fact reported as "nil", the distinction between this and a fact that is not reported, or a fact reported with an empty, or zero, value (where applicable) is implementation dependent.
{accuracy}
The number of decimal places to which the value is accurate, or "infinity". The accuracy property is required on, and MUST only be present on, numeric simple facts.

A numeric simple fact is a simple fact with a concept core aspect that identifies a concept that is derived from the XML Schema type of xsd:decimal.

A text simple fact is a simple fact with a concept core aspect that identifies a concept that is derived from the XML Schema type of xsd:string, but not from xsd:language, xsd:Name or xsd:NMTOKEN.

Note that in the above definitions, "derived from" includes indirect derivation via intermediate types.

The text simple fact definition identifies those facts to which the language core aspect is applicable.

Component: Tuple Fact

Tuple facts inherit the common properties of facts. Note that whilst the {aspects} property is common between tuple facts and simple facts, tuple facts will only use the concept core aspect, which is required, and the tuple parent and tuple order aspects, which are used only if the tuple is itself the child of another tuple.

Tuple facts serve as a grouping container for other facts. The containment is captured by the tuple parent core aspect on child facts.

Properties:
Component: DTS Reference
Properties:
{type}
Reference type: "schema", "linkbase", "arcrole" or "role"
{href}
For "schema" and "linkbase", the URL to the defining XML document (schema or linkbase). For "arcrole" and "role", the URL pointing to the defining <arcroleType> or <roleType> element.

3.1 Aspects

An aspect is a piece of additional information that serves to uniquely identify a fact. An aspect may either be one of the core aspects listed below or a taxonomy-defined aspect.

A core aspect is an aspect that is defined by the XBRL v2.1 specification, as distinct from those which are defined in a taxonomy.

Component: Concept Core Aspect
Properties:
{name}
The expanded name corresponding to xbrl:concept
{value}
An expanded name identifying an XBRL concept.
Constraints:

The concept core aspect is required on all facts.

Component: Entity Core Aspect
Properties:
{name}
The expanded name corresponding to xbrl:entity
{scheme}
A URI denoting the scheme from which an identifier is drawn.
{identifier}
A string identifying the entity to which the fact relates.
Constraints:

The entity core aspect is required on, and MUST only be present on, simple facts.

Component: Period Core Aspect
The period core aspect represents the period of time, or instant, to which a fact is applicable. Whilst the xBRL-XML representation uses different elements to represent instants and durations, this specification uses a common model for both in the form of an time interval as defined in ISO 8601 [ISO8601], with instants being represented using a zero-length time interval.
Properties:
{name}
The expanded name corresponding to xbrl:period
{interval}
A time interval, as defined in ISO 8601 or the special value forever. The time interval MAY be zero-length (i.e. start and end at the same instant), denoting an instant in time. The time interval MAY be defined in local time (i.e. without a time zone designator) in which case processors MUST NOT assume a particular time zone, but MUST preserve the information that the time interval is in local time.

This specification, being a syntax-independent model, does not make use of the representations defined in ISO 8601, but as ISO 8601 is the representation used in xBRL-XML and in other representations based on this specification, the model draws on the terms and definitions used in ISO 8601 in order to ensure that the {interval} property can be represented using formats defined in ISO 8601.

The special value, forever, does not make use of the representations defined in ISO 8601, but instead uses syntactical representations specific to xBRL-XML, -JSON and -CSV.

Constraints:

The period core aspect is required on, and MUST only be present on, simple facts.

Component: Unit Core Aspect
Properties:
{name}
The expanded name corresponding to xbrl:unit
{numerators}
An unordered list of expanded names, identifying individual measures.
{denominators}
An optional, unordered list of expanded names, identifying individual measures.
Constraints:

The unit core aspect is required on, and MUST only be present on, numeric simple facts.

Component: Tuple Parent Aspect
Properties:
{name}
The expanded name corresponding to xbrl:tupleParent
{parent}
The tuple fact that is the parent of the fact.
Constraints:

This aspect should be absent for facts that do not form part of a tuple fact.

Component: Tuple Order Aspect
Properties:
{name}
The expanded name corresponding to xbrl:tupleOrder
{order}
An integer value corresponding to the fact's position amongst its siblings within a parent tuple fact. This value is 1-based (the first child has an order value of "1").
Constraints:

This aspect MUST be present if the tuple parent core aspect is present on the fact, and MUST be absent otherwise.

Component: Language Core Aspect
Properties:
{name}
The expanded name corresponding to xbrl:language
{language}
The language in which the fact is reported. Languages MUST be representable as using a valid BCP 47 [BCP47] language code.
Constraints:

The language core aspect may only be present on text simple facts and is optional on such facts.

Component: Taxonomy-defined Aspect
Properties:
{name}
The expanded name identifying the aspect.
{value}
The value for the aspect.
Constraints:

Taxonomy defined aspects MUST only be present on simple facts.

Explicit dimensions will have a type of xsd:QName, but it should be noted that a type of xsd:QName does not imply that the dimension is explicit: it may be a QName typed dimension. The actual nature of the dimension can be determined from the DTS.

The set of Taxonomy-defined aspects associated with a fact does not include any explicit dimensions using a dimension default.

3.2 Footnotes

A footnote is either a text footnote or a fact footnote.

Abstract Component: Footnote
A footnote is either a fact footnote or a text footnote. All footnotes share the following common properties.
Properties:
{group}
A URI identifying a grouping of footnotes.
{footnote type}
A URI identifying the type of footnotes in the group.
Component: Fact Footnote
Fact footnotes inherit the properties defined for footnotes.
Properties:
{fact}
A fact that provides the footnote.
Component: Text Footnote
Text footnotes inherit the properties defined for footnotes.
Properties:
{language}
The language for the footnote, identified using a BCP 47 tag.
{value}
An XHTML fragment representing the value of the footnote.
[Paul Warren: It should be noted that the model does not capture the resource role for footnote resources. The working group is actively seeking feedback on this point. It is currently felt that the combination of extended link role ("footnote group") and arcrole ("footnote type") provide adequate scope for customisation and classification of footnotes, and that an additional property is unnecessarily complex and confusing outside of the XML syntax (and thus in the absence of XLink). ]

Appendix A References

BCP47
IETF. " BCP47: Tags for Identifying Languages "
(See https://tools.ietf.org/html/bcp47)
DIMENSIONS
XBRL International Inc.. "XBRL Dimensions 1.0"
Ignacio Hernández-Ros
, and Hugh Wallis.
(See http://www.xbrl.org/Specification/XDT-REC-2006-09-18.htm)
GLOBALLEDGER
XBRL International Inc.. "XBRL Global Ledger Framework"
Gianluca Garbellotto.

(See http://xbrl.org/int/gl/2007-04-17/GLFramework-REC-2007-04-17.htm)
IETF RFC 2119
IETF (Internet Engineering Task Force). "RFC 2119: Key words for use in RFCs to Indicate Requirement Levels"
Scott Bradner.

(See http://www.ietf.org/rfc/rfc2119.txt)
ISO8601
International Standards Organisation. " ISO 8601 international standard numeric date and time representations. "
(See http://www.iso.ch/)
XBRL 2.1
XBRL International Inc.. "Extensible Business Reporting Language (XBRL) 2.1 Includes Corrected Errata Up To 2013-02-20"
Phillip Engel
, Walter Hamscher, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
(See http://www.xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html)
XML Names
W3C (World Wide Web Consortium). "Namespaces in XML 1.0 (Third Edition)"
(See http://www.w3.org/TR/2009/REC-xml-names-20091208)

Appendix B Intellectual property status (non-normative)

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to XBRL International or XBRL organizations, except as required to translate it into languages other than English. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).

This document and the information contained herein is provided on an "AS IS" basis and XBRL INTERNATIONAL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

The attention of users of this document is directed to the possibility that compliance with or adoption of XBRL International specifications may require use of an invention covered by patent rights. XBRL International shall not be responsible for identifying patents for which a license may be required by any XBRL International specification, or for conducting legal inquiries into the legal validity or scope of those patents that are brought to its attention. XBRL International specifications are prospective and advisory only. Prospective users are responsible for protecting themselves against liability for infringement of patents. XBRL International takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).

Appendix C Document History (non-normative)

DateAuthorDetails
13 January 2016Paul Warren

First Public Working Draft

14 December 2016Paul Warren

Candidate Recommendation

02 May 2017Paul Warren

Second Candidate Recommendation

Appendix D Errata Corrections incorporated in this document

This appendix contains a list of the errata that have been incorporated into this document. This represents all those errata corrections that have been approved by the XBRL International Specification Maintenance Working Group (SWG) up to and including 02 May 2017. Hyperlinks to relevant e-mail threads may only be followed by those who have access to the relevant mailing lists. Access to internal XBRL mailing lists is restricted to members of XBRL International Inc.

No errata have been incorporated into this document.