Hierarchical Codelists are used for data discovery by allowing complex hierarchies of codes to be defined, potentially from multiple different code lists. Software tools designed for users to explore and search a catalogue of data sets typically use Hierarchical Codelists to display a tree structure much like Windows File Explorer.
In SDMX 2.1, Hierarchical Codelists do not explicitly link to any other structures like Dataflows. As such, the result of a user choosing a code is left entirely to the designers of the tools.
The principal features of the Hierarchical Codelist are:
- A child code can have more than one parent.
- There can be more than one code that has no parent (known as Root codes in the Registry).
- There may be many hierarchies (or “views”) defined, in terms of the associations between the codes. Each hierarchy serves a particular purpose in the reporting, analysis, or dissemination of data.
- The levels in a hierarchy can be explicitly defined or they can be implicit: (i.e., they exist only as parent/child relationships in the coding structure).
|Structure Type||Standard SDMX Structural Metadata Artefact|
|SDMX Information Model Versions||2.0, 2.1|
|URN - HierarchicalCodelist namespace||urn:sdmx:org.sdmx.infomodel.codelist.hierarchicalcodelist|
Context within the SDMX 2.1 Information Model
Codes used in the Hierarchical Codelist are not themselves contained in the list. Instead, they are referenced from the lists and are therefore maintained in one of more Codelists. In the Registry, these are known as Referenced Codelists.
A Hierarchical Codelist may contain many hierarchies and is multi-lingual.
Heirarchial Codelist IDs IDs are conventionally uppercase using underscores '_' as separators if required.
Note that organisations wishing to be compliant with accepted models for statistical classifications should ensure that the Id is the number associated with the Level, where Levels are numbered consecutively starting with level 1 at the highest Level.