Was sind wichtige Aspekte im MIO-Kontext? Einbindung von Terminologien

Hallo und willkommen zu Per Anhalter durch das MIOVersum. In diesem Video möchten wir dir zeigen, wie in unseren MIOs Terminologien eingebunden werden.

Terminologien können auf zwei Arten in unseren MIOs eingebunden werden: durch vorgegebene Werte oder durch Auswahl aus Wertelisten. Als Erstes stellen wir dir die Einbindung von Terminologien durch vorgegebene Werte vor. Dabei kann mithilfe von Fixed values und Patterns ein bestimmter Code in einem Datenelement festgelegt werden. 

Im vorliegenden Beispiel soll das Coding kenntlich machen, dass dieses Observation-Profil den Schwangerschaftsstatus einer Person abbildet. Dies geschieht mit einem entsprechenden Code aus der LOINC®-Terminologie. Aus dieser Festlegung ergeben sich bestimmte Werte für die Unterelemente des Elements code.coding. Lass uns diese einmal gemeinsam durchgehen.

Neben dem Code ist demnach also der Displaywert, das Codesystem und dessen Version festgelegt, wodurch eine eindeutige Terminologieassoziation entsteht.

Mithilfe von Fixed values und Patterns kann auch lediglich das Codesystem vorgegeben sein. Es besteht in diesem Fall eine freie Codewahl, solange der Code aus dem bereits vorgegebenem Codesystem stammt.

Dieses Beispiel enthält im Element code.coding einen Slice namens "ask". In diesem Slice darf nur das Codesystem ASK genutzt werden. Diese Vorgabe wird durch den Fixed Value auf dem Unterelementsystem definiert.

Der Fixed Value hier lautet "http://fhir.de/CodeSystem/ask". Das Codesystem ist hiermit vorgeschrieben, die übrigen Werte des Coding-Elements jedoch nicht. Jeder Code aus jeder Version des Codesystems ASK ist hier erlaubt.

Neben Fixed Values und Patterns, gibt es noch eine weitere Möglichkeit, Terminologien einzubinden: die Assoziation von Wertelisten zu Datenelementen durch das sogenannte ValueSet-Binding. In unserem Beispiel ist dies der Fall bei dem Element "type".

Elemente, für die ein ValueSet-Binding vorliegt, sind durch ein blaues Feld mit dem Schriftzug "Binding" gekennzeichnet.

ValueSets schreiben eine bestimmte Wertemenge für Elemente vor. Anders als im vorherigen Beispiel müssen die in dem ValueSet enthaltenen Codes allerdings nicht zwangsläufig aus demselben Codesystem stammen. Ein ValueSet kann demnach Codes aus mehreren verschiedenen Quellcodesystemen umfassen. Hier gilt die Regel: Solange der eingetragene Code im vorgegebenen ValueSet enthalten ist, wird die hier festgelegte Vorgabe erfüllt.

Welches ValueSet, also welche Wertemenge für ein Element vorgegeben ist, kannst du im Informationsfenster sehen.

Für das Element type ist das ValueSet "AllergyIntoleranceType" festgelegt. Wenn du auf den Link des ValueSets klickst, erhältst du mehr Informationen dazu.

Hinter dem festgelegten ValueSet steht außerdem noch ein Wort in Klammern, das dir Auskunft über die Stärke des ValueSet-Bindings gibt.
Die verschiedenen ValueSet-Binding-Stärken bestimmen wie schwerwiegend ein Abweichen von der Vorgabe für die Validität des Profils im Hinblick auf unsere MIO-Spezifikation ist. Schauen wir uns das einmal genauer an.

Ein ValueSet-Binding mit der Stärke "example" dient lediglich zur Orientierung. Hier wird in keiner Weise verlangt, dass einer der Werte aus dem ValueSet für die Codierung genutzt werden muss.

Die Binding-Stärke "preferred" gibt einige mögliche Werte vor. Ihre Nutzung wird empfohlen, allerdings führt ein Abweichen von diesen Werten nicht dazu, dass das Profil ungültig wird.

Bei der Binding-Stärke "extensible" ist es schon ein wenig strenger. Die in dem ValueSet enthaltenen Werte sollen genutzt werden, wenn sie auf das zu codierende Konzept zutreffen. Nur wenn keiner der Werte im ValueSet zutreffend ist, darf hier ein Code verwendet werden, der nicht im ValueSet enthalten ist.

Die Binding-Stärke "required" schreibt exakt vor, welche Werte für eine Codierung genutzt werden können. Wenn für ein Element mit dieser Binding-Stärke ein Wert eingetragen wird, der nicht im ValueSet vorkommt, dann ist damit das gesamte Profil ungültig.

Neben den Datentypen CodeableConcept, Coding und code können ValueSet-Bindings auch für die Datentypen Quantity, string und uri vorliegen.

Damit hast du einen ersten Überblick darüber, wie Terminologien in unsere MIOs eingebunden werden. Vielen Dank für's Zuschauen!