Versioning Concept Extended 1.0

Candidate Recommendation 31 July 2010

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

This version:
<http://www.xbrl.org/Specification/versioning-concept-extended/CR-2010-07-31/versioning-concept-extended-CR-2010-07-31.html>
Editors:
Roland Hommes, Rhocon <roland@rhocon.nl>
Paul Warren, CoreFiling <pdw@corefiling.com>
Herm Fischer, UBmatrix / Mark V Systems <fischer@markv.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>
Raynier van Egmond, C3i SMC LLC <rve@c3ismc.com>
Geoff Shuetrim, Galexy <geoff@galexy.net>
Ian Stokes-Rees, CoreFiling <ijs@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 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 Epecification [XVS-Base]. It specifies how to map and address concept properties, including XML and XBRL attributes on concept definitions, labels and references associated with concept definitions and changes to tuple content models.

This specification must be used in conjunction with the Versioning Base module [XVS-Base] and Versioning Basic Concepts module [XVS-Concept-Basic].

Table of Contents

1 Introduction
1.1 Relationship to other work
1.2 Namespaces and namespace prefixes
1.3 Language independence
1.4 Document conventions
1.4.1 Typographic conventions
1.4.1.1 Definition notation
1.4.1.2 Footnote notation
1.4.1.3 Element and attribute notation
1.4.2 Formatting conventions
1.5 Terminology
2 Definitions
3 Events
3.1 Attribute events
3.2 Custom concept attribute events
3.2.1 Validation rules
3.3 Label and reference events
3.3.1 Label events
3.3.2 Reference events
3.4 Tuple content model events
3.5 Concept correspondence
4 Identifiers
4.1 Resource Identifier
4.1.1 XML Representation
4.2 Concept-Resource Identifier
4.2.1 Validation rules
4.3 Concept-Label Identifier
4.3.1 Validation rules
4.4 Concept-Reference Identifier
4.4.1 Validation rules
4.5 Concept-Attribute Identifier
4.6 Attribute Identifier
4.6.1 XML Representation
4.7 Tuple Concept Identifier
4.7.1 Validation rules

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 XML Schema Attribute Events
3 XBRL Concept Attribute Events
4 Custom Concept Attribute Events
5 Concept label events
6 Concept reference events
7 Tuple content events
8 Allowed resources and relationships for concept-label identifiers
9 Allowed resources and relationships for concept-reference identifiers

Examples

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

Definitions

Attribute Identifier
Concept-Attribute Identifier
Concept-Label Identifier
Concept-Reference Identifier
Concept-Resource Identifier
Effective Relationship
Resource Identifier
Tuple Concept Identifier

Error codes

vercee:illegalCustomAttributeEvent
vercee:invalidAttributeChange
vercee:invalidConceptCorrespondence
vercee:invalidConceptIdentifier
vercee:invalidConceptLabelIdentifier
vercee:invalidContentResourceIdentifier
vercee:invalidResourceIdentifier
vercee:invalidTupleConceptIdentifier


1 Introduction

1.1 Relationship to other work

This specification depends upon the following XBRL specifications:

  • XBRL 2.1 Specification [XBRL 2.1]
  • Versioning Base 1.0 Specification [XVS-Base]
  • Versioning Basic Concepts 1.0 Specification []

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

1.2 Namespaces and namespace prefixes

This specification uses a number of namespace prefixes when describing elements and attributes. These are:

Table 1: Namespaces and namespace prefixes
Prefix Namespace URI
ver http://xbrl.org/2010/versioning-base
vercb http://xbrl.org/2010/versioning-concept-basic
verce http://xbrl.org/2010/versioning-concept-extended
vercee http://xbrl.org/2010/versioning-concept-extended/error

1.3 Language independence

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

1.4 Document conventions

1.4.1 Typographic conventions

1.4.1.1 Definition notation

Definitions are highlighted with green text.

1.4.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.4.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.4.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.5 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 key words element, attribute, namespace name and namespace prefix in this document are to be interpreted as described in the XML Names Specification [XML Names].

The key word content model in this document is to be interpreted as described in the XML Schema Structures Specification [XML Schema Structures].

The key word QName in this document is to be interpreted as described in the XML Schema Datatypes Specification [XML Schema Datatypes].

The key words concept, tuple, tuple declaration, relationship, network, base set, label, reference and arc in this document are to be interpreted as described in the XBRL Specification [XBRL 2.1].

The key word resource in this document is to be interpreted as described in the XLink Specification [XLINK].

2 Definitions

An Effective Relationship is a relationship that is included in the network of relationships for a base set of arcs, under the Rules of Prohibiting and Overriding Relationships in the XBRL Specification [XBRL 2.1].

3 Events

This specification supports the communication of information about changes to the details of concept definitions. Specific Events are defined for:

3.1 Attribute events

The table below lists Events that MAY be used to document changes to attributes defined for use on element declarations by the XML Schema specification [XML Schema Structures]. These attributes have no namespace name.

Table 2: XML Schema Attribute Events
Code Element XML Schema Attribute Parent Event From Identifier To Identifier Final
[ConceptIDChange] <verce:conceptIDChange> @id None Concept Identifier Concept Identifier Yes
[ConceptTypeChange] <verce:conceptTypeChange> @type None Concept Identifier Concept Identifier Yes
[SubstitutionGroupChange] <verce:conceptSubstitutionGroupChange> @substitutionGroup None Concept Identifier Concept Identifier Yes
[NillableChange] <verce:conceptNillableChange> @nillable None Concept Identifier Concept Identifier Yes
[AbstractChange] <verce:conceptAbstractChange> @abstract None Concept Identifier Concept Identifier Yes
[BlockChange] <verce:conceptBlockChange> @block None Concept Identifier Concept Identifier Yes
[DefaultChange] <verce:conceptDefaultChange> @default None Concept Identifier Concept Identifier Yes
[FixedChange] <verce:conceptFixedChange> @fixed None Concept Identifier Concept Identifier Yes
[FinalChange] <verce:conceptFinalChange> @final None Concept Identifier Concept Identifier Yes

The Working Group considers changes in concept @id as events that will likely not be communicated since software approaches this attribute as an internal key with no semantics attached to it. This also means that any namespace prefix that is being changed that MAY have consequences for the content of the @id will NOT be supported by this or any other versioning module, unless comments received will proove otherwise.

The table below lists Events that MAY be used to document changes to attributes defined for use on concept declarations by the XBRL specification [XBRL 2.1]. These attributes have a namespace name of http://www.xbrl.org/2003/instance.

Table 3: XBRL Concept Attribute Events
Code Element XBRL Attribute Parent Event From Identifier To Identifier Final
[PeriodTypeChange] <verce:conceptPeriodTypeChange> @xbrli:periodType None Concept Identifier Concept Identifier Yes
[BalanceChange] <verce:conceptBalanceChange> @xbrli:balance None Concept Identifier Concept Identifier Yes

3.2 Custom concept attribute events

The table below documents Events that MAY be used to document changes in attributes other than those defined by the XML Schema specification [XML Schema Structures], the XBRL Specification [XBRL 2.1] and the XBRL Dimensions Specification [DIMENSIONS].

Table 4: Custom Concept Attribute Events
Code Element Parent Event From Identifier To Identifier Final
[AttributeDelete] <verce:conceptAttributeDelete> None Concept-Attribute Identifier - Yes
[AttributeAdd] <verce:conceptAttributeAdd> None - Concept Attribute Identifier Yes

For Events documenting changes in custom attributes on concepts, the attribute is identified by the @name and @namespace  attributes of the <verce:customAttribute> element.

3.2.1 Validation rules

These Events MUST NOT have namespaces http://www.xbrl.org/2003/instance or http://www.w3.org/2001/XMLSchema. Error code vercee:illegalCustomAttributeEvent is thrown otherwise.

These Events MUST NOT be used to document changes in attributes with no namespace name, or with a namespace name of http://www.xbrl.org/2003/instance. Specific Events for such attributes are defined in Section 3.1. Error code vercee:invalidAttributeChange is raised otherwise.

3.3 Label and reference events

3.3.1 Label events

Additions of, deletions of, and changes to references associated with concepts MAY be documented using the Events defined in the table below.

Table 5: Concept label events
Code Element Parent Event From Identifier To Identifier Final
[LabelDelete] <verce:conceptLabelDelete> None Concept Label Identifier - Yes
[LabelAdd] <verce:conceptLabelAdd> None - Concept-Label Identifier Yes
[LabelChange] <verce:conceptLabelChange> None Concept-Label Identifier Concept-Label Identifier Yes

3.3.2 Reference events

Additions of, deletions of, and changes to references associated with concepts MAY be documented using the Events defined in the following table.

Table 6: Concept reference events
Code Element Parent Event From Identifier To Identifier Final
[ReferenceDelete] <verce:conceptReferenceDelete> None Concept-Reference Identifier - Yes
[ReferenceAdd] <verce:conceptReferenceAdd> None - Concept-Reference Identifier Yes
[ReferenceChange] <verce:conceptReferenceChange> None Concept-Reference Identifier Concept-Reference Identifier Yes

3.4 Tuple content model events

The ConceptChildChange event MAY be used to document any change in the content model of a tuple concept.

Table 7: Tuple content events
Code Element Parent Event From-DTS To-DTS Final
[ConceptChildChange] <verce:conceptChildChange> None Tuple Concept Identifier Tuple Concept Identifier No

3.5 Concept correspondence

Where an Event in this specification requires both a From Identifier and a To Identifier and each identifier is one of:

then the concepts identified by both identifiers  MUST be identified as Equivalent Concepts or Related Concepts using the mechanism specified in the Versioning Concept Base specification [XVS-Concept-Basic]. Error code vercee:invalidConceptCorrespondence is raised otherwise.

4 Identifiers

4.1 Resource Identifier

A Resource Identifier is an Identifier for an XLink resource.

4.1.1 XML Representation

A Resource Identifier is represented by either a <verce:fromResource> or a <verce:toResource> element. These elements have a mandatory @value attribute, the value of which is a URL identifying the resource. The URL MUST contain a fragment identifier. The fragment identifier MUST either be an XPointer Shorthand Pointer or be an XPointer Scheme-Based Pointer that uses only the element scheme. Error code vercee:invalidResourceIdentifier is raised otherwise.

The Working Group has also considered a mechanism for addressing label and reference resources by identifying the concept, linkElement, linkrole, arcElement, arcrole and role on the resource. This approach is more verbose and yet may not uniquely identify a resource. Therefore, it has been excluded from this draft of the specification pending further feedback.

4.2 Concept-Resource Identifier

A Concept-Resource Identifier is the combination of a Concept Identifier and a Resource Identifier.

4.2.1 Validation rules

The Resource Identifier component and Concept Identifier components MUST identify a resource and a concept, respectively, that are connected by at least one effective relationship. Error code vercee:invalidContentResourceIdentifier is raised otherwise.

4.3 Concept-Label Identifier

A Concept-Label Identifier is a Concept-Resource Identifier where the identified resource represents a label for the identified concept. The specification allows for labels defined using the syntax defined in either the XBRL Specification [XBRL 2.1] or the Generic Labels Specification [GENERIC LABELS].

4.3.1 Validation rules

The identified resource and at least one of the effective relationships associating it with the concept MUST be one of the allowed combinations in the table below. Error code vercee:invalidConceptLabelIdentifier is raised otherwise.

Table 8: Allowed resources and relationships for concept-label identifiers
Resource Arc-role Arc element Link element
<link:label> http://www.xbrl.org/2003/arcrole/concept-label <link:labelArc> <link:labelLink>
<label:label> http://xbrl.org/arcrole/2008/element-label <gen:arc> any

4.4 Concept-Reference Identifier

A Concept-Reference Identifier is a Concept-Resource Identifier where the identified resource represents a reference for the identified concept. The specification allows for references defined using the syntax defined in either the XBRL Specification [XBRL 2.1] or the Generic Reference Specification [GENERIC REFERENCES].

4.4.1 Validation rules

The identified resource and at least one of the effective relationships associating it with the concept MUST be one of the allowed combinations in the table below. Error code vercee:invalidConceptIdentifier is raised otherwise.

Table 9: Allowed resources and relationships for concept-reference identifiers
Resource Arc-role Arc element Link element
<link:reference> http://www.xbrl.org/2003/arcrole/concept-reference <link:referenceArc> <link:referenceLink>
<reference:reference> http://xbrl.org/arcrole/2008/element-reference <gen:arc> any

4.5 Concept-Attribute Identifier

A Concept-Attribute Identifier is the combination of a Concept Identifier and an Attribute Identifier.

4.6 Attribute Identifier

An Attribute Identifier is an Identifier for an XML attribute.

4.6.1 XML Representation

An Attribute Identifier is represented by the <verce:customAttribute> . The attribute is identified by the mandatory @name attribute, which specifies the QName of the attribute, respectively. An Attribute Identifier cannot reference an attribute that has no namespace name.

4.7 Tuple Concept Identifier

A Tuple Concept Identifier is a Concept Identifier that identifies a tuple concept.

4.7.1 Validation rules

The identified conceptMUST be a valid tuple declaration, as defined in the XBRL Specification [XBRL 2.1]. Error code vercee:invalidTupleConceptIdentifier is raised otherwise.

Appendix A Normative schema

<xs:schema xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ver="http://xbrl.org/2010/versioning-base" xmlns:vercb="http://xbrl.org/2010/versioning-concept-basic" xmlns:verce="http://xbrl.org/2010/versioning-concept-extended" targetNamespace="http://xbrl.org/2010/versioning-concept-extended" elementFormDefault="qualified">
<xs:import namespace="http://xbrl.org/2010/versioning-base" schemaLocation="versioning-base.xsd"/>
<xs:import namespace="http://xbrl.org/2010/versioning-concept-basic" schemaLocation="versioning-concept-basic.xsd"/>
<!-- custom attributes nodes on concepts (not in xs, xbrli or xdt namespace) -->
<xs:element name="customAttribute" type="verce:name.type"/>
<xs:complexType id="xml-name.type" name="name.type">
<xs:attribute name="name" type="xs:QName" use="required"/>
<xs:attributeGroup ref="ver:common.attributes"/>
</xs:complexType>
<!-- To address resources in the to-DTS and from-DTS (two nodes for the changeResourceEvent) -->
<xs:element name="toResource" type="ver:uri.type"/>
<xs:element name="fromResource" type="ver:uri.type"/>
<!-- add-delete custom attribute event nodes, NO change since there is only a QName -->
<xs:complexType id="xml-add.attribute.event.type" name="add.attribute.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:toConcept"/>
<xs:element ref="verce:customAttribute"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-delete.attribute.event.type" name="delete.attribute.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:fromConcept"/>
<xs:element ref="verce:customAttribute"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-change.attribute.event.type" name="change.attribute.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:fromConcept"/>
<xs:element ref="vercb:toConcept"/>
<xs:element ref="verce:customAttribute"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- add-delete-change xlink resource event nodes -->
<xs:complexType id="xml-add.resource.event.type" name="add.resource.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:toConcept"/>
<xs:element ref="verce:toResource"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-delete.resource.event.type" name="delete.resource.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:fromConcept"/>
<xs:element ref="verce:fromResource"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType id="xml-change.resource.event.type" name="change.resource.event.type">
<xs:complexContent>
<xs:restriction base="ver:event.type">
<xs:sequence>
<xs:element ref="vercb:fromConcept"/>
<xs:element ref="verce:fromResource"/>
<xs:element ref="vercb:toConcept"/>
<xs:element ref="verce:toResource"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- Concept XSD/XBRLI/XDT attribute events -->
<xs:element id="xml-concept.id.event" name="conceptIDChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.type.event" name="conceptTypeChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.substitution.group.event" name="conceptSubstitutionGroup" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.default.event" name="conceptDefaultChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.nillable.event" name="conceptNillableChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.abstract.event" name="conceptAbstractChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.block.event" name="conceptBlockChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.fixed.event" name="conceptFixedChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.final.event" name="conceptFinalChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.period.type.event" name="conceptPeriodTypeChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.balance.event" name="conceptBalanceChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<!-- Concept custom attribute events -->
<xs:element id="xml-concept.add.attribute.event" name="conceptAttributeAdd" type="verce:add.attribute.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.delete.attribute.event" name="conceptAttributeDelete" type="verce:delete.attribute.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.change.attribute.event" name="conceptAttributeChange" type="verce:change.attribute.event.type" substitutionGroup="ver:event"/>
<!-- Concept tuple children events -->
<xs:element id="xml-concept.add.child.event" name="conceptChildAdd" type="vercb:add.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.delete.child.event" name="conceptChildDelete" type="vercb:delete.element.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.change.child.event" name="conceptChildChange" type="vercb:change.element.event.type" substitutionGroup="ver:event"/>
<!-- Label resource events -->
<xs:element id="xml-concept.add.label.event" name="conceptLabelAdd" type="verce:add.resource.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.delete.label.event" name="conceptLabelDelete" type="verce:delete.resource.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.change.label.event" name="conceptLabelChange" type="verce:change.resource.event.type" substitutionGroup="ver:event"/>
<!-- Reference resource events -->
<xs:element id="xml-concept.add.reference.event" name="conceptReferenceAdd" type="verce:add.resource.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.delete.reference.event" name="conceptReferenceDelete" type="verce:delete.resource.event.type" substitutionGroup="ver:event"/>
<xs:element id="xml-concept.change.reference.event" name="conceptReferenceChange" type="verce:change.resource.event.type" substitutionGroup="ver:event"/>
</xs:schema>

Appendix B References

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)
GENERIC LABELS
XBRL International Inc.. "XBRL Generic Labels 1.0"
Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
(See http://www.xbrl.org/Specification/genericLabels/REC-2009-06-22/genericLabels-REC-2009-06-22.html)
GENERIC REFERENCES
XBRL International Inc.. "XBRL Generic References 1.0"
Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
(See http://www.xbrl.org/Specification/genericReferences/REC-2009-06-22/genericReferences-REC-2009-06-22.html)
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)
XLINK
W3C (World Wide Web Consortium). "XML Linking Language (XLink) Version 1.0"
Steve DeRose, Eve Maler, and David Orchard.
(See http://www.w3.org/TR/xlink/)
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/)
XML Schema Datatypes
W3C (World Wide Web Consortium). "XML Schema Part 2: Datatypes Second Edition"
Paul V. Biron, and Ashok Malhotra.
(See http://www.w3.org/TR/xmlschema-2/)
XML Schema Structures
W3C (World Wide Web Consortium). "XML Schema Part 1: Structures Second Edition"
Henry S. Thompson, David Beech, Murray Maloney, and Noah Mendelsohn.
(See http://www.w3.org/TR/xmlschema-1/)
XPOINTER
W3C (World Wide Web Consortium). "XPointer Framework"
Paul Grosso, Eve Maler, Jonathan Marsh, and Norman Walsh.
(See http://www.w3.org/TR/xptr-framework/)
XVS-Base
XBRL International Inc. "XBRL Versioning Base 1.0"
Roland Hommes.
(See http://www.xbrl.org/Specification/versioning-base/CR-2010-07-31/versioning-base-CR-2010-07-31.html)
XVS-Concept-Basic
XBRL International. "Versioning Concept Basic 1.0"
Roland Hommes, and Paul Warren.
(See http://www.xbrl.org/Specification/versioning-concept-basic/CR-2010-07-31/versioning-concept-basic-CR-2010-07-31.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
30 October 2009Roland Hommes

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

12 December 2009Roland Hommes

Created specific events for labels and references, removed reference to XIS.

27 December 2009Herm Fischer

Made an attempt at drafting section 3.

30 December 2009Herm Fischer

Removed prior draft section 3 introduction, added section 3.1, Concept Identification, to clarify the use of fromE and toE on events, particularly of multiply-equivalent related concepts. Also added clarification of EvAttributeChange and EvChildChange events.

11 January 2010Paul Warren

Various editorial changes.

11 January 2010Herm Fischer

Reworded custom attribute's events where the custom attribute has no namespace (sect 2.1), per PW comment. Clarified the custom attribute and child change examples. Reworded section 3.1. Put non-normative stuff into example boxes.

01 February 2010Paul Warren

Split event table into multiple sections. Corrected reference to XML Schema namespace for XML Schema attributes.

01 March 2010Paul Warren

Use QName to identify a custom attribute. Removed non-normative text. Split out definitions of Events and Identifiers. Simplified tuple events.

28 February 2010Roland Hommes

Included remark on @id on concepts and the link to namespace prefix changes. Included http://www.w3.org/2001/XMLSchema in the error on custom Attribute events.

20 June 2010Ian Stokes-Rees

Reordered some content to improve flow, updated references to Base and Concept Basic specs, removed some empty sections, and corrected a few identifier reference errors.

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 31 July 2010. 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.