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

Search Medline for

  • 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: urn:nbn:de:0183-12gmds0739

Published: September 13, 2012

© 2012 Wolf et al.
This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by-nc-nd/3.0/deed.en). You are free: to Share – to copy, distribute and transmit the work, provided the original author and source are credited.


Outline

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 External link
5.
Medexter Healthcare GmbH [Internet]. Available from: http://www.medexter.com External 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 External link
10.
xText [Internet]. Available from: http://www.eclipse.org/Xtext External 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 External link