SUREGEN-II |
SUREGEN-II
in a nutshell |
Text
generation in SUREGEN-II means that instances of classes describe themselves.
For every class, therefore, it must be specified via ToDescribe
how this is to be done. This macro accepts (in the simplest case) the class’
name and an arbitrary LISP expression, which is evaluated when an instance
of the class is to be described.Thus
(ToDescribe :a Thing :use “A thing”)
is
perfectly acceptable. A possible option to ToDescribe,
signalled by :as,
is the desired (syntactical) form of the description. So:
(ToDescribe :a Thing :as :NP :use “Ein Ding”)
(ToDescribe :a Thing :as :MC :use “Ein Ding existiert.”)
(„Ein
Ding“ = „A thing“, „Ein Ding existiert.“=„A
thing exists.“)
would
return the respective strings when the forms :NP
(=noun phrase) or :MC
(=main clause) are desired. The parameters to :as are
in now way limited (other than being LISP “atoms”).
The
use of canned text as in the above examples can be useful in the early
phases of system design and sometimes (in the case of phraseologisms) even
in production version. The expressive power of SUREGEN-II however stems
from more complicated expressions. These expressions can