Generic Coding mittels XML in der medizinischen Dokumentation |
Abstract: Generic Coding by XML in Medical Documentation:
Generic Coding is a description of
textual documents regardless of their explicit
representation, e.g. on paper or computerscreen.
The usage of this form causes advantage
of processing of documents: Access, storage, retriev and reuse
can be enhanced, because the semantic structure of the document
is preserved.
Generic Coding is usually realized by Markup Languages like SGML or
the Extensible Markup Language (XML).
A special generic coding Markup Language for clinical purposes,
called Munich Medical Report (MucMedRep),
has been developed. The basic criteria for its definition are
the following rules:
1. The description is formal, its correctness can be
checked by a simple and deterministic algorithm.
2. The description is structured, references
are maintained.
3. The description is independent of the choose of media,
it is independent of the selected presentation form
4. The description is independent of the choice of transmission protocol.
5. The description is independent of the choice of a special product.
6. The description allows an exchange of data beyond the the boundaries
of an institution.
7. The description can be used with a lot of different document types.
The description has been formulated in XML.
Equivalant formulations are given in CORBA/IDL and in a
relational data model.
Its relations to international standards are shown.
Concept and design of a system using the MucMedRep
are presented.
Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure. | |
I have made this letter longer than usual because I lack the time to make it shorter. | |
Blaise Pascal |
Portable: Survives system reboot. | |
![]() |
Beispiel a) ist ein wohlgeformtes XML-Dokument. Es enthält das Wurzelelement ROOT, das seinerseits in korrekter Verschachtelung weitere Elemente enthält. In Beispiel b) sind die Start- und End- Tags fehlerhaft. In Beispiel c) ist die Verschachtelung falsch. Das Tag EM liegt teilweise innerhalb des Elements TEXT und teilweise außerhalb. |
![]() |
Beide Beispiele stellen wohlgeformte XML-Dokumente dar, aber nur Beispiel a) ist auch gültig. In Beispiel b) erscheint vor dem optionalen Floskel-Element ein nicht deklariertes Element, das mit "nachname" bezeichnet ist. Dies ist hier nicht erlaubt. Gleichzeitig fordert die Grammatik, dass an dieser Stelle ein Element mit dem Namen "name" steht. Wegen dieser beiden Fehler ist Beispiel b) nicht gültig. |
![]() |
![]() |
![]() |
Ein einfaches Beispiel: Eine DTD, die eine Grammatik definiert, eine konkrete Instanz dieser DTD, also ein Dokument und eine mögliche Präsentationsform, hier ein HTML-Output, der mit Netscape 3.0 gerendert wurde. |
![]() |
Die unterschiedlichen Ebenen der Beschreibung eines Dokuments. Zur Veranschaulichung wird in Klammern eine traditionelle Berufsgruppe im Verlagswesen angegeben, die sich um diesen Abschnitt der Dokumentenerstellung kümmert. Dateiformate sind rechts auf der Höhe angegeben, die ihrer Modellierung entsprechen. Umformungen sind meist nur von Formaten weiter oben nach unten möglich. Word-X steht für die Gruppe der üblichen Textverarbeitungsformate. |
Your true value depends entirely on what you are compared with. | |
![]() |
So stellt sich aus der Sicht von Dicom die Welt dar. Die Darstellung verzichtet auf einige hier nicht relevante Entitäten zur besseren Übersicht. |
If you have a difficult task, give it to a lazy person - they will find an easier way to do it. | |
Hlade's Law |
![]() |
Das Entity Relationship (ER) Modell eines Dokuments aus Sicht der MucMedRep Document Type Definition (DTD). |
![]() |
Die vollständige Formulierung der MucMedRep Document Type Definition. |
![]() |
Die Formulierung der MucMedRep-Struktur kann in verschiedenen formalen Sprachen erfolgen. Hinter jeder Sprache steckt eine eigenes Softwarekonzept. JAVA steht für die klassische objektorientierte Programmiersprache, CORBA für das Konzept der Objektverteilung und XML für objektorientiertes Dokumentenmarkup. Die generischen (logisch strukturierten) Formulierungen sind ineinander transformierbar. Die angegebenen Protokolle sind teilweise Vorschläge, die häufig Verwendung finden. |
![]() |
Design des XML Dokumentensystems. Die Applikation wird im konkreten Fall in Python implementiert. Jeder andere DTD-konforme Editor wäre hier einsetzbar. Die Kommunikation erfolgt über das Standard-Internetprotokoll HTTP, wobei das POST-Kommando der CGI-Spezifikation Verwendung findet. Die Daten, die so übertragen werden, sind wohlgeformte und gültige XML-Dokumente. Der Applikationsserver behandelt je nach Anforderung das Dokument weiter und setzt es in das entsprechende Protokoll um. |
![]() |
![]() |
![]() |
Relationale Modellierung einer vereinfachten DTD: Alternative Ansätze an einem vereinfachten Beispiel eines Dokuments. In der ersten Abbildung das ER-Modell und die zugehörige DTD. In der zweiten Abbildung ist die entsprechende normalisierte relationale Darstellung abgebildet. In der dritten Abbildung wird nicht das ER-Modell, sondern seine XML-Abbildung relational dargestellt. Dies führt zu einer vollkommen anderen Relation. |
![]() |
Eine Formulierung der MucMedRep-DTD in der Interface Definitionssprache IDL. Jede Instanz dieser DTD lässt sich eindeutig und verlustfrei auf die hier gegebene Struktur abbilden. |
![]() |
Vorschlag für die Gestaltung eines Dokumentenformulars. Durch den Verzicht auf übliche Kopfzeilen lässt sich dieses Papier auch für Folgeseiten verwenden (kein Papierwechsel zwischen Seite 1 und 2). Es ist universeller einsetzbar, robust gegenüber personellen und organisatorischen Veränderungen und trotzdem durch das farbige Logo als Original erkennbar. |
To err is human, to forgive, beyond the scope of the Operating System. | |
For every complex problem, there is a solution that is simple, neat, and wrong. | |
H. L. Mencken |
I took a course in speed reading and was able to read War and Peace in twenty minutes. It's about Russia. | |
Woody Allen |
Old stancher! You remain. | |
Samuel Becket: Endgame |
![]() |
![]() |
There exist tasks which cannot be done by more than 10 men or fewer than 100. | |
Steele's Law |
![]() |
Eine Beispielinstanz der MucMedRep-DTD eines Radiologischen Befundes. |
![]() |
Der Beispielsbefund in seiner Postscriptvisualisierung. |
Software: Formal evening attire for female computer analysts. | |
![]() |
Der Laborbefund, wie er im Zentrallabor des Klinikums der LMU verwendet wird. |
Whenever people agree with me I always feel I must be wrong. | |
Oscar Wilde |
![]() |
Ein Beispiel aus dem XML-Kode dieser Arbeit. |
![]() |
Die vollständige Formulierung der Document Type Definition, mit der dieser Text erstellt wurde. |
ACH | Association for Computing in the Humanities |
ACL | Association for Computational Linguistics |
ACR/NEMA | American College of Radiology / National Electrical Manufacturing Asociation |
ALLC | Association for Literary and Linguistic Computing |
AML | Astronomical Markup Language |
ANSI | American National Standards Institute |
ASCII | American Standard Code for Information Interchange |
ASTM | American Society for Testing and Materials |
AWT | Abstract Window Toolkit |
ATA | Air Transport Association of America |
CERN | Conseil Européen pour la Recherche Nucléaire |
CGI | Common Gateway Interface |
CML | Chemical Markup Language |
CORBA | Common Request Broker Architecture |
CORE | Chemistry Online Retrieval Experiment |
CSA | Client Server Architektur |
CSS | Cascading Style Sheets |
DBMS | Datenbank Management System |
DCOM | Distributed Component Object Model |
DICOM | Digital Imaging and Communications in Medicine |
DIN | Deutsche Industrie-Norm |
DTD | Document Type Definition |
DSSSL | Document Style Semantic and Specification Language |
DTP | Desk Top Publishing |
EBCDIC | Extended Binary Coded Decimal Information Code |
EBNF | Erweiterte Backus Naur Form |
ECMA | European Computer Manufacturer's Association |
EDI | Elektronic Data Interchange |
EDIFACT | Electronic Data Interchange For Administration, Commerce and Transport |
ER | Entity Relationship |
GML | Generalized Markup Language |
GUI | Graphic User Interface |
GNU | GNU is not UNIX |
HISPP | Health Informatics Standards Planning Panel |
HL7 | Health Level Seven |
HTML | Hypertext Markup Language |
HTTP | HyperText TransportProtokoll |
IDL | Interface Definition Language |
ICD | International Classification of Disease |
IEEE | Institute of Electrical and Electronic Engineers |
ISO | International Standards Organization |
IT | Informations Technologie |
KIS | Klinik Informations System |
MD5 | Message Digest 5 |
MEDIX | Medical Data Interchange Standard |
MSDS | Message Standards Developers Subcomittee |
NCPDP | National Council of Prescription Drug Programs |
ODA | Office Document Architecture |
ODBC | Open DataBase Connectivity |
ODIF | Office Document Interchange Format |
OEB | Open eBook |
OMG | Object Managment Group |
ORB | Object Request Broker |
OSI | Open Systems Interconnect |
PI | Processing Instructions |
RDBMS | Relationales DBMS |
RFC | Request For Comments |
RIF | Railroad Industry Forum |
RIP | Raster Image Processor |
RIS | Radiologie Informations System |
RMI | Remote Method Invokation |
RTF | Rich Text Format |
SGML | Standard Generalized Markup Language |
SMTP | Send Mail Transfer Protokoll |
SNOMED | Systematized Nomenclature of Human and Veterinary Medicine |
SQL | Structured Query Language |
SR | Structured Reporting |
SSML | Speech Synthesis Markup Language |
TCP/IP | Transmission Control Protocol / Internet Protocol |
TEI | Text Encoding Initiative |
XML | Extensible Markup Language |
XSL | Extensible Stylesheet Language |
XSLT | XSL Transformations |
UCS | Universal Character Set |
UML | Unified Medical Language |
UTF | UCS Transformation Format |
YACC | Yet Another Compiler Compiler |