gms | German Medical Science

GMDS 2012: 57. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e. V. (GMDS)

Deutsche Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie

16. - 20.09.2012, Braunschweig

Arden4Eclipse: ein Plug-in für Eclipse zur Entwicklung von Arden Syntax Modulen

Meeting Abstract

Suche in Medline nach

  • Klaus-Hendrik Wolf - Peter L. Reichertz Institut für Medizinische Informatik, TU Braunschweig, Deutschland
  • Hannes Flicka - Peter L. Reichertz Institut für Medizinische Informatik, TU Braunschweig, Deutschland
  • Matthias Gietzelt - Peter L. Reichertz Institut für Medizinische Informatik, TU Braunschweig, Deutschland
  • Reinhold Haux - Peter L. Reichertz Institut für Medizinische Informatik, TU Braunschweig, Deutschland

GMDS 2012. 57. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e.V. (GMDS). Braunschweig, 16.-20.09.2012. Düsseldorf: German Medical Science GMS Publishing House; 2012. Doc12gmds073

doi: 10.3205/12gmds073, urn:nbn:de:0183-12gmds0739

Veröffentlicht: 13. September 2012

© 2012 Wolf et al.
Dieser Artikel ist ein Open Access-Artikel und steht unter den Creative Commons Lizenzbedingungen (http://creativecommons.org/licenses/by-nc-nd/3.0/deed.de). Er darf vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden, vorausgesetzt dass Autor und Quelle genannt werden.


Gliederung

Text

Einleitung und Fragestellung: Arden Syntax ist eine standardisierte Computersprache zur Repräsentation medizinischen Wissens, die Ende der 1980er Jahre entwickelt wurde [1], [2], [3]. Aktuell wird ihre Weiterentwicklung von HL7 vorangetrieben [4]. Es existiert eine Reihe von kommerziellen (z.B. [5]), quelloffenen (z.B. [6], [7]) sowie nicht zugänglichen Implementierungen (z.B. [8]). Neben dem Interpreter bzw. dem Compiler und der Laufzeitumgebung ist die gute Entwicklungsumgebung eines der wesentlichen Merkmale, das zur Etablierung einer Programmiersprache beiträgt [7]. Für die Arden Syntax gab es bislang keine frei verfügbare, quelloffene integrierte Entwicklungsumgebung (IDE), die den Anforderungen an eine moderne IDE genügt. Diesem Missstand, der für eine Verbreitung der Arden Syntax nicht förderlich ist, soll Arden4Eclipse begegnen.

Material und Methoden: Die Sprachdefinition des freien Arden Compilers Arden2ByteCode [7] dienen als Basis für die vorgestellte IDE. Zur Entwicklung der Integration in die quelloffene IDE Eclipse [9] wurde XText [10] genutzt, ein Framework zur Entwicklung von Programmiersprachen und domänenspezifischer Sprachen. XText wiederum nutzt ANTLR (ANother Tool for Language Recognition) als objektorientierten Parsergenerator [11]. Da für Arden2ByteCode SableCC verwendet wurde, ist eine Anpassung der Sprachdefinitionen notwendig. Beide Projekte realisieren den Großteil des Sprachumfangs der Arden Syntax Version 2.5.

Ergebnisse: Mit Arden4Eclipse ist die Basis für eine integrierte Entwicklungsumgebung für die Arden Syntax gelegt. Das Plug-in für Eclipse lässt sich mittels Drag&Drop direkt von der Webseite des Projektes installieren. An Funktionalität stehen neben Syntaxhervorhebung auch Funktionen wie die kontextsensitive automatische Vervollständigung und sofortige Hinweise auf Fehler im Programmcode inklusive Korrekturvorschlägen zur Verfügung. Arden4Eclipse ist für die Nutzung des Arden2ByteCode Compilers vorkonfiguriert und installiert diesen mit. Durch diese Integration lässt sich das bearbeitete MLM per Knopfdruck direkt aus der IDE heraus übersetzen und ausführen. Für die Ausführung kann man dem MLM Parameter übergeben und die Ausführung selbst kann mit dem Debugger überwacht werden.

Arden4Eclipse ist von der Projektseite des Arden2ByteCode Projektes verfügbar [12].

Diskussion: Die Entwicklung des Arden4Eclipse Plug-ins erschließt die Funktionalität einer etablierten IDE für die Entwicklung von medizinischen logischen Modulen in Arden Syntax. Die Verwendung von xText führt dazu, dass die Funktionalitäten moderner Entwicklungsumgebungen nun auch für die Arden Syntax in Eclipse zur Verfügung stehen. Die Nutzung von automatischer Vervollständigung, laufender Fehlerkontrolle, Integration von Compiler und Laufzeitumgebungen, sowie das Debugging mit den Werkzeugen der Eclipse Umgebung ermöglichen ein effizientes und unterstütztes Entwickeln von Arden Syntax Modulen. Die direkte Verknüpfung mit Arden2ByteCode und Java Laufzeitumgebungen ermöglicht das Entwickeln und Debuggen sowohl von Arden Modulen als auch der IT-Umgebung, für die diese Module entwickelt werden mit einem integrierten Werkzeug. Neben den sprachspezifischen Funktionen stehen dem Arden Entwickler auch die sprachunabhängigen Features der Eclipse IDE zur Verfügung. Zu diesen zählen beispielsweise die Nutzung von Versionsmanagementsystemen, Rechtschreibkorrektur und die Erweiterbarkeit durch Plug-ins.

Die Verknüpfung mit Arden2ByteCode liegt auf der Hand, Arden4Eclipse ist im Prinzip unabhängig von dem verwendeten Arden Interpreter oder Compiler. Das Vorliegen des Quelltextes, sowie die vergleichsweise einfach Struktur ermöglichen es, dass andere Arden Syntax Werkzeuge in die Eclipse-Plattform eingebunden werden können. Wir hoffen, dass auch andere Gruppen von Arden4Eclipse profitieren und hoffen auf kritische Rückmeldungen und Beiträge zur weiteren Verbesserung des Systems.


Literatur

1.
Hripcsak G, Clayton PD, Pryor TA, Haug P, Wigertz OB, der Lei JV. The Arden Syntax for Medical Logic Modules. Proc Annu Symp Comput Appl Med Care. 1990:200-4.
2.
Hripcsak G, Ludemann P, Pryor TA, Wigertz OB and Clayton PD. Rationale for the Arden Syntax. Comput Biomed Res. 1994;27(4):291-324.
3.
Hripcsak G. Writing Arden Syntax Medical Logic Modules. Comput Biol Med. 1994;24(5):331-63.
4.
HL7 Arden Syntax Work Group [Internet]. Available from: http://www.hl7.org/special/Committees/arden Externer Link
5.
Medexter Healthcare GmbH [Internet]. Available from: http://www.medexter.com Externer Link
6.
McCallum G. EGADSS: A Clinical Decision Support System for use in a Service-oriented Architecture Computer Science. University of Victoria; 2006.
7.
Gietzelt M, Goltz U, Grunwald D, Lochau M, Marschollek M, Song B, Wolf KH. Arden2ByteCode: A one-pass Arden Syntax compiler for service-oriented decision support systems based on the OSGi platform. Comput Methods Programs Biomed. 2012;106(2):114-25.
8.
Kuhn RA, Reider RS. A C++ framework for developing Medical Logic Modules and an Arden Syntax compiler. Comput Biol Med. 1994;24(5):365-70.
9.
Eclipse Foundation [Internet]. Available from: http://www.eclipse.org Externer Link
10.
xText [Internet]. Available from: http://www.eclipse.org/Xtext Externer Link
11.
Parr T. The Definitive ANTLR Reference. Building Domain-Specific Languages.The Pragmatic Bookshelf. 2007
12.
Arden2ByteCode Projektseite [Internet]. Available from: http://www.plri.de/arden2bytecode.html Externer Link