Views: 15
XBRL GL Taxonomy 2025: Dual-Support for Tuple and Dimensional xBRL-CSV
2025-04-13
This document describes the preparation and verification process for the revised XBRL GL taxonomy that supports both traditional tuple-based taxonomy and modern xBRL-CSV dimensional format. The final output is packaged in the zip file
gl2025-04-12.zip
.
1. Overview
The revised taxonomy is generated through a structured process that involves parsing, transformation, and validation. Below is a summary of the workflow.
This directory contains the revised XBRL GL taxonomy, supporting both the traditional palette (tuple-based) taxonomy and the modern xBRL-CSV dimensional taxonomy.
The updated taxonomy was produced through a structured workflow using a set of Python scripts. This workflow enables generation and validation of both schema and instance documents.
2. Workflow Steps
-
Copy the palette taxonomy from the 2016 PWD version.
-
Analyse the copied taxonomy using
xBRLGL_ParseTaxonomy.py
to generate the Logical Hierarchical Model (LHM) CSV. -
Use
xBRLGL_TaxonomyGenerator.py
with the LHM CSV to generate two XSD schema files:-
gl-plt-all-2025-12-01.xsd
: Tuple-based traditional taxonomy -
gl-plt-oim-2025-12-01.xsd
: xBRL-CSV dimensional taxonomy
-
-
Copy and update instance documents in the
ids/
directory to reference the newgl-plt-all-2025-12-01.xsd
, and validate them with XMLSpy and Arelle. -
Run
xBRLGL_StructuredCSV.py
on updated instances to generate xBRL-CSV instances (CSV + JSON metadata). -
Validate the structured CSV files with Arelle’s OIM support.
3. Directory structure
gl2025-04-12/
├── bus/
├── cor/
├── ehm/
├── ids/
│ ├── 1-GL-Generic-simple-context.xml
│ ├── Vendor_Invoices.xml
│ └── ...
├── muc/
├── OIM/
│ ├── 1-GL-Generic-simple-context.csv
│ ├── 1-GL-Generic-simple-context.json
│ ├── Vendor_Invoices.csv
│ ├── Vendor_Invoices.json
│ └── ...
├── plt/
│ ├── gl-plt-all-2025-12-01.xsd
│ ├── gl-plt-oim-2025-12-01.xsd
│ ├── gl-plt-def-2025-12-01.xsd
│ └── ...
├── ...
4. Step-by-Step Instructions
4.1. Copy the Palette Taxonomy (2016)
-
Use the official 2016 PWD version of the XBRL GL taxonomy as the starting point.
4.2. Parse the Taxonomy
-
Use the following script:
# xBRL-GL_ParseTaxonomy.py
# Extracts the hierarchical model and metadata
Output:
– XBRL_GL_Structure.csv
: contains semantic structure and metadata
– Example
sequence | level | type | identifier | name | datatype | multiplicity | domain_name | definition | module | table | class_term | id | path | semantic_path | abbreviation_path | label_local | definition_local | element | xpath |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 |
1 |
C |
Accounting Entries |
1..* |
Root for XBRL GL. No entry made here. |
gl-cor |
xBRL |
$.Accounting Entries |
AccntgEntrs |
【会計仕訳】 |
XBRL GLのルート要素。 この要素にはデータは登録されない。 |
gl-cor:accountingEntries |
/xbrli:xbrl/gl-cor:accountingEntries |
||||||
1 |
2 |
C |
Document Information |
1..1 |
Parent for descriptive information about the accountingEntries section in which it is contained. |
gl-cor |
Document Information |
$.Accounting Entries.Document Information |
AccntgEntrs_DocmntInfrmn |
【文書情報】 |
この会計仕訳に関する情報の親タグ。 |
gl-cor:documentInfo |
/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:documentInfo |
||||||
2 |
3 |
A |
Document Type |
xbrli:tokenItemType |
1..1 |
account: information to fill in a chart of accounts file. balance: the results of accumulation of a complete and validated list of entries for an account (or a list of account) in a specific period – sometimes called general ledger etc. |
gl-cor |
Document Information |
$.Accounting Entries.Document Information.Document Type |
AccntgEntrs_DocmntInfrmn_DocmntType |
文書種別 |
・科目:科目体系ファイルの情報。 ・残高:特定の期間について、勘定科目(または勘定科目リスト)の、完了し検証された仕訳リストの累算結果。時に総勘定元帳と呼ばれる。他 |
gl-cor:entriesType |
/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:documentInfo/gl-cor:entriesType |
4.3. Generate Revised Taxonomies
-
Use the generator script:
# xBRLGL_TaxonomyGenerator.py
# Generates:
# - gl-plt-all-2025-12-01.xsd (tuple-based)
# - gl-plt-oim-2025-12-01.xsd (dimensional xBRL-CSV)
4.4. Validate Schema and Instance
-
Sample instances in
ids/
directory are updated to referencegl-plt-all-2025-12-01.xsd
-
Validated with:
-
Altova XMLSpy (XBRL aware)
-
Arelle (open-source XBRL processor)
-
The following figure shows an example XBRL-GL instance document referencing the newly generated gl-plt-all-2025-12-01.xsd
taxonomy. This document has been validated successfully using XMLSpy and Arelle.

This instance demonstrates the use of the traditional tuple-based structure from the revised palette taxonomy. It includes elements like gl-cor:entryHeader
and gl-cor:entryDetail
, nested under gl-cor:accountingEntries
. The new taxonomy ensures these elements are also compatible with the xBRL-CSV dimensional structure for enhanced usability and conversion.
Note
|
The root schema reference in the instance document: |
<xbrli:xbrl
xmlns:xbrli="http://www.xbrl.org/2003/instance"
xmlns:gl-cor="http://www.xbrl.org/int/gl/cor/2025-12-01"
...
xsi:schemaLocation="http://www.xbrl.org/int/gl/plt/2025-12-01 ../plt/gl-plt-all-2025-12-01.xsd">
4.5. Convert to xBRL-CSV
-
Use:
# xBRLGL_StructuredCSV.py
# Converts XBRL GL instance to structured CSV + JSON metadata
Command-line example:
python xBRLGL_StructuredCSV.py \
-i gl/ids/Vendor_Invoices.xml \
-n 2025-12-01 \
-s XBRL_GL_Structure.csv \
-o gl/OIM/Vendor_Invoices.csv \
-e utf-8-sig -v -d
Output:
– Vendor_Invoices.csv
– Vendor_Invoices.json
4.6. Validate xBRL-CSV Instances
-
Final CSV/JSON pairs are validated using Arelle with xBRL-CSV plugin enabled.
The following image shows a structured xBRL-CSV
representation of a Vendor Invoice. This CSV was generated from the corresponding XBRL-GL instance document using the xBRLGL_StructuredCSV.py
script.

This xBRL-CSV
instance includes dimensional values and associated properties extracted from the XBRL-GL tuples. Below is an excerpt of typical columns related to entryHeader
and entryDetail
:
5. Scripts Overview
5.1. xBRL-GL_ParseTaxonomy.py
-
Parses original
.xsd
schema files -
Generates semantic model (
LHM
) in CSV
5.2. xBRLGL_TaxonomyGenerator.py
-
Reads the
LHM CSV
-
Produces both tuple-based and dimensional taxonomies
5.3. xBRLGL_StructuredCSV.py
-
Reads XBRL GL XML instance
-
Generates structured
tidy
CSV + JSON metadata conforming to xBRL-CSV
5.4. run_with_parameter.bat
-
Batch launcher for structured CSV conversion
-
Accepts instance name and other args
5.5. test_run.bat
-
Test version with hardcoded example instance
6. Conclusion
This dual-support taxonomy provides a flexible way to represent accounting data using both classic tuple and modern xBRL-CSV standards. All scripts and transformations are aligned with the ISO/IEC and XBRL GL profiles and validated across multiple tools.
7. Download
The final output, including the revised taxonomy and instance documents, is packaged in the following ZIP file:
This archive contains:
-
Revised XBRL GL schemas (
gl-plt-all-2025-12-01.xsd
,gl-plt-oim-2025-12-01.xsd
,gl-plt-def-2025-12-01.xsd
) -
Sample instance documents in
ids/
-
xBRL-CSV output files (CSV + JSON metadata) in
OIM/
-
Supporting structure and batch scripts
Leave a Reply