Appearance
CIPC Taxonomy Example
This is an analysis of the CIPC XBRL Taxonomy 2024, staged in this vault as raw source material under docs/Sources/xbrl/cipc_2024-09-30/ (open it in an XBRL processor such as Arelle to follow along). It's a complex, real-world example of how taxonomies are built for national regulatory reporting.
What Is CIPC?
The Companies and Intellectual Property Commission is South Africa's corporate regulator. It was the first regulator in Africa to implement full-scale 13 Inline XBRL (July 2018). See 17 XBRL Global Adoption.
Package Structure
cipc_2024-09-30/
├── META-INF/
│ ├── taxonomyPackage.xml ← Package manifest
│ └── catalog.xml ← URL remapping
└── xbrl.cipc.co.za/taxonomy/2024-09-30/
├── def/ ← Definition schemas (base concepts)
│ ├── ca/ ← Companies Act concepts
│ │ ├── cipc_ca-cor_2024-09-30.xsd ← Core CA schema
│ │ ├── enumerations/ ← Enumeration lists
│ │ ├── fdn/ ← Foundation schemas
│ │ └── labels/ ← CA-specific labels
│ ├── coops/ ← Co-operatives Act concepts
│ ├── grap/ ← Government accounting (GRAP)
│ ├── mfma/ ← Municipal Finance Management Act
│ ├── pfma/ ← Public Finance Management Act
│ └── sds/ ← Sustainability (IFRS S1/S2)
└── rep/cipc/ ← Reporting entry points
├── full_cipc_entry_point_*.xsd ← 15 entry points
├── dimensions/ ← Dimension definition linkbases
├── formula/ ← Validation formula linkbases
├── labels/ ← Generic labels
├── linkbases/ ← Presentation, calculation, definition
│ ├── ca/ ← Companies Act linkbases
│ ├── coop/ ← Co-operatives linkbases
│ ├── full_ifrs/ ← Full IFRS linkbases
│ ├── grap/ ← GRAP linkbases
│ └── ifrs_smes/ ← IFRS for SMEs linkbases
└── references/ ← Reference linkbasesThe 15 Entry Points
The taxonomy provides entry points for different reporting frameworks:
Financial Statements
| Entry Point | For |
|---|---|
| Full IFRS | Companies using full International Financial Reporting Standards |
| IFRS for SMEs | Small and medium enterprises |
| Financial Accountability Supplement (CA-FAS) | Companies Act supplement |
| GRAP | Government (Generally Recognised Accounting Practice) |
| Co-ops (A1) | Small co-operatives |
| Full IFRS Co-ops (A2, B, C, others) | Larger co-operatives using full IFRS |
| IFRS for SMEs Co-ops (A2, B, C, others) | Co-operatives using SME standards |
With Sustainability Disclosures
Each of the above also has a version with sustainability parts (IFRS S1/S2), plus a standalone:
| Entry Point | For |
|---|---|
| S1/S2-only | Sustainability disclosures only |
How the Full IFRS Entry Point Works
The file full_cipc_entry_point_full_ifrs_2024-09-30.xsd is a masterful example of DTS construction:
Imports (Base Schemas)
xml
<xsd:import namespace="https://xbrl.cipc.co.za/taxonomy/ca"
schemaLocation="../../def/ca/cipc_ca-cor_2024-09-30.xsd" />
<xsd:import namespace="https://xbrl.ifrs.org/taxonomy/2024-03-27/ifrs-full"
schemaLocation="https://xbrl.ifrs.org/taxonomy/2024-03-27/full_ifrs/full_ifrs-cor_2024-03-27.xsd" />It imports:
- The CIPC Companies Act schema (local, SA-specific concepts)
- The IFRS Foundation full IFRS schema (international, from xbrl.ifrs.org)
Referenced Linkbases
The entry point references over 160 linkbase files:
| Type | Count | Purpose |
|---|---|---|
| Label | ~6 | CIPC labels, IFRS labels, documentation labels, generic labels |
| Calculation | ~40 | Arithmetic validation for each financial statement section |
| Presentation | ~65 | Display structure for each report section |
| Definition | ~35 | Dimensional relationships and hypercubes |
| Reference | 2 | Links to IFRS standards and Companies Act sections |
| Formula | 1 | CIPC-specific validation rules |
| Dimension | 3 | Hypercube definitions |
Linkbase Naming Convention
The CIPC taxonomy follows clear naming patterns:
| Prefix | Type | Example |
|---|---|---|
cal_ | Calculation | cal_cipc_full_ifrs_2024-09-30_role-210000.xml |
pre_ | Presentation | pre_cipc_full_ifrs_2024-09-30_role-210000.xml |
def_ | Definition | def_cipc_full_ifrs_2024-09-30_role-802200.xml |
dim_ | Dimensions | dim_cipc_full_ifrs_2024-09-30_role-990000.xml |
lab_ | Label | lab_cipc_ca-en_2024-09-30.xml |
gla_ | Generic label | gla_cipc-en_2024-09-30.xml |
ref_ | Reference | ref_cipc_full_ifrs_2024-09-30.xml |
for_ | Formula | for_cipc_full_ifrs_2024-09-30.xml |
rol_ | Role definitions | rol_cipc-ca_2024-09-30.xsd |
Role Numbers
The numeric suffixes correspond to financial statement sections:
| Role | Section |
|---|---|
210000 | Statement of Financial Position (Balance Sheet) |
220000 | Statement of Comprehensive Income |
310000 / 320000 | Statement of Cash Flows |
410000 / 420000 | Statement of Changes in Equity |
510000 / 520000 | Notes disclosures |
610000 | Additional disclosures |
700000 | Entity information |
800xxx | Detailed note disclosures |
850xxx | Companies Act specific sections |
990000 / 999999 | Dimensional structures |
The URL Remapping (catalog.xml)
xml
<rewriteURI
uriStartString="https://xbrl.cipc.co.za/taxonomy/2024-09-30/"
rewritePrefix="../xbrl.cipc.co.za/taxonomy/2024-09-30/"/>This maps the public URL https://xbrl.cipc.co.za/taxonomy/2024-09-30/ to the local directory, enabling offline processing. See 12 Taxonomy Packages.
Definition Schemas (def/ directory)
The def/ directory contains base concept definitions for South African-specific reporting:
| Directory | Framework | Purpose |
|---|---|---|
ca/ | Companies Act | Concepts specific to SA Companies Act |
coops/ | Co-operatives Act | Co-operative-specific concepts |
grap/ | GRAP | Government accounting concepts |
mfma/ | MFMA | Municipal finance concepts |
pfma/ | PFMA | Public finance concepts |
sds/ | IFRS S1/S2 | Sustainability disclosure concepts |
Each contains:
- A core schema (
*-cor_2024-09-30.xsd) defining concepts - Label files for human-readable names
- Some have enumeration definitions (predefined value lists)
What This Example Teaches
- Real-world complexity: a production taxonomy with 160+ linkbase files
- Extension architecture: how CIPC extends the international IFRS taxonomy with local requirements
- Multiple entry points: 15 different starting points for different entity types
- Naming conventions: systematic file naming makes the taxonomy navigable
- Multi-framework support: one package covers IFRS, SMEs, GRAP, Co-ops, Companies Act, and Sustainability
- All five linkbase types in action: labels, presentation, calculation, definition, reference
- URL remapping: how taxonomy packages enable offline use