Skip to main content Skip to main navigation


SDL---A Description Language for Specifying NLP Systems

Hans-Ulrich Krieger
In: Proceedings of the 3rd AMAST Workshop on Algebraic Methods in Language Processing,. AMAST Workshop on Algebraic Methods in Language Processing, 2003.


We present the system description language SDL that offers a declarative way of specifying new complex systems from already existing modules with the help of three operators: sequence, parallelism, and unrestricted iteration. Interaction between modules is decoupled and realized by a mediator. Given a well­formed system description and modules that implement a minimal interface, the SDL compiler returns a running Java program which realizes exactly the desired behavior of the original specification. The execution semantics of SDL is complemented by a precise formal semantics, defined in terms of concepts of function theory, such as functional composition, Cartesian product, or unbounded minimization. The SDL compiler is part of the SProUT shallow language platform, a system for the development and processing of multilingual resources. We believe that the application of SDL is not only limited to the construction of pure NLP systems, but can also be employed in the definition of general software systems.