Copyright ©2011 XBRL International Inc., All Rights Reserved.
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.
This specification is an extension to the Versioning Base Specification [XVS-Base]. It specifies how to specify that changes have occurred to concept-to-concept relationships in base or definitional relationship sets. This allows DTS maintainers to be notified of changes and to maintain extension taxonomies, mapping, and rendering components for those DTSes.
At this time the relationships addressed by this module include only those between concepts. Relationships between concepts and labels and resources are addressed by Concept-Extended. Relationships of a more complex resource nature, such as formulas, will be addressed in a manner to be determined.
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 Relationship Set Model Events
2.2 Syntax
2.2.1 Relationship set model
2.2.1.1 Validation Rules
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
1 Namespaces and namespace prefixes
2 Relationship Set events
1 A normative example
2 A non-normative example
3 An example of poor usage
4 relationship set model
relationship-set-specifier
relationship-sets-model
relationship-specifier
verrelse:invalidArcElementReference
verrelse:invalidArcrole
verrelse:invalidConceptReference
verrelse:invalidLinkElementReference
verrelse:invalidLinkrole
verrelse:invalidRelationshipReference
This specification depends upon the following XBRL specifications:
In the event of any conflicts between this specification and the specifications upon which it depends, this specification does not prevail.
Networks of relationships are composed by base sets of arcs segregated by link and arc element, link role and arc arcrole, and used for multiple purposes. This specification currently addresses relationships between concepts. Relationship sets may be base sets and dimensional relationship sets. Both depend on link roles. Versioning Report documentation on link role mappings is specified in the base versioning specification [XVS-Base].
The relationship sets model of this specification is semantic, and does not depend on or detail the arc relationships that compose this model in XBRL taxonomies. The model is the net result of an XBRL Processor considering arc prohibition, override, and equivalence, with only the resulting effective relationships composing the model. (The ineffective relationships are not present in the model.) The model may be minimally specified, such that an XBRL Processor is given a starting relationship and includes in the model, child or descendant relationships, in a base set or dimensional consecutive relationship set, where so specified.
The official language of XBRL International's own work products is English and the preferred spelling convention is UK English.
Comments which are informative, but not essential to the understanding of the point at hand, are provided in footnotes. All footnotes are non-normative.
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
.
The following highlighting is used for normative technical material in this document:
Text of the normative example.
The following highlighting is used for non-normative examples in this document:
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.
The example itself.
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 dimension, primary item, hypercube and member in this document are to be interpreted as described in the XBRL Dimensions Specification [DIMENSIONS].
The key words fact, instance in this document are to be interpreted as described in the XBRL Specification [XBRL 2.1].
A relationship sets model as used in this specification is a model of the base set relationships between concepts and of the dimensional relationship sets. This specification is always modeling the 'net' result of effective arcs of the relationship sets considering arc equivalence, prohibition, override, and priority. Only effective arcs are modeled, ineffective arcs are not represented.
A relationshipSetSpecifier as used in this specification pertains to a relationship set model of a subject DTS. It may identify a relationship set model by at least a linkrole and arcrole, and in addition may provide link element and arc element QNames as needed to uniquely identify the model, and may specify a set of relationships to include in the subject model. If no relationships are specified the entire base or dimensional relationship set of the DTS is included, according to the link and arc roles (and link and arc elements) specified. Otherwise the specified relationships are only included in the model.
A relationshipSpecifier as used in this specification pertains to arcs of a subject
base or dimensional relationship set. It may either identify an effective arc by href
of the
effective arc element, or by the
conceptSpecifiers for
the from and to concepts and those attributes needed to disambiguate from other effective arcs in the
same relationship set between the same from and to concepts. For example, in a presentational base
set, preferredLabel may be needed in addition to from and to concepts, if a starting, ending, and standard
label effective arcs are all present.
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.
Prefix | Namespace URI |
---|---|
verrels
|
http://xbrl.org/2010/versioning-relationship-sets
|
verrelse
|
http://xbrl.org/2010/versioning-relationship-sets/error
|
xs
|
http://www.w3.org/2001/XMLSchema
|
gen
|
http://xbrl.org/2008/generic
|
eg
|
http://example.com/
|
ver
|
http://xbrl.org/2010/versioning-base
|
vercb
|
http://xbrl.org/2010/versioning-concept-basic
|
verce
|
http://xbrl.org/2010/versioning-concept-extended
|
The relationship sets model tracks changes to the base and dimensional relationship sets in the DTS.
Concepts are specified in terms of XBRL concepts [XBRL 2.1], so as a consequence, Versioning Report documentation on XBRL concepts [XBRL 2.1] that are the from or to concepts of a relationship is documented with the Basic Concepts Specification[XVS-Concept-Basic] and Concept Details Specification [XVS-Concept-Extended].
This specification defines three relationship set model events. These events describe changes in the relationship set model that relates relationships (optionally including descendant relationships).
Code | Element | From Identifier | To Identifier |
---|---|---|---|
[RelationshipSetModelChange] |
<verrels:relationshipSetModelChange>
|
RelationshipSetSpecifier | RelationshipSetSpecifier |
[RelationshipSetModelAdd] |
<verrels:relationshipSetModelAdd>
|
RelationshipSetSpecifier | |
[RelationshipSetModelDelete] |
<verrels:relationshipSetModelDelete>
|
RelationshipSetSpecifier |
This specification only provides a textual declaration of syntax constraints when those constraints are not expressed by the normative schema supplied with this specification.
Explanations of elements and attributes are only supplied when explanations are not already provided in other specifications.
Unless explicitly stated otherwise, a reference to a specific element MUST be read as a reference to that element or to any element in its substitution group.
The syntax for the
<verrels:relationshipSet>
element
is defined by the normative schema supplied with this specification.
The relationship set is defined by at least a linkrole and arcrole. If that is all that is specified the relationship set includes all effective relationships in the base set (for non-dimensional arc types) and for dimensional arc types all effective relationships in the link role and arc role specified and consecutive effective relationships from the effective relationships of the link role and arc role.
The relationship set may provide link element and arc element QNames as needed to uniquely identify the model, such as for generic or custom relationships with multiple link or arc elements sharing the same link and arc roles.
The relationship set may specify set(s) of relationships to include in the subject model, and in that case includes only the specified relationships. Such relationships may be specified as one or more relationships.
Relationships are specified by at least a
@fromName
concept identifier attribute, and optional
@toName
concept identifier and axis attributes. If
a
@toName
concept identifier attribute is not specified, all effective relationships from the specified
@fromName
concept are included in the relationship set. (In this paragraph, from and to refer to the
source and target of a relationship, which xlink terms 'from' and 'to', and not the use of from and to
in the phrases 'From DTS' and 'To DTS'.)
It is possible to specify that the above relationships construct is to include a hierarchy of
relationships. If no
@axis
attribute is provided, then the self
axis value is implied.
If an
@axis
is provided, then the hierarchical relationships identified by the
axis attribute are the subject relationships of the respective relationships construct.
The content of the
@axis
attribute may be:
self
, representing a subject effective relationship.
child
, representing effective relationships that are immediate child relationships of the
subject effective relationship within a base set.
child-or-self
, representing the subject effective relationship and all
effective relationships that are immediate child relationships of the subject effective relationship within a base set.
descendant
, representing effective relationships that are descendants of the
subject effective relationship within a base set.
descendant-or-self
, representing the subject effective relationship and all
effective relationships that are descendants of the subject effective relationship within a base set.
DRS-child
, representing effective relationships that are immediate child relationships of the
subject effective relationship within a dimensional relationship set respecting targetRole (DRS).
DRS-child-or-self
, representing the subject effective relationship and all
effective relationships that are immediate child relationships of the subject effective relationship within a DRS.
DRS-descendant
, representing effective relationships that are descendants of the
subject effective relationship within a DRS.
DRS-descendant-or-self
, representing the subject effective relationship and all
effective relationships that are descendants of the subject effective relationship within a DRS.
The relationship sets model is used to attach versioning documentation to complex, combined structures of base sets, explicit and typed dimensions. It is used to record versioning information about:
@xbrldt:closed
and
@xbrldt:contextElement
on has-hypercube networks.
@xbrldt:usable
on dimension member networks.
For dimensional relationship sets, using the DRS- axes, the has-hypercube relationships can be
collectively modeled by an arcrole provided for version reporting purposes only:
http://xbrl.org/arcrole/2010/versioning/has-hypercube
. This arcrole represents
both all and notAll DRS arcs. Thus a single relationship specifier can identify collectively
all and notAll relationships.
For dimensional relationship sets, using the DRS- axes, the full set of primary item
relationships can be collectively modeled by an arcrole provided for version reporting purposes only:
http://xbrl.org/arcrole/2010/versioning/primary-item
. This arcrole represents
primary item inheritance relationships (domain-member), and both has-hypercube relationships
(all and notAll) DRS arcs. Thus a single relationship specifier can identify collectively
all primary-item relationships.
When specifying
@linkrole
and
@arcrole
there are conditions for when it is also necessary
to specify the
@link
and
@arc
elements, to disambiguate base sets identified by the link- and arc roles.
The
@link
and
@arc
attributes are QNames of link and arc elements
which are respectively required only when:
<link:presentationLink>
or in other than a
<link:presentationArc>
), or
Relationship set model | Example |
---|---|
<verrels:relationshipSetModelAdd>
<verrels:toRelationshipSet> </verrels:relationshipSetModelAdd><verrels:relationshipSet linkrole="http://xbrl.oracle.com/20090831/ CondensedConsolidatedBalanceSheets" arcrole="http://www.xbrl.org/2003/arcrole/parent-child"> </verrels:toRelationshipSet><verrels:relationships fromName="us-gaap:CommitmentsAndContingencies2009" toName="orcl:OracleCorporationStockholdersEquityAbstract" axis="descendant-or-self"/> </verrels:relationshipSet> |
For the SEC filing by Oracle, 2009-08-31, Oracle Corporation has added to US-GAAP a company-unique hierarchy of line items to describe their stockholders equity line items. This versioning report documents the abstract item at the head of the hierarchy of their added line items. The relationships construct is used instead of the arc construct, as the filing was downloaded from SEC's Edgar system and it is does not have an ID attribute on the indicated relationship in the SEC-filed linkbase. |
<verrels:relationshipSetModelChange>
<verrels:fromRelationshipSet> <verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/int/dim/arcrole/all"> </verrels:fromRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:closed="true"/> </verrels:relationshipSet><verrels:toRelationshipSet> </verrels:relationshipSetModelChange><verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/int/dim/arcrole/all"> </verrels:toRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:closed="false"/> </verrels:relationshipSet> |
Use case EJ-2. The relationship set model change represents all primary item has-hypercube all relations of primary item p1 in link role role1 (and p1's role1 inheritors). The closed attribute changed from true to false. Further details of dimensions and excluded dimensions were not changed (for p1 and its primary item descendants in the role1 domain relationship set), and thus further details are not required in the relationship set model event. |
<verrels:relationshipSetModelChange>
<verrels:fromRelationshipSet> <verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/int/dim/arcrole/all"> </verrels:fromRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:contextElement="scenario"/> </verrels:relationshipSet><verrels:toRelationshipSet> </verrels:relationshipSetModelChange><verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/int/dim/arcrole/all"> </verrels:toRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:contextElement="segment"/> </verrels:relationshipSet> |
Use case EJ-3. Same as EJ-2 but the contextElement from scenario to segment. |
<verrels:relationshipSetModelChange>
<verrels:fromRelationshipSet> <verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/arcrole/2010/versioning/has-hypercube"> </verrels:fromRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:contextElement="scenario"/> </verrels:relationshipSet><verrels:toRelationshipSet> </verrels:relationshipSetModelChange><verrels:relationshipSet linkrole="http://abc.com/role1" arcrole="http://xbrl.org/arcrole/2010/versioning/has-hypercube"> </verrels:toRelationshipSet><verrels:relationships fromName="dts:p1" xbrldt:contextElement="segment"/> </verrels:relationshipSet> |
The EJ-3 use case above, but considering a link role has both all and notAll relationships, both to report that their context elements changed from scenario to segment. It is not necessary to separately identify the all and notAll relationship sets, but they can be collectively referred to by the has-hypercube arcrole introduced above for version reporting purposes. |
The
@fromName
and
@toName
attributes of the
<verrels:relationships>
element MUST resolve to a valid concept definition in:
<verrels:relationships>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationships>
element is contained within a
<verrels:toRelationshipSet>
element.
The namespace that the prefixes of the
@fromName
and the
@fromName
attributes are resolved to is located in the
applicable From DTS or
To DTS by a versioning report
processor. A
@schemaLocation
attribute in a versioning report file
can not used to locate the schema file for concept identifiers.
Error code verrelse:invalidConceptReference is raised otherwise.
The
@link
attribute of the
<verrels:relationshipSet>
element MUST resolve to a valid link element
definition (e.g., derived from
<xl:extendedType>
) in:
<verrels:relationshipSet>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationshipSet>
element is contained within a
<verrels:toRelationshipSet>
element.
The namespace that the prefixes of the
@link
attribute is resolved to is located in the
applicable From DTS or
To DTS by a versioning report
processor. A
@schemaLocation
attribute in a versioning report file
can not used to locate the schema file for link elements.
Error code verrelse:invalidLinkElementReference is raised otherwise.
The
@arc
attribute of the
<verrels:relationshipSet>
element MUST resolve to a valid arc element
definition (e.g., derived from
<xl:arcType>
) in:
<verrels:relationshipSet>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationshipSet>
element is contained within a
<verrels:toRelationshipSet>
element.
The namespace that the prefix of the
@arc
attribute is resolved to is located in the
applicable From DTS or
To DTS by a versioning report
processor. A
@schemaLocation
attribute in a versioning report file
can not used to locate the schema file for arc elements.
Error code verrelse:invalidArcElementReference is raised otherwise.
The
@linkrole
attribute of the
<verrels:relationshipSet>
element MUST resolve to a valid link role in:
<verrels:relationshipSet>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationshipSet>
element is contained within a
<verrels:toRelationshipSet>
element.
The namespace that the prefix of the
@arc
attribute is resolved to is located in the
applicable From DTS or
To DTS by a versioning report
processor. A
@schemaLocation
attribute in a versioning report file
can not used to locate the schema file for arc elements.
Error code verrelse:invalidLinkrole is raised otherwise.
The
@arcrole
attribute of the
<verrels:relationshipSet>
element MUST resolve to a valid arcrole in:
<verrels:relationshipSet>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationshipSet>
element is contained within a
<verrels:toRelationshipSet>
element.Error code verrelse:invalidArcrole is raised otherwise.
For each
<relationships>
specification a relationship that is the origin of the axis implied by the
@fromName
, and further specified by any additional parameters including
@toName
,
@linkrole
,
@arcrole
,
@link
,
@arc
, and any additional attributes to match as allowed by
the
<xs:anyAttribute>
of
<relationships>
, MUST be present in:
<verrels:relationshipSet>
element is contained within a
<verrels:fromRelationshipSet>
element; or
<verrels:relationshipSet>
element is contained within a
<verrels:toRelationshipSet>
element.Error code verrelse:invalidRelationshipReference is raised otherwise.
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).
This document could not have been written without the contributions of many people.
Date | Author | Details |
---|---|---|
29 May 2010 | Herm Fischer |
Created from ideas in hypercube model of prior versioning module (renamed versioning-instance-aspects) per Brussels F2F 2010-05-25, on discontinuance of hypercube model. Relationship-sets module/model, allows DTS authors to document changes to base sets and dimensional relationship sets, of concept-to-concept relationships, replacing use of the prior hypercube model for documenting extended link roles and their dimensional relationships. |
06 June 2010 | Herm Fischer |
Added facility for DRS axis version-reporting collective arcroles has-hypercube and primary-item. |
19 July 2010 | Herm Fischer |
Editorial improvements per feedback by Suguru Washio, including adding comments on issues to be discussed. |
08 August 2010 | Herm Fischer |
Changed
Removed the ability to specify arcs by |
29 August 2010 | Herm Fischer |
Merged |
23 January 2011 | Herm Fischer |
Updated schema for QName concept identifier, fromName, link, and arc elements (named same as instance-aspects now). |
24 March 2011 | Herm Fischer |
Corrections to schema for fromName and toName to be QNames, and addition of error codes. |
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 11 May 2011. 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.