Generation examples: click for larger viewWelcome to the University of Bremen
KPML one-point access page...

Automatic Domain-independent
Multilingual Natural Language Generation

This page contains pointers to the current range of sources and executables for the grammar development environment KPML. It contains the latest available distributions. No information or programs from older existing sites (e.g., Darmstadt IPSI and the University of Stirling) should be downloaded. This is the page that is updated as new distributions are made available.

N.B. The page assumes you more or less know what you are looking for: it is more like a newsletter for current news and latest releases—not an introduction!!

So:if you don't know what you are looking for or what you would do with it when you have it, you should start with the links to some of the answers to the following questions:

January 2016

Some new standalone and preprepared images have been uploaded, made with Windows 10 and Lispworks 5. Look at the standalone/image table below.

A zip bundle of KPML source code, together with merged upper model and necessary KR system, that can be compiled and run with the free Lispworks 6 Personal Edition can be downloaded here. The graphical window interface cannot be run with the Personal Edition Lisp, but the KPML code is complete. Instructions for installation are included in the zip bundle, as well as instructions for using the code to start a generation server capable of generating strings in response to semantic expressions passed in over a socket. Code should run on Windows, Linux, Mac as long as the Lispworks 6 Personal Edition is installed.

May 2015 Example clients in Java and Python for generating from semantic inputs from a running KPML generation server (e.g., from the blackbox generators provided). Allows generation functionality to be used across different computer languages and machines.
January 2008 Standalone images for Windows (i.e., executables requiring no further software or licences) are now available made with the latest KPML 4.1 release. Two are provided at present: one the full KPML development environment without grammars loaded, and one with the full environment with around 500 generated English sentences with complete syntactic structures and feature selections graphable, searchable and usable as self-documentation for the grammar.
December 2007 New blackbox generator (English preloaded) provided with the ability to take semantic inputs from a specified port and to return the generated string across that port.
September 2007 Source code of KPML can now be compiled and used without the user interface in the freely available Lispworks 5.0 Personal Edition. This therefore allows full access to the source code for programmatic control without an expensive Lisp platform. Particular instructions for compiling and loading can be found here. N.B. This assumes you know what you are doing! Not for beginners!!! You should be familiar at least with Lisp. [MORE UP TO DATE BUNDLE RELEASED JAN 2016, see above]
October 2006 Source code of KPML can now be compiled and used without the user interface in the freely available Allegro CL 8.0 Free Express Edition. This therefore allows full access to the source code for programmatic control without an expensive Lisp platform but still building on the high performance of Allegro. N.B. This assumes you know what you are doing! Not for beginners!!! You should be familiar at least with Lisp.
June 2006 New versions of the blackbox generator are available built on top of the latest KPML4 versions. One instantiation has English preloaded, the other Spanish. See here for details. These can be used without any further knowledge of the system or of Lisp.

April 2006

KPML4 is now the standard release. This includes: new debugging aids, ACL5 and 6, LW5 compatible, XML import/export, as well as the usual collection of minor improvements and bugfixes. Some of the advanced features, such as XML import/export, need to be activated explicitly so if you want to use these send me an email. See the release notes here.
Old KPML 3 news

June 2002

It is no longer maintained. The last updates involved:

New full standalone image can be updated by released patches without reinstalling (jump)
Full standalone includes patches up to 3.2.49 (jump)

Prototype lexical item editor added to latest standalones

The beginnings of an overview of the Upper Model: the linguistic ontology used for writing the semantic inputs expected by KPML (here)
Several new language resources added to the Generation Bank (jump)
Example blackbox generator for English downloadable (jump)

Source Code
The source code for KPML 4.1 may be downloaded here (2008/2009). This is a zipped directory. This code now compiles and runs with Lispworks 4.0, 4.1, 4.2, 5.0 and should work with Allegro ACL3, 4.3+, 5 through 8. Please check the specific release notes for KPML4 before use.
The source for KPML 3.2 may still be downloaded here (dated: 5th November 2001). This is a zipped directory; there is no difference in the files that must be downloaded for different platforms. You do need a version of ANSI standard Common Lisp (preferably Franz Allegro 4.3+ or Harlequin Lispworks 4.0+) together with the Common Lisp Interface Manager (CLIM 2.0+) to compile and run these files though. You should take the latest set of KPML3.2 patches and install before using.

Platform and Lisp notes:


The information here is only relevant for those who will be not be using a standalone generator! I.e., you will be compiling and installing KPML yourself from the source code. If you are not intending to this, then do not try and follow what is described here.

Lispworks 5 KPML 4.1 can be compiled with the GUI with Lispworks plus CLIM, and without the GUI with any Lispworks, including the free personal editions. Under at least Windows XP some of the CLIM port is behaving less well than one might like, but is livable with. 31.12.2007
Allegro ACL 5.0+ or 6.0+ for Windows or Unix For these platforms you should use the source code for KPML 4 (see above) and report any problems that arise. Release notes 16.3.2003
Allegro ACL 4.3, 4.3.1 for Unix The interface code uses some CLIM features that do not appear to work so well in this older Lisp. Make sure that you have a downloaded set of sources dated 13th. October 2001 or later as backwards-compatibility was built in at that time. Further notes here. 13.10.2001
Lispworks 4.1+ for Windows KPML 4 and KPML 3.2 are fully compatible. There are Lisp problems with non-Latin fonts under Windows 98 however; read the particular image-specific notes below. 26.3.2001
KPML system patches for KPML 3.2 may be downloaded here. The last patch level was 3.2.62 (12th September 2001); no further patches are being provided for KPML3.2. You can download and install patches either if you have installed the entire system from the source code above using a standard Lisp product as described, or (b) you have downloaded a standalone that is version 3.2.49 or later. NEW: Full KPML standalones (3.2.49 or later) now automatically add patches, which means that you can update your image without downloading the entire system and re-installing. Instructions for how to do this are given here. KPML 4 does not have any patches.
Resources of various kinds:
Beginner's Tutorials are available for absolute beginners. These typically take the form of a guided tour of a very simple linguistic resource, with suggested changes and extensions. They can be run with the startup image described below; the startup image already includes the two most simple resources preloaded. If you are working with the full KPML release, then you can still of course work your way through the tutorials: the KPML menus are just a bit fuller than those shown in the screen dumps of the tutorials! The tutorials currently available are: extending a grammar of 'titles' in English, a simple but complete example of semantic-driven generation.
Simple introductory example grammars are included in a simplified startup package. This is a gzipped tar file that can be expanded by WinZip for example. Two of the example grammars are already included in the startup introductory image mentioned below. The startup package also includes a suitable configuration file that can be edited to provide slightly more functionality when the introductory examples have been worked through.

Online documentation

[new documentation root]

of the original KPML release is available in gzipped postscript form here. Note that many of the details of the interface described in this documentation have now been significantly extended; but this documentation is still the most complete and general introduction to the KPML platform, with the exception of information about installation: for this go here. A starting page for documentation and introductory tutorials, information, etc. is now here. A complete update of the documentation is in progress. Some further references on KPML, its theoretical underpinnings, and applications are given here.
Standalone executables are available for PCs running Windows 95, 98, NT, 2000 and XP. These require no additional software. The images that are currently available are as set out in the following table; most were made with Harlequin Lispworks 4.1 Professional. There are numerous introductory images for working your way into the system in various was. For serious large-scale grammar development and if you are using non-Latin fonts, it is strongly recommended that you run the images under WindowsNT, 2k or XP. Only if this is not possible should you take the second full image listed below, which was made with Harlequin Lispworks 4.0; this can use non-Latin fonts under Windows98 but is in other ways not so clean in its behaviour as the other images. All files are compressed (usually zipped, sometimes gzipped).
Linguistic resources are usually available from the generation bank. Note also that, for the present, a version of the English grammar Nigel can be downloaded here (zipped directory). To run this grammar you will also need to download and install the linguistic resource called General-this contains the standard semantic hierarchy (Upper Model) that is assumed by Nigel and almost all of the other grammars.This version of the Upper Model is represented in the Loom knowledge representation language; if you are not using Loom then you will need to make other arrangments: see the KR information. Both the English resources and the General resources should be placed in a single directory somewhere on your machine: this directory is then the root of resources directory that you have to inform KPML about in order to load resources. This can either be done from the Enviroment menu command from the system or by including a kpml configuration file (called kpmlconf) in the directory where you start KPML. An example kpmlconf file can be found here.

DOWNLOADABLE STANDALONE IMAGES (can be used without installing Lisp)

N.B. Some of the older images below assume that a temporary folder C:\tmp exists (this is inherited from the days of KPML's Unix development). You can change this behaviour if it occurs by adding an appropriate configuration file or by creating the necessary folder. Examples of configuration files are given in the following table.

Download (zipped unless stated otherwise)
Windows 95, 98, NT, 2000, XP kpml 3.2 introductory This image contains a cutdown version of the KPML interface for a first introduction to using the development environment with simple grammars. The image contains preloaded very simple example grammars that are used in the first tutorials; the grammars themselves are contained in the startup package described above. It is also useful to have the configuration file. Place this in the same folder as the executable and edit as needed: other possible folders to put it include C:\tmp and your home directory.



configuration file

Windows 95, 98 kpml 3.2 full

This image is again the full KPML 3.2 development environment, but made with an older version of Lisp. This older version can show non-Latin fonts appropriately under Windows 95, 98, which the above images cannot. Only use this image if you need both non-Latin fonts and Windows 95, 98.

Windows XP kpml 4.1 full Full KPML 4.1 development environment standalone made with Lispworks 5. Upper model linguistic ontology loaded. No grammars.Download and unzip.
18 Mb stable

configuration file

Windows 10 kpml 4.1 full Full KPML 4.1 development environment standalone made with Lispworks 5. Upper model linguistic ontology loaded. No grammars.Download and unzip.
15 Mb stable

configuration file

Windows XP kpml 4.1 full Full KPML 4.1 development environment standalone made with Lispworks 5 with the current English grammar preloaded together with over 500 generated examples. All structures and features are accessible and can be used to explore the grammar. This is the most flexible way of exploring the Nigel grammar of English currently available. Download and unzip.
18 Mb stable
Windows 95, 98, NT, 2000, XP black box KPML
English generator

This image provides an simple blackbox standalone generation facility. When started, it waits for semantic input until stopped. Each semantic input received is then generated. No access is provided to any processing. (Brief instructions here)

basic: 11.7 Mb

full: 12.7 Mb

Windows 95, 98, NT, 2000, XP black box KPML
This image is an instantiation of the more advanced blackbox generator, with either English or Spanish preloaded. See here for usage instructions and here for details of the Spanish grammar.

12.6 Mb (Spanish)

13Mb (English)

Windows 10 black box KPML
This image is the most recent version of the blackbox code, with no grammars preloaded so that it can be configured for particular languages at will.. See here for usage instructions.
13 Mb (language free)
Project-specific additional information Locations of visitors to this page

can be taken from the following list; this may only be relevant for workers within the specifically mentioned projects; kept then for archival reasons only...

Agile Project

(project overview)

Automatic Generation of Instructions in Languages of Eastern Europe

XML resources


in progress XML schemas for KPML linguistic objects (2004)


John Bateman
Bremen, January 2016