Arden syntax

Arden syntax is a markup language used for representing and sharing medical knowledge. This clinical and scientific knowledge language is used in an executable format by clinical decision support systems to generate alerts, interpretations, and to screen and manage messages to clinicians. This syntax is used to share medical knowledge within and across many health service institutions. Rule sets, called Medical Logic Modules (MLMs), comprise enough logic to make a single medical decision. Medical logic modules are written in Arden syntax, and are called by a program – an event monitor – when the condition they are written to help with occurs.

Arden syntax was formerly a standard under ASTM, published in 1992, and is now part of Health Level Seven International. Arden syntax version 2.0 was published by HL7 in 1999. Arden syntax version 2.10 is the current version.

History
Arden Syntax and its first applications were conceived and developed as the primary deliverables of a multimillion-dollar joint research and development program between Columbia Presbyterian Medical Center and IBM Health Industry Marketing in Atlanta, Georgia, between 1989 and 1993. IBM provided program funding, S/370 mainframe hardware, software, peripheral equipment, and other materials for the work, and program management oversight of the collaborative effort.

The name "Arden" comes from the location of the IBM/CPMC conferences and working sessions, Arden House, in Orange County, New York, in recognition of important milestones achieved there in the development and refinement of the syntax and its implementation. (Originally purchased by Edward Henry Harriman in 1885, the estate was given to Columbia University by his son W. Averell Harriman in 1950 following its use by the U.S. Navy in World War II. The house and grounds became a National Historic Landmark in 1966, and it is now a conference center.)

At Columbia-Presbyterian Medical center, 40 Arden syntax MLMs have been implemented in which 18 of those are clinical MLMs, including 4 interpretations and 14 alerts. For example, a user is alerted by three MLMs to the presence of hypokalemia and digoxin use that might lead to cardiac dysrhythmia. One MLM is activated by storage of a pharmacy order by digoxin,a second MLM is activated by the storage of a blood potassium result and the third activated by the storage of blood digoxin level. Twelve are research MLM examples, which include the ability to identify patients with abnormal cervical pathology, etc. that notify the researcher of the details of the patient's medical record and their inpatient location to enroll the patient in a study, and the remaining ten are administrative MLMs.

IBM's artificial intelligence product, KnowledgeTool, provided the original basis for MLM syntax representation and processing, as enhanced and applied by CPMC researchers Drs. James J. Cimino, George Hripcsak, Steve Johnson, Carol Friedman, and others at CPMC, under the leadership of Paul D. Clayton. In a related effort under the same program, another prototype implementation of the syntax was developed by Peter Ludemann using Quintus Prolog. IBM program management and AI technology services were provided by Terry Rankin, Pete Smith, and Eddie Sanders.

Uses
Arden syntax is used when:
 * A clinically important situation such as a medication interaction or dangerous laboratory result arises, the provider is warned by an alert message.
 * An interpretation is a nonemergency message designed to supply a provider with supportive information such as an interpretation of liver function tests.
 * A Screen is a message sent to clinical research when patients meeting certain characteristics either for a clinical trial or quality assurance concern are admitted to the hospital.
 * Management messages are used for administrative purposes such as managing bed assignments, same day admissions and discharges from the hospital.

Its advantages include:
 * It is a part of the Health Level Seven International standards organization
 * It allows easy encoding of several important medical concepts.
 * The code is written in a way close to natural language and readable, with several syntactic features such as flexible list handling that can be filtered.
 * Developers are encouraged to document and annotate MLMs for producing large metadata by the standard, which is vital for making large collections of MLMs manageable.

Real-world examples
Arden syntax is used in computerized care plans for the management of patients following coronary artery bypass surgery

The Regenstrief Institute, an international non-profit medical research organization "recognized for its role in improving quality of care, increasing efficiency of healthcare delivery, preventing medical errors and enhancing patient safety", uses Arden Syntax MLMs in its CARE system to deliver reminders or hints to clinicians regarding patient treatment recommendations (e.g., the next clinic appointment, based on rules applied to the digitized notes and pertinent patient data stored in the system). Additionally, LDS hospital in Salt Lake City has contributed much to this standard as well as body of knowledge. Indiana University's section of Children's Health Services Research within the School of Medicine extensively uses Arden Syntax MLMs to control clinical decision support within the CHICA (Child Health Improvement through Computer Automation) pediatric clinical decision support system, an ambulatory CDS that has been running within Indianapolis-area health systems for 11 years. Arden syntax is implemented at LDS hospital, Salt Lake City, Utah, using the HELP system.

A medical decision support system at Linkoping University comprises a clinical database, medical database dictionary, and a knowledge base component. Syntax for the knowledge base is Arden syntax. Samwald et al. group developed many clinical decision support system using Arden syntax standard ranging from a few to several dozens of MLMs. These systems are Hepaxpert, Thyrexpert, Toxopert and RHEUMexpert. The Hepaxpert system helps in interpretation of hepatitis serology test results, whereas the Thyrexpert system helps in interpretation of thyroid hormone test results. The Toxopert system helps in interpretation of time sequences of toxoplasmosis serology test results. Differential diagnosis decision support in rheumatology is offered by RHEUMexpert.

Rationale
The syntax offers potential users help deciding if the standard is appropriate for their purposes. It offers users and implementors knowledge of how parts of the standard were designed to be used. It also provides authors of other standards an insight that might be helpful in their own attempts in future designing of new languages.

Fuzzy Arden syntax
The main aim of fuzzy Arden syntax is to provide easy method in processing of uncertain data which routinely appears in medicine. New concepts are incorporated into Arden syntax by fuzzy Arden syntax in order to assist in processing information that may not be completely defined. For example, a fuzzy logic has been used in knowledge base in Moni–ICU system at clinical institute of hospital hygiene of the Vienna general hospital. It is a system that detects and constantly checks hospital-acquired infections. Use of fuzzy logic in knowledge base provide physicians with more precise information on the degree of the presence of nosocomial infections, that aids to recognize borderline cases and allows former detection of an infection onset and its decline.

Limitations

 * Problems related to adoption of Arden syntax are the "curly braces problem" and the compiler problem, which may be resolved in the future by the introduction of XML-based techniques like Virtual Medical Record (vMR).
 * Since it is divided into various categories, it allows usage of various operators and statements at the same time, leading to inconsistencies.
 * Standard might be written in two separate documents, one for users to develop Arden syntax MLMs and the other for developers of Arden syntax compilers.

Technical implementation
Several developers have used Yacc-based compilers or similar tools to translate the MLMs to an intermediate form which is executed later. Other developers use Prolog for both parsing and interpretation and optimising MLMs by converting them to single-assignment declarative form. The open source compiler Arden2ByteCode translates MLMs to Java Bytecode that is executable on the Java Virtual Machine. The accompanying plugin for Eclipse called Arden4Eclipse supports MLM developers with an integrated development environment (IDE).

Testing
Arden syntax is tested for reliability and imprecision using tools lex and Yacc that, when used together, create a compiler or interpreter. Source file is split into tokens by lex and the hierarchical structure of the programme is found by Yacc. These tools reduce ambiguities in the syntax.

Structure
The unit of representation in the Arden syntax is the Medical Logic Module (MLM). A Medical logic Module is composed of four categories, namely maintenance, library, knowledge and resources, with appropriate slots. Arden Syntax is an instance of a Knowledge Resource-Centric Knowledge Integration Architecture, where the knowledge resources command the delivery mechanisms of clinical decision support system.

Maintenance
This category contains metadata about the MLM. The maintenance category consists of slots that indicate maintenance information unrelated to the medical knowledge in the module. The first slot is the title which gives a brief description of the module followed by a file name, a distinct identifier used to specify the MLM. The third slot is the version which specifies the version used. It also maintains a track of updates to the MLMs. A version slot is followed by institution and author slots that specify where the MLM is written and the person who wrote it. The sixth slot is the specialist slot that names the person in the institution liable for validating and installing the MLM in the institution. This slot is always meant to be blank when transferring information from one institution to another. This slot is followed by date and validation slots which show the date at which MLM was last updated. The validation level is set by the specialist, it indicates that the MLM is only used for testing. These slots are used for knowledge base maintenance and change control.

Library
This category contains five slots called purpose, explanation, keywords, citations and links. The purpose slot explains what a particular MLM is used for, whereas the explanation slot illustrates how an MLM works. Terms that can be used to search through a knowledge base of MLM is supplied by a keyword slot. The citation and link slots are optional. References to literature that support MLM's medical behaviour are included in the citation slot. Institution specific links to other sources of information such as electronic textbooks and educational modules are contained in the links slot.

Knowledge
This category contains the actual medical knowledge of the MLM. It consists of type, data, priority, evoke, logic and action slots. The way in which MLM is used is known by type slot. Terms used in the rest of the MLM are defined by the data slot. Its goal is to separate those parts of the MLM that are specific to an institution from the more generic parts of the MLM. The order in which the MLM must be invoked are indicated by the priority, which can be a number from 1 (last) to 99 (first). It is a rarely used optional slot. An MLM can be activated by an event, or by a direct call from an MLM or an application programme which is specified by the evoke slot. A real medical condition or rule to test for is contained in the logic slot which may include compound calculations. The action slot creates a message that is sent to the health care provider, such as sending an alert to the destination, evoking other MLMs and returning values. The urgency slot is optional; it can be a number from 1 to 99 which indicates the importance of an MLMs action or message.