Terminologieserver

Aus HL7 Austria MediaWiki
Wechseln zu: Navigation, Suche

1 Allgemeines

Der Terminologieserver soll den Stakeholdern des österreichischen Gesundheitswesens die Möglichkeit bieten, eigene Terminologien über das Internet öffentlich zur Verfügung zu stellen, sowie Terminologie-Recherche und Terminologie-Download ermöglichen. Er unterstützt sowohl redaktionelle Arbeiten als auch die Übersetzung und Versionierung von Terminologien und hilft einheitliche, eindeutige und geprüfte Terminologien zu verwenden.

Die Verwendung von gemeinsamen Codelisten und medizinischen Vokabularen ist eine Voraussetzung für das organisationsübergreifende Zusammenwirken von IT-Systemen im Gesundheitswesen. Nur in allen beteiligten Systemen gleich verwendete Codes ermöglichen die korrekte inhaltliche Interpretation und Verarbeitung der zwischen Medizin-IT-Systemen ausgetauschten Daten (semantische Interoperabilität). Dazu ist es notwendig, dass die Codes und ihre Bedeutung bei einer vertrauenswürdigen Quelle zuverlässig zur Verfügung stehen. Diese notwendige Funktion wird durch die Infrastrukturkomponente „Terminologieserver“ unterstützt.

Medizinische Terminologien unterliegen wie die Medizin selbst einer stetigen Veränderung, sie müssen daher immer wieder aktualisiert werden. Die Verwendung einheitlicher und qualitätsgesicherter Terminologien bildet die Grundlage der semantischen Interoperabilität. Alle Kommunikationsteilnehmer müssen dieselben Codes und ihre Bedeutung in der jeweiligen Terminologie kennen. Sollte dies nicht der Fall sein, können Codes nicht korrekt interpretiert werden, was zu Fehlern in der Kommunikation und in der Anwendung führen kann. Da sich in Kommunikationsnetzwerken mit hunderten oder tausenden teilnehmenden Systemen die Verteilung der semantischen Bezugssysteme nicht mehr manuell bewerkstelligen lässt, muss die lokale Semantik automatisch mit der zentralen Semantik synchronisiert werden können.

2 Beschreibung des Terminologieservers

Ein Terminologieserver stellt Terminologien in standardisierter Form für Benutzer zur Verfügung. Dadurch wird die semantische Interoperabilität in verteilten Systemen unterstützt. Mit den Services ist es möglich, lokale Semantik mit global vereinbarter Semantik zu synchronisieren und aktuell zu halten. Terminologieserver stellen einerseits Dienste zum manuellen oder automatischen Abruf von Vokabularen, andererseits zur automatisierten Synchronisation dezentral verwalteter Vokabulare bereit.

Über eine Web-Anbindung können Vokabulare veröffentlicht werden: Primärsysteme können ihre lokalen Terminologien via Webservices synchronisieren und pflegen, Endbenutzer können auf Terminologien über eine Weboberfläche zugreifen. Wesentlich ist, dass die Daten eine hohe Strukturierung aufweisen und sich automatisch verarbeiten lassen.

Auf dem österreichischen Terminologieserver werden alle Terminologien, die für den Einsatz in ELGA notwendig sind, verwaltet. Die Benutzeroberfläche trennt Codelisten und Value Set. Zu jeder Terminologie können Versionen angezeigt werden. Im rechten Bereich öffnet sich die gewünschte Version, um alle Konzepte (ggf. mit Hierarchie) anzuzeigen. Es kann sowohl innerhalb einer Terminologie als auch über alle Codelisten oder Value Sets gesucht werden. Jede Version kann exportiert werden. Details dazu entnehmen Sie bitte dem Benutzerhandbuch Publikationsumgebung, das Sie am Terminologieserver unter „Hilfe“ finden [1]. Über die Detailansicht (Rechtsklick) können weitere Informationen zur Terminologie bzw. ihrer Version angezeigt werden, etwa das „gültig ab“ Datum.

3 Definitionen

Codesystem: Bezeichnung für eine Sammlung von computerverarbeitbaren Codes („Codeliste“) und ihren , zusammen mit dem zugehörigen Regelwerk (Regeln zur Codierung von Begriffen, Benennung etc.).

Value Set: Eine eindeutig identifizierbare und versionierte Auswahl von Werten aus einem oder mehreren Codesystemen für eine bestimmte Anwendung bzw für ein Element einer Anwendung (etwa für CDA-Laborbefunde, für XDS-Metadaten etc.). Ein Value Set enthält die Codes selbst sowie die Information über die Herkunft des Codes (die Quell-Terminologie).

Terminologie: Allgemeiner Begriff für zur elektronischen Verarbeitung nutzbar gemachte Sammlungen von Konzepten und ihren Identifikatoren („Codes“). Darunter fallen Codesysteme, Value Sets, Vokabulare, Ontologien etc.

Terminologieserver: Ein Server, der Terminologien in standardisierter Form aktuell verfügbar macht. Der Terminologieserver ist eine Komponente der österreichischen e-Health Infrastruktur (https://termpub.gesundheit.gv.at/). Ein Terminologieserver ist eine Datenbankanwendung mit der Terminologien, also „Codelisten“, im weitesten Sinn verwaltet und zugänglich gemacht werden können. Die Daten enthalten neben fachlichen Erläuterungen auch verschiedene Meta-Informationen (z.B. Quelle).

4 Technischer Aufbau des Terminologieservers

Der Terminologieserver besteht aus zwei getrennten Systemen mit getrennter Datenhaltung: der Publikationsumgebung für den öffentlichen Zugriff und der Kollaborationsumgebung für die Terminologie-Entwicklung und –Wartung. Neuanlagen von Terminologien bzw. Terminologie-Versionen werden in der Kollaborationsumgebung durchgeführt. Die Freigabe durch den Terminologie-Administrator hat die Überstellung in die öffentlich erreichbare Publikationsumgebung zur Folge.

4.1 Publikationsumgebung

Auf der Publikationsumgebung stehen (nicht angemeldeten) Terminologieserver Benutzern folgende Funktionen zur Verfügung:

  • Zugriff auf veröffentlichte Terminologien und Value Sets in einer Baumdarstellung
  • Terminologie- und Konzeptsuche
  • Terminologie-Export
  • Stellen von Anfragen zur aktiven Mitarbeit an der Terminologieentwicklung als Diskussionsteilnehmer
  • Einblick in die aktuelle Vorgänge der Terminologieentwicklung

4.2 Kollaborationsumgebung

Die Kollaborationsumgebung ist eine Komponente des Terminologieservers und dient der kollaborativen Bearbeitung der Terminologien. Hier können neue Terminologien entwickelt werden oder von externen Organisationen zur Verfügung gestellte Terminologien getestet werden, bevor sie in die Publikationsumgebung transferiert und veröffentlicht werden. Der Zugang zu der Kollaborationsumgebung ist nur ausgewählten Rollen bzw. Personen gestattet.

4.3 Beschreibung des Objektstatus

Im Zuge der Terminologieentwicklung in der Kollaborationsumgebung können Objekte (zB. Terminologien, Konzepte) folgende verschiedene Status annehmen:

Vorgeschlagen: Der zuständige Inhaltsverwalter prüft den Vorschlag und kann ihn ablehnen, zur Diskussion stellen oder freigeben. Vorschläge sind für angemeldete Benutzer in der Baumdarstellung sichtbar.

Abgelehnt: Der Vorschlag wird vom zuständigen Inhaltsverwalter abgelehnt.

In Diskussion: Berechtigte Diskussionsteilnehmer können für eine vorgegebene Zeitdauer über den Vorschlag diskutieren bzw. über ihn abstimmen.

In Produktion: Der Vorschlag ist akzeptiert, die betroffene Terminologie wird vom zuständigen Inhaltsverwalter zur Publikation durch den Terminologie-Administrator freigegeben.

In Publikation: Die betroffene Terminologie wird veröffentlicht (für alle TS-Benutzer sichtbar) und kann auf dem Publikationssystem nicht mehr geändert werden (nur noch Statuswechsel zu obsolet möglich).

Obsolet: Der Status wird zur Kennzeichnung veralteter Versionen eingesetzt, wenn bereits eine neue Version existiert. Anschließend ist nur noch ein Deaktivieren möglich.

5 Rollen und Rechte

Im Folgenden sind die unterschiedlichen Rollen von Terminologieserver-Benutzern aufgelistet.

5.1 Terminologie-Consumer

Ein Terminologie-Consumer kann die auf dem Terminologieserver zur Verfügung gestellten Terminologien auf zwei Arten nutzen:

  • Webfrontend-Nutzer können via Internetbrowser auf den Terminologieserver zugreifen und allgemein zugängliche Funktionalitäten wie manuelle Recherche und Download von Terminologien nutzen. Weiters kann ein Kontaktformular aufgerufen werden, um eine Anfrage zur aktiven Mitarbeit an der Terminologieentwicklung als Diskussionsteilnehmer oder als Inhaltsverwalter einer Terminologie gestellt werden. Aktuelle Ereignisse (z.B.: Änderung oder Veröffentlichung einer Terminologie sind für Webfrontend-Nutzer unter „Aktuelle Vorgänge“ (zu finden auf der Hauptseite des Terminologiebrowsers) einsehbar.
  • Webservice-Nutzer sind Primärsysteme (z.B. Krankenhausinformationssysteme) bzw. Anwender von Primärsystemen, welchen durch Nutzung der allgemein zugänglichen Webservices ein automatisierter Abruf von Terminologien bzw. eine Überprüfung ihrer bereits abgerufenen Terminologien auf Aktualität ermöglicht wird. Details sind im Benutzerhandbuch Webservices zu finden.

5.2 Rolle der redaktionellen Arbeit

5.2.1 Diskussionsteilnehmer

Ein Diskussionsteilnehmer kann, nach Anmeldung auf dem Terminologieserver mittels Benutzername und Passwort, abhängig von seiner Berechtigung, in einer oder mehreren thematischen Arbeitsgruppen (Diskussionsgruppen) an der Terminologieentwicklung mitwirken, indem er sein Vorschlags-, Kommentar- und Stimmrecht nutzt. Änderungen, welche durch ihm zugeordnete Diskussionsgruppen durchgeführt wurden, kann der Diskussionsteilnehmer via Statusverlaufsfunktion und Protokoll verfolgen. Potentielle Diskussionsteilnehmer werden dem Inhaltsverwalter von an der Terminologiearbeit interessierten Organisationen bekannt gemacht oder nutzen das Kontaktformular des Terminologieservers.

5.2.2 Inhaltsverwalter

Inhaltsverwalter haben innerhalb der Ihnen von den Administratoren zugeordneten oder selbst entwickelten Terminologien Zugriff auf Funktionen der Objektstatusverwaltung, Terminologie- und Benutzerverwaltung sowie des Vorschlagswesens.

5.2.3 Terminologie Provider

Der Terminologie-Provider ist eine Person bzw. eine Organisation, die für die Pflege, Weiterentwicklung und Publikation von externen Terminologien zuständig ist. Sollen Terminologien über den Terminologieserver öffentlich zur Verfügung gestellt werden, kann der Provider der Terminologie über ein Formular auf der Website des Terminologieservers Kontakt zu den Terminologie-Administratoren aufnehmen.

5.2.4 Terminologie-Administrator

Hauptfunktionen von Terminologie-Administratoren sind das Anlegen von Inhaltsverwaltern, die Publikation von Terminologien sowie die Sicherstellung der Funktionsfähigkeit der Kollaborationsplattform. Dem Terminologie-Administrator kommt eine Schlüsselposition zu. Der Terminologie-Administrator handelt im Auftrag des für Gesundheit zuständige Bundesministerium.

6 Technische Informationen

Im Folgenden werden die unterschiedlichen Exportformate mit ihren Elementen und Besonderheiten beschrieben. Die Auflistung gilt mit Ausnahme des Value Sets ELGA_Laborparameter5 und der Codeliste ASP-Liste.

6.1 SVS

Das angebotene SVS ist ein erweitertes IHE Sharing Value Set Format. In diesem XMLFormat können Codelisten und Value Sets exportiert werden. Diese enthält Attribute zur Terminologie bzw. der Version (Element „valueSet“):

  • Name: Bezeichnung der Terminologie
  • Beschreibung und description der Terminologie
  • effectiveDate: „gültig-ab“ Datum der Version
  • Id: OID der Version
  • statusCode (derzeit nicht unterstützt)
  • website: Link zu Quelle etc.
  • version: Nummer/Bezeichnung der Version
  • version-beschreibung (bei Codelisten): Beschreibung der Version
  • gueltigkeitsbereich
  • statusCode: 0=>Vorschlag: 1=>Public; 2=>Obsolet
  • last_change_date: Datum der letzten Änderung

Alle Konzepte sind als „concept“-Elemente in der „conceptList“ vorhanden und enthalten folgende Attribute:

  • Code
  • codeSystem: OID des Quell-Code Systems des Konzepts
  • displayName: Begriff
  • concept_beschreibung: nähere Beschreibung (Anwendungsbeschreibung) des Konzepts
  • deutsch: deutsche Sprachvariante, Bedeutung
  • einheit_codiert, einheit_print: nur relevant bei Laborparametern
  • hinweise: Hinweise zur Anwendung des Konzepts
  • level/type: Abbildung der Hierarchie
  • relationships: etwaige Verbindungen zu anderen Konzepten
  • orderNumber (nur bei Value Sets): Index zur Fixierung der Reihenfolge
  • conceptStatus: 0=>Vorschlag; 1=>Public; 2=>Obsolet
  • unvollständig (bei Codelisten): Flag zur Kennzeichnung von Codelisten, die nur auszugsweise am Terminologieserver veröffentlicht sind
  • verantw_Org (bei Codelisten): verantwortliche Organisation


6.2 CSV

CSV (comma separated values) steht als Exportformat für Codelisten und Value Sets zur Verfügung. Es enthält als flache Liste lediglich Informationen zu den Konzepten, nicht aber zur Terminologie selbst bzw. zu ihrer Version:

  • Code
  • codeSystem: OID des Quell-Code Systems des Konzepts
  • displayName: Begriff
  • concept_beschreibung: nähere Beschreibung (Anwendungsbeschreibung) des Konzepts
  • meaning: deutsche Sprachvariante, Bedeutung
  • hints: Hinweise zur Anwendung des Konzepts
  • orderNumber (nur bei Value Sets): Index zur Fixierung der Reihenfolge
  • level/type: Abbildung der Hierarchie
  • relationships: etwaige Verbindungen zu anderen Konzepten
  • einheit_codiert, einheit_print: nur relevant bei Laborparametern

6.3 ClaML

ClaML (Classification Markup Language) ist ein spezielles XML-Datenformat für Klassifikationen. Der ClaML Export steht nur für Codelisten zur Verfügung. Informationen zur Terminologie bzw. Versionen sind in den ersten Elementen enthalten. Die OID findet sich im „uid“-Attribut des Elements Identifier. Weitere Informationen zur Terminologie finden sich in den ersten „Meta“-Elementen als name-value Paar:

  • Description: deutsche Beschreibung der Terminologie
  • Description_eng: englische Beschreibung der Terminologie
  • Website: Link zu Quelle etc.
  • version_description: Beschreibung der Version
  • insert_ts: Datum des Imports/Anlegen am Terminologieserver
  • status_date: „Status geändert am“-Datum
  • expiration_date: „gültig-bis“ Datum
  • last_change_date: „geändert am“ Datum
  • gueltigkeitsbereich
  • statusCode: 0=>Vorschlag; 1=>Public; 2=>Obsolet
  • unvollständig (bei Codelisten): Flag zur Kennzeichnung von Codelisten, die nur auszugsweise am Terminologieserver veröffentlicht sind
  • verantw_Org (bei Codelisten): verantwortliche Organisation

Alle anderen Informationen zur Version befinden im title-Element: 

  • tite@date: „gültig-ab“ Datum
  • tite@name: Name der Terminologie
  • tite@version: Bezeichnung bzw. Nummer der Version

Die einzelnen Konzepte werden als class-Element abgebildet, jeweils mit name-value Paaren:

  • class/@code: Code
  • <Rubric kind='preferred'>/Label: Begriff
  • <Rubric kind='note'>/Label: nähere Beschreibung (Anwendungsbeschreibung) des Konzepts
  • TS_ATTRIBUTE_HINTS: Hinweise zur Anwendung des Konzepts
  • TS_ATTRIBUTE_MEANING: deutsche Sprachvariante, Bedeutung
  • TS_ATTRIBUTE_STATUS/ TS_ATTRIBUTE_STATUSUPDATE: Informationen zum Status des einzelnen Konzepts
  • Level/Type: Abbildung der Hierarchie
  • Relationships: etwaige Verbindungen zu anderen Konzepten

Zu beachten ist hier, dass die Elemente in der Exportdatei nicht vorhanden sind, wenn sie am Terminologieserver nicht befüllt sind.

7 Versionierung von Codesystemen und Value Sets

Für eine einheitliche Vorgehensweise bei Versionierungen am Terminologieserver, wurde eine neue Definition erstellt. Diese wurde an das Schweizer Modell angelehnt und an die Bedürfnisse der ELGA GmbH angepasst. Die neue Definition ist für alle Codesystem und Valueset gültig, die von der ELGA GmbH verwaltet und erstellt werden.

Bei der Veröffentlichung einer neuer Version, wird der Name des Codesystems bzw. Valuesets folgendermaßen dokumentiert:


Code System:

Name = Name des Code Systems

Displayname = Name des Code Systems

Version = YYYYMM.(x)


Beispiel: Codesystem "ELGA PracticeSetting":

  • Name = ELGA_PracticeSetting
  • Displayname = ELGA_PracticeSetting
  • Version = 201902


Werden Änderungen innerhalb eines Monats in einer Version eingetragen, muss eine Korrektur-Nummer (numerisch) angehängt werden:

Beispiel: Codesystem "ELGA PracticeSetting":

  • Name = ELGA_PracticeSetting
  • Displayname = ELGA_PracticeSetting
  • Version = 201902.1


Die Korrektur-Nummer entfällt, wenn die Änderung in einem neuen Monat stattfindet:

Beispiel: Codesystem "ELGA PracticeSetting":

  • Name = ELGA_PracticeSetting
  • Displayname = ELGA_PracticeSetting
  • Version = 201903


Value Set:

Bei Value Sets wird außerdem zusätzlich an den Ende des Namens die Kennung "_VS" angehängt:

Name = Name des Value Sets_VS

Displayname = Name des Value Sets_VS

Version = YYYYMM.(x)


Beispiel: Value Set "ELGA PracticeSetting":

  • Name = ELGA_PracticeSetting_VS
  • Displayname = ELGA_PracticeSetting_VS
  • Version = 201902

8 Weiterführende Literatur

Leitfaden zur Nutzung von ELGA-Terminologien und des Terminologieservers [2]

Benutzerhandbuch Publikationsumgebung [3]

Benutzerhandbuch Webservices