Background
The initial version of the Arden Syntax for Medical Logic Systems was created to facilitate explicit representation of medical logic in a form that could be easily composed and interpreted by clinical experts in order to facilitate clinical decision support (CDS). Because of demand from knowledge engineers and programmers to improve functionality related to complex use cases, the Arden Syntax evolved to include features typical of general programming languages but that were specialized to meet the needs of the clinical decision support environment, including integration into a clinical information system architecture.Method
Review of the design history and evolution of the Arden Syntax by workers who participated in this evolution from the perspective of the standards development organization (SDO).Results
In order to meet user needs, a variety of features were successively incorporated in Arden Syntax. These can be grouped in several classes of change, including control flow, data structures, operators and external links. These changes included expansion of operators to manipulate lists and strings; a formalism for structured output; iteration constructs; user-defined objects and operators to manipulate them; features to support international use and output in different natural languages; additional control features; fuzzy logic formalisms; and mapping of the entire syntax to XML. The history and rationale of this evolution are summarized.Conclusion
In response to user demand and to reflect its growing role in clinical decision support, the Arden Syntax has evolved to include a number of powerful features. These depart somewhat from the original vision of the syntax as simple and easily understandable but from the SDO perspective increase the utility of this standard for implementation of CDS. Backwards compatibility has been maintained, allowing continued support of the earlier, simpler decision support models.