Versioning Basic Concepts 1.0

Public Working Draft 03 December 2009

Copyright ©2009 XBRL International Inc., All Rights Reserved.

This version:
<http://www.xbrl.org/Specification/versioning-basic-concepts/PWD-2009-12-03/versioning-basic-concepts-PWD-2009-12-03.html>
Editors:
Roland Hommes, Rhocon <roland@rhocon.nl>
Paul Warren, CoreFiling <pdw@corefiling.com>
Contributors:
Ignacio Hernández-Ros, Reporting Estandar S.L. <ignacio@hernandez-ros.com>
Hugh Wallis, XBRL International Inc. <hughwallis@xbrl.org>
Haiko Philipp, IASC Foundation <hphilipp@iasb.org>
Geoff Shuetrim, Galexy <geoff@galexy.net>

Status

Circulation of this Public Working Draft is unrestricted. This document is normative. Other documents may supersede this document. Recipients are invited to submit comments to versioning-feedback@xbrl.org, and to submit notification of any relevant patent rights of which they are aware and provide supporting documentation.

Abstract

This specification is an extension to the versioning base specification. It specifies how to map and address concept names between two DTS's in a versioning container file.

This specification can only be used in conjuntion with the base module [XVS-Base].

Table of Contents

1 Introduction
1.1 Relationship to other work
1.2 Language independence
1.3 Document conventions
1.3.1 Typographic conventions
1.3.1.1 Definition notation
1.3.1.2 Footnote notation
1.3.1.3 Element and attribute notation
1.3.2 Formatting conventions
1.4 Terminology
1.5 Namespaces and namespace prefixes
2 Events and mappings
2.1 Events
2.2 Concept mappings

Appendices

A Normative schema
B References
C Intellectual property status (non-normative)
D Acknowledgements (non-normative)
E Document history (non-normative)
F Errata corrections in this document

Tables

1 Namespaces and namespace prefixes
2 Hierarchical organisation of events

Examples

1 A normative example
2 A non-normative example
3 An example of poor usage

Definitions

Concept information item
DTS information item
Item information item
Tuple information item
business concept
concept-identifier
equivalent concepts
from-identifier
related concepts
rfc2119 terminology
to-identifier

Error codes

xbrlvercbe:badFromIdentifier
xbrlvercbe:badToIdentifier


1 Introduction

1.1 Relationship to other work

This specification depends upon the XBRL 2.1 Specification [XBRL 2.1] and the base versioning specification [XVS-Base].

1.2 Language independence

The official language of XBRL International's own work products is English and the preferred spelling convention is UK English.

1.3 Document conventions

1.3.1 Typographic conventions

1.3.1.1 Definition notation

Definitions are highlighted with green text.

1.3.1.2 Footnote notation

Comments which are informative, but not essential to the understanding of the point at hand, are provided in footnotes. All footnotes are non-normative.

1.3.1.3 Element and attribute notation

When referring to a specific element, it will be identified by its namespace prefix and local name. For example, the root element for a specification container element would be referred to as <variable:generalVariable> .

Attributes are also identified by their local name and, where appropriate, their namespace prefix. Attributes are distinguished from elements by prefixing them by an @ symbol. Thus, @id refers to the attribute with the name id.

When referring to any attribute, so long as it has a specific namespace, the local name is replaced by an asterisk ( *). Thus, the notation @xml:* specifies any attribute in the namespace http://www.w3.org/XML/1998/namespace.

1.3.2 Formatting conventions

The following highlighting is used for normative technical material in this document:

Example 1: A normative example

Text of the normative example.

The following highlighting is used for non-normative examples in this document:

Example 2: A non-normative example

Text of the helpful example.

Next paragraph of the helpful example.

Example 3 shows the formatting for non-normative examples of poor, discouraged or disallowed usage.

Example 3: An example of poor usage

The example itself.

1.4 Terminology

This specification depends upon the following XBRL specifications:

  • XBRL 2.1 Specification [XBRL 2.1]
  • XBRL Versioning Base Specification []

In the event of any conflicts between this specification and the specifications upon which it depends, this specification does not prevail.

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].

A concept identifier is an identifier for a Concept information item in the F-DTS or the T-DTS.

A from-identifier is an identifier in an event that identifies a versioning information item in the F-DTS.

A to-identifier is an identifier in an event that identifies a versioning information item in the T-DTS.

A business concept is the abstract definition of an individual piece of business information. An XBRL concept [XBRL 2.1] is a concrete instantiation of a business concept. The distinction is relevant to versioning because a single business concept may be represented by different XBRL concepts in different taxonomies. A versioning report can identify such equivalent concepts.

Two concepts are considered to be equivalent concepts when both concepts represent the same business concept. This implies that a fact reported using either concept would be understood by a consumer to represent the same piece of information. The requirements for concept equivalence place no specific constraints on the XBRL representation of the concepts. Equivalent concepts may have different local names, namespaces, labels, references or datatypes. As the two concepts represent a single business concept, the datatypes of the concepts will be expected to have the same value space, allowing all values that are valid for the business concept. In practice, the value spaces may be different. For example, one concept may use a more tightly constrained datatype that more closely matches the values that are valid for the business concept. Further, errors in datatype definition may mean that values that are valid for the business concept may not be valid for one or other concept. This does not prevent the concepts from being equivalent.

Two concepts are considered to be related concepts when there is overlap in the definitions of the underlying business concepts. Unlike equivalent concepts, there is no implication that a fact reported according to one concept would be understood to have the same business meaning when reported using the other. Concept correspondence MAY be used to indicate the logical successor or successors to a concept that has no equivalent concept in a taxonomy.

A DTS information item is the Versioning information item that contains all of the XBRL information in the corresponding DTS.

A Concept information item is an abstract object representing a concept defined in a taxonomy. A concept can be an XBRL Item or an XBRL Tuple. Both have properties in common and the Concept Information Item represents the properties in common between Items and Tuples.

An Item information item is an object representing a concept defined in a taxonomy in the substitutioGroup xbrli:item. All properties that are exclusive to an item are represented by the Item Information Item.

A Tuple information item is an object representing a concept defined in a taxonomy in the substitutioGroup xbrli:tuple. All properties that are exclusive to a tuple are represented by the Tuple Information Item.

1.5 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 is 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
vercb http://xbrl.org/2008/versioning-basic-concepts
xbrlvercbe http://xbrl.org/2008/versioning-basic-concepts/error

2 Events and mappings

2.1 Events

This specification defines four events. These events, in conjunction with namespace mappings, establish pairs of concepts, one from each of the F-DTS and T-DTS as being equivalent concepts or related concepts, as described in Section 2.2.

Table 2: Hierarchical organisation of events
Code Event Parent Event From DTS To DTS Final
[ConceptDelete] Concept deleted None [ConceptId] - Yes
[ConceptAdd] Concept added None - [ConceptId] Yes
[ConceptName] Concept name None [ConceptId] [ConceptId] Yes

A from-identifier manifests as a child element of a event which is a <vercb:fromE> when the identifier locates a concept definition.

Error code xbrlvercbe:badFromIdentifier   MUST be thrown if a from-identifier does not identify an information item in the F-DTS.

A to-identifier manifests as a child element of a event which is a <vercb:toE> when the identifier locates a concept definition.

Error code xbrlvercbe:badToIdentifier   MUST be thrown if a to-identifier does not identify an information item in the T-DTS.

2.2 Concept mappings

Concept mapping information is obtained from the versioning report as follows:

Appendix A Normative schema

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vercb="http://xbrl.org/2010/versioning-concepts-base" xmlns:ver="http://xbrl.org/2010/versioning-base" targetNamespace="http://xbrl.org/2010/versioning-concepts-base" elementFormDefault="qualified">
<xs:import namespace="http://xbrl.org/2010/versioning-base" schemaLocation="versioning-base.xsd"/>
<!-- content of the event node in the versioning container -->
<xs:element id="xml-event" name="event" type="vercb:event.type" substitutionGroup="ver:revision" abstract="true"/>
<xs:complexType id="xml-event.type" name="event.type">
<xs:complexContent>
<xs:restriction base="ver:open.type">
<xs:attributeGroup ref="ver:common.attributes"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- Parents of the events -->
<xs:element name="toE" type="vercb:element.identifier.type"/>
<xs:element name="fromE" type="vercb:element.identifier.type"/>
<xs:complexType id="xml-element.identifier.type" name="element.identifier.type">
<xs:attributeGroup ref="ver:common.attributes"/>
<xs:attribute name="href" type="xs:anyURI"/>
</xs:complexType>
<!-- complexTypes event nodes-->
<xs:complexType id="xml-add.element.event.type" name="add.element.event.type">
<xs:complexContent>
<xs:extension base="vercb:event.type">
<xs:sequence>
<xs:element ref="vercb:toE"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-delete.element.event.type" name="delete.element.event.type">
<xs:complexContent>
<xs:extension base="vercb:event.type">
<xs:sequence>
<xs:element ref="vercb:fromE"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-change.element.event.type" name="change.element.event.type">
<xs:complexContent>
<xs:extension base="vercb:event.type">
<xs:sequence>
<xs:element ref="vercb:fromE"/>
<xs:element ref="vercb:toE"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- Concept events -->
<xs:element id="xml-concept.event" name="conceptEvent" type="vercb:event.type" substitutionGroup="vercb:event" abstract="true"/>
<xs:element id="xml-add.concept.event" name="conceptAdd" type="vercb:add.element.event.type" substitutionGroup="vercb:conceptEvent"/>
<xs:element id="xml-delete.concept.event" name="conceptDelete" type="vercb:delete.element.event.type" substitutionGroup="vercb:conceptEvent"/>
<xs:element id="xml-concept.name.event" name="conceptName" type="vercb:change.element.event.type" substitutionGroup="vercb:conceptEvent"/>
<xs:element id="xml-concept.id.event" name="conceptID" type="vercb:change.element.event.type" substitutionGroup="vercb:conceptEvent"/>
</xs:schema>

Appendix B References

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)
XBRL 2.1
XBRL International Inc.. "Extensible Business Reporting Language (XBRL) 2.1 Includes Corrected Errata Up To 2008-07-02"
Phillip Engel, Walter Hamscher, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
(See http://www.xbrl.org/Specification/XBRL-RECOMMENDATION-2003-12-31+Corrected-Errata-2008-07-02.htm)
XML Names
W3C (World Wide Web Consortium). "Namespaces in XML 1.0 (Second Edition)"
Tim Bray, Dave Hollander, Andrew Layman, and Richard Tobin.
(See http://www.w3.org/TR/REC-xml-names/)
XVS-Base
XBRL International Inc. "XBRL Versioning Base 1.0"
Roland Hommes.
(See http://www.xbrl.org/Specification/versioning-base/PWD-2009-12-03/versioning-base-PWD-2009-12-03.html)

Appendix C 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 D Acknowledgements (non-normative)

This document could not have been written without the contributions of many people including the participants in the Versioning Working Group.

Appendix E Document history (non-normative)

DateAuthorDetails
06 October 2009Roland Hommes

Merged PWD-2009-05-27 on Context and Syntax into one document, and split the result into modules, this being the 'basic concepts' module which enables concept-level versioning.

28 October 2009Roland Hommes

Updates as per comments from Haiko Philipp. Events never MUST be reported, only when the report author chooses to.

24 November 2009Paul Warren

Updates based on comments from Dan Bromley: Updated references to use the definitions for "paired namespace" and "paired role URI" where appropriate.

27 November 2009Roland Hommes

Updates as per comments from Maciej Piechocki: Removal of XIS references, table2 refers to XML nodes of events.

29 November 2009Paul Warren

Introduced defintions of equivalent concepts and related concepts. Re-drafted Concept Mappings in terms of information obtained from versioning events. Removed ConceptNamespace.

30 November 2009Paul Warren

Renamed EvConceptNew to EvConceptAdd. Fixed list of terminology dependencies. Removed "Ev" prefix from all events.

Appendix F Errata corrections 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 Versioning Working Group up to and including 03 December 2009. 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.