Einsatz von DICOM-SR in der Pathologie

Transcription

Einsatz von DICOM-SR in der Pathologie
Universität zu Lübeck
Institut für Medizinische Informatik
Direktor: Prof. Dr.-Ing. Dr. med. habil. Siegfried J. Pöppl
Diplomarbeit
Einsatz von DICOM-SR in der Pathologie
Vorgelegt von
cand. inf. Winfried Schöch
Matr. Nr. 549325
Ausgegeben von
Prof. Dr.-Ing. Dr. med. habil. Siegfried J. Pöppl
Betreut von
PD Dr. rer. nat. Josef Ingenerf
Lübeck, 14. August 2008
Eidesstattliche Erklärung
Ich versichere, die vorliegende Arbeit selbstständig und nur unter Benutzung der angegebenen Hilfsmittel angefertig zu haben. Passagen, die anderen Werken dem Sinne nach entnommen sind, habe
ich mit Quellenangaben kenntlich gemacht und wörtliche Zitate als solche gekennzeichnet.
Diese Erklärung bezieht sich auch auf die Begleitwebseite zu dieser Arbeit [98].
Lübeck, den 14.08.2008
II
Kurzfassung
Mit dem Begriff DICOM Structured Reporting“ (DICOM-SR) wird der Teil des Stan”
dards Digital Imaging and Communications in Medicine“ (DICOM) bezeichnet, der die
”
Speicherung und Kommunikation strukturierter, medizinischer Informationen beschreibt.
In dieser Arbeit wurde untersucht, ob DICOM-SR für die bildgestützte Befundung in der
Pathologie geeignet ist. Dazu wurden zunächst Arbeitsabläufe in der Pathologie betrachtet
und die Rolle digitaler Bilder in der Pathologie evaluiert.
Aufbauend auf einer ausführlichen Einarbeitung in DICOM und DICOM-SR wurde anschließend das Programm GENRE (Generic Report E ditor) entwickelt, mit dem DICOMSR-Dokumente nahezu beliebiger Art erstellt und bearbeitet werden können. GENRE
stellt DICOM-SR-Dokumente auf niedrigem Abstraktionsniveau dar und erlaubt daher
tiefe Eingriffe in Struktur und Inhalt von Dokumenten. Fertige DICOM-SR-Dokumente
können in das HTML-Format exportiert werden. Als erste frei verfügbare Software bietet
GENRE einen einfachen Zugriff auf das mit dem DICOM-Standard ausgelieferte kontrollierte Vokabular. Da GENRE als Open-Source-Projekt konzipiert wurde, ist die grafische
Benutzeroberfläche auf Mehrsprachigkeit ausgelegt.
Für die benutzerfreundliche Erstellung von DICOM-SR-Dokumenten auf höherem Abstraktionsniveau wurde schließlich ein Eingabeassistent entwickelt, der medizinisches Fachpersonal durch eine auf den jeweiligen Anwendungsfall zugeschnittene Grammatik führt
und so die strukturierte Eingabe beschleunigt. Dieser ebenfalls sehr generische Ansatz
wurde um ein einfaches Befundungsformular für die Pathologie ergänzt und mit einer
Testgrammatik für einen typischen Untersuchungsfall versehen. Gemeinsam mit Pathologen wurde diskutiert, inwiefern diese Softwarelösung im Routinebetrieb eingesetzt werden
könnte.
Danksagung
Besonders bedanken möchte ich mich bei Dr. Josef Ingenerf vom Institut für Medizinische
Informatik (IMI) an der Universität zu Lübeck für die hervorragende Betreuung dieser
Diplomarbeit. Selbst vom Familienurlaub aus unterstützte er noch deren Fertigstellung.
Des Weiteren möchte ich mich bei einigen Mitarbeitern des Instituts für Pathologie am
Universitätsklinikum Schleswig-Holstein Standort Lübeck (UK-SH) bedanken. Medieningenieur Harald Hatje zeigte mir das Institut und stellte Kontakte zum klinischen Personal
her. Oberarzt Dr. Christoph Thorns versorgte mich in mehreren ausführlichen Gesprächen
mit pathologischem Fachwissen und Ideen für den sinnvollen Einsatz strukturierter Dokumentation. Oberarzt Dr. Heinz-Wolfram Bernd half bei der Einschätzung der Anwendbarkeit des in dieser Diplomarbeit entwickelten Programms und las freundlicherweise die
medizinischen Kapitel der Arbeit Korrektur.
Dr. Andreas Turzynski von der Gemeinschaftspraxis für Pathologie Lübeck schilderte mir
in einem ausführlichen Gespräch die Situation der Pathologie im niedergelassenen Bereich,
demonstrierte die Befundberichtschreibung mittels Spracherkennung und lieferte Ideen.
Dr. Jörg Riesmeier von der ICSMED AG, Oldenburg, hielt einen hervorragenden Vortrag
zum Thema DICOM-SR in Lübeck und war anschließend stets für Fragen ansprechbar.
Er stellte verschiedene Materialien für diese Arbeit zur Verfügung. Seine Dissertation war
in vielen Punkten Vorbild für diese Diplomarbeit. Bei Dr. David A. Clunie, Mitglied des
DICOM-Komitees, bedanke ich mich für sein Java-DICOM-Toolkit und für seine stets
prompten und ausführlichen Antworten auf Fragen.
Für das Korrekturlesen der Arbeit bedanke ich mich herzlich bei Dr. Gabriele Katalinic
vom IMI und bei meinem Bruder Volker Schöch, der hierfür eine Fahrt von Berlin nach
Lübeck und eine Nachtschicht im Rechnerpool auf sich nahm.
Schließlich bedanke ich mich bei Prof. Dr. Dr. Siegfried J. Pöppl, dem Leiter des IMI,
für einen hervorragend ausgestatteten Arbeitsplatz und bei den bisher nicht genannten
Mitarbeitern des IMI für eine stets angenehme Arbeitsatmosphäre.
III
Inhaltsverzeichnis
1 Einleitung
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Ausgangssituation und Problemstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Zielsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Grundlagen
2.1 Pathologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Virtuelle Mikroskopie . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 Vorteile und Einsatzgebiete der virtuellen Mikroskopie . . .
2.2.2 Bildformate für virtuelle Präparate . . . . . . . . . . . . . .
2.2.3 Anbieter für die virtuelle Mikroskopie . . . . . . . . . . . .
2.3 Computergestützte Detektion (CAD) . . . . . . . . . . . . . . . . .
2.3.1 CAD in der Pathologie . . . . . . . . . . . . . . . . . . . . .
2.4 Strukturierte und standardisierte Dokumentation . . . . . . . . . .
2.4.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.2 Begriffsklärung . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.3 Vorteile strukturierter und standardisierter Dokumentation
2.4.4 Textbausteine versus strukturierte Eingabe . . . . . . . . .
2.4.5 Strukturierte Befundberichte in der Pathologie . . . . . . .
2.5 Der DICOM-Standard . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.2 Geschichtliche Entwicklung . . . . . . . . . . . . . . . . . .
2.5.3 Standardisierungsprozess . . . . . . . . . . . . . . . . . . .
2.5.4 Aufbau des Standards . . . . . . . . . . . . . . . . . . . . .
2.5.5 Das DICOM-Modell der realen Welt . . . . . . . . . . . . .
2.5.6 Logischer Aufbau von DICOM-Informationsobjekten . . . .
2.5.7 Binäre Kodierung von DICOM-Informationsobjekten . . . .
2.5.8 XML-Kodierung von DICOM-Informationsobjekten . . . .
2.5.9 Netzwerkdienste mit DICOM . . . . . . . . . . . . . . . . .
2.5.10 DICOM-Toolkits . . . . . . . . . . . . . . . . . . . . . . . .
2.5.11 Einsatz von DICOM in der Pathologie . . . . . . . . . . . .
2.5.12 Informationsquellen zum DICOM-Standard . . . . . . . . .
2.6 DICOM Structured Reporting . . . . . . . . . . . . . . . . . . . . .
2.6.1 Allgemeiner Aufbau von DICOM-SR-Dokumenten . . . . .
2.6.2 Der DICOM-SR-Inhaltsbaum . . . . . . . . . . . . . . . . .
2.6.3 Kontextgruppen . . . . . . . . . . . . . . . . . . . . . . . .
2.6.4 Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.5 DICOM-SR und CAD . . . . . . . . . . . . . . . . . . . . .
2.6.6 Verwandte Standards . . . . . . . . . . . . . . . . . . . . .
2.6.7 Informationsquellen zu DICOM-SR . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
4
5
6
6
8
8
9
10
11
12
13
13
13
14
15
16
17
17
18
19
19
21
23
26
27
27
29
31
33
34
35
37
42
43
46
46
47
3 Allgemeiner Lösungsansatz
50
3.1 Implementierungsplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2 Erwartete Implementierungshindernisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4 Konzeption, Implementierung und Anwendung
4.1 Erstellung einer maschinenlesbaren Version der DICOM-Kontextgruppen
4.1.1 Konzeption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.2 Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Konzeption von GENRE . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.2 Auswahl der Programmierplattform . . . . . . . . . . . . . . . . .
4.2.3 Auswahl eines geeigneten DICOM-Toolkits . . . . . . . . . . . . .
4.3 Implementierung von GENRE . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
54
54
54
55
61
61
64
68
70
IV
4.4
4.5
4.6
4.3.1 Datenhaltung von DICOM-SR-Dokumenten . . . . . . . . . . . . . . . . . . . .
4.3.2 Grafische Darstellung von DICOM-SR-Dokumenten . . . . . . . . . . . . . . .
4.3.3 Benutzungsfreundlichkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.4 Einbinden von Bildern aus einem DICOM-Bildarchiv . . . . . . . . . . . . . . .
4.3.5 Anforderungen an das Java Runtime Environment (JRE) . . . . . . . . . . . .
Konzeption eines Eingabeassistenten für strukturierte pathologische Befundberichte . .
4.4.1 Beispielhafte Untersuchungsfälle aus der Pathologie . . . . . . . . . . . . . . .
4.4.2 Abbildung der strukturierten Eingaben auf DICOM-SR . . . . . . . . . . . . .
Implementierung eines Eingabeassistenten für strukturierte Pathologie-Befundberichte
4.5.1 Strukturierte Formulare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.2 Grammatikgeführte strukturierte Eingabe in Clinic WinData . . . . . . . . . .
4.5.3 Eigene Implementierung einer grammatikgeführten, strukturierten Eingabe . .
4.5.4 Integration in GENRE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Anwendung des GENRE-Systems in der Pathologie . . . . . . . . . . . . . . . . . . . .
5 Ergebnisse und Ausblick
5.1 Ergebnisse . . . . . . . . . . . . . . . . . . .
5.1.1 Ergebnisse der theoretischen Arbeit
5.1.2 Vorarbeiten für die Implementierung
5.1.3 Implementierung . . . . . . . . . . .
5.2 Ausblick . . . . . . . . . . . . . . . . . . . .
5.2.1 DICOM-Entwicklung . . . . . . . . .
5.2.2 GENRE-System . . . . . . . . . . .
5.3 Fazit . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
70
73
78
84
88
89
89
92
99
99
99
101
102
103
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
105
105
105
105
106
106
106
107
110
A Auswahl an SNOMED-Kodes
111
B Übersetzungen von DICOM-Begriffen
112
Abkürzungsverzeichnis
113
Literaturverzeichnis
118
V
Abbildungsverzeichnis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Histopathologische Untersuchung eines digitalen Präparats (Rattenhirn, 20x-Vergrößerung) [86]
Freitextlicher pathologischer Befundbericht (anonymisiert) . . . . . . . . . . . . . . . . . . . . .
Schematische Skizze des Forschungsprojekts [PIH07] . . . . . . . . . . . . . . . . . . . . . . . .
Präparative Schritte bei der Herstellung eines histologischen Präparates für die konventionelle
Lichtmikroskopie [HS92] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pyramidenartiger Aufbau der Datenrepräsentation eines virtuellen Präparats . . . . . . . . . .
Strukturierte und standardisierte medizinische Dokumentation . . . . . . . . . . . . . . . . . .
Arbeitsteilung der IT im Krankenhaus aus Sicht der Radiologie (nach [Eic08], Bilder aus [125])
Entwicklung der Summe der Seitenzahlen des DICOM-Standards [Eic08] . . . . . . . . . . . . .
Aufbau des DICOM-Standards [Eic08] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DICOM Model of the Real-World“ (PS 3.3, Abb. 7-1a [DIC08a]) . . . . . . . . . . . . . . . . .
”
Ausschnitt aus dem DICOM Data Dictionary (PS 3.6 [DIC08a]) . . . . . . . . . . . . . . . . .
Datenelement ( Data Element“) und Datensatz ( Data Set“) (aus PS 3.5, Abb. 7.1-1) . . . . .
”
”
Erweiterung des DICOM-Modells der realen Welt für die Pathologie, Erweiterungen hervorgehoben (aus Supp. 122 [17]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Entity-Relationship-Modell für DICOM Composite IODs (aus PS 3.3, Abb. A.1-1 [DIC08a]) . .
Modultabelle für die Dokumentenklasse Basic Text“ (aus PS 3.3, Tab. A.35.1-1 [DIC08a]) . .
”
Informationsmodell von DICOM-SR (PS 3.3, Abb. C.17.3-1 [DIC08a]) . . . . . . . . . . . . . .
Einschränkungen bei der Konstruktion von DICOM-SR-Dokumenten der Klasse Enhanced“ (PS
”
3.3, Tab. A.35.2-2 [DIC08a]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Beispiel für einen DICOM-SR-Inhaltsbaum (PS 3.3, Kapitel C17.4 [DIC08a]) . . . . . . . . . .
Beispiele für Kontextgruppen (aus PS 3.16, Anhang B [DIC08a]) . . . . . . . . . . . . . . . . .
Beispiele für DICOM-SR-Templates (aus PS 3.16, Anhang A [DIC08a]) . . . . . . . . . . . . .
Arbeitsablauf in der Pathologie aus Sicht von IHE . . . . . . . . . . . . . . . . . . . . . . . . .
Anwendungsfälle für das Erzeugen und Bearbeiten von DICOM-SR-Dokumenten . . . . . . . .
Drei Abstraktionsebenen für die interaktive Erzeugung und Bearbeitung von DICOM-SR-Befundberichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Einige konzeptionelle Bausteine des GENRE-Systems . . . . . . . . . . . . . . . . . . . . . . . .
Kontextgruppe 230 Yes-No“ (PS 3.16, Anhang B [DIC08a] . . . . . . . . . . . . . . . . . . . .
”
Grafische Oberfläche zur Auswahl kodierter Konzepte . . . . . . . . . . . . . . . . . . . . . . .
Cyclops Dicom Structured Report Editor [BWM03] . . . . . . . . . . . . . . . . . . . . . . . . .
Benutzeroberfläche von DICOMscope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GUI-Klasse StructuredReportBrowser aus dem PixelMed-Toolkit . . . . . . . . . . . . . . . .
Komplexe Datentypen von Inhaltselementen (gruppierte Zusammenstellung nach [Clu00]) . . .
Formulare zur Bearbeitung von wichtigen DICOM-Headerinformationen . . . . . . . . . . . . .
Darstellung kodierter Elemente von DICOM-SR-Dokumenten in GENRE . . . . . . . . . . . .
HTML-Export von DICOM-SR-Dokumenten mit GENRE . . . . . . . . . . . . . . . . . . . . .
Assistent in Eclipse zum Ausgliedern von Zeichenketten in Textdateien . . . . . . . . . . . . . .
GENRE-Benutzeroberfläche auf deutsch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Eingabe eines Datums bei verschieden eingestellter Default Locale . . . . . . . . . . . . . . . .
Landesübliche Eingabe und Anzeige von Zahlenwerten . . . . . . . . . . . . . . . . . . . . . . .
Knöpfe zum Verbergen von Teilen der GENRE-Benutzeroberfläche . . . . . . . . . . . . . . . .
Ablauf der Kommunikation mit dem DICOM-Server bei der Auswahl von Bildern . . . . . . . .
Zuordnung von Application Entity Titles (AET) zu IP-Adressen und Ports in ConQuest . . . .
Plasmozytomzellen mit charakteristischen, exzentrisch gelegenen Zellkernen. [HF97] . . . . . .
Textkörper eines Befundberichts aus dem Institut für Pathologie . . . . . . . . . . . . . . . . .
Triviale Strukturierung eines Befundberichts in DICOM-SR mit GENRE . . . . . . . . . . . . .
Strukturierung eines Befundberichts in einzelne Abschnitte . . . . . . . . . . . . . . . . . . . .
Container Content Items als Abschnittsüberschriften . . . . . . . . . . . . . . . . . . . . . . . .
Messwerte und kodierte Elemente zur weiteren Strukturierung . . . . . . . . . . . . . . . . . . .
Befundungsformulare: Original und Nachbau . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dialoge zur grammatikgestützten, strukturierten Eingabe . . . . . . . . . . . . . . . . . . . . .
Anlegen eines neuen Befundberichts mit Liste der verfügbaren Eingabeassistenten . . . . . . . .
.
.
.
2
3
4
.
.
.
.
.
.
.
.
.
7
9
14
17
19
20
22
24
26
.
.
.
.
32
35
37
38
.
.
.
.
.
.
40
41
43
44
48
50
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
50
52
55
60
61
63
69
71
74
77
79
81
81
82
83
84
86
87
91
93
94
94
95
96
100
102
103
VI
Tabellenverzeichnis
1
2
3
4
5
6
7
8
9
10
11
DICOM 2008 – Teile und jeweilige Seitenanzahl (wichtigste Teile für diese Arbeit fett gedruckt)
Komplexe Datentypen für die Werte von Inhaltselementen (Übersetzung nach PS 3.3, Tab. C.17.37 [DIC08a]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Typen für Relationen (Übersetzung nach PS 3.3, Tab. C.17.3-8 [DIC08a]) . . . . . . . . . . . .
Kontextgruppen des DCMR, die UCUM-konforme Maßeinheiten enthalten . . . . . . . . . . . .
Zweibuchstabige und dreibuchstabige Sprachkodes nach ISO 639 [58] . . . . . . . . . . . . . . .
Zweibuchstabige Länderkodes nach ISO 3166-1 [53] . . . . . . . . . . . . . . . . . . . . . . . . .
Einige Datensätze mit Scale Doc“ aus der LOINC-Datenbank Version 2.22 (ausgewählte Spalten,
”
für eine Beschreibung der Spalten siehe LOINC Users’ Guide [95]) . . . . . . . . . . . . . . . .
Überschriften aus der LOINC-Datenbank für Meldungen an Krebsregister (Auswahl) . . . . . .
SNOMED-Kodes für Überschriften in pathologischen Befundberichten (Auswahl) . . . . . . . .
SNOMED-Kodes für die Untersuchung eines Beckenkamm-Trepanats (Auswahl) . . . . . . . . .
Übersetzungstabelle für Begriffe aus dem DICOM-Standard . . . . . . . . . . . . . . . . . . . .
. 20
.
.
.
.
.
39
40
57
57
58
.
.
.
.
.
58
98
111
111
112
VII
1
EINLEITUNG
1 Einleitung
1.1 Motivation
Computerunterstützung in der Pathologie Computer werden in der Pathologie wie auch in anderen medizinischen Fachdisziplinen vielfältig eingesetzt: Bei der Verwaltung von administrativen Patientendaten, zum
Niederschreiben und Archivieren medizinischer Befundberichte, für die Internetrecherche, für den Zugriff auf
Literaturdatenbanken etc. Bei der eigentlichen diagnostischen Tätigkeit des Pathologen, der anatomischen,
histopathologischen und zytopathologischen Beurteilung von Geweben, wird jedoch bisher meist auf eine Unterstützung durch Computer verzichtet.
Unter dem Schlagwort Digitale Pathologie“ wird derzeit geforscht, wie Computer dem Pathologen1 unmittel”
barer zur Hand gehen könnten. Ein paar Beispiele für den Einsatz von Computern:
ˆ In der Ausbildung.
– Das Betrachten mikroskopischer Aufnahmen am Computer soll Studierende unabhängig machen
von Laboröffnungszeiten und der (typischerweise stark beschränkten) Anzahl der Mikroskope und
Präparate.
– Assistenzärzte in der Facharztweiterbildung könnten von checklistenähnlichen, strukturierten Befundungsformularen profitieren, die das Risiko vergessener (Teil-)Untersuchungen vermindern.
ˆ Im Routinebetrieb.
– Durch den Einsatz automatischer Bildanalyse möchte man Pathologen von lästigen Routinetätigkeiten
wie z. B. dem Zählen von Zellen befreien.
– Man hofft, mit Computerhilfe das Erstellen von Befundberichten beschleunigen zu können.
– Der Einsatz standardisierter, strukturierter Befundberichte würde die Kommunikation und damit die
Kooperation der verschiedenen an einem Behandlungsfall beteiligten Institutionen verbessern.
– Systeme zur Entscheidungsunterstützung könnten insbesondere bei seltenen Krankheiten einen Beitrag zur Befundqualität leisten, indem sie auf ähnliche Fälle hinweisen und kontextbezogenes Fachwissen zur Verfügung stellen.
ˆ In der Forschung.
– Automatische Bildanalyse kann Phänomene quantifizieren, über die ein Mensch nur qualitative Aussagen treffen kann ( Morphometrie“) oder deren Quantifizierung für einen Menschen zu aufwändig
”
wäre (z. B. Auszählung aller krankhaft veränderten Zellen in einem großen Präparat). Mit Hilfe
von Computern könnten daher neue klinisch relevante Grenzwerte ermittelt oder bestehende exakter
festgelegt werden.
– Eine Wiederverwendung klinischer Routinedaten für die Forschung ist nur dann möglich, wenn relevante Fälle schnell und treffsicher im Befundarchiv gesucht werden können. Beide genannten Faktoren könnten durch den Einsatz strukturierter, maschinenlesbarer Befundberichte verbessert werden.
Die Beispiele sollen zwei Stoßrichtungen verdeutlichen: Den Einsatz von digitaler Bildverarbeitung bei der Befundung und die Verwendung standardisierter, strukturierter Befundberichte. Weitere Forschungsbereiche der
Digitalen Pathologie“ wie beispielsweise die Telepathologie werden im Folgenden nicht weiter behandelt.
”
Das virtuelle Präparat“ Möchte man Computer für die pathologische Bildverarbeitung einsetzen, so müssen
”
die zu untersuchenden Präparate zunächst digitalisiert werden. Für makroskopische Untersuchungen ist dies kein
Problem, die immer leistungsfähigeren Digitalkameras bieten längst eine preiswerte und schnelle Digitalisierung
mit ausreichender Bildqualität.
Die Situation bei mikroskopischen Untersuchungen ist wesentlich komplizierter. Die Digitalisierung eines kompletten Präparats bei höchster Vergrößerungsstufe (vgl. Abb. 1) erfordert Spezialhardware und dauert erheblich
länger als das Anfertigen eines Digitalfotos. Außerdem werden bei der Digitalisierung Rohdaten im GigabyteBereich erzeugt. Die Digitalisierung, Speicherung und automatische Analyse solcher Bilder ist seit kurzem mit
vertretbarem finanziellen Aufwand möglich. Für die Langzeitarchivierung tausender virtueller Präparate“, die
”
1 Selbstverständlich
sind hier auch Pathologinnen gemeint. Desgleichen treffen alle im Folgenden gemachten Aussagen über nicht
näher spezifizierte Personen genauso auf weibliche wie auf männliche Individuen bzw. Personengruppen zu.
Seite 1
1
EINLEITUNG
im Routinebetrieb jährlich anfallen, muss man allerdings noch auf weiter steigende Kapazitäten und sinkende
Preise bei Speichermedien hoffen.
Abbildung 1: Histopathologische Untersuchung eines digitalen Präparats (Rattenhirn, 20x-Vergrößerung) [86]
Befundberichte in der Pathologie Der Befundbericht wird üblicherweise vom Pathologen ins Diktiergerät
gesprochen und anschließend von einer Schreibkraft in das Pathologische Informationssystem eingetippt2 . Dabei
kommt meist Freitext zum Einsatz, der maschinell schwer interpretierbar ist (vgl. Abb. 2). Ein Computer kann
beispielsweise ohne zusätzliche Angaben nur schwer zwischen Überschriften und Inhalt unterscheiden, geschweige
denn herausfinden, welche Einzelbefunde im Text auftreten, welche immunhistochemischen Spezialfärbungen
eingesetzt wurden oder welche Befunde welchen Färbungen zuzuordnen sind.
Einige neuere pathologische Informationssysteme unterstützen zumindest die Zuordnung von Inhalten zu Überschriften. Die Semantik des Inhalts kann von Computern aber weiterhin nicht erkannt werden. Bei der Recherche
nach bestimmten Befundberichten müssen Pathologen daher entweder alle relevanten Fallnummern kennen oder
eine Volltextsuche bemühen. Die Volltextrecherche hat zahlreiche Nachteile, so werden beispielsweise synonyme
Begriffe, Begriffe mit Tippfehlern oder Flexionen nicht gefunden, ungewünschte Homonyme bzw. Polyseme
hingegen schon.
Strukturierte Befundberichte kann man sich wie einen Fragebogen vorstellen: Aus einer vorgegebenen Anzahl
von Möglichkeiten kann der Arzt die zutreffende Möglichkeit auswählen. Jede Auswahl kann dabei einen Einfluss
darauf haben, welche Frage als nächstes gestellt wird. Die Einschränkung der Auswahlmöglichkeiten ermöglicht
eine maschinelle Auswertung und die Auswahl der richtigen Option geht im Idealfall schneller als das Erstellen
von Freitext. Durch die inhaltliche Führung kann der befundende Arzt keine Angabe vergessen. Ein standardisierter Aufbau erleichtert zudem die Suche sowie den Vergleich interessierender Befundberichte.
2 Da
Schreibkräfte keine Ärzte sind, kann es bei der Interpretation des Diktats zu Schwierigkeiten kommen.
Seite 2
1
EINLEITUNG
PROFESSOR DR. MED. A. C. FELLER
Institut für Pathologie des Universitätsklinikums Schleswig-Holstein
Campus Lübeck
Professor Dr. med. A. C. Feller - Ratzeburger Allee 160
Institut für Pathologie - 23538 Lübeck
Herrn
Prof. Dr. med. Muster
CA der Klinik f. Chirurgie
Phantasiekrankenhaus
Musterstraße
Telefon (0451)
Fax
500-2720 Eingangslabor
500-2715 Sekretariat
500-2707 Vorzimmer
500-2705 Direktor
500-3328
Eingegangen:
tt.mm.jjjj
Journal-Nr.:
H 12345/67
*H67012345%*
12345 Musterstadt
tt.mm.jjjj
Datum:
Patient/in: Karl Mustermann
geboren am:
tt.mm.jjjj
Klinische Diagnose/ Fragestellung:
V. a. Plasmozytom
Eingesandtes Material:
Beckenkammtrepanat rechts (1,0 cm)
Mikroskopischer Befund:
Subkortikal getroffenes ausreichend langes und intaktes Beckenkammtrepanat mit mittelbreiten
bis leicht verplumpten zumeist glatt konturierten Knochenbälkchen. In den Markräumen diffuse
Infiltrate, bestehend aus atypischen Plasmazellen, diese lassen bereits im Schnittpräparat eine
erhöhte Kern-Plasma-Relation und Nukleolenprominenz erkennen. Einige Zellen auch mit
auffällig gelappten Kernen. Die Granulopoese ist in den Bildungszonen und zum Teil auch
intermediär nachweisbar, diese ist linksverschoben und reift fokal vollständig aus. Die
Erythropoese liegt verstreut bzw. ist in kleinen und mittelgroßen Nestern angeordnet. Zellen der
Megakaryopoese lassen sich insgesamt quantitativ ausreichend nachweisen mit überwiegend
verstreut liegenden Zellen. In der Berliner-Blau-Reaktion vereinzelter Nachweis von
Speichereisen, in der Versilberung keine nennenswerte Faservermehrung.
Immunhistochemisch bestätigt sich die deutliche diffuse Plasmazellvermehrung in der CD38Färbung. Eine CD56-Koexpression ist hieran nicht nachweisbar. In den Leichtkettenfärbungen
eine eindeutige monoklonale Leichtkettenrestriktion vom Typ Lambda. Kein Nachweis von
Amyloid in der Kongorot-Färbung. Nur wenige eingestreute CD20-positive B-Zellen. Keine
signifikante Vermehrung CD34-positiver Blasten.
Begutachtung:
Es handelt sich um die ausgedehnte, überwiegend diffuse Infiltration des Knochenmarks durch
ein hiernach reifzelliges Lambda-monoklonales Plasmazellmyelom von 70 %, bezogen auf die
Gesamtzellularität.
Kein Nachweis von Amyloid.
ICDO: 9732/3
Abbildung 2: Freitextlicher pathologischer Befundbericht (anonymisiert)
Seite 3
1
EINLEITUNG
1.2 Ausgangssituation und Problemstellung
Die Institute für Medizinische Informatik und Pathologie der Universität zu Lübeck planen unter dem Arbeitstitel DICOM-SR-based Representation and Interpretation of Histo-pathological Findings Obtained Automatical”
ly from Microscope Image Processing“ [PIH07] ein Forschungsprojekt, bei dem Zellstrukturen in lichtmikroskopischen Aufnahmen automatisch erkannt, quantifiziert und interpretiert werden sollen. Das Forschungsprojekt
ist dreigeteilt:
1. Automatische Muster- und Objekterkennung
2. Generierung eines strukturierten Befundberichts über die in Schritt 1 erkannten Merkmale
3. Unterstützung des Pathologen bei der Interpretation der Ergebnisse
Abbildung 3: Schematische Skizze des Forschungsprojekts [PIH07]
Im ersten Schritt, der Muster- und Objekterkennung, sollen zunächst fertige kommerzielle Lösungen zur quantitativen und qualitativen Bildanalyse eingesetzt werden, die für die vielfältigen Untersuchungen und Färbungen in
der Pathologie parametrisiert werden müssen. Forschungsziel ist die Erstellung eines fallspezifischen Parameterund Regelkatalogs in Zusammenarbeit mit dem industriellen Kooperationspartner. Die vorgeschlagenen automatischen Analyseergebnisse müssen mit dem Ergebnis von Experten verglichen werden, eine Arbeit, die also
hauptsächlich von Pathologen erbracht werden kann.
Die Ergebnisse des Bildanalyseschrittes (z. B. Zählungen, Distanz- und Flächenmessungen, Koordinaten interessanter Regionen im analysierten Bild) sollen im zweiten Schritt in standardisierter, strukturierter und damit
maschinenlesbarer Form abgelegt werden. Gemeinsam mit den Analyseergebnissen müssen sämtliche für die
spätere Identifikation (z. B. Patientendaten, Lokation der Materialentnahme, Blocknummer etc.) und Interpretation (z. B. klinische Fragestellung, Art des Materials, Art der Färbung) notwendigen Metadaten abgespeichert
werden. Dem zuständigen Pathologen soll ermöglicht werden, den automatisch generierten Befundbericht um
weitere Einzelbefunde zu ergänzen. Dabei soll eine strukturierte Datenerfassung, eventuell in Verbindung mit
computergestützter Spracherkennung, zum Einsatz kommen.
Verbreitete klinische Arbeitsplatzsysteme zur strukturierten Bild- und Befunddokumentation wie E&L Clinic
WinData [28], MEDNOVO MediColor [65] oder die Lösungen von medPACS [66] bieten derzeit keine Unterstützung für die Befundung in der Pathologie. Ein Grund dafür sind vermutlich die im Vergleich zu anderen
Fachdisziplinen erheblich größeren Datenmengen des Bildmaterials in der Pathologie, die (derzeit noch) technische Sonderlösungen erfordern. Ein weiterer Nachteil der genannten Produkte ist die Verwendung proprietärer
Dateiformate. Dies behindert den Austausch strukturierter Berichte zwischen Institutionen oder sogar schon
zwischen verschiedenen Fachbereichen innerhalb der gleichen Institution.
Für die Erstellung strukturierter Befundberichte im Zusammenhang mit Bildern wurde im Jahr 2000 der
Seite 4
1
EINLEITUNG
®
Standard DICOM Structured Reporting 3 (im Folgenden: DICOM-SR“) verabschiedet, eine Erweiterung des
”
verbreiteten Standards Digital Imaging and Communications in Medicine“ (DICOM). Insbesondere erlaubt
”
DICOM-SR die Annotation von Bildern und Signalverläufen, unter anderem durch die Zuordnung von Begriffen im strukturierten Befundbericht zu räumlichen oder zeitlichen Koordinaten. DICOM-SR ist selbst bei den
Hauptnutzern des DICOM-Standards, den Radiologen, noch weitgehend unbekannt. Die Anzahl aller Publikationen zum Thema DICOM-SR in der MEDLINE-Datenbank [117] belief sich Anfang des Jahres 2008 auf etwa
20. Für die Pathologie befindet sich DICOM gerade erst in einer frühen Entwicklungsphase, daher spielt auch
DICOM-SR dort bisher keine Rolle. Auf fertige Lösungen kann also nicht zurückgegriffen werden.
Für den dritten Schritt soll ein Decision Support System (DSS) entstehen, das aus den automatischen Analyseergebnisse einen Diagnosevorschlag ableiten kann. Im DSS soll fallbasiertes Schließen verwendet werden.
Das System soll anhand ähnlicher früherer Fälle und der dazu ermittelten Ergebnisse einen Lösungsvorschlag
für den aktuellen Fall ermitteln. Für die Diagnosefindung notwendige, zusätzliche Angaben sollen über einen
strukturierten Fragebogen vom zuständigen Pathologen eingegeben werden können.
1.3 Zielsetzung
In dieser Arbeit soll die Eignung von DICOM-SR für bildgestützte Befundberichte in der Pathologie untersucht
werden. Dazu zählt die Beantwortung der folgende Fragestellungen:
ˆ
ˆ
ˆ
ˆ
Welche Bedeutung haben Befundberichte im Alltag der Pathologen? Wie wird bisher dokumentiert?
Welche Rolle spielt DICOM in der Pathologie?
Was ist DICOM-SR und wie wird dieser Standard derzeit eingesetzt?
Welche software-relevanten Aspekte sind im Umgang mit DICOM-SR-Dokumenten zu beachten?
Aus dem theoretischen Wissen heraus soll ein Programm entwickelt werden, mit dem Pathologen Befundberichte
im DICOM-SR-Format neu erstellen, visualisieren und bearbeiten können. Das entstandene Programm soll
gemeinsam mit Pathologen evaluiert werden.
3 DICOM
ist Warenzeichen oder eingetragene Warenzeichen der National Electrical Manufacturers Association (NEMA) in den
USA und/oder in anderen Ländern. Für weitere in dieser Diplomarbeit genannte Firmen- oder Warenzeichen sowie Firmen- und
Markennamen gilt dieser Hinweis entsprechend.
Seite 5
2
GRUNDLAGEN
2 Grundlagen
In diesem Kapitel werden die theoretischen Grundlagen, die für das Erreichen der Zielsetzung notwendig sind,
erarbeitet.
Zunächst wird der medizinische Anwendungsbereich erklärt. Abschnitt 2.1 skizziert die Pathologie als medizinische Fachdisziplin. Die verschiedenen Aufgabenstellungen der Pathologie und assoziierte Arbeitsabläufe werden
erklärt. Die folgenden Abschnitte sind einem wichtigen Teilgebiet der pathologischen Tätigkeit, den lichtmikroskopischen Untersuchungen, gewidmet. Dabei stellt Abschnitt 2.2 aktuelle Bestrebungen zur Digitalisierung im
Bereich der Bildgewinnung vor. In Abschnitt 2.3 wird der Begriff der Computergestützten Detektion (CAD)
eingeführt. Abschnitt 2.4 befasst sich mit der Befundberichtschreibung als Ergebnis einer mikroskopischen Untersuchung.
Im Mittelpunkt dieser Diplomarbeit steht DICOM-SR. DICOM-SR ist Bestandteil des in der bildgebenden
medizinischen Praxis verbreiteten DICOM-Standards und kann nicht isoliert vom Rest des Standards verstanden werden. Daher führt Abschnitt 2.5 zunächst grundlegend in den umfangreichen DICOM-Standard ein. In
Abschnitt 2.6 wird schließlich DICOM-SR detailliert beschrieben.
2.1 Pathologie
Die Pathologie ist ein Teilgebiet der Medizin, das sich mit den abnormen und krankhaften ( pathologischen“)
”
Veränderungen im Organismus von Lebewesen beschäftigt [Psc98]. Bei diesen Veränderungen werden Ursache ( Ätiologie“), Entstehungsmechanismen ( Pathogenese“), strukturelle Änderungen an Zellen und Organen
”
”
( Pathomorphologie“) sowie deren funktionelle Folgen und klinische Bedeutung betrachtet [CKR93].
”
Die Untersuchung morphologischer Veränderungen und deren Beschreibung steht in dieser Diplomarbeit im
Vordergrund. Die Untersuchung kann auf makroskopischer Ebene mit dem bloßen Auge und anderen Sinnen
(Fühlen, Riechen) erfolgen. Auf der Gewebsschnitt-Ebene ( Histopathologie“) oder bei der Betrachtung einzel”
ner Zellen ( Zytopathologie“) bedient sich der Pathologe der Lichtmikroskopie als Hilfsmittel.
”
Den prinzipiellen Arbeitsablauf bei der Vorbereitung einer histologischen Untersuchung sowie einige damit verbundene Begriffe illustriert Abbildung 4. Am Anfang steht die Entnahme einer Gewebeprobe am Lebenden
( Biopsie“) zum Beispiel durch Punktion mit einer Hohlnadel oder chirurgisch mit dem Skalpell ( Exzision“).
”
”
Das Biopsat wird dem Pathologen mit einer entsprechenden klinischen Fragestellung zugestellt und am sogenannten Zuschneideplatz“ makroskopisch untersucht. Dabei erstellt der Pathologe einen makroskopischen
”
Befundbericht und wählt potentiell interessante Gewebsstücke für die histologische Aufbereitung aus. Diese
Gewebsstücke werden von Medizinisch-technischen Assistenten entweder durch Einfrieren (für die Herstellung
eines sog. Schnellschnitts“) oder durch Einbettung in Paraffin schneidbar gemacht und mit einem speziellen
”
Schneidegerät, dem Mikrotom“, in Schnitte von ca. 2-30µm Dicke zerlegt. Die Schnitte werden auf einem Ob”
jektträger aufgezogen und nach einigen weiteren Verarbeitungsschritten eingefärbt. Die Art der Färbung hängt
von der klinischen Fragestellung und der makroskopischen Untersuchung ab. Mithilfe eines breiten Spektrums
histochemischer Färbungen können zum Beispiel Zellkerne, Bakterien, Eisen, kollagene Fasern oder bestimmte
Eiweiße im Schnitt hervorgehoben werden. [Tho92]
Ein Untersuchungsfall besteht typischerweise aus mehreren Präparaten mit verschiedenen Färbungen. Die fertigen Präparate werden schließlich von den Medizinisch-technischen Assistenten für die mikrokopische Untersuchung wieder an einen Pathologen übergeben. Dieser protokolliert detailliert die mikroskopischen Befunde und
stellt anschließend aus makroskopischem und mikroskopischem Untersuchungsergebnis eine zusammenfassende
Diagnose.
Der Befund wird meist als Diktat erfasst und anschließend durch eine mit der pathologischen Terminologie
vertraute Schreibkraft abgetippt. Stehen keine entsprechenden Schreibkräfte zur Verfügung, so wird häufig
automatische Spracherkennung verwendet. Die Bedienung klassischer Eingabemedien wie Maus und Tastatur
ist hingegen problematisch. Sowohl bei der makroskopischen als auch bei der mikroskopischen Untersuchung ist
der Pathologe mit beiden Händen tätig. Bei der makroskopischen Untersuchung kommen noch das Tragen von
Handschuhen und der Umgang mit schmutzigen oder möglicherweise gar infektiösen Materialien hinzu. Für die
händische Eingabe kommt hier höchstens ein Touchscreen infrage.
Seite 6
2
GRUNDLAGEN
Abbildung 4: Präparative Schritte bei der Herstellung eines histologischen Präparates für die konventionelle
Lichtmikroskopie [HS92]
Seite 7
2
GRUNDLAGEN
2.2 Virtuelle Mikroskopie
Die virtuelle Mikroskopie ist eher Voraussetzung als Gegenstand dieser Arbeit und soll im Folgenden kurz
vorgestellt werden.
2.2.1 Vorteile und Einsatzgebiete der virtuellen Mikroskopie
Unter den Schlagwörtern Virtuelle Mikroskopie“, Virtual Slides“ und Digitale Pathologie“ wird zumeist das”
”
”
selbe verstanden: Ein hochauflösend (<=0.5µm/Pixel) digitalisiertes, histologisches oder zytologisches Präparat,
das der Pathologe – analog zur herkömmlichen Mikroskopiebefundung – am Bildschirm in verschiedenen Vergrößerungsstufen betrachten und verschieben kann ( zooming“ und panning“). Eine spezielle Herausforderung
”
”
sind die dabei zu bewältigenden Datenmengen von zum Teil mehreren Gigabyte pro Präparat, die durch Bildgrößen bis in den Gigapixel-Bereich, mehrere Fokussierungsebenen und redundante Speicherung zur Performanzsteigerung entstehen. Der Umgang mit Bildern dieser Größe ist bisher noch relativ wenig erforscht. Im
nicht-medizinischen Bereich findet man sie vor allem als Luftbilder [34, 70, 94] oder Panoramafotos [60, 121].
Vorteile der virtuellen Mikroskopie im klinischen Betrieb und in der Forschung sind:
ˆ Schneller Transport des virtuellen Präparats über beliebige Entfernungen (ermöglicht z. B. Telekonsultation)
ˆ Gleichbleibende Qualität des virtuellen Präparats (keine physikalische Degradation“)
”
ˆ Beliebig häufige Vervielfältigung der virtuellen Präparate
ˆ Platzsparende Archivierung von virtuellen Präparaten und zugehörigen Befunden
ˆ Schnelles Auffinden im digitalen Archiv
ˆ Möglichkeit einer vergleichenden, parallelen Ansicht verschiedener Färbungen eines Präparats
ˆ Möglichkeit der softwaregestützten Bildanalyse (siehe auch Kap. 2.3)
Der letzte Punkt ist besonders hervorzuheben. Softwaregestützte Bildanalyse kann dem Pathologen nicht nur
die Arbeit erleichtern, sondern erschließt auch völlig neue diagnostische Möglichkeiten. Die Beurteilung eines
Präparats durch den Pathologen erfolgt üblicherweise anhand von repräsentativen Sichtfeldern. Ein Computer
kann hingegen wesentlich größere Bereiche oder sogar das gesamte Präparat quantitativ auswerten (z. B. Zählen
von Zellen eines bestimmten Typs). Außerdem ermöglichen Computer morphometrische Analysen, also eine
Charakterisierung der Form von Objekten durch Maßzahlen. [KHZ+05]
Einem Einsatz der virtuellen Mikroskopie im klinischen Routinebetrieb stehen nach Ansicht des Autors vor
allem die immer noch beträchtlichen Scanzeiten im Wege. Je nach Vergrößerungsstufe, Präparatgröße, der
Anzahl der notwendigen Fokuspunkte (bei Einschichtaufnahme unebener Präparate) bzw. der Anzahl verschiedener Fokusebenen (mehrere vollständige Aufnahmen entlang der z-Achse) und der Scan-Hardware benötigt
das Scannen eines Präparats derzeit einige Minuten bis hin zu mehreren Stunden [RGM+06]. Die Nachteile der
langen Aufnahmezeiten können durch Slidefeeder mit Barcodeleser zur automatischen Batch-Verarbeitung über
Nacht nur teilweise entschärft werden. Bei der Scan-Hardware sind in verschiedenen Bereichen Beschleunigungen
denkbar, beispielsweise durch Kameras mit größeren CCD-Sensoren, Linsenarrays, schnellere motorgetriebene
Tische, schnellere Lademechanismen für Objektträger und schnellere Datenverbindungen zwischen Kamera und
PC bzw. PC und Datenspeicher. Wenn durch den technischen Fortschritt die Scanzeit deutlich verkürzt werden kann und die Datenspeicher im gleichen Maße wie bisher weiter wachsen und preisgünstiger werden, wird
sich die virtuelle Mikroskopie aufgrund der oben genannten Vorteile wohl auch im klinischen Routinebetrieb
durchsetzen. Für Schnellschnitte wird das herkömmliche Mikroskop aber vermutlich das Werkzeug der Wahl
bleiben, es sei denn, die Scanzeit kann so stark verringert werden, dass sie kürzer ist als die Transportdauer des
Präparats von der Vorbereitung zum Pathologen.
An einigen Universitäten (z. B. Otto-von-Guericke-Universität Magdeburg [Uni06]) wird die virtuelle Mikroskopie bereits in der Lehre eingesetzt. Der für den klinischen Routineeinsatz gravierende Nachteil Scanzeit“ spielt
”
in der Lehre kaum eine Rolle und auch das Datenvolumen ist für die Lehre deutlich beherrschbarer. Für die
Lehre bieten virtuelle Präparate weitere Vorteile:
ˆ Gleichzeitiger Zugriff (nahezu) beliebig vieler Personen auf ein virtuelles Präparat
ˆ Zugriff auf virtuelle Präparate auch außerhalb von Labors/Mikroskopiersälen (kein Mikroskop notwendig,
Unabhängigkeit von Kurs- und Praktikumszeiten)
Seite 8
2
GRUNDLAGEN
ˆ Erheblich bessere Darstellung als an günstigen Kursmikroskopen
ˆ Einblenden von Annotationen möglich
Frei zugängliche virtuelle Präparate gibt es im Netz beispielsweise unter [118], [51] oder [1].
2.2.2 Bildformate für virtuelle Präparate
Praktisch alle Hersteller von Lösungen für virtuelle Mikroskopie benutzen proprietäre Bildformate für das Speichern von virtuellen Präparate. Dies mag teilweise rein wirtschaftliche Gründe haben, um Kunden an die eigene
Produktpalette zu binden, es gibt aber auch plausible technische Gründe dafür. Gründe, die gegen den Einsatz
des JPEG-Formats sprechen:
ˆ Der JPEG-Standard limitiert die Größe eines Bildes auf 65.535x65.535 Pixel (vgl. NL-Parameter für die
Number of Lines“, Feld Y im SOF [Start of Frame Marker] [ITU93]). Diese auf den ersten Blick großzügige
”
Beschränkung kann bei virtuellen Präparaten überschritten werden.
ˆ JPEG-Dateien mit der üblichen DCT-Kompression können nicht ausschnittsweise gelesen werden. Erst
nach dem Lesen des kompletten Bildes ist die Dekompression möglich. Virtuelle Präparate im JPEGFormat können daher nicht über schmalbandige Leitungen betrachtet werden.
ˆ Der Algorithmus zur Lossless-Kompression von JPEG-Dateien ist von dem der üblichen DCT-Kompression
völlig verschieden und wird daher von den meisten JPEG-Bibliotheken nicht unterstützt. Für die digitale
Pathologie wird Lossless-Komprimierung aber häufig eingesetzt.
Die ersten beiden Probleme können umgangen werden, wenn man statt eines einzigen riesigen Bildes das Bild
in Kacheln (engl.: Tiles“) aufteilt und speichert. Ein Objektträger wird ohnehin gekachelt digitalisiert: Ent”
weder über ein quadratisches Raster bei motorgetriebenen Mikroskoptischen oder über ein Streifenraster bei
Linienscannern.
Typischerweise besteht ein kompletter Scan aus einigen tausend Kacheln. Diese in einzelnen Dateien vorzuhalten, ist unübersichtlich bei der Datensicherung und Weitergabe von Scans. Außerdem werden neben dem
gekachelten Scan in voller Auflösung für ein virtuelles Präparat üblicherweise weitere (wiederum gekachelte)
Bilder in geringerer Auflösung abgespeichert, um eine schnelle Ansicht bei verschiedenen Vergrößerungsstufen
zu ermöglichen (vgl. Abb. 5). Die Vielzahl an Kacheln und die pyramidenförmigen Datenstruktur erfordern ein
geeignetes Containerformat.
Thumbnail Image
(low resolution)
Intermediate Zoom Image Tile
Intermediate Zoom Image
(intermediate resolution)
Retrieved image region
Baseline Image
(highest resolution)
Baseline Image Tile
(a) Bild in verschiedenen Auflösungen [Kod96]
(b) Unterteilung in Kacheln [Eic07]
Abbildung 5: Pyramidenartiger Aufbau der Datenrepräsentation eines virtuellen Präparats
Seite 9
2
GRUNDLAGEN
Als Standardcontainerformat bietet sich zum Beispiel TIFF (konkret: Multipage-TIFF“) an [Ado92]. Der
”
TIFF-Standard sieht vor, dass als erste Datei das Bild in voller Auflösung vorliegen soll, die Reihenfolge der
weiteren sogenannten Subfiles“ mit geringerer Auflösung wird im Standard offen gelassen (was wiederum zu
”
einer Vielzahl verschiedener Formate bei den Herstellern führen kann). Jedes einzelne Bild kann laut TIFFStandard auf verschiedene Weise gekachelt (rechteckiges Raster oder Streifen) und komprimiert (z. B. JPEG,
LZW) werden.
Eine weitere Möglichkeit für ein Containerformat ist Kodak FlashPix [Kod96]. Die Spezifikation sieht explizit
eine pyramidenförmige, hierarchische Speicherung von Bildern in verschiedenen Auflösungen vor. Die einzelnen
Bilder sind dabei wiederum in Kacheln zerlegt, die verschieden komprimiert werden können (z. B. JPEG). Das
Format scheint allerdings auf maximal 80.000x120.000 Pixel begrenzt zu sein (siehe [8]4 ). Bei einer Auflösung
von 0,25µm/Pixel (typischer Wert bei 40x Vergrößerung) entspricht dies einer maximalen Objektträgergröße
von 20x30 mm.
Das JPEG 2000 Format bietet ebenfalls die Möglichkeit, Container für mehrere Bilder ( contiguous codestream
”
box“) zu sein [ISO00]. Bilder verschiedener Auflösung werden durch den Kompressionsalgorithmus von JPEG
2000 ohnehin schon automatisch erzeugt. Die einzelnen Bilder können in Kacheln beliebiger Größe aufgeteilt
werden. Verlustfreie Kompression ist bei JPEG 2000 üblich und daher in Programmbibliotheken integriert.
Außerdem hat JPEG 2000 keine Größenbeschränkung wie JPEG. Verschiedene Bereiche im Bild können verschieden stark komprimiert werden (Region-of-Interest-Kompression). Außerdem bietet JPEG 2000 mit dem
JPEG 2000 Interactive Protocol (JPIP) einen Mechanismus zum Lesen einzelner Ausschnitte eines Bildes für
die Übertragung über schmalbandige Netzwerkverbindungen. Diese positiven Eigenschaften haben zu einer Aufnahme von JPEG 2000 in den DICOM-Standard geführt (vgl. Supplement 61 JPEG 2000 Transfer Syntaxes“,
”
Supplement 106 JPEG 2000 Interactive Protocol“ u. a. [17]).
”
JPEG 2000 ist derzeit (2008) der neueste infrage kommende und ein sehr vielseitiger Standard, der durch
die Möglichkeit der Einbettung in DICOM auch eine wichtige Rolle für medizinische Anwendungen spielt.
Nur mit einem in DICOM integrierbaren Bildformat können bestehende PACS5 -Lösungen auch für die digitale
Pathologie verwendet werden. Dennoch verzichten viele Anbieter von Lösungen für die virtuelle Mikroskopie auf
JPEG 2000 und verwenden stattdessen auf TIFF- oder FlashPix-Containern aufbauende Bildformate mit JPEGkomprimierten Kacheln. Als Hauptgrund dafür wird die im Vergleich zu JPEG aufwändigere Dekompression
von JPEG 2000 Bildern angegeben, die die Anzeigegeschwindigkeit beim Betrachten virtueller Präparate zu
sehr beeinträchtigt.
Die Vielzahl von proprietären, nicht zueinander kompatiblen Dateiformaten für virtuelle Präparate ist für Anwender und Entwickler lästig. Beispielsweise muss der Experte bei einer Telekonsultation für jedes potentielle
Bildformat ein eigenes Anzeigeprogramm installiert haben. Auch wenn die Anzeigeprogramme in der Regel
kostenlos sind, ist dies eine unrealistische Voraussetzung. Bei der Einigung auf einen gemeinsamen Standard
für virtuelle Präparate hätte DICOM sicherlich gute Chancen, der Standard muss hierzu jedoch noch erweitert
werden (vgl. Kapitel 2.5.11).
2.2.3 Anbieter für die virtuelle Mikroskopie
Der Autor hatte auf der Medica 2007 die Gelegenheit, verschiedene Produkte für die virtuelle Mikroskopie
kennenzulernen. Im Folgenden werden einige Aspekte dieser Produkte vorgestellt, damit sich der Leser ein Bild
vom gegenwärtigen Stand der Technik machen kann.
1. Hamamatsu Photonics. Die japanische Firma stellt sowohl Komponenten wie Bildsensoren und Laser
als auch komplette bildgebende Systeme her. Das für diese Arbeit relevante Produkt heißt NanoZoo”
mer Digital Pathology“ [40] und besteht aus einem Scanner mit Slidefeeder (max. 210 Objektträger) und
Vegrößerungsstufen von 20x (0,46µm/Pixel) oder 40x (0,23µm/Pixel) sowie der dazugehörigen Softwarelösung. Ein Upgrade für Fluoreszenzaufnahmen ist möglich (gleicher Sensor, aber mit FITC-, TxRedoder Triple-Filter). Das Betrachtungsprogramm NDP.View ist sehr schlicht gehalten, beherrscht aber immerhin einfache Annotationen und Messungen.
4 Eine
E-Mail-Anfrage diesbezüglich an die offizielle Kodak-Imaging-Hotline am 20.12.2007 blieb bis zur Abgabe dieser Diplomarbeit unbeantwortet.
5 Die Abkürzung PACS steht für Picture Archiving and Communication System“.
”
Seite 10
2
GRUNDLAGEN
2. Aperio. Produkte des US-amerikanischen Herstellers Aperio werden seit Januar 2007 in Europa von Nikon vertrieben [76]6 . Das Topmodell ScanScope XT“ bietet einen Slidefeeder (max. 120 Objektträger)
”
und die Standardvergrößerungsstufen 20x (0,5µm/pixel) und 40x (0,25µm/pixel). Aperio bietet auch kleinere Versionen für max. fünf Objektträger (ScanScope CS) bzw. ohne Slidefeeder (ScanScope GL) an,
des Weiteren gibt es noch eine Lösung für Ölimmersions-Mikroskopie (ScanScope OS). Die zugehörige
Softwarelösung zum Betrachten einzelner virtueller Präparate heißt ImageScope“ und unterstützt unter
”
anderem Webkonferenzen, Anschluss eines Scanners zum Live Scan“ und das gleichzeitige Betrachten
”
mehrerer Präparate. Für Speicherung, Verwaltung und (Web-)Retrieval von virtuellen Präparaten bietet
Aperio die Software Spectrum (Plus)“ an.
”
3. Zeiss MicroImaging. Diese deutsche Firma vertreibt drei Produkte für die virtuelle Mikroskopie unter dem Namen MIRAX“ [10]: MIRAX Desk“, MIRAX Midi“ (Slidefeeder für zwölf Objektträger)
”
”
”
und MIRAX Scan“ (bis zu 300 Objektträger). Alle Modelle haben standardmäßig eine Auflösung von
”
0,23µm/Pixel, für die beiden Modelle mit Slidefeeder gibt es Fluoreszenz-Optionen. Auch Standardmikroskope von Zeiss lassen sich mit dem Zusatzprodukt MIRAX Micro“ zum Slidescanner aufrüsten. Auch ein
”
solches System lässt sich optional mit einem Slidefeeder für 50 Objektträger ausstatten. Mit der Betrachtersoftware Mirax View“ können Telekonsultationen durchgeführt werden, ein optionales Modul bietet
”
Hilfe bei TMA-Analysen. Die kostenlose Version erlaubt jedoch nicht einmal Annotationen und nur einfache lineare Messungen. Web-Archive können mit der Software MIRAX Digital Slide Desktop“ erstellt
”
werden.
4. Olympus. Lösungen für die virtuelle Mikroskopie bietet der japanische Hersteller Olympus unter dem
Namen dotSlide“ an [85]. Auch dieses System verwendet 20x- und 40x-Objektive und erreicht mit diesen
”
je nach Adapter Auflösungen zwischen 0,16 und 0,51µm/Pixel. Optional sind ein Slidefeeder für 50 Objektträger und ein TMA-Modul erhältlich. Das Betrachtungsprogramm OlyVIA beherrscht etliche Funktionen
für Konferenzschaltungen mit mehreren Pathologen. In der kostenlosen Version stehen im Gegensatz zur
Vollversion keine Möglichkeiten zur Annotation zur Verfügung.
5. Bacus Laboratories. Dieser US-amerikanische Anbieter7 bewirbt Scanner auf Basis von drei verschiedenen Mikroskopen [84]: Als Bacus Laboratories, Inc. Slide Scanner (BLISS)“ für Olympus BX61 und
”
Zeiss Axioplan 2 sowie als COOLSCOPE VS“ für Nikon. Die Betrachtungssoftware gibt es wahlweise als
”
Windows-Programm ( WebSlide Browser v4.00“) oder als Browser-Plugin ( WebSlide Net Viewer Java
”
”
Applet“). Als Server dient der WebSlide Server“. Bacus bietet außerdem Software für die Bildanalyse,
”
zum Beispiel für TMAs ( TMAscore“).
”
Diese Liste erhebt keinen Anspruch auf Vollständigkeit. Neben den genannten Produkten befinden sich zahlreiche
weitere auf dem Markt (vgl. z. B. [RGM+06]).
2.3 Computergestützte Detektion (CAD)
Mit dem Begriff Computergestützte Detektion (engl.: Computer-assisted Detection oder Computer-aided Detection, CAD) wird eine recht junge Technik bezeichnet, die Ärzten bei der Suche nach pathologischen Veränderungen
in Bildern helfen soll. Bei dieser Technik prüft der Arzt das entsprechende Bild bzw. mehrere Bilder im ersten
Durchgang auf herkömmliche Art und Weise. Anschließend lässt er sich vom Computer besonders verdächtige
Regionen markieren, die über Bildanalyse-Algorithmen ermittelt wurden, und untersucht diese noch einmal
genauer. Der Begriff Computergestützte Diagnose (engl.: Computer-assisted Diagnosis oder Computer-aided
Diagnosis, ebenfalls CAD abgekürzt) wird in der Literatur meist synonym zur Computergestützten Detektion
verwendet, zum Teil wird der Begriff aber auch als Erweiterung um eine Interpretation der Fundergebnisse
verstanden. Die historische Entwicklung von CAD und potentielle zukünftige Einsatzmöglichkeiten aus Sicht
der Radiologie werden ausführlich in [Doi07] beschrieben.
Die Computergestützte Detektion/Diagnose soll vor allem die Zweitbegutachtung durch einen weiteren Experten
ersetzen (vgl. z. B. [KOV+03]). Eine Doppelbegutachtung wird überall dort eingesetzt, wo die Zahl der falschnegativen Testergebnisse minimiert werden soll, also zum Beispiel bei den bösartigen Neubildungen. Der Ersatz
des zweiten Arztes durch ein CAD-System ist insbesondere vor dem Hintergrund von Massenuntersuchungen
6 Auf
der Webseite von Nikon findet sich bislang nur das ScanScope XT“. Weitere Slidescanner und Software finden sich nur bei
”
Aperio selbst [6].
7 Seit Mitte Juli 2006 ist Bacus Laboratories eine 100%-ige Tochtergesellschaft von Olympus America.
Seite 11
2
GRUNDLAGEN
wie dem Mammografie-Screening interessant8 . Bei der hohen Zahl an Untersuchungsfällen ist es schwierig,
genügend hochqualifiziertes Personal für die Zweitbegutachtung zu finden [Ast03]. Außerdem müssen Patienten
bei Doppelbegutachtung grundsätzlich länger auf das Ergebnis warten, insbesondere wenn die beiden Gutachter
räumlich entfernt voneinander sind.
Während in anderen Ländern wie den USA die Zweitbefundung mittels Mammografie-CAD bereits abgerechnet
werden kann, wird in Deutschland noch die herkömmliche Doppelbefundung praktiziert. Derzeit wird aber
auch in Deutschland intensiv zum Thema Mammografie-CAD geforscht, mit teils ermutigenden, teils eher
ernüchternden Ergebnissen (z. B. [WJT+07, MBP+07]). In vielen Studien zeigt sich eine recht hohe Sensitivität (ca. 90%), aber niedrige Spezifität (<50%) der CAD-Algorithmen.
Ein weiteres großes Einsatzgebiet von CAD ist die Früherkennung von Lungenkrebs in Thorax-Röntgenaufnahmen. Die Früherkennung ist hier aufgrund der hohen Inzidenz von Lungenkrebs und einer sehr hohen
Mortalität bei Erkennung in späten Stadien besonders wichtig. Ein Indikator zur Früherkennung von Lungenkrebs ist das Vorhandensein von Lungenrundherden in Thorax-Röntgenaufnahmen und -CTs. Es ist bekannt, dass kleine Lungenrundherde (5-15mm Durchmesser) von menschlichen Betrachtern leicht übersehen
werden [WGC+06]. Mit 13% im Jahr 2004 waren konventionelle Röntgenaufnahmen des Thorax eine der
häufigsten Röntgenuntersuchungen in Deutschland [BMU07]9 . Eine routinemäßige CAD auf diesen Aufnahmen
scheint vielversprechend. Bessere Erkennungsraten von Lungenrundherden liefert allerdings die 3D-CAD auf
Computertomografie-(CT)-Aufnahmen. Entsprechende Software ist seit einigen Jahren kommerziell verfügbar
(z. B. [89, 100]). Aktuell gibt es Bestrebungen, auch für Lungenkrebs-Risikopatienten ein Screeningprogramm
mit niedrig-dosierten CT-Aufnahmen zu entwickeln [VBM+08].
Der dritte große Anwendungsbereich ist schließlich die automatische Erkennung von Polypen im Dickdarm
( virtuelle Darmspiegelung“). Auch hierfür gibt es mittlerweile kommerzielle Geräte, die von der FDA in den
”
USA für die Zweitbegutachtung zugelassen wurden (z. B. [101]).
Die Dokumentation von CAD-Ergebnissen mittels DICOM-SR wird in Kapitel 2.6.5 kurz angesprochen.
2.3.1 CAD in der Pathologie
Das Haupthindernis beim Einsatz von CAD in der Pathologie ist die mangelnde Verbreitung digitalisierter
Präparate. Aber selbst wenn digitale Präparate vorliegen, müssen im Vergleich zur Radiologie ungleich größere
Datenmengen verarbeitet werden (vgl. Kap. 2.2). Es wurde bereits dargestellt, dass sich die Verwendung digitaler Präparate vermutlich langfristig durchsetzen wird. Auch das Problem der großen Datenmengen lässt
sich durch Multi-Resolution-Ansätze und die immer höhere durchschnittliche Rechenleistung von Prozessoren
bereits einigermaßen beherrschen. Insofern ist damit zu rechnen, dass sich CAD in naher Zukunft auch in der
Pathologie etablieren wird.
Forschungsarbeiten zu CAD in der Pathologie gibt es zahlreiche, eine Auswahl sei im Folgenden vorgestellt.
Bereits 1982 versuchten Deugnier et al. in [DMB+82] erfolgreich, den Eisengehalt in Leberbiopsien histologisch halbautomatisch zu bestimmen. Dazu wurden je Präparat in Berliner-Blau-Färbung mehrere MikroskopSichtfelder mit einer Videokamera aufgenommen und die Pixel des Bildes mit einem einfachen Schwellwertverfahren in Pixel mit und ohne Eisengehalt unterteilt. Die Schwellwerte wurden vom Pathologen festgelegt, die
Auszählung der relevanten Pixel erfolgte automatisch. Die Entwicklungen auf diesem Gebiet seither sowie ein
neues Verfahren werden in [OLC+05] beschrieben. Im Artikel [SIM+98] wird ein neuronales Netz zur Analyse von Pap-Abstrichen, einer Früherkennungsmethode des Gebärmutterhalskrebses, vorgestellt. In [BPR+06]
wird CAD zum Grading10 von Prostatatumoren verwendet. Es wird also nicht nur nach verdächtigen Gebieten
gesucht, sondern auch eine Diagnoseunterstützung (Klassifikation mittels Support Vector Machines) geboten.
[KSS+07] beschreibt die Entwicklung eines Systems für die Bestimmung des Differenzierungsgrades beim Neuroblastom. Auch hier kommt maschinelle Klassifikation zum Einsatz. Ein aktuelles Paper zum Thema CAD in
der Pathologie ist [HIJ+08]. Hier ermittelt der Computer über Merkmalsextraktion der Membranen in einem
8 Beim
Mammografie-Screening in Deutschland [56] werden möglichst viele Frauen im Alter von 50-69 einer freiwilligen
Röntgenuntersuchung der Brust unterzogen. Diese Untersuchung wird alle zwei Jahre wiederholt. Zahlreiche Länder auf der
Welt haben ähnliche Programme.
9 Aktuellere Zahlen werden im nächsten Jahresbericht des BMU voraussichtlich Ende 2008 veröffentlicht.
10 Im Bereich der Krebsuntersuchungen bezeichnet Grading“ das Bestimmen des sog. Differenzierungsgrades eines bösartigen
”
Tumors (typischerweise von 1 bis 4, je nach Tumorart existieren verschiedene Skalen). Eine höhere Gradzahl bedeutet geringere
Differenzierung und damit höhere Malignität [Psc98].
Seite 12
2
GRUNDLAGEN
HER2-gefärbten Präparat den Score für eine HER2-Protein-Überexpression beim Mammakarzinom.
Der interessierte Leser findet in den Literaturverweisen der genannten Quellen oder im Internet zahlreiche
weitere CAD-Projekte aus dem histologischen und zytologischen Bereich. Firmen, die sich mit diesem Thema
auseinandersetzen, sind beispielsweise SPC [112] und Definiens [22].
2.4 Strukturierte und standardisierte Dokumentation
2.4.1 Einleitung
Während die medizinische Dokumentation ursprünglich überwiegend als Gedächtnisstütze für das medizinische
Fachpersonal gedacht war, spielt sie heute zunehmend auch eine fachrichtungs- und einrichtungsübergreifende
Rolle. Außerdem wird die medizinische Dokumentation mittlerweile nicht nur von Fachpersonal gelesen. So wird
das Interesse des Patienten an einer ordnungsgemäßen Dokumentation seit vielen Jahren von der Ärzteschaft
anerkannt (vgl. [Bun06], §10, Abs. 1) und zahlreiche Länder versuchen zum Wohle der Volksgesundheit, lebenslange Gesundheitsakten für ihre Bürger einzuführen. Kommt es zu einem Streitfall zwischen Patient und
Arzt, so dient die medizinische Dokumentation als Beweismittel. Teile der medizinischen Dokumentation werden
zudem für Abrechnungszwecke benötigt. Mit der Einführung der diagnosebezogenen Fallpauschalen (Diagnosis
Related Groups, DRG) im Jahr 2004 hat beispielsweise die wirtschaftliche Bedeutung einer vollständigen und
korrekten medizinischen Dokumentation im stationären Bereich drastisch zugenommen.
Neben dem vergrößerten menschlichen Leserkreis medizinischer Dokumentation ist auch deren zunehmende maschinelle Verarbeitung zu berücksichtigen. Aktuelle Bestrebungen zielen dabei nicht nur auf die Erstellung und
Archivierung medizinischer Dokumentation am Computer und die Übermittlung von Dokumenten über Netzwerke, sondern insbesondere auf die maschinelle Interpretierbarkeit von Inhalten, die durch eine Strukturierung
und Standardisierung der Dokumentation erreicht werden kann (vgl. Kap. 2.4.2). Maschinell interpretierbare Dokumente ermöglichen neben der schnelleren Verarbeitung großer Datenbestände, zum Beispiel zu Abrechnungsoder Forschungszwecken, unter anderem eine exaktere Recherche und eine bessere maschinelle Weiterverarbeitung durch die gezielte Extraktion von Inhalten (vgl. Kap. 2.4.3).
An die medizinische Dokumentation werden heute also andere Anforderungen gestellt als noch vor wenigen
Jahren.
2.4.2 Begriffsklärung
Folgende Begriffe sind für verschiedene Ausprägungen medizinischer Dokumentation geläufig (vgl. Abb. 6):
ˆ Freitext. Reiner Freitext entsteht zum Beispiel beim Diktat eines Befundberichts. Auch Entlassungsbriefe
werden meist als Freitext formuliert. Prinzipiell unterliegt Freitext keinerlei Einschränkungen. Die Bedeutung einzelner Informationseinheiten eines Freitextes ist implizit und muss vom Leser aus dem Kontext
abgeleitet werden. Fehlt dem Leser das notwendige Kontextwissen, zum Beispiel weil er einer anderen
Berufsgruppe angehört, so geht bei der Interpretation von Freitext Information verloren.
ˆ Strukturierte Dokumentation. Bei strukturierter Dokumentation wird der Aufbau von Dokumenten
vorgegeben, was im Vergleich zu Freitext die Freiheitsgrade reduziert. Insbesondere wird festgelegt, aus
welchen Informationseinheiten in welcher Reihenfolge ein Dokument bestehen soll und wie diese zueinander
in Beziehung stehen. Eine Strukturierung kann auf inhaltlicher (z. B. klinische Leitlinien: Welche Schritte
sind für die Diagnose einer Krankheit in welcher Reihenfolge notwendig?), formeller (z. B. Vorgaben der
Verwaltung bezüglich der Strukturierung eines Briefkopfes) oder technischer Ebene (z. B. Speicherung
im XML-Format) stattfinden. Vollständig strukturierte Dokumentation findet man in Multiple-ChoiceFormularen, die Dinge durch ihre Merkmale und deren diskrete Ausprägungen beschreiben. Jedem Merkmal wird dazu explizit ein Wert aus einer Menge zulässiger Werte (Wertebereich) zugeordnet11 .
ˆ Standardisierte Dokumentation. Mit standardisierter Dokumentation ist das Bestreben gemeint, die
Syntax von Dokumenten und die Beschreibung der Semantik des Dokumenteninhalts an übergeordneten
regionalen, nationalen oder internationalen Standards auszurichten. Auf syntaktischer Ebene werden zum
11 Solche
Formulare werden beispielsweise für Teile der Pflegedokumentation verwendet (Zeitpunktmessungen der Vitalparameter
oder Dokumentation der Arzneimittelgabe in der Patientenkurve).
Seite 13
2
GRUNDLAGEN
Strukturierte
Dokumentation
Freitext / Diktat
Standardisierte
Dokumentation
SNOMED CT 35601003
Überschrift
SNOMED CT 13427003
Aufzählung
SNOMED CT 24028007
SNOMED CT 234330008
UCUM cm
SNOMED CT 117023006
Absatz
LOINC 22635-7
SNOMED CT 20870005
Bild
SNOMED CT 23592000
HL7-CDA, DICOM-SR, SNOMED, LOINC,
UCUM, ICD, OPS, G-DRG, ATC, MedDRA,...
Abbildung 6: Strukturierte und standardisierte medizinische Dokumentation
Beispiel die Standards DICOM-SR (Kap. 2.6) und HL7-CDA (Kap. 2.6.6) verwendet, die Datenstrukturen
für medizinische Dokumente vorgeben. Eine Standardisierung der semantischen Annotation von Inhalten
wird erreicht, indem für Merkmalsausprägungen ausschließlich Begriffe aus standardisierten Wortschätzen,
wie z. B. kontrollierten Vokabularien, Terminologiesystemen oder Klassifikationen, verwendet werden.
Statt natürlicher Sprache werden bei standardisierter Dokumentation Kodes verwendet, um Dinge zu
referenzieren. So werden beispielsweise Diagnosen über ihren ICD-10-Kode beschrieben oder der Dokumententyp und dessen Zwischenüberschriften über LOINC-Kodes. Sowohl DICOM-SR als auch HL7-CDA
unterstützen die Verwendung solcher Kodes.
In der Praxis liegt medizinische Dokumentation zumeist als Mischform der genannten Ausprägungen vor. Freitext ist eigentlich immer zumindest inhaltlich in irgendeiner Weise strukturiert. Der Strukturierungsgrad von
Dokumenten kann stark variieren. Da eine vollständige Strukturierung die Ausdrucksmöglichkeiten medizinischer Befunde stark eingeschränkt, gibt es beispielsweise Formulare mit überwiegend strukturiertem Anteil, die
an einzelnen Stellen Freitextfelder anbieten (z. B. Anamneseformulare), oder überwiegend freitextliche Dokumente, bei denen einzelne Merkmale explizit ausgezeichnet sind (vgl. Beispiel für strukturierte Dokumentation
in Abb. 6). Als Leitformel für die Aufteilung zwischen Freitext und strukturierter Dokumentation hat sich in
der Praxis Struktur für das Häufige, Freitext für das Seltene“ bewährt. Standardisierte Dokumente sind in der
”
Regel auch strukturiert und strukturierte Dokumente zumindest in Teilen standardisiert. Auch beim Grad der
Standardisierung gibt es verschiedene Abstufungen von standardisiert aufgebauten Dokumenten bis hin zur standardisierten semantischen Annotation aller im Text genannten Merkmale und ihrer Ausprägungen. Die Begriffe
strukturierte Dokumentation“ und standardisierte Dokumentation“ sollten also eher als Qualitätsdimensionen
”
”
denn als feststehende Dokumentenklassen aufgefasst werden.
2.4.3 Vorteile strukturierter und standardisierter Dokumentation
Strukturierte und standardisierte Dokumentation hat zunächst einmal Vorteile für die menschlichen Benutzer,
da mit ihrer Hilfe ungenaue, unvollständige und fehlerhafte Angaben vermieden werden können [Rie06]. Wenn
Dokumente strukturiert aufgebaut sind, können sie leichter mit anderen Dokumenten verglichen und von dritten
Personen verstanden werden [Nou06]. Durch die vorgegebene Struktur, die wie eine Checkliste“ abgearbeitet
”
werden kann, wird die Vollständigkeit der Dokumentation schon bei der Erstellung sichergestellt. Dieser Aspekt
ist vor allem auch für die Ausbildung interessant. Beispielsweise kann mit strukturierter Dokumentation die Unterscheidung zwischen Nullbefunden und nicht-erhobenen Befunden erzwungen werden, während eine fehlende
Freitextangabe Raum für Spekulationen lässt. Schließlich reduziert strukturierte Dokumentation in den meisten
Seite 14
2
GRUNDLAGEN
Fällen die Schreib- und Korrekturarbeit [Lan00].
In der Einleitung wurde beschrieben, dass die vollständige oder partielle Wiederverwendung medizinischer Dokumentation in den letzten Jahren stark zugenommen hat. Dabei spielt die maschinelle Verarbeitung aufgrund
ihrer Schnelligkeit und Präzision eine immer größere Rolle. Für eine erfolgreiche Wiederverwendung müssen
Dokumente folgende Eigenschaften erfüllen:
ˆ Leichte Auffindbarkeit. Dokumente müssen mit hoher Wahrscheinlichkeit gefunden werden (Recall)
und dann auch relevant sein (Präzision).
ˆ Automatische Auswertbarkeit.
ˆ Einfache Weiterverarbeitung. Zum Beispiel beim Archivieren oder Kommunizieren.
Im Vergleich zur Volltextsuche in Freitexten können mit standardisierter Dokumentation sowohl Recall als auch
Präzision einer Suchanfrage verbessert werden:
ˆ Recall. Der Einsatz von Kodes erlaubt das Durchsuchen von fremdsprachigen Texten mit der gleichen
Suchanfrage. Bei Verwendung eines konzeptorientierten Terminologiesystems können Synonyme automatisch in die Suchanfrage integriert werden.
ˆ Präzision. Der Einsatz von eindeutigen Kodes bietet Schutz vor sprachlichen Mehrdeutigkeiten (z. B.
HWI“, kann Harnwegsinfekt“ oder Hinterwandinfarkt“ bedeuten).
”
”
”
Werden in der standardisierten Dokumentation hierarchisch klassifizierte Kodes (Taxonomien) verwendet, so
können Suchanfragen leicht verfeinert oder verallgemeinert werden.
Strukturierte Dokumente mit einer beschränkten Menge an Merkmalsausprägungen lassen sich sehr gut automatisch auswerten. Bei standardisierter Dokumentation sind die Merkmalsausprägungen kodiert und damit maschinell semantisch auswertbar. In vielen Fällen können dadurch automatisch abrechnungsrelevante Diagnosenund Prozedurenkodes abgeleitet ( automatic coding“ [Nou06]) oder Systeme zur Entscheidungsunterstützung
”
(Decision Support Systems, DSS) integriert werden [Lan00].
Das Archivieren und Kommunizieren von Dokumenten wird durch die Verwendung internationaler Standards wie
DICOM-SR und HL7-CDA erleichtert, da für Dokumente in diesen Formaten bereits entsprechende technische
Lösungen existieren. Grundsätzlich fördert die Beschränkung auf wenige, aber flexible Dokumentenformate, die
teilweise maschinell auswertbar sind, die Informationsintegration innerhalb einer Einrichtung.
2.4.4 Textbausteine versus strukturierte Eingabe
Es gibt im Wesentlichen zwei verschiedene Methoden zur Erstellung von strukturierten und standardisierten
Befundberichten: Die Verwendung von Textbausteinen und die strukturierte Eingabe (engl.: Structured Data
”
Entry“, SDE).
Bei der Verwendung von Textbausteinen wählt der Benutzer aus einer Liste vorgefertigter, längerer Textfragmente ein geeignetes aus. Da die Auswahl insbesondere für häufig verwendete Textbausteine sehr schnell geht,
kann so die Texteingabe stark beschleunigt werden. Außerdem wird das ermüdende Formulieren immer gleicher Textfragmente vermieden [Nou06]. Ausgefeilte Lösungen für Textbausteine erlauben die Modifikation der
Textinhalte an einigen Stellen ( Lückentext“). In den Textbausteinen können für einzelne Begriffe oder ganze
”
Abschnitte Kodes hinterlegt sein. Auf diese Weise kann eine standardisierte Dokumentation erzeugt werden, ohne dass der Benutzer mit Kodes und den zugrundeliegenden Terminologien oder Ordnungssystemen konfrontiert
wird.
Bei der strukturierten Eingabe wird dem Benutzer eine vorgegebene Struktur, z. B. ein Formular, präsentiert,
bei der er wiederum aus mehreren Möglichkeiten wählen muss. Im Vergleich zu den Textbausteinen erfolgt die
Eingabe aber feingranularer. Beispielsweise entscheidet sich der Benutzer zwischen verschiedenen Ausprägungen
eines Attributs ( Ankreuzen“ auf einem Formular) oder für den nächsten passenden Teilsatz in einem Fließ”
text. Die strukturierte Eingabe erfolgt dabei typischerweise nicht wahlfrei sondern ähnlich einer mündlichen
Befragung strikt sequentiell. Das schrittweise Abarbeiten erlaubt es, den Benutzer nur mit den Entscheidungen
zu konfrontieren, die im jeweiligen Kontext tatsächlich relevant sind. Dieses Konzept wird in den Sozialwissenschaften Filter“ oder Contingency Question“ genannt [114]. Auch mit strukturierter Eingabe kann eine
”
”
standardisierte Dokumentation erzeugt werden. Im Gegensatz zu Textbausteinen können nicht nur einzelne
Wörter oder Abschnitte mit Kodes hinterlegt werden, sondern Kodes können auch aus mehreren aufeinander-
Seite 15
2
GRUNDLAGEN
folgenden Eingabeschritten abgeleitet“ werden.
”
Neben starren Textbausteinen und flexibler strukturierter Eingabe sind viele Zwischenformen denkbar.
2.4.5 Strukturierte Befundberichte in der Pathologie
Die grundsätzliche Gliederung pathologischer Befundberichte ergibt sich aus dem Arbeitsablauf und ist zumindest deutschlandweit nahezu einheitlich:
1. Klinische Angaben. Im Institut für Pathologie am Universitätsklinikum Schleswig-Holstein, Campus
Lübeck, (UK-SH)) wird dieser Abschnitt Klinische Diagnose / Fragestellung“ genannt. Hier wird die Fra”
gestellung des Auftraggebers, typischerweise also des klinisch tätigen Arztes, wiederholt. Ist eine relevante
Vorerkrankung und eine eventuell zugehörige Therapie bekannt oder gab es bereits eine Voreinsendung,
so wird dies ebenfalls aufgeführt.
2. Eingesandtes Material.
3. Makroskopischer Befund. Listet die Einzelbefunde bei der Untersuchung am Zuschnittplatz.
4. Mikroskopischer Befund. Listet die Einzelbefunde der Untersuchung aller zum Fall gehörigen Präparate
unter dem Mikroskop.
5. Diagnose. Häufig wird synonym der Begriff Begutachtung“ oder Beurteilung“ verwendet. Wird die
”
”
Überschrift Begutachtung“ gewählt, so schließt dieser Abschnitt meist den Kommentar (siehe nächster
”
Punkt) ein.
6. Kommentar.
Zwischen 2. und 3. befindet sich oft noch eine Aufzählung, was sich in welchem Paraffinblock befindet (vgl. Abb.
4) – dieser Abschnitt ist besonders gut strukturierbar.
Der auftraggebende Arzt interessiert sich eigentlich nur für Diagnose und Kommentar. Aufgabe des ausführlichen
makroskopischen und mikroskopischen Befundes ist vor allem, im Streitfall nachvollziehen zu können, ob der Pathologe etwas übersehen oder nur“ falsch bewertet hat. Haftbar gemacht werden kann er nur für Einzelbefunde,
”
die übersehen wurden.
Befunde, die ausschließlich aus Textbausteinen bestehen, sind in der Pathologie illegitim, da ein solches Vorgehen
dem Prinzip einer patientenspezifischen ärztlichen Leistung widerspräche. Dennoch werden Textbausteine auch
von Pathologen häufig eingesetzt. Gängig scheint die Befundschreibung anhand weniger, längerer Textbausteine,
die an die jeweilige Beobachtung angepasst werden. Eine gewisse Unschärfe durch diese Textbausteine wird in
Kauf genommen, solange sie nicht die Diagnose beeinflusst.
Strukturierte Dateneingabe hat sich in der Pathologie bisher nicht durchgesetzt. In den speziellen PathologieInformationssystemen (z. B. NEXUS / PATHOLOGIE [74] oder dc-pathos/ipms [21]) findet sich höchstens die
Zuordnung von Freitext zu den oben genannten Überschriften eines Befundberichts. Als Austauschformat wird
Microsoft Word verwendet. Auch allgemeinere Softwareprodukte, die für andere Fachdisziplinen durchaus eine
strukturierte Eingabe ermöglichen, bieten für die Pathologie entweder überhaupt keine oder nur eine minimale
Lösung an (z. B. Clinic Windata [28] oder MediColor [65]). Dies mag daran liegen, dass in anderen medizinischen Fachdisziplinen wie der Gastroenterologie eine wichtige Motivation für den Einsatz von strukturierter
Dokumentation die Ableitung von Kodes ist, die für Abrechnungszwecke benötigt werden. Für niedergelassene
Pathologen entfällt jedoch diese Motivation, da sie nach der Anzahl der Materialien“ (z. B. Mamma + Biopsie
”
vorne/hinten/rechts/links/oben/unten = 7 Materialien) sowie der Anzahl der Sonderfärbungen bezahlt werden.
Beide Parameter fallen jeweils in eine EBM- bzw. GOÄ-Kategorie und werden dann zu einem Gesamtscore
verrechnet. Die beiden genannten Parameter können aber nicht zuverlässig aus den Befundtexten abgeleitet
werden.
Kapitel 4.4.2 erklärt, wie strukturierte und standardisierte Befundberichte in der Pathologie zukünftig aussehen
könnten.
Seite 16
2
GRUNDLAGEN
2.5 Der DICOM-Standard
Dieser Abschnitt führt in den DICOM-Standard ein. Aufgrund des Umfangs des DICOM-Standards muss die
Einführung stark lückenhaft und oberflächlich bleiben. Die Kenntnis des DICOM-Jargons“, der sich in einigen
”
Punkten von der in der Softwaretechnik verwendeten Terminologie unterscheidet, und der Grundprinzipien von
DICOM ist jedoch für das Verständnis der folgenden Kapitel von Bedeutung. Viele DICOM-Begriffe wurden
für einen besseren Lesefluss ins Deutsche übersetzt. Eine Liste von übersetzten und nicht-übersetzten DICOMBegriffen findet sich in Anhang B.
2.5.1 Allgemeines
DICOM ( Digital Imaging and Communications in Medicine“) ist ein objektorientierter Standard für die In”
teroperabilität von medizinischen Anwendungen. Er definiert Datenstrukturen für medizinische Bilddaten der
verschiedensten Fachdisziplinen sowie die dazugehörigen Metadaten, Dienste für den Austausch über Netzwerke
und Formate für die Speicherung auf Datenträgern.
Der Standard geht weit über ein herkömmliches Bildformat hinaus. Neben den üblichen 2D-Bildern können
unter anderem 3D-Bilder, Videos und 1D-Signalverläufe – wie beispielsweise ein EKG – im DICOM-Format
gespeichert werden, aber auch Arbeitslisten und ärztliche Befundberichte (s. u.). Diese digitalen Informationen
werden im DICOM-Jargon Informationsobjekte ( Information Objects“) genannt. Zusätzlich zu den Datenfor”
maten bietet DICOM für jedes Informationsobjekt zahlreiche Dienste ( Service Classes“) an, beispielsweise für
”
die Suche ( Query“) und den Versand ( Retrieve“ bzw. Storage“) von DICOM-Objekten über Netzwerke, das
”
”
”
Drucken ( Print Management“), die Langzeitarchivierung ( Storage Commitment“) oder auch den Austausch
”
”
auf Datenträgern ( Media Storage“). Weitere Dienste umfassen die Verschlüsselung und die elektronische Signa”
tur von Daten sowie die Workflow-Unterstützung. Die Einheit aus Informationsobjekt und darauf ausführbaren
Diensten wird Service-Object Pair“ (SOP) genannt. In Analogie zum Modell der Klasse mit Attributen und
”
Methoden in der objektorientierten Programmierung spricht man von verschiedenen SOP-Klassen.
Arbeitsorganisation und
medizinische Dokumentation
RIS
Administration und Abrechnung
Datenakquisition
KIS
Bildgebende Systeme
HL7
(DICOM)
HL7
DICOM
Archivierung und Patientenakte
Digitales Bildarchiv (PACS)
DICOM
DICOM
Bildverarbeitung und Befundung
Röntgenfilmbelichter
Befundungsarbeitsplatz
Abbildung 7: Arbeitsteilung der IT im Krankenhaus aus Sicht der Radiologie (nach [Eic08], Bilder aus [125])
Abbildung 7 macht deutlich, zwischen welchen Teilsystemen im Krankenhaus typischerweise DICOM verwendet
wird (dicke rote Linien). Sowohl Abteilungsinformationssysteme (hier: Radiologieinformationssystem, RIS) als
Seite 17
2
GRUNDLAGEN
auch einrichtungsweite Informationssysteme (KIS) unterstützen demnach heute überwiegend kein DICOM; hier
wird meist der andere wichtige Kommunikationsstandard in Krankenhäusern, HL7, zum maschinellen Datenaustausch verwendet.
2.5.1.1 DICOM Conformance Statements
DICOM ist so umfangreich, dass kein medizintechnisches Gerät alle Datenformate und Dienste des Standards
implementiert. Daher wird im DICOM-Standard (in PS 3.2) definiert, wie Hersteller in einem sogenannten
DICOM Conformance Statement“ selbst niederschreiben können, welche Datenformate und Dienste ihre me”
dizintechnischen Geräte unterstützen. Die Idee der Conformance Statements hat sich mittlerweile durchgesetzt,
die Hersteller bildgebender Geräte bzw. mit Bildern in Zusammenhang stehender Software stellen diese nahezu ausnahmslos auf ihren Webseiten oder auf Nachfrage bereit. Eine internationale Zertifizierungsstelle, die
sicherstellt, dass die in den Conformance Statements der Firmen gemachten Angaben korrekt sind, existiert
allerdings nicht; die Idee einer solchen Kontrollinstanz wird ständig wiederkehrend schon seit Ende 1993 unter
dem Stichwort DICOM Police“ diskutiert12 .
”
2.5.2 Geschichtliche Entwicklung
Der DICOM-Standard hat seine Ursprünge 1983 in einer gemeinsamen Anstrengung zweier US-amerikanischer
Berufsverbände: Dem American College of Radiology (ACR) und der National Electrical Manufacturers Association (NEMA). Motivation für einen neuen Standard waren die zahlreichen verschiedenen Dateiformate der
Modalitäten13 zu Beginn der 1980er Jahre. Die erste Version des Standards wurde 1985 unter dem Namen
ACR-NEMA-Standard“ veröffentlicht. Eine starke Einschränkung im Standard war die fehlende Netzwerk”
kommunikation. Eine deutlich erweiterte Version 2.0 des Standards folgte drei Jahre später und verbreitete sich
bereits recht weit, obwohl sie weiterhin keine gängigen Netzwerkstandards unterstützte.
DICOM als Nachfolger des ACR-NEMA-Standards wurde ab 1990 entwickelt und erstmals im Jahre 1993
vorgestellt. Der DICOM-Standard trägt keine Versionsnummer, die verschiedenen Versionen unterscheiden sich
durch ihr Suffix in Form einer Jahreszahl. Um die Herkunft von DICOM aus den ACR-NEMA-Standards
zu verdeutlichen, wird jedoch manchmal auch von DICOM 3.0“ gesprochen. Unter anderem ermöglichte der
”
DICOM-Standard die in ACR-NEMA 1 und 2 vermisste Netzwerkkommunikation über Standardprotokolle
wie OSI-Protokolle oder TCP/IP. Der DICOM-Standard wurde 1995 überarbeitet und wird seit 1999 zumeist
jährlich aktualisiert vom DICOM Standards Committee“ (im Folgenden: DICOM-Komitee) herausgegeben14 .
”
1995 wurde DICOM mit kleinen Änderungen unter dem Namen MEDICOM“ vom CEN/TC 251 auch in Europa
”
als Vornorm verabschiedet und im Jahr 2004 als Europäische Norm (EN) veröffentlicht [CEN04]. Ebenfalls im
Jahr 2004 wurde Teil 18 des DICOM-Standards ( Web Access to DICOM persistent Objects (WADO)“) nahezu
”
unverändert von der ISO/TC 215 als ISO 17432 standardisiert [ISO04]. 2006 wurde der DICOM-Standard
schließlich vollständig (inklusive Teil 18) als ISO 12052 veröffentlicht [ISO06]. Der Standardisierungsprozess
wird dabei weiterhin ausschließlich durch das DICOM-Komitee durchgeführt (vgl. Kap. 2.5.3), ISO 12052 ist
nur eine Referenz auf die jeweils aktuelle, vollständige DICOM-Version. [Oos05, Eic02, Rie06]
Aus dem Umfeld der diagnostischen Radiologie entstanden, verbreitet sich der DICOM-Standard durch die
Aufnahme weiterer Modalitäten in den letzten Jahren zunehmend auf andere klinische Bereiche wie zum Beispiel
die Kardiologie, Strahlentherapie, Chirurgie, Gastroenterologie, Geburtshilfe/Gynäkologie oder Pathologie.
Im Laufe der Jahre wurde der DICOM-Standard an aktuelle Technologien wie beispielsweise Digitales Röntgen,
Optische Kohärenztomographie (OCT), DVD-RAM, MOD, USB-Sticks, MPEG-2, JPEG 2000, PDF und HL7CDA angepasst. Gleichzeitig wurde großer Wert auf die Abwärtskompatibilität des zugrundeliegenden Binärformats gelegt, da die teuren bildgebenden Geräte in der Medizintechnik oft jahrzehntelang betrieben werden und
zudem gesetzliche Archivierungsfristen bis zu 30 Jahren zu berücksichtigen sind [Eic08]. Durch die Erweiterung
des Standards auf weitere Anwendungsbereiche und aktuelle Technologien hat der Umfang von DICOM im
Laufe der Jahre kontinuierlich zugenommen; Abbildung 8 verdeutlicht diese Tendenz.
12 Siehe
http://groups.google.de/group/comp.protocols.dicom/browse_thread/thread/bde08a238dd7ee50/d41e66bf5abfae94
der bildgebenden Medizin steht der Begriff Modalität“ für eine beliebige Art von Gerät, mit der man Bilder (zumeist vom
”
menschlichen Körper) anfertigen kann.
14 Diese Diplomarbeit basiert auf der im Januar 2008 veröffentlichten und zum Zeitpunkt der Erstellung der Arbeit gültigen Version
DICOM 2008 [DIC08a].
13 In
Seite 18
2
GRUNDLAGEN
aben des DICOM-Standards:
750 Seiten
3500
1050 Seiten
3000
1400 Seiten
2500
1500 Seiten
1650 Seiten
2000
1950 Seiten
1500
2100 Seiten
1000
3100 Seiten
500
3300 Seiten
0
3450 Seiten
1993 1996 1998 1999 2000 2001 2003 2004 2006 2007
erantwortlich:
des DICOM-Komitees
Abbildung 8: Entwicklung der Summe der Seitenzahlen des DICOM-Standards [Eic08]
Arbeit:
2.5.3 Standardisierungsprozess
d Correction
Proposals
Die Entwicklung des DICOM-Standards wird, wie oben erwähnt, vom DICOM-Komitee vorangetrieben. An
dieser internationalen Organisation sind, verwaltet von der NEMA Medical Imaging and Technology Alliance“,
”
sowohl die Hersteller der einzelnen Modalitäten, RIS- und PACS-Lösungen als auch die Anwender in Form
der jeweiligen Fachverbände vertreten. Des Weiteren können Standardisierungsgremien und Regierungsämter
stimmberechtigtes Mitglied im Komitee werden. Eine Liste der Mitglieder des DICOM-Komitees findet sich im
World Wide Web [25].
Kolloquium des Instituts für Med. Informatik,
Korrekturen gehen9in Form von Correction Proposals (CP)“, Erweiterungen
in Form
von Supplements (Supp)“
Uni Lübeck,
2008-01-17
”
”
in den Standard ein. Diese Dokumente enthalten jeweils nur die Unterschiede im Vergleich zur derzeit aktuellen
offiziellen DICOM-Version und sind daher für sich allein gesehen oft unverständlich. Der Hauptteil der Arbeit
für die Erweiterung und Korrektur des Standards wird in mehr als 20 sogenannten Working Groups“ erbracht,
”
die vom DICOM-Komitee eingesetzt werden. Einen guten Überblick über die verschiedenen Working Groups
und deren kurz- und langfristigen Ziele bietet [DIC08e].
Die im Laufe des Jahres gesammelten Correction Proposals und Supplements werden Working Group 06 ( Base
”
Standard“) zum Review vorgelegt. Im Falle eines Supplements folgt eine public comment“-Phase mit ab”
schließender schriftlicher Abstimmung (engl.: letter ballot“) über die Aufnahme in den Standard durch die
”
Mitglieder des DICOM-Komitees. Schließlich werden die Änderungen und die akzeptierten Ergänzungen in die
üblicherweise Anfang des Jahres erscheinende aktuelle Version des Standards eingearbeitet.
Die genauen Regularien ( Procedures“) des DICOM-Standardisierungsprozesses sind öffentlich einsehbar [27].
”
Einen guten Einblick in die aktuellen Entwicklungen im DICOM-Standard bieten die Sitzungsprotokolle der
Working Group 6 (WG-06, Base Standard“), die ebenfalls öffentlich einsehbar sind [26].
”
2.5.4 Aufbau des Standards
DICOM folgt einer ISO/IEC-Direktive zum Aufbau von internationalen Standards [ISO97]. In der Version für
das Jahr 2008 besteht der DICOM-Standard aus 16 Teildokumenten PS 3.1 bis PS 3.18 (die Teile PS 3.9
und PS 3.13 sind inzwischen obsolet und wurden aus dem Standard entfernt). Abbildung 9 verdeutlicht die
Beziehung der einzelnen Teile des DICOM-Standards zueinander, während Tabelle 1 noch einmal den Umfang
der jeweiligen Teile verdeutlicht.
Im weiteren Verlauf dieser Arbeit werden PS 3.3 und PS 3.16 ausführlich behandelt. Die anderen Teile spielen
für diese Arbeit eine untergeordnete Rolle und werden hier kurz vorgestellt:
Seite 19
GRUNDLAGEN
Annexes
Part 17: Explanatory Information
Web
Access
Codes &
Templates
Profiles
Part 15: Security and
System Management Profiles
Part 16: Content Mapping Resource
Display
Part 14: Grayscale Standard
Display Function
Media
Storage Interchange
Point to
Point
Print
Network and
Point to Point
Communication
Part 13: Print Management Point to Point
Communication Support
General
Aufbau des DICOM-Standards – Überblick
Part 2: Conformance
Part 6: Data Dictionary
Part 5: Data Structures and Encoding
Part 9:
Point to Point
Communication
Part 8:
Network
Communication
Part 7:
Message Exchange
Part 10:
Media Storage
and File Format
Part 12:
Media Formats and
Physical Media
for Media Exchange
Part 18: Web Access to DICOM
Persistent Objects (WADO)
Part 3: Information Object Definitions
Part 11: Media Storage Application Profiles
Part 4: Service Class Specifications
Part 1: Introduction and Overview
2
Kolloquium
des Instituts für Med. Informatik,
Abbildung 9: Aufbau des DICOM-Standards
[Eic08]
10
Teil
PS 3.1
PS 3.2
PS 3.3
PS 3.4
PS 3.5
PS 3.6
PS 3.7
PS 3.8
(PS 3.9)
PS 3.10
PS 3.11
PS 3.12
(PS 3.13)
PS 3.14
PS 3.15
PS 3.16
PS 3.17
PS 3.18
Titel
Introduction and Overview
Conformance
Information Object Definitions
Service Class Specifications
Data Structures and Encoding
Data Dictionary
Message Exchange
Network Communication Support for Message Exchange
obsolet
Media Storage and File Format for Media Interchange
Media Storage Application Profiles
Formats and Physical Media
obsolet
Grayscale Standard Display Function
Security and System Management Profiles
Content Mapping Resource
Explanatory Information
Web Access to DICOM Persistent Objects (WADO)
Summe:
Uni Lübeck, 2008-01-17
# Seiten
21
342
1097
288
108
106
124
56
–
34
76
55
–
55
80
831
297
22
3592
Tabelle 1: DICOM 2008 – Teile und jeweilige Seitenanzahl (wichtigste Teile für diese Arbeit fett gedruckt)
Seite 20
2
GRUNDLAGEN
ˆ PS 3.2 beschreibt, wie DICOM-Conformance-Statements aufgebaut sein und welche allgemeinen Anforderungen konkrete DICOM-Implementierungen erfüllen müssen (vgl. Kap. 2.5.1.1). Diese Fragestellungen
sind erst dann von Interesse, wenn eine fertige DICOM-Lösung vermarktet werden soll. Es ist nicht zu
erwarten, dass das Ergebnis der Diplomarbeit diesen Status erreicht.
ˆ PS 3.4 beschreibt die logische Ebene von Diensten ( Services“), die auf den in PS 3.3 beschriebenen
”
Informationsobjekten ausgeführt werden können. In dieser Arbeit geht es im Wesentlichen um das Erstellen
von DICOM-konformen Informationsobjekten. Das Thema DICOM-Dienste wird in Kapitel 2.5.9 und
4.3.4 nur kurz angesprochen. Prinzipiell wird davon ausgegangen, dass DICOM-Dienste (beispielsweise
digitale Signatur oder Langzeitarchivierung) – wenn nötig – über am Markt befindliche Standardwerkzeuge
implementiert werden können.
ˆ PS 3.5, 3.6, 3.10 und 3.11 behandeln die unteren Ebenen der Kodierung von DICOM-Objekten. In dieser
Arbeit wird davon ausgegangen, dass die Kodierungsebenen weitgehend sogenannten DICOM-Toolkits“
”
überlassen werden können, die für die verschiedensten Programmiersprachen zur Verfügung stehen (vgl.
Kap. 2.5.10).
ˆ PS 3.7, 3.8 und 3.18 beschäftigen sich mit den unteren Ebenen der Netzwerkkommunikation sowie mit
Kodierungsdetails auf der Anwendungsebene, Aspekten, die ebenfalls den DICOM-Toolkits überlassen
werden.
ˆ PS 3.12 beschreibt physikalische Datenträger, die in dieser Arbeit keine Rolle spielen.
ˆ PS 3.14 betrifft ausschließlich bildliche Medien.
ˆ PS 3.15 beschreibt Sicherheitserweiterungen von DICOM, die hier höchstens am Rande erwähnt werden.
2.5.5 Das DICOM-Modell der realen Welt
Das häufig zitierte Entity-Relationship-Diagramm in Abbildung 10 verdeutlicht, welche Objekte (Entitäten) der
realen Welt im DICOM-Standard berücksichtigt und zueinander in Beziehung gebracht werden. Man beachte
den hierarchischen Aufbau der Ebenen Patient“, Study“, Series“ sowie der Ebene mit den Elementen, die
”
”
”
eine Series“ beinhaltet. Jedes Objekt der unteren Ebenen gehört zu exakt einem Vater-Objekt“ der jeweils
”
”
15
höheren Ebene.
Die wichtigsten Objekte im DICOM-Modell der realen Welt seien hier kurz erläutert:
ˆ Ein Patient ist ein Mensch oder Tier, der bzw. das Dienstleistungen des Gesundheitswesens beansprucht
oder zukünftig beanspruchen soll. Alternativ kann ein Patient das Betrachtungsobjekt einer oder mehrerer
Untersuchungen zu anderen Zwecken sein. (PS 3.3, Kap. 7.3.1.1 [DIC08a]).
ˆ Eine Study (deutsch: Untersuchung) ist die Menge aller Bilder, Befundberichte, Patientenkurven etc., die
für die Bestimmung einer Diagnose erstellt wurden.
ˆ Eine Series (deutsch: Folge) ist eine logische Gruppe von Bildern, Befundberichten, Patientenkurven etc.
Insbesondere sollen alle Bestandteile einer Folge von der gleichen Modalität erzeugt worden sein. Weitere
Gruppierungsregeln finden sich in PS 3.3, Anhang A.1.2.3 [DIC08a].
In der untersten Objektebene sei insbesondere auf die folgenden Typen verwiesen (Details siehe PS 3.3, Anh.
A.1.2.6-A.1.2.16 [DIC08a]):
ˆ Image beschreibt die Pixeldaten und Farbpaletten eines digitalisierten Bildes. Ein Bild ist in DICOM
immer zweidimensional zu verstehen. Es besteht aber die Möglichkeit, mehrere zusammengehörige zweidimensional strukturierte Pixelmengen, sog. Frames“ (z. B. Schichtbilder einer tomografischen Aufnahme),
”
in einer einzigen Objektinstanz zusammenzuführen. Dies heißt im DICOM-Jargon Multi-Frame Image“.
”
ˆ Ein Waveform-Objekt (deutsch: Signalverlauf) beschreibt eindimensionale, in regelmäßigen zeitlichen Intervallen erhobene physikalische Messwerte auf einem oder mehreren Kanälen. Beispiele für Signalverläufe
sind die Daten eines EKGs/EEGs oder der Verlauf des intrathorakalen Druckes bei maschineller Beatmung.
ˆ SR Document steht für Structured Report Document“, ein strukturiertes Informationsobjekt (typischer”
weise ein ärztlicher Befundbericht) nach dem DICOM-SR-Standard (vgl. Kap. 2.6).
ˆ Eine Objektinstanz vom Typ Encapsulated Document kapselt Dokumente, die nicht in einem DICOMFormat vorliegen, gemeinsam mit zusätzlichen Informationen wie der Herkunft der Dokumente und des
15 DICOM
verwendet nicht die in der Objektorientierung üblichen Begriffe Klasse und Objekt. Stattdessen werden Klassen als
Objekt ( Object“) und Objekte als Objektinstanzen ( Object Instance“) bezeichnet. Der Begriff Klasse“ ist in DICOM für die
”
”
”
Kombination aus Datenstrukturen (Informationsobjekten) und darauf aufgeführten Operationen reserviert ( SOP-Klassen“). In
”
diesem Kapitel wird die DICOM-Terminologie verwendet.
Seite 21
2
GRUNDLAGEN
PS 3.3 - 2008
Page 54
Patient
1
1
makes
has
1-n
1-n
Visit
1
includes
1-n
Study
1-n
Comprised
of
1-n
Modality Performed
Procedure Steps
1
1
includes
contains
1-n
1-n
0-1
Frame of
Reference
1-n
Spatially
Defines
1
1-n
creates
Equipment
Series
1-n
Spatially
Defines
1
contains
1
0-n
0-n
Image
Fiducials
0-n
Registration
0-n
Radiotherapy
Objects
0-n
0-n
SR Document
MR Spectroscopy
0-n
Presentation
State
0-n
Encapsulated
Document
0-n
Waveform
0-n
Raw Data
0-n
Real World
Value Mapping
Figure
7-1a
Abbildung 10: DICOM Model of the
Real-World“
(PS 3.3, Abb. 7-1a [DIC08a])
”
DICOM
MODEL OF THE REAL-WORLD
- Standard -
Seite 22
2
GRUNDLAGEN
Dokumenttitels, so dass diese ebenfalls in DICOM-Archiven abgelegt und über DICOM-Dienste kommuniziert werden können. Unter anderem erlaubt der DICOM-Standard das Einkapseln von PDF- (Supp
104) und HL7-CDA-Dokumenten (Supp 114) [17].
ˆ Objektinstanzen vom Typ Presentation State (Supp 33, Supp 100 [17]) beschreiben, wie die Pixelwerte
eines Bildes dem Betrachter präsentiert werden sollen. Beispielsweise kann über einen Presentation State
der anzuzeigende Bildausschnitt, die Fensterung von Grauwerten und/oder der Kontrast angegeben werden. Des Weiteren erlauben Presentation States die Annotation von Bildern mit Text, Vektorgrafiken
(z. B. Punkte, Linien, Ellipsen) oder überlagerten Bitmaps. Supplement 120, das sich kurz vor der Verabschiedung befindet, erweitert die Annotationsmöglichkeiten um diverse standardisierte, zusammengesetzte
Vektorgrafiken wie Pfeile, Skalen und Fadenkreuze und weitere geometrische Figuren. Eine Einführung in
das Konzept der Presentation States bietet [ERK+00].
2.5.6 Logischer Aufbau von DICOM-Informationsobjekten
In diesem Abschnitt wird der logische Aufbau eines DICOM-Informationsobjekts Top-down, also von großen,
übersichtlichen Einheiten hin zu kleinen Details beschrieben.
2.5.6.1 Information Object Definitions (IODs)
Jedes Informationsobjekt wird in DICOM durch eine Information Object Definition“ (IOD) auf standardisierte
”
Weise definiert. In einer IOD wird festgelegt, aus welchen Informationseinheiten ( Information Entities“, IE)
”
des DICOM-Informationsmodells die betrachtete komplexe Datenstruktur aufgebaut ist. Besteht eine IOD aus
einer einzelnen IE, spricht der DICOM-Standard analog zur Datenbankterminologie von einer normalisierten
IOD ( Normalized IOD“), anderenfalls von einer zusammengesetzten IOD ( Composite IOD“). Jede IE besteht
”
”
ihrerseits aus einem oder mehreren Modulen ( Modules“). Für jedes Modul ist festgelegt, welche Attribute
”
( Attributes“) es enthalten darf.
”
Ein normalisiertes Informationsobjekt enthält also nur solche Daten, die inhärent zu dem Objekt der realen
Welt gehören, das es repräsentiert. Wird die Instanz eines solchen Informationsobjekts kommuniziert, so wird
der Kontext in Form von Zeigern auf andere Objektinstanzen übermittelt (PS 3.3., Kap. 6.1.2 [DIC08a]). Dies
ist mit dem call-by-reference“-Konzept in Programmiersprachen vergleichbar. Normalisierte Objektinstanzen
”
kommen verhältnismäßig selten vor und werden im Folgenden nicht weiter berücksichtigt.
Zusammengesetzte Informationsobjekte dürfen hingegen Informationen enthalten, die nicht inhärent im zugehörigen Objekt der realen Welt, sondern in anderen realen Ojekten, die mit dem betrachteten Informationsobjekt in Beziehung stehen, enthalten sind (PS 3.3., Kap. 6.1.1 [DIC08a]). Ein Beispiel hierfür ist das Informationsobjekt Computed Tomography Image“, das nicht nur Informationen über die Pixelwerte des Bildes in sich
”
trägt, sondern auch Informationen zum Patienten, von dem das Bild aufgenommen wurde, zur jeweiligen Untersuchung, zur aktuellen Bildfolge und zum CT-Gerät ( Equipment“), mit dem die Bildsequenz aufgenommen
”
wurde. Zugunsten der Unabhängigkeit der einzelnen Informationsobjekte (die Betrachtung des Informationsobjekt ist völlig isoliert von anderen Entitäten) wird also Redundanz (jedes Bild der beschriebenen CT-Bildfolge
enthält die gleichen Informationen aus den anderen Entitäten) und damit ein höherer Speicherbedarf und die
Gefahr von Inkonsistenzen in Kauf genommen. Bei der Kommunikation einer zusammengesetzten Objektinstanz
werden alle Kontextinformationen mit übertragen. Dies ist vergleichbar mit dem call-by-value“-Konzept bei
”
der Parameterübergabe in Programmiersprachen.
Alle zusammengesetzten IODs (Anhang A.2-A.54), IEs (Anhang A.1.2), Module und deren Attribute (Anhang
C) kann man in PS 3.3 Information Object Definitions“ nachschlagen [DIC08a]. Beispiele für Definitionen von
”
IODs, IEs und Modulen und weitere Erläuterungen finden sich weiter unten in Kapitel 2.6.1 dieser Arbeit.
2.5.6.2 Attribute
Attribute sind die kleinste logische Einheit eines DICOM-Objektes und daher von besonderer Bedeutung. Instanzen eines DICOM-Informationsobjekts bestehen letztlich aus einer hierarchisch flachen Menge von Attributen.
Die Strukturierung in Module und IEs dient lediglich der Spezifikation und ist Objektinstanzen nicht mehr
anzusehen.
Jedes Attribut wird über eine eindeutige 32-Bit-Kennung identifiziert, das sogenannte Attribut-Tag ( Attribute
”
Seite 23
2
GRUNDLAGEN
Tag“). Dieses Tag wird in DICOM stets achtstellig hexadezimal kodiert und in der Form eines geordneten Paares
(gggg,eeee) angegeben. Aus historischen Gründen wird die vordere Komponente des Paares Gruppennummer
( Group Number“) und die hintere Komponente Elementnummer ( Element Number“) genannt; in den alten
”
”
ACR-NEMA-Standards (Version 1 und 2) hatten die Gruppen strukturierende Funktion. In DICOM wurden
zwar die Begrifflichkeiten beibehalten, die Vergabe von Tags orientiert sich aber nicht mehr zwangsläufig an
Gruppen:
Although similar or related Data Elements often have the same Group Number; a Data Group does
”
not convey any semantic meaning beginning with DICOM Version 3.0.“
DICOM PS 3.5, Kap. 7.1 [DIC08a].
Neben dem Tag wird ein Attribut durch seinen Namen, seinen Datentyp und seine Multiplizität beschrieben. Die
27 zulässigen DICOM-Basisdatentypen ( Value Representations“, VR) werden in PS 3.5, Kapitel 6.2, aufgelistet
”
[DIC08a]. Wie viele Werte des entsprechenden Datentyps ein Attribut enthalten darf, schreibt seine Multiplizität
( Value Multiplicity“, VM) vor.
”
Der DICOM-Standard enthält in PS 3.6, dem sogenannten DICOM Data Dictionary“, eine Liste vordefinierter
”
Attribute für die Anwendung im medizinischen Umfeld. Für jedes dieser Attribute wird
das Attribut-Tag, der
PS 3.6-2008
Attribut-Name, der Datentyp und die Multiplizität der Attributwerte angegeben. Abbildung
Page 13 11 zeigt einen
kleinen Ausschnitt aus dieser Liste, die ca. 2.500 Einträge umfasst.
Tag
Name
VR
VM
(0010,0010)
Patient’s Name
PN
1
(0010,0020)
Patient ID
LO
1
(0010,0021)
Issuer of Patient ID
LO
1
(0010,0022)
Type of Patient ID
CS
1
(0010,0030)
Patient's Birth Date
DA
1
(0010,0032)
Patient's Birth Time
TM
1
(0010,0040)
Patient's Sex
CS
1
(0010,0050)
Patient's Insurance Plan Code Sequence
SQ
1
Abbildung
11: Ausschnitt
aus dem
(0010,0101)
Patient’s
Primary Language
CodeDICOM
Sequence Data
(0010,0102)
Dictionary
(PS 13.6 [DIC08a])
SQ
Patient’s Primary Language Code Modifier Sequence
SQ
1
Das Nachschlagen
von Attributen
im DICOM Data Dictionary ist eineLOhäufige Tätigkeit
für Programmierer,
(0010,1000)
Other Patient IDs
1-n
die sich mit den mittleren Kodierungsebenen von DICOM beschäftigen. Für häufiges Nachschlagen im DICOM
(0010,1001)
Other Patient Names
PN
1-n
Data Dictionary
bieten sich
statt der beschränkten Suchfunktionen von
PDF-Betrachtern
webbasierte NachOther Patient [68]
IDs Sequence
1
schlagewerke(0010,1002)
wie die DICOMpedia
oder Offline-Nachschlagewerke SQ
wie das kleine
Tool Java Dicom Buddy
[33] an.
(0010,1005)
Patient's Birth Name
PN
1
(0010,1010)
Patient's Age
AS
1
(0010,1020)
Size unter den Attributen nehmen Attribute
DS
1
Sequenzattribute
Eine Patient's
Sonderrolle
vom Datentyp
Sequence of Items“
”
(SQ) ein. Der
Wert eines
Sequenzattributs
ist eine Liste von Attributmengen
(0010,1030)
Patient's
Weight
DS
1( Items“), die wiederum Se”
quenzattribute
enthaltenPatient's
könnenAddress
[Eic02]. Auf diese Weise kann die prinzipiell
flache
Hierarchie eines DICOM(0010,1040)
LO
1
Informationsobjekts überwunden werden:
(0010,1050)
Insurance Plan Identification
LO
1-n
RET
ˆ Zusammengehörige
Attribute
können
in einer Attributmenge gruppiert
werden.
(0010,1060)
Patient's
Mother's
Birth Name
PN
1
ˆ Mit Hilfe von verschachtelten Sequenzattributen können baumartige Datenstrukturen realisiert werden.
(0010,1080)
Military Rank
LO
1
Diese Möglichkeit wird insbesondere bei DICOM-SR intensiv genutzt (vgl. Kap. 2.6).
(0010,1081)
Branch of Service
LO
1
(0010,1090)
Medical Record Locator
LO
1
Private Attribute Keine Regel ohne Ausnahme: Das weiter oben stehende Zitat aus dem DICOM-Standard,
(0010,2000)
Medical Alerts
LO
1-n
nach dem die Gruppennummer eines Attributs keine semantische Bedeutung hat, ist so nicht ganz korrekt. Al(0010,2110)
Allergies
LO
le im DICOM Data Dictionary definierten Standard-Attribute haben eine gerade1-n
Gruppennummer. Anwender
Country of Residenceum eigene, private Attribute LO
1
können die (0010,2150)
Liste der Standardattribute
mit ungerader
Gruppennummer erweitern16 . Private
Attribute
werden
im
DICOM-Standard
in
PS
3.5,
Kapitel
7.8,
näher
beschrieben
[DIC08a]. In
(0010,2152)
Region of Residence
LO
1
(0010,2154)
Patient’s
Telephone
Numbers
SH
1-nGroups“ bekannt. Dieser Begriff
Konzept
ist aus Version
1 und
2 der ACR-NEMA-Standards
unter dem Namen
Shadow
”
wird im DICOM-Standard
nicht
mehr
verwendet.
(0010,2160)
Ethnic Group
SH
1
16 Dieses
(0010,2180)
Occupation
SH
1
(0010,21A0)
Smoking Status
CS
1
(0010,21B0)
Additional Patient History
LT
1
- Standard -
Seite 24
2
GRUNDLAGEN
der Praxis werden private Attribute sehr häufig verwendet, man trifft mitunter auf DICOM-Dateien, die nahezu
ausschließlich private Attribute enthalten. Das Einsatzgebiet von DICOM kann durch solche benutzerspezifischen Einträge auch über den medizinischen Bereich hinaus erweitert werden.
Private Attribute haben jedoch auch gravierende Nachteile (vgl. z. B. Kapitel 5.4.2 in [Pia08]). Zum einen behindert der Einsatz von privaten Attributen die semantische Interoperabilität, da private Attribute eben gerade
nicht standardisiert sind. Zum anderen kann es passieren, dass verschiedene Hersteller das gleiche Attribut-Tag
aus dem privaten Bereich für völlig verschiedene Attribute einsetzen. In PS 3.5, Kapitel 7.8.1, wird eine Strategie
vorgestellt, wie solche Kollisionen vermieden werden sollen.
Private Attribute sollen aufgrund der angedeuteten Problematiken in dieser Arbeit nicht näher behandelt werden.
2.5.6.3 UIDs
An vielen Stellen im DICOM-Standard werden weltweit eindeutige Bezeichner ( Unique Identifier“, UID) ver”
wendet, beispielsweise für Konzepte wie SOP-Klassen und Transfersyntaxen. Als Schlüssel für konkrete Untersuchungen oder Bilder dienen ebenfalls UIDs. Jedes Programm, dass DICOM-Objekte erzeugen oder verändern
kann, muss daher auch UIDs erzeugen können.
Die in DICOM verwendeten UIDs sind dem ISO-Standard 8824 [ISO02] entsprechend aufgebaut, der UIDs
als Wege in einer Baumstruktur auffasst. UIDs bestehen demnach aus mehreren Zahlen, die jeweils mit einem
Punkt getrennt werden. Jede Zahl steht für einen zu wählenden Weg an einem Baumknoten. Die Blätter des
Baumes zeigen auf die Objekte. Der HL7-Standard (vgl. Kap. 2.6.6) benutzt das gleiche Format für eindeutige
Bezeichner, dort werden sie jedoch Object Identifier“ (OID) genannt.
”
Eine UID ist logisch in zwei Teile geteilt. Der erste Teil einer UID ist Schlüssel für die verwaltende Organisation
( org root“), der zweite Teil, das Suffix“, ist der Schlüssel für das eigentliche Objekt. Die verwaltende Orga”
”
nisation hat sich darum zu kümmern, nach welchem Prinzip die UIDs im Unterbaum vergeben werden. Alle
im DICOM-Standard definierten UIDs beginnen mit 1.2.840.1000817 . Die UID 1.2.840.10008.5.1.4.1.1.2
beispielsweise bezeichnet die SOP-Klasse CT Image Storage“. Der hierarchische Aufbau von UIDs wird von
”
DICOM nicht systematisch ausgenutzt, man kann also nicht von einer UID auf ihre Semantik schließen. Stattdessen findet sich ein Verzeichnis aller DICOM-UIDs inklusive Verweis auf weitere Informationen im Anhang A
von PS 3.618 . Weitere Informationen zum Aufbau und zur Registrierung von UIDs finden sich in PS 3.5, Kapitel
9 und Anhang C. [DIC08a]
2.5.6.4 Kodierte Merkmalsausprägungen in DICOM
Viele DICOM-Module erlauben den Einsatz von Kodes aus anderen Standards für die Beschreibung von Merkmalsausprägungen. Beispiele dafür sind die Angabe der Muttersprache des Patienten, Kodes für Krankenhäuser,
Einweisungsdiagnosen, angeforderte Prozeduren, anatomische Strukturen etc. Besonders häufig werden kodierte
Elemente im DICOM-SR-Bereich verwendet (vgl. Kap. 2.6).
Wie kodierte Elemente in DICOM dargestellt werden, wird in PS 3.3, Kapitel 8, beschrieben [DIC08a]. Im
einfachsten Fall wird ein Tripel aus einem Kodewert ( Code Value“, z. B. I21.0“), einem Bezeichner für das
”
”
verwendete Kodierungsschema ( Coding Scheme Designator“, z. B. I10“ für ICD-10) und einem Kurztext für
”
”
die Kodebedeutung ( Code Meaning“, z. B. Akuter transmuraler Myokardinfarkt der Vorderwand“) angege”
”
ben. Eine Liste von in DICOM verwendeten Kodierungsschema-Bezeichnern findet sich in PS 3.16, Kapitel 8
[DIC08a], es sind jedoch auch andere Bezeichner zulässig. Für interne oder für den lokalen Gebrauch erstellte
Kodierungsschemata sollen analog zum HL7-Standard Bezeichner verwendet werden, die mit der Zeichenfolge
99“ beginnen. Der Kurztext für die Kodebedeutung ist dann relevant, wenn auf dem System, welches das
”
Dokument anzeigen soll, das jeweilige Kodierungsschema nicht zur Verfügung steht.
Zusätzlich zum genannten Tripel kann die Version des verwendeten Kodierungsschemas ( Coding Scheme Versi”
on“) angegeben werden, falls die Angabe von Kodewert und Kodierungsschema-Bezeichner allein nicht eindeutig
ist. Die in DICOM standardisierten Bezeichner enthalten jedoch großenteils bereits Versionsinformationen.
Stammt der Konzeptname aus einem kontrollierten Vokabular, so kann diese Herkunft über erweiterte Angaben
17 Dieses
18 Für
Präfix soll nicht für selbst erzeugte ( private“) UIDs verwendet werden.
”
häufiges Nachschlagen von DICOM-UIDs bietet sich wiederum die DICOMpedia an [68].
Seite 25
2
GRUNDLAGEN
( Enhanced Encoding Mode Attributes“) verdeutlicht werden (vgl. Visualisierung in Abb. 32).
”
SNOMED als Kodierungsschema in DICOM DICOM erlaubt explizit den Einsatz verschiedener Versionen
von SNOMED als Kodierungsschema für kodierte Elemente. Ursprünglich benutzte der DICOM Standard eine
Untermenge der SNOMED International (Version 3), das SNOMED DICOM Microglossary (SDM, [Bid98b]). Als
Bezeichner für dieses Kodierungsschema wurde 99SDM“ verwendet19 . Später wurden die Bezeichner SNM3“
”
”
für Snomed International (Version 3) und SRT“ für SNOMED-RT eingeführt.
”
Die neueste Version von SNOMED, SNOMED Clinical Terms (SNOMED-CT), wird im DICOM 2007 Standard
nicht explizit erwähnt. Im DICOM Correction Item CP-730 wird jedoch klargestellt, dass eine Verwendung
von SNOMED-CT kein Problem ist [DIC07]. Für SNOMED-CT Kodes soll der Bezeichner SRT“ und die
”
von SNOMED-RT bekannte alphanumerische SnomedId (inklusive Bindestrich) statt der mit SNOMED-CT
eingeführten rein numerischen ConceptId verwendet werden20 . Da alle SNOMED-CT Konzepte sowohl einen
numerischen als auch einen alphanumerischen Kode besitzen, ist dies keine Einschränkung. Im DICOM 2008
Standard sind die Änderungsvorschläge des Correction Item CP-730 bereits eingearbeitet.
2.5.7 Binäre Kodierung von DICOM-Informationsobjekten
Für die Datenspeicherung oder Übermittlung von DICOM-Informationsobjekten werden diese binär kodiert.
Auf die binäre Kodierungsebene soll hier nur kurz eingegangen werden. Dieser Abschnitt soll im Wesentlichen
deutlich machen, dass das Binärformat von DICOM-Informationsobjekten viele Freiheitsgrade hat, was die
Programmierung aufwändig macht. Daher sollte nach Möglichkeit auf fertige Programmbibliotheken ( DICOM”
Toolkits“, s. Kap. 2.5.10) zurückgegriffen werden.
Abbildung 12 skizziert die binäre Kodierung von DICOM-Informationsobjekten. Ein binär kodiertes DICOMAttribut wird auch als Datenelement ( Data Element“) bezeichnet und enthält neben dem Attribut-Tag und
”
einem Feld für Attributwerte noch Informationen zur Länge dieses Wertfelds und optional den Datentyp des
PS 3.5-2008
Attributs. Die aufsteigend nach Tagnummer sortierte Liste aller Datenelemente eines Informationsobjekts
heißt
Page 35
Datensatz ( Data Set“).
”
Data Set
Data Elem.
order of transmission
Data Elem.
Data Elem.
Data Elem.
Data Element
Tag
Value
Length
VR
Value Field
optional field - dependent on
negotiated Transfer Syntax
Abbildung 12: Datenelement ( Data Element“) und Datensatz ( Data Set“) (aus PS 3.5, Abb. 7.1-1)
”
”
Jedem Attribut wird im Data Dictionary“ von PS 3.6 eindeutig ein Datentyp zugeordnet. Insofern kann der
”
Datentyp prinzipiell weggelassen werden ( Implicit VR“).
Wenn
das verarbeitende System keinen Zugriff auf das
Figure
7.1-1
”
DICOM DATA
SEToder
AND neu
DATA
ELEMENT STRUCTURES
DICOM-Dictionary hat oder im Datensatz
private
eingeführte
Attribute verwendet werden, so kann
die Angabe des Datentyps hingegen sinnvoll sein ( Explicit VR“). Mischformen mit expliziter und impliziter
”
7.1.1 DATA
ELEMENT
FIELDS
Angabe der Datentypen
sind
innerhalb
eines Datensatzes nicht zulässig.
19 DICOM
A Data Element is made up of fields. Three fields are common to all three Data Element structures; these
benutzt
Konvention
aus HL7
Version
2, nach
alleField.
Bezeichner
fürfield,
Kodierungsschemata,
die mitis99“
beginnen,
arehier
theeine
Data
Element Tag,
Value
Length,
and der
Value
A fourth
Value Representation,
” only
private Kodierungsschemata
beschreiben;
Bezeichner
für lokale
Kodierungsschemata
beginnen
mit L“.
present
in
the
two
Explicit
VR
Data
Element
structures.
The
Data
Element
structures
are
defined
in
”
20 In einigen Sonderfällen müssen oder können weiterhin die Bezeichner 99SDM“ und SNM3“ verwendet werden. Diese Sonderfälle
Sections 7.1.2. and 7.1.3. The definitions of the fields” are:
”
werden ebenfalls in [DIC07] bei den Änderungen zu PS 3.16, Abschnitt 8.1, erklärt.
Data Element Tag:
An ordered pair of 16-bit unsigned integers representing the Group Number
followed by Element Number.
Value Representation:
A two-byte character string containing the VR of the Data Element. The VR
Seite 26
for a given Data Element Tag shall be as defined by the Data Dictionary as
specified in PS 3.6. The two character VR shall be encoded using characters
from the DICOM default character set.
Value Length:
Either:
2
GRUNDLAGEN
Die Kodierung von Attributwerten ist sehr komplex:
ˆ Die Anzahl der Bytes ( Value Length“) für einen Attributwert muss immer grade sein. Welches Zeichen bei
”
ungerader Länge als Füllzeichen verwendet und ob das Füllzeichen vorne oder hinten angehängt werden
kann, ist in der Liste der Basistypen (Tabelle 6.2-1 in PS 3.5 [DIC08a]) nachzulesen.
ˆ Bei Zahlenwerten, die aus mehreren Bytes bestehen, unterstützt DICOM verschiedene Byte-Sortierungen
( Little Endian“, Big Endian“, vgl. Kap. 7.3 in PS 3.5).
”
”
ˆ Für die Kodierung von Zeichenketten unterstützt DICOM etwa ein Dutzend verschiedene Standards,
darunter ISO 8859 und Unicode mit UTF-8-Kodierung21 .
ˆ Bei mehrwertigen Attributen mit einem Datentyp variabler Länge wird der Backslash ( \“) als Trenn”
zeichen zwischen den einzelnen Werten verwendet. Hat das Attribut einen Datentyp feste Länge, so wird
kein Trennzeichen verwendet.
ˆ Bilddaten können komprimiert kodiert werden. Dabei werden wiederum verschiedene Verfahren wie eine
in DICOM definierte Lauflängenkodierung (RLE), JPEG (verlustfrei und verlustbehaftet) und JPEG 2000
unterstützt.
ˆ Sequenzattribute können entweder mit expliziter Längenangabe oder undefinierter Länge kodiert werden.
Wird die Länge einer Sequenz bzw. ihrer Items nicht angegeben, so zeigt stattdessen ein spezielles Attribut
( Sequence Delimitation Item“ bzw. Item Delimitation Item“) das Ende einer Sequenz bzw. eines Items
”
”
an.
Bei der Kommunikation eines Datensatzes zwischen zwei DICOM-Systemen muss ausgehandelt werden, welche
der vielfältigen oben genannten Kodierungsoptionen verwendet werden. Diese Spezifikation von Kodierungsregeln wird Transfersyntax ( Transfer Syntax“) genannt. Jede DICOM-Anwendung muss mindestens die DICOM
”
”
default Transfer Syntax“ ( Implicit VR Little Endian“, keine Bilddatenkompression) unterstützen.
”
Beim Speichern von DICOM-Datensätzen in eine Datei kann keine Transfersyntax mit dem Zielsystem ausgehandelt werden. In diesem Fall werden Informationen zur verwendeten Transfersyntax in einen zusätzlichen
sogenannten File Meta Information“-Header geschrieben, der seinerseits mit der Transfersyntax Explicit VR
”
”
Little Endian“ kodiert ist. Binär kodierte DICOM-Dateien lassen sich verhältnismäßig übersichtlich mit dem
kostenlosen Sante DICOM HEXViewer“ betrachten [97].
”
2.5.8 XML-Kodierung von DICOM-Informationsobjekten
Betrachtet man die komplizierten Kodierungsregeln für das DICOM-Binärformat, drängt sich aus heutiger Sicht
die Frage auf, ob man DICOM-Informationsobjekte mit ihren üblicherweise zahlreichen Metainformationen
nicht besser in einem XML-Format speichern sollte. Für XML spräche unter anderem die bessere Lesbarkeit
kodierter Information durch menschliche Benutzer, die weite Verbreitung auch in anderen Fachdisziplinen, die
Verfügbarkeit von Standardwerkzeugen für die Erzeugung und Verarbeitung und die direkte Unterstützung
in zahlreichen Programmiersprachen. Tatsächlich gibt es etliche Vorschläge, wie allgemeine DICOM-Strukturen
oder zumindest bestimmte Arten von DICOM-Informationsobjekten in XML kodiert werden könnten [BSB+01,
THL02, LH03, Bru05]. Ein offizielles, durch das DICOM-Komitee verabschiedetes XML-Format für DICOMInformationsobjekte gibt es jedoch nicht. Als Begründung dafür werden folgende Gründe genannt:
ˆ Für die großen Datenmengen medizinischer Bilder ist ein Binärformat besser geeignet als XML.
ˆ Das DICOM-Binärformat kann aus Gründen der Abwärtskompatibilität zunächst nicht abgeschafft werden
(Aufbewahrungsfrist für medizinische Daten ca. 30 Jahre).
ˆ Das DICOM-Komitee möchte nicht zwei offizielle Repräsentationen für DICOM-Informationsobjekte pflegen. Jedem Anwendungsprogrammierer ist freigestellt, intern ein eigenes XML-Format zu verwenden.
2.5.9 Netzwerkdienste mit DICOM
In diesem Abschnitt soll ein kurzer Überblick über die DICOM-Netzwerkkommunikation gegeben werden. Die
folgenden Ausführungen gelten für alle DICOM-Informationsobjekte, also auch für die in dieser Arbeit behandelten DICOM-SR-Dokumente.
21 Bei
Verwendung eines Zeichensatzes mit mehreren Kodeseiten, kann innerhalb einer Zeichenkette zwischen diesen umgeschaltet
werden. Auch die Erweiterung eines Zeichensatzes um eigene Zeichen ist möglich.
Seite 27
2
GRUNDLAGEN
Begriffsdefinitionen Dienste werden im DICOM-Jargon analog zur Begriffsverwendung in der Objektorientierung Service-Klassen ( Service Classes“) genannt, da sie die zulässigen Operationen (Methoden) auf festgelegten
”
Datenstrukturen (DICOM-Informationsobjekten) beschreiben.
Im DICOM-Jargon wird ein Dienstanbieter als Service Class Provider (SCP) bezeichnet. Ein Computerprogramm, das Dienste eines SCP in Anspruch nimmt, wird Service Class User (SCU) genannt. Diese Begriffe
entsprechen den sonst in der Informatik üblichen Begriffen Server“ und Client“. Eine Verbindung zwischen
”
”
SCU und SCP wird im DICOM-Standard Association“ genannt.
”
Die Rollen von SCU und SCP können bei jedem DICOM-Kommando anders verteilt sein, was bei der Erläuterung
von DICOM-Kommunikation oftmals zu Verwirrung führt. Im Folgenden sollen daher zwei weitere Begriffe verwendet werden:
ˆ Als DICOM-Server“ wird in dieser Arbeit eine Systemkomponente aus Software und möglicherweise
”
dedizierter Hardware verstanden, die klassische PACS-Funktionalität erfüllt, also Bilder DICOM-konform
archiviert und über ein Computernetzwerk zugreifbar macht.
ˆ Als DICOM-Anwendung“ wird ein Softwaresystem oder ein System aus Hard- und Software verstanden,
”
das Bilder auf dem DICOM-Server ablegt (z. B. Software der Modalität CT“) oder auf Bilder des PACS
”
zugreift (z. B. Befundungssoftware auf einem klinischen PC-Arbeitsplatz).
Verbindungsaufbau Eine DICOM-Association entspricht im Wesentlichen einer TCP-Netzwerkverbindung
zwischen SCU und SCP. Allerdings findet auf DICOM-Netzwerkebene zusätzlich eine ausführliche Verhandlung
statt, welche SOP-Klassen und zusätzlichen Optionen auf beiden Seiten unterstützt werden. Zu den Optionen
gehört beispielsweise die sog. Transfersyntax, die die Byte-Reihenfolge (Big Endian, Little Endian) und etwaige
Kompressionsalgorithmen (JPEG, MPEG,...) vorgibt.
DICOM Query/Retrieve Service Class Ein Standard-Anwendungsfall für DICOM-Netzwerkdienste ist die
Suche nach Bildern mit einem bestimmten Kriterium in einem Bildarchiv und deren anschließende Übertragung
vom DICOM-Server zu einer DICOM-Anwendung. Dieses Szenario wird durch die Service-Klasse Query/Re”
trieve“ realisiert (PS 3.4, Anhang C [DIC08a]).
Das Dienstprimitiv für die Suche heißt C-FIND (das C steht für Composite, Bilder sind Composite-Objekte).
Beim Aufruf von C-FIND übergibt der Client (SCU) einen Datensatz mit DICOM-Attributen an den Server
(SCP). In diesem Datensatz werden zwei Arten von Attributen ( Request Identifier“) unterschieden [64]:
”
ˆ Attribute mit Werten beschreiben einen Filter, der auf die DICOM-Objekte des Servers angewandt werden
soll. Es sollen also diejenigen DICOM-Objekte in die Suchantwort aufgenommen werden, deren Attribute mit den Filterattributen übereinstimmen (vgl. WHERE-Angabe im SQL-SELECT-Statement). Dabei
können die üblichen Platzhalter * und ? verwendet werden, es ist also keine exakte Übereinstimmung der
Attributwerte erforderlich. Für Zeit- und Datumsangaben kann man Zeiträume über Start- und Endzeit
bzw. -datum angeben. Eine genaue Beschreibung, wie bei C-FIND auf Übereinstimmung von Attributwerten geprüft wird, findet sich in Anhang C.2.2.2 von PS 3.4 [DIC08a].
ˆ Attribute ohne Wert (leere Attribute) beschreiben, welche Attribute zusätzlich vom C-FIND SCP für jedes
gefundene Objekt zurückgegeben werden sollen (vgl. Angabe der Spalten im SQL-SELECT-Statement).
Der DICOM-Standard definiert drei Vorgehensmodelle für die Suche in DICOM-Archiven ( Standard Que”
ry/Retrieve Information Models“, vgl. PS 3.4, Anhang C.3 [DIC08a]):
ˆ Patient Root
ˆ Study Root
ˆ Patient/Study Only (mit Version 2006 des DICOM-Standards als obsolet gekennzeichnet)
In allen drei Modellen wird der hierarchische Aufbau des DICOM-Informationsmodells (siehe Abb. 10 bzw. 14)
ausgenutzt, was an die Hierarchischen Datenbankmodelle aus den 1970er-Jahren erinnert. Das Abfragemodell
Patient Root“ startet bei der Suche auf der obersten Hierarchieebene und identifiziert dort über die Patient ID“
”
”
die gewünschte Objektinstanz. Anschließend kann die gesuchte Composite-Objektinstanz über die eindeutigen
Schlüssel der niedrigeren Ebenen ( Study Instance UID“, Series Instance UID“ und SOP Instance UID“) bzw.
”
”
”
bei Fehlen eines Schlüssels über andere Suchparameter der jeweiligen Hierarchieebene identifiziert werden. Das
Abfragemodell Study Root“ startet mit der Suche auf der Ebene Study“ und verhält sich ansonsten genauso.
”
”
Seite 28
2
GRUNDLAGEN
Das Modell Patient/Study Only“, das nicht mehr verwendet werden soll, berücksichtigte nur die obersten
”
beiden Ebenen, eine Suche nach Bildern ist mit diesem Modell also nicht möglich.
In der Radiologie, die der Motor für die DICOM-Entwicklung ist, herrscht üblicherweise ein untersuchungszentrierter Arbeitsablauf. Daher unterstützen die meisten PACS-Systeme und DICOM-Toolkits zumindest das
Study Root“-Abfragemodell. Patienteninformationen werden bei diesem Modell als Attribute der Untersuchung
”
und nicht als eigene Informationseinheit verstanden.22
Nachdem ein geeignetes Bild ausgewählt ist, soll dieses vom DICOM-Server abgerufen werden. Dafür bietet der
DICOM-Standard zwei Dienstprimitive an: C-MOVE und C-GET.
C-MOVE veranlasst den DICOM-Server, seinerseits als SCU eine C-STORE-Verbindung zu einer anderen DICOM-Anwendung ( Application Entity“, AE) aufzubauen. Dabei kann der Endpunkt dieser Verbindung die
”
gleiche Anwendung sein, die den C-MOVE-Befehl initiiert hat – dies ist sogar der Regelfall. Wie [64] darstellt,
hat der C-MOVE-Befehl entscheidende Nachteile:
ˆ Da im C-MOVE-Befehl als Argument für die empfangende AE lediglich deren Name ( Application Entity
”
Title“, AET), eine bis zu 16 Zeichen lange Folge von ASCII-Zeichen, angegeben wird, muss der DICOMServer vorab die zum Namen gehörige IP-Adresse und Portnummer kennen. Üblicherweise geschieht die
Zuordnung von AET zu IP-Adresse und Port statisch in einer Konfigurationsdatei des DICOM-Servers
(vgl. Abb. 40).
ˆ Außerdem muss sichergestellt sein, dass der DICOM-Server die DICOM-Anwendung über die angegebene
Netzwerkadresse erreichen kann. Dabei können zum Beispiel dynamische IP-Adressen, zwischengeschaltete
NAT-Router oder zu strenge Firewall-Einstellungen problematisch sein.
Ein Vorteil der von C-MOVE erzwungenen Vorgehensweise ist hingegen, dass der Administrator des DICOMServers über die Zuordnungsliste von AEs zu Netzwerkadressen bereits implizit eine Art Zugriffsschutz in der
Hand hat, mit dem nicht-authorisierte DICOM-Anwendungen ausgesperrt werden können.
C-GET wickelt im Gegensatz zu C-MOVE die Anfrage nach einem Bild und dessen Übertragung über die gleiche
Netzwerkverbindung ab.
Nahezu alle DICOM-Server unterstützen das C-MOVE Dienstprimitiv für die Übertragung von Bildern, da
dieser Dienst auch in anderen Zusammenhängen gebraucht wird. C-GET-Funktionalität wird nur in seltenen
Fällen angeboten.
2.5.10 DICOM-Toolkits
Die Erstellung von Software, die DICOM-konforme Daten lesen und/oder schreiben kann bzw. DICOM-konforme
Dienste anbietet und/oder nutzt, ist aufgrund der Komplexität des DICOM-Standards (vgl. Tab. 1) ein mühsames
Unterfangen. Natürlich kann man versuchen, diese Herausforderung anzunehmen:
If your brain power seriously outweighs your budget, you might be tempted to develop some DICOM
”
programming from scratch.“ [Pia08]
Eine von Grund auf neu entwickelte DICOM-Lösung wird jedoch in der Regel nur eine stark eingeschränkte
Funktionalität bieten können ( Bild A kann gelesen werden, Bild B aber leider nicht“) oder aber jahrelange
”
Entwicklungsarbeit erfordern. Zahlreiche Firmen und Forschungseinrichtungen haben dieses Problem erkannt
und bieten dem Anwendungsprogrammierer Bibliotheken zur DICOM-Entwicklung an, die DICOM Toolkits“
”
oder DICOM SDKs“ genannt werden (im Folgenden: Toolkits“). Toolkits bilden die in DICOM verwendeten
”
”
Datenstrukturen auf typischerweise stärker abstrahierte Datenstrukturen der jeweiligen Programmiersprache ab
und bieten Funktionsbibliotheken für häufig benötigte Problemstellungen.
Bestandteile von DICOM-Toolkits
Gängige Toolkits bieten unter anderem:
ˆ Funktionen zum Lesen und Schreiben von zum Beispiel
22 Anmerkung:
Der Arbeitsablauf in der Pathologie ist typischerweise probenzentriert. Informationen zu Proben werden in DICOM
aber bisher der Informationseinheit Patient“ zugeordnet. Für pathologische Anwendungen benötigte man also das Patient
”
”
Root“-Abfragemodell. Dieses Problem wird mit dem frisch verabschiedeten Supplement 122 beseitigt, das die Informationen zu
Proben der Informationseinheit Image“ zuordnet (vgl. Kap. 2.5.11).
”
Seite 29
2
GRUNDLAGEN
– Metainformationen im Header einer DICOM-Datei
– DICOM-Bilddateien verschiedener Modalitäten und Transfersyntaxen (vgl. Kap. 2.5.7)
* Unterstützung verschiedener Kodierungsschemata (Big Endian, Little Endian etc.)
* Unterstützung der in DICOM zugelassenen Kompressionsalgorithmen (RLE, JPEG etc.)
–
–
–
–
Presentation-States (vgl. Kap. 2.5.5)
DICOM-Signalverläufen (sog. waveforms“, selten)
”
DICOM-SR-Dokumenten (selten; vgl. Kap. 2.6)
ACR-NEMA-Dateien (Version 1 und 2), dem Vorgängerformat von DICOM
ˆ Funktionen für die Anzeige von Bildern, zum Beispiel
– Unterstützung verschiedener Farbpaletten
– Unterstützung von Fensterung bei der Darstellung von Bildern (z. B. Hounsfield-Werte)
– Fertige Komponenten für grafische Benutzeroberflächen von Bildbetrachtungsprogrammen
ˆ Funktionen für das Versenden und Empfangen von DICOM-Dateien und -Nachrichten über Computernetzwerke
ˆ Funktionen für die Suche von Objekten in DICOM-Archiven
ˆ Funktionen für die Erstellung DICOM-konformer Datenträger (sog. DICOM Storage Media“)
”
ˆ Funktionen für das Einlesen von Bilddaten über externe Geräte (z. B. Scanner)
ˆ Funktionen zum Signieren von DICOM-Dateien bzw. zum Prüfen der Signatur (selten)
ˆ Funktionen zur Manipulation von DICOM-Datenstrukturen auf niedriger Abstraktionsebene (z. B. Unterstützung bei der Erstellung und dem Auslesen von Sequenzattributen, vgl. Kap. 2.5.7)
ˆ Logging-Funktionen
ˆ Eine maschinenlesbare Version des sogenannten DICOM-Dictionary“ (vgl. DICOM PS 3.6 [DIC08a])
”
ˆ Eine maschinenlesbare Version der Kontextgruppen in DICOM PS 3.16 (selten; vgl. Kap. 2.6.3 und 4.1)
ˆ Kommandozeilenprogramme zum Testen
Der Funktionsumfang der Toolkits variiert erheblich. Zahlreiche Toolkits beschränken sich auf einen speziellen
Ausschnitt der DICOM-Welt, häufig auf die Bildanzeige und -bearbeitung oder die Netzwerkkommunikation.
Aussagen der Hersteller wie 100% DICOM complete and compliant“ sollten daher ebenso skeptisch hinterfragt
”
werden wie Behauptungen, dass ein Toolkit industry leading“ sei.
”
Lizensierungskosten Kommerzielle Toolkits bieten meist Entwicklerlizenzen für einige hundert Euro an, die
auf einem einzigen Arbeitsplatz verwendet werden dürfen. Für die Verbreitung von Software, die auf das jeweilige Toolkit aufsetzt, müssen entweder eine unbeschränkte Runtime-Lizenz für typischerweise einige tausend
Euro oder rechnerbezogene Runtime-Lizenzen für jeweils einige zig Euro erworben werden. Es gibt aber auch
zahlreiche kostenlose Toolkits der Open-Source-Gemeinde mit zum Teil beachtlichem Umfang und guter Kodequalität.
Programmiersprachen und Plattformen Native“ Toolkits gibt es vor allem für Nutzer der Programmier”
sprachen C/C++ und Java sowie der Microsoft .NET-Plattform. Die Auswahl an Toolkits für die Programmiersprache C/C++ ist tendenziell am größten, neue Projekte setzen jedoch zunehmend auf managed code“.
”
Viele Toolkits sind auf Plattformunabhängigkeit ausgelegt. Gängig ist auch die Verbreitung eines Toolkits als
COM-Objekt [71], was die Nutzung des Toolkits auf Windows-Betriebssysteme beschränkt aber die Auswahl
der Programmiersprache auf alle COM-fähigen Sprachen erweitert.
Eine übersichtliche Liste kommerzieller wie freier DICOM-Toolkits existierte zum Zeitpunkt der Erstellung dieser
Diplomarbeit nicht – bestehende Toolkit-Listen sind mit reinen DICOM-Viewern und -Konvertern durchmischt,
veraltet und/oder nicht nach Programmiersprache sortiert. Der Autor dieser Arbeit hat daher eine eigene Liste
mit ca. 40 Toolkits begonnen, die als Webseite im Internet verfügbar ist [99]23 . Auf der Webseite finden sich
auch Verweise auf weitere Verzeichnisse von Toolkits.
23 Eine
vollständige Aufnahme der Liste in den Anhang dieser Arbeit hätte das Quellenverzeichnis gesprengt; außerdem birgt die
Veröffentlichung als Webseite nach Auffassung des Autors einen größeren Nutzen für die DICOM-Community.
Seite 30
2
GRUNDLAGEN
2.5.11 Einsatz von DICOM in der Pathologie
Der DICOM-Standard ist zum Zeitpunkt der Erstellung dieser Diplomarbeit für den Einsatz in der Pathologie
nicht geeignet. Folgerichtig ist DICOM in dieser Fachdisziplin noch nahezu unbekannt und wird nicht im Routinebetrieb eingesetzt. Die Defizite von DICOM und die aktuellen Entwicklungen in den Standardisierungsgremien
werden im Folgenden genauer erläutert.
Die für die Pathologie notwendigen Korrekturen und Erweiterungen von DICOM werden seit Ende 2005 von
der für diesen Zweck gegründeten DICOM Working Group 26: Pathology“ (im Folgenden: WG-26“) vorange”
”
trieben.
Für den sinnvollen Einsatz von DICOM in der Pathologie sind laut WG-26 folgende Aufgaben zu bewältigen
([DIC08e], S. 35 f.):
ˆ Schaffung technischer Standards für die Bildgewinnung, -anzeige, -kommunikation und -speicherung in der
Pathologie (sowohl für den klinischen Bereich als auch für die Forschung)
ˆ Anpassung des DICOM Informationsmodells an den gewebeprobenzentrierten Arbeitsablauf in der Pathologie im Unterschied zum sonst üblichen, patienten- oder untersuchungszentrierten Arbeitsablauf
ˆ Entwicklung von Methoden zur Integration von Bildern und daraus abgeleiteten Informationen für die
Befundschreibung
ˆ Entwicklung spezieller technischer Methoden zur Lösung pathologiespezifischer Probleme, wie zum Beispiel
zur Kompression von Bildern mit einer Datenmenge von mehreren Gigabyte
Kurzfristig sollen folgende Probleme gelöst werden:
ˆ Definition neuer bzw. Erweiterung bestehender DICOM Information Object Definitions (IODs) für den
Einsatz in der Pathologie. Dazu zählen:
–
–
–
–
Makroskopische Bilder
Mikroskopische Bilder
Multispektralbilder
Bild-Annotationen (z. B. Umrisslinien, Messungen)
ˆ Zugriff auf Bildobjekte mit einem Datenumfang von mehreren Gigabyte unter verschiedenen Auflösungen.
Der erste Punkt wird vor allem in Supplement 122 behandelt24 . Für den zweiten Punkt gibt es derzeit noch
kein Supplement, aber rege Diskussionen. Beide Punkte werden im Folgenden diskutiert.
2.5.11.1 Supplement 122
Ein wichtiges Ergebnis der Arbeit von WG-26 ist Supplement 122 Specimen Identification and Revised Patho”
logy“ [17]. Supplement 122 führt unter anderem folgende Neuerungen ein:
ˆ Der Informationseinheit Image“ wurde ein Modul Specimen“ hinzugefügt. In diesem Modul können alle
”
”
Informationen zur Herkunft und zu den Bearbeitungsschritten der Probe gespeichert werden, die für die
Interpretation des Bildes notwendig sind. Das Modul löst das bisherige Specimen Identification Module“
”
auf Patientenebene ab25 . Es wurde mit dem HL7 v2.5 SPM-Segment und dem Entwurf zum HL7 v3
Specimen Domain Information Model“ harmonisiert.
”
ˆ Das vielzitierte DICOM-Modell der realen Welt (vgl. Abb. 10) wurde um einige Objekte erweitert (siehe
Abb. 13).
ˆ Drei neue IODs Specimen VL Microscopic“, Specimen VL Slide-Coordinates Microscopic“ und Speci”
”
”
men Video Microscopic“ wurden in den Standard aufgenommen.
ˆ Einige DICOM-interne Kodes (Kodierungsschema-Bezeichner DCM“, s. u.) für Proben wurden auf SNO”
MED-Kodes [52] abgebildet.
ˆ Ein kontrolliertes Vokabular ( Kontextgruppen“, vgl. Kap. 2.6.3) für den Umgang mit Proben wurde er”
stellt (Probentypen, Probengewinnung, Verarbeitungsschritte, Färbungen, Einbettungsmedien etc.). Dabei wurde größtenteils auf SNOMED [52] zurückgegriffen. Falls keine SNOMED-Kodes für ein Konzept
existieren, wurde auf ein privates Kodierungsschema (vorläufiger Bezeichner: 99supp122) zurückgegriffen.
24 Das
Thema Bild-Annotationen wird von WG-11 Display Function Standard“ in Supplement 120 bearbeitet [17].
”
interessanter Nebeneffekt: Dadurch entfallen die Angaben zum Specimen in DICOM-SR-Dokumenten (diese beinhalten keine
Image IE, s. u.).
25 Ein
Seite 31
2
GRUNDLAGEN
ˆ DICOM-SR-Templates (vgl. Kap. 2.6.4) für die Lokalisation von Proben und die Verarbeitung von Proben
(speziell: Färben und Einscannen) wurden definiert.
Patient
1
1
Is
source
of
Has
n
Study
n
1
Contains
n
Equipment
n
1
Series
Creates
Modality
1
Contains
n
Image
1
Is
acquired
on
1
Component
Base, Coverslip
1
n
Has
Container
Box, Block, Slide, etc.
n
1
Specimen
Contains
Physical object
n
n
1
Has
Preparation
Step
Collect, Sample,
Stain, Process
1
Is child of
Abbildung 13: Erweiterung des DICOM-Modells der realen Welt für die Pathologie, Erweiterungen hervorgehoben (aus Supp. 122 [17])
Supplement 122 wurde nach einer Sitzung der DICOM WG-06 Ende Juni 2008 endgültig verabschiedet [DIC08f]
und wird damit in die nächste DICOM-Version integriert.
2.5.11.2 Speicherung virtueller Präparate mit DICOM
Wenn es ein DICOM-Format für virtuelle Präparate gäbe, könnten Standard-PACS-Systeme für deren Speicherung, die langfristige Archivierung, die Suche und Managementfunktionen verwendet werden. Eine gemeinsame
Verwaltung mit Bildern anderer Modalitäten scheint sowohl organisatorisch als auch technisch und wirtschaftlich
erstrebenswert. Die DICOM-konforme Speicherung von Bildern aus der Pathologie ermöglicht zudem weitere
Anwendungen. Dazu zählen laut WG-26:
ˆ Strukturierte und standardisierte Befundung in der Pathologie (Fokus dieser Diplomarbeit)
ˆ Integration von Werkzeugen zur automatischen Bildanalyse in virtuellen Präparaten (ebenfalls wichtig in
dieser Arbeit)
ˆ Korrelation von radiologischen mit pathologischen Bildern
ˆ Umgang mit Tissue Micro Arrays (TMAs), bei denen ein Objektträger Merkmale von hunderten von
Patienten enthalten kann
Supplement 122 schafft wie oben beschrieben Grundvoraussetzungen für die Speicherung von pathologischen
Bild- und Metadaten sowie das Erstellen von pathologischen Befundberichten. Das wichtige Problem der riesigen Datenmengen von virtuellen Präparaten (vgl. Kap. 2.2.2) wird in Supplement 122 nicht behandelt, WG-26
beschäftigt sich jedoch unter dem Schlagwort Whole Slide Imaging“ (WSI) intensiv mit diesem Thema. Ei”
ne verständliche, umfangreiche Schilderung des Problemkontextes und der speziellen Unzulänglichkeiten des
DICOM-Standards sowie eines informellen Lösungsvorschlags findet sich in [Eic07].
Seite 32
2
GRUNDLAGEN
Die WG-26 rechnet demnach für die Gestaltung eines geeigneten DICOM-Formates mit einer Auflösung von
0,1µm/Pixel ( 100x-Vergrößerung“), einer Probengröße von 50mm x 25mm und zehn verschiedenen Fokussie”
rungsebenen ( z-Ebenen“). Derartige virtuelle Präparate hätten Ausmaße von 500.000 x 250.000 Pixeln (125
”
Gigapixel) und wären damit größer als das derzeit größte bekannte zusammengesetzte Digitalfoto (16 Gigapixel [39]). Bei drei Byte pro Pixel ergäbe sich für dieses Szenario ein unkomprimierter Speicherbedarf von 3,75
Terabyte. Um auf derartig große Bilder effizient zugreifen zu können, sieht WG-26 den bereits in Kapitel 2.2.2
diskutierten Pyramiden-Ansatz vor.
[Eic07] nennt einige Beschränkungen des DICOM-Standards, die bei der Speicherung virtueller Präparate hinderlich sein können:
ˆ Die Pixelabmessungen eines DICOM-Bildes werden in einer vorzeichenlosen 16-Bit-Integervariable gespeichert, was die maximale Dimension eines Bildes auf 65.535 x 65.535 Pixel begrenzt (größte darstellbare
Zahl: 216 − 1 = 65.535).
ˆ Die Größe eines DICOM-Objekts in Byte wird in einer vorzeichenbehafteten 32-Bit-Integervariable gespeichert. Die maximale komprimierte Datenmenge eines Bildes beträgt damit 231 − 1 = 2.147.483.647
Byte (≈ 2GB).
ˆ DICOM bietet zwar Möglichkeiten für die Adressierung einzelner Bilder einer Bildsequenz, wie sie beispielsweise in CT- oder MRT-Geräten erzeugt wird. Eine Möglichkeit zur Adressierung eine Bildausschnittes
innerhalb eines einzelnen Bildes existiert jedoch nicht26 . Die Auswahl von Bildausschnitten ist jedoch
entscheidend für schnelles Zoomen und Verschieben des Sichtfeldes“.
”
Das Dokument nennt gleichzeitig jedoch auch die Lösung der genannten Probleme: Jede Ebene der gedachten
Pyramide soll - wie ebenfalls bereits in Kapitel 2.2.2 (Abb. 5(b)) erläutert – in Kacheln aufgeteilt werden. Die
Größe dieser Kacheln muss so klein gewählt werden, dass die in der Aufzählung genannten Grenzen unterschritten werden. Alle Kacheln einer Ebene sollen dann in einer DICOM-Bildsequenz ( Series“) zusammengefasst
”
werden. Eine andere Lösung für die genannten Probleme wurde im Mai 2008 als CP 896 eingereicht: Hier soll
für Bilder, die in der Höhe oder Breite die genannten Dimensionen überschreiten, ein neu eingeführtes Attribut Large Rows“ bzw. Large Columns“ mit Datentyp UL (Unsigned Long, 32-Bit-Wert) verwendet werden
”
”
[DIC08c]. Diese Änderung beträfe zahlreiche Kapitel des DICOM-Standards. Welcher der beiden Ansätze sich
durchsetzen wird, ist zur Zeit unklar.
Das zitierte Positionspapier [Eic07] wurde auf den letzten Treffen der WG-26 weiter diskutiert. So soll zusätzlich
zu den in hoher Auflösung aufgenommenen Bilddaten ein Übersichtsbild des kompletten Objektträgers sowie ein
Bild der Etikette (mit ID/Barcode) in die virtuellen Präparate integriert werden. Außerdem wird diskutiert, ob
innerhalb der Bilder Bearbeitungsschritte wie die Reduzierung der Farbtiefe oder die Kompression gespeichert
werden sollen [DIC08b]. Wann aus dem Positionspapier ein Supplement wird, ist derzeit nicht absehbar.
2.5.12 Informationsquellen zum DICOM-Standard
Einführende Literatur Die Komplexität des DICOM-Standards (vgl. Tab. 1) macht das Lesen einführender
Literatur erforderlich. Der Herkunft des Standards aus der Industrie mag geschuldet sein, dass solche nur in
sehr begrenztem Maße der Öffentlichkeit zur Verfügung steht. Die ansonsten empfehlenswerte, umfangreiche
Linksammlung von David Clunie [16] listet nur eine Handvoll allgemeiner Publikationen zu DICOM, die häufig
auch noch schwierig erhältlich sind oder dem Anspruch eines Überblickswerks nicht gerecht werden. Hier eine
kurze Liste spezieller DICOM-Literatur:
ˆ Das mittlerweile in überarbeiteter dritter Auflage erhältliche Buch DICOM Basics“ von Herman Oos”
terwijk [Oos05] kann am ehesten als einführendes Werk gelten. Es ist allerdings (trotz ISBN) nicht im
regulären Buchhandel erhältlich. Die Beschreibung ist sehr anwendungsorientiert und bleibt größtenteils
oberflächlich, bietet aber gerade deswegen einen gewissen Überblick.
ˆ Das seit Juni 2008 erhältliche Buch DICOM – A Practical Introduction and Survival Guide“ [Pia08] ist
”
umfangreicher und bietet mehr technische Details als DICOM Basics“, stand dem Autor zum Zeitpunkt
”
der Erstellung dieser Arbeit jedoch nicht vollständig zur Verfügung27 .
ˆ Das nicht nur bei Clunie zitierte DICOM Cook Book“ von Philips Medical Systems ist inzwischen in
”
26 Eine
Ausnahme bilden JPEG-2000-Objekte, die in DICOM via JPIP angesprochen werden können, vgl. DICOM Supplement 61,
105 und 106 [17].
27 Der Zugriff auf dieses Werk ist eingeschränkt über die search inside“-Funktion von Amazon möglich [3].
”
Seite 33
2
GRUNDLAGEN
Teilen veraltet. Es beschränkt sich auf die technische Ebene von DICOM und setzt daher einiges an
Wissen voraus.
ˆ Die im Internet verfügbare Nontechnical Introduction to DICOM“ von Steven C. Horii [Hor97] ist eben”
falls teilweise deutlich überholt und zudem sehr knapp gehalten.
ˆ Im DICOM-Standard selbst [DIC08a], PS 3.1, findet sich eine kurze Einführung in den Standard. Diese nennt die Ziele des DICOM-Standards und beschreibt die einzelnen Kapitel, bleibt dabei aber sehr
oberflächlich.
ˆ Einen häufig aktualisierten, allgemeinen Überblick bietet das DICOM-Komitee als Strategic Document“
”
selbst auf ihren Webseiten an [DIC08e]. Die Beschreibung ist aber sehr kurz und behandelt vor allem
organisatorische, weniger inhaltliche Aspekte.
Überblicksartikel zum DICOM-Standard, die mindestens einen Aspekt von DICOM näher beleuchten, finden
sich typischerweise in den Grundlagenkapiteln wissenschaftlicher Abschlussarbeiten. So führt M. Eichelberg in
seiner Dissertation [Eic02] ausführlich in den Standard ein und beschreibt den Aufbau von DICOM-Dateien
sowie die DICOM-Dienste. J. Riesmeier lehnt sich in seiner Dissertation [Rie06] an diese Einführung an, die
Informationen sind jedoch aktueller und auf das Maß beschränkt, das für das Verständnis von DICOM-SR
erforderlich ist.
Weitere Informationsquellen Neben herkömmlicher Literatur wird der interessierte Leser alternative Informationsquellen benötigen. Sehr empfehlenswert ist die offizielle DICOM-Webseite [73], die neben dem Standard
selbst beispielsweise auch Informationen zum Standardisierungsprozess, eine Liste der Supplements und Correction Items [17] sowie Links zu DICOM-Software und anderen weitergehenden Informationen anbietet. Ebenfalls
interessant ist die auch von Mitgliedern des DICOM-Komitees gelesene Newsgroup comp.protocols.dicom,
auf der Fragen schnell beantwortet werden. Neben Fragen und Antworten werden über die Newsgroup auch
Ergänzungsvorschläge und Fehlerkorrekturen für den DICOM-Standard von den Anwendern eingereicht. Weitere wertvolle Informationsquellen sind die Dokumentationen, Quellkodes, Foren und Wikis der diversen Anbieter
freier DICOM-Toolkits (z. B. [82], [124], [61]).
2.6 DICOM Structured Reporting
DICOM Structured Reporting (DICOM-SR) ist eine Erweiterung des DICOM-Standards, die mit Supplement
23 im April 2000 offiziell verabschiedet wurde [17]. DICOM-SR definiert ein Datenmodell für die Speicherung
und Übertragung strukturierter und standardisierter Dokumente (vgl. Kap. 2.4). Die offensichtlichste Anwendungsmöglichkeit von DICOM-SR liegt im Bereich der Befundberichte für DICOM-Bilder und -Signalverläufe.
DICOM-SR bietet daher die Möglichkeit, andere DICOM-Objekte zu referenzieren. Seinem Namen zum Trotz
eignet sich DICOM-SR aber auch für nahezu beliebige andere strukturierte Informationen, sogar über die Anwendungsdomäne der Medizin hinaus.
Die Entwicklung von DICOM-SR verläuft rasant. Zahlreiche Supplements der vergangenen Jahre verbesserten
die Einsatzmöglichkeiten des Standards für spezielle medizinische Fachgebiete28 , weitere Supplements sind in
Arbeit29 . Für die Weiterentwicklung von DICOM-SR ist vor allem die DICOM Working Group 08 (Structured
”
Reporting)“ verantwortlich.
Kapitel 2.6.1 und 2.6.2 beschreiben den Aufbau von DICOM-SR-Dokumenten. Da der Aufbau dem von anderen
DICOM-Informationsobjekten wie Bildern oder Presentation States aus technischer Sicht sehr stark ähnelt,
kann DICOM-SR von einer bestehenden DICOM-Infrastruktur profitieren. Software, die Dienste wie die Archivierung, Recherche, Übertragung oder Verschlüsselung für andere DICOM-Objekte wie zum Beispiel Bilder
anbietet, kann diese Operationen in der Regel – gegebenenfalls nach geringfügigen Modifikationen – auch auf
DICOM-SR-Dokumenten ausführen. Die gemeinsame Verwaltung von DICOM-SR-Dokumenten und assoziierten
anderen DICOM-Objekten ist eine der großen Stärken von DICOM-SR im Vergleich zu anderen Dokumentationsstandards.
DICOM-SR erlaubt eine nahezu beliebige Granularität der Strukturierung und semantischen Annotation von
Information. Die Speicherung von Freitext ist ebenso möglich wie das Anlegen eines Dokuments, das ausschließlich aus kodierten Einzelbegriffen mit komplizierten Beziehungen zueinander besteht. Auch Mischformen aus
28 Z.
29 Z.
B. Supplement 26, 50, 65, 66, 71, 72, 76, 77, 78, 79, 94, 97, 127 und 130 [17].
B. Supplement 126, 128, 129 und 134 [17].
Seite 34
2
GRUNDLAGEN
Freitext und strukturierten, kodierten Anteilen sind problemlos möglich. Für die Kodierung von Elementen
eines Dokuments bringt DICOM-SR ein eigenes kontrolliertes Vokabular mit, das in Kapitel 2.6.3 vorgestellt
wird. DICOM-SR erlaubt sowohl präkoordinierte als auch postkoordinierte kodierte Elemente.
Die beschriebene Flexibilität von DICOM-SR ist oftmals verwirrend und vom Endnutzer gar nicht gewünscht.
Eine Lösung für dieses Problem bietet DICOM-SR in Form von sogenannten Templates“. Mit Templates
”
können Struktur und Inhalte von Teilen eines Dokuments oder vollständigen Dokumenten vorgegeben werden.
Dieses Prinzip wird in Kapitel 2.6.4 näher erläutert. Ein Beispiel für die Anwendung von Templates ist die
Erstellung von Befundberichten für die Computergestützte Detektion (CAD, vgl. Kap. 2.3), die in Kapitel 2.6.5
kurz besprochen wird.
Kapitel 2.6.6 nennt Standards im Umfeld der strukturierten und standardisierten Dokumentation, die mit
DICOM-SR in Beziehung stehen.
Weitere Informationsquellen zu DICOM-SR findet der interessierte Leser schließlich in Kapitel 2.6.7.
2.6.1 Allgemeiner Aufbau von DICOM-SR-Dokumenten
DICOM-SR-Dokumente sind über Composite IODs (vgl. 2.5.6) definiert und entsprechen damit vom Aufbau
her anderen DICOM-Informationsobjekten wie Bildern oder Signalverläufen. Der Aufbau von Composite IODs
kann über das Informationsmodell für Composite IODs (siehe Abb. 14) veranschaulicht werden, das aus dem
PS 3.3
DICOM-Modell
der- 2008
realen Welt (Abb. 10) abgeleitet ist.
Page 92
Patient
1
is
the subject
of
1,n
Study
1
contains
1,n
1-n
Spatially or
temporally
defines
Series
creates
1,n
0-1
1
Frame of Reference
0,n
Real World
Value Mapping
Equipment
0,n
Encapsulated
Document
0,n
Fiducials
contains
0,n
0,n
Raw
Data
Registration
0,n
1
0,n
Presentation
State
0,n
Spectroscopy
Image
0,n
SR Document
0,n
Waveform
Figure A.1-1
Abbildung 14: Entity-Relationship-Modell für DICOM
Composite IODs (aus PS 3.3, Abb. A.1-1 [DIC08a])
DICOM COMPOSITE INSTANCE IOD INFORMATION MODEL
Neben dem eigentlichen
Befundbericht
ein State
Structured
Report“IEalso
immer
Each Series shall
contain at leastbeinhaltet
one Presentation
IE, SR Document
or Image
IE. auch einen Dokumenten”
kopf ( Header“), in dem Daten zu folgenden Informationseinheiten abgelegt sein können:
”
A.1.2.1 PATIENT IE
TheZu
Patient
defines the characteristics
a patient
who is eine
the subject
of one or
more medical studies.
ˆ Patient.
denIEPatientendaten
zählenofzum
Beispiel
eindeutige
Patienten-ID,
der Name, das Geburtsdatum,
das
Geschlecht
etc.
War
nicht
der
Patient
selbst,
sondern
ein
pathologisches
Präparat des
Note:
A patient may be a human or an animal.
The Patient IE is modality independent.
A.1.2.2 STUDY IE
The Study IE defines the characteristics of a medical study performed on a patient. A study is a collection
of one or more series of medical images, presentation states, and/or SR documents that are logically
related for the purpose of diagnosing a patient. Each study is associated with exactly one patient.
A study may include composite instances that are created by a single modality, multiple modalities or by
Seite 35
2
GRUNDLAGEN
ˆ
ˆ
ˆ
ˆ
Patienten Gegenstand der Untersuchung, so wurden bisher auch die zum Präparat gehörigen Daten in
dieser Informationseinheit aufgeführt. Dies wird sich in der nächsten DICOM-Version durch Supplement
122 ändern (vgl. Kap. 2.5.11).
Study. Daten der Untersuchung sind zum Beispiel das Kalenderdatum des Untersuchungsbeginns, der
einweisende Arzt oder der für die Untersuchung verantwortliche Arzt, aber auch Patientenmerkmale wie
Alter, Körpergröße und Gewicht zu Beginn der Untersuchung.
Series. In den Daten zur Folge kann beispielsweise gespeichert werden, zu welchem Untersuchungsschritt
( Performed Procedure Step“) das Dokument gehört.
”
Anmerkung: Da strukturierte Dokumente als eigene Modalität“ gelten und alle Elemente einer Folge zur
”
gleichen Modalität gehören sollen, finden sich in einer Folge mit Dokumenten ausschließlich Dokumente.
Equipment. In dieser Informationseinheit können Informationen über die Soft- und Hardware gespeichert werden, mit der das Dokument erstellt wurde. Dazu zählen beispielsweise der Name des SoftwareHerstellers, die Versionsnummer oder auch der Einsatzort der Software.
Frame of Reference. Diese Informationseinheit kann Daten zum zeitlichen Zusammenhang von Dokumenten enthalten, falls eine Folge mehrere Dokumente enthält.
Für klinische Studien sind in den Informationseinheiten Patient, Study und Series weitere spezielle Datenfelder
vorgesehen.
2.6.1.1 Dokumentenklassen
Mit Supplement 23 wurden in PS 3.3, Anhang A.35, folgende generische Dokumentenklassen ( SR IODs“)
”
definiert [DIC08a]:
ˆ Basic Text. Diese Dokumentenklasse ist für konventionellen Fließtext mit wenigen kodierten Einträgen
gedacht.
ˆ Enhanced. Diese Dokumentenklasse ist eine Erweiterung der Basic Text“-Klasse. Enhanced“-Doku”
”
mente bieten zusätzlich Unterstützung für die Kodierung numerischer Angaben (z. B. Messwerte) sowie
räumlicher und zeitlicher Koordinaten. Mithilfe von Koordinaten lassen sich beispielsweise Regions of
”
Interest“ (ROI) in Bildern oder Signalverläufen definieren.
ˆ Comprehensive. Diese Dokumentenklasse ist wiederum eine Erweiterung der Enhanced“-Klasse. Ins”
besondere sind in Comprehensive“-Dokumenten By-reference-Relationen erlaubt (vgl. Kap. 2.6.2, S. 38).
”
Neben den drei generischen Dokumentenklassen enthält PS 3.3 mittlerweile fünf weitere Dokumentenklassen für spezielle Anwendungen, beispielsweise für die Ablage von Ergebnissen bei der automatischen Erkennung von Brustkrebs (vgl. Kap. 2.6.5), für Herzkatheteruntersuchungen, für die Angabe von Strahlendosen bei
Röntgenuntersuchungen etc. Weitere Dokumentenklassen sind in Vorbereitung (vgl. Evidence Document SR
”
IOD“ in Supp. 115, Colon CAD SR IOD“ in Supp. 126 und das noch nicht verfügbare Supp. 134 Implantation
”
”
Plan SR Document Storage SOP Class“ [17]). Interessant im Zusammenhang mit strukturierten Befundberichten sind neben den Dokumentenklassen außerdem beispielsweise die IODs für eingebettete PDF-Dokumente
(Anhang A.45) und für Informationen zur Bildsegmentierung (Anhang A.51).
Abbildung 15 zeigt beispielhaft die Module für die Basic Text“-Dokumentenklasse30 . Die Spalte Reference“
”
”
verweist auf die Kapitel in PS 3.3, in denen exakt definiert ist, welche Attribute zu einem Modul gehören. In
der Spalte Usage“ ist festgelegt, ob das jeweilige Modul verpflichtend ( M andatory“) oder optional ( U ser
”
”
”
Option“) zum DICOM-Objekt gehört. Ein C“ ( C onditional“) in dieser Spalte bedeutet, dass das betreffende
”
”
Modul unter bestimmten Umständen verpflichtend enthalten sein muss und ansonsten weggelassen werden soll.
Charakteristisch für DICOM-SR-Dokumente sind folgende Module31 :
ˆ SR Document Series. Dieses Modul ersetzt das in anderen Composite IODs übliche General Series
”
Module“ und ist im Vergleich zu diesem stark vereinfacht, da Folgen von Dokumenten im Vergleich zu
Folgen bei beispielsweise CT-Aufnahmen typischerweise einfacher strukturierte Abhängigkeiten haben
[Rie06].
30 Die
Modultabellen der anderen Dokumentenklassen sehen ähnlich aus.
Dokumentenklasse Key Object Selection“ verwendet spezielle Document Series“- und Document“-Module, die hier nicht
”
”
”
berücksichtigt werden sollen (vgl. PS 3.3, Anhang C.17.6 [DIC08a]).
31 Die
Seite 36
PS 3.3 - 2008
Page 188
2
GRUNDLAGEN
Table A.35.1-1
BASIC TEXT SR IOD MODULES
IE
Module
Reference
Patient
Patient
C.7.1.1
M
Specimen Identification
C.7.1.2
C - Required if the Observation Subject is a
Specimen
Study
Series
Usage
Clinical Trial Subject
C.7.1.3
U
General Study
C.7.2.1
M
Patient Study
C.7.2.2
U
Clinical Trial Study
C.7.2.3
U
SR Document Series
C.17.1
M
Clinical Trial Series
C.7.3.2
U
Equipment
General Equipment
C.7.5.1
M
Document
SR Document General
C.17.2
M
SR Document Content
C.17.3
M
SOP Common
C.12.1
M
Abbildung 15:
ModultabelleBasic
für die
Dokumentenklasse
Basic Text“ (aus PS 3.3, Tab. A.35.1-1 [DIC08a])
A.35.1.3.1
Text
SR IOD Content Constraints
”
A.35.1.3.1.1
ˆ
Value Type
Value Type (0040,A040) in the Content Sequence (0040,A730) of the SR Document Content
SR Document
ModulEnumerated
ist ein spezieller
Dokumentenkopf,
demType
beispielsweise Datum
Module isGeneral.
constrainedDieses
to the following
Values (see
Table C.17.3-7 forin
Value
definitions):
und Uhrzeit
der Erstellung des Dokumenteninhalts abgelegt sind. Außerdem beinhaltet das Modul Sta-
tusinformationenTEXT
zur Vollständigkeit ( Completion Flag“) und zum Freigabestatus ( Verification Flag“)
”
”
des Dokuments (vgl.
CODEVisualisierung in Abb. 31(b)).
ˆ SR DocumentDATETIME
Content. Während alle anderen Module aus der Modultabelle in Abbildung 15 MetaDATE
informationen enthalten,
repräsentiert dieses Modul den eigentlichen Inhalt des Dokuments. Es wird im
TIME
folgenden Kapitel
ausführlich besprochen.
UIDREF
PNAME
Das Modul SOP Common“
ist trotz der Zuordnung zur Informationseinheit Document“ von allgemeiner Natur.
COMPOSITE
”
”
IMAGE verpflichtend und enthält vor allem einen eindeutigen Schlüssel zur Identifikation
Es ist für alle DICOM-IODs
WAVEFORM
der jeweiligen Objektinstanz.
CONTAINER
A.35.1.3.1.2
Relationship Constraints
2.6.2 Der DICOM-SR-Inhaltsbaum
Relationships between Content Items in the content of this IOD shall be conveyed in the by-value
mode. See Table C.17.3-8 for Relationship Type definitions.
Der Inhalt eines DICOM-SR-Dokuments ist prinzipiell baumartig aufgebaut. Die Knoten des Baumes werden
Relationships
by-reference
areJedes
forbidden.
Therefore, Referenced
Item Identifier
Inhaltselemente (Note:
Content
Items“)
genannt.
Inhaltselement
stehtContent
zu seinem
Vaterelement in Relation (vgl.
(0040,DB73) is not present in any of the Content Items within the SR Document Content
”
Abb. 16). Das Wurzelelement
stellt
den
Titel
des
Dokuments
dar
und
trägt
keine
Relation.
Die Anwesenheit des
Module.
Wurzelelements ist verpflichtend, leere Inhaltsbäume sind also nicht erlaubt. Hat ein Inhaltselement mehrere
Kindelemente, so ist deren Reihenfolge relevant.
2.6.2.1 Inhaltselemente
Jedes Inhaltselement besteht aus einem Konzeptnamen ( Concept Name“) und einem Konzeptwert ( Concept
”
”
Value“).
- Standard -
Konzeptnamen Der Name eines Inhaltselements wird stets kodiert angegeben (vgl. Kap. 2.5.6, S. 25). Der
Konzeptname drückt den Kontext des Konzeptwertes aus, zum Beispiel die Rolle einer Person ( Einweisender
”
Arzt“), die Bedeutung eines Messwertes ( Durchmesser“) oder die Bedeutung eines Kodes ( Entlassungsdia”
”
gnose“). In einigen Fällen ist der Konzeptname als Überschrift zu verstehen (s. u.).
Konzeptwerte Der Wert eines Inhaltselements muss von einem bestimmten komplexen Datentyp ( Value
”
Type“) sein. Ein Inhaltselement kann je nach Typ seines Konzeptwertes beispielsweise Freitext, eine numerische
Angabe oder ein Datum repräsentieren. Die Liste der 14 zulässigen Datentypen für Konzeptwerte findet sich in
Tabelle 2. Details der einzelnen Datentypen für Konzeptwerte diskutiert Kapitel 4.3.1. Im Folgenden wird oft
Seite 37
2
GRUNDLAGEN
Abbildung 16: Informationsmodell von DICOM-SR (PS 3.3, Abb. C.17.3-1 [DIC08a])
auch vom Typ eines Inhaltselements“ gesprochen, womit der Datentyp seines Konzeptwertes gemeint ist32 .
”
2.6.2.2 Relationen
Wie oben erwähnt, steht jedes Inhaltselement eines DICOM-SR-Inhaltsbaums implizit in Relation zu seinem
Vaterelement. Diese Art der Relation wird im Standard by-value relationship“ genannt. Jede Relation hat einen
”
der sieben Relationstypen ( Relationship Types“) aus Tabelle 3. Die Lesrichtung von By-value-Relationen geht
”
immer von der Wurzel zu den Blättern des Baumes. Ist beispielsweise ein Inhaltselement vom Typ TEXT“
”
Kind eines Inhaltselements vom Typ CONTAINER“ und herrscht zwischen diesen beiden Inhaltselementen eine
”
Relation CONTAINS“, so bedeutet dies, dass der CONTAINER den TEXT enthält und nicht umgekehrt. Der
”
Typ der By-value-Relation wird mit dem Kindknoten, also dem Ziel der Relation, abgespeichert. Attributierte
Relationen kennt der DICOM-Standard nicht. Der Zweck einer Relation kann daher nur über den Relationstyp
und den Konzeptnamen des Zielelements ausgedrückt werden.
By-reference-Relationen Neben Relationen, die sich durch die Anordnung der Inhaltselemente im Inhaltsbaum
implizit ergeben, gibt es im DICOM-SR-Standard auch freie Relationen zwischen Inhaltselementen, sogenannte
by-reference relationships“. Diese Relationen werden mit dem Inhaltselement, das die Quelle der Relation
”
darstellt, abgespeichert. Die Adressierung des Zielknotens der Relation erfolgt ähnlich wie bei UIDs (vgl. 2.5.6)
über durch Punkte getrennte Zahlentupel. Beispielsweise verweist 1“ auf den Wurzelknoten des Inhaltsbaumes,
”
1.2“ auf das zweite Kind der Wurzel, 1.2.1“ auf dessen erstes Kind und so weiter. Der Inhaltsbaum wird durch
”
”
By-reference-Relationen zu einem gerichteten Inhaltsgraph“. Im DICOM-Jargon wird dieser Begriff aber nicht
”
verwendet.
Derzeit erlauben nur drei Dokumentenklassen den Einsatz von By-reference-Relationen: Comprehensive“,
”
Mammography CAD“ und Chest CAD“.
”
”
2.6.2.3 Einschränkungen bei der Konstruktion von DICOM-SR-Inhaltsbäumen
Das Wurzelelement eines Inhaltsbaumes ist immer vom Typ CONTAINER“. Der sonstige Aufbau von DICOM”
SR-Dokumenten aus Inhaltselementen und Relationen unterliegt je nach Dokumentenklasse verschiedenen weiteren Einschränkungen ( Content Constraints“). Welches Inhaltselement einem anderen Inhaltselement über
”
welche Relation zugeordnet werden darf, hängt vom Typ der Inhaltselemente und vom Relationstyp ab. Für
jede Dokumentenklasse findet sich im DICOM-Standard eine Tabelle wie in Abbildung 17. Die Menge der im
Dokument erlaubten Inhaltselement-Typen ergibt sich implizit aus der rechten Spalte der Tabelle, wird aber
auch noch einmal explizit im Standard aufgeführt.
32 Der
Autor hält diese vereinfachte Formulierung für zulässig, da der Typ eines Konzeptwertes Inhaltselemente charakterisiert. Der
Konzeptname hingegen ist für alle Inhaltselemente immer gleich aufgebaut.
Seite 38
2
GRUNDLAGEN
Datentyp
Konzeptname
Konzeptwert
Beschreibung
CONTAINER
Titel eines Dokuments oder
Überschrift
eines
Dokumentenabschnitts. Der Konzeptname beschreibt den Titel des
Dokuments (wenn der CONTAINER Wurzelelement des
Inhaltsbaumes ist) oder die
Beobachtungskategorie.
Typ des Textes, z. B. Einzel”
befund“, oder Name/Bezeichner,
z. B. Läsionsnr.“
”
Der Inhalt des CONTAINERs.
Der Wert eines CONTAINERElements ist die Sammlung aller
Inhaltselemente, die es beinhaltet.
Typ des Datums, z. B. Geburts”
datum“
Typ der Zeit, z. B. Startzeit“
”
Kalenderdatum
Typ von Datum und Uhrzeit,
z. B. Einweisungdatum und ”
uhrzeit“
Rolle der Person, z. B., Patient“
”
Datum und Uhrzeit konkateniert
CONTAINER gruppieren Elemente und
definieren die Überschrift oder die Kategorie, zu der der Inhalt gehört.
Die Überschrift beschreibt den Inhalt
des CONTAINER-Elements und kann
mit der Abschnittsüberschrift eines gedruckten oder angezeigten Dokuments
übereinstimmen.
Freitext, erzählende Beschreibung unbegrenzter Länge. Kann auch verwendet
werden, um einen Bezeichner oder den
Wert einer ID anzugeben.
Datum des Ereignisses vom im Konzeptnamen festgelegten Typ.
Uhrzeit des Ereignisses vom im Konzeptnamen festgelegten Typ.
Datum und Uhrzeit des Ereignisses vom
im Konzeptnamen festgelegten Typ.
Typ der UID, z. B. Study In”
stance UID“
Typ des Kodes, z. B. Befunde“
”
Unique Identifier
TEXT
DATE
TIME
DATETIME
PNAME
UIDREF
CODE
Textuelle Beschreibung des Konzepts
Uhrzeit
Name der Person
Verschlüsselte Darstellung des
Konzepts
Numerischer Wert und zugehörige Maßeinheit
NUM
Typ des Zahlen- oder Messwerts,
z. B. DBD“
”
COMPOSITE
Zweck der Referenz
Verweis auf UIDs von Composi”
te SOP“-Instanzen
IMAGE
Zweck der Referenz
Verweis auf UIDs von Image
”
Composite SOP“-Instanzen
WAVEFORM
Zweck der Referenz
SCOORD
Zweck der Referenz
Verweis auf UIDs von Waveform
”
Composite SOP“-Instanzen
Liste räumlicher Koordinaten
TCOORD
Zweck der Referenz
Liste zeitlicher Koordinaten
Name der Person, deren Rolle über den
Konzeptnamen festgelegt wurde.
Unique Identifier (UID) der im Konzeptnamen festgelegten Entität.
Repräsentation von Nominal- und nichtnumerischen Ordinalwerten.
Numerische Angabe, vollständig klassifiziert durch eine verschlüsselte Angabe
des Typs und der Maßeinheit.
Ein Verweis auf eine Composite SOP“”
Instanz, die weder Bild noch Signalverlauf ist.
Verweis auf ein Bild. Kann außerdem
einen Presentation State“ zur Darstel”
lung des Bildes referenzieren.
Verweis auf einen Signalverlauf.
Räumliche Koordinaten einer geometrischen
ROI
im
DICOMBildkoordinatensystem. Das IMAGEInhaltselement,
auf
das
sich
die
räumlichen
Koordinaten
beziehen,
wird über die Relation SELECTED
”
FROM“ angegeben.
Zeitliche Koordinaten (d.h. zeit- oder
ereignisbasierte Koordinaten) einer ROI
im
DICOM-Signalverlaufskoordinatensystem. Das Inhaltselement vom Typ
WAVEFORM, IMAGE oder SCOORD,
auf das sich die zeitlichen Koordinaten
beziehen, wird über die SELECTED
”
FROM“-Relation angegeben.
Tabelle 2: Komplexe Datentypen für die Werte von Inhaltselementen (Übersetzung nach PS 3.3, Tab. C.17.3-7
[DIC08a])
Seite 39
2
GRUNDLAGEN
Relationstyp
Beschreibung
CONTAINS
beinhaltet
Definition und Beispiel
Das Quellelement beinhaltet das Zielelement.
Z. B.: CONTAINER Familienanamnese“ {CONTAINS: TEXT Mutter
”
”
hatte Brustkrebs”, CONTAINS: IMAGE 36}
HAS OBS CONTEXT
hat
Das Zielelement soll detailliertere Informationen des BeobachtungskontexBeobachtungskontext
tes enthalten, die für eine eindeutige Dokumentation des Quellelements
notwendig sind.
Z. B.: CONTAINER Befundbericht“ {HAS OBS CONTEXT: PNAME
”
Protokollant“ = SmithˆJohnˆˆDrˆ“}.
”
”
HAS CONCEPT MOD
hat
Wird benutzt, um den Konzeptnamen des Quellelements genauer zu beKonzept-Modifikator
zeichnen oder zu beschreiben, z. B. durch Post-Koordination.
Z. B. CODE Thorax-Röntgenaufnahme“ {HAS CONCEPT MOD: CODE
”
Projektion“ = p.a. und lateral“}
”
”
Z. B. CODE Brust“ HAS CONCEPT MOD: TEXT Französische
”
”
Übersetzung“ = Sein“
”
Z. B. CODE 2VCXRPALAT“ {HAS CONCEPT MOD: TEXT Weitere
”
”
Erklärung“ = Thorax-Röntgen, zwei Projektionen, posterior-anterior und
”
lateral“}
HAS PROPERTIES
hat Eigenschaften
Beschreibt die Eigenschaften des Quellelements.
Z. B. CODE Tumor“ {HAS PROPERTIES: CODE Anatomische Lage“,
”
”
HAS PROPERTIES: CODE Durchmesser“, HAS PROPERTIES: CODE
”
Berandung“,. . . }.
”
PSDatenacquisition
3.3 - 2008
HAS ACQ CONTEXT
hat Aufnahmekontext
Das Zielelement beschreibt die Umstände während der
des Quellelements.
Page 193
Z. B. IMAGE 36 {HAS ACQ CONTEXT: CODE Kontrastmittel“, HAS
”
ACQ CONTEXT: CODE Patientenpositionierung“,. . . }.
”
INFERRED
FROM
gefolgert aus
Das Quellelement beschreibt einen Messwert oder andere Belege, aus deA.35.2.3.1.2
Relationship
Constraints
nen das Zielelement gefolgert werden kann. Kennzeichnet Evidenz für
Messwertof
oder
Urteil.
Relationships between Content Items in einen
the content
thiseinIOD
shall be conveyed in the by-value
Z. B. CODE Malignität“ {INFERRED FROM: CODE Tumor“, INFER”
”
mode. See Table C.17.3-8 for Relationship
Type
definitions.
RED FROM: CODE Lymphadenopathie“,. . . }.
”
Z. B. NUM: BPD“ = 5mm“ {INFERRED FROM: SCOORD}.
”
”
Note: Relationships
by-reference
Therefore,
Referenced
Content
Item
Identifier
SELECTED
FROM
ausgewählt
aus are forbidden.
Das Quellelement
beschreibt
räumliche
oder
zeitliche
Koordinaten im Zielelement
(bzw.
in
mehreren
Zielelementen).
(0040,DB73) is not present in any of the Content Items within
the SR Document Content
Z. B. SCOORD POLYLINE 1,1 5,1 5,10 1,10 1,1“ {SELECTED FROM:
”
Module.
IMAGE 36}.
Z. B. TCOORD SEGMENT 60-200mS“ {SELECTED FROM: WAVE”
FORM}.
Table A.35.2-2 specifies the relationship constraints of this IOD.
Tabelle 3: Typen für Relationen (Übersetzung nach PS 3.3, Tab. C.17.3-8 [DIC08a])
Table A.35.2-2
RELATIONSHIP CONTENT CONSTRAINTS FOR ENHANCED SR IOD
Source Value Type
Relationship Type
(Enumerated Values)
Target Value Type
CONTAINER
CONTAINS
TEXT, CODE, NUM, DATETIME,
DATE, TIME, UIDREF, PNAME,
SCOORD, TCOORD, COMPOSITE,
IMAGE, WAVEFORM, CONTAINER
CONTAINER
HAS OBS CONTEXT
TEXT, CODE, NUM, DATETIME,
DATE, TIME, UIDREF, PNAME,
COMPOSITE
CONTAINER, IMAGE,
WAVEFORM,
COMPOSITE, NUM
HAS ACQ CONTEXT
TEXT, CODE, NUM, DATETIME,
DATE, TIME, UIDREF, PNAME
any type
HAS CONCEPT MOD
TEXT, CODE
TEXT, CODE, NUM
HAS PROPERTIES
TEXT, CODE, NUM, DATETIME,
DATE, TIME, UIDREF, PNAME,
IMAGE, WAVEFORM, COMPOSITE,
SCOORD, TCOORD
TEXT, CODE, NUM
INFERRED FROM
TEXT, CODE, NUM, DATETIME,
DATE, TIME, UIDREF, PNAME,
IMAGE, WAVEFORM, COMPOSITE,
SCOORD, TCOORD
SCOORD
SELECTED FROM
IMAGE
TCOORD
SELECTED FROM
SCOORD, IMAGE, WAVEFORM
Abbildung 17: Einschränkungen bei der Konstruktion von DICOM-SR-Dokumenten der Klasse Enhanced“ (PS
” to, is
Note:
1. Which SOP Classes the IMAGE, WAVEFORM or COMPOSITE Value Type may refer
3.3,documented
Tab. A.35.2-2
[DIC08a])
in the Conformance Statement for an application (see PS 3.2 and PS 3.4).
2. The HAS CONCEPT MOD relationship is used to modify the meaning of the Concept Name
of a Source Content Item, for example to provide a more descriptive explanation, a different
language translation, or to define a post-coordinated concept.
Seite 40
A.35.3 Comprehensive SR Information Object Definition
A.35.3.1 Comprehensive SR Information Object Description
The Comprehensive SR IOD is a superset of the Basic Text SR IOD and the Enhanced SR IOD,
2
GRUNDLAGEN
Die Tabelle mit Einschränkungen gilt sowohl für By-value- als auch für By-reference-Relationen, was im Standard
allerdings nicht explizit erwähnt wird33 . Vor allem für By-reference-Relationen finden sich bei einigen Dokumentenklassen weitere, freitextlich formulierte Einschränkungen. So verbietet beispielsweise die Dokumentenklasse
Comprehensive“ By-reference-Relationen zu Zielknoten, die sich auf dem Pfad zwischen der Wurzel und dem
”
Quellknoten befinden. Auf diese Weise sollen Zyklen im Graph vermieden werden34 . Alle Dokumentenklassen,
die By-reference-Relationen erlauben, schränken deren Verwendung außerdem auf bestimmte Relationstypen
ein.
2.6.2.4 Beispiel für einen DICOM-SR-Inhaltsbaum
Abbildung
18- zeigt
PS 3.3
2008 einen gültigen Inhaltsbaum der Dokumentenklasse Comprehensive“ für einen Röntgen”
Page 956Der Dokumententitel wird über Postkoordination genauer spezifiziert ( has concept mod...“ oben
Befundbericht.
”
rechts). Verschiedene Umstände der Erstellung des Befundberichts werden als observation context“ struktu”
C.17.4 SR(unten
Contentlinks).
Tree Example
(Informative)
riert angegeben
Der Befundbericht
ist mittels Zwischenüberschriften in Form von CONTAI”
NER“-Inhaltselementen
weiterthe
strukturiert.
Inhaltsbaum
gibtinterpretation.
es zwei By-reference-Relationen. Das Beispiel
Figure C.17.4-1 depicts
content of anIm
example
diagnostic
verdeutlicht, dass ein Inhaltselement auch mehrere By-reference-Relationen haben kann.
Document Root Node CONTAINER
"Chest X-ray" (Document Title)
Leaf Node CODE
"Views = PA and Lateral"
has concept mod
contains
contains
contains
Leaf Node IMAGE
"Baseline"
Content Node CODE
"finding = mass"
Heading Node
CONTAINER
"Conclusions"
contains
Heading Node
CONTAINER "Specific
Image Findings"
has properties
has properties
contains
contains
Leaf Node NUM
"diameter = 1.3 cm"
Leaf Node CODE
"margination = infiltrativ e"
Content Node CODE
"conclusion = probable
malignancy "
Content node SCOORD
"best illustration of
findings"
inferred from
inferred from
selected from
Leaf Node IMAGE
Has obs contex t
Content Node PNAME
"Recording Observer =
Smith^John^^Dr^"
Has obs contex t
Content Node UIDREF
"Study Instance UID of
Evidence Directly Examined
by RO = 1.2.3.4.5.6.7.100"
Has obs contex t
Content Node PNAME
"Patient-Data-Acquisition
Subject = Homer^Jane^^^"
* Relationship Modes
= By-value
= By-reference
Abbildung 18: Beispiel für einen DICOM-SR-Inhaltsbaum (PS 3.3, Kapitel C17.4 [DIC08a])
Notes:
1. For nodes of type CONTAINER, the contents of the Concept Name Code Sequence are
shown in quotes and italicized.
Diskussion auf comp.protocols.dicom,
2. For nodes of Value Type CODE, PNAME, NUM the contents are shown as “Concept Name
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/d7056c4d0d11b040.
= Value”.
Code Sequence
34 Dass diese Formulierung
im DICOM-Standard
allerdings keine Zyklenfreiheit garantiert, wurde bereits in [Rie06] und auf
3. For the
nodes (vgl.
of Value
TypeinIMAGE
and
SCOORD, the contents of the Concept Name Code
comp.protocols.dicom
diskutiert
Thread
Fußnote
33).
Sequence indicating the purpose of reference are shown in quotes and italicized.
33 Vgl.
Seite 41
2
GRUNDLAGEN
2.6.2.5 Abbildung eines Inhaltsbaums auf DICOM-Attribute
Es wurde bereits geschildert, dass DICOM-SR-Dokumente dieselben Basis-Datenstrukturen wie andere DICOMObjekte verwenden, damit die Vorteile einer bereits bestehenden DICOM-Infrastruktur genutzt werden können.
Die Daten eines Inhaltsbaumes müssen also auf DICOM-Attribute abgebildet werden.
Der Konzeptname eines Inhaltselements besteht aus mehreren zusammengehörigen Attributen und wird daher
als Sequenzattribut Concept Name Code Sequence“ (0040,a043) abgelegt. Für den Datentyp des Konzeptwertes
”
wird das Attribut Value Type“ (0040,a040) verwendet, für den Typ der (By-value-)Relation zum Vaterelement
”
das Attribut Relationship Type“ (0040,a010). Je nach Typ des Inhaltselements kommen zahlreiche weitere
”
Attribute hinzu (vgl. Kap. 4.3.1).
Die Baumstruktur von DICOM-SR-Dokumenten wird über verschachtelte Sequenzattribute realisiert. Das Wurzelelement befindet sich auf der obersten, flachen“ Hierarchieebene inmitten der DICOM-Attribute aus anderen
”
Inhaltsmodulen. Alle Kinder des Wurzelelements befinden sich jeweils als Item innerhalb des Sequenzattributs
Content Sequence“ (0040,a730). Handelt es sich bei einem Kindelement um einen inneren Knoten des Inhalts”
baumes, so enthält das zugehörige Items wiederum ein Content Sequence“-Attribut und so weiter.
”
Eine Sonderstellung nehmen By-reference-Relationen ein. Wie oben beschrieben, kann ein Inhaltselement mehrere By-reference-Relationen haben. Diese werden aber nicht als eigenständiges Sequenzattribut kodiert, sondern
wie die Kinder des betreffenden Inhaltselements als Items in die Content Sequence“ eingefügt. By-reference”
Relationen bestehen im Wesentlichen aus dem oben genannten Attribut Relationship Type“ und der Adresse
”
des Zielknotens, die in Attribut Referenced Content Item Identifier“ (0040,db73) angegeben wird. Sie haben
”
insbesondere keinen Value Type“ und keine Kindelemente, also kein Content Sequence“-Attribut.
”
”
2.6.3 Kontextgruppen
Kapitel PS 3.16 des DICOM-Standards mit dem Namen DICOM Content Mapping Resource“ (DCMR), enthält
”
im Anhang B auf ca. 350 Seiten eine Liste mit mehr als 8.000 Begriffen, die in DICOM-SR-Dokumenten verwendet werden sollen [DIC08a]. Diese Begriffe sind thematisch in ca. 600 sogenannte Kontextgruppen ( Context
”
Groups“, CGs) aufgeteilt. Kontextgruppen sind im DICOM-Sprachgebrauch Mengen von Begriffen mit eindeutigem Schlüssel, die auf die Benutzung in einem bestimmten Kontext zugeschnitten sind. Jede Kontextgruppe
trägt eine eindeutige Nummer, die Kontext-ID ( Context ID“, CID). Beispiele für Kontextgruppen sind Late”
”
rality“ (CID 244), Imaging Procedures“ (CID 3428) oder Linear Measurements“ (CID 7470).
”
”
Die Konzepte sind verschiedenen internationalen Standards, z. B. ICD-10 oder SNOMED, entnommen. Wo keine
geeigneten Begriffe aus anerkannten Standards existieren, schließt der DICOM-Standard mit einem eigenen
Vokabular, der sogenannten DICOM Controlled Terminology“, die Lücken (vgl. PS 3.16, Anhang D [DIC08a]).
”
Die Verwendung der im DCMR aufgezählten Begriffe ist (im Gegensatz zur Verwendung beispielsweise der
vollständigen SNOMED) lizenzkostenfrei35 . Es hat daher Vorteile, sich auf die in den Kontextgruppen des
DCMR genannten Konzepte zu beschränken, zumal das DCMR den Anspruch erhebt, die im DICOM-Umfeld
gebräuchlichen Begriffe möglichst vollständig aufzulisten. Ein Teil der Begriffe im DCMR liegt in französischer
und japanischer Übersetzung vor. Eine deutsche Übersetzung fehlt bisher.
Eine Kontextgruppe kann beliebig viele andere Kontextgruppen inkludieren. Auf diese Weise wird Redundanz
im DCMR vermieden, was Inkonsistenzen reduziert und die Pflege vereinfacht.
Abbildung 19 zeigt beispielhaft zwei Kontextgruppen mit Inklusion. Der allgemeine Aufbau von Kontextgruppen
ist in PS 3.16, Abschnitt 7 [DIC08a] beschrieben und sei hier nur stichpunktartig zusammengefasst:
ˆ Neben der bereits genannten numerischen CID hat jede Kontextgruppe einen alphanumerischen Bezeichner, den Kontextgruppennamen.
ˆ Kontextgruppen haben einen Typ, sie sind entweder erweiterbar ( extensible“, z. B. Kontextgruppe 4
”
Anatomic Region“) oder nicht-erweiterbar ( non-extensible“, z. B. Kontextgruppe 230 Yes-No“ oder
”
”
”
3015 Coronary Arteries“). Erweiterbare Kontextgruppen dürfen vom Anwender um selbstdefinierte Be”
griffe erweitert werden.
ˆ Jede Kontextgruppe trägt als Versionsnummer ein Datum im Format JJJJMMTT.
35 Die
Lizenzfreiheit für Nutzer beruht auf einem Abkommen zwischen den Standardisierungsorganisationen von DICOM und
SNOMED, nach dem DICOM die Lizenzkosten sozusagen dadurch erbringt, dass an den entsprechenden Konzepten gearbeitet
und neue Konzepte für SNOMED beigesteuert werden [Clu00].
Seite 42
2
GRUNDLAGEN
ˆ Die in der jeweiligen Kontextgruppe enthaltenen Begriffe werden in einer Tabelle angegeben36 . Jede Zeile
in dieser Tabelle entspricht genau einem kodierten Konzept. Wie in Kapitel 2.5.6 (S. 25) beschrieben, wird
ein kodiertes Konzept in DICOM über seinen Kodewert, den Kodierungsschema-Bezeichner, gegebenenfalls
die Kodierungsschema-Version und die Kodebedeutung beschrieben.
ˆ Bei einigen Kontextgruppen ist in einer zusätzlichen Spalte angegeben, welchen Einträgen einer Referenzterminologie das jeweilige Konzept entspricht. Ein Beispiel dafür ist Kontextgruppe 3014 Coronary
”
Artery Segments“: Hier wird standardmäßig nach der Bypass Angioplasty Revascularization Investigation
(BARI, vgl. Tabelle 8-1 in PS 3.16 [DIC08a]) kodiert, es wird jedoch für die meisten Konzepte auch ein
PS 3.16 - 2008
SNOMED-Kode
angegeben.
Page 342
CID 3614
Valve Areas, non-Mitral
Context ID 3614
Valve Areas, non-Mitral
Type: Extensible
Version: 20030327
CID 3615
Coding
Scheme
Designator
Code Value
Code Meaning
SRT
F-0231F
Aortic Valve Area
SRT
F-02321
Pulmonic Valve Area
SRT
F-02322
Tricuspid Valve Area
DCM
122160
Derived Non-Valve Area
Valve Areas
Context ID 3615
Valve Areas
Type: Extensible
Version: 20030327
Coding
Scheme
Designator
Code Value
Code Meaning
Include CID 3614 Valve Areas, non-Mitral
SRT
F-02320
Mitral Valve Area
CID 3616 19: Beispiele
Hemodynamic
Period Measurements
Abbildung
für Kontextgruppen
(aus PS 3.16, Anhang B [DIC08a])
Context ID 3616
Hemodynamic Period Measurements
Type: Extensible
Version: 20030327
2.6.4 Templates
Coding Aufbau
Code
Value
Code Meaning
In Kapitel 2.6.2 wurde der allgemeine
eines
DICOM-SR-Dokumentenbaums
erklärt. Abbildung 17 zeigScheme
te, dass man InhaltselementeDesignator
vielfältig über Relationen miteinander kombinieren kann. Die hohe Anzahl an
Freiheitsgraden bei der Strukturierung ist zwar aus theoretischer Sicht zu begrüßen, weil dadurch ein großes
SRT
R-002D2
Aortic Systolic Ejection Period (SEPa)
Einsatzgebiet für DICOM-SR geschaffen wird. Für die praktische Anwendung hat die Vielfalt von DICOM-SR
SRT
R-0035C
Pulmonary Systolic Ejection Period (SEPp)
jedoch Nachteile. Menschliche Betrachter empfinden die umfangreichen Auswahlmöglichkeiten für InhaltseleSRT
R-0032C
Mitral
Diastolic Filling
mente und Relationen als unübersichtlich und verwirrend.
Außerdem
wirdPeriod
die (DFPm)
maschinelle Interoperabilität
SRT
R-003A9
Tricuspid auf
Diastolic
Period (DFPt)
erschwert, weil sich ein und derselbe
Sachverhalt
mit DICOM-SR
vieleFilling
verschiedene
Arten ausdrücken lässt.
SRT
R-002F5
Derived Period, Non-Valve
Um trotz des Festhaltens an einem generisch ausgerichteten Standard die Anwendungstauglichkeit von DICOMSR zu verbessern, wurden mit Supplement 53 die sogenannten Templates“ in den DICOM-Standard eingeführt
”
3617
Valve
[17]. Mithilfe vonCID
Templates
kann
dieFlows
Kombinierbarkeit von Inhaltselementen und die Anzahl ihrer Kinder
beschränkt werden. Außerdem ermöglichen sie die Definition zulässiger Wertemengen für Konzeptnamen und
Context ID 3617
Konzeptwerte der Inhaltselemente.
Valve Flows
Type: Analog
Extensible
Version:(vgl.
20030327
Abbildung 20 zeigt Beispiele für Templates.
zu Kontextgruppen
Kap. 2.6.3) werden Templates
36 Ausnahme:
Einige wenige Kontextgruppen enthalten statt einer konkreten Tabelle mit Begriffen nur einen Verweis auf andere
Standards. Darauf wird in Kapitel 4.1.2 näher eingegangen.
- Standard -
Seite 43
otherwise.
2
3 >>
IMAGE
RSELECTED
FROM
1
MC
XOR Row 4
4 >>
SELECTED IMAGE
FROM
1
MC
XOR Row 3
1
U
5 >
HAS
GRUNDLAGEN
PROPERTI
CODE
EV (G-C036, SRT,
“Measurement Method")
DCID (7473) General Area
Calculation Methods
ES
in Tabellenform angegeben und besitzen einen Namen sowie eine eindeutige ID ( Template ID“, TID). Auch
”
Content Item Descriptions
für Templates gibt es einen Inklusionsmechanismus, so dass Templates in anderen Templates wiederverwendet
Row 2 “Area Outline”
A Graphic Type of POINT implies that the object is a single pixel and the
werden können (vgl. Abb. 20(b), Zeile
2 und
Im
Extremfall
lassen sich
Templates
vollständig aus anderen
object’s
area4).
is the
area
of the pixel. Otherwise
the type
shall be a closed
(start Observation
and end point theContext“).
same) or a CIRCLE
or an Templates,
ELLIPSE.
Templates komponieren (siehe z. B.POLYLINE
TID 1001
Es gibt
die die Struktur
”
für den gesamten Inhaltsbaum vorgeben (sog. Root Templates“, z. B. TID 2000 Basic Diagnostic Imaging
”
”
Report“ oder TID 2010 Key Object Selection“), und Templates, die nur Teilbäume beschreiben.
”
PS 3.16 - 2008
TID 1402
NL
NL Rel with
4Parent>
1
>
Value Type
Relation with
Parent
VT
TID 1402
Concept Name
V
M
VOLUME MEASUREMENT
Type: Extensible
Concept Name
CONTAINS
NUM
5
Page 223
Volume Measurement Template
INCLUDE
VM Req
Type
DTID (300) Measurement
1
DCID(7472) “Volume
Measurements”
CONTAINS
INCLUDE
Req
Type
Condition
Value Set Constraint
2,3,4,5 shall be
present
$Length
Condition
$Derivation = DCID
(3627) Measurement
Value Set
TypeConstraint
1-n
MC
$Measurement = $Width
At least one of row
2,3,4,5 shall be
Value shall $Derivation
be > 0
= DCID
present
(3627) Measurement
1-n
MC
At least one of row
$Measurement =
GRAPHIC TYPE
= not
2,3,4,5 shall be
$Height
{MULTIPOINT}
present
$Derivation = DCID
(3627) Measurement
Type
M
UNITS = DCID(7462) “Units of
Type
Volume Measurement”
DTID (300) Measurement
2 >
INFERRED SCOORD
FROM
3 >>
IMAGE
RSELECTED
FROM
4 >>
1
MC XOR Row 3
SELECTED IMAGE
FROM
TID 5025 OB-GYN Fetal Vascular Ultrasound Measurement Group
CODE
1
U fetal vascular measurements.DCID (7474) General Volume
HAS
EV (G-C036,
SRT,container of OB-GYN
This template
is an anatomy
specific
PROPERTI
“Measurement Method")
Calculation Methods
ES
5 >
EV (121057,DCM, “Perimeter
Outline”)
1-n
U
1
MC
Parameter Name
XOR Row 4
Parameter Usage
$AnatomyGroup
The concept
name of the vascular anatomy und
(a) Schachtelungstiefe,
By-Reference-Relation
XOR
Content Item Descriptions
Row 2 “Perimeter
The two dimensional TID
perimeter
5025 of the volume’s intersection with or projection
Outline”
into theVASCULAR
image. A Graphic
Type of POINT
implies thatGROUP
the volume’s
OB-GYN FETAL
ULTRASOUND
MEASUREMENT
intersection or projection
in a plane is a single pixel. A single pixel projection
Type: Extensible
perimeter cannot cause a volume calculation to become 0.
NL Rel with
Parent
1
2
>
3 >
4 >
HAS OBS
CONTEXT
VT
Concept Name
VM Req
Condition
Value Set Constraint
Otherwise the type shallType
be a closed POLYLINE (start and end point the
same) or a CIRCLE1 or an
CONTAINER $AnatomyGroup
M ELLIPSE.
INCLUDE
HAS
CODE
CONCEPT
MOD
CONTAINS INCLUDE
DTID (1008) Subject Context, 1
Fetus
MC
EV (G-C171, SRT “Laterality”) 1
MC
DTID (300) Measurement
M
IF this template is
more than once
- Standardinvoked
to describe more than
1-n
one fetus
IFF anatomy has lateralityDCID (244) Laterality
$MeasType = DCID (12119) Vascular
Ultrasound Property
$Derivation = DCID (3627) Measurement
Type
(b) Inklusion, Verwendung und Übergabe von Parametern
Content Item Descriptions
Anatomy Group
Specifies the anatomical context of the observations in the group.
Abbildung 20: Beispiele für DICOM-SR-Templates (aus PS 3.16, Anhang A [DIC08a])
TID 5026 OB-GYN Pelvic Vascular Ultrasound Measurement Group
This template is an anatomy specific container of OB-GYN pelvic vascular measurements.
Jede Zeile einer Template-Tabelle
beschreibt entweder ein Inhaltselement oder verweist auf ein anderes Template.
Die Spalten einer Template-Tabelle
seien
im Folgenden kurz beschrieben:
Parameter
Name
Parameter Usage
$AnatomyGroup
The concept name of the vascular anatomy
ˆ Die Zeilen eines Templates sind mit 1“ beginnend fortlaufend nummeriert.
”
ˆ NL. Die Anzahl der >“-Zeichen in dieser Spalte beschreibt die Schachtelungstiefe ( Nesting Level“) des
TID 5026
”
”
jeweiligen Inhaltselements
bzw.PELVIC
Templates
relativ
zum Inhaltselement
Zeile 1 des Templates. Fehlt diese
OB-GYN
VASCULAR
ULTRASOUND
MEASUREMENTin
GROUP
Type:
Extensible
Angabe, so handelt es sich um ein Geschwisterelement des Inhaltselements in Zeile 1.
- Standard ˆ Rel with Parent. Gibt den Typ der Relation zum Quellelement an. Die aktuelle Zeile beschreibt immer
das Zielelement der jeweiligen Relation. Handelt es sich um eine By-reference-Relation, so wird dem
Relationstyp R-“ vorangestellt (s. Abb. 20(a), Zeile 3).
”
ˆ VT. Beschreibt den Typ des Konzeptwertes ( Value Type“), falls die aktuelle Zeile ein Inhaltselement
”
beschreibt. Bindet die aktuelle Zeile hingegen ein anderes Template ein, so findet sich in dieser Spalte die
INCLUDE“-Anweisung (s. Abb. 20(b), Zeile 2 und 4).
”
ˆ Concept Name. Gibt Einschränkungen für den Wertebereich des Konzeptnamens an, falls die aktuelle
Zeile ein Inhaltselement beschreibt. Wenn in der vorhergehenden Spalte INCLUDE“ steht, so wird in
”
dieser Spalte das Zieltemplate angegeben (s. Abb. 20(b), Zeile 2 und 4).
ˆ VM. Gibt an, ob das in der jeweiligen Zeile spezifizierte Inhaltselement oder Template auch mehrfach
Seite 44
2
GRUNDLAGEN
hintereinander im Inhaltsbaum auftreten darf37 . Die untere Schranke ist dabei immer mindestens 1, Optionalität wird durch die beiden folgenden Spalten ausgedrückt.
ˆ Req Type. Beschreibt die Optionalität des betreffenden Inhaltselements bzw. Templates. Ein Element
kann verpflichtend ( M andatory“) oder optional ( U ser Option“) im Inhaltsbaum enthalten sein. Die
”
”
zusäzliche Angabe des Buchstabens C“ ( C onditional“) bedeutet, dass das Inhaltselement unter den in
”
”
der folgenden Spalte genannten Bedingungen angegeben werden muss ( MC“) oder angegeben werden
”
kann ( UC“).
”
ˆ Condition. Enthält die Bedingung, falls in der vorhergehenden Spalte MC“ oder UC“ steht. Eine häufig
”
”
verwendete Abkürzung in dieser Spalte ist XOR...“. Das Element der jeweiligen Zeile darf in diesem Fall
”
nur dann im Inhaltsbaum enthalten sein, wenn keine der anderen, im Ausdruck genannten Zeilen enthalten ist (s. Abb. 20(a), Zeile 3 und 4). Außerdem gibt es zwei verschiedene Fallunterscheidungen: IF...“
”
bedeutet, dass das Inhaltselement bzw. das eingebundene Template bei erfüllter Bedingung enthalten sein
muss und bei nicht erfüllter Bedingung enthalten sein kann, während IFF...“ die Abwesenheit bei nicht
”
erfüllter Bedingung erzwingt (s. Abb. 20(b), Zeile 2 und 3)38 .
ˆ Value Set Constraint. In dieser Spalte kann der Wertebereich für den Konzeptwert eines Inhaltselements
eingeschränkt werden. Auch die Angabe von Standardwerten für den Fall, dass das in der jeweiligen Zeile
beschriebene Inhaltselement in einem Inhaltsbaum fehlt, ist möglich. Wird in der jeweiligen Zeile ein
Template eingebunden, so können in dieser Spalte Parameter für das einzubindende Template gesetzt
werden (s. Abb. 20(b), Zeile 4). Parameter sind durch ein führendes $“-Zeichen gekennzeichnet und
”
können im eingebundenen Template an verschiedenen Stellen verwendet werden (s. Abb. 20(b), Zeile 1).
Weitere Details zum Aufbau von Templates sind Kapitel 6 in PS 3.16 zu entnehmen [DIC08a].
Einschränkungstypen Es gibt drei verschiedene Arten von Einschränkungen für Konzeptnamen und Konzeptwerte: Kodierte Begriffe, Verweise auf Kontextgruppen und Parameter.
Kodierte Begriffe werden in Templates als Tripel der Form (Kodewert, Kodierungsschema-Bezeichner, Kodebe”
deutung“) angegeben. Zusätzlich werden häufig die Modifikatoren EV ( Enumerated Value“) und DT ( Defined
”
”
Term“) verwendet. EV bedeutet, dass nur der angegebene Begriff zulässig ist, während DT neben dem angegebenen Begriff auch andere Werte erlaubt (vgl. PS 3.5, Kap. 6.3 [DIC08a]). Wird der Operator MemberOf{...}
verwendet, so sind nur die Begriffe aus den in den geschweiften Klammern referenzierten Kontextgruppen
zulässig.
Bei Verweisen auf Kontextgruppen werden die Abkürzungen BCID ( Baseline Context Group Identifier“) und
”
DCID ( Defined Context Group Identifier“) verwendet. Baseline“ bedeutet hier einen Vorschlag, Defined“ eine
”
”
”
39
feste Vorgabe . Für die Inklusion von Templates gibt es analog die Abkürzungen BTID ( Baseline Template
”
Identifier“) und DTID ( Defined Template Identifier“).
”
Umsetzung von DICOM-SR-Templates in XML Ein großes Problem beim maschinellen Umgang mit Templates ist die fehlende formale Notation für die letzten beiden Tabellenspalten, die zum Teil sehr komplexe
Formulierungen enthalten. Die maschinengerechte Aufbereitung von Templates, beispielsweise in ein semantisch
annotiertes XML-Format, ist daher keine triviale Aufgabe. Philips Research veröffentlichte 2005 einen allgemeinen Vorschlag für die Umwandlung von Template-Tabellen in XML-Schema-Dateien [Zha05], klammerte den
komplizierten Bereich der Einschränkungen dabei jedoch weitgehend aus. Ein Lösungsansatz mag das bereits
2002 veröffentlichtes Paper der gleichen Forschungsgruppe sein, in dem die Schemasprache Schematron [113]
verwendet wird, um komplex formulierte Einschränkungen zu beschreiben [Lee02]. Dieser Grundgedanke wurde
allerdings im Jahr 2005 patentiert [Lee05], was weitere Forschungsarbeiten behindern könnte.
37 DICOM-SR
verwendet hier wie schon bei der Definition mehrwertiger Attribute (vgl. Kap. 2.5.6) den Begriff Value Multiplicity“.
”
Der Autor hält diese Doppelverwendung für ungeschickt, da hier nicht nur der Konzeptwert, sondern auch der Konzeptname
eines Inhaltselements gemeint ist. Außerdem kann die Angabe auch eingebundene Templates betreffen. Eigentlich müsste man
also von Content Item / Template Multiplicity“ oder schlicht (Line) Multiplicity“ sprechen.
”
”
38 Die Definition
von XOR“, IF“ und IFF“ in Kombination mit der Definition von MC“ und UC“ ist nicht unproblematisch,
”
”
”
”
”
vgl. Nachfrage auf comp.protocols.dicom:
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/34b33685fbc4f367.
39 Man beachte die widersprüchliche Bedeutung des Modifikators Defined“. Während er in Defined Term“ für eine liberalere
”
”
Auswahl steht, steht er hier für die striktere Vorgabe.
Seite 45
2
GRUNDLAGEN
2.6.5 DICOM-SR und CAD
Speziell für die drei in Kapitel 2.3 näher beschriebenen Anwendungsgebiete der Computergestützten Detektion
(CAD) bietet DICOM-SR eigene Informationsobjekte an.
Supplement 50 Mammography Computer-Aided Detection SR SOP Class“, das bereits im Mai 2001 verabschie”
det wurde, beschreibt ausführlich, wie Mammografie-CAD-Ergebnisse als DICOM-SR-Dokument gespeichert
werden sollen. Wie wichtig diese Anwendung von DICOM-SR ist, zeigen die 24 Templates (TID 4000-4023)
und ca. 100 Kontextgruppen (CID 6000-6097, 6159-6162, 4005, 4013-4015 etc.) im DCMR, die diesem Thema
gewidmet sind.
Die Ablage von CAD-Ergebnissen beim Thorax-Röntgen beschreibt das im Januar 2003 verabschiedete Supplement 65 Chest Computer-Aided Detection SR SOP Class“. Auch für diese Dokumentenklasse finden sich im
”
DCMR neun Templates (TID 4100-4108) und zahlreiche Kontextgruppen (CID 6100-6138 u. a.).
Die Erstellung von Befundberichten für die computergestützte Erkennung von Polypen im Dickdarm wird als
Supplement 126 Colon Computer-Aided Detection SR SOP Class“ entwickelt [17]. Supplement 126 befindet
”
sich derzeit (Juli 2008) in der Public Comment“-Phase, mit einer Verabschiedung ist also in den nächsten
”
Monaten zu rechnen.
2.6.6 Verwandte Standards
HL7-CDA Hauptkonkurrent von DICOM-SR ist sicherlich die HL7 Clinical Document Architecture (CDA).
CDA ist wie DICOM-SR ein Standard für strukturierte und semantisch annotierte Dokumente. Die derzeit
aktuelle Fassung von CDA ist Release 2, die seit 2005 vom ANSI standardisiert ist. Im Gegensatz zu DICOM
sind HL7-Standards nicht frei erhältlich. Für den Zugriff auf die wichtigsten Dokumente ist eine Mitgliedschaft
erforderlich, die für Einzelpersonen 600 US$ jährlich kostet, alternativ kann man den CDA-Standard einzeln
für 50 US$ beim ANSI kaufen [4]. Einführende Artikel finden sich in den einschlägigen Fachzeitschriften (z. B.
[DAB+06]).
Wie bereits in Abbildung 7 gezeigt, ist HL7 der dominierende Kommunikationsstandard in Krankenhäusern außerhalb des bildverarbeitenden Sektors. Außerdem wird HL7 zunehmend zur einrichtungsübergreifenden Kommunikation sowohl zwischen verschiedenen Kliniken als auch zwischen Kliniken und niedergelassenen Ärzten
verwendet. Durch die Verbreitung von HL7 hat CDA gute Chancen, der zentrale Standard für strukturierte
Dokumente im medizinischen Bereich zu werden. Insbesondere soll auch die deutsche elektronische Gesundheitskarte (eGK) in späteren Ausbaustufen CDA unterstützen. Bisher sind für den deutschen Markt ein elektronischer
Arztbrief und ein elektronischer ärztlicher Reha-Entlassungsbericht als CDA-Dokumente standardisiert40 . Auch
andere Länder wie die Niederlande, Spanien, Japan und Mexiko prüfen derzeit die Nutzung von HL7-CDA.
HL7-CDA fußt auf dem Reference Information Model“ (RIM) von HL7 Version 3. Daher werden CDA”
Dokumente – ebenso wie die verschiedenen Nachrichtentypen in HL7 Version 3 – XML-kodiert. CDA-Dokumente
können in HL7-Nachrichten verschickt werden, sie können aber auch unabhängig von Nachrichten, beispielsweise als Bestandteil einer elektronischen Gesundheitsakte, existieren. Ein CDA-Dokument besteht aus einem
Header“ und einem Body“, der wiederum in Sections“ unterteilt sein kann. Jede Section enthält einen Ab”
”
”
schnitt für Freitext, dessen Inhalte optional kodiert angegeben werden können. Ein CDA-Dokument kann auch
Multimedia-Inhalte wie Bilder und Tonaufnahmen enthalten, DICOM-Objekte können über WADO referenziert
werden. Umgekehrt können CDA-Dokumente in DICOM gekapselt werden, so dass sie sich in PACS-Systemen
speichern lassen. Diese Möglichkeit wurde mit DICOM-Supplement 114 DICOM Encapsulation of CDA Docu”
ments“ im Jahr 2007 eingeführt [17]. HL7-CDA kennt ebenso wie DICOM-SR ein Template-Konzept.
Um die Zusammenarbeit zwischen DICOM und HL7 zu verbessern, gibt es auf beiden Seiten spezielle Arbeitsgruppen. Bei DICOM ist dies WG-20 ( Integration of Imaging and Information Systems“), bei HL7 die
”
Imaging Integration Special Interest Group (SIG)“. Beide Gruppen arbeiten an einer Harmonisierung der
”
Standards, um den Übergang zwischen beiden Welten zu vereinfachen. Das erste große Produkt dieser Zusammenarbeit ist das kurz vor der Verabschiedung stehenden DICOM-Supplement 135 SR Diagnostic Imaging
”
Report Transformation Guide“ [17]. Dieses Supplement erklärt die Abbildung von DICOM-SR Dokumenten,
40 Für
beide Dokumententypen gibt es Implementierungsleitfäden und zusätzliche Materialien auf den Webseiten der deutschen
HL7 Benutzergruppe [46].
Seite 46
2
GRUNDLAGEN
die dem Root-Template 2000 Basic Imaging Report“ entsprechen, in Dokumente der CDA-Dokumentenklasse
”
Diagnostic Imaging Report“ (DIR, [Hea07]), die zur Zeit von der HL7-Arbeitsgruppe Structured Documents“
”
”
entworfen wird [Hea08]. Eine Einführung in diese Thematik wurde vor kurzem im Rahmen eines Hauptseminars
am IMI Lübeck erarbeitet [Wag08].
Integrating the Healthcare Enterprise (IHE) Eine weitere wichtige Institution im Zusammenhang mit DICOMSR und HL7-CDA ist Integrating the Healthcare Enterprise“ (IHE) [50]. Diese Initiative, die ähnlich wie der
”
DICOM-Standard von verschiedenen Anwendergruppen und Herstellern medizintechnischer Geräte vorangetrieben wird, hat sich das Ziel gesetzt, die Interoperabilität verschiedener im Gesundheitswesen etablierter
Standards zu verbessern. Dazu definiert IHE in sogenannten Integrationsprofilen ( Integration Profiles“) typi”
sche klinische Anwendungsfälle einer medizinischen Fachdisziplin und nennt die beteiligten Akteure ( Actors“)
”
und Transaktionen ( Transactions“). Ein Akteur ist ein IT-System, das Daten erzeugt, bearbeitet oder verwal”
tet. Transaktionen sind Interaktionen zwischen den Akteuren zum Datenaustausch. Für jede Transaktion wird
festgelegt, welche Standards zum Einsatz kommen. Aufgrund ihrer Verbreitung wird dabei häufig auf DICOM
und HL7 zurückgegriffen. Interoperabilitätsdefizite zwischen verschiedenen Standards werden an die jeweiligen
Standardisierungsgremien zurückgemeldet.
Alle Integrationsprofile einer medizinischen Fachdisziplin mit ihren Akteuren und Transaktionen werden schließlich in einem Dokument veröffentlicht, das Technical Framework“ genannt wird. Auf großen Testveranstaltun”
gen, den Connectathons“ versucht die medizintechnische Industrie mit ihren Lösungen die Integrationsprofile
”
zu realisieren. Nach den Tests formulieren die Firmen in sogenannten Integration Statements“, welche Inte”
grationsprofile von ihren Produkten unterstützt werden [49]. Diese Praxis ähnelt den DICOM Conformance
”
Statements“ (vgl. Kap. 2.5.1.1).
Das Technical Framework“ für die Pathologie wurde Anfang 2008 als Vorabversion ( Trial Implementation“)
”
”
veröffentlicht und enthält insbesondere das neue Integrationsprofil Pathology Workflow“ (PWF) [IHE08]. Dieses
”
Integrationsprofil beinhaltet bereits Informationen zum Umgang mit Befundberichten in der Pathologie (vgl.
Abb. 21). Vollständiger und genauer soll der Arbeitsablauf für Befundberichte im Integrationsprofil Pathology
”
Report Workflow“ (PRWF) beschrieben werden, das sich derzeit in Entwicklung befindet und 2009 in das
Technical Framework aufgenommen werden soll.
2.6.7 Informationsquellen zu DICOM-SR
Das in Abschnitt 2.5.12 bemängelte Fehlen an einführender Literatur zu DICOM trifft auf DICOM-SR in
verstärktem Maße zu.
Eine naheliegende Informationsquelle zu DICOM-SR wäre der DICOM-Standard selbst. DICOM Structured
Reporting (DICOM-SR) wurde wie oben erwähnt mit Supplement 23 eingeführt und durch Supplement 53
erheblich erweitert [17]. DICOM Supplements sind für sich gesehen recht unverständlich, da sie ausschließlich
die Unterschiede zur vorherigen DICOM-Version beschreiben. Sie sind also als einführende Literatur ungeeignet.
Das Exzerpieren der für Structured Reporting relevanten Informationen aus dem vollständigen DICOM-Standard
ist aufgrund des Umfangs mühsam und erfordert häufiges Blättern im Text41 . Wer sich dennoch anhand des
Standards in DICOM-SR einarbeiten will, sollte zunächst PS 3.3 studieren: Dort sind im Anhang A.35 die grundlegenden Dokumentenklassen definiert. Details zu den DICOM-SR-spezifischen Modulen finden sich ebenfalls in
PS 3.3 in Anhang C.17 und C.18. Essentiell ist weiterhin das Studium von PS 3.16, der zentralen Sammelstelle
für Templates und Kontextgruppen. Möchte man selbst DICOM-SR-Software programmieren, so kommt man
schließlich nicht um ein gelegentliches Nachschlagen in PS 3.5 und PS 3.6 herum.
Einführende Literatur Wesentlich schneller lassen sich die DICOM-SR-Prinzipien durch spezielle Literatur
erlernen. Das einzige dem Autor bekannte Buch speziell zum Thema DICOM-SR ist DICOM Structured Re”
porting“ von David A. Clunie, das gleichzeitig mit der Verabschiedung des DICOM-SR Standards im Jahr
2000 erschien und inzwischen kostenlos heruntergeladen werden kann [Clu00]. Das Buch setzt allgemeine DICOM-Grundkenntnisse voraus, ist ansonsten aber sehr verständlich und praxisnah geschrieben. Das Buch ist
mittlerweile an vielen Stellen veraltet. Eine Neuauflage ist bisher nicht in Sicht.
41 Allein
PS 3.3 umfasst mehr als 1.000 Seiten, siehe Tabelle 1.
Seite 47
382
384
2
386
388
390
The diagnostic process in anatomical pathology (figure 1) differs from that in the clinical
laboratory since it relies on image interpretation. It also differs from that in radiology since it
is specimen-driven and when digital imaging is performed many types of imaging equipments
GRUNDLAGEN
(gross imaging, microscopic still imaging, whole slide imaging, multispectral imaging, etc)
may be involved for a single examination. Moreover, images of the same study may be
related to different specimen (parts and/or slides) from one or even different patients (e.g.
Tissue Micro Array). Finally, slides are always available to acquire more images, if needed.
In radiology, the diagnostic process is patient-driven, an examination (study) usually involves
a single image acquisition modality and all images of the study are related to one and only
one patient.
IHE PAT Technical framework, vol.1 (PAT TF-1): Integration profiles
___________________________________________________________________________
594
3
Pathology Workflow
(PWF) Darstellung (aus [IHE08], Abb. 1)
(a) Schematische
__________________________________________________________________________________________
10/41
Copyright © IHE-International
Publication 25/01/2008
3.1
Actors/Transactions
Rev.1.14 Trial Implementation
596
Evidence
Creator
Order Placer
Storage Commitment
(RAD-10)
Placer Order Mgmt (PAT-1)
Filler Order Mgmt (PAT-2)
Order Filler
Procedure Scheduled
And Updated (PAT-4)
Image
Manager
Storage Commitment
(RAD-10)
Order Results
Mgmt
(PAT-3)
Query Modality
Worklist (PAT-5)
Evidence
Document
Stored (RAD-43)
Image
Archive
Query Images
(RAD-14)
Retrieve Images
(RAD-16)
Image
Display
Modality Image
Stored (RAD-8)
Acquisition
Modality
Order
Result
Tracker
(b) Abstraktes Modell mit Akteuren und Transaktionen (aus [IHE08], Abb. 3.1)
Figure 3.1-Pathology Workflow (PWF)
Abbildung 21: Arbeitsablauf in der Pathologie aus Sicht von IHE
598
Table 3.1 – Pathology Workflow – Actors and Transactions
Actors
Order Placer
Order Filler
Transactions
Optionality
Documentary
reference
Patient Identity Feed (ITI-030)
R
ITI TF-2 : 3.30
Patient Encounter Management (ITI-031)
R
ITI TF-2 : 3.31
Placer Order management (PAT-1)
R
Pathology TF-2
Filler Order Management (PAT-2)
R
Pathology TF-22
Patient Identity Feed (ITI-030)
R
ITI TF-2 : 3.30
Patient Encounter Management (ITI-031)
R
ITI TF-2 : 3.31
Seite 48
2
GRUNDLAGEN
Eine deutschsprachige Einführung in DICOM und DICOM-SR findet sich in Kapitel 3 der Dissertation von
Jörg Riesmeier [Rie06]. Das Kapitel ist sowohl vom Umfang (ca. 65 Seiten) als auch vom Schreibstil her einsteigerfreundlich. Die Dissertation ist jedoch derzeit nicht im herkömmlichen Buchhandel erhältlich, sondern muss
über Bibliotheken besorgt werden.
Eine gelungene Kurzeinführung in DICOM-SR schließlich bietet das englischsprachige Paper DICOM Structu”
red Reporting“ von Mitarbeitern des Deutschen Krebsforschungszentrums (DKFZ) [HES+04a].
Beschreibung der Vorteile von DICOM-SR Schon 1998, also deutlich vor der offiziellen Freigabe von DICOMSR, beschäftigte sich W. Dean Bidgood Jr. mit den Vorteilen des Einsatzes von DICOM-SR für die Befundung
von Bildern und Signalverläufen [Bid98a]. Rita Noumeier führt in einem aktuelleren Paper aus dem Jahr 2006
stichwortartig zahlreiche Vorteile von DICOM-SR auf [Nou06].
Implementierungen Allgemeine Überlegungen zur Implementierung von DICOM-SR-Lösungen wurden schon
2001 von der US-Regierung veröffentlicht [CDK01]. Das Oldenburger OFFIS-Institut wurde im gleichen Jahr
konkreter und publizierte über die eigene, generische DICOM-SR-Implementierung DICOMscope“ [REK+01].
”
Von der University of California stammt eine Arbeit, die im Jahr 2002 erschien und die nachträgliche Erstellung von DICOM-SR-Dokumenten durch Text-Retrieval in Freitextbefunden der Neuroradiologie beschreibt
[MST+02]. Erste industrielle Ansätze veröffentlichte die Forschungsabteilung von Philips ebenfalls im Jahr
2002 in Form von Plänen zum Einsatz von DICOM-SR in Kombination mit XML bei Ultraschalluntersuchungen [SLM02]. Ein Jahr später erschien ein Paper von Agfa-Mitarbeitern, das einen ebenfalls XML-zentrierten
Ansatz für verschiedene Modalitäten beschrieb [JB03]. Einen interessanten Lösungsansatz auf Basis von Templates publizierte im gleichen Jahr das deutsch-brasilianische Forschungsprojekt Cyclops [BWM03]. Das DKFZ
veröffentlichte 2004 einen Ansatz, bei dem DICOM-SR-Dokumente zur Bearbeitung in HTML und schließlich
wieder zurück in DICOM-SR transformiert werden [HES+04b]. Den Einsatz von DICOM-SR für die Teleradiologie in Deutschland untersuchte im Jahr 2006 die Universität Freiburg im Rahmen des Projekts Südbaden“
”
[PPZ06]. Eine aktuelle Publikation von David A. Clunie stellt dar, wie die Ergebnisse klinischer Studien als
DICOM-SR-Dokumente abgelegt werden können, und vergleicht diese Möglichkeiten mit denen anderer Standards wie HL7-CDA und OWL [Clu07].
Internet Als Informationsquellen zu DICOM-SR im Internet sind im Wesentlichen dieselben wie zu DICOM
allgemein zu nennen (vgl. Kap. 2.5.12).
Seite 49
3
ALLGEMEINER LÖSUNGSANSATZ
3 Allgemeiner Lösungsansatz
Ziel dieser Arbeit ist das Bereitstellen von Werkzeugen zum Erzeugen pathologischer Befundberichte nach dem
DICOM-SR-Standard zu deren nachträglicher Bearbeitung (vgl. Kap. 1.3).
Anwendungsfälle Abbildung 22 zeigt einige Anwendungsfälle im Zusammenhang mit diesen Tätigkeiten. Der
Autor konzentriert sich im Folgenden auf die Anwendungsfälle mit menschlichen Benutzern, da für diese nicht
nur der DICOM-SR-Standard beherrscht, sondern auch eine Benutzerschnittstelle entworfen werden muss. Da
die meisten Pathologen keine DICOM-SR-Experten sind, muss diese Benutzerschnittstelle leicht verständlich
sein und vor Eingabefehlern schützen. Sobald die technische Infrastruktur für menschliche Benutzer steht, sollte
die Umsetzung der Anwendungsfälle mit maschinellen Benutzern keine Schwierigkeiten mehr bereiten.
Benutzer
Mensch
Erzeugen
Vorgang
Bearbeiten
Maschine
Anlegen neuer
Befundberichte
Ablage von Messwerten
oder Ergebnissen einer
automatischen Bildanalyse
Erzeugen eines „Gerüsts“
für einen menschlich
generierten Befundbericht
Korrektur menschlich
erzeugter Befundberichte
Erweiterung maschinell
oder menschlich erzeugter
Befundberichte
Suche nach
Befundberichten
Batch-Korrektur (z.B.
Umstellung auf andere
Kodierungsschemata)
Abbildung 22: Anwendungsfälle für das Erzeugen und Bearbeiten von DICOM-SR-Dokumenten
Abstraktionsebenen beim Umgang mit DICOM-SR Das interaktive Erzeugen und Bearbeiten von DICOMSR-Dokumenten kann auf verschiedenen Abstraktionsebenen stattfinden.
3 Fachrichtungsspezifische Eingabemaske mit
abschließender DICOM-SR-Generierung
Nähe zum Standard,
Manipulationsmöglichkeiten,
Breite des Einsatzgebiets
2 Template-geführter DICOM-SR Editor
Abstraktionsgrad,
Bedienbarkeit durch Ärzte,
Spezialisierung auf
Anwendungsgebiete
1 Generischer DICOM-SR Editor
Abbildung 23: Drei Abstraktionsebenen für die interaktive Erzeugung und Bearbeitung von DICOM-SRBefundberichten
Abbildung 23 zeigt drei denkbare Ebenen:
ˆ Auf der untersten Ebene findet sich der Ansatz mit der maximalen Anzahl an Freiheitsgraden. Software auf
dieser Ebene erlaubt den freien Aufbau von DICOM-SR-Dokumenten aus den zulässigen Inhaltselementund Relationstypen der jeweiligen Dokumentenklasse (vgl. Kap. 2.6.2.3). Damit ist solche Software für
jede Anwendungsdomäne von DICOM-SR einsetzbar. Der menschliche Benutzer muss mit dem Aufbau
Seite 50
3
ALLGEMEINER LÖSUNGSANSATZ
von DICOM-SR-Dokumenten gut vertraut sein und die Bedeutung der Typen von Inhaltselementen und
Relationen kennen.
ˆ Die mittlere Ebene erlaubt keinen freien Aufbau von DICOM-SR-Dokumenten, sondern führt den Benutzer
durch ein DICOM-SR-Template (vgl. Kap. 2.6.4). Der Benutzer muss sich daher (je nach Template)
nur noch wenig Gedanken über den sinnvollen strukturierten Aufbau eines Befundberichts machen – die
Interaktion beschränkt sich auf die Auswahl einer geeigneten Option aus einer Liste. Dafür benötigt der
Benutzer immer noch Kenntnis über die Bedeutung der Inhaltselement- und Relationstypen von DICOMSR. Ein templategestützter DICOM-SR-Editor ist nicht mehr universell einsetzbar, sondern erlaubt nur
die Erstellung und Bearbeitung von Dokumenten, für die Templates vorliegen.
ˆ Software der obersten Abstraktionsebene schließlich verbirgt DICOM-SR vollständig vor dem Benutzer.
Die Eingabe erfolgt über ein an das jeweilige Anwendungsszenario genau angepasstes Formular und ist
daher für Ärzte besonders benutzerfreundlich. Bearbeiten lassen sich nur ganz bestimmte Klassen von
DICOM-SR-Dokumenten. Lösungen auf der obersten Ebene lassen sich tendenziell schlechter an andere
Fachgebiete anpassen. Ein direkter Zugriff auf den DICOM-SR-Inhaltsbaum ist nicht möglich.
Ideal wäre Software, die alle drei Ebenen abdeckt. Minimalanforderung ist die oberste Ebene, um Anwender
zufriedenzustellen, und die unterste für tiefgreifende Manipulationen am DICOM-SR-Inhaltsbaum und zum
Debugging.
Darstellung von DICOM-SR-Dokumenten Der DICOM-SR-Standard enthält keine Vorgaben zur Darstellung von DICOM-SR-Dokumenten. Bezüglich der Darstellung eines fertigen Befundberichts auf dem Bildschirm
oder im Ausdruck herrscht also ebenso völlige Implementierungsfreiheit wie bei der Benutzeroberfläche zum
Bearbeiten eines Dokuments. Auf den standardnahen unteren beiden Abstraktionsebenen scheint es einleuchtend, für die Bearbeitung eine Baumdarstellung zu wählen, da DICOM-SR-Dokumente auf einer baumförmigen
Datenstruktur basieren (vgl. Kap. 2.6.2). Für eine bessere Lesbarkeit durch den Menschen scheint für Software
der obersten Ebene oder zur Darstellung der Endergebnisse nach Bearbeitung durch Software für die unteren beiden Ebenen hingegen eine linearisierte Form des Inhaltsbaumes sinnvoll. Außerdem sollten die für den
menschlichen Betrachter weniger relevanten Informationen ausgeblendet werden. Beispielsweise können Kodes
durch ihre Klartextbedeutung ersetzt werden.
Der DICOM-SR-Standard hat zur Zeit eine geringe Verbreitung. Insofern sollte als ein Aspekt der Darstellung
von DICOM-SR-Dokumenten auch deren Export in verbreitetere Formate berücksichtigt werden.
3.1 Implementierungsplan
Zunächst soll unter dem Arbeitsnamen GENRE ( Generic Report E ditor“) ein möglichst generischer Editor
”
für die Bearbeitung von DICOM-SR-Dokumente auf der untersten Abstraktionsebene implementiert werden.
Im Zusammenhang mit Komponenten, die die Funktionalität von GENRE ergänzen oder eine andere Sicht auf
die von GENRE verwalteten Daten bieten, wird im Folgenden auch vom GENRE-System gesprochen.
Abbildung 24 zeigt einige Bausteine des geplanten GENRE-Systems, von denen die meisten im Rahmen dieser
Arbeit realisiert wurden:
1. Im Mittelpunkt des GENRE-Systems steht eine grafische Oberfläche zur Darstellung des DICOM-SRInhaltsbaums mit Funktionen zu dessen Manipulation. Diese Benutzerschnittstelle wird in Kapitel 4.3.2.2
beschrieben.
2. Die Baumansicht soll das Einfügen von Inhaltelementen gemäß der verwendeten Dokumentenklasse erlauben. Später soll auch das templategeführte Einfügen von Inhaltselementen, also die Arbeit auf der
mittleren der oben erwähnten Abstraktionsebenen, ermöglicht werden.
3. Für das Erstellen standardisierter Dokumentation (vgl. Kap. 2.4), soll Zugriff auf das kontrollierte Vokabular des DICOM-Standards, die sogenannten Kontextgruppen (vgl. Kap. 2.6.3) erlaubt werden. Die
Implementierungsarbeit hierzu wird in Kapitel 4.1 beschrieben.
4. Neben dem Inhaltsbaum soll auch der Dokumentenkopf von DICOM-SR-Dokumenten bearbeitet werden
können (siehe Kap. 4.3.2.1).
5. In einem späteren Schritt soll über die oberste der Abstraktionsebenen aus Abbildung 23, nämlich fachrichtungsspezifische, benutzerfreundliche Eingabemasken für die Verwendung durch Ärzte, nachgedacht
werden (vgl. Kap. 4.5).
Seite 51
3
ALLGEMEINER LÖSUNGSANSATZ
Eingabe
Verarbeitung
Ausgabe
6. Editieren der
Konzeptnamen von
Inhaltselementen
2. Standardkonformes,
generisches
Erstellen von
Inhaltselementen
nach IOD /
Template
3. Eingabe über
Kontextgruppen des
DCMR
8. Ausgabe als
DICOM-Dump
1. Intuitive
Baumansicht,
Löschen und
Verschieben
von Knoten
9. Ausgabe als
XML/HTML
4. Eingabe der
Attribute im
Dokumentenkopf
5. Assistenten für
das Neuanlegen
von Befunden für
spezifische med.
Fachrichtungen
10. Ausgabe in
Office-Formate
7. Komfortables
Bearbeiten der Werte
von Inhaltselementen
Abbildung 24: Einige konzeptionelle Bausteine des GENRE-Systems
Seite 52
3
ALLGEMEINER LÖSUNGSANSATZ
6. Konzeptnamen von Inhaltselementen sollen bearbeitet werden können (vgl. Kap. 4.3.2.3).
7. Besonders wichtig ist natürlich das Bearbeiten der Konzeptwerte von Inhaltselementen. Hierzu sollen
komfortable Eingabeelemente gestaltet werden (Kap. 4.3.3).
8.-10. Schließlich soll der Export von DICOM-SR-Dateien in andere Formate ermöglicht werden (vgl. Kap.
4.3.2.4).
3.2 Erwartete Implementierungshindernisse
Betrachtet man das Zusammenspiel von GENRE mit dem in Kapitel 1.2 genannten Forschungsprojekt, sind
einige Hindernisse zu erwarten, die im Rahmen dieser Diplomarbeit nicht gelöst werden können.
Abschnitt 2.2 beschreibt, dass die Digitale Pathologie derzeit noch nicht im Routineeinsatz verwendet wird.
Insbesondere sind
ˆ Slide-Scanner noch zu langsam und
ˆ die entstehenden Datenmengen mit derzeitiger Technik nicht beherrschbar – das betrifft kurzfristige und
langfristige Speicherung ebenso wie die automatische Bildanalyse bei voller Bildauflösung.
In Abschnitt 2.5.11 wurde außerdem dargestellt, dass DICOM viele Voraussetzungen für einen Routineeinsatz
in der Pathologie noch nicht erfüllt. Unter anderem müssen folgende Aspekte DICOM-standardisiert werden:
ˆ Unterstützung von virtuellen Präparaten ( Whole Slide Images“, WSI) und anderen in der Pathologie
”
verwendeten Bildern
ˆ Speicherung von Patientendaten für Tissue-Micro-Arrays (TMAs)
ˆ Effizienter Zugriff auf Bilder mit einem Datenumfang von mehreren Gigabyte
Für diese Diplomarbeit werden daher folgende Annahmen gemacht:
ˆ
ˆ
ˆ
ˆ
Die DICOM-konforme Ablage von virtuellen Präparaten und anderen pathologischen Bildern ist möglich
Die Erstellung von virtuelle Präparaten und der Zugriff darauf sind ausreichend effizient möglich
Es steht genügend Rechenleistung für die automatische Bildanalyse in virtuellen Präparaten zur Verfügung
TMAs werden nicht berücksichtigt
Seite 53
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
4 Konzeption, Implementierung und Anwendung
In diesem Abschnitt wird die Implementierung einzelner Bausteine des GENRE-Systems beschrieben. Die Arbeit
richtet sich nach dem Implementierungsplan aus dem vorhergehenden Kapitel.
Kapitel 4.1 beschreibt Vorarbeiten für die Verwendung der DICOM-Kontextgruppen in GENRE. Kapitel 4.2
beschäftigt sich mit Vorüberlegungen zur Implementierung von GENRE selbst. Das Kernstück des Implementierungsteils ist Kapitel 4.3, das die eigentliche Implementierungsarbeit von GENRE beschreibt.
Der Rest des Implementierungsteils widmet sich dem Einsatz von GENRE in der Pathologie. Dazu werden
in Kapitel 4.4 zunächst beispielhafte Untersuchungsfälle aus der Pathologie vorgestellt und darauf aufbauend
ein Assistent für die strukturierte Eingabe von Befundberichten konzipiert. Die technische Realisierung dieses
Eingabeassistenten beschreibt Kapitel 4.5. Eine erste Bewertung des GENRE-Systems durch Pathologen findet
sich schließlich in Kapitel 4.6.
4.1 Erstellung einer maschinenlesbaren Version der DICOM-Kontextgruppen
Wie in Kapitel 2.4 dargestellt wurde, gibt es zahlreiche Vorteile, wenn medizinische Dokumentation nicht nur
strukturiert, sondern auch kodiert abgelegt wird. Bei kodierter Dokumentation beschränkt man den verwendeten Wortschatz auf ein kontrolliertes Vokabular und verwendet statt der jeweiligen gewünschten Terme deren
eindeutige Schlüssel im Vokabular. Daher spricht man häufig auch von Verschlüsselung“, obwohl dieser Begriff
”
in den meisten Informatikdisziplinen mit dem Fachgebiet der Kryptografie assoziiert wird.
Es ist naheliegend, in DICOM-SR-Dokumenten die Vielzahl standardisierter Begriffe aus den Kontextgruppen
des DCMR zu verwenden (vgl. Kap. 2.6.3). Um Software herzustellen, die einfachen Zugriff auf die DICOMKontextgruppen ermöglicht, müssen diese in maschinenverständlicher, strukturierter Form vorliegen. Erstaunlicherweise sind die DICOM-Kontextgruppen in solcher Form bislang nicht frei erhältlich42 , was vermutlich der
bisher geringen Verbreitung von DICOM-SR geschuldet ist. Diese Lücke soll in der vorliegenden Diplomarbeit
geschlossen werden.
4.1.1 Konzeption
Der DICOM-Standard wird in Form von Microsoft-Word-Dokumenten gepflegt, die auf menschliche Leser zugeschnitten und nicht als Datenbasis für Software geeignet sind. Besserung verspricht die Umstellung des DICOM-Standards auf das DocBook-XML-Format, das die bisherigen Word-Dateien vollständig ablösen soll und
zumindest die Erstellung der gewünschten maschinenlesbaren Attribut-Wert-Listen erleichtern würde. An dieser
Umstellung wird schon seit ca. fünf Jahren gearbeitet [DIC05], ein konkretes Erscheinungsdatum der DICOMDocBook-Version ist jedoch immer noch nicht bekannt43 .
Die Kontextgruppen sind nicht die einzigen Attribut-Wert-Listen im DICOM-Standard, bei denen eine maschinenlesbare Version sinnvoll ist. Das in DICOM-Anwendungen häufig benötigte DICOM Data Dictionary aus PS
3.6, ebenfalls ein umfangreicher tabellarischer Datensatz, liegt praktisch jedem DICOM-Toolkit als inoffizielle,
maschinenlesbare Version bei44 . Diese Lösungen können als Anregung für das Problem der Kontextgruppen
dienen.
Die maschinenlesbare Version aller Kontextgruppen sollte automatisiert erzeugt werden, da das manuelle Erzeugen und Aktualisieren sehr arbeitsaufwändig und fehlerträchtig ist. Eine automatische Generierung kann
42 Ergebnis
einer Internetrecherche des Autors und einer Nachfrage auf comp.protocols.dicom am 16.1.2008,
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/d21374087a70a996/b893c72e73702277.
43 Vgl. Aussage von D. Clunie in der Newsgroup comp.protocols.dicom am 19.1.2008: There is no commitment to a time line.
”
Hopefully sometime during 2008, but then last year I said hopefully sometime during 2007.“
(http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/d21374087a70a996/adb8a20bbd36a86b#
e5e4b60ab3f984ea)
und die Aussage auf einem DICOM WG-6-Treffen Ende Juni 2008:
[P]rogress ha[s] fallen far behind expectations. Only about 100 of 381 figures ha[ve] been completed. Recent discussions with
”
the contractor indicate that the project can be completed in September or October.“ [DIC08f]
44 Das GDCM [61] enthält beispielsweise eine XML-Datei mit den gewünschten Informationen, siehe
http://gdcm.svn.sourceforge.net/viewvc/gdcm/trunk/Source/DataDictionary/Part6.xml?view=markup
Seite 54
Page 284
CID 227
4
Sample Statistical Descriptors
Context ID 227
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Sample Statistical Descriptors
Type: Extensible
Version: 20030327
hingegen, eine entsprechende
Softwarearchitektur
vorausgesetzt,
auch auf zukünftige Versionen des DICOMCoding Scheme
Code Value
Code Meaning
Standards angewandt
werden.
Designator
Als Quasi-Standard
für strukturierte121415
Klartext-Daten hat
sich seitRanking
Ende der
1990er Jahre XML etabliert. Dieses
DCM
Percentile
of measurement
Format soll auch hier
verwendet werden,
da eine solche Lösung
flexibel ist: Für die Transformation von
DCM
121416
Z-Score besonders
of measurement
XML in andere Formate wie CSV oder Tabellen für eine relationale Datenbank existieren Standardwerkzeuge.
Umgekehrt ist die Transformation von den flacheren Datenstrukturen einer CSV-Datei oder Datenbanktabelle
Equation or Table
in XML nicht oderCID
nur228
mit Aufwand möglich.
4.1.2 Implementierung
Context ID 228
Equation or Table
Type: Extensible
Version: 20030327
Zunächst wurde die Word-Version von PS 3.16 in eine DocBook-XML-Fassung überführt. Dazu wurde OpenOfCoding
Scheme Code
Value
Code Meaning importieren und in einem sehr einfachen
fice.org Writer 2.3.1
[87] verwendet,
das Microsoft-Word-Dokumente
Designator
DocBook-XML-Format speichern kann. Da OpenOffice.org in der verwendeten Version kleinere Fehler beim
DocBook-Export hat,
die im GDCM-Wiki
DCMwurden außerdem
121420
Equationbeschriebenen Patches durchgeführt [62].
DCMExtraktion der121421
Citation
Um eine einwandfreie
Kontextgruppen Equation
aus der DocBook-XML-Version
zu gewährleisten, wurde
PS 3.16 händisch auf
Inkonsistenzen121424
untersucht. DabeiTable
entdeckte
der Autor zahlreiche Fehler wie inkonsistente
DCM
of Values
Spaltenüberschriften,
und
Tippfehler.
Eine Reihe dieser Fehler wurden an die
DCMinkonsistente Formatierungen
121422
Table
of Values Citation
Newsgroup comp.protocols.dicom gemeldet45 .
DCM
121423
Method Citation
Eine geeignete XML-Sprache für die Beschreibung von Kontextgruppen drängte sich nahezu auf und wurde vom
Autor in XML-Schema spezifiziert46 . Das mit der Kontextgruppe in Abbildung 25 assoziierte XML-Fragment
CID 230 aus:
Yes-No
etwa sieht folgendermaßen
Context ID 230
Yes-No
Type: Non-extensible
Version: 20060613
Coding Scheme
Designator
Code Value
Code Meaning
SRT
R-0038D
Yes
SRT
R-00339
No
SRT
R-0038A
Undetermined
Abbildung
25: Kontextgruppe
230 Yes-No“ (PS 3.16, Anhang B [DIC08a]
CID 240
Present-Absent
”
Context ID 240
<ContextGroup extensible="false" id="230" name="Yes-No"
version="20060613">
Present-Absent
<Concept meaning="Yes" scheme="SRT"
value="R-0038D"/>
Type: Non-extensible
Version: 20050110
<Concept meaning="No" scheme="SRT" value="R-00339"/>
<Concept meaning="Undetermined"
scheme="SRT"
value="R-0038A"/>
Coding Scheme
Code
Value
Code
Meaning
</ContextGroup>Designator
SRT
G-A203
Present
Möchte man auch SRT
sprachliche Varianten
von Kontextgruppen
R-4089B
Absent realisieren, so könnte man <ContextGroup>- und
<Concept>-Tag zum Beispiel wie folgt erweitern:
- Standard -
<Concept meaning="Yes" scheme="SRT" value="R-0038D">
<Translation lang="de" meaning="Ja"/>
<Translation lang="fr" meaning="Oui"/>
...
</Concept>
45 Vgl.
Posting unter
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/d21374087a70a996#f1d24ae852761469
46 Das XML-Schema kann auf der Begleithomepage zu dieser Arbeit heruntergeladen werden [98]. Jörg Riesmeier verwendet in
seiner Dissertation ein sehr ähnliches Schema (vgl. Anhang C.3.3 und E.2 in [Rie06]), verzichtet jedoch auf die Angabe von
Code Meaning und etwaigen äquivalenten Kodes einer Referenzterminologie.
Seite 55
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Das Programm zur Extraktion der Kontextgruppen aus der oben genannten vorläufigen DocBook-XML-Version
des DCMR sowie zur automatischen Transformation in das oben beschriebene Format, wurde vom Studenten
Marco Wegner im Rahmen einer Praktikumsarbeit geschrieben. Statt der ursprünglich vorgesehenen Verwendung von XSL-T, einer Programmiersprache speziell zur Umwandlung von XML-Dokumenten in andere XMLDokumente, wurde bei der Programmierplattform auf Java zurückgegriffen. Dies hatte im Wesentlichen folgende
Gründe:
ˆ Bei der Extraktion der Daten für die Kontextgruppen ist oftmals die Verwendung regulärer Ausdrücke
sinnvoll, beispielsweise um mehrere nahezu gleiche Fälle, die durch kleine Inkonsistenzen im DICOMStandard entstehen, mit einem einzigen Befehl zu behandeln. Reguläre Ausdrücke sind in XSL-T allerdings
nur in der noch nicht weit verbreiteten Version 2.0 möglich (xsl:analyze-string), für die bisher nur
wenige Prozessoren existieren (z. B. SAXON-B bzw. SAXON-SA [55]).
ˆ Der Praktikant hatte gute Java-Kenntnisse, aber nur geringe Erfahrung mit XSL-T.
Nicht alle Kontextgruppen werden vollständig durch Tabellen im DCMR beschrieben. In einigen Kontextgruppen wird stattdessen auf andere Standards verwiesen. Die folgenden Kapitel 4.1.2.1 bis 4.1.2.5 gehen auf diese
Kontextgruppen näher ein. Anschließend wird ein grafischer Dialog zum einfachen Zugriff auf die Konzepte der
Kontextgruppen beschrieben. Kapitel 4.1.2.7 betrachtet technische Details bei der maschinellen Handhabung
der DCMR-Kontextgruppen.
4.1.2.1 Kontextgruppe 82 Units of Measurement“
”
Für die kodierte Angabe von Maßeinheiten verweist DICOM in Kontextgruppe 82 auf den Standard Unified
”
Code for Units of Measure“ (UCUM [96]). Der ebenso wie LOINC (vgl. Kap. 4.1.2.5) vom Regenstrief-Institut
bereitgestellte UCUM definiert eine Liste von Einheiten und Präfixen sowie Regeln zu deren Kombination und
Operationen wie Multiplikation und Division. Auf diese Weise können unendlich viele gültige Einheiten abgeleitet werden. UCUM erhebt den Anspruch, alle derzeit in Wissenschaft, Technik und Wirtschaft verwendeten
Maßeinheiten zu beinhalten.
Für die interaktive Eingabe von UCUM-Kodes bräuchte man eine elektronische Eingabehilfe, die dem Laien
die Konstruktion gültiger UCUM-Kodes aus Basiseinheiten und abgeleiteten Einheiten erlaubt. Eine solche
Eingabehilfe geht über das Thema dieser Diplomarbeit hinaus und wurde daher nicht realisiert.
Eine möglicherweise hilfreiche Minimallösung bestünde darin, zumindest die gängigsten im Gesundheitswesen
verwendeten Maßeinheiten als statische Tabelle in die XML-Datei aufzunehmen. Eine solche Liste wird von der
deutschen HL7-Benutzergruppe bereitgestellt [45]. Nach Rücksprache mit dem Betreuer dieser Arbeit wurde
aber auch auf die Aufnahme dieser Kodes verzichtet.
Neben dem allgemeinen Verweis auf UCUM in Kontextgruppe 82 tauchen im DCMR an etlichen Stellen fertig
komponierte UCUM-Kodes auf (vgl. Tab. 447 ). Diese wurden selbstverständlich in die XML-Datei integriert.
4.1.2.2 Kontextgruppe 5000 Languages“
”
Kontextgruppe 5000 beinhaltet alle Tags für Sprachen nach IETF RFC 3066 [IET01]. Laut RFC 3066 bestehen
Sprachtags aus einem primären Subtag“ und einer optionalen, beliebig langen Liste darauf folgender Subtags“.
”
”
Als Quelle für das primäre Subtag wird im Wesentlichen ISO 639 genannt (vgl. Tab. 5). Im DCMR ist festgelegt,
dass bevorzugt zweibuchstabige Sprachtags nach ISO 639 Teil 1 verwendet werden sollen. Falls eine genauere Unterscheidung notwendig ist, können die dreibuchstabigen Kürzel aus ISO 639 Teil 2 verwendet werden,
wobei hier laut DCMR die Variante ISO 639-2/T ( terminology“) bevorzugt wird. Neben ISO 639-2/T exis”
tiert noch eine Variante ISO 639-2/B ( bibliographic“), die sich allerdings nur in 22 Kodes von ISO 639-2/T
”
unterscheidet48 .
47 In
diesen Kontextgruppen fand der Autor zahlreiche kleine Inkonsistenzen zum UCUM-Standard. Vgl. Posting auf
comp.protocols.dicom am 13.7.2008:
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/9559c50f211cff0d
48 Vgl. http://www.loc.gov/standards/iso639-2/faq.html#3
Seite 56
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
CID
83
3082
3500
3502
3503
3510
6046
7456
7460
7461
7462
Name
Units for Real World Value Mapping
Cardiology Units of Measurement
Pressure Units
Hemodynamic Resistance Units
Indexed Hemodynamic Resistance Units
Catheter Size Units
Units of Follow-up Interval
Units of Measure for Age
Units of Linear Measurement
Units of Area Measurement
Units of Volume Measurement
Tabelle 4: Kontextgruppen des DCMR, die UCUM-konforme Maßeinheiten enthalten
Das erste optionale Subtag besteht nach RFC 3066 typischerweise aus dem zweibuchstabigen Länderkürzel nach
ISO 3166 (s. u., CID 5001). Es sind aber auch 3- bis 8-buchstabige Kürzel möglich, die bei der Internet Assigned
Numbers Authority (IANA) registriert wurden.
Alle weiteren (optionalen) Subtags unterliegen keinen weiteren Beschränkungen.
Ein Beispiel für ein gültiges Language-Tag nach RFC 3066 wäre de-CH“ für das Schweizer Hochdeutsch (Schwy”
zerdütsch hingegen wird über den 3-buchstabigen ISO 639-2 Kode gsw“ verschlüsselt).
”
Die Entscheidung des DICOM-Komitees, keine Tabelle für Sprachen in das DCMR aufzunehmen, ist nachvollziehbar, da RFC 3066 theoretisch unendlich viele Sprachtags ermöglicht. Andererseits ist die Zahl der tatsächlich
verwendeten, lebenden Einzelsprachen weltweit beschränkt und beläuft sich auf wenige Tausend49 . Insofern
scheint es sinnvoll, in eine maschinenlesbare Version der DCMR-Kontextgruppen zumindest eine Liste der
häufigsten Sprachen zu integrieren. Für diese Diplomarbeit wurden die 185 zweibuchstabigen Kürzel aus ISO
639 Teil 1 und die 485 dreibuchstabigen Kürzel aus ISO 639 Teil 2 terminology“ in ein XML-Format umge”
wandelt und in die XML-Datei integriert. Das dafür verwendete Programm steht auf der Begleitwebseite dieser
Diplomarbeit als Open-Source-Software zur Verfügung [98].
ISO 639-2/B
aar
abk
ace
ach
..
.
ISO 639-2/T
–
–
–
–
..
.
ISO 639-1
aa
ab
–
–
..
.
Sprache
Afar
Abkhazian
Achinese
Acoli
..
.
fre
..
.
fra
..
.
fr
..
.
French
..
.
ger
..
.
deu
..
.
de
..
.
German
..
.
zul
zun
zxx
zza
–
–
–
–
zu
–
–
–
Zulu
Zuni
No linguistic content
Zaza
Tabelle 5: Zweibuchstabige und dreibuchstabige Sprachkodes nach ISO 639 [58]
4.1.2.3 Kontextgruppe 5001: Countries“
”
Für die Länderbezeichnungen verweist das DCMR auf die zweibuchstabigen Kodes aus ISO 3166-1. Die Listen für
49 Vgl.
http://www.wissenschaft-im-dialog.de/de/aus-der-forschung/wieso/detail/browse/2/article/←wie-viele-sprachen-gibt-es-auf-der-welt.html
Seite 57
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
diese Kodes sind als eines der wenigen kostenlosen Angebote der ISO ebenfalls im Internet abrufbar [53]. Tabelle
6 verdeutlicht das Format der Listen. Für diese Diplomarbeit wurden sämtliche 246 ISO 3166-1 Länderkodes
in die XML-Fassung der DCMR-Kontextgruppen übernommen. Das dafür verwendete Programm steht auf der
Begleitwebseite dieser Diplomarbeit als Open-Source-Software zur Verfügung [98].
Land
AFGHANISTAN
ÅLAND ISLANDS
ALBANIA
..
.
WESTERN SAHARA
YEMEN
ZAMBIA
ZIMBABWE
Kode
AF
AX
AL
..
.
EH
YE
ZM
ZW
Tabelle 6: Zweibuchstabige Länderkodes nach ISO 3166-1 [53]
4.1.2.4 Kontextgruppe 7007 Signature Purpose“
”
Um den Zweck einer elektronischen Signatur zu beschreiben, verweist das DCMR auf die signature purposes
”
codes“ des ASTM E 2084-00 Standards. Dieser Standard ist nicht frei im Netz erhältlich, sondern muss für
$42 gekauft werden50 . Daher konnte diese Kontextgruppe im Rahmen dieser Diplomarbeit nicht berücksichtigt
werden.
4.1.2.5 Kontextgruppe 7020 Document Titles“
”
Eine Sonderstellung nimmt die Kontextgruppe 7020 Document Titles“ ein. Das DCMR beinhaltet für diese
”
Kontextgruppe keine Aufschlüsselung der zulässigen Konzepte, sondern erlaubt alle Dokumentennamen aus dem
HIPAA-Anhang der Logical Observation Identifier Names and Codes“ (LOINC). Die LOINC-Datenbank kann
”
als ASCII- (TAB-separiert) oder Microsoft-Access-Datei kostenlos im Internet heruntergeladen werden [95].
Es wurde ein Programm geschrieben, das die relevanten 432 LOINC-Kodes aus der ASCII-Version 2.2 (vom
3.12.2007) der LOINC-Datenbank extrahiert und ebenfalls in ein XML-Format umwandelt, das in die bestehende
Liste integriert werden kann51 . Das Programm wurde so gestaltet, dass es möglichst auch bei zukünftigen
LOINC-Versionen (mit veränderten Indizes der Tabellenspalten) verwendet werden kann52 . Es steht auf der
Begleitwebseite dieser Diplomarbeit als Open-Source-Software zur Verfügung [98].
LOINC NUM
34873-0
33720-4
34851-6
47520-2
47521-0
11524-6
11529-5
11526-1
COMPONENT
Admission evaluation note
Blood bank consult
Consultation note
Cytology report
Cytology report
Study report
Study report
Study report
SYSTEM
{Setting}
ˆPatient
{Setting}
Sputum
Breast.FNA
Heart
ˆPatient
ˆPatient
METHOD TYP
Surgery
Urology
Cyto stain
Cyto stain
EKG
Surgical pathology
Pathology
Tabelle 7: Einige Datensätze mit Scale Doc“ aus der LOINC-Datenbank Version 2.22 (ausgewählte Spalten,
”
für eine Beschreibung der Spalten siehe LOINC Users’ Guide [95])
50 http://www.astm.org/Standards/E2084.htm
51 Die
Anwendung der Algorithmen auf die neue Version LOINC 2.24 , die am 10.7.2008 veröffentlicht wurde, konnte im Rahmen
dieser Diplomarbeit nicht mehr getestet werden.
52 Beispielsweise wurden in der Version 2.22 der LOINC-Datenbank einige Felder entfernt, die sich als unbrauchbar herausgestellt
hatten, vgl. LOINC Users’ Guide [95].
Seite 58
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Generierung eines sinnvollen Werts für das Feld Code Meaning“ Ein Konzept im DCMR besteht im
”
Wesentlichen aus dem Kodewert, einem Bezeichner für das Kodierungsschema und einer menschlich lesbaren
Beschreibung der Bedeutung des Konzepts. Diese Beschreibung wird integriert, damit Menschen oder Softwaresysteme, die das DCMR nutzen, nicht darauf angewiesen sind, alle im DCMR verwendeten kontrollierten
Vokabularien und Terminologien zusätzlich zum DCMR vorliegen zu haben. Wie Tabelle 7 andeutet, lässt sich
eine sinnvolle Konzeptbeschreibung nicht ohne weiteres aus der LOINC Datenbank ablesen53 . Dies wird im
DCMR auch festgestellt:
Some coding schemes such as LOINC do not specify the equivalent of a Code Meaning.“
”
PS 3.16, Kap. 7.1 [DIC08a].
Trotzdem wurde allen bereits direkt in das DCMR aufgenommenen LOINC-Kodes vom DICOM-Komitee ein
Wert für das Feld Code Meaning“ zugewiesen. Es erschien daher angebracht, dies auch für die automatisch
”
importierten Dokumenttitel zu tun. Einen brauchbaren Ausgangspunkt bildet das Feld COMPONENT“ der
”
LOINC-Datenbank. 32 Einträge im Feld COMPONENT werden jedoch mehrfach verwendet: COMPONENT
enthält nur 135 verschiedene Einträge54 für die insgesamt 432 Konzepte, so dass allein aus diesem Feld keine
eindeutige Konzeptbeschreibung ableitbar ist.
Die Spalte METHOD TYP“ enthält bei Dokumententiteln die für die Erzeugung verantwortliche Fachdiszi”
plin. Gemeinsam mit dem Feld COMPONENT können so häufig sinnvoll lesbare, unterscheidbare Konzeptbeschreibungen erzeugt werden (z. B. EKG study report“, Pathology study report“). Allerdings sind auch
”
”
COMPONENT und METHOD TYP gemeinsam in 23 Fällen noch kein eindeutiger Bezeichner (vgl. Tabelle 7,
Cytology report“ und Cyto stain“).
”
”
Das Programm geht nun bei der Generierung eines Wertes für das DCMR-Feld Code Meaning“ wie folgt vor:
”
ˆ Ist die Beschreibung im Feld COMPONENT eindeutig, wird diese verwendet.
ˆ Ist die Kombination aus COMPONENT und METHOD TYP eindeutig, so wird METHOD TYP und
COMPONENT getrennt durch ein Leerzeichen verwendet.
ˆ Ist auch die Kombination aus COMPONENT und METHOD TYP nicht eindeutig, so wird zusätzlich in
Klammern der Wert des Feldes SYSTEM ergänzt.
Die Konzepte werden schließlich alphabetisch nach Code Meaning“ sortiert in eine XML-Datei geschrieben.
”
4.1.2.6 Grafische Oberfläche zur Auswahl kodierter Konzepte
Im Rahmen dieser Arbeit wurde eine benutzerfreundlicher Dialog entwickelt, mit dem man die Kontextgruppen
des DCMR durchsuchen kann (Abb. 26).
In der Tabelle auf der linken Seite werden die Kontextgruppen aufgelistet. Ist im Textfeld über der Tabelle
etwas eingetragen, so werden nur solche Kontextgruppen angezeigt, die in ihrer ID oder ihrem Namen die
entsprechende Zeichenkette enthalten. Wählt der Benutzer eine Kontextgruppe aus, so werden in der Tabelle
auf der rechten Seite alle Konzepte der ausgewählten Kontextgruppe angezeigt. Dabei werden alle direkt oder
indirekt per Include“ referenzierten Kontextgruppen mit berücksichtigt. Auch auf der rechten Seite können über
”
das Textfeld die Einträge der Tabelle gefiltert werden. Ist auf der linken Seite keine Kontextgruppe markiert, so
bewirken Einträge in das Filter-Feld eine Suche über alle Konzepte im DCMR. Ein Rechtsklick auf ein Konzept
in der rechten Tabelle öffnet dessen zugehörige Kontextgruppe. Beide Tabellen lassen sich nach beliebigen
Spalten auf- oder absteigend sortieren.
4.1.2.7 Technische Betrachtungen
Zwei technische Probleme beim Umgang mit Kontextgruppen sollen hier etwas detaillierter erläutert werden.
53 Das
LOINC committee arbeitet gemeinsam mit der HL7 document ontology taskforce an einem sinnvollen Bezeichnungsschema
für Dokumententypen. Ein Bezeichner für den Dokumententyp wird dabei aus Begriffen aus bis zu vier Achsen zusammengesetzt. Kapitel 7 im LOINC-Handbuch [95] erklärt die geplante Vorgehensweise und liefert eine erste Tabelle mit einem Mapping
auf LOINC-Kodes. Sowohl die Erklärung als auch die Tabelle befinden sich allem Anschein nach noch in einem frühen Entwicklungsstadium, weshalb für diese Arbeit noch nicht auf derartige Bezeichner zurückgegriffen werden konnte.
54 SQL-Abfrage im Access-Dialekt: SELECT COUNT(*) FROM (SELECT DISTINCT COMPONENT FROM LOINC WHERE SCALE TYP=’Doc’)
Seite 59
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 26: Grafische Oberfläche zur Auswahl kodierter Konzepte
Arbeitsspeicherverbrauch und Zugriffszeiten Zunächst wurde die Datenbasis für Kontextgruppen mittels
DOM-Parser eingelesen und als DOM-Baum im Speicher gehalten. Zugriffe auf den DOM-Baum wurden über
XPATH realisiert. Beim derzeitigen Umfang der DCMR-Kontextgruppen benötigte diese Variante jedoch ca.
8MB Arbeitsspeicher, außerdem ist der Zugriff auf einzelne Datenelemente per XPath verhältnismäßig langsam.
Ein Einlesen der XML-Datei in Java-Datenstrukturen verringert den Speicherbedarf für die Daten und erhöht
die Geschwindigkeit bei Datenzugriffen, weil so effiziente Datenstrukturen wie Hashmaps verwendet werden
können. Daher wurde ein SAX-Parser geschrieben, der die XML-Datei in von Hand geschriebene Klassen Con”
textGroup“, DCMRConcept“ und DCMRInclude“ einliest. Der Speicherbedarf konnte durch diese Maßnahme
”
”
um ca. 2/3 reduziert werden. Sollte die Datenbasis des DCMR künftig massiv anwachsen, so muss dieses Konzept sicherlich überdacht werden, da dann das vollständige Vorhalten der Kontextgruppen im Speicher nicht
mehr sinnvoll wäre.
Mehrfachinklusion und zirkuläre Referenzen Bei der Zusammenstellung aller Konzepte einer Kontextgruppe müssen die über INCLUDE“-Zeilen eingebundenen Kontextgruppen ebenfalls berücksichtigt werden. Aus
”
Maschinensicht ist hierbei insbesondere auf zirkuläre Referenzen zu achten, die zu einer unendlich langen Konzeptliste führen würden. Auch wenn keine zirkulären Referenzen vorliegen, sollten andere Kontextgruppen nur
einmal eingebunden werden. Im DCMR der DICOM-Version 2008 gibt es genau ein Beispiel für eine Kontextgruppe, die eine andere Kontextgruppe mehrfach einbindet, und zwar Kontextgruppe 4 Anatomic Region“:
”
Sie verweist sowohl auf Kontextgruppe 4030 CT and MR Anatomy Imaged“ als auch auf Kontextgruppe 4042
”
XA/XRF Anatomy Imaged“, die beide jeweils die Kontextgruppe 4031 Common Anatomic Regions“ einbin”
”
den. Eine Nachfrage in der Newsgroup comp.protocols.dicom ergab, dass David Clunie, der Chef-Editor des
DICOM Standards, dieses Problem bereits kennt und einen entsprechenden Hinweis in die nächste DICOMVersion integrieren will55 . Dieser Hinweis wurde mittlerweile als CP 897 von der DICOM-WG-6 angenommen
[DIC08d].
55 Siehe
Mail von D. Clunie auf comp.protocols.dicom vom 22.5.2008: [In case of] circular inclusion and multiple inclusion, [...]
”
the Context Group shall consist of the transitive closure of the set of all coded concepts within the included Context Groups.“
(http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/b531ca23651c36f3)
Seite 60
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
4.2 Konzeption von GENRE
Für die Konzeption von GENRE wurden zunächst die Konzepte anderer DICOM-SR-Software untersucht (Kap.
4.2.1). Dabei ging es insbesondere um die Frage, ob GENRE von Grund auf neu geschrieben werden muss,
oder auf Open-Source-Software aufsetzen kann. Leider musste festgestellt werden, dass keine geeignete Basis
für GENRE frei verfügbar ist. Daher wird in Kapitel 4.2.2 abgewogen, welche Programmiersprache sich am
besten für GENRE eignet. In Kapitel 4.2.3 wird schließlich ein zur Programmiersprache passendes, kostenloses
DICOM-Toolkit ausgesucht.
4.2.1 Related Work
In diesem Unterkapitel wird untersucht, ob bereits bestehende Software für das Erreichen der Ziele dieser
Diplomarbeit verwendet werden kann.
4.2.1.1 Cyclops Dicom Structured Report Editor
Der von Bortoluzzi, von Wangenheim und Maximini in [BWM03] beschriebene Ansatz scheint den ersten beiden Abstraktionsebenen aus Abbildung 23 sehr gut zu entsprechen. Im Rahmen des deutsch-brasilianischen
Gemeinschaftsprojektes Cyclops“ wurde ein generischer DICOM-SR-Editor entwickelt, mit dem DICOM-SR”
Dokumente erstellt und nachträglich bearbeitet werden können. Bei Bedarf erlaubt das Programm eine geführte
Befunderstellung anhand von DICOM-SR-Templates. Außerdem wurde ein Template-Editor entwickelt, der die
Erstellung der benötigten Templates erleichtern soll.
Abbildung 27: Cyclops Dicom Structured Report Editor [BWM03]
Der Cyclops Dicom Structured Report Editor“ berücksichtigt die durch die gewählte Dokumentenklasse vorge”
gebenen Beschränkungen hinsichtlich Konzeptwert- und Relationstypen. Er unterstützt By-reference-Relationen
und kann fertige Dokumente als DICOM-SR- oder XML-Datei ausgeben. Für die Visualisierung von XMLBefundberichten in Webbrowsern wurde ein entsprechendes XSL Stylesheet entwickelt. Auf die in Abbildung
23 erwähnte Abstraktionsebene 3 wurde bewusst verzichtet, da die Autoren der Ansicht sind, dass dadurch die
Stärke des DICOM-SR-Standards, nämlich dessen Flexibilität, verloren ginge.
Die Nutzung der Cyclops-Software hätte diese Diplomarbeit stark vorangebracht und es erlaubt, die gewonnene
Zeit für die Anpassung an den Routinebetrieb der Pathologie zu nutzen. Eine Kontaktaufnahme mit dem
Cyclops-Projekt scheiterte aber. Eine in englischer Sprache am 11.12.2007 verfasste Mail an die drei Autoren
Seite 61
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
von [BWM03] blieb unbeantwortet56 . Auch eine Kontaktaufnahme über eine E-Mail-Adresse auf der Seite des
Cyclops-Projekts [20] scheiterte. Ein auf eben dieser Webseite angebotener Download konnte nicht ausprobiert
werden, weil die Registrierung mit einer Fehlermeldung abbrach ( Não foi possı́vel estabelecer conexão.“).
”
Für diese Arbeit musste daher vollständig auf Software des Cyclops-Projektes verzichtet werden.
4.2.1.2 DICOMscope
DICOMscope [83] ist ein in Java und C++ implementiertes Werkzeug, das aus einer Zusammenarbeit von
OTech [88], dem Instituts für Mikrotherapie an der Universität Witten/Herdecke [36] und dem OFFIS-Institut
Oldenburg hervorgegangen ist. DICOMscope versteht sich primär als Machbarkeitsstudie für DICOM Presen”
tation States und kalibrierte Druckausgabe“. Die Unterstützung für DICOM-SR ist eher als Nebenprodukt zu
verstehen, mit dessn Hilfe digitale Signaturen mit DICOM demonstriert werden können.
DICOMscope wird als Open-Source-Software zur Verfügung gestellt und kann daher einfach erweitert werden.
Die neueste Open-Source-Version von DICOMscope, Version 3.5.1, datiert auf das Jahr 2001. Im Jahr 2003
wurde die aktuelle Version 3.6.0 veröffentlicht, zu der jedoch kein Quelltext erhältlich ist. Eine Nachfrage bei
Jörg Riesmeier, einem ehemaligen Mitarbeiter des OFFIS-Instituts, ergab, dass die Veröffentlichung einer neuen
Version zwar geplant, aber nicht absehbar sei.
DICOMscope [83] basiert auf dem DCMTK und spricht dieses über das Java Native Interface (JNI) an. Das
Programm kann DICOM-SR-Dokumente in HTML konvertieren und in einem integrierten Browser darstellen.
Außerdem bietet DICOMscope einen Editor für DICOM-SR, der ziemlich genau die Ebene 1 aus Abbildung
23 abdeckt. DICOM-SR-Dokumente werden vom Editor in einer Baumansicht dargestellt (vgl. Abb. 28). Der
Typ eines Inhaltselement ist dabei durch verschiedene Icons leicht zu erkennen, außerdem wird jeweils der Typ
der Relation zum Vaterknoten angegeben, solange es sich nicht um den trivialen CONTAINS-Typ handelt.
Es können gemäß den Beschränkungen der jeweiligen Dokumentenklasse neue Inhaltselemente in den Baum
hinzugefügt und bestehende verändert werden. Für die Konzeptnamen von Inhaltselementen sowie die Werte von CODE- und NUM-Elementen kann auf selbstdefinierte Kontextgruppen zurückgegriffen werden (vgl.
Auswahlliste in Abb. 28(b)). Einige Felder des DICOM-Dokumentenkopfes können bearbeitet werden.
DICOMscope bietet viele interessante Ansätze, es lassen sich aber auch schnell Schwächen des Programms
identifizieren57 :
ˆ Die Verknüpfung des C++-Toolkits DCMTK mit der Java-Oberfläche von DICOMscope ist nach Meinung
des Autors nicht ideal. Für jede Klasse des DCMTK und jede der Methoden dieser Klassen, die von Java
aus verwendet werden sollen, muss ein JNI-Wrapper existieren. Dieser kann zwar automatisch generiert
werden, was aber nach jeder Änderung an den Signaturen von Methoden im DCMTK erneut erfolgen
muss. Auf dem Entwicklerrechner des Autors kam es zudem nach einem Update der JVM zu Problemen
mit dem JNI-Interface, die den Programmstart verhinderten und bis zur Abgabe der Diplomarbeit nicht
gelöst werden konnten58 .
ˆ Templates werden von DICOMscope nicht unterstützt.
ˆ Kapitel 8 des Conformance Statements [OMO01] stellt klar, dass der Einsatz von kontrollierte Vokabularen zur Eingabe kodierter Information in DICOMscope zwar prinzipiell über eine einfach aufgebaute
Konfigurationsdatei möglich ist, das mitgelieferte Vokabular enthält jedoch nur eine Handvoll Kodes zu
Demonstrationszwecken. Die im DICOM-Standard definierten Kontextgruppen werden nicht mitgeliefert.
ˆ DICOMscope ist als Paket für Windows erhältlich. Andere Plattformen werden zwar prinzipiell unterstützt, DICOMscope muss dann allerdings selbst kompiliert werden. Der Kompilationsvorgang von
DICOMscope ist durch die Aufteilung in einen C++-Teil (DCMTK) und einen Java-Teil (grafische Benutzeroberfläche) sowie durch zahlreiche Abhängigkeiten von externen Programmbibliotheken sehr aufwändig.
ˆ Die Bearbeitungsansicht ist recht unübersichtlich, da weder Konzeptname noch Konzeptwert der Inhaltselemente unmittelbar angezeigt werden.
56 Zwei
der Autoren haben mittlerweile andere E-Mail-Adressen als die in [BWM03] genannten. Die neuen E-Mail-Adressen konnten
jedoch über Suchmaschinen im WWW gefunden werden.
57 Mitarbeiter des OFFIS-Instituts bezeichnen DICOMscope selbst als Machbarkeitsstudie, technischer Ansatz, nicht ‘alltagstaug”
lich’“ [REJ+01]
58 Vgl. Diskussion im DICOMscope-Forum unter
http://forum.dcmtk.org/viewtopic.php?t=1520
Seite 62
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
(a) Bearbeiten des Dokumentenkopfs
(b) Zugriff auf Kontextgruppen, Anzeige des Konzeptnamens
Abbildung 28: Benutzeroberfläche von DICOMscope
ˆ Zum Bearbeiten selektiert man ein Inhaltselement und muss für die eigentliche Dateneingabe in einen
anderen Bereich der Benutzeroberfläche wechseln.
ˆ Bei der Eingabe von Konzeptwerten, zum Beispiel für die Typen PNAME und DATE, ist man darauf
angewiesen, das Format des jeweils verwendeten Datentyps (VR) zu kennen, Eingabehilfen gibt es nicht.
ˆ Für die Anzeige von Kodewert und Kodierungsschema-Bezeichner des Konzeptnamens, muss eine gesonderte Schaltfläche angeklickt werden (vgl. Abb. 28(b)). Möchte man diese Information editieren, muss
die rechts daneben befindliche Schaltfläche verwendet werden. Der Dialog, der sich daraufhin öffnet, hat
grundsätzlich leere Textfelder. Die erweiterten Attribute für Angaben einer Kontextgruppe etc. werden
überhaupt nicht unterstützt.
ˆ DICOMscope bzw. das zugrundeliegende DCMTK ermöglicht den Export von DICOM-SR-Dokumenten
in das HTML-Format. Allerdings gehen beim Export nahezu alle Kodeinformationen der Konzeptnamen verloren. Außerdem lässt die HTML-Ausgabe zwar mittels CSS-Stylesheets optisch modifzieren, die
eigentliche Struktur der HTML-Tags ist jedoch im Quellkode von DCMTK fest vorgegeben.
4.2.1.3 Weitere Ansätze
In Kapitel 2.6.7 wurden einige weitere Implementierungen für DICOM-SR-Werkzeuge genannt. Der Autor ging
davon aus, dass die Lösungen aus der freien Wirtschaft (z. B. [JB03, SLM02]) für die Weiterentwicklung als
Open-Source-Software nicht zur Verfügung stehen. Sie werden daher in dieser Arbeit nicht weiter berücksichtigt.
4.2.1.4 Fazit
GENRE lehnt sich konzeptionell an DICOMscope an. Auf die oben genannten Defizite von DICOMscope soll
Seite 63
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
besonderes Augemerk gelegt werden. Ziele von GENRE sind folglich:
ˆ Standardkonformität. GENRE soll DICOM-SR möglichst vollständig unterstützen, also insbesondere
Manipulationsmöglichkeiten für nahezu alle Datenfelder von Inhaltselementen anbieten. Die von GENRE
erzeugten DICOM-SR-Dateien sollen DICOM-konform sein, um auch in anderen DICOM-SR-Tools verarbeitbar zu sein, mittels DICOM-Diensten übers Netz verschickt und in DICOM-Archiven gespeichert werden zu können. Gleichzeitig soll GENRE das Öffnen möglichst vieler DICOM-SR-Dokumente ermöglichen,
also eine gewisse Fehlertoleranz bieten und z. B. mit privaten Attribute und neu eingeführten Attributen
zukünftiger DICOM-Versionen umgehen können.
ˆ Benutzungsfreundlichkeit. Ein DICOM-SR-Dokument soll auch während des Bearbeitens im Ganzen
lesbar bleiben. Die Eingabe von Daten soll auch ohne Kenntnis der DICOM-Datentypen möglich sein.
Für die Akzeptanz des Programms kann es sinnvoll sein, die Benutzeroberfläche an die Gegebenheiten des
jeweiligen Einsatzlandes anzupassen ( Lokalisierung“). Um den Benutzer nicht mit den unüberschaubaren
”
Möglichkeiten des DICOM-SR-Standards zu überfordern, sollen weniger häufig verwendete Datenfelder
automatisch oder auf Wunsch des Benutzers verborgen werden.
ˆ Integration der DICOM-Kontextgruppen. Die in Kapitel 4.1 beschriebene Datenbasis aller in PS
3.16 (DCMR) definierten Kontextgruppen soll in GENRE zur Verfügung stehen, die Suche nach passenden
Konzepten möglichst einfach gestaltet sein.
ˆ Plattformunabhängigkeit. GENRE soll mit seinem generischen Ansatz möglichst vielfältige Benutzergruppen ansprechen. Die Zielgruppe soll nicht unnötig durch Abhängigkeiten GENREs von einer bestimmten Hardwareplattform oder einem bestimmten Betriebssystem verkleinert werden.
ˆ Verweise auf Bilder. Bei allem generischen Anspruch von GENRE, soll die umrahmende Aufgabenstellung, nämlich das in der Einleitung erwähnte Forschungsprojekt mit dem Ziel der Speicherung von
Ergebnissen einer automatischen Bildanalyse, nicht völlig außer Acht gelassen werden. Ergebnisse einer
automatischen Bildanalyse machen nur dann Sinn, wenn im Befundbericht komfortabel das analysierte
Bild referenziert werden kann.
ˆ Export in andere Datenformate. Es muss davon ausgegangen werden, dass DICOM-SR-Dateien an
den meisten Stellen im Krankenhaus und im niedergelassenen Bereich derzeit (noch) nicht verarbeitet
werden können. Dies steht einer Integration von DICOM-SR in bestehende Workflows prinzipiell entgegen. GENRE sollte daher den Export in gängigere Datenformate, wie beispielsweise Office-Formate,
ermöglichen.
4.2.2 Auswahl der Programmierplattform
Die Auswahl einer geeigneten Programmierplattform ist wesentlicher Eckpfeiler für das Erreichen der genannten
Ziele. Für diese Arbeit wurde die Programmierung in C/C++, in C# für die .NET-Plattform von Microsoft und
in Java erwogen. Außerdem bestand die Überlegung, GENRE als Browseranwendung nach dem derzeit stark
im Kommen begriffenen AJAX-Konzept zu entwickeln.
Weitere Informationen und Links zu den genannten DICOM-Toolkits finden sich auf der Begleithomepage zu
dieser Diplomarbeit [99].
4.2.2.1 C/C++
Für die Programmiersprache C++ spricht vor allem das in C++ geschriebene DICOM-Toolkit DCMTK [82],
das von allen untersuchten, frei erhältlichen Toolkits die umfangreichsten DICOM-SR-Unterstützung anbietet.
DCMTK wird trotz lange zurückliegendem letzten offiziellen Release hervorragend gepflegt, allein zwischen
März und Mai 2008 gab es ein halbes Dutzend neue Versionen (sog. snapshots“). Der Support für DCMTK”
Anwender über das öffentliche Anwenderforum ist hervorragend, Fragen werden zügig und kompetent beantwortet. Zwei wesentliche Entwickler des DCMTK, Marco Eichelberg und Jörg Riesmeier, waren im Wintersemester
2007/2008 im Rahmen des Institutskolloquiums am IMI zu Gast und insofern persönlich bekannt. Persönlich
an sie gerichtete Anfragen wurden ebenfalls schnell und fundiert beantwortet.
Ein weiteres Argument für C++ mag die Tatsache sein, dass ein Großteil der kommerziellen, medizinischen
Informationssysteme in dieser Programmiersprache implementiert ist. Sollte GENRE einmal kommerziell verwertbaren Status erreichen, könnte es als C++-Programm relativ leicht in bestehende große Systeme integriert
Seite 64
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
werden.
Als wesentlichen Nachteil von C++ sieht der Autor die verhältnismäßig langen Entwicklungszyklen bei Verwendung dieser Programmiersprache. Eine Programmiersprache mit managed code“ führt schneller zu brauchbaren
”
Ergebnissen und ist sicherlich akzeptabel, da ein Softwareprojekt im Rahmen einer Diplomarbeit eher prototypischen als kommerziellen Charakter hat. Weiterhin benötigt man für Plattformunabhängigkeit von C++Programmen vor allem auch eine plattformunabhängige Klassenbibliothek für grafische Benutzeroberflächen.
Solche Bibliotheken sind zwar auch frei erhältlich (z. B. Qt [115], GTK+ [37] und wxWidgets [103], erfordern
jedoch einiges an Einarbeitung. Um das Neukompilieren von C++-Programmen für andere Betriebssysteme
und Hardware-Plattformen kommt man so und so nicht herum.
4.2.2.2 .NET/C#
Auch die .NET-Plattform kann als Vorteil verbuchen, dass sie von wichtigen kommerziellen MedizininformatikProdukten genutzt wird. Insbesondere sei hier das Produkt NEXUS / PATHOLOGIE [74] (vormals Paschmann
”
PAS.NET“) genannnt, die aktuelle Version des in Deutschland marktführenden Pathologie-Informationssystems,
dessen Vorgängerversion auch am UK-SH zum Einsatz kommt.
Des Weitern sprechen die umfangreiche Klassenbibliothek (z. B. XML- und Internationalisierungsfunktionen)
und der relativ schnelle Entwicklungszyklus (Garbage-Collector, starke Typsicherheit etc.) für C#.
Keines der freien DICOM-Toolkits für die .NET-Plattform erwähnt explizit die Unterstützung für DICOMSR59 . Überhaupt wirkt keines der bisher erhältlichen freien Toolkits wirklich ausgereift. Daher schied die .NETPlattform für diese Diplomarbeit aus.
Bei guter Entwicklung der C#-DICOM-Toolkits könnte .NET jedoch zukünftig eine sehr interessante Basis
für DICOM-Anwendungen sein. Bisher bestehende Probleme bei der Plattformunabhängigkeit im GUI-Bereich
sind voraussichtlich Ende des Jahres 2008 zumindest teilweise gelöst: Bisher existiert mit Mono eine plattformübergreifende Laufzeitumgebung für .NET-Anwendungen. Die von Microsoft favorisierte Windows Forms
API für grafische Benutzeroberflächen wurde bisher jedoch nicht vollständig von Mono unterstützt. Seit Mai
2008 ist Windows Forms für Mono nun komplett [91] und wird mit der kommenden Version Mono 2.0 voraussichtlich im September 2008 veröffentlicht [78]. Alternative GUI-Bibliotheken für Mono [77] wären auch eine
Alternative, haben aber unter Windows eine geringe Verbreitung.
4.2.2.3 Java
Java ist im Bereich der Geschäftssoftware sehr verbreitet, im Bereich der Medizinischen Informatik wird es
zumindest bei Server-Software inzwischen ebenfalls häufig eingesetzt. Medizinische Client-Software in Java ist
hingegen eher ungebräuchlich, hier ist ein Nachteil gegenüber C++ und .NET festzuhalten.
Vorteile von Java sieht der Autor vor allem in der wie auch bei .NET mächtigen Klassenbibliothek mit XMLund Internationalisierungsfunktionen sowie dem relativ schnellen Entwicklungszyklus von Anwendungen. Mit
dem PixelMed-Toolkit [18] existiert eine gut gepflegte Klassenbibliothek für den Umgang mit DICOM, die
DICOM-SR zumindest in Ansätzen unterstützt.
4.2.2.4 Browseranwendungen und AJAX
Zahlreiche Gründe sprechen zunächst für browsergesteuerte Client-Server-Lösungen im Vergleich zu eigenständigen Programmen. Zusätzliche Clients können bei diesen Systemen leicht hinzugefügt werden, da ein Webbrowser üblicherweise bereits vorhanden ist und somit keine Software installiert werden muss. Webbrowser existieren
für alle gängigen Betriebssysteme, was eine maximale Plattformunabhängigkeit bei den Clients gewährt. Der
Rollout von Software-Updates ist einfach, da nur der Server aktualisiert werden muss. Diese technischen Vorteile
59 Auch
bei den kommerziellen Toolkits unterstützt offenbar nur DICOM.net von Reliable Medical Imaging [99] DICOM-SR und
diese Unterstützung ist nach der öffentlich zugänglichen Dokumentation zu urteilen mehr als lückenhaft.
Seite 65
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
haben dazu geführt, dass Browseranwendungen in der medizinischen Informatik bereits auf breiter Front eingesetzt werden, beispielsweise für Arzneimittelinformationssysteme, für die computergestützte Auftragssteuerung
oder für komplette Stationsarbeitsplätze.
Als größte Probleme von Browseranwendungen sieht der Autor die tendenziell schlechtere Bedienbarkeit durch
die bisher relativ eingeschränkte Auswahl an Bedienelementen in HTML (z. B. keine standardisierte Baumansicht, keine Schieberegler etc.) und die erheblich langsameren Reaktionszeiten der grafischen Benutzeroberfläche
im Vergleich zu echten“, lokalen Programmen.
”
AJAX Als Lösung für das letztgenannte Problem wird derzeit die AJAX-Technik (Asynchronous J avaScript
and X ML) stark diskutiert. Bei dieser Technik muss für die Präsentation der Ergebnisse von Benutzereingaben
keine vollständig neue Webseite geladen und gerendert werden. Stattdessen kann eine bestehende Webseite durch
clientseitig ausgeführte Skriptsprachen manipuliert werden. Unter den im Browser ablaufenden Skriptsprachen
hat sich JavaScript als Quasi-Standard etabliert60 . HTML- oder XML-Dateien können von Skriptsprachen über
das Document Object Model (DOM [120]) ausgelesen und manipuliert werden. Werden für die Änderung der
Webseite Informationen vom Server benötigt, so werden diese über ein XMLHttpRequest-Objekt [119] angefordert61 . Die Kommunikation zwischen Server und Client läuft dabei fast immer asynchron ab, der Client-Prozess
läuft also nach Absenden der Anfrage weiter, ohne auf das Ergebnis zu warten62 . Eine über diese Eckpfeiler
hinausgehende Beschreibung von AJAX würde den Rahmen dieser Diplomarbeit sprengen; der interessierte
Leser sei auf weiterführende Literatur wie zum Beispiel das kostenlos einzusehende [Wen07] verwiesen.
Da nur die wirklich benötigten Daten übertragen werden und der Browser typischerweise nur sehr kleine Teile
der Webseite neu rendern muss, lassen sich AJAX-Anwendungen tatsächlich flüssiger bedienen als klassische
Webanwendungen. AJAX-Anwendungen sind tendenziell komplex zu programmieren. Auf Client-Seite müssen
verschiedene Programmier- und Auszeichnungssprachen wie Javascript, HTML und CSS kombiniert werden,
auf Server-Seite kommen weitere Technologien wie PHP, Java Servlets o.Ä. hinzu. Da JavaScript in Browsern
sehr unterschiedlich implementiert ist, ist die Plattformunabhängigkeit von AJAX zwar theoretisch aber nicht
unbedingt in der Praxis gegeben. Beispielsweise ist es mit handgeschriebenem JavaScript-Kode sehr schwierig,
ein korrektes Verhalten der Vor“- und Zurück“-Schaltflächen in AJAX-Anwendungen zu implementieren.
”
”
Für die Programmierung von AJAX existieren zahlreiche freie Programmierbibliotheken63 , die unter anderem
die Unabhängigkeit vom Browsertyp verbessern sollen. Gängig ist beispielsweise die Kombination von Prototype [93], einer Bibliothek, die den Zugriff von JavaScript auf DOM vereinfacht, mit script.aculo.us [32], einer
Bibliothek für grafische Effekte. Großen Einfluss bei der Entwicklung von AJAX-Anwendungen haben auch
die Branchenriesen Yahoo! und Google. Yahoo! bietet mit YUI [123] eine eigene freie AJAX-Bibliothek mit
Netzwerkfunktionen und fertigen Bausteinen für grafische Bedienelemente an. Außerdem bemüht sich Yahoo!
in einem anderen Projekt, Entwurfsmuster für Webanwendungen zu etablieren [122].
Das Google Web Toolkit (GWT) Google hat sich mit dem Google Web Toolkit (GWT) [35] einen Ansatz zur AJAX-Programmierung ausgedacht, der eine gesonderte Betrachtung verdient. Das GWT wurde der
Öffentlichkeit erstmals im Frühjahr 2006 vorgestellt. Der Quellkode steht unter der liberalen Apache-2.0-Lizenz.
Mittlerweile hat sich eine beachtliche Nutzergemeinde um das GWT herum entwickelt, es gibt beispielsweise
zahlreiche, auch deutschsprachige Bücher speziell zu diesem Produkt.
GWT setzt auf der Programmiersprache Java auf. Die Serverseite einer Browseranwendung wird als Java-Servlet
implementiert, mit Tomcat liefert das GWT einen vorkonfigurierten Servlet-Container zum Testen gleich mit.
Kernstück des GWT ist ein Compiler, der Java-Programme für die Clientseite einer Browseranwendung in Javascript übersetzt64 . Mit Hilfe des GWT können Client und Server also in der gleichen Programmiersprache,
60 Als
herstellerübergreifender Standard ist hier eigentlich ECMAScript [29] zu nennen. Der Markenname ECMAScript konnte sich
jedoch nie durchsetzen, stattdessen wird meist von JavaScript, dem bekanntesten ECMAScript-Dialekt gesprochen.
61 Seinem Namen zum Trotz kann über dieses Objekt nicht nur XML sondern zum Beispiel auch Klartext übertragen werden.
62 Asynchrone Kommunikation wird vor allem deswegen benötigt, weil praktisch alle Javascript-Engines Skripte single-threaded
ablaufen lassen. Synchrone Kommunikation würde daher immer wieder zu einem kurzzeitigen Einfrieren“ der grafischen Ober”
fläche führen, was die Bedienbarkeit erheblich erschwerte.
63 Einen Überblick über etliche AJAX-Bibliotheken bietet zum Beispiel [67].
64 Der GWT-Compiler unterstützt nicht den vollen Sprachumfang von Java (vgl. Kap. Fundamentals“ in der umfangreichen GWT”
Dokumentation). Insbesondere muss der Java-Kode kompatibel zu J2SE 1.4.2 sein. Die in Entwicklung befindliche Version 1.5
des GWT soll erstmals auch Sprachkonstrukte von Java 1.5 wie Generics und Enumerationen unterstützen.
Seite 66
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Java, entwickelt werden, ohne dass auf den Clients ein JRE installiert sein muss. Dieser Ansatz bietet insbesondere für Java-erfahrene Programmierer diverse Vorteile. Die heutigen Entwicklungsumgebungen für Java (z. B.
Eclipse, NetBeans) sind sehr ausgereift (Koderefaktorisierung, Kodevervollständigung, Kodegenerierung etc.)
und können weiter verwendet werden. GWT ist dabei nicht auf eine spezielle IDE angewiesen. Auf Entwurfsmuster für Objektorientiertes Design kann zurückgegriffen werden, ebenso auf Java-Spezialitäten wie JUnit-Tests,
JavaDoc oder Kodewiederverwendung mittels JARs.
Der GWT-Ansatz vereinfacht auch das Debuggen: JavaScript-Debugger sind rar und noch recht neu. GWT
ermöglicht das Ausführen der Client-Anwendung in einem sogenannten Hosted Mode“ als Java-Bytekode vor
”
der Übersetzung in Javascript. Es können also beliebige Java-Debugger verwendet werden. Das gemeinsame
Debugging von Client und Server erleichtert die Entwicklerarbeit. Da Java im Gegensatz zu JavaScript eine
statisch getypte Programmiersprache ist, fällt eine ganze Klasse an Fehlern ohnehin schon zur Übersetzungszeit
und nicht erst zur Laufzeit auf.
Nicht nur der Entwicklungsprozess, sondern auch das fertige Programm profitiert vom GWT-Compiler. Der
vom GWT generierte JavaScript-Kode ist auf Browserunabhängigkeit optimiert, eine ansonsten sehr schwierige
Aufgabe (s. o.). GWT liefert bereits zahlreiche vordefinierte GUI-Komponenten wie Menüzeile, Baumansicht,
Registerkarten, Vorschlagbox und Splitpanels mit, die in Standard-HTML vermisst werden. Benutzeroberflächen
werden vom Programmierer aus diesen Komponenten analog zu herkömmlichen Swing-Komponenten zusammengestellt.
Werden sowohl Client als auch Server mit dem GWT entwickelt (Normalfall), so kann für die Client-ServerKommunikation das proprietäre Protokoll GWT-RPC verwendet werden. Dieses Protokoll ist insbesondere für
große Binärdateien wesentlich effizienter als etwa XML. Für die Kompatibilität zu Clients und Servern von
anderen Webanwendungen65 unterstützt das GWT außerdem das Datenformat JavaScript Object Notation
(JSON)66 für die Parameterübergabe bei RPCs.
ZK Das ZK-Framework [92] der Firma Potix hat einen ähnlichen Ansatz wie das GWT und soll daher an
dieser Stelle kurz erwähnt werden. ZK wurde wenige Wochen vor dem GWT veröffentlicht und ist unter zwei
verschiedenen Lizenzen erhältlich (GPL und kommerziell). Auch ZK stellt Java in den Mittelpunkt, die Verwendung von JavaScript bei der Entwicklung von Webanwendungen soll möglichst vollständig vermieden werden.
ZK liefert wie das GWT bereits eine große Zahl an Komponenten für grafische Benutzeroberflächen mit.
Im Gegensatz zum GWT setzt ZK darauf, dass die Anwendungslogik (z. B. Zustandsverwaltung) weitgehend
serverseitig abläuft, der Browser auf den Clients dient fast ausschließlich als Präsentationsschicht. Ein weiterer
Unterschied findet sich beim Erzeugen grafischer Oberflächen: ZK setzt hier auf eine eigene XML-basierte
Auszeichnungssprache, ZUML, die es auch Nicht-Programmierern erlauben soll, bei der Oberflächengestaltung
mitzuwirken.
Um GWT und ZK miteinander vergleichen zu können, wäre eine ausführliche Einarbeitung in beide Frameworks
notwendig, die im Rahmen dieser Arbeit nicht geleistet werden kann. Ein erster Anhaltspunkt mag der Artikel
[59] sein, der allerdings von einem ZK-Entwickler geschrieben und daher sicher nicht als neutral anzusehen ist.
Objektiv kann man feststellen, dass für ZK deutlich weniger Literatur existiert67 .
4.2.2.5 Fazit
Jede der untersuchten Programmierplattformen hat ihre Vorteile. Für C/C++ steht mit dem DCMTK das insbesondere im Bereich DICOM-SR leistungsfähigste Open-Source-Toolkit mit guter Dokumentation und reger
Entwickler-Community zur Verfügung. Die Nutzung von Microsofts .NET-Plattform scheint besonders interessant hinsichtlich einer möglichen Integration in NEXUS / PATHOLOGIE. Browseranwendungen mit AJAXUnterstützung sind derzeit in Mode und möglicherweise besonders zukunftsträchtig. Aufgrund der inhärenten
Client-/Server-Architektur skalieren Browserlösungen gut auf Arbeitsgruppen oder ganze Kliniken, zumal auf
den Clients keine Installation und Wartung anfällt.
65 Die
Kombination bestehender Webanwendungen zu einer neuen Webanwendung wird Mashup“ genannt.
”
wurde als RFC 4627 standardisiert [IET06]. Eine in zahlreiche Sprachen übersetzte, gut verständliche Einführung in JSON
findet sich auf der offiziellen Homepage [19].
67 Im Juli 2008 listen die Kataloge von http://www.libri.de/ und http://www.amazon.de nur zwei englischsprachige Bücher zum
Thema ZK.
66 JSON
Seite 67
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Letztlich schied die .NET-Plattform aus, da die hierfür verfügbaren Open-Source-DICOM-Toolkits insbesondere
im Bereich DICOM-SR keine Unterstützung anbieten. Die Nähe zu bestehender Software für den pathologischen
Routinebetrieb verliert ohnehin etwas von ihrem Reiz, da DICOM in der Pathologie noch in den Kinderschuhen
steckt. Von C/C++ wurde Abstand genommen, weil die Entwicklungszeit als zu hoch angenommen wurde und
Plattformunabhängigkeit nur mit großem Aufwand erreicht werden kann.
Die Implementierung als Browseranwendung schien sehr reizvoll, insbesondere mit Unterstützung der vorgestellten AJAX-Frameworks GWT oder ZK. Letztlich wurde dieser Gedanke aber aus folgenden Gründen verworfen:
ˆ Die Entwicklung von Browseranwendungen ist auch bei Einsatz mächtiger AJAX-Frameworks komplexer
als bei Einzelplatzanwendungen in einer einzigen Programmiersprache.
ˆ Die Freiheit bei der Gestaltung grafischer Oberflächen ist letztlich geringer. GWT, ZK und andere AJAXFrameworks liefern zwar eine große Zahl vorkoknfigurierter GUI-Komponenten mit, die Erweiterung um
eigene, besonders benutzerfreundliche Eingabeelemente erschien jedoch wesentlich aufwändiger als bei den
anderen untersuchten Plattformen.
ˆ GENRE soll durch seinen neuartigen Ansatz Demonstrationscharakter haben. Demonstrationen von ClientServer-Anwendungen sind aber relativ aufwändig, weil stets zwei Programme installiert werden müssen
(plus etwaige Applikationsserver etc.). Eine einfache Weitergabe z. B. auf USB-Stick ist so nicht möglich.
Aus den genannten Gründen soll GENRE in Java implementiert werden.
4.2.3 Auswahl eines geeigneten DICOM-Toolkits
Für die Implementierung von GENRE wurde ein kostenloses Toolkit gesucht, dass die folgenden Kriterien erfüllt:
ˆ Funktionen für die Arbeit mit DICOM-SR-Dokumenten
ˆ Gute Pflege mit regelmäßigen Veröffentlichungen neuer Versionen
ˆ Netzwerkfunktionalität für die Einbettung von DICOM-SR-Dokumenten in eine bestehende DICOMInfrastruktur
Aus der vom Autor erstellen Marktübersicht für DICOM-Toolkits [99] wurden drei Toolkits ausgewählt, die
diese Kriterien erfüllen: Das C++-Toolkit DCMTK“sowie die Java-Toolkits dcm4che2“ und PixelMed Java
”
”
”
DICOM Toolkit“.
4.2.3.1 DCMTK
Das Toolkit DCMTK [82], das mittlerweile vom OFFIS-Institut in Oldenburg angeboten und weiterentwickelt
wird hat eine lange Geschichte: Es entstand als europäische Referenzimplementierung ( Central Test Node“)
”
des DICOM-Standards bereits kurz nach dessen Verabschiedung. In den folgenden Jahren wurde die Software,
unter anderem durch Referenzimplementierungen geplanter DICOM-Erweiterungen im Auftrag des DICOMKomitee, stark erweitert. Insbesondere kann man mithilfe des DCMTK DICOM-SR-Dokumente erzeugen, lesen,
modifizieren, schreiben und in andere Formate exportieren. [Rie06]
DCMTK ist hat nach Einschätzung des Autors einen besonders großen Funktionsumfang, eine gute Dokumentation und eine aktive Nutzergemeinde, die bei Problemen mit DCMTK im offiziellen Forum schnell weiterhilft.
Der Einsatz des DCMTK für eigene Projekte wäre insofern naheliegend.
Die Nutzung von C++-Bibliotheken aus Java heraus ist nicht problemlos möglich. Im offiziellen DCMTKForum wird häufig nach Verwendungsmöglichkeiten in Java-Programmen gefragt. Einer vollständigen Portierung
nach Java stehen die Entwickler eher ablehnend gegenüber68 . Eine andere Lösung wären Wrapper-Klassen,
mit deren Hilfe über das Java Native Interface (JNI) auf die originalen DCMTK-Bibliotheken zurückgegriffen
werden kann. Das in Kapitel 4.2.1.2 vorgestellte Programm DICOMscope verwendet diesen Ansatz, bietet
jedoch keinen vollständigen Zugriff auf die DCMTK-Klassen. Außerdem beziehen sich die Wrapper-Klassen der
OpenSource-Version von DICOMscope auf eine veraltete DCMTK-Version.Die Erzeugung eines vollständigen
68 Marco
Eichelberg am 18.4.2008: Since there are good open source DICOM toolkits for Java (for example dcm4che), I am not sure
”
if a DCMTK port to Java is worthwhile the effort, in particular since DCMTK uses many features of the C/C++ environment
that would be difficult to directly port to Java“,
http://forum.dcmtk.org/viewtopic.php?t=1606.
Seite 68
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Java-Wrappers für DCMTK wird von den Entwicklern im Prinzip befürwortet69 , eigene Versuche der Entwickler
mit automatischen Wrapper-Generatoren scheiterten jedoch an der Komplexität des DCMTK-Quellkodes70 .
Der Zugriff auf das DCMTK über JNI-Wrapper hätte ohnehin Nachteile. Einerseits geht damit die Plattformunabhängig von Java verloren, sowohl DCMTK als auch die Wrapper-Klassen müssten für die jeweilige
Zielplattform kompiliert werden. Andererseits wäre die JNI-Schnittstelle ein Flaschenhals bei der Übergabe
großer Datenmengen (wie z. B. virtuellen Präparaten) von DCMTK an GENRE und zurück.
Aus diesen Gründen wurde für GENRE nicht auf das DCMTK zurückgegriffen.
4.2.3.2 dcm4che2 DICOM Toolkit
Offensichtlich weit verbreitet und beliebt ist das Java-Toolkit dcm4che2 [124]. Treibende Kraft dieses Projekts
ist Gunter Zeilinger aus Wien, der mittlerweile bei Agfa Healthcare arbeitet. An dem Open-Source-Projekt sind
jedoch noch ca. 50 weitere Entwickler beteiligt. Neue Versionen des Toolkits erscheinen mehrmals im Jahr.
Das in dcm4che2 enthaltene Kommandozeilenprogramm txt2dcmsr und Klassen wie SRDocumentContent und
SRDocumentContentModule deuten zunächst darauf hin, dass dcm4che2 Unterstützung bei der Bearbeitung von
DICOM-SR-Dokumenten bietet. Ein Studium des Quellkodes von txt2dcmsr zeigte jedoch, dass DICOM-SRDokumente hier auf einem sehr niedrigen Abstraktionsniveau erstellt werden. Die genannten Java-Klassen sind
völlig undokumentiert. Überhaupt existiert fast keine Dokumentation für dcm4che2, weswegen auch auf dieses
Toolkit verzichtet wurde.
4.2.3.3 PixelMed Java DICOM Toolkit
Der Editor des DICOM-Standards, David Clunie, bietet auf seiner Homepage ein in Java geschriebenes DICOMToolkit zur freien Verfügung unter eigener Open-Source-Lizenz an. Auch eine kommerzielle Nutzung ist kostenlos
erlaubt.
Das PixelMed-Toolkit enthält komfortable Methoden zum Einlesen von DICOM-Attributlisten aus Dateien und
eine Klasse StructuredReport, mit der aus solchen Attributlisten der DICOM-SR-Inhaltsbaum extrahiert und
in seine Inhaltselemente zerlegt werden kann. Inhaltselemente werden in Datenstrukturen gepspeichert, die in
der Klasse ContentItemFactory definiert sind (siehe auch Kap. 4.3.1). Neben den Datenstrukturen gibt es auch
eine einfache GUI-Klasse StructuredReportBrowser, mit deren Hilfe Inhaltsbäume angezeigt werden können
(siehe Abb. 29).
Abbildung 29: GUI-Klasse StructuredReportBrowser aus dem PixelMed-Toolkit
69 Siehe
70 Siehe
Forenbeitrag am 30.11.2006, http://forum.dcmtk.org/viewtopic.php?t=488.
Forenbeitrag am 16.11.2007, http://forum.dcmtk.org/viewtopic.php?t=1397.
Seite 69
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Die Benutzung des Toolkits ist ausschließlich im Quellkode dokumentiert, dort aber teilweise sehr ausführlich
und mit Anwendungsbeispielen. Für weitere Hilfe existiert eine Mailingliste bei Yahoo! Groups71 , auf der David
Clunie persönlich und in der Regel innerhalb von 24 Stunden auf Anfragen reagiert.
Insgesamt schien der Funktionsumfang des PixelMed-Toolkits für die Implementierung von GENRE ausreichend
und die gebotene Dokumentation zufriedenstellend, so dass die Wahl letztlich auf dieses Toolkit fiel.
Hinweise zur Benutzung des PixelMed-Toolkits Für den Einsatz des PixelMed-Toolkits in eigenen Programmen reicht das Herunterladen des Archivs pixelmed.jar und dessen Registrierung im Java-CLASSPATH.
Möchte man das PixelMed-Toolkit selbst kompilieren, beispielsweise um Fehler im Quellkode zu korrigieren, so
sind zusätzlich folgende Bibliotheken erforderlich:
ˆ vecmath.jar. Dieses Bibliothek ist eigentlich Teil von Java 3D, ist jedoch auch einzeln im Quelltext auf
der Homepage von Java 3D [104] erhältlich (vecmath-1 5 2-src.zip). Eine bereits kompilierte Version
findet sich im ZIP-Archiv von Java 3D; dieses Archiv beinhaltet ein weiteres Archiv j3d-jre.zip, in dem
man unter lib/ext die gewünschte vecmath.jar findet.
ˆ hsqldb.jar. Diese Datei findet sich im ZIP-Archiv von HSQLDB [48] unter dem Pfad hsqldb/lib.
ˆ jmdns.jar. Diese Datei befindet sich im Ordner jmdns-1.0/lib des ZIP-Archivs von JmDNS (Java multicast DNS [47]).
4.3 Implementierung von GENRE
Dieses Kapitel beschreibt das Vorgehen bei der Entwicklung von GENRE. Im Unterkapitel 4.3.1 werden zunächst
die Datenstrukturen betrachtet, die das PixelMed-Toolkit für Inhaltselemente anbietet. Es wird beschrieben,
wie diese Datenstrukturen für den Einsatz in GENRE erweitert werden mussten. Kapitel 4.3.2 beschäftigt sich
ausführlich mit der grafischen Oberfläche von GENRE.
4.3.1 Datenhaltung von DICOM-SR-Dokumenten
Ein DICOM-SR-Dokument besteht aus einer Liste von DICOM-Attributen, die logisch in einen Dokumentenkopf
und einen Inhaltsbaum unterteilt werden kann (vgl. Kap. 2.6.1 und 2.6.2). Die Knoten im Inhaltsbaum heißen
Inhaltselemente und sind über Relationen miteinander verknüpft. Jedes Inhaltselement kann aus einem Konzeptnamen, der als Triplet-Kode angegeben wird, und einem Konzeptwert bestehen. Je nach Typ des Konzeptwertes
kann sich der Aufbau von Inhaltselementen stark unterscheiden. Generell besteht jedes Inhaltselement wieder
aus einer Liste von DICOM-Attributen, die in einem Sequenzattribut zusammengefasst sind.
Am Anfang der Überlegungen zu geeigneten Java-Datenstrukturen stand die Erkenntnis, dass das Bearbeiten
bereits bestehender DICOM-SR-Dokumente und das Erstellen vollständig neuer Dokumente durch GENRE
unterschieden werden muss. Im ersten Fall muss man nämlich damit rechnen, dass die Datei DICOM-Attribute
enthält, die GENRE unbekannt sind (z. B. private Attribute, vgl. Kap. 2.5.6.2). Außerdem kann eine bestehende
Datei Attribute mit ungültigen Attributwerten enthalten.
Wollte man die Attributlisten von Inhaltselementen für die Bearbeitung mit GENRE in eine abstraktere Datenstruktur bringen und nach erfolgreicher Bearbeitung wieder in eine Attributliste zurückwandeln, so gingen
die unbekannten Attribute verloren und es wäre unklar, was mit ungültigen Attributwerten geschehen soll. Der
Autor entschied sich daher dazu, für jedes Inhaltselement dessen ursprüngliche Attributliste beizubehalten und
Änderungen am Inhaltselement direkt auf der Attributliste durchzuführen. Die Datenstrukturen für Inhaltselemente in GENRE sollen also nur Wrapper-Klassen mit komfortablen Zugriffsmethoden auf die typspezifischen
Attribute von Inhaltselementen sein.
Abbildung 30 stellt schematisch den Aufbau von Inhaltselementen verschiedenen Typs dar. Optionale Angaben
sind gestrichelt umrahmt. Betrachtet man die verschiedenen Inhaltselemente genauer, so fallen Gemeinsamkeiten
auf:
71 http://tech.groups.yahoo.com/group/pixelmed_dicom/
Seite 70
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 30: Komplexe Datentypen von Inhaltselementen (gruppierte Zusammenstellung nach [Clu00])
Seite 71
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
ˆ Die Konzeptwerte von Inhaltselementen der Typen TEXT, PNAME, DATE, TIME, DATETIME, und
UIDREF haben zwar eine verschiedene Semantik und werden durch verschiedene DICOM-Attribute ausgedrückt, in allen Fällen handelt es sich jedoch prinzipiell um einen einzelnen String. Diese Typen können
also von einer gemeinsamen Oberklasse abgeleitet werden.
ˆ Der Konzeptwert von CODE-Inhaltselementen besteht im Wesentlichen aus einem Tripel mit Kodewert,
Kodierungsschema-Bezeichner und Kodebedeutung. Die Attribute hierfür werden im sogenannten Code
”
Sequence Macro“ in PS 3.3 definiert (vgl. Tab. 8.8-1 [DIC08a]). Dieses Makro wird auch für die Angabe
von Konzeptnamen verwendet.
ˆ Der Konzeptwert von NUM-Inhaltselementen besteht aus der eigentlichen Zahlenangabe und einem Kodetripel für die Maßeinheit. Dieses Kodetripel wird wieder wie im Code Sequence Macro“ definiert an”
gegeben. Allerdings ist die Angabe eines Konzeptwertes beim Typ NUM optional. Ein fehlender Wert
bedeutet, dass der Wert nicht erhoben wurde oder unbekannt ist. Insofern müssen NUM-Elemente gesondert behandelt werden.
ˆ Inhaltselemente der Typen IMAGE und WAVEFORM verweisen wie solche vom Typ COMPOSITE auf
ein DICOM Composite Object“, spezifizieren dies aber genauer. Beim Typ IMAGE kann zusätzlich eine
”
Referenced Frame Number“ mitgegeben werden, falls das Zielbild aus mehreren Frames besteht, außerdem
”
ein Softcopy Presentation State“-Objekt, das Informationen zur Anzeige des Zielbildes beinhalten kann
”
(z. B. Fensterung bei CT-Aufnahmen, Annotationen; vgl. Kap. 2.5.5). Beim Typ WAVEFORM kann über
das Attribut Referenced Waveform Channels“ angegeben werden, welcher Kanal bzw. welche Kanäle einer
”
mehrkanaligen Aufzeichnung (z. B. Ableitung V3 im EKG) mit dem Verweis gemeint sind. Die beiden
Typen IMAGE und WAVEFORM stellen also echte Erweiterungen des COMPOSITE-Typs dar, was über
Vererbung modelliert werden kan.
ˆ SCOORD-Inhaltselemente haben als Wert einen als String kodierten Graphic Type“ (POINT, MUL”
TIPOINT, POLYLINE, CIRCLE oder ELLIPSE). Das zugehörige Attribut Graphic Data“ beinhaltet
”
Paare von Gleitkommazahlen, die jeweils einen Punkt beschreiben.
ˆ Die zulässigen Werte für den Range Type“ eines TCOORD-Elements unterscheiden sich von den Graphic
”
”
Types“ eines SCOORD-Elements. Außerdem sind die Koordinatenangaben ( Reference(s)“) natürlich
”
eindimensional. Obwohl SCOORD und TCOORD semantisch ähnliche Bedeutung haben, liegt also eine
recht unterschiedliche Datenstruktur vor.
Im PixelMed-Toolkit gibt es bereits eine Klassenhierarchie für Inhaltselemente, die diese Gemeinsamkeiten
ausnutzt: Alle Klassen für Inhaltselemente erben von der abstrakten Oberklasse ContentItem die gemeinsamen Felder (z. B. für Konzeptname und Relationstyp) und Get-Methoden für diese Felder. Die Klassen für
Inhaltselemente vom Typ TEXT, PNAME, DATE, TIME, DATETIME, und UIDREF erben von einer zwischengelagerten abstrakten Oberklasse StringContentItem. Die Klassen für IMAGE und WAVEFORM erben
von COMPOSITE.
Fast alle Klassen für Inhaltselemente des PixelMed-Toolkits waren versteckte innere Klassen von ContentItemFactory, was eine weitere Spezialisierung durch Vererbung verhinderte. Auch sah das PixelMed-Tookit in der
Version vom 20.1.2008 keine Datentypen für WAVEFORM und TCOORD vor. Auf Anregung des Autors hin
änderte David Clunie die Sichtbarkeit der inneren Klassen am 18.2.2008, fügte Klassen für WAVEFORM und
TCOORD hinzu und veröffentlichte die Änderungen noch am gleichen Tag als neue Version des Toolkits.
Offenbar sind die Klassen für Inhaltselemente im PixelMed-Toolkit nur zur Anzeige von bereits bestehenden
DICOM-SR-Dateien gedacht. Für diese Arbeit mussten die Klassen daher erheblich erweitert werden:
ˆ Im PixelMed-Toolkit basieren Inhaltselemente grundsätzlich auf einer bestehenden Attributliste. Beim
Neuanlegen von Inhaltselementen muss eine solche Attributliste aber erst erzeugt werden. Jeder Klasse
wurden daher typspezifische Konstruktoren hinzugefügt, die das komfortable Erzeugen neuer Attributlisten ermöglichen.
ˆ Für jede Get-Methode wurde eine entsprechende Set-Methode implementiert.
ˆ Jedes Inhaltselement wurde um eine Methode erweitert, die eine HTML-Repräsentation des Elements
generiert (vgl. Kap. 4.3.2.4).
ˆ Die Klasse CodedSequenceItem des PixelMed-Toolkits enthält nur Methoden zum Lesen des Tripels aus
Kodewert, Kodierungsschema-Bezeichner und Kodebedeutung von kodierten Elementen. Sie wurde um
alle Get- und Set-Methoden für den Enhanced Encoding Mode“ erweitert, mit dem über zahlreiche
”
Attribute beschrieben werden kann, aus welcher Kontextgruppe ein kodiertes Element stammt.
ˆ Ein CONTAINER-Inhaltselement hat eine Eigenschaft Continuity of Content“, die beschreibt, ob der
”
Seite 72
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Inhalt als zusammenhängender Text oder, wie bei einer Aufzählung, als getrennte Elemente aufgefasst
werden soll. Diese Eigenschaft wurde im PixelMed-Toolkit nicht berücksichtigt und daher ergänzt.
ˆ Die Klassen für DATE- und TIME-Inhaltselemente wurden um statische Methoden erweitert, die Uhrzeitund Datumsangaben vom DICOM-Format in eine lokalisierte Darstellung bringen.
ˆ Der Klasse für PNAME-Inhaltselemente wurde ebenfalls eine statische Methode hinzugefügt, die Personennamen vom DICOM-Format in eine besser lesbare Darstellung überführt.
ˆ Schließlich wurde für alle 14 Datenklassen jeweils eine GUI-Klasse angelegt, mit der die Daten visualisiert
und bearbeitet werden können.
4.3.2 Grafische Darstellung von DICOM-SR-Dokumenten
Während man mit DICOM über sogenannte Presentation States“ (siehe Kap. 2.5.5) exakt festlegen kann, wie
”
Bilddaten auf einem Monitor angezeigt werden sollen, ist die Darstellung von strukturierten Dokumenten nicht
standardisiert. Der Standard enthält in PS 3.4, Anhang O.2.2, lediglich eine Formulierung, dass der Inhalt von
DICOM-SR-Dokumenten in seiner vollen Bedeutung“ und unzweideutig“ dargestellt werden soll. Was dies
”
”
konkret bedeutet, wird nicht weiter ausgeführt. Diese Problematik wird unter anderem in [Rie06] und [CDK01]
diskutiert.
Ein DICOM-SR-Dokument kann also in verschiedenen Systemen vollkommen unterschiedlich dargestellt werden.
Da die visuelle Repräsentation eines Dokuments – zumindest für Menschen – durchaus Inhalt transportieren
kann, stellt dieser Mangel ein ernsthaftes Problem dar. Teilweise lässt sich dieses Problem lösen, indem man
gemeinsam mit dem DICOM-SR-Dokument eine DICOM-Datei bereitstellt, in die ein fertig formatiertes Ausgabedokument eingebettet ist. Dafür bietet sich das PDF-Format an, dessen Einbettung in DICOM-Dateien
seit 2004 standardisiert ist72 .
Die Entscheidungen bezüglich der Darstellung von DICOM-SR-Dokumenten in GENRE sollen in den folgenden
Kapiteln besprochen werden. DICOM-SR-Dokumente lassen sich nach Kapitel 2.6.1 grob in die Metainformationen des Dokumentenkopfes und den eigentlichen Befundbericht unterteilen. In Kapitel 4.3.2.1 wird ein einfacher
Ansatz beschrieben, wie Informationen des Dokumentenkopfes bearbeitet werden können.
Der Inhalt des Befundberichts besteht wie in Kapitel 2.6.2 beschrieben aus verschachtelten Sequenzen, was in
einer baumartigen Datenstruktur resultiert. Es ist daher naheliegend, den Inhalt des Befundberichts grafisch
ebenfalls als Baum darzustellen und dem technisch versierten Benutzer damit unmittelbaren Zugriff auf die
endgültige Struktur des Dokuments zu geben. Jeder Knoten des Baumes entspricht in dieser Darstellung einem
Inhaltselement des DICOM-SR-Dokuments. Die Implementierungsprobleme bei dieser Darstellungsart werden
in Kapitel 4.3.2.2 erläutert.
Für ärztliches Personal ist die Baumdarstellung eher verwirrend. Menschen sind es zum Beispiel durch den Umgang mit Büchern gewohnt, baumartig strukturierte Informationen in linearisierter (pre-order-) Form präsentiert
zu bekommen. Das Programm sollte es also ermöglichen, aus dem DICOM-SR-Baum eine linearisierte Fassung
in einem gängigen Dateiformat zu erzeugen. Kapitel 4.3.2.4 beschreibt diese Linearisierung.
4.3.2.1 Darstellung des Dokumentenkopfes von DICOM-SR-Dokumenten
Die den verschiedenen Information Entities (z. B. Patient, Study, Series) zugeordneten Metainformationen
des Dokumentenkopfes besitzen keine innere Ordnung sondern liegen wie in Kapitel 2.5.7 beschrieben in einer aufsteigend nach Attribut-Tag sortierten Liste vor. Da es sich fast ausschließlich um Attribut-Wert- bzw.
Attribut-Multiwert-Paare handelt, können sie tabellarisch angezeigt werden. Abbildung 31 zeigt den in GENRE integrierten Dialog zur Bearbeitung von DICOM-SR-Metainformationen. Die zu einer Informationseinheit
gehörenden Attribute werden jeweils auf einer eigenen Registerkarte dargestellt und lassen sich über Textfelder
bearbeiten. Dabei zeigt der Dialog nur die Attribute an, die im DICOM-Standard als verpflichtend markiert
sind. Wollte man alle denkbaren Attribute anzeigen, so sollte man überlegen, wie man den Dialog automatisch
aus einer Konfigurationsdatei generieren kann. Aufgrund der vielfältigen Optionalitäten und Bedingungen von
Attributen sprengt dieser Ansatz das Thema der Diplomarbeit und wurde nicht weiter verfolgt. Auch wurde
beim Dialog aus Zeitgründen auf Eingabehilfen für Personennamen, Datumsangaben etc. verzichtet.
72 Vgl.
Supp. 104 DICOM Encapsulation of PDF Documents“, ftp://medical.nema.org/medical/dicom/final/sup104_ft.pdf.
”
Seite 73
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
(a) Attribute der Study IE
(b) Attribute des SR Document General Module
Abbildung 31: Formulare zur Bearbeitung von wichtigen DICOM-Headerinformationen
4.3.2.2 Darstellung des Inhaltsbaumes von DICOM-SR-Dokumenten
Baumdarstellung mit JTree Die mit Java mitgelieferte Bibliothek zur Erstellung plattformunabhängiger grafischer Oberflächen, Swing, liefert mit der Klasse JTree bereits eine sehr mächtige Komponente für Bäume mit.
Standardmäßig wird ein Knoten des Baumes über ein Icon und einen einzeiligen, beschreibenden Text (JLabel)
repräsentiert.
Es ist naheliegend, über das Icon den jeweiligen Datentyp eines Knotens darzustellen. Für die 14 komplexen
Datentypen von Inhaltselementen wurden geeignete Icons aus einer freien Icon-Sammlung [126] ausgewählt bzw.
aus mehreren kombinierten Icons dieser Sammlung erstellt.
Die Darstellungsform des beschreibenden Textes als einzeiliges JLabel erscheint im Falle von DICOM-SR
ungünstig: Ein Knoten (=Inhaltselement) in einem DICOM-SR-Dokument ist für sich wiederum eine komplexe
Datenstruktur, die sich in vielen Fällen nicht geeignet auf ein Icon und eine einzelne Textzeile reduzieren lässt.
Beispielsweise sollte im Baum der vollständige Text einer TEXT-Inhaltskomponente erscheinen, damit dem
menschlichen Betrachter ein möglicher inhaltlicher Zusammenhang zum folgenden Geschwisterknoten deutlich
wird. Für IMAGE-Inhaltskomponenten bietet sich, soweit vorhanden, ein Thumbnail des Bildes eher an als die
textuelle Darstellung von UIDs, die auf das Bild verweisen.
Angepasstes Erscheinungsbild für Knoten Glücklicherweise sieht JTree ein angepasstes Erscheinungsbild für
Knoten vor, das über ein JLabel hinausgeht. Dieses Erscheinungsbild wird im Swing-Jargon TreeCellRenderer
genannt. Einem JTree kann über die Methode setCellRenderer(TreeCellRenderer x) ein neues Knotenerscheinungsbild zugewiesen werden.
Das Erstellen eines maßgeschneiderten TreeCellRenderers ist einfach: Man erstellt eine Klasse, die das Interface
TreeCellRenderer implementiert, und überschreibt in dieser Klasse die Methode
public Component getTreeCellRendererComponent(...).
Man beachte den Rückgabetyp Component: Ein Knoten kann also aus einem beliebigen grafischen Element
bestehen, insbesondere auch aus einem Container, der wiederum beliebig geschachtelte grafische Elemente und
Container enthalten kann. Das Erstellen eines eigenen TreeCellRenderers über Vererbung von der Klasse
DefaultTreeCellRenderer, wie es als einfacher Weg im Java-Swing-Tutorial [106] beschrieben wird, ist nicht
zu empfehlen, da DefaultTreeCellRenderer von JLabel Eigenschaften und Methoden erbt, die für komplexere
TreeCellRenderer nicht benötigt werden.
Darstellungsfehler bei bestimmten Look&Feels“ Für tiefgreifende Veränderungen an JTrees ist es wichtig
”
zu verstehen, dass die Methoden für die Standardoptik und das Standardverhalten von Swing-Komponenten
maßgeblich durch das eingestellte sogenannte Look&Feel bestimmt werden. Jeder Swing-Komponente wird
dazu eine sogenannte ComponentUI zugeordnet, die die grafische Darstellung der Komponente und das EventHandling übernimmt. Für Bäume existiert die abstrakte Oberklasse TreeUI und ihre konkrete Implementierung
Seite 74
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
BasicTreeUI, die für verschiedene Look&Feels weiter spezialisiert wird.
Das Look&Feel-Konzept soll dafür sorgen, dass Java-Anwendungen den nativen Anwendungen auf dem jeweiligen Betriebssytem hinsichtlich Aussehen und Handhabung ähneln. Look&Feel-abhängig sind bei JTree zum
Beispiel die verwendeten Standard-Icons und Schriftarten, die Darstellung von Verbindungslinien des Baumes
oder das Verhalten bei Doppelklick auf einen Knoten.
Unter vielen Betriebssystemen sind Bäume mit mehrzeiligen Knoten unüblich. Ist ein entsprechendes Look&Feel
eingestellt, kommt es bei GENRE zu Darstellungsfehlern, die das Programm nahezu unbenutzbar machen. Dieser
Effekt wurde festgestellt bei:
ˆ com.sun.java.swing.plaf.windows.WindowsLookAndFeel (steht nur unter Windows zur Verfügung)
ˆ com.sun.java.swing.plaf.motif.MotifLookAndFeel
Eine korrekte Darstellung gelang hingegen mit:
ˆ javax.swing.plaf.metal.MetalLookAndFeel (Java-Standard-Look&Feel)
ˆ com.sun.java.swing.plaf.gtk.GTKLookAndFeel (für neuere Versionen von Linux und Solaris, steht unter Windows nicht zur Verfügung)
Die Darstellung mittels apple.laf.AquaLookAndFeel konnte nicht getestet werden, da dieses Look&Feel nur
auf Apple-Rechnern Bestandteil der JVM ist und kein Apple-Rechner zur Verfügung stand.
Die fehlerhafte Darstellung der grafischen Oberfläche von GENRE unter einigen Look&Feels ist zwar bedauerlich, der Autor entschied sich aber, dies zugunsten der besseren Übersichtlichkeit von mehrzeiligen Knoten in
Kauf zu nehmen. Schließlich steht das korrekt funktionierende Metal-Look&Feel unter jedem Betriebssystem
zur Verfügung. Insofern wird die Plattformunabhängigkeit durch die Darstellungsfehler nicht beeinträchtigt.
Editierbare Knoten Wie oben dargestellt, sollte es GENRE ermöglichen, Inhaltskomponenten direkt an ihrer
Position im Baum zu editieren. Der Autor sieht in dieser Vorgehensweise folgende Vorteile:
ˆ Der Blick des Benutzers kann beim Umschalten in den Bearbeiten-Modus an gleicher Stelle auf dem
Bildschirm verharren
ˆ Der zu bearbeitende Knoten steht weiter in seinem durch Geschwister- und Vaterknoten gegebenen Kontext.
Im Gegensatz zu editierbaren Tabellenzellen, die die meisten Computeranwender aus Tabellenkalkulationsprogrammen kennen, sind editierbare Knoten in Bäumen eher ungewöhnlich. Deren vermutlich häufigster Anwendungsfall ist das Umbenennen von Verzeichnissen in Dateimanagern.
Der geringen Popularität editierbarer Baumknoten mag geschuldet sein, dass tiefgehende Informationen zu
diesem Thema sowohl in der offiziellen Java-Dokumentation als auch in Anwenderforen schwer zu finden sind.
Eine recht ausführliche Behandlung von JTrees bieten [Zuk05] und [Top01] (Kapitel 10, The Tree Control“).
”
Das ansonsten sehr brauchbare Swing-Tutorial von Sun [106] behandelt editierbare Zellen nur im Zusammenhang
mit JTables. Alle drei Quellen befassen sich nur mit einfachen, einzeiligen Anwendungsfällen (String-Eingabe,
Checkbox oder Combobox).
Im Java-Jargon heißt ein editierbarer Baumknoten TreeCellEditor. Mit der Methode setCellEditor(TreeCellEditor cellEditor) kann einem JTree ein selbstgeschriebener TreeCellEditor zugewiesen werden. Standardmäßig ist bereits ein DefaultTreeCellEditor zugewiesen, der ein einfaches, einzeiliges Textfeld zur Eingabe
bereitstellt. Für das oben genannte Umbenennen von Verzeichnissen reicht dies aus, für GENRE mussten jedoch
erweiterte Editoren programmiert werden.
Ein selbstgeschriebener TreeCellEditor muss das gleichnamige Interface implementieren, das eine Spezialisierung des Interfaces CellEditor ist. Desweiteren bietet es sich an, von der abstrakten Klasse AbstractCellEditor
zu erben, da diese bereits ein (sehr einfach gehaltenes) Listener-Management bereitstellt. Das Erstellen eines
eigenen TreeCellEditors über Vererbung von DefaultTreeCellEditor erweist sich als unpraktisch, da dieser
bereits auf das Zusammenspiel mit einem DefaultTreeCellRenderer, also letztlich einem einfachen JLabel,
optimiert ist.
Im Folgenden sollen einige Methoden der Interfaces CellEditor und TreeCellEditor kurz vorgestellt und
dabei Grundprinzipien editierbarer Baumknoten erläutert werden:
Seite 75
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
ˆ isCellEditable: Das Editieren von Knoten wird durch ein Tastenkürzel oder die Maus gestartet. Die
Tastenkombination zum Bearbeiten eines Knotens wird über die Methode initComponentDefaults(...)
im Look&Feel des Baumes festgelegt, typischerweise wird die Taste F2 verwendet. Das Verhalten bei
Verwendung der Maus kann der Programmierer über die Methode isCellEditable selbst festlegen: Liefert
sie true zurück, so wird das Editieren gestartet. Bei jedem Mausklick auf einen Knoten des Baumes wird
isCellEditable von der BasicTreeUI aufgerufen und erhält als Parameter das zugehörige MouseEvent.
Man kann also beispielsweise ein Editieren mit Dreifach-Mausklick starten lassen oder mit zwei Mausklicks,
die länger als eine gewisse Zeitspanne auseinanderliegen. Tasten-Events werden nicht an isCellEditable
weitergereicht, so dass eine einfache Änderung der Tastensteuerung nicht möglich ist.
ˆ getTreeCellEditorComponent: Wenn isCellEditable true zurückliefert, wird in der Methode BasicTreeUI.startEditing(...) als nächstes die Methode getTreeCellEditorComponent aufgerufen. Diese hat
als Rückgabetyp Component, also eine beliebige Swing-Komponente. Das Aussehen des TreeCellEditors
muss daher in dieser Methode festgelegt werden. Nach dem Aufruf von getTreeCellEditorComponent
wird die GUI des Baumes aktualisiert, also die Editor-Swing-Komponente angezeigt und der Baum so
arrangiert, dass der editierbare Knoten genug Platz hat.
ˆ cancelCellEditing: Diese Methode wird von BasicTreeUI.completeEditing aufgerufen, wenn sich die
dem Knoten zugrundeliegenden Daten ändern oder wenn der Benutzer durch eine Maus- oder Tastaturaktivität das Editieren eines Knotens abbricht, beispielsweise durch Drücken der ESC-Taste oder durch
Selektieren eines anderen Baumknotens.
ˆ stopCellEditing: Ähnelt cancelCellEditing, wird aber aufgerufen, wenn der Benutzer die Eingabe regulär abschließt, zum Beispiel durch Drücken der Eingabetaste. Um festzulegen, dass das Selektieren eines
anderen Baumknotens nicht cancelCellEditing sondern stopCellEditing aufruft, also das Editieren
des Knotens regulär beendet, verwendet man die Methode JTree.setInvokesStopCellEditing(...).
ˆ getCellEditorValue: Diese Methode muss nach der Bearbeitung eines Knotens das Datenobjekt zurückliefern, das dem Knoten zukünftig zugrunde liegen soll. Wurde das Bearbeiten regulär beendet,
veranlasst BasicTreeUI die Aktualisierung der Daten im Datenmodell des Baumes über die Methode
TreeModel.valueForPathChanged(...).
Es soll nicht verschwiegen werden, dass editierbare Baumknoten auch ihre Nachteile haben. Beispielsweise
ist unklar, was passieren soll, wenn der Benutzer eine ungültige Eingabe vornimmt und dann einen anderen
Baumknoten selektieren möchte. Soll die Eingabe verworfen werden oder der alte Baumknoten im Fokus und
editierbar bleiben? In GENRE wird das Standardverhalten von Swing verwendet und die Eingabe verworfen.
Bei der Verwendung editierbarer Baumknoten kann nur ein Knoten zur Zeit bearbeitet werden, während bei
der Verwendung nicht-modaler Dialoge auch mehrere Knoten gleichzeitig bearbeiten könnte. Zudem barg der
Quellkode für editierbare Zellen im JDK in der Vergangenheit zahlreiche Fehler. Der Artikel [30] behandelt
verschiedene Problematiken editierbarer Tabellenzellen anhand einfacher Beispiele. Diese Probleme sind teilweise
auf editierbare Baumknoten übertragbar.
Editierbare Knoten, die ihre Größe ändern können, z. B. Textfelder variabler Größe oder Formulare, bei denen
erweiterte Elemente auf Knopfdruck eingeblendet werden (im Microsoft Windows Jargon progressive disclos”
ure“), verursachen weitere Darstellungsprobleme im JTree. Die Größe des Knotens muss angepasst werden,
damit alle Elemente des Knotens sichtbar sind und nicht von benachbarten Baumknoten verdeckt werden. Dies
kann man erzwingen, indem man die bevorzugte Größe des Knotens über die Methode revalidate() neu
berechnet und anschließend über setSize(...) neu zuweist.
Ein weiteres Problem bleibt bestehen: Ein vergrößerter Knoten überdeckt nun selbst den unteren Nachbarknoten im Baum, ein verkleinerter Knoten sorgt für eine unschöne Lücke. Es ist also ein kompletter Neuaufbau
des JTrees vonnöten. Da die Größeninformationen der einzelnen Knoten in BasicTreeUI aus Performancegründen gecached werden, hilft ein Aufruf der sonst gängigen Swing-Funktionen validate() oder revalidate()
auf dem JTree nicht. In BasicTreeUI werden stattdessen die Funktionen treeState.invalidateSizes() und
updateSize() verwendet. Diese sind jedoch nicht von außen zugänglich. Beim Design von BasicTreeUI wurde
offenbar angenommen, dass sich Knoten-Editor-Komponenten nach dem Aufruf nicht mehr in der Größe ändern.
Um eine Aktualisierung des JTree-Layouts zu erzwingen, muss man also eigentlich eine Spezialisierung von
BasicTreeUI schreiben, was insbesondere aufgrund des komplexen Zusammenspiels mit bereits spezialisierten
TreeUI-Klassen des jeweiligen Look&Feels aufwändig und fehlerträchtig ist. Nach einigem Suchen konnte jedoch
ein Workaround gefunden werden: BasicTreeUI bietet die öffentlichen Methoden setLeftChildIndent(...)
Seite 76
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
und setRightChildIndent(...) an, die als Seiteneffekt einen kompletten Neuaufbau der TreeUI erzwingen.
Der folgende Quelltext ist also ein unschöner Trick, ist aber sehr kompakt und funktioniert:
BasicTreeUI ui = (BasicTreeUI) srTree.getUI();
ui.setLeftChildIndent(ui.getLeftChildIndent());
4.3.2.3 Darstellung von kodierten Elementen in DICOM-SR-Dokumenten
Bei der Konzeption von GENRE wurde darauf geachtet, dass der Benutzer möglichst viele Details von DICOMSR-Dokumenten manipulieren kann. Dazu gehören auch die Attribute des Enhanced Encoding Mode“ von
”
Kodesequenzattributen, die nach Kenntnis des Autors mit keinem anderen frei verfügbaren Werkzeug bearbeitet werden können. Abbildung 32 zeigt die in GENRE implementierten Dialoge zur Angabe kodierter Elemente.
In beiden Dialogen werden die Felder für den Enhanced Encoding Mode“ nur dann angezeigt, wenn sie Text
”
enthalten oder der Benutzer das jeweilige Kontrollkästchen aktiviert. Auch das Feld Private Scheme Crea”
tor UID“ wird gemäß Konvention nur dann angezeigt, wenn der Kodierungsschema-Bezeichner wie im rechts
abgebildeten Dialog mit 99“ beginnt.
”
(a) Konzeptname als kodiertes Element
(b) Inhaltselement vom Typ CODE“
”
Abbildung 32: Darstellung kodierter Elemente von DICOM-SR-Dokumenten in GENRE
4.3.2.4 Rendering eines DICOM-SR-Dokuments in andere Ausgabeformate
Aus Abbildung 7 geht hervor, dass DICOM (und damit auch DICOM-SR) typischerweise nur in bildverarbeitenden Fachabteilungen eines Krankenhauses anzutreffen ist. Es kann also nicht davon ausgegangen werden, dass
Seite 77
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
alle potentiellen Empfänger von mit GENRE erstellten Dokumenten, wie beispielsweise das Medizincontrolling
im Krankenhaus oder niedergelassene Hausärzte, über Anzeigemöglichkeiten für DICOM-SR verfügen. Daher
wurde in GENRE prototypisch ein Export in das verbreitete HTML-Format integriert (vgl. Abb. 33).
Die HTML-Ausgabe berücksichtigt die Attribute des Dokumentenkopfs, die mit GENRE bearbeitet werden
können (vgl. Kap. 4.3.2.1), und natürlich den Inhaltsbaum von Dokumenten. Kodierungstripel sind auch im
exportierten HTML-Dokument noch als Tooltip enthalten.
Neben dem HTML-Format sollten weitere Formate berücksichtigt werden. PS 3.18 des DICOM-Standards,
Web Access to DICOM Persistent Objects (WADO)“, widmet sich dem Zugriff auf DICOM-Objekte von
”
nicht-DICOM-Systemen und kann daher als Maßstab herangezogen werden. Für den Export von DICOMSR-Dokumenten sieht PS 3.18 in Kapitel 7.3.2 die Formate DICOM (Originalformat), Nur-Text und HTML
verpflichtend vor. Zusätzlich empfielt PS 3.18 Exportmöglichkeiten nach XML, PDF, RTF und HL7-CDA.
Export nach Microsoft Word Im Rahmen dieser Diplomarbeit ist vor allem ein Export in das MicrosoftWord-Format von Interesse, da dieses bisher in der Pathologie am UK-SH verwendet wird. Um Word-Dateien
zu erstellen, gibt es im Wesentlichen drei Ansätze:
1. Direktes Erzeugen des Word-Binärformats (.doc)
2. Direktes Erzeugen von Office Open XML“ (OOXML), einem XML-basierten Format, das Microsoft mit
”
Office 2007 eingeführt hat (.docx)
3. Indirektes Erzeugen von Word-Dateien mittels Fernsteuerung von Word
Die Spezifikation des Word-Binärformats wurde im Februar 2008 von Microsoft offiziell frei zugänglich gemacht
[69]. Es existieren jedoch bisher keine Toolkits für die einfache Erstellung von Dokumenten in diesem Format.
Das Konvertieren von DICOM-SR ins OOXML-Format wurde von einem Praktikanten am IMI evaluiert. Leider
ist das OOXML-Format ähnlich komplex wie die Office-Binärformate. Mitte Juni veröffentlichte Microsoft ein
Toolkit für OOXML, das die Erstellung solcher Dokumente vereinfachen könnte [42]. Es konnte aus Zeitgründen
in dieser Diplomarbeit nicht mehr berücksichtigt werden und ist außerdem nicht für Java, sondern nur für .NETProgrammiersprachen geeignet.
Die Fernsteuerung von Word ist über dessen COM-Schnittstelle möglich. Wie man von Java aus auf die COMSchnittstelle von Windowsprogrammen zugreift, hat der Autor dieser Arbeit in seiner Studienarbeit beschrieben [Sch06]. Generell hat dieser Ansatz den Nachteil, dass ein Windows-Rechner mit einer Word-Lizenz zur
Verfügung stehen müsste, während GENRE ansonsten auf Plattformunabhängigkeit ausgelegt ist. Daher wurde
er ebenfalls nicht weiter verfolgt.
Weitere Formate Dateien im OpenDocument-Text-(ODT)-Format, wie sie von OpenOffice.org Writer verwendet werden, können zum Beispiel mit dem kostenloses Java-Toolkit jOpenDocument manipuliert werden
[54]. Für die Erzeugung von PDF bietet sich der XML-Export in den Extensible Stylesheet Language – For”
matting Objects“-Dialekt (XSL-FO) an. Solche Dateien können mit entsprechenden Formatierern, sogenannten
XSL-FO-Prozessoren“, in PDF umgewandelt werden. Ein XSL-FO-Prozessor, der in Java geschrieben ist und
”
aus anderen Java Programmen heraus verwendet werden kann, ist beispielsweise Apache FOP [5].
4.3.3 Benutzungsfreundlichkeit
Die Bedeutung der Benutzungsfreundlichkeit von Software für medizinisches Personal kann gar nicht überschätzt
werden. Bortoluzzi et al. drücken es so aus:
It is extremely important for health care software to be user-friendly and fast-to-learn, otherwise,
”
it might be abandoned or under-used by the staff.“ [BWM03]
Insofern wurde auch in dieser Diplomarbeit besonderer Wert auf eine einfache Benutzbarkeit der Software gelegt.
In den folgenden Kapiteln werden einige Ideen zur Benutzungsfreundlichkeit disktutiert, die vollständig oder
teilweise in GENRE implementiert wurden.
Seite 78
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 33: HTML-Export von DICOM-SR-Dokumenten mit GENRE
Seite 79
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
4.3.3.1 Internationalisierung und Lokalisierung
In Kapitel 4.2.1 wurde beschrieben, dass es trotz zunehmender Verbreitung von DICOM-SR bisher keine zufriedenstellende Software auf dem Markt gibt, die Ähnliches wie GENRE leistet. Aus diesem Grund wurde GENRE
von vornherein so konzipiert, dass es nach Abgabe der Diplomarbeit als kostenloses Open-Source-Werkzeug einer weltweiten Benutzergemeinde zur Verfügung gestellt werden kann. Dazu gehört auch eine Anpassung an
regionale Umstände.
Unter Internationalisierung (engl.: internationalisation oder kurz i18n 73 ) versteht man die Schaffung der technischen Voraussetzungen für die Anpassung der Benutzeroberfläche eines Programms an Sprach- und Kulturkreisspezifische Gegebenheiten. Die eigentliche Anpassung wird üblicherweise als Lokalisierung (engl.: localisation oder kurz L10n 74 ) bezeichnet. Zur Lokalisierung zählt vor allem die Übersetzung von Texten in die
Landessprache, aber auch die Einhaltung von Schreibkonventionen bei Datumsangaben, Uhrzeiten, Gleitkommazahlen etc. Auch wenn es sich bei der Übersetzung von Programmen in die jeweilige Landessprache des
Anwenders um eine technisch recht einfache Aufgabe handelt, so ist die Verbesserung der Benutzerakzeptanz
durch diese Maßnahme nach Erfahrung des Autors groß. Selbst technisch versierte Anwender greifen oft lieber
zu einer landessprachlichen Variante ihrer Software, sofern diese bereitsteht.
Internationalisierung von Zeichenketten Grundprinzip für die Internationalisierung von Zeichenketten ist
deren Ausgliederung aus dem Quelltext. Stattdessen werden alle zu übersetzenden Zeichenketten mit einem
eindeutigen Schlüssel versehen und in externen Text-Dateien gespeichert (z. B. in einem XML-Format). Zur
Laufzeit des Programms werden die benötigten Zeichenketten dynamisch aus diesen Textdateien eingelesen.
Diese Vorgehensweise hat mehrere Vorteile: Zum einen kann die Übersetzung des Programms in andere Landessprachen ohne Programmierkenntnisse erfolgen und als Werkzeug reicht ein einfacher Text-Editor. Zum anderen
muss bei Anpassungen von Programmausgaben das Programm nicht neu übersetzt werden. Dies beschleunigt
nicht nur den Software-Entwicklungsprozess, sondern ermöglicht zudem die Anpassung von Ausgaben durch den
(technisch versierten) Anwender selbst ( Personalisierung“, customization“). Gerade im stationären Gesund”
”
heitswesen mit den in jedem Krankenhaus anderen terminologischen Konventionen erwartet der Autor einen
Bedarf an Personalisierbarkeit.
Die Java-Klassenbibliothek bringt bereits zahlreiche Methoden für die Internationalisierung und Lokalisierung
von Programmen mit75 . Eine gute Einführung in diese Methoden bietet das offizielle Tutorial von Sun im
entsprechenden Abschnitt [107]. Eine große Hilfe stellt auch der in Eclipse integrierte Assistent zum Ausgliedern
von Zeichenketten aus dem Quelltext dar (vgl. Abb. 34). Dieser beschleunigt die Arbeit enorm und verringert
die Fehllerrate im Vergleich zu manuellem Vorgehen.
Für eine schnelle und erfolgreiche Internationalisierung von Zeichenketten sind softwarearchitektonische Maßnahmen sinnvoll. Vor allem sollten Klassen für die grafische Darstellung der Benutzeroberfläche sauber von
Klassen getrennt werden, die Aufgaben des Kontrollflusses oder der Datenhaltung übernehmen (z. B. mithilfe
des Model-View-Controller-Patterns aus der Smalltalk-Welt [116]). Für GENRE wurde eine Internationalisierung von vornherein eingeplant. Die Ausgliederung von Zeichenketten betraf daher nur wenige Pakete und darin
jeweils eine überschaubare Anzahl Klassen.
Eine weitere wichtige Maßnahme ist es, die Dimensionierung und Platzierung von GUI-Elementen von deren
textueller Beschriftung abhängig zu machen. Hierfür bietet Java das Konzept der Layout Manager, das in [106]
ausführlich beschrieben und in GENRE durchgängig eingesetzt wird.
Abbildung 35 zeigt abschließend die GENRE-Benutzeroberfläche mit deutschen Menüs, Schaltflächen, Beschriftungen etc. Die Anpassung an weitere Sprachen ist technisch trivial.
Lokalisierung von Datumsangaben
kalisierung:
Bei Datumsangaben gibt es mindestens folgende Unterschiede in der Lo-
ˆ Reihenfolge von Tag, Monat und Jahr
73 Die
Zahl 18 bezieht sich auf die Anzahl der ausgelassenen Buchstaben zwischen i“ und n“.
”
”
hier steht die Zahl 10 für zehn ausgelassene Buchstaben. Das große L“ wird verwendet, weil ein kleines l“ und ein großes
”
”
I“ leicht verwechselt werden können.
”
75 Das
Microsoft .NET-Framework bietet entsprechende Klassen im Namespace System.Globalization
74 Auch
Seite 80
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 34: Assistent in Eclipse zum Ausgliedern von Zeichenketten in Textdateien
Abbildung 35: GENRE-Benutzeroberfläche auf deutsch
Seite 81
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
ˆ
ˆ
ˆ
ˆ
Trennzeichen zwischen den einzelnen Elementen (z. B. .“, /“, -“)
” ”
”
Wochentags- und Monatsbezeichnungen (ausgeschrieben und abgekürzt)
Wochentag, mit dem die Woche beginnt (typischerweise Sonntag oder Montag)
Gängige Kurzschreibweise des Datums (z. B. mit abgekürztem Monatsnamen oder Monat als Zahl)
Ein Versuch des Autors, das Datum lokalisiert darzustellen und eine landesübliche Eingabe zu erlauben, wurde
aus Komplexitätsgründen abgebrochen. Stattdessen wurde das GUI-Element JXDatePicker aus der SwingXBibliothek verwendet, das mittlerweile alle genannten Lokalisierungseigenheiten beherrscht. Für die Ausgabe
einer Kurzdarstellung in der Titelzeile des Datums-Editors wurden Java-eigene Funktionen verwendet. Um
die Eingabe häufig benötigter Datumsangaben zu beschleunigen, stellt die Benutzeroberfläche von GENRE
zusätzliche Knöpfe bereit.
(a) Locale en US
(b) Locale fr FR
Abbildung 36: Eingabe eines Datums bei verschieden eingestellter Default Locale
Lokalisierung von Zeitangaben Bei der Formatierung von Zeitangaben sind mindestens folgende Unterschiede
in der Lokalisierung zu berücksichtigen:
ˆ
ˆ
ˆ
ˆ
ˆ
Trennzeichen zwischen Stunden, Minuten und Sekunden (z. B. :“)
”
Trennzeichen zwischen Sekunden und Sekundenbruchteilen (z. B. .“, ,“)
” ”
Verwendung von 12- oder 24-Stunden-Darstellung
Gängige Symbole für Vor- und Nachmittag bei 12-Stunden-Darstellung (z. B. AM“, a.m.“, A.M.“)
”
”
”
Langnamen und Abkürzungen für Zeitzonen
Zeitangaben können in Java ebenso wie Datumsangaben mit der Klasse SimpleDateFormat lokalisiert werden. Dabei werden aber nur die letzten beiden der oben genannten Punkte berücksichtigt. Außerdem ist die
kleinste formatierbare Zeiteinheit eine Millisekunde, während DICOM die Angabe von Mikrosekunden erlaubt.
Insofern wäre die Lokalisierung von Zeitangaben mit einigem händischem Aufwand verbunden und wurde aus
Zeitgründen in der Diplomarbeit nicht berücksichtigt.
Lokalisierung von dezimalen Festkomma- und Gleitkommazahlen
als Zeichenkette betrachtet aus den folgenden Bestandteilen:
Eine dezimale Gleitkommazahl besteht
ˆ Vorzeichen
ˆ Ganzzahliger Anteil (Ziffern, evtl. führende Nullen), evtl. mit Gruppierungszeichen für Tausender (in
Deutschland: .“)
”
ˆ Dezimaltrennzeichen (in Deutschland: Dezimalkomma)
ˆ Nachkommastellen (Ziffern, evtl. Folgenullen)
Seite 82
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
ˆ Exponententrennzeichen (z. B. E“, e“ oder x10ˆ“)
”
”
”
ˆ Vorzeichen des Exponenten
ˆ Exponent (Ziffern, evtl. führende Nullen)
DICOM lehnt sich für die interne Repräsentation von Gleitkommazahlen (DICOM-Jargon: Value Representa”
tion Decimal String“) an die Definition aus dem FORTRAN 77 Standard an (ANSI X3.9-1978, Kap. 4.4 Real
”
Type“ [ANS78])76 :
ˆ Als Exponententrennzeichen wird E“ verwendet
”
ˆ Die Angabe eines Exponenten ist optional (bei fehlendem Exponenten handelt es sich um eine Festkommazahl bzw. ganze Zahl)
ˆ Sowohl das Vorzeichen der gesamten Zahl als auch das Vorzeichen eines etwaigen Exponenten sind im Fall
positives Vorzeichen“ optional
”
ˆ Die Angabe von Nachkommastellen ist optional, ebenso die Angabe des ganzzahligen Anteils (in diesem
Fall wird ein ganzzahliger Anteil von 0“ angenommen), allerdings dürfen nicht beide Elemente ausgelassen
”
werden
ˆ Bei vorhandenem ganzzahligen Anteil und fehlenden Nachkommastellen ist die Angabe des Dezimaltrennzeichens optional
ˆ Tausender-Gruppierungszeichen und Leerzeichen zwischen den einzelnen Elementen sind nicht erlaubt
Ein benutzerfreundliches Programm sollte eine lokalisierte Darstellung von dezimalen Zahlen bieten und deren
Eingabe in landesüblicher Schreibweise erlauben. Vor allem sollten die landesüblichen Dezimaltrennzeichen
und Exponententrennzeichen verwendet werden. Tausender-Gruppierungszeichen können die Übersichtlichkeit
bei der Darstellung erhöhen, bei der Eingabe von Daten sind sie jedoch eher hinderlich. Java unterscheidet
sogar noch verschiedene Minuszeichen und Symbole für die Null, dies wurde in GENRE jedoch zunächst nicht
berücksichtigt.
(a) Locale de de
(b) Locale en US
(c) Locale fr FR
Abbildung 37: Landesübliche Eingabe und Anzeige von Zahlenwerten
Für die Formatierung von Fest- und Gleitkommazahlen bietet Java die Klasse DecimalFormat im Paket java.text
an. Obwohl diese Klasse sehr funktionsreich und sicherlich leistungsfähig ist, wurde beschlossen, für diese Arbeit
auf ihre Anwendung zu verzichten. Hintergrund sind die oben genannten vielfältigen Optionalitäten der Komponenten sowie führender und folgender Nullen. Der Autor glaubt, dass ein benutzerfreundliches Programm
explizit angegebene positive Vorzeichen ebenso wie überflüssige Nullen und die Position des Dezimaltrennzeichens erhalten sollte, da in verschiedenen Kontexten möglicherweise verschiedene Schreibweisen üblich und
damit übersichtlich sind. Beispielsweise ist es denkbar, dass in einem strukturierten Befundbericht einerseits
Messwerte eines Gerätes abgelegt sind, das mit normalisierten Gleitkommazahl arbeitet, andererseits aber auch
Messwerte eines anderen Gerätes, das technische Notation (also ausschließlich durch drei teilbare Exponenten)
verwendet. Diese Variabilität ist mit festen Zahlenformaten nicht realisierbar.
Abbildung 37 zeigt die Eingabemaske von GENRE für Zahlenwerte. In der Titelzeile wird das Ergebnis der
Eingabe angezeigt. Man beachte, dass überflüssige Leerzeichen ignoriert werden und zur Übersichtlichkeit
Tausender-Trennzeichen hinzugefügt werden.
76 Zur
Diskussion über diese Herkunft siehe auch Thread Decimal Strings and ANSI X3.9“ auf comp.protocols.dicom vom
”
27./28.5.2008,
http://groups.google.com/group/comp.protocols.dicom/browse_thread/thread/8fecff6156cbb544/5b1a7bece6f650af
Seite 83
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
4.3.3.2 Ausblenden von GUI-Elementen
Um die Benutzeroberfläche von GENRE übersichtlicher zu machen, wurde die Möglichkeit geschaffen, nicht
benötigte Elemente durch Mausklick auf Knöpfe ausblenden zu können. In Abbildung 38 sind diese Knöpfe rot
markiert.
Abbildung 38: Knöpfe zum Verbergen von Teilen der GENRE-Benutzeroberfläche
Im linken Teil der GENRE-Benutzeroberfläche finden sich Angaben zum Konzeptnamen des markierten Inhaltselements. Die zum Teil umfänglichen Informationen, wenn ein Konzeptname einer Kontextgruppe entnommen
wurde, sind für nicht-technische Benutzer üblicherweise irrelevant und möglicherweise verwirrend. Daher wurden
diese Informationen in eine sogenannte JXTaskPane verpackt, die sich bei Bedarf auf ihre Überschrift reduzieren
lässt (Abb. 38, 1.). Die GUI-Klasse JXTaskPane wurde der freien Java-Swing-Bibliothek SwingX 0.9.1 entnommen [111].
Im rechten Teil der GENRE-Benutzeroberfläche befindet sich ein Bereich zum Anlegen neuer Knoten. Soll ein
bestehendes DICOM-SR-Dokument nur betrachtet oder nur innerhalb der bestehenden Knoten bearbeitet werden, ist dieser Bereich überflüssig und kann weggeklappt werden, um Platz zu schaffen (Abb. 38, 2.). Hierzu
wurde die in Swing integrierte GUI-Klasse JSplitPane verwendet. Auch der gesamte Informationsbereich zum
Konzeptnamen des aktuell ausgewählten Inhaltselements kann vollständig weggeklappt werden (Abb. 38, 3.).
Dies schafft zugleich Platz auf Monitoren mit geringer Auflösung. Damit sich der interessierte Benutzer trotzdem über den Konzeptnamen informieren kann, wurden die wichtigsten Informationen hierzu auch in Tooltips
integriert.
4.3.4 Einbinden von Bildern aus einem DICOM-Bildarchiv
Ein DICOM-SR-Inhaltselement vom Typ IMAGE“ verweist auf ein Bild über dessen SOP-Class- und SOP”
Instance-UID. Optional kann über ein weiteres Pärchen aus SOP-Class- und SOP-Instance-UID ein zugehöriger
Presentation State und für Multi-Frame-Bilder der gewünschte Frame angegeben werden.
Die Auswahl von Bildern durch die Eingabe von SOP-Class- und SOP-Instance-UID ist nicht benutzerfreundlich
und außerdem fehlerträchtig, da UIDs bis zu 64 Zeichen lang sind und Fehler bei der Eingabe von Zahlen einem
Menschen weniger auffallen als Fehler bei der Eingabe von sinnvollen Wörtern. Es ist naheliegend, die Eingabe
von UIDs durch die Auswahl aus einer Liste verfügbarer Bilder zu ersetzen.
Beim realen Einsatz von DICOM-SR kann davon ausgegangen werden, dass ein DICOM-Server existiert, auf dem
die Bilder des jeweiligen Fachgebiets abgelegt sind und abgefragt werden können. GENRE soll es erlauben, eine
Seite 84
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Liste von Bildern, die bestimmten Suchkriterien genügen, von einem DICOM-Server abzurufen. Aus dieser Liste
kann der Benutzer das gewünschte Bild auswählen. Die SOP-Class und SOP-Instance-UID des ausgewählten
Bildes werden automatisch in das Inhaltselement vom Wertetyp IMAGE“ übernommen.
”
Dieser Abschnitt setzt im Folgenden das in Kapitel 2.5.9 beschriebene Grundwissen über die Benutzung von
DICOM zur Bild-Kommunikation über Computernetzwerke voraus.
4.3.4.1 Wahl eines geeigneten DICOM-Servers
Um die Integration von GENRE in ein professionelles DICOM-Umfeld zu simulieren, wurde ein DICOM-Server
gesucht, der die benötigten Dienste anbietet. Da im Institut für Medizinische Informatik keine Testinstallation
eines professionellen DICOM-Servers läuft, sollte ein kostenloser DICOM-Server lokal auf dem Entwicklungsrechner des Autors installiert werden.
K-PACS V1.5 Zunächst wurde K-PACS77 betrachtet, ein nur in einer Windows-Version erhältliches Programm, das durch eine moderne Benutzeroberfläche und umfangreiche Funktionen bei der Bildanzeige auffiel. Es
musste aber festgestellt werden, dass K-PACS zwar verschiedene DICOM-Netzwerkdienste anbietet (so können
z. B. Bilder auf einem externen DICOM-Server abgelegt werden und es kann in externen Archiven nach Bildern gesucht werden), die für die Aufgabenstellung notwendigen Rollen als C-QUERY-SCP und C-MOVE-SCP
jedoch nicht erfüllen kann.
ConQuest DICOM server 1.4.13 Der ConQuest DICOM server78 (im Folgenden ConQuest“) besitzt eine
”
etwas angestaubte Oberfläche mit einfachem integriertem Bildbetrachter und konzentriert sich vor allem auf
die Server-Funktionalität. ConQuest bringt eine eingebaute dBaseIII-Datenbank mit, arbeitet jedoch auch mit
vielen externen SQL-Datenbanken wie Microsoft SQL-Server oder MySQL zusammen. Eine Linux-Version ist
ebenfalls erhältlich, beinhaltet jedoch keine grafische Oberfläche für die Administration und ist weniger flexibel
bei der Auswahl der externen Datenbank. Nur die Linux-Version ist quelloffen. Ein DICOM-ConformanceStatement liegt bei. Die Dokumentation beschreibt die Installation unter Windows ausführlich und diskutiert,
welche Datenbank für welches Anwendungsszenario passt. Dabei wird deutlich, dass ConQuest auch für die
Verwaltung von vielen Millionen Bildern geeignet ist. Die Aktivität in den Anwenderforen belegt die weite
Verbreitung von ConQuest. Mit einem Speicherverbrauch von wenigen MegaByte eignet sich ConQuest auch
für ältere Rechnersysteme und für Situationen, in denen keine dedizierte Serverhardware zur Verfügung steht.
PacsOne Server Basic Edition version 1.0.0.14 PacsOne79 ist ein DICOM-Server, der Bildarchivierung in
MySQL-Datenbanken ermöglicht und auf Wunsch eine PHP-gestützte Web-Benutzeroberfläche mitbringt, für
deren Betrieb zusätzlich ein Apache-Webserver notwendig ist. Das Conformance-Statement listet eine beeindruckende Zahl an unterstützter SOP-Klassen, sowohl als SCU als auch als SCP. In einer Basic Edition für
Windows ist die Software kostenlos. Allerdings wird diese Version offenbar seit 2005 nicht mehr gepflegt und
setzt unter anderem eine mittlerweile stark veraltete MySQL Version 4.0.x voraus, deren Support im Herbst
2006 auslief und die beim Hersteller nicht mehr erhältlich ist80 .
dcm4chee-2.x DICOM Clinical Data Manager dcm4chee81 ist eine Java-Enterprise-Anwendung, die den
JBoss Application Server voraussetzt und eine Vielzahl an Datenbanken unterstützt. Ein DICOM-ConformanceStatement ist erhältlich und bestätigt die Eignung als C-FIND- und C-MOVE-SCP. Im Gegensatz zu den oben
genannten Lösungen gibt sich dcm4chee nicht nur kostenlos, sondern auch sehr offen, der Quellkode ist in verschiedenen liberalen OpenSource-Lizenzen (u. a. LGPL) erhältlich und selbst das verwendete Datenbankschema
ist ausführlich dokumentiert82 .
77 http://www.k-pacs.de/
78 http://www.xs4all.nl/
~ingenium/dicom.html
79 http://www.pacsone.net/
80 http://downloads.mysql.com/archives.php?p=mysql-4.0
81 http://www.dcm4che.org/confluence/display/ee2/Home
82 http://www.dcm4che.org/confluence/display/ee2/Database+Schema+Diagram
Seite 85
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Fazit Von den untersuchten kostenlosen DICOM-Server-Lösungen erfüllten alle bis auf K-PACS die erforderliche Funktionalität. Ein Einsatz von PacsOne in der kostenlosen Basic Edition“ kommt allerdings selbst für
”
Testzwecke kaum infrage. Selbst wenn man die benötigte MySQL-Version noch auf Seiten von Drittanbietern
findet, ist mit Problemen im Zusammenspiel mit modernerer Software zu rechnen.
dcm4chee wirkt technisch geeignet, gut gepflegt und besticht durch seine Offenheit und Plattformunabhängigkeit.
Allerdings ist die Installation recht aufwändig: JBoss (Downloadgröße ca. 100MB) und eine externe Datenbank
müssen zunächst eingerichtet werden. Da sich ConQuest bezüglich der Systemanforderungen genügsamer gab
und außerdem bei Verwendung der für kleine Bildarchive völlig ausreichenden, mitgelieferten Datenbank keine
zusätzlichen Downloads und Installationen erforderlich machte, wurde schließlich ConQuest als Testumgebung
gewählt.
4.3.4.2 Implementierung
Abbildung 39 stellt vereinfacht die Kommunikation bei der Suche nach Bildern auf einem DICOM-Server
und deren anschließende Übertragung zu GENRE dar. Die fett gedruckten Nachrichten stehen für DICOMKommunikation.
: Benutzer
<<actor>>
: ImageChooserView
<<UI>>
: ConquestServer
: StudyRootQueryInformationModel
Bestätige Suche
<<create>>
performHierarchicalQuery(...)
Anzeige Suchergebnis
C-FIND
OK (FIND)
QueryTreeModel
Auswahl Bild
h : ReceivedOjectHandler
<<create>>
: StorageSOPClassSCPDispatcher
<<create>> (h)
: MoveSOPClassSCU
performHierarchicalMove(...)
<<create>>
C-MOVE
C-STORE
: StorageSOPClassSCP
<<create>> (h)
OK (STORE)
sendReceivedObjectIndication(fileName,...)
showImage(...)
OK (MOVE)
Abbildung 39: Ablauf der Kommunikation mit dem DICOM-Server bei der Auswahl von Bildern
Der Dialog zur Eingabe der Suchkriterien heißt bei GENRE ImageChooserView. Der Benutzer gibt seine Filterkriterien ein und startet mit einem Klick auf die entsprechende Schaltfläche die Suchanfrage an den DICOM-Server. Die Wahl zwischen dem Patient Root“ und Study Root Query/Retrieve Information Model“
”
”
Seite 86
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
(vgl. Kap. 2.5.9) für die Suchanfrage fiel leicht, da das PixelMed DICOM Toolkit nur letzteres unterstützt83
(Klasse StudyRootQueryInformationModel in Paket com.pixelmed.query). Der C-FIND-Befehl wird durch
den Aufruf der Funktion performHierarchicalQuery mit den Suchkriterien als Parameter ausgelöst. Das Suchergebnis wird schließlich in einer Baumstruktur zurückgeliefert und kann zum Beispiel als Tabelle dargestellt
werden. Dabei muss dem Benutzer natürlich so viel Information geboten werden, dass er das gewünschte Bild
identifizieren kann.
Der Benutzer wählt nun das gewünschte Bild aus der Tabelle aus und betätigt eine weitere Schaltfläche, woraufhin das Bild vom DICOM-Server übertragen wird. Die eigentliche Bildübertragung kann wie in Kapitel 2.5.9
geschildert mittels C-MOVE- oder C-GET-Befehl erfolgen. ConQuest unterstützt jedoch keine Anfragen mittels
C-GET (vgl. Conformance Statement). Für die Bildübertragung mittels C-MOVE müssen ConQuest einmalig
IP-Adresse und Port der empfangenden DICOM-Anwendung bekannt gemacht werden. Diese Zuordnung von
Application Entity Titles“ (AET) zu IP-Adressen und Ports lässt sich in der grafischen Benutzeroberfläche
”
von ConQuest bequem erledigen (vgl. Abb. 40, hinzugefügte Zeile mit Pfeil markiert).
Abbildung 40: Zuordnung von Application Entity Titles (AET) zu IP-Adressen und Ports in ConQuest
Da die Übertragung des Bildes asynchron abläuft, muss vor dem Absenden von C-MOVE zunächst eine
Rückruffunktion definiert werden, die nach erfolgreicher Bildübertragung aufgerufen wird. Dafür leitet man
im PixelMed-Toolkit von der abstrakten Oberklasse ReceivedObjectHandler ab. Mit diesem Handler als Parameter wird ein StorageSOPClassSCPDispatcher-Thread erzeugt, der auf einem vorgegebenen Port lauscht
und bei jedem Eintreffen von C-STORE-Kommandos ein Objekt der Klasse StorageSOPClassSCP instantiiert,
das den eigentlichen Empfang übernimmt.
Nach den genannten Vorbereitungen kann der C-MOVE-Befehl schließlich über die Methode performHierarchicalMove im bereits vorhandenen StudyRootQueryInformationModel-Objekt angestoßen werden. Dadurch
wird eine Instanz der Klasse MoveSOPClassSCU erzeugt, die die eigentliche DICOM-Kommunikation übernimmt.
In Kapitel 2.5.9 wurde bereits erläutert, dass ein C-MOVE-Befehl den DICOM-Server dazu veranlasst, ein oder
mehrere Bilder per C-STORE zu versenden. In diesem Fall wird ein einziges Bild angefordert. Der ConquestServer initiiert eine C-STORE-Nachricht an den TCP-Endpunkt, der in der Konfigurationsdatei angegeben
wurde (s. o.). Das Bild wird empfangen, gespeichert und die Rückruffunktion aufgerufen, die an den Konstruktur
des StorageSOPClassSCPDispatcher übergeben wurde. Der C-STORE-Befehl ist damit abgeschlossen, und da
nur eine Datei übertragen wurde, kann auch der C-MOVE-Befehl beendet werden.
Alle genannten Netzwerkklassen finden sich im Paket com.pixelmed.network und sind per JavaDoc gut do83 Das
PixelMed-Toolkit unterstützt jedoch die Erweiterung auf weitere Query-Informationsmodelle durch die abstrakte Oberklasse
QueryInformationModel.
Seite 87
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
kumentiert. Für Testzwecke enhalten die Klassen eine main-Methode, sie können also auch direkt von der
Kommandozeile gestartet werden.
Nur der erste Teil des geschilderten Szenarios, die Definition eines Suchfilters und die Anforderung entsprechender Bilder per C-FIND, wurde in GENRE tatsächlich implementiert. Die Bildübertragung mittels C-MOVE/CSTORE konnte aus Zeitgründen nicht fertiggestellt werden.
4.3.5 Anforderungen an das Java Runtime Environment (JRE)
GENRE benötigt zur Ausführung ein Java Runtime Environment in der Version 6.x. Im Folgenden wird kurz
erläutert, an welchen Stellen Funktionen von Java 6 benötigt werden und wie diese Funktionen unter älteren
Java-Versionen imitiert werden könnten. Anschließend wird evaluiert, für welche Betriebssysteme und HardwarePlattformen Java 6 zur Verfügung steht.
GENRE kann von folgenden mit Java 6 neu eingeführten Funktionen besonders profitieren:
ˆ Starten von Standardanwendungen. GENRE bietet die Möglichkeit, eine DICOM-SR-Datei zur Weitergabe an Systeme, auf denen GENRE nicht zur Verfügung steht, in eine einfache HTML-Darstellung
umzuwandeln (vgl. Kap. 4.3.2.4). Für die Anzeige dieser HTML-Datei, kann über einen entsprechenden
Eintrag im GENRE-Menü der Standard-Webbrowser des jeweiligen Betriebssystems aufgerufen werden.
Java 6 bietet eine einfache Möglichkeit, den Standard-Webbrowser, das Standard-E-Mail-Programm oder
die einer Datei zugeordnete Standardanwendung des jeweiligen Host-Betriebssystems zu starten: Die sogenannte Desktop API“ [80], die über die Klasse Desktop im Paket java.awt angesprochen werden kann.
”
Für frühere Java-Versionen existieren externe Klassen, die diese Aufgabe einigermaßen zufriedenstellend
übernehmen können [13, 90].
ˆ Sortieren und Filtern von Tabellen. Für die Auswahl eines Konzepts aus dem DCMR (Klasse
ConceptChooserView, vgl. Abb. 26 in Kap. 4.1.2.6) bietet GENRE eine komfortable Benutzeroberfläche,
die das Filtern und Sortieren von Einträgen in Tabellen ermöglicht. Seit Java 6 kann man diese Funktionalität komfortabel über die Klasse TableRowSorter im Paket javax.swing.table realisieren. In
früheren Java-Versionen musste für diese Funktionalität auf zusätzliche Klassen wie beispielsweise [72]
zurückgegriffen werden.
ˆ Einbettung von Skriptsprachen. In Kapitel 4.5.3 wird dargestellt, inwiefern GENRE von durch den
Benutzer erstellten Erweiterungen in einer Skriptsprache wie JavaScript profitieren kann. Java 6 bringt
eine API zur Integration von Skriptsprachen in Java mit und legt die notwendige Engine für JavaScript
gleich bei [79, 110]. Für ältere Java-Versionen kann die JavaScript-Engine Rhino“ separat heruntergeladen
”
und integriert werden [9].
ˆ Bessere Integration in Windows Vista. Ältere Java-Versionen haben verschiedene optische und funktionelle Probleme, wenn sie unter Windows Vista laufen. Auch wenn Sun zahlreiche Lösungen für diese
Probleme auch in die Updates für ältere JREs integriert hat, ist doch Java 6 die einzige offizielle JavaVersion für Windows Vista [38].
Java 6 ist Ende 2006 erschienen [44] und wird vom Hersteller Sun für die Betriebssysteme Windows (32 und
64 bit für x86-Architektur), Linux (32 und 64 bit für x86-Architektur) und Solaris (32 und 64 bit für x86Architektur und SPARC-Architektur) angeboten. Für alle anderen Kombinationen aus Betriebssystem und
Hardwarearchitektur ist die Verfügbarkeit von Java 6 problematischer. Beispiele:
ˆ FreeBSD. Aus den Webseiten des offiziellen FreeBSD-Ports für das Java SDK von Sun [31] geht hervor,
dass die aktuellste offizielle Version Java 5 ist, an Java 6 aber bereits gearbeitet wird. In zahlreichen
Foreneinträgen im Internet ist aber nachzulesen, dass Java 6 erfolgreich unter FreeBSD installiert worden
ist.
ˆ Mac OS X. Die offizielle Veröffentlichung der Java-Plattform für Mac OS X übernimmt traditionell die
Firma Apple. Die aktuelle Version Mac OS X 10.5 (Leopard) beinhaltet sowohl das Runtime Environment
als auch das Development Toolkit in der Version 5. Mit großer Verzögerung veröffentlichte Apple im April
2008 ein Softwareupdate, das Java 6 beinhaltet [43]. Dieses benötigt zwingend Mac OS X in der Version
10.5 und einen 64bit Intel-Prozessor (Core 2 Duo, Xeon). Besitzer älterer Apple-Rechner mit PowerPC G4
oder G5 bzw. Core/Core Duo Prozessor (z. B. Mac minis, erste Intel-iMacs, erste MacBooks/MacBook
Pros) müssen bis auf Weiteres auf Java 6 verzichten.
Seite 88
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Zahlreiche Betriebssysteme (z. B. OpenBSD, Fedora) haben Suns JRE und JDK aufgrund von Lizenzfragen
bislang nicht als Binärversion integriert. Nachdem Sun im Juni 2008 unter dem Namen OpenJDK ein vollständig
unter GPL stehendes Java 6 (JRE und JDK) veröffentlicht hat, ist aber zu erwarten, dass sich dieses in der
Open-Source-Welt schnell verbreitet. Derzeit stellt Sun OpenJDK-Binärpakete für Ubuntu 8.04, Fedora 9 sowie
für Red Hat Enterprise Linux 5 und dessen Derivate zur Verfügung [108].
Fazit. Es wird deutlich, dass GENRE nicht zwingend auf Java 6 angewiesen ist, da die in älteren Java-Versionen
fehlenden Funktionalitäten durch Bibliotheken von Drittherstellern nachgerüstet werden könnten. Das Erstellen
einer GENRE-Version für Java 5 oder früher wäre jedoch recht aufwändig und insbesondere schwer zu pflegen, da
neue Versionen der benötigten Bibliotheken möglicherweise ungewünschte Seiteneffekte zeigen können. GENRE
setzt daher trotz anfänglicher Bedenken auf Java 6. Wesentliches Opfer dieser Entscheidung sind die aus JavaSicht vernachlässigten Nutzer älterer Apple-Rechner mit Mac OS X.
4.4 Konzeption eines Eingabeassistenten für strukturierte pathologische Befundberichte
Bisher wurde GENRE als ein generischer DICOM-SR-Editor diskutiert, der den Standard möglichst vollständig
ausschöpft und tiefe Eingriffe in DICOM-SR-Bäume erlaubt. Obwohl bei der Konzeption und Implementierung
viel Arbeit in die Benutzungsfreundlichkeit des Editors investiert wurde (vgl. Kap. 4.3.3), setzt das direkte Bearbeiten des DICOM-SR-Inhaltsbaumes ein Verständnis zahlreicher DICOM-SR-spezifischer Konzepte voraus84 :
ˆ Unterschiede der verschiedenen Dokumentenklassen (Basic/Enhanced/Comprehensive, Key Object Selection,. . . )
ˆ Bedeutung der verschiedenen Typen für Inhaltselemente (CONTAINER, IMAGE, NUM,. . . )
ˆ Bedeutung von Relationen verschiedener Typen (CONTAINS, HAS ACQUISITION CONTEXT, HAS
CONCEPT MODIFIER,. . . )85
ˆ Unterscheidung von By-value- und By-reference-Relationen
ˆ Begriffskodierung in Triplet-Schreibweise (Kodewert, Kodierungsschema, Kodebedeutung“)
”
ˆ Sinn und Aufbau von Kontextgruppen
ˆ Und weitere, siehe Kapitel 2.6
Während GENRE ein bislang einzigartiges Werkzeug für Techniker ist (Erstellung von Testdaten, Erlernen der
DICOM-SR-Grundlagen,...), muss daher angezweifelt werden, dass das System in dieser Fassung von Ärzten,
Pflegepersonal und Schreibkräften akzeptiert wird. Das Erstellen von SR-Inhaltsbäumen im klinischen Routinebetrieb sollte auf einer höheren Abstraktionsebene erfolgen (siehe auch allgemeiner Lösungsansatz in Kap.
3).
In Kapitel 4.4.1 dieser Arbeit soll versucht werden, sich dem Einsatz im Routinebetrieb über einige Anwendungsfälle in der Pathologie zu nähern. Kapitel 4.4.2 diskutiert, wie die Befundberichte einer Fallklasse für die Speicherung im DICOM-SR-Format strukturiert werden können. Kapitel 4.5 schließlich beschreibt
die Implementierung eines für ärztliche Anwender gedachten, flexibel konfigurierbaren Eingabeassistenten als
Brückenschlag zur Routineanwendung.
4.4.1 Beispielhafte Untersuchungsfälle aus der Pathologie
Um die Eignung des GENRE-Systems im pathologischen Alltag zu beurteilen, wurden zunächst im Gespräch mit
Pathologen geeignete Fallklassen diskutiert, für die eine strukturierte Befundberichtsschreibung sinnvollerweise
eingesetzt werden könnte.
Die Idee für die erste Fallklasse, die Untersuchung von Magen-/Darmbiopsaten, stammt von Dr. Andreas Turzynski, einem niedergelassenen Arzt der Gemeinschaftspraxis für Pathologie am Pferdemarkt in Lübeck. Die
84 Vgl.
Bortoluzzi et al.: As opposed to free text, it is far more difficult to build a hierarchical tree structure or graph with content
”
items, each of which having a value type, a chosen relationship with its parent, a concept name chosen from a lexicon, and so
forth.“ [BWM03]
85 Die Bedeutung der Relationstypen ist selbst unter DICOM-Experten umstritten, da sie im DICOM-Standard unpräzise und
widersprüchlich formuliert ist.
Seite 89
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Untersuchung von Magen-/Darmbiopsaten ist die häufigste Untersuchung im niedergelassenen Bereich. Verbesserungen bei der Dokumentation dieser Fallklasse hätten somit ein besonderes, auch wirtschaftliches Gewicht. Kapitel 4.4.1.1 nennt einige Stichworte zur Untersuchung von Magen-/Darmbiopsaten, die während eines
längeren Gespräches mit Dr. Turzynski protokolliert wurden.
Die Idee für die zweite Fallklasse, die Untersuchung von Beckenkamm-Trepanaten bei Verdacht auf Plasmozytom, hatte Oberarzt Dr. Christoph Thorns vom Institut für Pathologie am UK-SH, Standort Lübeck. Laut Dr.
Thorns sind die Befundberichte zu dieser Fragestellung relativ gleichförmig und eignen sich damit möglicherweise
besonders gut für eine strukturierte Dokumentation. Kapitel 4.4.1.2, das ebenfalls aus den Aufzeichnungen eines
längeren Gespräch entstanden ist, beschreibt diese Fallklasse näher. Im darauf folgenden Kapitel 4.4.2 dient sie
als Beispiel.
Neben dem genannten Verdacht auf Plasmozytom wies Herr Dr. Thorns noch auf weitere Fallklassen hin:
ˆ Für zahlreiche Untersuchungsfälle, beispielsweise für die Biopsiediagnostik bei Verdacht auf Magenkarzinom, existieren Leitlinien des Berufsverbandes Deutscher Pathologen (BDP) und der Deutschen Gesellschaft für Pathologie (DGP)86 . Diese Leitlinien sind ein guter Ausgangspunkt für die Planung von Inhalten
und Struktur standardisierter Befundberichte.
ˆ Als Gegenbeispiel für die genannten, gut strukturiert zu erfassenden Fallklassen führte Dr. Thorns die
Angioimmunoblastische Lymphadenopathie (AILD) an. Dies sei ein besonders komplizierter Befund, der
mit großer Wahrscheinlichkeit nur schlecht strukturiert abzubilden sei.
Leider konnte für keine der genannten Fallklassen der Routinebetrieb des GENRE-Systems getestet werden.
Dies hatte vor allem zeitliche Gründe. Eine spätere wissenschaftliche Arbeit, bevorzugt aus der medizinischen
Fakultät, soll diese Lücke schließen.
4.4.1.1 Magen-/Darmbiopsien
Nach Einschätzung von Dr. Turzynski ist die Untersuchung von Magen-/Darmbiopsaten recht einheitlich und
damit eine strukturierte Befundung realisierbar. Gleichzeitig ist die Untersuchung von Magen-/Darmbiopsaten
eine der mengenmäßig wichtigsten – etwa die Hälfte der täglich untersuchten Präparate sind aus diesem Bereich.
Aus den folgenden Fragen, die bei der Befundung eines Magenbiopsats beantwortet werden müssen, ließe sich
eine Struktur für den Befundbericht ableiten:
1. Welches Gewebe liegt vor?
2. Wie tief ist das Biopsat gemacht worden?
3. Wo ist die Lokalisation (Antrum, Korpus, Fundus, Cardia,...)?
4. Welche Art von Drüsenkörper liegt vor (muzinös, korpusspezifisch, gemischt)?
5. Sind die Drüsenkörper voll entwickelt oder nicht?
6. Wie lang sind die Foveolen?
7. Für das Graduieren: Wie groß ist die Dichte des lymphoplasmazellulären Infiltrats (Chronizität der Gastritis)?
8. Wie hoch ist die Aktivität der Gastritis (Dichte des granulozytären Infiltrats, Übergreifen auf das Epithel)?
4.4.1.2 Untersuchung von Beckenkamm-Trepanaten bei Verdacht auf Plasmozytom
Medizinischer Hintergrund Das Plasmozytom (synonym: multiples Myelom) ist eine bösartige Tumorerkrankung aus der Gruppe der Non-Hodgkin-Lymphome, die durch eine Plasmazellvermehrung ( Plasmozytose“)
”
86 Die
Leitlinien der meisten medizinischen Fachdisziplinen werden von der Arbeitsgemeinschaft der Wissenschaftlichen Medizinischen Fachgesellschaften (AMWF [7]) zusammengetragen. Ausgerechnet für die Pathologie gibt es dort jedoch keine gültige
Leitlinie.
Seite 90
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
an zumeist zahlreichen Herden im Knochenmark charakterisiert ist87 . Die Plasmozytose geht dabei von einem
einzigen, entarteten Zellklon aus ( monoklonal“). Ein weiteres Kennzeichen des Plasmozytoms ist die Produk”
tion von krankhaften Immunglobulinen ohne Antikörperfunktion. In späteren Stadien des Plasmozytoms kann
es zu Knochendefekten, Hyperkalziämie und Niereninsuffizienz kommen. Ein Ausschwemmung der krankhaften
Plasmazellen in das Blut ist möglich (Plasmazellenleukämie). Die Ursache für das Plasmozytom ist weitgehend
ungeklärt. Besonders häufig tritt es bei Männern jenseits des 50. Lebensjahres auf. Die Prognose für betroffene
Patienten ist schlecht. [Psc98, 23, SM06]
Die Vorgehensweise zur Diagnostik des Plasmozytoms ist nicht in klinischen Leitlinien standardisiert, es gibt
jedoch klar definierte diagnostische Kriterien, die eine Vorgehensweise vorzeichnen [DHM+06].
Ausgangssituation Das Institut für Pathologie am UK-SH erhält (typischerweise vom niedergelassenen Hämatoonkologen oder einer entsprechenden stationären Einrichtung) ein sogenanntes Trepanat“ (synonym: Stanze),
”
eine Knochenmarkbiopsie, die mit einem chirurgischen Instrument unter Lokalanästhesie aus dem Beckenkamm
des Patienten herausgestanzt wird. Das Präparat wird entsprechend den in Kapitel 2.1 beschriebenen Schritten
vorbereitet und vom Pathologen unter dem Mikroskop untersucht (vgl. Abb. 41).
Abbildung 41: Plasmozytomzellen mit charakteristischen, exzentrisch gelegenen Zellkernen. [HF97]
Untersuchung Die Untersuchung eines Beckenkamm-Trepanats ist ein vergleichsweise klar strukturierter Prozess, der aus den folgenden Schritten besteht:
1. Bewertung des Materials. Zunächst muss die Frage beantwortet werden, ob Quantität und Qualität
des Materials für einen Befund ausreichend sind. Beispielsweise wird überprüft, ob das Trepanat lang
genug, nicht zu stark zerbröckelt und nicht zu stark komprimiert ist.
2. Knochenbälkchen. Im nächsten Schritt werden die Knochenbälkchen (synonym: Trabekelknochen) quantitativ (z. B. viele, mittel, wenige) und qualitativ (z. B. breit, schmal) bewertet.
3. Markräume und Fettzellen. Es wird der Zellgehalt der Markräume angegeben (Vergrößerungsstufe:
z. B. 40x).
4. Vorläuferzellen der Blutbildung (synonym: haematopoetische Progenitorzellen). Vorläuferzellen
werden nach Quantität und topografischer Verteilung begutachtet. Dabei werden die drei wesentlichen
Komponenten (Granulopoese, Erythropoese und Megakaryopoese) gesondert betrachtet.
5. Pathologische Veränderungen. Zu den pathologischen Veränderungen zählen beispielsweise ungewöhnliche Verhältnisse in der Anzahl der Zelltypen oder veränderte Zellen. Im Fall des Plasmozytoms ist die Zahl
der Plasmazellen stark erhöht; üblicherweise sollte sie unter 5% liegen. Für diesen Untersuchungsschritt
sind mitunter starke Vergrößerungen (z. B. 400x) vonnöten.
87 Eine
gut verständliche, ausführliche Beschreibung des Plasmozytoms findet sich beispielsweise in [ERS91].
Seite 91
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
In Schritt 3 und 4 werden also gesunde Zellen, in Schritt 5 pathologische Veränderungen beschrieben. Sind die
pathologischen Veränderungen besonders augenfällig, wird Schritt 5 häufig vorverlegt.
Häufig ist der Befund nach Abarbeitung der genannten Schritte bereits fertig. Ansonsten folgen dem Verdacht
entsprechende Spezialuntersuchungen. Zwei Spezialfärbungen, die im Institut für Pathologie am UK-SH eigentlich immer durchgeführt werden, sind:
ˆ Gomori-Färbung (Versilberung). Mit dieser Färbung werden Gitterfasern (synonym: Retikulin) sichtbar gemacht (pathologisch: viele Fasern).
ˆ Berliner-Blau-Färbung. Diese Färbung markiert Eisen in Siderophagen (Speichereisen; pathologisch:
zu viel oder zu wenig Eisen).
Bei Verdacht auf Plasmozytom kommen unter anderem folgende Spezialfärbungen zum Einsatz:
ˆ CD38-Färbung. Markiert Plasmazellen.
ˆ κ- und λ-Färbung. Macht Leichtketten der Immunglobuline (κ- und λ-Typ) sichtbar. Pathologisch ist
eine deutlich vermehrte Produktion nur eines Leichtkettentyps.
ˆ Gelegentlich CD20, CD56 u. a. Weisen häufig auf bösartige Plasmazellen mit Expression atypischer
Oberflächenmarker hin.
Neben der Knochenstanze werden bei Verdacht auf Plasmozytom auch Knochenmarksausstriche untersucht.
Da dies aber typischerweise auch vom niedergelassenen Arzt erledigt werden kann (und die Befundkomplexität
erheblich erhöht), sollen Ausstriche in dieser Arbeit unberücksichtigt bleiben.
Endergebnis des Befunds ist entweder eine mit ICD-O [24] kodierte Diagnose oder – wenn noch keine klare
Diagnose gestellt werden konnte – ein Vorschlag für weitere Untersuchungen.
4.4.2 Abbildung der strukturierten Eingaben auf DICOM-SR
Die Struktur der bisher am UK-SH Standort Lübeck in der Pathologie verwendeten Befundberichte wurde in
Abschnitt 2.4.5 vorgestellt. Zunächst soll überlegt werden, wie der Textkörper eines solchen Berichts auf DICOMSR-Strukturen abgebildet werden kann. Anschließend wird detaillierter auf einzelne Elemente der resultierenden
Struktur eingegangen.
4.4.2.1 Grad der Strukturierung
Anhand eines realen, anonymisierten Befundberichts aus dem Institut für Pathologie (Abb. 42) soll exemplarisch
dargestellt werden, wie die Inhalte strukturiert werden könnten. Dabei wird zunächst auf den Briefkopf mit
Angaben zum Einweisenden Arzt, dem Patienten und den untersuchenden Ärzten verzichtet.
DICOM-SR ist sehr flexibel, was den Grad der Strukturierung der Dokument-Instanzen angeht. Das einfachste
denkbare DICOM-SR-Dokument besteht aus zwei Content Items: Einem Wurzelknoten mit Wertetyp Contai”
ner“, dessen Wert die Überschrift des Dokuments darstellt, sowie einem einzigen über die Relation CONTAINS“
”
angebundenen Inhaltsknoten, der den Textkörper repräsentiert (vgl. Abb. 43).
Der nächste denkbare Stukturierungsschritt ist die Unterteilung des Textes des Befundberichts in die durch die
Überschriften gegebenen Abschnitte. Jeder Abschnitt ist wiederum ein Content Item vom Typ Text“ (vgl. Abb.
”
44). Jedes Text-Content-Item hat verpflichtend einen Konzeptnamen, der seinen Zweck erläutern soll. Dieser
Konzeptname kann als Absatzüberschrift aufgefasst werden. Dies ist jedoch nicht vorgeschrieben, so dass man
sich nicht darauf verlassen kann, ob bzw. wie Betrachterprogramme für DICOM-SR-Dateien den Konzeptnamen
anzeigen.
Seite 92
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 42: Textkörper eines Befundberichts aus dem Institut für Pathologie
Seite 93
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 43: Triviale Strukturierung eines Befundberichts in DICOM-SR mit GENRE
Abbildung 44: Strukturierung eines Befundberichts in einzelne Abschnitte
Seite 94
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Möchte man garantieren, dass Überschriften auch als solche aufgefasst werden, muss man eine zusätzliche
Ebene aus Container“-Content-Items einziehen (vgl. Abb. 45). Diese Struktur wird von David Clunie in sei”
nem DICOM-SR-Buch [Clu00] als übliches Muster“ erwähnt (Kapitel 4, Contains Relationship Type“). Im
”
”
DICOM-SR-Standard ist festgelegt, dass der Konzeptname eines Containers maschinell als Überschrift inter88
pretiert werden muss .
Abbildung 45: Container Content Items als Abschnittsüberschriften
Es erscheint sinnvoll, Aufzählungen (vgl. Abschnitt Material“) und vom Arzt durch Absätze unterteilte Text”
Elemente weiter zu unterteilen. Messwerte sollten als Inhaltselement vom Typ Num“ ausgedrückt werden.
”
Elemente, die auf ein kontrolliertes Vokabular, eine Terminologie oder eine Klassifikation verweisen, sollten den
Typ Code“ tragen. Abbildung 46 zeigt die so erzielte Strukturierung.
”
Die Strukturierung und Kodierung von Befundberichten lässt sich bis zur Wortebene oder gar Teilwortebene
weiter treiben. Für die Kodierung einzelner Begriffe bietet sich beispielsweise die SNOMED-Terminologie an
(vgl. [Klo08] und Anhang A, Tab. 10). In dieser Arbeit wird dieser Ansatz aus Zeitgründen jedoch nicht weiter
verfolgt.
Mit fortschreitender Strukturierung des Befundberichts nimmt typischerweise der menschliche Aufwand für
die Erstellung zu. Eine Unterstützung der strukturierten Eingabe durch den Rechner wird erforderlich. Wie
diese Unterstützung aussehen könnte, wurde in Kapitel 2.4.4 vorgestellt. In Kapitel 4.5 wird die prototypische
Implementierung solcher Konzepte beschrieben.
88 Es
sind allerdings auch Container ohne Konzeptnamen erlaubt, die einen semantischen Zusammenhang ohne sinnvolle Überschrift
ausdrücken.
Seite 95
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Abbildung 46: Messwerte und kodierte Elemente zur weiteren Strukturierung
4.4.2.2 Einzelne Elemente des DICOM-SR-Berichts näher betrachtet
Die DICOM-SR Befundberichte sollen den bisher im Institut für Pathologie am UK-SH gebräuchlichen Befundberichten ähneln und gleichzeitig möglichst gut internationalen Standards genügen.
Überschrift des Befundberichts Im DCMR gibt es bereits Kontextgruppen für Überschriften von Befundberichten. Dies sind im Einzelnen:
ˆ Kontextgruppe 3400: Procedure Log Titles (nur ein Eintrag Cath Lab Procedure Log“, daher hier un”
brauchbar)
ˆ Kontextgruppe 7000: Diagnostic Imaging Report Document Titles (Ausschnitt aus Kontextgruppe 7020)
ˆ Kontextgruppe 7010: Key Object Selection Document Title (speziell für den DICOM-Standard entworfen)
ˆ Kontextgruppe 7020: Document Titles
Wie in Kapitel 4.1.2.5 beschrieben, verweist die Kontextgruppe 7020 auf alle in den LOINC enthaltenen Dokumentenüberschriften. Zwei Konzepte scheinen dabei besonders geeignet:
ˆ LOINC 11526-1 Pathology study report und
ˆ LOINC 11529-5 Surgical pathology study report.
Letzteres wird im Implementierungsleitfaden zur Arztbriefschreibung mit HL7-CDA [VHi06] mit der deutschen
Übersetzung Pathologischer Bericht“ empfohlen und soll daher im Folgenden als Dokumententitel verwendet
”
werden. Es sei darauf hingewiesen, dass der Standard HL7 V2.5 ebenfalls einen Dokumententyp Surgical
”
Pathology“ (SP) vorschlägt, vgl. User-defined Table 0270 – Document Type“ in [ISO08].
”
Seite 96
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Zwischenüberschriften (vgl. Abb. 44) Wie in Kapitel 2.4.5 beschrieben, verwendet das Institut für Pathologie am UK-SH Standort Lübeck die Zwischenüberschriften Klinische Diagnose/Fragestellung“, Eingesandtes
”
”
Material“, Makroskopischer Befund“, Mikroskopischer Befund“, Begutachtung“ und Kommentar“ zur Glie”
”
”
”
derung eines Befundberichts.
Die Auswahl an Zwischenüberschriften im DCMR ist unbefriedigend. Kontextgruppe 6052 Breast Imaging
”
Report section title“ beinhaltet elf Konzepte, von denen einige allgemeiner verwendet werden können. Sie alle
stammen jedoch aus dem Kodierungsschema DCM, wurden also speziell für den DICOM-Standard erfunden“
”
und sind in keinem allgemeineren Standard zu finden. Am geeignetesten für pathologische Befundschreibung
wirken die Konzepte:
ˆ DCM 121070 Findings oder DCM 121072 Impressions für die Abschnitte Makroskopischer Befund“ bzw.
”
Mikroskopischer Befund“
”
ˆ DCM 121076 Conclusions, DCM 121074 Recommendations oder DCM 111413 Overall Assessment für
den Abschnitt Begutachtung“
”
ˆ DCM 121078 Addendum für den Abschnitt Kommentar“
”
In SNOMED finden sich einige Begriffe, die für die Kodierung der genannten Überschriften einigermaßen geeignet
scheinen (vgl. Anhang A, Tabelle 9).
Der Implementierungsleitfaden zur Arztbriefschreibung mit HL7-CDA [VHi06] listet in Kapitel 6.3 Zwischenüberschriften für die allgemeinen Kategorien einer medizinischen Dokumentation“. Diese sind auf den klinischen
”
Bereich zugeschnitten und für die Pathologie nahezu unbrauchbar.
Für die HL7-basierte Kommunikation relevanter Indikatoren zwischen klinischen Instituten und Krebsregistern
wurde ein besonderer Satz LOINC-Kodes entwickelt, dem die Klasse TUMRRGT“ (tumor registry) zugewie”
sen wurde (vgl. Kap. 5 im LOINC-Handbuch [95], dort mit Tippfehler89 ). Diese Überschriften scheinen gut
zugeschnitten auf die Lübecker Verhältnisse. Eine eigene Klasse PATH“ (pathology) existiert zwar ebenfalls
”
im LOINC, diese enthält jedoch keine geeigneten Kodes für Zwischenüberschriften.
Verschlüsselung von Abschnitten und Begriffen innerhalb von Freitext Alle betrachteten Quellen bieten
Kodes zur Kodierung von Abschnitten oder einzelnen Begriffen innerhalb von Freitext an.
Beispielsweise empfiehlt die oben genannte CDA-Leitlinie die Kodes LOINC 29548-5 Diagnose (Text) bzw.
29308-4 Diagnose (Codiert) zur Auszeichnung von Diagnosen.
In der LOINC-Datenbank finden sich zudem in der Klasse PATH“ bzw. deren Unterklassen PATH.PROTO”
”
COLS.BRST“ (breast), ...GENER“ (general), ...PROST“ (prostate) und ...SKIN“ zahlreiche Kodes für nomi”
”
”
nale (z. B. 10760-7 Iron.microscopic observation;Gomori stain“) oder ordinale (z. B. 49469-0 CD33 Ag;Immune
”
”
stain“) Untersuchungsergebnisse, aber auch Kodes für Maßangaben (z. B. 9804-6 Weight“, 33723-8 Specimen
”
”
length“ oder 14228-1 Estrogen receptor/100 cells“).
”
Im DICOM-Standard finden sich neben den oben genannten Zwischenüberschriften weitere Gliederungselemente
( Finding“, Conclusion“ etc.), mit denen einzelne Abschnitte unter der jeweiligen Überschrift kodiert werden
”
”
können (vgl. CID 3419 Findings Titles“ und 7002 Diagnostic Imaging Report Elements“ bzw. spezieller CID
”
”
6053 Breast Imaging Report Elements“). Daneben bietet das DCMR einen reichhaltigen Fundus an Konzepten
”
für die Verschlüsselung von einzelnen Begriffen. Es stehen zahlreiche allgemeine Kontextgruppen (z. B. CID 4
Anatomic Region“, 244 Laterality“, 271 Observation Subject Class“) sowie fachrichtungsspezifische Kontext”
”
”
gruppen zur Verfügung. Schwerpunkte gibt es im Bereich von EKG-Untersuchungen, Echokardiografie, Herzkatheteruntersuchungen, kardiovaskulären Untersuchungen (Supp 97), Mammografie-CAD, Thoraxröntgen-CAD
und Ophtalmologie (Supp 91, 110, 130).
Neben den genannten Möglichkeiten bietet sich für die Verschlüsselung einzelner Begriffe am ehesten SNOMED
an. Anhang A listet einige Kodes speziell für den Anwendungsfall Untersuchung von Beckenkammtrepanaten
”
bei Verdacht auf Plasmozytom“ auf.
89 Auf
Nachfrage sicherte eine Mitarbeiterin des Regenstrief Institute am 29.5.2008 zu, dass dieser Fehler in der nächsten Ausgabe
des LOINC-Handbuchs korrigiert wird.
Seite 97
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Kode
22636-5
COMPONENT
Path report.relevant Hx
22633-2
Path report.site of origin
22634-0
Path report.gross observation
22635-7
Path report.microscopic observation
33746-9
22640-7
Pathologic findings
Path report.staging evidence
22637-3
Path report.final diagnosis
22638-1
Path report.comments
22034-3
Pathology report.total
22639-9
Path report.supplemental reports
COMMENT
Relevant clinical information, generally stating the patient’s past history of cancer, pre-operative diagnosis, and/or
the reason the specimen was collected...
Describes the site (s) and laterality of the specimen (s). If
there is more than one specimen included on the pathology
report, each is generally assigned an identifying letter or
numeral...
A physical desc. of gross appear. of specimen (source, size,
color, unusual features, location of visible lesion, margins,
markings placed by surgeon) & labeling scheme used by
pathologist for assigning portions of specimen to blocks or
cassettes...
Findings and description of the presence or absence of disease in each section of the specimen(s). Generally include
the types of tissues, cells, or mitotic activity observed...
–
Information to aid in assigning a stage to each cancer. Commonly includes a discussion of tumor size and spread, lymph
node involvement, metastasis, and pathologic AJCC stage...
Summarizes the microscopic findings for each specimen examined. Confirms or denies gross findings of malignancy,
given the histologic type of the cancer and in some instances the grade...
Additional comments from the pathologist regarding situations such as possible source of the metastases, comparison
to previous specimens, need for additional surgery or specimens, and usefulness of additional stain/examinations, if
applicable...
Text area for manual documentation of information from
cytology and histopathology reports...
Info attached to report, generally after original issued.
Includes subsequent testing/stains, comparision with previous specimens, 2nd opinions from other pathologists or
labs, or a change in diagnosis resulting from re-examining
or re-sampling specimen.
Tabelle 8: Überschriften aus der LOINC-Datenbank für Meldungen an Krebsregister (Auswahl)
Seite 98
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
4.5 Implementierung eines Eingabeassistenten für strukturierte
Pathologie-Befundberichte
Aufbauend auf den Grundlagen zur strukturierten und standardisierten Dokumentation (Kapitel 2.4) sowie den
Betrachtungen zu konkreten Anwendungsfällen der Pathologie im vorhergehenden Kapitel wurde ein Eingabeassistent für strukturierte Pathologie-Befundberichte implementiert. Der Assistent orientiert sich stark am
kommerziellen Programm Clinic WinData der Firma E&L [28], welches das Erstellen strukturierter Befundberichte für verschiedene medizinische Disziplinen anbietet und auch im UK-SH eingesetzt wird. Clinic Windata
bietet kein Programmmodul für die Pathologie an und ermöglicht auch keine Speicherung des strukturierten
Befundberichts in Standardformaten wie HL7-CDA90 oder DICOM-SR.
4.5.1 Strukturierte Formulare
Abbildung 47(a) zeigt beispielhaft ein Formular aus Clinic WinData für Befundberichte in der Gastroskopie.
Alle grau hinterlegten Eingabefelder zeigen bei Aktivierung per Doppelklick einen für den jeweiligen Kontext
geeigneten Eingabeassistenten an. Beispielsweise ermöglicht der Eingabeassistent des Feldes zugew. von“ die
”
Auswahl eines einweisenden Arztes aus einer Adressdatenbank und der Assistent des Feldes Gerät“ eine Aus”
wahl an Gastroskopen.
Besonders interessant sind Eingabefelder mit rosa hinterlegtem Label. An dieser Stelle kommt in klassischen
Befundberichten Freitext zum Einsatz. Werden stattdessen die von Clinic Windata angebotenen Eingabeassistenten verwendet, so wird direkt bei der Eingabe Information für die rot umrahmten Felder abgeleitet. Im
Idealfall erfolgt das Ausfüllen der rot umrahmten Felder daher vollkommen automatisch, was die Erstellung des
Befundberichts beschleunigt.
Für diese Arbeit wurde ein einfaches Befundungsformular für pathologische Untersuchungen prototypisch in Java
implementiert (vgl. Abb. 47(b)). Über die Auswahlliste ganz oben im Dialog kann der passende Untersuchungstyp ausgewählt werden. Jeder Hauptüberschrift eines Pathologie-Befundberichts ist ein Textfeld zugeordnet.
Wie beim Vorbild Clinic WinData öffnet ein Doppelklick auf die Freitextfelder einen geeigneten Assistenten für
die strukturierte Eingabe. Auf Felder für Patientendaten, einweisenden Arzt, Gutachter etc. wurde aus Zeitgründen verzichtet. Bei Betätigung der linken Schaltfläche wird ein entsprechender DICOM-SR-Inhaltsbaum
erzeugt und in GENRE geöffnet. Dort kann der Baum manipuliert und schließlich gespeichert werden.
4.5.2 Grammatikgeführte strukturierte Eingabe in Clinic WinData
Für die strukturierte Eingabe natürlicher Sprache verwendet E&L Clinic WinData einen Ansatz, bei dem eine
(in der Regel kontextsensitive) Grammatik abgearbeitet wird91 . Die Grammatiken sind als Klartext abgelegt
und haben ein leicht verständliches Format. Dadurch können sie vom Benutzer schnell an die eigenen Bedürfnisse
angepasst werden. Ein Ausschnitt aus einer Grammatik sieht beispielsweise so aus:
Polyp(en) ::{Polypanzahl}
...
{Polypanzahl}
einzeln
::{Etagen} zeigt sich ein {Form_Polyp}{Oberfläche} Polyp mit einer Größe von ...#
multipel ::{Etagen} zeigen sich {Anzahl_Polyp} Polypen mit einer Größe von {Zahl_mm} ...#
...
Syntax Das genannte Fragment der Grammatik stellt drei Produktionsregeln dar. Produktionsregeln sind zu
Blöcken mit einer gemeinsamen Prämisse zusammengefasst, die den betreffenden Zeilen vorangestellt wird (hier
z. B. {Polypanzahl}). Die Erweiterung der Prämisse (im Folgenden: Kontext“) und die Konklusion werden
”
”
90 In
einer früheren Abschlussarbeit am IMI Lübeck wurde das Konzept von Clinic Windata jedoch bereits erfolgreich für die
Erzeugung von HL7-CDA-Dokumenten verwendet [Bec06].
91 Der Ansatz, Dokumente durch das Abarbeiten einer Grammatik zu erzeugen, ist in der Medizininformatik nicht neu. Friedrich
Wingert beschrieb beispielsweise schon 1979 eine derartige automatische Arztbriefschreibung“ [Win79].
”
Seite 99
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
(a) E&L Clinic WinData. Die rot markierten Felder des Befundungsformulars werden
durch sog. Makros“ automatisch gefüllt, können aber auch manuell verändert werden.
”
(b) GENRE. Prototyp eines Befundungsformulars für pathologische
Untersuchungen
Abbildung 47: Befundungsformulare: Original und Nachbau
Seite 100
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
durch einen doppelten Doppelpunkt ( ::“) getrennt. Zeichenketten in geschweiften Klammern sind Nichttermi”
nalsymbole. Gleiches gilt für den nicht in geschweiften Klammern stehenden Kontext. In eckigen Klammern
eingeschlossene Zeichenketten sind Verweise auf sogenannte Makros“ (s. u.). Ein Startsymbol gibt es nicht,
”
stattdessen beginnen Grammatiken bei E&L immer mit einer Gruppe von Produktionsregeln ohne gemeinsa”
me“ Prämisse am Dateianfang.
Die Konklusion beginnt mit dem ersten Zeichen nach dem doppelten Doppelpunkt und endet mit der Zeilenschaltung, etwaige Leerzeichen werden nicht ignoriert. Sind Kontext und Konklusion zeichengleich, so können
der doppelte Doppelpunkt und die Konklusion weggelassen werden. Zeilenumbrüche werden durch das Doppelkreuz ( #“) dargestellt. Zeilen, die nur ein Minuszeichen -“ enthalten, werden als Trennstrich zwischen
”
”
Gruppen von Produktionsregeln interpretiert.
Makros Unter Makros versteht Clinic WinData kurze, ausführbare Skripte, die Text oder Kodes zu den in
Abbildung 47(a) rot umrahmten Textfeldern hinzufügen. Diese Skripte werden in Visual Basic geschrieben.
Clinic WinData bringt einen eigenen Visual Basic Editor und Interpreter mit, so dass Makros ebenso wie die
Grammatiken vom Benutzer an die eigenen Bedürfnisse angepasst werden können.
Ablauf der Eingabe Abbildung 48(a) verdeutlicht den Ablauf der Eingabe. Im oberen Bereich des Dialogs
wird das aktuell produzierte Wort der Grammatik angezeigt.
Das erste Nichtterminal wird hervorgehoben und als gemeinsame Prämisse aufgefasst. Enthält die Grammatik
keine Produktionsregel für das Nichtterminal, so erhält der Benutzer die Möglichkeit, die Grammatik entsprechend zu bearbeiten. Anderenfalls wird dem Benutzer im mittleren Bereich des Dialogs eine Liste mit
allen Kontexten zum markierten Nichtterminal angezeigt. Nach Anklicken des gewünschten Kontextes wird die
Prämisse durch die Konklusion ersetzt. Enthält die Konklusion Makros, so werden diese ausgeführt und die
Symbole für die Makro-Aufrufe aus der Konklusion entfernt. Klickt der Benutzer auf Eingabe überspringen”,
”
so wird das markierte Nichtterminal durch das leere Wort ersetzt und bei direkt auf das Nichtterminal folgendem Satzzeichen gegebenenfalls ein Leerzeichenausgleich vorgenommen. Befinden sich im aktuellen Wort nur
noch Terminalsymbole, so wird das entstandene Wort in das untere Textfeld hinzugefügt und das Abarbeiten
der Grammatik beginnt von vorne. Mit Klicken auf OK“ wird der Text aus dem unteren Textfeld in das
”
Befundungsformular übernommen.
Eine Sonderstellung nimmt das Nichtterminal {...}“ ein. Trifft die Grammatik-Engine von Clinic WinData auf
”
dieses Symbol, so wird der Benutzer zu einer freien Eingabe aufgefordert.
4.5.3 Eigene Implementierung einer grammatikgeführten, strukturierten Eingabe
Es wurde ein Eingabedialog in Java implementiert, der dem Dialog von Clinic WinData sowohl optisch als auch
von der Funktion her ähnelt (Abb. 48(b)). Da die verwendeten Grammatiken syntaxkompatibel zu denen von
Clinic WinData sind, steht bereits ein großer Fundus vorgefertigter Grammatiken zur Verfügung. Grammatiken
können vom Programm aus in einem einfachen Editor bearbeitet werden. Das Überspringen von Eingabeschritten wurde ebenso implementiert wie das Rückgängigmachen der letzten Eingabe. Unbekannte Nichtterminale
und Makros werden ignoriert. Auf die etwas verwirrende Aufteilung des Dialogs in zwei Textfelder wurde verzichtet.
Implementierung von Makros Wie oben aufgeführt, wurde auf die Implementierung von Makros verzichtet.
Die Idee, neben der reinen Texterzeugung aus der Grammatik weitergehende Funktionen anzustoßen, die auch
noch einfach von Benutzern angepasst werden können, ist jedoch eine wesentliche Stärke des E&L-Ansatzes.
Ein paar konzeptionelle Gedanken seien daher im Folgenden geschildert.
Ein Einsatz der kommerziellen Visual-Basic-Engine Sax Basic Engine“, die in Clinic WinData verwendet wird,
”
kommt für GENRE nicht infrage. Erstens widerspräche dies dem Gedanken freier Software, zweitens scheint
der Hersteller diese Engine nicht mehr zu vertreiben und drittens ist fraglich, ob das Zusammenspiel von Visual
Basic und Java funktioniert.
Eine Lösung sieht der Autor in der mit Java 6 eingeführten API zur Integration von Skriptsprachen [79, 110].
Seite 101
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
(a) E&L Clinic WinData
(b) für Diplomarbeit nachgebaut
Abbildung 48: Dialoge zur grammatikgestützten, strukturierten Eingabe
Über die API lassen sich Java-Objekte als Parameter an Skriptmethoden übergeben oder auch von Skriptsprachen aus neu erzeugen. Die notwendige Engine für die Skriptsprache JavaScript legt Sun gleich bei. Eine
Sammlung weiterer Implementierungen von Skriptsprachen, die über die neu geschaffene Scripting-API angesprochen werden können, bietet das Projekt scripting“ [109].
”
Wenn man man für das Skripting auf JavaScript setzt, kann man auf weitere Bibliotheken verzichten. Für
das Editieren von Javascript innerhalb der Eclipse-Entwicklungsumgebung bietet sich das Plugin JSEclipse
an. Die Installation dieses Plugins wird unter [2] beschrieben. Ansonsten könnte für Java-Programmierer die
Skriptsprache BeanShell [75] eine interessant Wahl sein, da BeanShell die Standardsyntax von Java vollständig
unterstützt.
Prinzipiell zu erwartende Probleme Das skriptgesteuerte Erzeugen von DICOM-SR-Dokumenten ist komplizierter als der Ansatz von E&L. Bei Clinic WinData werden Kodes zu einer hierarchisch flachen Liste hinzugefügt. Die Reihenfolge der Kodes in der Liste spielt prinzipiell keine Rolle, neue Kodes können immer am Ende
der Liste angehängt werden.
Das Hinzufügen zu einem DICOM-SR-Baum ist ungleich schwieriger. Hier muss stets der korrekte Vaterknoten
bekannt sein, der sich während der Eingabe vielfach ändern kann. Weil die Reihenfolge der Inhaltselemente
in DICOM-SR semantisch relevant ist, muss man außerdem eine Variable mitführen, als wievieltes Kind des
Vaterknotens ein neuer Knoten eingefügt werden soll.
Schließlich muss der Benutzer mit den 14 derzeit verwendeten Datentypen sowie den sieben Relationstypen für
DICOM-SR-Inhaltselemente vertraut sein, wenn er in die Erzeugung des DICOM-SR-Baumes eingreifen will.
Insgesamt wird die Bearbeitung von Makros daher einen größeren Einarbeitungsaufwand und bessere Programmierkenntnisse erfordern als im Fall von Clinic WinData.
4.5.4 Integration in GENRE
Wie bereits in Kapitel 4.5.1 und 4.5.3 erwähnt, wurden für das Befundformular und den grammatikgeführten
Eingabeassistenten wie schon beim GENRE-Kernsystem Java verwendet. Das erleichterte die Integration in das
Seite 102
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
bestehende System.
Um auch im Bereich der anwenderfreundlichen Formulare und Eingabeassistenten die große Flexibilität von
GENRE zu erhalten, wurde bei der Programmierung stark auf Erweiterbarkeit geachtet. Ein Formular besteht
aus genau einer Java-Klasse, die von der abstrakten Oberklasse wizards.AbstractWizard erbt. Die Namen
dieser Klassen werden in der Konfigurationsdatei GENRE.ini angegeben. Beim Start von GENRE wird versucht,
die angegebenen Klassen mit Class.forName(...) dynamisch zu instantiieren. Falls dieser Versuch erfolgreich
ist, registrieren sich die Formular-Klassen mit ihrem lokalisierten Namen beim Dialog zum Erzeugen neuer
Befundberichte (vgl. Abb. 49). Dieser Plugin-Mechanismus entspricht der Vorgehensweise bei der Verwendung
von JDBC-Treibern und sollte Java-Programmierern daher vertraut sein.
Abbildung 49: Anlegen eines neuen Befundberichts mit Liste der verfügbaren Eingabeassistenten
Um ebenso wie das GENRE-Kernsystem einen internationalen Benutzerkreis anzusprechen, wurde auch das
prototypisch erstellte Formular für pathologische Befundberichte komplett internationalisiert und lokalisiert.
Im Falle des grammatikgeführten Eingabeassistenten muss natürlich nicht nur die grafische Benutzeroberfläche
sondern vor allem die zugrunde liegende Grammatik in mehrere Sprachen übersetzt werden.
4.6 Anwendung des GENRE-Systems in der Pathologie
In einem Gespräch mit Medieningenieur Harald Hatje und den Oberärzten Dr. Christoph Thorns und Dr.
Heinz-Wolfram Bernd vom Institut für Pathologie am UK-SH Standort Lübeck wurde am 29.7.2008 versucht,
die Einsetzbarkeit des in dieser Arbeit geschilderten Workflows in der Routine zu bewerten.
Virtuelle Mikroskopie Der Einsatz virtueller Mikroskopie (vgl. Kap. 2.2) wird am Institut für Pathologie bereits erprobt. Für die Lehre existiert beispielsweise ein frei im Internet verfügbarer Präparatekasten Histologie“
”
[51] mit ca. 50 virtuellen Präparaten, der mit dem am Institut verfügbaren Olympus dotSlide-System [85] hergestellt wurde. Andere Systeme wie der NanoZoomer von Hamamatsu [40] und das DMD108 von Leica mit
Live-Sichtfeld-Digitalisierung [57] wurden ebenfalls getestet.
Die Ärzte bemängeln hinsichtlich der virtuellen Mikroskopie vor allem zwei Dinge: Die Bildqualität müsse
mit der eines herkömmlichen Lichtmikroskops gleichziehen. Es mache keinen Sinn, wenn Untersuchungen zur
Kontrolle an einem herkömmlichen Mikroskop wiederholt werden müssen. Außerdem sei die Geschwindigkeit
der heutigen Lösungen sowohl bei der Digitalisierung als auch bei der Handhabung der digitalen Präparate noch
zu gering.
CAD Eine Unterstützung der diagnostischen Tätigkeit durch den Computer (CAD, vgl. Kap. 2.3) können sich
die Pathologen prinzipiell gut vorstellen. Allerdings müssten dazu zunächst die oben beschriebenen Probleme
mit der virtuellen Mikroskopie zufriedenstellend gelöst werden.
Seite 103
4
KONZEPTION, IMPLEMENTIERUNG UND ANWENDUNG
Auch in der Pathologie spielen Zweitgutachten eine wichtige Rolle. So werden alle pathologischen Befunde, die
nicht von Fachärzten angefertigt wurden, noch einmal von einem Facharzt befundet. Bei diesen Fällen ist der
Ersatz der Zweitbegutachtung durch ein CAD-System vermutlich nicht sinnvoll. Von Fachärzten erstellte Befunde werden meist nur bei unklaren oder besonders komplizierten Fällen doppelt begutachtet. Diese Begutachtung
erfolgt meist institutsintern. Bestimmte Fälle wie beispielsweise die Colitis Ulcerosa mit Dysplasie werden aber
standardmäßig doppelt begutachtet. Steht kein Kollege mit langjähriger Expertise für solche Spezialfälle zur
Verfügung, so werden externe Gutachten eingeholt. Für diesen Einsatzfall wäre Telepathologie sinnvoll (schnelle
Bearbeitung, keine Portokosten, keine Beschädigung oder Verlust auf dem Postweg). Eventuell käme auch ein
Einsatz von CAD infrage.
Strukturierte Eingabe Bei dem in dieser Diplomarbeit vorgestellten Ansatz zur strukturierten Eingabe (vgl.
Kap. 4.5) übernimmt der Arzt während der Untersuchung gleichzeitig die Niederschrift des Befundberichts. Da
am Institut für Pathologie ein Schreibbüro zur Verfügung steht, empfinden die Pathologen diese Vorgehensweise
vor allem als unangenehmen Zusatzaufwand.
Es werden jedoch auch Vorteile des Ansatzes gesehen. Die bei strukturierter Eingabe garantierte grammatikalische und orthografische Korrektheit käme den Ärzten entgegen. Außerdem vereinfachte sich das Korrekturlesen,
wenn häufig benutzte Textfragmente einheitlich formuliert würden. Falls an einem Tag nur wenige Befundberichte zu bearbeiten sind, sei das eigene Verfassen manchmal sogar wünschenswert (Korrektheit, keine zeitliche
Abhängigkeit von Anderen). Schließlich eignete sich strukturierte Eingabe gut für die Ausbildung, da werdende Fachärzte bei diesem Ansatz gleich an einen sinnvollen Untersuchungsablauf gewöhnt würden und keine
Untersuchungsschritte vergessen könnten.
Ein wesentlicher Vorteil strukturierter Eingabe ist das Ableiten von Kodes und Zusammenfassungen während
der Eingabe. Auch in der Pathologie ist das Heraussuchen korrekter Kodes eine lästige Aufgabe, so dass häufig
nur grob kodiert wird (ICD-Kodes mit Endung .9“, also nicht näher bezeichnet“). Die strukturierte Eingabe
”
”
könnte hier zu einer besseren Kodierungsqualität führen. Da die Diagnosen für die Pathologie selbst aber
nicht abrechnungsrelevant sind, sei dieser Vorteil nur gering. Hinsichtlich der automatischen Ableitung von
Zusammenfassungen (Abschnitt Beurteilung“ oder Diagnose“, vgl. Kap. 2.4.5) sind die Pathologen skeptisch.
”
”
Der Kliniker sei nur an möglichst wenigen, aber dafür wesentlichen Informationen interessiert. Das automatische
Ableiten aus makroskopischem und mikroskopischem Befund sei schwierig, da je nach Diagnose verschiedene
Erkenntnisse relevant seien. Außerdem helfe eine sinnvolle Reihenfolge, die möglicherweise nicht automatisch
herzustellen ist, dem Kliniker bei der Interpretation der Beurteilung.
Die besseren Recherchemöglichkeiten in strukturierten und standardisierten Befundberichten werden durchaus
als Vorteil gesehen. Allerdings stellt sich dieser Vorteil im Wesentlichen in der Forschung dar. Derzeit werden
kompliziertere Rechercheaufträge von Doktoranden durchgeführt. Fachärzte profitierten daher von besseren
Recherchemöglichkeiten nur indirekt.
Zusammenfassend wurde festgestellt, dass die strukturierte Eingabe des Befundberichts durch Pathologen etliche Vorteile hat. Als einziger, aber besonders gewichtiger Nachteil wurde die höhere Arbeitsbelastung für die
Ärzte genannt. Je nach Anzahl der pro Tag zu verfassenden Befundberichte sowie der Verfügbarkeit und den
Kosten eines Schreibbüros ist durchaus damit zu rechnen, dass strukturierte Eingabe zukünftig in der Pathologie
eingesetzt wird.
Zur Minimierung des zusätzlichen Arbeitsaufwandes machten die Pathologen folgende Vorschläge:
ˆ Für Standardbefunde sollten längere Textbausteine prominent in der Liste der Eingabemöglichkeiten platziert werden, da nicht jeder Fall das vollständige Abarbeiten aller Punkte erfordert.
ˆ Spracherkennung wäre für die Eingabe hilfreich. Die Auswahl zwischen den Eingabemöglichkeiten könnte
zum Beispiel über Zahlenkodes erfolgen.
ˆ Solange die virtuelle Mikroskopie noch nicht zur Verfügung steht, wäre möglicherweise eine Einblendung
des Eingabedialogs in das Sichtfeld des Lichtmikroskops sinnvoll, damit sich der Pathologe nicht abwechselnd verschiedenen Medien zuwenden muss92 .
92 Entsprechende
Technik wird seit einiger Zeit unter dem Namen image injection“ im Bereich der Operationsmikroskope erforscht
”
und bereits erfolgreich eingesetzt [EKM+00, GCP+07].
Seite 104
5
ERGEBNISSE UND AUSBLICK
5 Ergebnisse und Ausblick
5.1 Ergebnisse
5.1.1 Ergebnisse der theoretischen Arbeit
Strukturierte Befundberichte Bei der Erarbeitung des Grundlagenteils wurde zunächst festgestellt, dass die
bisherigen Befundberichte in den untersuchten Pathologieeinrichtungen in höchstens schwach strukturierter
Form abgespeichert werden (Kap. 2.4.5). Im Wesentlichen wird mit Freitext gearbeitet, explizite Merkmalsauszeichnung und kodierte Merkmalsausprägungen werden fast nirgends verwendet. Allein die abschließende
Diagnose einer Untersuchung wird zum Teil mit ICD- bzw. ICD-O-Kodes verschlüsselt. Von einer strukturierten und standardisierte Dokumentation sind die untersuchten Einrichtungen, vor allem aufgrund fehlender
kommerzieller Softwarelösungen für diesen Bereich, weit entfernt.
Virtuelle Mikroskopie und DICOM Bei der Recherche für den theoretischen Teil zeigte sich außerdem, dass
der DICOM-Standard bisher praktisch keine Rolle in der Pathologie spielt. Die Begründung dafür ist denkbar
einfach: Bisher wird in der Pathologie kaum mit digitalen Bildern gearbeitet. Da die Forschung und Entwicklung der virtuellen Mikroskopie“ aber in großen Schritten voranschreitet, wurde diesem Themengebiet in der
”
Diplomarbeit ein eigenes Unterkapitel gewidmet (Kap. 2.2). Insbesondere wurde festgestellt, dass es zur Zeit
eine unüberschaubare Vielfalt an Bildformaten für virtuelle Präparate gibt (Kap. 2.2.2). Eine Einigung auf
DICOM als Standardbildformat auch für virtuelle Präparate ist daher naheliegend und aus Anwendersicht
wünschenswert. Allerdings müssen bis dahin noch zahlreiche Änderungsarbeiten am DICOM-Standard abgeschlossen werden (siehe Kap. 2.5.11).
DICOM-Informationsquellen Der Mangel an einführender Literatur zum DICOM-Standard ist offensichtlich.
Neben den kurzen selbstverfassten Einführungen in DICOM (Kap. 2.5) und DICOM-SR (Kap. 2.6) integrierte
der Autor daher Verweise auf Informationsquellen zu DICOM im Allgemeinen (Kap. 2.5.12) und DICOM-SR
im Speziellen (Kap. 2.6.7) in den Grundlagenteil.
5.1.2 Vorarbeiten für die Implementierung
Marktübersicht für DICOM-Toolkits Aufgrund der Komplexität von DICOM ist es ratsam, bei der Implementierung von DICOM-konformer Software auf vorgefertigte Programmbibliotheken, sogenannte DICOM-Toolkits,
zurückzugreifen (vgl. Kap. 2.5.10). Eine Marktübersicht kommerzieller und freier DICOM-Toolkits, die bei der
Auswahl des für den jeweiligen Anwendungszweck geeigneten Toolkits helfen könnte, war zum Zeitpunkt der Erstellung dieser Arbeit nicht zu finden. Der Autor kombinierte daher die verschiedene fragmentarischen Ansätze
Anderer und ergänzte sie um die Ergebnisse eigener Recherchen zu einer möglichst vollständigen Liste [99].
Maschinelle Interpretation des DICOM-Standards Der DICOM-Standard selbst liegt nicht als strukturiertes
und standardisiertes Dokument, sondern nur als Word-Datei vor, was die Erstellung DICOM-konformer Software erschwert. Die Hersteller der DICOM-Toolkits haben dieses Problem erkannt und liefern ihre Produkte
zumindest mit einer maschinenlesbaren Form des häufig benötigten Data Dictionary“ (PS 3.6 [DIC08a]) aus.
”
Für die Erstellung von DICOM-SR-Software ist jedoch vor allem der Zugriff auf Kontextgruppen und Templates, die in PS 3.16 DCMR beschrieben werden, entscheidend. Gemeinsam mit einem Praktikanten wurden die
Kontextgruppen in eine maschinenlesbare XML-Form gebracht (Kap. 4.1). Diese Datei wurde um zahlreiche
Begriffe aus anderen Standards erweitert, die im DCMR lediglich referenziert und nicht konkret aufgeführt werden (Kap. 4.1.2.1 bis 4.1.2.5), und für Entwickler freier DICOM-Toolkits im Internet kostenlos zur Verfügung
gestellt [98]93 .
DICOM definiert in PS 3.3 der aktuellen Version 2008 acht Dokumentenklassen für DICOM-SR-Dokumente
(vgl. Kap. 2.6.1.1). Die wesentlichen Unterschiede zwischen den einzelnen Dokumentenklassen beschreibt die
93 Mathieu
Malaterre, der Hauptentwickler des C++-DICOM-Toolkits Grass roots DiCoM“ (GDCM, [61]), hat bereits Interesse
”
bekundet.
Seite 105
5
ERGEBNISSE UND AUSBLICK
zugehörige Tabelle für Einschränkungen bei der Konstruktion von Dokumenten (vgl. Abb. 17). Für alle acht
Dokumentenklassen wurden diese Tabellen von Hand in ein XML-Format gebracht. Außerdem wurde in der
XML-Datei vermerkt, ob für die jeweilige Dokumentenklasse DICOM-SR-Templates vorgeschrieben sind ( De”
fined Template“) oder vorgeschlagen werden ( Baseline Template“).
”
5.1.3 Implementierung
GENRE Da derzeit keine zufriedenstellende Standardsoftware zur Erstellung, Visualisierung und Bearbeitung von DICOM-SR-Dokumenten existiert (vgl. Kap. 4.2.1), wurde im Rahmen dieser Diplomarbeit GENRE
( Generic Report E ditor“) implementiert (Kap. 4.3). GENRE ist durch seinen generischen Ansatz flexibel
”
einsetzbar und durch die Verwendung von Java nahezu plattformunabhängig (vgl. Kap. 4.3.5).
Bei der Entwicklung von GENRE wurde auf das kostenlose und quelloffene DICOM-Toolkit PixelMed Ja”
va DICOM Toolkit“ zurückgegriffen. Dieses Toolkit enthält grundlegende Datenstrukturen für DICOM-SRInhaltselemente, die im Rahmen dieser Arbeit erheblich erweitert wurden (vgl. Kap. 4.3.1). Die Änderungen am
Quellkode werden an den Autor des PixelMed-Toolkits weitergegeben, so dass zukünftig auch andere Entwickler
von den neuen Funktionen profitieren können.
Besonderer Wert wurde bei GENRE auf die Benutzungsfreundlichkeit gelegt. So lässt sich der Inhalt von
DICOM-SR-Dokumenten schon in der Bearbeitungsansicht von GENRE aus dem DICOM-SR-Inhaltsbaum
ablesen, und Inhaltselemente lassen sich an Ort und Stelle ändern (siehe Kap. 4.3.2.2). Überall, wo kodierte
Merkmale eingesetzt werden, kann in GENRE komfortabel auf die DICOM-SR-Kontextgruppen zurückgegriffen
werden (vgl. Kap. 4.1.2.6). Die GENRE-Benutzeroberfläche ist auf Mehrsprachigkeit ausgelegt. Eine deutsche
und eine englische Version wurden im Rahmen dieser Diplomarbeit erstellt, weitere Übersetzungen können von
Anwendern einfach realisiert werden. Außerdem ermöglicht GENRE die landestypische Eingabe von Gleitkommazahlen und Datumsangaben (Kap. 4.3.3.1). Das komfortable Einbinden von Bildern aus DICOM-Archiven
wurde vorbereitet, aber nicht fertiggestellt (Kap. 4.3.4). Teilbäume können aus dem Inhaltsbaum gelöscht oder
an eine andere Stelle verschoben werden. Für die Weitergabe von DICOM-SR-Dokumenten an Einrichtungen,
die nicht über entsprechende Anzeigesoftware verfügen, bietet GENRE einen HTML-Export an (Kap. 4.3.2.4).
Neben der Manipulation des Inhaltsbaumes ermöglicht GENRE auch die Bearbeitung der wichtigsten Angaben im Dokumentenkopf von DICOM-SR-Dokumenten (Kap. 4.3.2.1). Eine Dokumentenansicht auf DICOMAttribut-Ebene in GENRE erleichtert das Debugging von Software, die DICOM-SR-Dokumente erstellt.
Eingabeassistent für GENRE Trotz aller Bemühungen, GENRE benutzungsfreundlich zu gestalten, sind direkte Manipulationen an DICOM-SR-Inhaltsbäumen für den ärztlichen Alltag zu aufwändig. Daher wurde ein
Eingabeassistent implementiert, der das in der Praxis bewährte Konzept einer kommerziellen Softwarelösung
zur strukturierten Eingabe imitiert (Kap. 4.5). Bei diesem Konzept wird der Benutzer durch eine Grammatik
geführt, die er bei Bedarf selbst verändern und ergänzen kann. Dadurch kann der Eingabeassistent an verschiedenste Anforderungen angepasst werden.
In dieser Arbeit sollte die strukturierte Befundberichtschreibung für die Pathologie erforscht werden. Daher wurden in Absprache mit Pathologen zwei Beispielsfälle identifiziert, bei denen die strukturierte Eingabe besonders
sinnvoll scheint (Kap. 4.4.1). Für die Dokumentation dieser Fälle wurde ein einfaches, allgemeines Eingabeformular entworfen und mit der Entwicklung der notwendigen Eingabe-Grammatiken begonnen. Dieser Aspekt
soll in einer Promotionsarbeit an der Medizinischen Fakultät der Universität zu Lübeck weiter ausgearbeitet
werden.
5.2 Ausblick
5.2.1 DICOM-Entwicklung
Virtuelle Mikroskopie Entscheidend für die Verbreitung von DICOM in der Pathologie ist nach Einschätzung
des Autors die Einsatzmöglichkeit des Standards zur Speicherung und Kommunikation von virtuellen Präparaten
(vgl. Kap. 2.2). Diese Aufgabe wird derzeit von der DICOM-Arbeitsgruppe 26 bearbeitet, befindet sich aber
Seite 106
5
ERGEBNISSE UND AUSBLICK
noch in einem frühen Stadium (vgl. Kap. 2.5.11). Mit einer Aufnahme in den Standard ist in den nächsten
Monaten nicht zu rechnen.
Erheblich weiter im Standardisierungsprozess ist Supplement 120 Extended Presentation States“ von der DI”
COM-Arbeitsgruppe 11. Diese Erweiterung ermöglicht eine bessere Annotation von Bildern durch vorgefertigte
Vektorobjekte (vgl. auch Kap. 2.5.5) und dürfte im Zusammenhang mit virtuellen Präparaten interessant sein.
DICOM-SR Größere Veränderungen im Bereich DICOM-SR wird Supplement 115 Evidence Document SOP
”
Classes“ mit sich bringen, das sich zur Zeit in Bearbeitung befindet. Mit Supplement 115 werden eine neue Dokumentenklasse, einige Templates und insbesondere zwei neue Datentypen für Inhaltselemente, TABLE“ und
”
CONTOUR“, in den DICOM-Standard eingeführt [17]. Ein TABLE“-Element enhält pro Zeile bzw. Spalte
”
”
jeweils mehrere Werte gleichen Typs mit einem gemeinsamen Konzeptnamen. Mit Elementen vom Typ CON”
TOUR“ können Koordinaten in einem Koordinatensystem der realen Welt angegeben werden ( SCOORD“ und
”
TCOORD“ verwenden hingegen DICOM-Koordinaten). Beide Datentypen sind recht komplex. Supplement
”
115 hat zur Zeit den Status Work“, eine Verabschiedung wird also noch etwas auf sich warten lassen.
”
Weitere Supplements (Supp. 126 Colon Computer-Aided Detection SR SOP Class“ und Supp. 134 Implan”
”
tation Plan SR Document Storage SOP Class“), die in den nächsten Monaten in den Standard aufgenommen
werden könnten, fügen PS 3.3 weitere neue Dokumentenklassen hinzu. Mit den Supplements 78 Fetal and
”
Pediatric Echocardiography SR“, 128 Cardiac Stress Testing Structured Reports“ und 129 Electrophysiology
”
”
Structured Reports and Procedure Log Templates“, die sich ebenfalls in Arbeit befinden, werden zwar zahlreiche Templates und Kontextgruppen hinzugefügt bzw. verändert, in die Grundlagen von DICOM-SR wird dort
jedoch nicht eingegriffen.
Mit Supplement 135 SR Diagnostic Imaging Report Transformation Guide“ wird DICOM in der nächsten Zeit
”
um eine Vorschrift ergänzt, wie DICOM-SR-Dokumente, die auf Template 2000 basieren, in ein HL7-CDAFormat umzuwandeln sind (vgl. Kap. 2.6.6).
Bei der Anpassung von DICOM-SR an Belange der Pathologie sind noch zahlreiche Fragen zu klären, unter
anderem: Sollten Befundberichte der Pathologie eine eigene Dokumentenklasse bekommen? Werden eigene Templates benötigt oder reichen die allgemeineren Templates wie TID 2000 Diagnostic Imaging Report“? Welche
”
Dokumententitel sollte zu Kontextgruppe 7020 bzw. 7000 hinzugefügt werden? Welche Aufnahmemodalitäten
zu Kontextgruppe 29?
Der Autor möchte der Deutschen Gesellschaft für Pathologie (DGP) und dem Berufsverband Deutscher Pathologen (BDP) nahelegen, sich in der DICOM-Arbeitsgruppe 26 Pathology“ zu beteiligen. Die Deutsche
”
Röntgengesellschaft ist beispielsweise schon lange Mitglied des DICOM-Komitees und arbeitet zur Zeit sogar
an einem eigenen Supplement speziell für deutsche Belange ( National Radiology Report“ [Hac07]).
”
5.2.2 GENRE-System
Im Umfeld von GENRE gibt es zahlreiche Anknüpfungspunkte für weitere Arbeiten. Die aus Sicht des Autors
interessantesten sind in den folgenden Abschnitten geschildert.
5.2.2.1 Kontextgruppen
Wie mehrsprachige Kontextgruppen in XML umgesetzt werden könnten, wurde in Kapitel 4.1.2 vorgeschlagen.
PS 3.16 enthält bereits die Übersetzungen zahlreicher Begriffe ins Französische und Japanische (PS 3.16, Anhang E und F [DIC08a]), deutsche Übersetzungen finden sich bisher jedoch nicht. Eine Liste aller Kodes mit
Kodierungsschema-Bezeichner DCM“ als Ausgangspunkt für Übersetzungsarbeiten findet sich auf der Begleit”
webseite zu dieser Diplomarbeit [98]. Die Übersetzung der Snomed-Begriffe ins Deutsche könnte automatisiert
ablaufen: Seit 2004 existiert eine deutsche Snomed-Version, die derzeit überarbeitet wird [Höl06], und eine Software mit Programmierschnittstelle zum Nachschlagen von Snomed-Kodes ist kostenlos im Internet erhältlich
[14].
Zwei Kontextgruppen konnten nicht in die maschinenlesbare Version des DCMR integriert werden: Kontextgruppe 82 Units of Measurement“ (vgl. Kap. 4.1.2.1) und Kontextgruppe 7007 Signature Purpose“ (vgl. Kap.
”
”
4.1.2.4). Für die UCUM-Kodes aus Kontextgruppe 82 sollte eine Eingabehilfe programmiert werden, damit
Seite 107
5
ERGEBNISSE UND AUSBLICK
auch unkundige Benutzer gültige UCUM-Kodes generieren können. Für die Kodes aus Kontextgruppe 7007
sollte überprüft werden, ob der Standard ASTM E 2084-00 im Zusammenhang mit DICOM nicht doch kostenlos verwendet werden darf (normalerweise integriert DICOM keine Kodes, die die Zahlung von Lizenzgebühren
erfordern). Außerdem sollte die in Kapitel 4.1.2.5 beschriebene, automatische Extraktion von Dokumententiteln
für Kontextgruppe 7020 auf den aktuellen LOINC angewendet werden (vgl. auch Fußnote 51 auf Seite 58).
In Kapitel 4.1.2.7 wurde festgestellt, dass es bei wachsendem Umfang der DCMR-Kontextgruppen (z. B. durch
Mehrsprachigkeit) nicht mehr sinnvoll ist, diese vollständig im Arbeitsspeicher zu halten. Stattdessen sollte eine
Datenbank verwendet werden. Das GENRE-Konzept verfolgt das Ziel, möglichst wenig von externen Programmbibliotheken abhängig zu sein. Von daher böte sich die in Java 6 integrierte Java DB [105], eine Variante von
Apache Derby, als Datenbank an. Eine andere, besonders kompakte und schnelle Java-Datenbank ist HSQLDB94
[48].
5.2.2.2 Funktionalität von GENRE
In Implementierungsteil dieser Arbeit finden sich zahlreiche Ideen, die aus Zeitgründen nicht realisiert werden
konnten:
ˆ Grafische Eingabemasken für Konzeptwerte aller Typen. GENRE enthält Datenstrukturen und
Methoden zu deren Manipulation für alle 14 in DICOM-SR definierten Konzeptwert-Typen (vgl. Kap.
4.3.1). DICOM-SR-Dokumente, die Inhaltselemente mit Konzeptwerten dieser Typen enthalten, können
geladen und gespeichert werden. Es existieren jedoch bisher nur Eingabedialoge für Konzeptwerte der
Typen CONTAINER, TEXT, CODE, DATE, NUM, PNAME, UIDREF und IMAGE. Die Probleme bei
lokalisierten Eingabeassistenten für Zeitangaben (Typ TIME bzw. DATETIME) wurden in Kapitel 4.3.3.1
bereits kurz angesprochen. Kapitel 4.3.4 besprach den Entwurf und den Anfang der Implementierung eines
Eingabeassistenten für Konzeptwerte vom Typ IMAGE.
ˆ Wertüberprüfung bei der Eingabe. Die Änderung von DICOM-Attributwerten erfolgt in GENRE
über Textfelder. Die meisten dieser Felder werden nicht auf DICOM-konformen Inhalt überprüft (Ausnahmen bilden Textfelder für die Eingabe von UIDs in UIDREF- und IMAGE-Elementen sowie die Eingabe
von Gleitkommazahlen in NUM-Elementen). Es ist also möglich, mit GENRE nicht-DICOM-konforme Dateien zu erstellen. Java erlaubt die Inhaltsprüfung von Textfelder über die Klassen JFormattedTextField
bzw. InputVerifier. Es sollten für alle 27 Basisdatentypen (vgl. Kap. 2.5.6.2), die DICOM definiert, jeweils geprüfte Textfelder implementiert werden. Dabei sollten auch mehrwertige Attribute berücksichtigt
werden.
ˆ Berücksichtigung von DICOM-Templates. In Kapitel 3 ( Allgemeiner Lösungsansatz“) wurden die
”
Vorteile einer templategeführten Eingabe kurz angesprochen. GENRE kennt bereits für jede Dokumentenklasse die vorgeschriebenen oder empfohlenen Root-Templates (s. o.). Der Dialog zum Anlegen neuer
Dokumente zeigt diese auch an, beim Bearbeiten von Inhaltsbäumen werden sie jedoch nicht berücksichtigt.
Als Vorarbeit für die Unterstützung von Templates in GENRE wurden im Rahmen einer Praktikumsarbeit am IMI die Templatetabellen aus PS 3.16, Anhang A, in ein strukturiertes XML-Format gebracht.
In einem nächsten Schritt müssten die Inhalte der einzelnen Tabelleneinträge semantisch analysiert und
entsprechend annotiert werden. Die technischen und rechtlichen Problematiken dabei wurden in Kapitel
2.6.4 erwähnt.
ˆ Anlegen, Editieren und automatisches Korrigieren von By-reference-Relationen. In Kapitel
2.6.2.2 wird das Konzept von By-reference-Relationen erläutert. GENRE erlaubt das Öffnen von DICOMSR-Dokumenten mit By-reference-Relationen und zeigt sie im Inhaltsbaum korrekt an. Es können derzeit
aber noch keine neuen By-reference-Relationen angelegt werden. Auch die Änderung des Zielelements
solcher Relationen ist bisher nicht möglich. Schließlich sollte eine Funktion implementiert werden, die die
Zieladresse von By-reference-Relationen automatisch korrigiert, sobald sich die Position des Zielelements
im Inhaltsbaum durch das Löschen von Teilbäumen bzw. das Einfügen oder Verschieben von Inhaltselementen ändert.
ˆ Bessere grafische Darstellung von Relationen. Dem Autor ist bisher keine Lösung für das Problem bekannt, wie man Relationen verschiedener Typen sinnvoll grafisch darstellt. GENRE zeigt den
Typ einer By-value-Relation bisher nur im Tooltip des Zielelements an. Mit Ärzten und Kommunikationsdesignern sollte diskutiert werden, ob – und wenn ja wie – Relationstypen dargestellt werden sollen.
94 Diese
Datenbank bietet mit sogenannten Text Tables“ die interessante Möglichkeit, von Menschenhand gut zu pflegende CSV”
Dateien als Datenquelle zu verwenden, vgl. http://www.hsqldb.org/doc/guide/ch06.html
Seite 108
5
ERGEBNISSE UND AUSBLICK
ˆ
ˆ
ˆ
ˆ
ˆ
ˆ
By-reference-Relationen werden in GENRE derzeit als Kinder des Quellelements der Relation angezeigt,
weil sie auf Kodierungsebene als solche abgelegt werden. Diese Art der Anzeige ist wenig intuitiv. Besser wäre möglicherweise die Repräsentation von By-reference-Relationen mittels Pfeilen zum Zielelement.
Dafür benötigte man allerdings ausgefeilte Platzierungsalgorithmen.
Export von DICOM-SR in Word, PDF etc. Erstrebenswert wäre neben dem bereits realisierten
Export nach HTML zusätzlich ein Export in das derzeit an der Uni Lübeck in der Pathologie verwendete
Microsoft-Word-Format sowie in das gängige PDF-Format. Dieser Punkt wird in Kapitel 4.3.2.4 diskutiert.
Editor für DICOM-Attribute im Dokumentenkopf. GENRE enthält einen Dialog, mit dem die
Pflicht-Attribute im Dokumentenkopf von DICOM-SR-Dateien bearbeitet werden können. Es wäre interessant, die Auswahl der bearbeitbaren Attribute zu vergrößern und für die einzelnen Felder Eingabehilfen
bereitzustellen. Kapitel 4.3.2.1 enthält nähere Erläuterungen hierzu.
UCUM Eingabehilfe. Im vorigen Abschnitt wurde eine UCUM-Eingabehilfe diskutiert. Diese sollte in
die Eingabemaske für Inhaltselemente vom Typ NUM“ integriert werden. Die Eingabemaske ist vom
”
Layout her bereits darauf vorbereitet.
Berücksichtigung spezieller Eigenheiten von Dokumentenklassen. Derzeit berücksichtigt GENRE
für alle Dokumentenklassen die Einschränkungen bezüglich By-value-Referenzen (vgl. Kap. 2.6.2.3). Dokumente der Klasse Key Object Selection“ beispielsweise haben jedoch zusätzlich zu diesen Einschränkungen
”
auch einen anderen Modulaufbau. Procedure Log“-Dokumente hingegen erfordern für jedes Zielelement
”
einer Relation vom Typ CONTAINS“ die Angabe eines Beobachtungszeitpunkts ( Observation DateTi”
”
me“, vgl. PS 3.3 Anhang A.35.7.3.1.2). Die Inhaltselemente der ersten Ebene sollen nach dieser Angabe
geordnet werden. Beide Anforderungen werden von GENRE bisher nicht unterstützt. Die Dokumentenklassen Mammography CAD“ und Chest CAD“ erzwingen für Befundberichte, die in Teilen auf früheren
”
”
Berichten beruhen, einen Observation Context“ nach TID 1001. Diese Bedingung ist maschinell nur
”
schwierig zu überprüfen. Der klinische Anwender sollte in zukünftigen Versionen von GENRE aber auf
den Observation Context“ hingewiesen und mit einem benutzungsfreundlichen Formular bei der Eingabe
”
dieser Daten unterstützt werden.
Berücksichtigung von UIDs für Kontextgruppen. Mit CP 845 wurde am 23.6.2008 für jede Kontextgruppe ein eindeutiger Bezeichner in Form einer UID hinzugefügt. Dies wird in GENRE noch nicht
berücksichtigt. UIDs müssten in jedes Code Sequence Attribute“ (z. B. in Konzeptnamen, die Concept
”
”
Code Sequence“ von CODE-Inhaltselementen oder die Measurement Units Code Sequence“ von NUM”
Inhaltselementen) integriert werden, das Enhanced Encoding“ verwendet. PS 3.6 enthält nun zusätzlich
”
das neue Attribut Context UID“ (0008,0117) und eine lange Liste, die allen Kontextgruppen aus PS 3.16,
”
Anhang B, eine UID zuordnet.
TABLE- und CONTOUR-Inhaltselemente. Sobald das weiter oben im Ausblick beschriebene Supplement 115 verabschiedet ist, sollte natürlich die Unterstützung für Inhaltselemente der neuen Typen
TABLE und CONTOUR in GENRE integriert werden. Die Architektur von GENRE ist auf Erweiterbarkeit ausgelegt, dennoch ist die Implementierung der neuen Typen aufgrund ihrer Komplexität sicherlich
aufwändig.
5.2.2.3 Eingabeassistent und klinische Anwendung
Von einem Einsatz in der klinischen Routine ist das GENRE-System derzeit noch nicht geeignet. Setzt man
weiter auf die in Kapitel 4.5 beschriebene Implementierung eines grammatikgeführten Eingabeassistenten, so
sollte auf jeden Fall zunächst die Unterstützung für benutzerdefinierte Makros ergänzt werden, mit deren Hilfe
erst stärker strukturierte Dokumente und automatische Kodeableitung realisiert werden können. Ein Ansatz
hierzu wurde in Kapitel 4.5.3 beschrieben, das Kapitel nennt allerdings auch Probleme, mit denen von vornherein
bei der Implementierung von Makros für DICOM-SR-Inhaltsbäume zu rechnen ist.
Die Verwendung von automatischer Spracherkennung in Kombination mit dem beschriebenen Eingabeassistenten ist aus mehreren Gründen reizvoll. Einerseits wird sie von Pathologen gefordert, damit sie ihre Hände für
Untersuchungen frei haben (vgl. Kap. 4.6). Andererseits ist bei der strukturierten Eingabe mit sehr guten Erkennungsraten zu rechnen, da in jedem Eingabeschritt nur aus einer Liste mit wenigen Punkten ausgewählt wird.
Das verwendete Vokabularium ist mithin sehr klein und das Erkennen kontinuierlicher Sprache nicht erforderlich. Auch andere Veröffentlichungen schlagen automatische Spracherkennung für die strukturierte Eingabe vor
(z. B. [Ber03, Nou06]). Da GENRE vollständig in Java geschrieben ist, wäre es sinnvoll, die Spracherkennung
Seite 109
5
ERGEBNISSE UND AUSBLICK
ebenfalls mit Java zu realisieren. Sun hat bereits im Oktober 1998 die sogenannte Java Speech API (JSAPI),
eine allgemeine Schnittstelle für die Erkennung und Synthese natürlicher Sprache in Java, veröffentlicht. JSAPI
soll das Einbinden von Fremdprodukten verschiedener Hersteller erlauben. Allerdings sind praktisch alle Implementierungen für JSAPI mittlerweile nicht mehr verfügbar oder zumindest veraltet. Es existieren jedoch einige
freie Java Projekte zur Spracherkennung, die zwar nicht auf die JSAPI aufsetzen aber dafür offenbar noch aktiv
sind. Dazu zählen beispielsweise simon [102], MARF [63] und Sphinx-4 [11].
Auf jeden Fall müssen im Vorfeld eines möglichen klinischen Routineeinsatzes geeignete Grammatiken für den
Eingabeassistenten formuliert werden, deren Ausdrucksstärke deutlich über die im Rahmen dieser Arbeit zu
Demonstrationszwecken entwickelten Grammatiken hinausgeht. Diese Aufgabe kann und sollte von Medizinern
in enger Kooperation mit Fachärzten für Pathologie bearbeitet werden. Anschließend sollte evaluiert werden, ob
die Befunderstellung beschleunigt werden konnte und inwiefern die Aussagekraft der erzeugten Befundberichte
von herkömmlichen, diktierten Befundberichten abweicht.
5.3 Fazit
DICOM-SR wird bislang hauptsächlich von den Herstellern medizintechnischer Geräte für die Speicherung von
automatisch generierten Daten ihrer bildgebenden Geräte verwendet. Die Verwendung von DICOM-SR durch
menschliche Benutzer ist nur selten vorgesehen. Solange kein äußerer Zwang“ für Standards gegeben ist, wer”
den Kliniker weniger aufwändige Softwarelösungen wie die überwiegend proprietären Softwarelösungen von E&L
oder MEDNOVO favorisieren. Am ehesten könnte dieser Zwang entstehen, wenn sich im Zusammenhang mit der
elektronischen Gesundheitskarte die hierfür vorgesehene HL7 Clinical Document Architecture als Standardformat für medizinische Dokumente etabliert. In der Folge könnte auch die Verbreitung von DICOM-SR zunehmen,
da die Abbildung von DICOM-SR auf HL7-CDA für spezielle Dokumente bereits gelöst ist.
Durch seinen generischen Ansatz kann DICOM-SR eine prinzipielle Tauglichkeit für den Einsatz in der Pathologie bescheinigt werden. Die in Kapitel 2.4 genannten Vorteile einer strukturierten und standardisierten medizinischen Dokumentation lassen sich mithilfe von DICOM-SR ausnutzen. Supplement 122 (vgl. Kap. 2.5.11),
das in der nächsten DICOM-Version enthalten sein wird, verbessert noch einmal stark die Möglichkeiten zur
standardisierten Merkmalskodierung in DICOM-SR-Befundberichten für die Pathologie. Seinen größten Vorteil,
nämlich die Verwendung einer ohnehin vorhandenen DICOM-Infrastruktur, kann DICOM-SR aber erst dann
ausspielen, wenn sich DICOM auch in der Pathologie durchgesetzt hat – womit langfristig durchaus zu rechnen
ist. Insofern ist das Potential von DICOM-SR in der Pathologie stark abhängig von der zukünftigen Entwicklung
der virtuellen Mikroskopie und der Anpassung des DICOM-Standards für die Speicherung und Kommunikation
virtueller Präparate.
Allgemein leidet DICOM-SR bisher noch unter einem Mangel an Standardwerkzeugen. Die Unterstützung von
DICOM-SR in kostenlosen DICOM-Toolkits ist, mit Ausnahme des DCMTK [82], entweder überhaupt nicht
gegeben oder allenfalls als rudimentär zu bezeichnen. Auch viele kommerzielle Toolkits unterstützen den Umgang mit DICOM-SR-Dokumenten überhaupt nicht. Auf der Anwendungsebene ist das Software-Angebot bisher
ebenso spärlich wie auf der Entwicklerebene, zumal die meisten bestehenden Lösungen in verschlossenen Schubladen der Medizintechnik-Hersteller lagern (vgl. Kap. 2.6.7).
Diese Diplomarbeit leistet sowohl auf Toolkit- als auch auf Anwendungsebene einen Beitrag zur besseren Unterstützung von DICOM-SR. Zumindest für die Erstellung von DICOM-SR-Testdokumenten ist GENRE gut
geeignet. Die lange Liste an Verbesserungsmöglichkeiten im Ausblick zeigt aber, dass das Thema DICOM-SR
in einer Diplomarbeit nicht abschließend behandelt werden kann. Insbesondere wurde deutlich, dass ein Programm mit dem Anspruch, möglichst vollständige Unterstützung aller Möglichkeiten von DICOM-SR zu bieten,
kontinuierlicher Pflege bedarf: Allein im Zeitraum der Bearbeitung dieser Diplomarbeit flossen mehrere Sup”
plements“ und Correction Proposals“ in den DICOM-Standard ein, die die Möglichkeiten von DICOM-SR
”
erweiterten.
Seite 110
A
AUSWAHL AN SNOMED-KODES
A Auswahl an SNOMED-Kodes
Bezeichnung
Makroskopischer Befund
Mikroskopischer Befund
Klinische Diagnose /
Fragestellung
Eingesandtes Material
Begutachtung
SNOMED-Beschreibung
Macroscopic specimen observation (finding)
Microscopic specimen observation (finding)
Clinical diagnosis
Suspected diagnosis (contextual qualifier) (qualifier value)
Body material (substance)
Diagnostic assessment (procedure)
ConceptId
250429001
SnomedId
F-016A9
395538009
M-091AF
39154008
76053005
G-1010
G-2001
413674002
165197003
T-D04C8
P0-006ED
Tabelle 9: SNOMED-Kodes für Überschriften in pathologischen Befundberichten (Auswahl)
Bezeichnung
Plasmozytom
Monoklonale Gammopathie unbestimmter Signifikanz
Beckenkamm-Trepanat
Präparatlänge
Trabekelknochen
Zelltyp
Plasmazelle
Haematopoetische Progenitorzelle
Erythropoese
Thrombopoese
Erythroblast
Megakaryoblast
Megakaryozyt
Gitterfasern (Retikulin)
Gomori-Färbung
Versilberung
κ/λ-Verhältnis
Berliner-Blau-Färbung
Anzahl CD38-Zellen
SNOMED-Beschreibung
Multiple myeloma
Monoclonal gammopathy of undetermined significance
Iliac crest trephine
Length of core in specimen obtained by
needle biopsy
Trabecular substance of bone
Type of cell (attribute)
Plasma cell
Hematopoietic precursor cell
ConceptId
109989006
35601003
SnomedId
DC-F4643
M-97651
234330008
399598003
P0-0591F
R-0050C
20870005
246238003
113335003
127911004
T-11030
G-D79C
T-C1750
T-C100B
Erythropoiesis (function)
Platelet production
Erythroblast (cell)
Megakaryoblast
Megakaryocyte
Reticulin fibrosis
Gomori stain method
Reticulin stain
Kappa/lambda light chain ratio
Soluble berlin blue stain ?
CD38 count
69611006
179202003
84227004
27852005
23592000
75616009
117236003
117327000
413025002
64991008
413787004
F-D0100
R-40EA8
T-C1110
T-C1510
T-C1540
M-78010
P3-0017B
P3-0019C
P3-001C6
C-22975
P3-60246
Tabelle 10: SNOMED-Kodes für die Untersuchung eines Beckenkamm-Trepanats (Auswahl)
Seite 111
B ÜBERSETZUNGEN VON DICOM-BEGRIFFEN
B Übersetzungen von DICOM-Begriffen
Aus Gründen der besseren Lesbarkeit wurden für diese Diplomarbeit zahlreiche Begriffe des DICOM-Standards
ins Deutsche übersetzt. Bei der Suche nach geeigneten deutschen Begriffen wurde vor allem darauf geachtet,
dass der ursprüngliche, englische Begriff in der Übersetzung noch erkennbar ist; die sprachliche Eleganz wurde
nur nachrangig berücksichtigt. Tabelle 11 zeigt eine Übersicht häufig verwendeter Übersetzungen und enthält
außerdem Begriffe, die absichtlich in ihrer englischen Form belassen wurden.
Originalbegriff
Attribute
Code Meaning
Code Value
Coding Scheme Designator
Coding Scheme Version
Concept Name
Concept Value
Content Item
Context Group
Correction Proposal
Data Element
Data Set
Document Content Tree
Image
Information Entity (IE)
Information Object Definition (IOD)
Item (von Sequenzattributen)
Module
Relationship
Relationship Type
Sequence Attribute
Series
SOP Class
Structured Reporting Information Object Definition (SR IOD)
Study
Supplement
Template
Transfer Syntax
Value Range (VR)
Value Type
Waveform
Deutsche Übersetzung
Attribut
Kodebedeutung
Kodewert
Kodierungsschema-Bezeichner
Kodierungsschema-Version
(Konzept-)Name
(Konzept-)Wert
Inhaltselement
Kontextgruppe
–
Datenelement
Datensatz
Inhaltsbaum
Bild
Informationseinheit
–
–
Modul
Relation
Relationstyp
Sequenzattribut
Folge
SOP-Klasse
Dokumentenklasse
Untersuchung
–
–
Transfersyntax
(Basis-)Datentyp
(komplexer) Datentyp
Signalverlauf
Tabelle 11: Übersetzungstabelle für Begriffe aus dem DICOM-Standard
Seite 112
Abkürzungsverzeichnis
Abkürzungsverzeichnis
ACR American College of Radiology. 18, 24, 30
AE Application Entity. 29
AET Application Entity Title. 29, 87
AILD Angioimmunoblastische Lymphadenopathie. 90
AJAX Asynchronous JavaScript and XML. 64, 66–68, 124, 127
AMWF Arbeitsgemeinschaft der Wissenschaftlichen Medizinischen Fachgesellschaften. 90, 124
ANSI American National Standards Institute. 46, 83, 118, 124
API Application Programming Interface. 65, 88, 101, 102, 110, 128
ASCII American Standard Code for Information Interchange. 29, 58
ASTM American Society for Testing and Materials. 58, 108
BARI Bypass Angiography Revascularization Investigation. 43
BCID Baseline Context Group Identifier. 45
BDP Berufsverband Deutscher Pathologen e.V. 90, 107
BMU Bundesministerium für Umwelt, Naturschutz und Reaktorsicherheit. 12, 118
BPD Biparietaler Durchmesser (Querdurchmesser des kindlichen Kopfes im Mutterleib). 40
BTID Baseline Template Identifier. 45
CAD Computer-Aided Detection (deutsch: Computerunterstützte Detektion)
und/oder Computer-Aided Diagnosis (deutsch: Computerunterstützte Diagnose). 6, 11–13, 35, 36, 38, 46,
97, 103, 104, 109, 122–124, 128
CARS Computer Assisted Radiology and Surgery (Kongress). 118, 122, 123
CCD Charge-coupled Device. 8
CDA Clinical Document Architecture. 14, 15, 18, 23, 46, 47, 49, 78, 96, 97, 99, 107, 110, 118, 120, 124
CEN Comité Européen de Normalisation. 18, 119
CG Context Group. 42
CID Context (Group) Identifier. 42, 46, 57, 97
COM Component Object Model. 30, 78
CP Correction Proposal. 19, 26, 33, 60, 109, 119
CSS Cascading Style Sheets. 63, 66
CSV Comma-separated values. 55, 108
CT Computertomografie. 12, 23, 25, 28, 33, 36, 60, 72, 130
DBD Diastolischer Blutdruck. 39
DCID Defined Context Group Identifier. 45
DCMR DICOM Content Mapping Resource (PS 3.16). 42, 46, 54, 56–60, 64, 88, 96, 97, 105, 107, 108
DCT Discrete Cosine Transformation (Standard-Kompression bei JPEG-Bildern). 9
DGP Deutsch Gesellschaft für Pathologie e.V. 90, 107
Seite 113
Abkürzungsverzeichnis
DICOM Digital Imaging and Communications in Medicine. III, 5, 6, 10, 17–19, 21, 23–38, 41–43, 46, 47, 49,
51, 53–57, 59–65, 68–70, 72, 73, 77, 78, 82–87, 89, 96, 97, 105–110, 112, 118–125, 127–129
DICOM-SR DICOM Structured Reporting. III, 4–6, 12, 14, 15, 21, 24, 25, 27, 30–32, 34–38, 42, 43, 45–47,
49–51, 53, 54, 61–65, 67–70, 72–74, 77, 78, 80, 84, 88, 89, 92, 95, 96, 99, 102, 105–110, 122, 123, 130
DIMDI Deutsches Institut für Medizinische Dokumentation und Information. 125
DIN Deutsches Institut für Normung. 119
DIR HL7 CDA Diagnostic Imaging Report. 47
DKFZ Deutsche Krebsforschungszentrum. 49
DNS Domain Name System. 70
DOM Document Object Model. 60, 66, 128, 130
DRG Diagnosis Related Groups. 13
DSS Decision Support System. 5, 15
DT Defined Term. 45
DTID Defined Template Identifier. 45
DVD-RAM DVD-Random Access Memory. 18
EBM Einheitlicher Bewertungsmaßstab. 16
ECMA European Computer Manufacturers Association. 66, 125
EEG Elektroenzephalografie. 21
eGK elektronische Gesundheitskarte. 46
EKG Elektrokardiogramm. 17, 21, 72, 97
EN Europäische Norm. 18, 119
EV Enumerated Value. 45
FDA U.S. Food and Drug Administration. 12
FOP Formatting Objects Processor. 78, 124
GB Gigabyte. 33
GDCM Grass roots DiCoM. 54, 55, 105, 127
GENRE Generic Report Editor. III, 51, 53, 54, 61, 63, 64, 68–70, 73, 75–78, 80, 82–86, 88–90, 99, 101–103,
106–110
GOÄ Gebührenordnung für Ärzte. 16
GPL GNU General Public License. 67, 89
GUI Graphical User Interface (deutsch: grafische Benutzeroberfläche). 65, 67–69, 73, 76, 80, 82, 84, 129
GWT Google Web Toolkit. 66–68, 127
HER2 Human Epidermal Growth Factor Receptor 2. 13
HIPAA Health Insurance Portability and Accountability Act. 58
HL7 Health Level 7. 14, 15, 18, 23, 25, 26, 31, 46, 47, 49, 56, 59, 78, 96, 97, 99, 107, 110, 118–121, 123, 124,
126, 128
HTML Hypertext Markup Language. III, 49, 62, 63, 66, 67, 72, 78, 88, 106, 109
Seite 114
Abkürzungsverzeichnis
HTTP Hypertext Transfer Protocol. 121
IANA Internet Assigned Numbers Authority. 57
ICD International Statistical Classification of Diseases and Related Health Problems. 14, 25, 42, 92, 104, 105,
125
IDE Integrated development environment. 67
IE Information Entity. 23, 31, 112
IEEE Institute of Electrical and Electronics Engineers. 118, 120, 122
IETF Internet Engineering Task Force. 56
IHE Integrating the Healthcare Enterprise. 47, 120, 121, 126
IHTSDO International Health Terminology Standards Development Organisation. 126
IMI Institut für Medizinische Informatik an der Universität zu Lübeck. III, 47, 64, 78, 99, 108
IOD Information Object Definition. 23, 31, 35–37, 112
IP Internet Protocol. 18, 29, 87
ISO International Organization for Standardization. 18, 19, 25, 27, 56–58, 121, 126
J2SE Java 2 Platform, Standard Edition. 66
JAR Java Archive. 67
JDBC Java Database Connectivity. 103
JDK Java Development Kit. 76, 89, 129
JmDNS Java multicast DNS. 70, 126
JNI Java Native Interface. 62, 68, 69
JPEG Joint Photographic Experts Group. 9, 10, 18, 27, 28, 30, 33, 121
JPIP JPEG 2000 Interactive Protocol. 10, 33
JRE Java Runtime Environment. 67, 88, 89
JSAPI Java Speech API. 110
JSON JavaScript Object Notation. 67, 121, 125
JVM Java Virtual Machine. 62, 75
KIS Krankenhausinformationssystem. 18, 120, 123
LGPL GNU Lesser General Public License. 85
LOINC Logical Observation Identifiers Names and Codes. 14, 56, 58, 59, 96, 97, 108, 128
LZW Lempel-Ziv-Welch (Kompressionsalgorithmus für Pixelbilder). 10
MB Megabyte. 60, 86
MOD Magneto-Optical Disc. 18
MPEG Moving Picture Experts Group. 18, 28
MRT Magnetresonanztomographie. 33, 130
MVC Model-View-Controller. 129
NAT Network Address Translation. 29
Seite 115
Abkürzungsverzeichnis
NEMA National Electrical Manufacturers Association (Berufsverband d. elektrotechnischen Industrie d. USA).
5, 18, 19, 24, 30, 119, 127
NIH National Institute of Health. 129
NL Nesting Level. 44
NLM U.S. National Library of Medicine. 129
OCT Optical Coherence Tomography. 18
ODT OpenDocument Text. 78
OFFIS Oldenburger Forschungs- und Entwicklungsinstitut für Informatik-Werkzeuge und -Systeme. 49, 62, 68,
122, 128
OID Object Identifier. 25
OOXML Office Open XML. 78
OSI Open Systems Interconnection. 18
OWL Web Ontology Language. 49
PACS Picture Archiving and Communication System. 4, 10, 19, 28, 29, 32, 46, 85, 86, 120, 123, 127, 128
PDF Portable Document Format. 18, 24, 36, 73, 78, 109
PHP PHP: Hypertext Preprocessor. 66, 85
PRWF Pathology Report Workflow. 47
PWF Pathology Workflow (IHE Integrationsprofil). 47
RFC Request for Comments. 56, 57, 67
RIM Reference Information Model. 46
RIS Radiologieinformationssystem. 17, 19, 120, 123, 130
RLE Run Length Encoding. 27, 30
ROI Region of Interest. 36, 39
RPC Remote Procedure Call. 67
RTF Rich Text Format. 78
SAX Simple API for XML. 60
SCP Service Class Provider. 28, 85, 87
SCU Service Class User. 28, 29, 85, 87
SDE Structured Data Entry. 15
SDK Software Development Kit. 29, 88
SDM SNOMED DICOM Microglossary. 26
SIG Special Interest Group (HL7-Arbeitsgruppe). 46
SNOMED Systematized Nomenclature of Human and Veterinary Medicine. 26, 31, 42, 43, 95, 97, 118–120,
126
SOP Service-Object Pair. 17, 21, 25, 28, 36, 37, 46, 84, 85, 87, 107
SPARC Scalable Processor Architecture. 88
SQ Sequence of Items. 24
Seite 116
Abkürzungsverzeichnis
SQL Structured Query Language. 28, 59, 85, 86
SR Structured Reporting. 21, 36, 37, 46, 69, 89, 107, 112, 122–124, 129
TC Technical Committee. 18, 119, 121
TCP Transmission Control Protocol. 18, 28, 87
TID Template Identifier. 44, 46, 107, 109
TIFF Tagged Image File Format. 10, 118
TMA Tissue Microarray. 11, 32, 53
UCUM Unified Code for Units of Measure. 56, 107–109, 126, 128
UID Unique Identifier. 25, 28, 38, 74, 77, 84, 85, 108, 109, 127
UK-SH Universitätsklinikum Schleswig-Holstein (hier immer: Standort Lübeck). III, 16, 65, 78, 90–92, 96, 97,
99, 103, 126
USB Universal Serial Bus. 18, 68
UTF Unicode Transformation Format. 27
VM Value Multiplicity. 24, 44
VR Value Range. 24, 26, 27, 63
VT Value Type. 44
W3C World Wide Web Consortium. 129, 130
WADO Web Access to DICOM persistent Objects. 18, 46, 78
WG Working Group. 19, 31–33, 46, 54, 60, 120, 125
WSI Whole Slide Image. 32, 53
WWW World Wide Web. 62
XML Extensible Markup Language. 13, 27, 45, 46, 49, 54–61, 65–67, 78, 80, 105–108, 118, 119, 122, 124, 126,
129
XSL Extensible Stylesheet Language. 61
XSL-FO Extensible Stylesheet Language – Formatting Objects. 78
XSL-T Extensible Stylesheet Language Transformations. 56
ZUML ZK User Interface Markup Language. 67
Seite 117
Literatur
Literaturverzeichnis
Das Quellenverzeichnis ist dreigeteilt:
ˆ Im ersten Teil werden Quellen gelistet, die keinen zeitlichen Änderungen unterworfen sind. Die Liste ist
alphabetisch nach dem Verweiskürzel sortiert.
ˆ Der zweite Teil listet Quellen, bei denen im Laufe der Zeit mit Veränderungen gerechnet werden muss,
vornehmlich Online-Lernmaterialien und Firmenwebseiten. Diese Liste ist alphabetisch nach Autor bzw.
Firmenname sortiert. Namen, die mit The“ beginnen, werden anhand des folgenden Wortes einsortiert.
”
ˆ Im dritten Teil werden reine Bildquellen angegeben.
Alle in dieser Diplomarbeit genannten Webseiten wurden zuletzt am 12.8.2008 besucht.
Literatur
[Ado92] Adobe Systems Incorporated (1992). TIFF— Revision 6.0. Mountain View, California: Adobe Developers Association.
http://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf
[ANS78] American National Standards Institute (ANSI, 1978). ANSI X3.9-1978 – Programming Language Fortran.
http://www.fortran.com/F77_std/rjcnf-0.html
[Ast03] Astley SM (2003). Computer-aided detection for screening mammography. In: Lemke HU et al. (Hrsg.).
Computer Assisted Radiology and Surgery (CARS) 2003. Proc. of the 17th International Congress and
Exhibition. Amsterdam: Elsevier, 927-932.
[Bec06] Becker S (2006). Reimplementierung eines kommerziellen klinischen Befundsystems auf der Basis des
HL7-CDA-Standards. Universität zu Lübeck: Bachelorarbeit am Institut für Medizinische Informatik.
[Ber03] von Berg J (2003). A grammar-based speech user interface generator for structured reporting. In: Lemke
HU et al. (Hrsg.). Computer Assisted Radiology and Surgery (CARS) 2003. Proc. of the 17th International
Congress and Exhibition. Amsterdam: Elsevier, 887-892.
[Bid98a] Bidgood WD Jr (1998). Clinical importance of the DICOM structured reporting standard. Int J Card
Imaging. 1998 Oct;14(5):307-315.
[Bid98b] Bidgood WD Jr (1998). The SNOMED DICOM Microglossary: Controlled terminology resource for
data interchange in biomedical imaging. Methods Inf Med. 37(4-5):404-414.
[BMU07] Bundesministerium für Umwelt, Naturschutz und Reaktorsicherheit (BMU) (2007). Umweltradioaktivität und Strahlenbelastung – Jahresbericht 2006. Bonn: BMU.
http://www.bfs.de/de/bfs/druck/uus/jb06_Gesamtbericht.pdf
[BPR+06] Begelman G, Pechuk M, Rivlin E et al. (2006). System for Computer-Aided Multiresolution Microscopic Pathology Diagnostics. In: IEEE International Conference on Computer Vision Systems (ICVS) 2006.
New York: IEEE, 16.
[BSB+01] Baujard O, Staub JC, Blot D et al. (2001). DICOM and XML: Union makes Strength. In: Lemke
HU et al. (Hrsg.). Computer Assisted Radiology and Surgery (CARS) 2001. Proc. of the 15th International
Congress and Exhibition. Berlin: Elsevier, 820-823.
[Bun06] Bundesärztekammer (2006). (Muster-) Berufsordnung für die deutschen Ärztinnen und Ärzte (Stand
2006).
http://www.bundesaerztekammer.de/downloads/MBOStand20061124.pdf
[BWM03] Bortoluzzi MK, von Wangenheim A, Maximini K (2003). A clinical report management system based
upon the DICOM structured report standard. In: Proc. of the 16th IEEE Symposium on Computer-Based
Medical Systems (CBMS ’03). New York: IEEE, 183-188.
[Bru05] Bruder L (2005). Konvertierung von DICOM-Dateien in eine XML-Transfersyntax. Hochschule Heilbronn: Diplomarbeit am Institut für Verteilte Systeme und Telemedizin.
Seite 118
Literatur
[CDK01] Csipo D, Dayhoff RE, Kuzmak PM (2001). Integrating Digital Imaging and Communications in Medicine (DICOM)-Structured Reporting Into the Hospital Environment. J Digit Imaging. 2001 Jun;14(2 Suppl
1):12-16.
[CEN04] Comité Européen de Normalisation (CEN)/TC 251 (2004). Health informatics – Digital imaging –
Communication, workflow and data management. Europäische Norm EN 12052.
Erhältlich für ca. 45 EUR beim Deutschen Institut für Normung (DIN) unter
http://www.named.din.de/cmd?artid=78015390&level=tpl-art-detailansicht
[CKR93] Cotran RS, Kumar V, Robbins SL (1993). Grundlagen der Allgemeinen Pathologie. Stuttgart-JenaNew York: Gustav Fischer (ISBN 3-437-00677-0).
[Clu00] Clunie D A (2000). DICOM Structured Reporting. Bangor, Pennsylvania: PixelMed Publishing (ISBN
0-9701369-0-0).
Buch vergriffen! Herunterladbar unter http://www.pixelmed.com/srbook.html
[Clu07] Clunie D A (2007). DICOM Structured Reporting and Cancer Clinical Trials Results. Cancer Informatics. 2007;4:33-56.
[DAB+06] Dolin R, Alschuler L, Boyer S et al. (2006). HL7 Clinical Document Architecture, Release 2. J Am
Med Inform Assoc. 2006;13:30-39.
[DHM+06] Durie BG, Harousseau JL, Miguel JS et al. (2006). International uniform response criteria for
multiple myeloma. Leukemia. 2006 Sep;20(9):1467-73.
http://myeloma.org/pdfs/InternationalUniformResponseCriteria.pdf
[DIC05] DICOM Standards Committee (2005). DICOM in XML – Where we’re headed. Budapest: NEMA.
http://medical.nema.org/Dicom/minutes/Committee/2005/2005-09-29/DICOM%20in%20XML.ppt
[DIC07] DICOM Standards Committee (2007). Digital Imaging and Communications in Medicine (DICOM).
CP-730 – Clarify SNOMED coding scheme designators. Final Text. Rosslyn, Virginia: NEMA Standards
Publications.
ftp://medical.nema.org/medical/dicom/final/cp730_ft.pdf
[DIC08a] DICOM Standards Committee (2008). Digital Imaging and Communications in Medicine (DICOM)
PS 3 - 2008. Standard. Rosslyn, Virginia: NEMA Standards Publications.
ftp://medical.nema.org/medical/dicom/2008/
[DIC08b] DICOM Working Group Twenty-Six (Pathology). MINUTES. March 1, 2008. Denver, Colorado:
NEMA.
http://medical.nema.org/DICOM/minutes/WG-26/2008/2008-03-01/WG-26_2008-03-01_Min.doc
[DIC08c] DICOM Standards Committee (2008). Digital Imaging and Communications in Medicine (DICOM).
CP-896 – Eliminate 16 bit row and column image size restrictions. Draft. Rosslyn, Virginia: NEMA Standards Publications.
ftp://medical.nema.org/medical/dicom/CP/cp896_01.pdf
[DIC08d] DICOM Standards Committee (2008). Digital Imaging and Communications in Medicine (DICOM).
CP-897 – Context group included twice. Draft. Rosslyn, Virginia: NEMA Standards Publications.
ftp://medical.nema.org/medical/dicom/CP/cp897_01.pdf
[DIC08e] DICOM Standards Committee (2008). Strategic Document. Version 8.0. Rosslyn, Virginia: NEMA
Standards Publications.
http://medical.nema.org/dicom/geninfo/Strategy.pdf
[DIC08f] DICOM Working Group Six (Base Standard). MINUTES. June 23-26, 2008. Cardiff: NEMA.
http://medical.nema.org/Dicom/minutes/WG-06/2008/2008-06-23/←WG-06 2008-06-23 Min-Rev1.doc
[DMB+82] Deugnier Y, Margules S, Brissot P et al. (1982). Comparative study between biochemical and histological methods and image analysis in liver iron overload. J Clin Pathol. 1982 Jan;35(1):45-51.
http://www.pubmedcentral.nih.gov/picrender.fcgi?artid=497446&blobtype=pdf
[Doi07] Doi K (2007). Computer-Aided Diagnosis in Medical Imaging: Historical Review, Current Status and
Seite 119
Literatur
Future Potential. Comput Med Imaging Graph. 2007;31(4-5):198-211.
http://www.pubmedcentral.nih.gov/picrender.fcgi?artid=1955762&blobtype=pdf
[Eic02] Eichelberg M (2002). Ein Verfahren zur Bewertung der Interoperabilität medizinischer Bildkommunikationssysteme. Carl von Ossietzky Universität Oldenburg: Dissertation am Fachbereich Informatik. Aschenberg & Isensee (ISBN 3-89598-852-9).
[Eic07] Eichhorn O (2007). DICOM WG 26: Proposal for Storing Whole-slide Images for Pathology using DICOM. Aperio Technologies.
http://medical.nema.org/Dicom/minutes/WG-06/2007/2007-01-22/←Storing Whole-Slide Images for Pathology.doc
[Eic08] Eichelberg M (2008). Medizinische Bildkommunikation im DICOM- und IHE-Umfeld. Universität zu
Lübeck: Vortrag am 17.1.2008.
[EKM+00] Edwards PJ, King AP, Maurer CR et al. (2000). Design and evaluation of a system for microscopeassisted guided interventions (MAGI). IEEE Trans Med Imaging. 2000 Nov;19(11):1082-93.
[ERK+00] Eichelberg M, Riesmeier J, Kleber K et al. (2000). DICOM Presentation States - ein neuer Dienst für
die digitale Bildverteilung und Softcopy-Befundung. In: Horsch A, Lehmann T (Hrsg). Proc. des Workshops
Bildverarbeitung für die Medizin 2000, Algorithmen, Systeme, Anwendungen. München: Springer (ISBN
3-540-67123-4), 223-227.
[ERS91] Eckstein R, Riess H, Siegert W (1991). Hämatologie – ein Leitfaden für Studierende und Ärzte.
Stuttgart-Berlin-Köln: Kohlhammer (ISBN 3-17-010368-7).
[GCP+07] Giraldez JG, Caversaccio M, Pappas I et al. (2007). Design and clinical evaluation of an imageguided surgical microscope with an integrated tracking system. International Journal of Computer Assisted
Radiology and Surgery. 2007 Feb;1(5):253-264.
[Hac07] Hackländer T. Standardisierte radiologische Befundstruktur und deren Umsetzung in DICOM Structured
Reporting. Vortrag auf der 9. RIS-KIS-PACS-Workshop der AGIT (Arbeitsgemeinschaft IT der Deutschen
Röntgengesellschaft) am 6.7.2007.
http://www.drg.de/data/DOWNLOADS/DICOM_2007/F0930%20Hacklaender%20Radiologie-Report.pdf
[Hea07] Health Level Seven, Inc. Implementation Guide for CDA Release 2 - Diagnostic Imaging Report. Committee Draft for 1st Informative Ballot. Version 0.4.22 vom 16.9.2007. Ann Arbor, Michigan: HL7
http://www.hl7.org/Library/Committees/imagemgt/←DiagnosticImagingReportForCdaRelease2Level1to3V04%2E22%2Edoc
[Hea08] Health Level Seven, Inc. Diagnostic Imaging Report – Universal Realm – Based on HL7 CDA Release
2.0. Draft Standard. Ann Arbor, Michigan: HL7
http://www.hl7.org/Library/Committees/structure/←CDA%20IG%20Diagnostic%20Imaging%20Report%2020080306%20draft%2Edoc
[HES+04a] Hussein R, Engelmann U, Schroeter A et al. (2004). DICOM Structured Reporting – Part 1. Overview and Characteristics. Radiographics. 2004;24:891-896.
[HES+04b] Hussein R, Engelmann U, Schroeter A et al. (2004). DICOM Structured Reporting – Part 2. Problems and Challenges in Implementation for PACS Workstations. Radiographics. 2004;24:897-909.
[HF97] Heckner F, Freund M (1997). Praktikum der mikroskopischen Hämatologie, 9. Auflage. München-WienBaltimore: Urban&Schwarzenberg (ISBN 3-541-01009-6).
[HIJ+08] Hall BH, Ianosi-Irimie M, Javidian P et al. (2008). Computer-assisted assessment of the Human Epidermal Growth Factor Receptor 2 immunohistochemical assay in imaged histologic sections using a membrane isolation algorithm and quantitative analysis of positive controls. BMC Medical Imaging. 2008;8:11.
http://www.pubmedcentral.nih.gov/picrender.fcgi?artid=2447833&blobtype=pdf
[Höl06] Hölzer S (2006). Relevanz und Anwendung von SNOMED CT im deutschsprachigen Raum. In: Deutsche
Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e.V. (gmds). 51. Jahrestagung der
Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie. Leipzig, 10.-14.09.2006.
Düsseldorf, Köln: German Medical Science.
Seite 120
Literatur
[Hor97] Horii SC (1997). A Nontechnical Introduction to DICOM. Philadelphia: Department of Radiology,
University of Pennsylvania Medical Center.
http://www.rsna.org/technology/dicom/intro/index.cfm
[HS92] Hees H, Sinowatz F (1992). Histologie – Kurzlehrbuch der Zytologie und mikroskopischen Anatomie, 2.
Auflage. Köln: Deutscher Ärzte-Verlag (ISBN 3-7691-0257-6).
[IHE08] IHE-International (2008). IHE Pathology Technical Framework (PAT TF). Revision 1.15 – Trial Implementation.
http://www.gmsih.fr/fre/ihe/documents_de_reference/cadre_technique_pathologie
[ISO00] International Organization for Standardization (ISO)/IEC JTC1/SC29 WG1 (2000). ISO/IEC 154441:2000. JPEG 2000 Part I Final Committee Draft Version 1.0.
http://www.jpeg.org/public/fcd15444-1.pdf
Anmerkung: Der offizielle JPEG 2000 Standard ist nicht kostenlos erhältlich, sondern muss als ISO/IEC
15444-1:2004 für etwa 150 EUR bei der ISO gekauft werden:
http://www.iso.org/iso/iso catalogue/catalogue tc/←catalogue detail.htm?csnumber=37674
Die in dieser Arbeit getroffenen Aussagen über JPEG 2000 sind aber so grundsätzlich, dass der Final Draft
als Quelle ausreichen sollte.
[ISO02] International Organization for Standardization (ISO)/IEC JTC1/SC6 (2002). ISO/IEC 8824-2:2002.
Information technology – Abstract Syntax Notation One (ASN.1): Information object specification.
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=35685
(ca. 75 EUR)
[ISO04] International Organization for Standardization (ISO)/TC 215/SC2 (2004). ISO 17432:2004. Health
informatics – Messages and communication – Web access to DICOM persistent objects.
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38361
(ca. 60 EUR)
Final Draft unter http://www.kith.no/upload/1770/ISO-DIS-17432.pdf
[ISO06] International Organization for Standardization (ISO)/TC 215 (2006). ISO 12052:2006. Health
informatics – Digital imaging and communication in medicine (DICOM) including workflow and data
management.
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=43218
(ca. 45 EUR)
[ISO08] International Organization for Standardization (ISO)/TC 215 (2008). ISO/HL7 DIS 27931:2008. Health
informatics – HL7 Messaging Standard Version 2.5 – An application protocol for electronic data exchange in
healthcare environments. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.
htm?csnumber=44428 (ca. 40 EUR)
[ISO97] International Organization for Standardization (ISO)/IEC (1997). ISO/IEC Directives - Part 3: Rules
for the structure and drafting of International Standards.
http://isotc.iso.org/livelink/livelink?func=ll&objId=4230520
[IET01] The Internet Society (2001). Request for Comments: 3066. Tags for the Identification of Languages.
http://www.ietf.org/rfc/rfc3066.txt
[IET06] The Internet Society (2006). Request for Comments: 4627. The application/json Media Type for JavaScript Object Notation (JSON).
http://tools.ietf.org/rfc/rfc4627.txt
[IET99] The Internet Society (1999). Request for Comments: 2616. Hypertext Transfer Protocol – HTTP/1.1.
http://www.ietf.org/rfc/rfc2616.txt
[ITU93] International Telecommunication Union. Recommendation T.81. Information Technology – Digital Compression and Coding of Continuous-Tone Still Images – Requirements and Guidelines (JPEGStandard).
http://www.w3.org/Graphics/JPEG/itu-t81.pdf
[JB03] Jensen T, Baumgartner B (2003). A flexible, multimodality structured reporting system based on medical
Seite 121
Literatur
and networking standards. In: Computer Assisted Radiology and Surgery (CARS) 2003. Proc. of the 17th
International Congress and Exhibition. Amsterdam: Elsevier, 893-899.
[KHZ+05] Kalinski T, Hofmann H, Zwönitzer R et al. (2006). Virtuelle Mikroskopie und digitale Pathologie.
Der Pathologe. 2006;27(3):222-227.
[Klo08] Klocke S (2008). Digitale strukturierte Befunde in der Pathologie – Anwendung zur digitalen Befundung in der Pathologie unter Einbezug von Kodierung und digitaler Aufnahme. Universität zu Lübeck:
Diplomarbeit am Institut für Medizinische Informatik.
[Kod96] Eastman Kodak Company (1996). FlashPix Format Specification Version 1.0.
http://graphcomp.com/info/specs/livepicture/fpx.pdf
[KOV+03] Karssemeijer N, Otten JD, Verbeek AL et al. (2003). Computer-aided Detection versus Independent
Double Reading of Masses on Mammograms. Radiology. 2003 Apr;227(1):192-200.
http://radiology.rsnajnls.org/cgi/reprint/227/1/192.pdf
[KSS+07] Kong J, Sertel O, Shimada H et al. (2007). Computer-Aided Grading of Neuroblastic Differentiation: Multi-Resolution and Multi-Classifier Approach. IEEE International Conference on Image Processing
(ICIP). 2007;5:525-528.
[Lan00] Langlotz CP (2000). Structured Reporting in Radiology. Society for Health Service Research in Radiology, Winter 2000 Newsletter.
http://www.structuredreporting.com/langlotz-article.htm
[Lee02] Lee KP (2002). Expressing DICOM SR constraints in XML. In: Lemke HU et al. (2002). Computer
Assisted Radiology and Surgery (CARS) 2002. Proc. of the 16th International Congress and Exhibition.
Berlin-Heidelberg: Springer, 491-496.
[Lee05] Lee KP (2005). Specifying DICOM semantic constraints in XML. US Patent 6950985.
http://www.patentstorm.us/patents/6950985.html
[LH03] Lee KP, Hu J (2003). XML Schema Representation of DICOM Structured Reporting. J Am Med Inform
Assoc. 2003 Apr;10(2):213-223.
[MBP+07] Malich A, Beier A, Bank P et al. (2007). Inwieweit verbessert der Einsatz eines CAD-Systems
das Prüfungsergebnis bei der Beurteilung einer kassenärztlichen Mammographiefallsammlung? Fortschr
Röntgenstr. 2007;179:53-57.
http://www.thieme-connect.com/ejournals/pdf/roefo/doi/10.1055/s-2006-927199.pdf
[MST+02] Morioka CA, Sinha U, Taira R et al. (2002). Structured Reporting in Neuroradiology. Annals of the
New York Academy of Sciences. 2002 Dec;980:259-266.
[Nou06] Noumeir R (2006). Benefits of the DICOM Structured Report. J Digit Imaging. 2006 Dec;19(4):295-306.
[OLC+05] Ortega L, Ladero JM, Carreras MP et al. (2005). A computer-assisted morphometric quantitative
analysis of iron overload in liver biopsies. A comparison with histological and biochemical methods. Pathol
Res Pract. 2005;201(10):673-677.
[OMO01] OTech Inc., Institute for Microtherapy, Kuratorium OFFIS e.V. (2001). DICOM Conformance Statement – DICOMscope 3.5.
ftp://dicom.offis.de/pub/dicom/offis/software/dscope/dscope351/docs/dscs35.pdf
[Oos05] Oosterwijk H (2005). DICOM Basics. 3rd Edition. Aubrey, Texas: OTech, Inc (ISBN 0-9718867-4-1).
Bezug in Deutschland exklusiv über http://shop.hl7.de/
[Phi97] Philips Medical Systems Nederland B.V. (1997). DICOM Cook Book for Implementations in Modalities –
Chapters 1 and 2.
ftp://ftp.philips.com/pub/pms-3003/DICOM_Information/CookBook.pdf
[Pia08] Pianykh OS (2008). Digital Imaging and Communications in Medicine (DICOM): A Practical Introduction and Survival Guide. Berlin: Springer (ISBN 354074570X).
[PIH07] Pöppl S, Ingenerf J, Hatje H (2007). DICOM-SR-based Representation and Interpretation of Histopathological Findings Obtained Automatically from Microscope Image Processing. In: Fischer B, Nawrath
Seite 122
Literatur
R. Projektantrag CICAD – Center for Imaging and Computer Aided Diagnosis. Universität zu Lübeck,
”
Fachhochschule Westküste, 71-72.
[PPZ06] Pelikan E, Philipps M, Zimmermann S (2006). Teleradiologie-Projekt Südbaden“: DICOM-SR
”
Implementierung und elektronische Signatur für Fragestellung und Therapieempfehlung in Anlehnung an
die nationale Telematikinfrastruktur. Vortrag auf der Telemed 2006.
http://www.telemed-berlin.de/telemed2006/Beitraege/S06%20-%20PELIKAN,%20ERNST%20-%
20Teleradiologie-Projekt.pdf
[Psc98] Pschyrembel W (Begr.), Zink Ch, Hildebrandt H (Hrsg.) (1998). Pschyrembel Klinisches Wörterbuch,
258. Auflage. Berlin: de Gruyter (ISBN 3-11-014824-2).
[REJ+01] Riesmeier J, Eichelberg M, Jendrysiak U et al. (2001). DICOM Structured Reporting auf dem Weg in
die Praxis: Erste Erfahrungen. In: Achter interdisziplinärer Workshop KIS/RIS/PACS, Rauischholzhausen,
2001.
http://www.uniklinikum-giessen.de/kis-ris-pacs/archiv/2001/do1130.pdf
[REK+01] Riesmeier J, Eichelberg M, Kleber K et al. (2001). DICOM Structured Reporting – a Prototype
Implementation. In: Lemke HU et al. (Hrsg.). Computer Assisted Radiology and Surgery (CARS) 2001.
Proc. of the 15th International Congress and Exhibition. Berlin: Elsevier (ISBN 0-444-50866-X), 795-800.
[RGM+06] Rojo MG, Garcı́a GB, Mateos CP et al. (2006). Critical Comparison of 31 Commercially Available
Digital Slide Systems in Pathology. Int J Surg Pathol. 14(4):285-305.
[Rie06] Riesmeier J (2006). Ein generisches Verfahren zur adaptiven Visualisierung von strukturierten medizinischen Befundberichten. Carl von Ossietzky Universität Oldenburg: Dissertation am Department für
Informatik der Fakultät II. Aschenberg & Isensee (ISBN 3-89995-295-2).
[Sch06] Schöch W (2006). Integration terminologischer Softwaredienste zur automatischen Analyse von Verordnungsdaten. Universität zu Lübeck: Studienarbeit am Institut für Medizinische Informatik.
[SIM+98] Sturgis CD, Isoe C, McNeal NE et al. (1998). PAPNET – computer-aided rescreening for detection of
benign and malignant glandular elements in cervicovaginal smears: A review of 61 cases. Diagn Cytopathol.
1998 Apr;18(4):307-311.
[SLM02] Sluis D, Lee KP, Mankovich N (2002). DICOM SR – integrating structured data into clinical information systems. Medica Mundi. 2002;46(2):31-36.
http://www.medical.philips.com/main/news/assets/docs/medicamundi/mm_vol46_no2/sluis.pdf
[SM06] Singhal S, Mehta J (2006). Multiple Myeloma. Clin J Am Soc Nephrol. 2006;1:1322-1330.
[THL02] Tirado-Ramos A, Hu J, Lee KP (2002). Information Object Definition-based Unified Modeling Language Representation of DICOM Structured Reporting. J Am Med Inform Assoc. 2002 Jan/Feb;9(1):63-72.
[Tho92] Thomas C (1992). Histopathologie – Lehrbuch und Atlas für die Kurse der allgemeinen und speziellen
Pathologie, 11. Auflage. Stuttgart-New York: Schattauer (ISBN 3-7945-1460-2).
[Top01] Topley K (2001). Core JFC. Java Foundation Classes, 2nd edition. Prentice Hall International (ISBN
0-13090581-X).
Kapitel 10 The Tree Control: Managing Data with JTree verfügbar unter
http://www.informit.com/articles/article.aspx?p=26327&seqNum=1
[Uni06] Medizinische Fakultät der Otto-von-Guericke-Universität Magdeburg (2006). Neue Technik macht das
Mikroskop überflüssig. Universitätsklinikum Magdeburg aktuell. 2006 Apr;2:4-5.
http://www.med.uni-magdeburg.de/index.php?id=5483&suffix=pdf&nonactive=1&lang=de←&site=unimagdeburg mm
[VBM+08] Veronesi G, Bellomi M, Mulshine JL et al. (2008). Lung cancer screening with low-dose computed tomography: A non-invasive diagnostic protocol for baseline lung nodules. Lung Cancer. 2008 Feb; In
Veröffentlichung.
[VHi06] Verband der Hersteller von IT-Lösungen für das Gesundheitswesen e.V. (VHitG, 2006). Arztbrief auf
Basis der HL7 Clinical Document Architecture Release 2 für das deutsche Gesundheitswesen – Implementierungsleitfaden.
Seite 123
Literatur
http://www.hl7.de/download/documents/cdar2-arztbrief/Leitfaden-VHitG-Arztbrief-v150.pdf
[Wag08] Wagner J (2008). Abbildung von DICOM SR-Dokumenten in HL7 CDA-Dokumente. Universität zu
Lübeck: Ausarbeitung zum Hauptseminar Bildverarbeitung am Institut für Medizinische Informatik, Sommersemester 2008.
[Wen07] Wenz C (2007). JavaScript und AJAX – Das umfassende Handbuch, 7. Auflage. Bonn: Galileo Press
(ISBN 978-3-89842-859-0).
http://www.galileocomputing.de/openbook/javascript_ajax/
[WGC+06] Wu N, Gamsu G, Czum J et al. (2006). Detection of small pulmonary nodules using direct digital
radiography and picture archiving and communication systems. J Thorac Imaging. 2006 Mar;21(1):27-31.
[Win79] Wingert F (1979). Medizinische Informatik. Stuttgart: Teubner (ISBN 3-519-02453-5).
[WJT+07] Wollenweber T, Janke B, Teichmann A et al. (2007). Korrelation zwischen histologischem Befund
und einem Computer-assistierten Detektionssystem (CAD) für die Mammografie. Geburtsh Frauenheilk
2007;67:135-141.
http://www.thieme-connect.de/ejournals/pdf/gebfra/doi/10.1055/s-2006-955983.pdf
[Zha05] Zhao L, Lee KP, Hu J (2005). Generating XML Schemas for DICOM Structured Reporting Templates.
J Am Med Inform Assoc. 2005;12:72-83.
[Zuk05] Zukowski J (2005). The Definitive Guide to Java Swing, 3rd Edition. New York: Springer (ISBN 159059-447-9).
Webseiten
[1] 3DHistech Ltd. PathoNet – Slides by organs.
http://www.pathonet.org/index.php?module=slides-by-organs
[2] Adobe Systems Inc. Installing JSEclipse.
http://www.interaktonline.com/Documentation/JSEclipse/jseclipse.htm#2000_installing.htm
[3] Amazon.com, Inc. Amazon.de.
http://www.amazon.de/
[4] American National Standards Institute (ANSI). ANSI/HL7 CDA-R2 2005 – HL7 Clinical Document Architecture, Release 2.0.
http://webstore.ansi.org/RecordDetail.aspx?sku=ANSI%2FHL7+CDA-R2+2005
[5] The Apache Software Foundation. Apache FOP.
http://xmlgraphics.apache.org/fop/index.html
[6] Aperio Technologies, Inc. Bringing Digital Pathology to Life.
http://www.aperio.com/
[7] Arbeitsgemeinschaft der Wissenschaftlichen Medizinischen Fachgesellschaften (AMWF). Wissenschaftlich
begründete Leitlinien für Diagnostik und Therapie.
http://leitlinien.net/
[8] Art & Science. Was kann die neue Bildarchitektur FlashPix?
http://www.photocd.de/flashpix.htm
[9] Boyd N et al. Rhino: JavaScript for Java.
http://www.mozilla.org/rhino/
[10] Carl Zeiss MicroImaging GmbH. MIRAX Solutions from Carl Zeiss.
http://www.zeiss.de/mirax
[11] Carnegie Mellon University. Sphinx-4 – A speech recognizer written entirely in the Java— programming
language.
http://cmusphinx.sourceforge.net/sphinx4/
[12] Centre for Educational Sociology (CES), University of Edinburgh. COSMOS – Cluster Of Systems of
Seite 124
Literatur
Metadata for Official Statistics.
http://www.epros.ed.ac.uk/cosmos/
[13] Chapman J et al. BrowserLauncher2.
http://browserlaunch2.sourceforge.net/
[14] The Clinical Information Consultancy Ltd. CliniClue Software.
http://www.cliniclue.com/software
[15] Clunie D A. David Clunie’s Medical Image Format Site.
http://www.dclunie.com/
[16] Clunie D A. DICOM Information Sources.
http://www.dclunie.com/medical-image-faq/html/part8.html
[17] Clunie D A. DICOM Standard Status – Supplements by Number
http://www.dclunie.com/dicom-status/status.html#SupplementsByNumber
[18] Clunie D A. PixelMed Java DICOM Toolkit.
http://www.pixelmed.com/
[19] Crockford D. Einführung in JSON.
http://json.org/json-de.html
[20] The Cyclops Group. Research on Medical Imaging Software.
http://www.cyclops.ufsc.br/
[21] dc-systeme Informatik GmbH. dc-pathos/ipms – integriertes Pathologie-Management-System.
http://www.dc-systeme.de/Projekt/pathologie.html
[22] Definiens AG. Automated Image Analysis.
http://www.definiens.com/
[23] Deutsche Krebsgesellschaft e.V. Plasmozytom, Morbus Kahler, Multiples Myelom.
http://www.krebsgesellschaft.de/plasmozytom,27478.html
[24] Deutsches Institut für Medizinische Dokumentation und Information (DIMDI). ICD-O-3 – Internationale
Klassifikation der Krankheiten für die Onkologie, 3. Revision.
http://www.dimdi.de/static/de/klassi/diagnosen/icdo3/index.htm
[25] DICOM Standards Committee. Members of the DICOM Standards Committee.
http://medical.nema.org/members.pdf
[26] DICOM Standards Committee. Meeting Minutes. WG-6 (Base Standard).
http://medical.nema.org/Dicom/minutes/WG-06/
[27] DICOM Standards Committee. Procedures for the DICOM Standards Committee.
http://medical.nema.org/Dicom/Geninfo/Procedures.pdf
[28] E & L medical systems GmbH. Clinic WinData.
http://www.eundl.de/live/index.php?id=26
[29] Ecma International. Standard ECMA-262 – ECMAScript Language Specification.
http://www.ecma-international.org/publications/standards/Ecma-262.htm
[30] Erasure Wars Agency. Why Editable Table Cells Are Evil.
http://www.erasurewars.net/editabletablecells/
[31] The FreeBSD Project. FreeBSD Java— Project.
http://www.freebsd.org/java/
[32] Fuchs T et al. script.aculo.us.
http://script.aculo.us/
[33] Gatell-Rica F. Java Dicom Buddy.
http://sourceforge.net/projects/jdicom-buddy/
Seite 125
Literatur
[34] Google. Willkommen bei Google Earth.
http://earth.google.de/
[35] Google. Google Web Toolkit.
http://code.google.com/webtoolkit/
[36] Grönemeyer-Institut für Mikrotherapie. Home.
http://www.microtherapy.de/
[37] The GTK+ Team. The GTK+ Project.
http://www.gtk.org/
[38] Haase C. Java on Vista: Yes, it Works.
http://weblogs.java.net/blog/chet/archive/2006/10/java_on_vista_y.html
[39] HAL9000 S.r.l. The Last Supper in Detail.
http://www.haltadefinizione.com/en/
[40] Hamamatsu Photonics Deutschland GmbH. Virtual Microscopy / NanoZoomer.
http://sales.hamamatsu.com/de/produkte/system-division/virtual-microscopy.php
[41] Health Level Seven, Inc. Health Level Seven.
http://www.hl7.org/
[42] heise online. Erstes Entwicklungskit für Open XML von Microsoft.
http://www.heise.de/newsticker/meldung/109299
[43] heise online. Java 6 für Mac OS X 10.5.
http://www.heise.de/newsticker/meldung/107213
[44] heise online. Java Platform Standard Edition in der Version 6 verfügbar.
http://www.heise.de/newsticker/meldung/82319
[45] HL7 Benutzergruppe in Deutschland e.V. Commonly Used UCUM Codes for Healthcare Units.
http://www.hl7.de/download/documents/ucum/ucum.html
[46] HL7 Benutzergruppe in Deutschland e.V. Technische Publikationen (Download-Übersicht).
http://www.hl7.de/publikationen/techdok.php
[47] van Hoff A et al. JmDNS.
http://sourceforge.net/projects/jmdns/
[48] The hsqldb Development Group. hsqldb - 100% Java Database.
http://www.hsqldb.org/
[49] IHE International. IHE Integration Statements.
http://www.ihe.net/Resources/ihe_integration_statements.cfm
[50] IHE International. Welcome to Integrating the Healthcare Enterprise.
http://www.ihe.net/
[51] Institut für Pathologie, Universitätsklinikum Schleswig-Holstein
Präparatekasten Histologie.
http://www.patho.uni-luebeck.de/praepkasten
(UK-SH),
Campus
Lübeck.
[52] International Health Terminology Standards Development Organisation (IHTSDO). SNOMED CT.
http://www.ihtsdo.org/snomed-ct/
[53] International Organization for Standardization (ISO). ISO 3166 code lists.
http://www.iso.org/iso/country_codes/iso_3166_code_lists.htm
[54] jOpenDocument.org. jOpenDocument.
http://www.jopendocument.org/
[55] Kay MH. SAXON – The XSLT and XQuery Processor.
http://saxon.sourceforge.net/
Seite 126
Literatur
[56] Kooperationsgemeinschaft Mammographie in der ambulanten vertragsärztlichen Versorgung GbR.
Mammographie-Screening.
http://www.mammographie-screening.org
[57] Leica Microsystems GmbH. Leica DMD108 – Digital microimaging device for clinical diagnostics labs.
http://www.leica-microsystems.com/WebSite/products.nsf/(ALLIDs)/←E972BA615AB8879EC12571D3004956AA
[58] Library of Congress. Codes for the Representation of Names of Languages. Downloadable text files.
http://www.loc.gov/standards/iso639-2/ascii_8bits.html
[59] Liu J. ZK vs. GWT : Server-Centric Matters!.
http://www.zkoss.org/smalltalks/gwtZk/
[60] Lyons M. Breaking the Gigapixel Barrier.
http://www.tawbaware.com/maxlyons/gigapixel.htm
[61] Malaterre M et al. Grass roots DiCoM (GDCM).
http://gdcm.sourceforge.net/wiki/index.php
[62] Malaterre M et al. Patching OpenOffice.org.
http://gdcm.sourceforge.net/wiki/index.php/Module_Attributes#Patching_OpenOffice.org
[63] The MARF Research and Development Group. MARF, The Modular Audio Recognition Framework, and
its Applications.
http://marf.sourceforge.net
[64] Medical Connections Ltd. DicomObjects Wiki – Basic DICOM Operations.
http://www.medicalconnections.co.uk/wiki/Basic_DICOM_Operations
[65] MEDNOVO Medical Solutions Software GmbH. MediColor - Überblick.
http://www.mednovo.de/produkte/software-fuer-krankenhaeuser/medicolor/ueberblick/
[66] medPACS GmbH.
http://www.medpacs.de/
[67] Metzmacher D. AJAX-Bibliotheken und -Frameworks - Teil 1.
http://www.drweb.de/programmierung/ajax-frameworks.shtml
[68] MHGS. DICOMpedia
(Nachschlagen von DICOM-Attributen und -UIDs)
http://www.dicom-solutions.com/dicompedia.shtm
[69] Microsoft Corp. Microsoft Office Binary (doc, xls, ppt) File Formats.
http://www.microsoft.com/interop/docs/OfficeBinaryFormats.mspx
[70] Microsoft Corp. Microsoft Virtual Earth: The Integrated Mapping, Imaging, Search, and Location Platform.
http://www.microsoft.com/virtualearth/
[71] Microsoft Corp. MSDN Library – Component Object Model.
http://msdn.microsoft.com/en-us/library/aa286559.aspx
[72] Milne P et al. TableRowSorter – a decorator for TableModels; adding sorting functionality to a supplied
TableModel.
http://www.devdaily.com/java/jwarehouse/hsqldb/src/org/hsqldb/util/←TableSorter.java.shtml
[73] National Electrical Manufacturers Association (NEMA). DICOM Homepage.
http://dicom.nema.org/
[74] NEXUS AG. NEXUS / PATHOLOGIE.
http://www.nexus-ag.de/web/0/inter/index.php?act=art&act2=show&←art id=dc 2007 06 21 9cb8f503c6b85d77ff
[75] Niemeyer P. BeanShell – Lightweight Scripting for Java.
http://www.beanshell.org/
Seite 127
Literatur
[76] Nikon Instruments Europe B.V. Products – Digital Pathology.
http://www.nikoninstruments.eu/digital_pathology/
[77] Novell, Inc. Mono Gui Toolkits.
http://www.mono-project.com/Gui_Toolkits
[78] Novell, Inc. Mono Project Roadmap.
http://www.mono-project.com/Mono_Project_Roadmap
[79] O’Conner J. Scripting for the Java Platform.
http://java.sun.com/developer/technicalArticles/J2SE/Desktop/scripting/
[80] O’Conner J. Using the Desktop API in Java SE 6.
http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/desktop_api/
[81] Object Management Group, Inc. Clinical Observations Access Service, version 1.0.
http://www.omg.org/technology/documents/formal/clinical_observation_access_service.htm
[82] OFFIS e. V. DCMTK – DICOM-Toolkit.
http://dicom.offis.de/dcmtk.php.de
[83] OFFIS e. V. DICOMscope – DICOM-Viewer.
http://dicom.offis.de/dscope.php.de
[84] Olympus America Inc. About Bacus Labratories, Inc..
http://www.olympusamerica.com/seg_section/seg_vm.asp
[85] Olympus Deutschland GmbH. dotSlide – Virtuelles Slide-System.
http://www.olympus.de/microscopy/22__slide.htm
[86] Olympus Soft Imaging Solutions GmbH. Slide Gallery.
http://dotslide.olympus-sis.com/
[87] OpenOffice.org. Writer.
http://de.openoffice.org/product/writer.html
[88] OTech, Inc. PACS, DICOM, & HL7 Training and Consulting.
http://www.otechimg.com/
[89] Philips Electronics N.V. Digital Radiography – CAD Chest.
http://www.medical.philips.com/main/products/xray/products/radiography/cad%5Fchest/
[90] Pilafian D. Bare Bones Browser Launch for Java.
http://www.centerkey.com/java/browser/
[91] Pobst J. Code Monkey: The Big Finale.
http://jpobst.blogspot.com/2008/05/big-finale.html
[92] Potix Corp. ZK.
http://www.zkoss.org/product/zk.dsp
[93] Prototype Core Team. Prototype JavaScript framework: Easy Ajax and DOM manipulation for dynamic
web applications.
http://www.prototypejs.org/
[94] Reed Business Information Ltd. New Scientist Invention Blog: Wide-angled gigapixel satellite surveillance.
http://www.newscientist.com/blog/invention/2007/09/wide-angled-gigapixel-satellite.html
[95] Regenstrief Institute, Inc. LOINC Downloads.
http://loinc.org/downloads
[96] Regenstrief Institute, Inc. UCUM – The Unified Code for Units of Measures.
http://www.regenstrief.org/medinformatics/ucum
[97] Santesoft. Sante DICOM HEXViewer.
http://www.santesoft.com/hexviewer.html
Seite 128
Literatur
[98] Schöch W. Diploma thesis Using DICOM SR in Pathology“. (Begleithomepage zu dieser Diplomarbeit)
”
http://www.schoech.de/diploma/
[99] Schöch W. List of DICOM Toolkits for Various Programming Languages.
http://www.schoech.de/diploma/toolkits.html
[100] Siemens AG. Software erkennt Lungenkrebs schon im Frühstadium.
http://a1.siemens.com/innovation/de/news_events/innovationnews/innovationnews-meldungen/
medizin/software_erkennt_lungenkrebs_schon_im_fruehstadium.htm
[101] Siemens AG. Digitale Gutachter verbessern Krebsvorsorge.
http://a1.siemens.com/innovation/de/news_events/innovationnews/innovationnews-meldungen/
medizin/digitale_gutachter_verbessern_krebsvorsorge.htm
[102] Simon listens. simon – open-source speech recognition.
http://www.simon-listens.org
[103] Smart J et al. wxWidgets Cross-Platform GUI Library.
http://www.wxwidgets.org/
[104] Sun Microsystems, Inc. Java 3D— Downloads: Release Builds.
https://java3d.dev.java.net/binary-builds.html
[105] Sun Microsystems, Inc. Java DB at a Glance.
http://developers.sun.com/javadb/
[106] Sun Microsystems, Inc. The Java— Tutorials. Creating a GUI with JFC/Swing.
http://java.sun.com/docs/books/tutorial/uiswing/
[107] Sun Microsystems, Inc. The Java— Tutorials. Internationalization.
http://java.sun.com/docs/books/tutorial/i18n/
[108] Sun Microsystems, Inc. OpenJDK.
http://openjdk.java.net/
[109] Sun Microsystems, Inc. scripting.
https://scripting.dev.java.net/
[110] Sun Microsystems, Inc. Scripting for the Java— Platform.
http://java.sun.com/javase/6/docs/technotes/guides/scripting/index.html
[111] Sun Microsystems, Inc. & Contributors: SwingLabs Sub Projects.
http://swinglabs.org/projects.jsp
[112] Systems Pathology Company (SPC), LLC. Products.
http://www.systemspath.com
[113] Topologi Pty. Ltd. Schematron – A language for making assertions about patterns found in XML documents.
http://www.schematron.com/
[114] Trochim WMK. Research Methods Knowledge Base – Types Of Questions.
http://www.socialresearchmethods.net/kb/questype.php
[115] Trolltech. Qt Cross-Platform Application Framework.
http://trolltech.com/products/qt
[116] Trygve Reenskaug. MVC.
http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html
[117] U.S. National Library of Medicine (NLM) and National Institute of Health (NIH). PubMed Home.
http://www.ncbi.nlm.nih.gov/pubmed/
[118] Windoffer R, Leube R (Institut für Anatomie und Zellbiologie, Universität Mainz). Mainzer Histo Maps.
http://www.mhm.uni-mainz.de/
[119] World Wide Web Consortium (W3C). The XMLHttpRequest Object.
Seite 129
Literatur
http://www.w3.org/TR/XMLHttpRequest/
[120] World Wide Web Consortium (W3C). Document Object Model (DOM).
http://www.w3.org/DOM/
[121] xRez Studio. Extreme Resolution – Large-Scale Panoramic Image Creation.
http://www.xrez.com/
[122] Yahoo Inc. Yahoo! Design Pattern Library.
http://developer.yahoo.com/ypatterns/index.php
[123] Yahoo Inc. Yahoo! User Interface Library (YUI).
http://developer.yahoo.com/yui/
[124] Zeilinger G et al. dcm4che – Open Source Clinical Image and Object Management.
http://www.dcm4che.org/
Bilder
[125] Kollage IT-Landschaft im Krankenhaus“ (Abb. 7)
”
ˆ CT: http://www.uniklinikum-giessen.de/radiologie/comptomoen.html
ˆ C-Bogen, Ultraschall:
http://www.tierklinik-ludwigsburg.de/Leistungen02_TechnAusstattung.htm
ˆ Röntgen: http://www.radiology-equipment.com/detail.CFM?LineItemID=1456
ˆ SPECT, Mammographie-Röntgen: http://www.do-radiology.de/
ˆ RIS: http://www.dc-systeme.de/Projekt/diktat_p.html
ˆ PDMS: http://www.medical.siemens.com/siemens/de DE/gg hs FBAs/files/PLM-FE-MI/←Brochure-m-PDM-2005-08.pdf
ˆ Mamma-MRT-Bild: http://www.charite.de/rv/str/patinfo/mamma/mamma-mrt/index.php
ˆ Röntgenbild, Szintigraphie: http://www.journalonko.de/aktuellview.php?id=1038
ˆ MRT-Bild: http://www.kup.at/journals/abbildungen/gross/321.html
ˆ Angiographie: http://commons.wikimedia.org/wiki/←Image:Cerebral angiography, arteria vertebralis sinister injection.JPG
ˆ Befundungsmonitor: http://www.dimedtec.com/←3 Megapixel Graustufen Befundmonitore nach DIN 6868-57~~57.aspx
(Seite nicht mehr erreichbar)
ˆ Röntgenfilmbelichter: http://pw.carestreamhealth.com/en/global/en/health/←productsByType/mps/eqp/dry/dv6800.jhtml.htm
[126] Kamiyamane Y. Icons für die Einträge im DICOM-SR-Baum (Creative Commons Attribution 3.0 license).
http://www.pinvoke.com/
Seite 130