Extension Taxonomy Process Overview
You can use CDM to create or edit an extension taxonomy.
Generally, when you create or edit an extension taxonomy, you must complete the following main tasks:
- Define an extension taxonomy namespace.
- Create relationship groups for the extension taxonomy.
- Define required element properties.
- Add abstract elements to the hierarchy.
- Add new or existing elements to the hierarchy.
- Define presentation relationships.
- Define calculation relationships.
- Define dimensional relationships.
- Validate the extension taxonomy.
- Generate the schema document and linkbase files.
Step 1: Define a Namespace for the Extension Taxonomy
The first step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to define the taxonomy name and file name convention.
A namespace is a uniform resource identifier (URI) that provides a unique name to associate with the element, attribute, and type definitions in an XML schema or with the names of elements, attributes, types, functions, and errors in XQuery expressions. The namespace definition will be used when you create relationship groups within the taxonomy.
When you create a namespace, it should be in the following format: http://www.{company}.com/{period}, where company is the company name, and period is the reporting period end date.
Step 2: Create Relationship Groups
The second step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to create relationship groups for the extension taxonomy. Relationship groups are also known as roles.
A relationship group is a set of relationships between XBRL concepts. A relationship group is defined as a role in the XBRL Specification. Use the following format for a relationship group: http://{company URL}/role/{Description}, where company URL is the company URL, and Description is the group description (for example, 00010 - Statement - Statement of Earnings).
Step 3: Define Required Element Properties
The third step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to define properties for new elements in the extension taxonomy.
An element is a basic unit consisting of a start tag, end tag, associated attributes and their values, and any text that is contained between the two. You can define properties for elements such as name, ID, balance, period type, type, and abstract value. Additionally, you can assign required label properties (label text, label type, language) for the new labels that you create. You can set these parameters before you add new elements to relationship groups.
Step 4: Add an Abstract Heading Element
The fourth step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to add an abstract heading element.
You can use an abstract heading element to nest and order elements in the taxonomy for presentation.
Step 5: Add Elements (Line Items)
The fifth step in creating or editing an extension taxonomy in the CDM XBRL is to add elements, also known as line items. You can create new elements, or you can source them from a base taxonomy (for example, US GAAP).
Line items elements must be added to the Primary Items pane if there are dimensions. Line item elements associate only with a table.
For new elements that you create, required properties are assigned automatically. You can edit their properties within a taxonomy editor. Elements that are sourced from the base taxonomy contain predefined properties that are not editable.
You can copy elements between relationship groups. Additionally, you can create links between elements.
Step 6: Define Presentation Relationships
The sixth step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to define presentation relationships.
You can use a presentation relationship to arrange elements in the order that they would typically appear in published financial statements. You can arrange these elements in a tree format (parent-child and sibling relationships). You can also use labels and preferred label types to determine the physical appearance and behavior of each element.
Create labels for elements
You can create multiple labels for each element, but each element must have one primary label. Each label that you create has a label and language type.
Select a preferred label type for each element
Select a preferred label type to indicate what label type the element displays on a presentation relationship. If you do not select a preferred label type, the default standard label is used. An example of a label type is Negated. If an element has a preferred label type of Negated, all numbers on the same row of the line item have all their signs flipped.
Step 7 (Optional): Define Calculation Relationships
The seventh step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to define calculation relationships.
You can use a calculation relationship to specify which elements in a group are totals, and which elements are combined to make totals. This step is optional. Calculation relationships are used to ensure the accuracy of the accounting equations that constitute reports.
Step 8: Define Dimensional Relationships
The eighth step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to define dimensional relationships.
Multidimensionality is useful for taxonomy modeling in environments when the disclosed information is in tables.
You define dimensional relationships in tables. These tables have two or more axes, for example, rows, columns, and pages. Tables are used to present the information in a meaningful way for the user. A table that defines dimensional relationships supports user queries and helps to display information according to defined breakdowns.
The following illustration shows the structure of a dimensional relationship:
Create tables
A table is an abstract element, and the dimension, domain, and domain member elements must be subordinate to it.
Create axes
An axis is an abstract element that is a child of a table. Each axis represents the different ways in which data can be classified. You can use the same axis in different tables, but with some limitations.
Create domains
A domain represents the collection of elements, or domain members, along a particular axis. In US GAAP taxonomies, domains are also abstract elements.
Create domain members
A domain member is one of several individual elements along an axis. In US GAAP taxonomies, domain members are also abstract elements.
Step 9: Validate the Extension Taxonomy
The ninth step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to validate the extension taxonomy against a set of rules that are defined by the SEC.
Validation is performed when an extension taxonomy is saved or generated.
Step 10: Generate the Schema Document and Linkbase Files
The last step in creating or editing an extension taxonomy in the CDM Extension Taxonomy Editor is to generate the schema document and linkbase files.
A linkbase is a collection of XML Linking Language (XLink) extended links that can be used to document the semantics of concepts in a taxonomy.