IDRT - Integrated Data Repository Toolkit
Space shortcuts
Space Tools
Skip to end of metadata
Go to start of metadata


Medical terminologies play a vital role in health care as in clinical research. Their main purpose is to support semantic interoperability - giving a concept an universally understood meaning by annotating it with a code from a controlled vocabulary. The idea is not only to have a complete, well-defined set of concepts, but also to have an idea whether a data element from a different data source is equivalent to an already existing data element, so that one can combine the two data elements into one and modify facts referencing the concepts accordingly (schema and data mapping). The result is easier to query and easier to maintain in the long term.

Being an US development, i2b2 has some terminologies included that are used in the United States (ICD-9, RxNorm). Since the IDRT projects focuses on Germany, support for a number of medical classification systems has been added.

Covered Terminologies


ICD-10 is the 10th revision of the International Statistical Classification of Diseases and Related Health Problems, mainly used for diagnosis. It is maintained by the WHO and most prevalent classification worldwide.

ICD-10 allows for country-specific subcodes. GM stands for German Modification, which means that the leading three character of every code are harmonized world-wide, the sub-classification is specific to Germany. The IMT parses for this pattern.


OPS (Operationen- und Prozedurenschlüssel) is the German modification of the ICPM, responsible for classification of operational procedures.


Logical Observation Identifiers Names and Codes (LOINC) was initially developed as a standard for laboratory observations. Today, it has a broader spectrum, for instance it contains document types in a hospital. LOINC is maintained by the Regenstrief Institute and has no special variant for Germany.


DRG (Diagnosis Related Groups) tries to find common groups for hospital cases depending on the primary diagnosis and procedures done. DRGs are also dependent on some demographic parameters, complications or comorbidities. Every DRG has a code; the code has a corresponding value in Euro that is paid by the health insurance indifferent of the expenses the hospital invested in the case (claims data).


§ 21 KHEntgG is a paragraph of a German law that obligates hospitals to report all inpatient cases in a defined data structure to the health insurances. The advantage of this data set for clinical research is simply its existence in every hospital and its well-defined type and extent. P21 provides some additional information to the DRG.


ICD-O stands for International Classification of Diseases for Oncology an as the name suggests, it is an extension of ICD to better represent oncological diseases. It is often used in epidemiological cancer registries.


The TNM Classification of Malignant Tumours is a system to describe size, spread to lymph nodes and metastasis for solid tumors in oncology.


MedDRA (Medical Dictionary for Regulatory Activities) is a terminology mainly used to describe and classify Adverse Events in clinical trials. Its use is mandatory in the European Union.

MedDRA is not free to use but one has to buy a license. Therefore, it can't be included in the IMT by default.

Using Terminologies with the IMT

Importing all the terminologies is simple. Just select the staging server i2b2 instance and choose Import Data >> Import Standardterminologies.

Standard terminologies have no use on their own. If you don't have clinical data coded with a certain terminology, it's useless to import them.

The primary usage scenario is when you have data elements like admission diagnosis coded in ICD-10 or lab results coded in LOINC. Without an underlying terminology, you would have a very large lists of i2b2 leafs each representing one code. That is hard to handle for the user because of the sheer size, but also because nobody knows what all the codes stand for. Selecting all neoplasms for an i2b2 query, for instance, would mean to search and select about 150 terms.

With the help of the ontology editing capabilities of the IMT, it's possible to replace this large list of codes with the convenient hierarchical structure of the ICD classification.

This detailed example is part of Edit i2b2 Ontology >> Merging items with terminologies..


  • No labels


  1. Anonymous

    How are variations in formatting of codes handled? E.g. for ICD9: 250.9 vs 25090 vs ICD9:250.9

  2. Anonymous

    How do we implement support for new terminologies? E.g. SNOMED-CT?