Int. J. Man-Machine Studies (1989) 31, 161-195
XTRA: a natural-language access system to expert systems J~~RGENALLGAYER, KARIN HARFSUSCH, ALFRED KOBSA, CAROLA REDDIG, NORBERT REITHINGERAND DAGMAR SCHMAUKS
SFB 314: AI-Knowledge-Based Systems, Department of Computer Science, University of Saarbriicken, D-6&N Saarbriicken 11, West Germany (Received 30 March 1988) The XTRA access system to expert systems is presented which is aimed at rendering the interaction with expert systems easier for inexperienced users. XTRA communicates with the user in a natural language (German), extracts data relevant to the expert system from his/her natural-language input, answers user queries as to terminology and provides user-accommodated natural-language verbalizations of results and explanations provided by the expert system. A number of novel artificial intelligence techniques have been employed in the development of the system, including the combination of natural-language user input and user gestures on the terminal screen, referent identification with the aid of four different knowledge sources, simultaneous communication of the access system with the user and the expert system, fusion of two complementary knowledge bases into a single one, and the design of a natural-language generation component which allows for a controlled interaction between the “what-to-say” and the “how-to-say” parts to yield a more natural output. XTRA is being developed independently of any specific expert system. In its first application the access to an expert system in the income tax domain is being realized.
1. Introduction Up till now, large expert systems (XPSs) have hardly ever been made available to casual and naive users. Reasons for this include the fact that complex domains usually require a high degree of flexibility in user-system interaction, i.e. they require that the interface go beyond a rigid interviewing procedure. To date, such a
flexible interaction could only be achieved with a formal input/output language which the user was supposed to have mastered. Moreover, current expert systems hardly ever adapt to the user, i.e. do not take into account his/her background knowledge, possible misunderstandings, or his/her plans and goals in their questions, answers, and explanations. Answers given by the system are usually isolated, i.e. do not take the preceding dialog into account. And finally, although there exist systems which explain to the user in a formal language why a question has been posed, and why the system arrived at a specific conclusion, user questions as to terminology (e.g. “What do you mean by X?“) cannot be answered. In most large-scale systems, then, a casual user is expected to learn this formal interface language, may be bored then by too much redundancy in the answers or overtaxed by answers and questions This research has been supported by the German Science Foundation in its Special Collaborative Research Programme on Artificial Intelligence and Knowledge-Based Systems (SFB 314). We would like to thank Mark Line for his comments on an earlier version of this paper. 161 0@20-7373/89/020161+ 35$03.00/O
@ 1989 Academic Press Limited
162
J. ALLGAYER
ET AL
XTRA Uerbunsskosten
Kann ich meinen
Gewerkschaftsbeitrag
hier Ir] addieren? Can
I add
in
my union
dues here p]?
Ja, Gewerkschaftsbeitraege
sind ab -
Yes, union dues are deductible.
FIG. 1. Example Dialog with XTfU.
which are too difficult, cannot ask for clarification, and will not get any relevant information beyond that which he/she explicitly asked for. The goal of the XTRA project is the theoretical foundation, design and development of a cooperative German-language access system to expert systems. The XTRA system should allow the user to interface more easily with expert systems and, within this framework, should fulfill the following tasks among other things: -extraction of data relevant for the expert system out of the natural-language (NL) user input, -answering of user queries as to terminology, -user-adapted processing and NL verbalization of results and explanations provided by the expert system, -generation of user-adapted cooperative NL responses of the system which include commonly used linguistic and pragmatic features (e.g. ellipsis, anaphora, overanswering). The present domain of XTRA is concerned with providing an NL interface to an expert system which assists a user in filling out a German annual tax withholding adjustment form.? Figure 1 shows XTRA’s graphical display on the terminal screen 7 In West Germany, income tax is withheld from the monthly salary by the employer, and transferred to the revenue-office. These withholdings, however, only constitute a monthly pre-payment of the estimated personal income tax, which is computed on an annual basis. In many cases (e.g. irregular employment, annual deductions, multiple sources of income) tax payers may or must therefore apply for a tax adjustment at the end of the year. This adjustment will result in a tax reimbursement or additional taxes payable.
THE XTRA
NL ACCESS
SYSTEM
TO EXPERT
SYSTEMS
163
in this particular application domain. The user can refer to regions, labels and entries of the form and enter data in the appropriate spaces. NL input and output takes place in the window directly below the form (the symbol [P] indicates that a pointing operation followed the immediately preceding word). The tax expert system, however, is only the first system to be accessed. XTRA is being developed independently of any specific expert system, and its architecture has been designed so as to facilitate its adaptation to new expert systems. The development of an NL access system to expert systems is not only of interest from the point of view of man-machine communication, but also from a linguistic and artificial-intelligence perspective. General problems that are being investigated include the combination of NL and pointing to the terminal screen, referent identification with the aid of multiple knowledge sources, construction of a dialog memory and examination of the effect of dialog context on analysis and generation, parallel communication of the access system with the user and the expert system, fusion of complementary knowledge bases into a single one, and the design of an NL generation component which allows for a controlled interaction between the “what-to-say” and the “how-to-say” parts at certain decision points in order to yield a more natural output. 2. A general outline
of the system architecture
Processing in the XTRA system can be roughly separated into three phases: the analysis of the user’s NL input (possibly accompanied by pointing gestures), the generation of NL dialog contributions, and the “internal” processing which comprises, among other things, the construction of dialog knowledge bases and the interaction with the expert system. In this section, the general architecture of the XTRA system will be surveyed (see Fig. 2 for a comprehensive diagram). In the following sections, the components will be described in more detail. A user’s NL input to the XTRA system is first subjected to a morphological, syntactic and sentential-semantic analysis carried out by the system’s parsing component. The morphological analysis is performed by the MORPHIX system which reduces inflected word forms to their stems. MORPHIX employs the lexicon XTRALEX which contains both basic German vocabulary and the terminology of the expert system’s application domain (e.g. income tax terminology). Syntactic parsing is carried out by SB-PATR, an interpreter for unification grammars. It employs the German grammar XTRAGRAM and the lexicon. In the sententialsemantic analysis (SSA), the semantic function of all phrases in a sentence is examined. This analysis results in a semantic representation of the sentence being built in the functional-semantic structure (FSS) knowledge base. This knowledge base also contains information about the semantic correctness of NL expressions and is encoded in SB-ONE, a representation language similar to KL-ONE. The users’ pointing gestures are analysed by the TACTILUS system, which is equipped with a representation of the hierarchical structure of a German income tax return form (the form hierarchy). The PLUG system serves to cooperatively guide the user in filling out this form. Another knowledge base represented in SB-ONE is the conceptual knowledge base (CKB). Using CKB concepts, new factual information given by the user
164
J.
ALLGAYEK
ET
AI..
BGP - MS
POPEL - Ii
POPEL - W
Ba<=--1(=--1
Generation
e
--
7
FIG. 2. Overall architecture of XTRA
(among other things) is represented. After semantic analysis, a referential-semantic in order to integrate information from the FSS into the CKB, hopefully resulting in the referential-semantic resolution of noun phrases and anaphora (i.e. the referents of noun phrases and anaphora are found in the conceptual knowledge base). To this purpose, information from the dialog memory (a record of the dialog contributions of both the user and the system), the focus structure (a record of the currently focused objects) and the form hierarchy are also considered. The user input, having been mapped into CKB structures, is then processed by BGP-MS, a belief, goal and plan maintenance system. BGP-MS is responsible for XTRA’s user model (i.e. the assumptions of XTRA concerning the user’s goals, knowledge and, possibly, false beliefs). It also maintains the general and domain knowledge as well as the goals of XTRA itself. Moreover, BGP-MS carries out a limited form of dialog act analysis: depending upon the syntactic form of user input, beliefs regarding knowledge and goals of the user are entered into the user model. In the future course of the project, these user goals will then serve as a basis for cooperative system actions (e.g. a search procedure within the CKB or within the knowledge base of the expert system, or an activation of the XTRA inference engine or of that of the expert system). For the most part, specialized knowledge is stored within the expert system. In the CKB and within the rules of XTRA’s inference engine, only that knowledge is represented which is necessary for XTRA’s operation and either absent in the expert system or, because of XTRA’s connection to natural language, requires a interpretation is attempted
THE XTRA
165
NL ACCESS SYSTEM TO EXPERT SYSTEMS
different form of representation. An interface gives XTRA access to both areas of knowledge. Redundant storage of knowledge is thereby largely avoided. The first expert system to be accessed by XTRA is LST-1, a system which aids the user in filling out a German annual tax withholding adjustment form. LST-1 has been developed as part of the XTRA project. However, as already mentioned, no specific design requirements were given in order to ensure that the expert system be developed without consideration of a later NL access to it. The information supplied by the expert system must be re-translated into CKB structures which, in turn, form the starting point for XTRA’s NL generator. This component is comprised of two modules: The first is responsible for the selection and preparation of the CKB structures to be communicated to the user and their adaptation to particular dialog situations. This is accomplished by using the dialog memory and the user model of XTRA. The second module receives the selected CKB structures and verbalizes them. In the inverse order to the analysis, the processing passes through the different description levels CKB, FSS, syntax and, finally, natural language. Feedback from parts of the utterance already verbalized to the preparation processes is also possible, however, so that an information flow in the reverse order may also occur. During the processing of the output, both modules interact in both directions in order to solve the generation task. The whole XTRA system has been developed on Symbolics LISP machines using Common Lisp.
3. Tools and their application
in XTRA
Part of the research strategy in the XTRA project is to utilize a number of independent software modules for various tasks in the development of the XTRA system. These tool systems should be either obtained from outside, or developed within the project and tested in the XTRA system. It is felt that such tool systems are urgently needed in the field of NL processing in artificial intelligence research. Great care is taken that the tool systems be self-contained, highly portable, and independent of their particular application in XTRA. In this section, we will describe the tools that have been developed so far, or are still under development. Their interaction within the XTRA system is then discussed in Section 4. 3.1. MORPHIX,
A MORPHOLOGICAL
ANALYSIS
COMPONENT
Morphological analysis constitutes the first and morphological synthesis the last step in processing and responding to a user’s input. Compared with a more isolating language such as English, these processing steps are of great importance in more highly inflectional languages such as German. In order to handle the rich inflectional system of German, a classification-based approach has been implemented in the package MORPHIX which handles all inflectional phenomena of the German language (cf. Finkler & Neumann 1986; 1988). The essential feature of MORPHIX is the use of the morphological regularities of German in the definition of a fine-grained word-class-specific subclassification. Morphological analysis and generation can be performed by means
166
J. ALLGAYER
ET AL.
of simple operations on n-ary trees which represent this classification. In spite of the complexity of German inflectional morphology, the average time required to process a word is between O-01 and 0.02 cpu seconds. Based on this morphological classification, the morphological lexicon XTRAMORPH has been built containing approximately 7000 stem forms at present. Apart from a primary vocabulary of about 2000 words, it currently contains technical terms related to the field of income tax. The user is able to augment the MORPHIX lexicon interactively by means of a clarification dialog. 3.2. SB-PATR, A UNIFICATION-BASED
PARSER FOR GERMAN
SB-PATR is a development and runtime environment for grammars structured according to the principles of unification, and is based on the D-PATR system developed by (Karttunen, 1986). Although a considerable portion of D-PATR has been modified, replaced or reprogrammed in the course of development of SB-PATR and the whole system greatly enhanced, several basic parts have remained unchanged. One of the central enhancements of SB-PATR with respect to D-PATR was required by the fact that German is an inflecting language. Therefore, it is more efficient to use morphological analysis rather than a word-form lexicon. The information obtained from MORPHIX is transformed into a lexicon structure and extended by syntactic knowledge of the stem (e.g. syntactic valency of.verbs, gender of nouns). Both systems are fully interchangebable, however, in that the morphological component in SB-PATR can be replaced by a word-form lexicon in D-PATR. SB-PATR uses XTRAGRAM, a large grammar for German (Harbusch, 1986), for the syntactic analysis of input sentences. XTRAGRAM works both with SB-PATR and D-PATR and can handle the following types of sentences: -declarative sentences, -interrogative sentences (wh-questions -imperative sentences.
and yes/no-questions),
and
Since all types of sentences use the same grammar rules at a lower derivational level, it is possible to analyse the following phenomena in all three sentence types: -all tenses, differentiating between the formation of compound tenses with the auxiliary ‘haben’ versus ‘sein’ (‘have’ versus ‘be’), -nested structures of subordinate clauses of arbitrary depth (without a representation of their dependencies), -noun phrases combined with pointing gestures (or pointing gestures alone), -passive constructions (represented by a transformed surface structure), -verbs containing a discontinuous verb particle (in contrast to prepositional verbs), -infinite constructions, and -constructions using modal verbs. If syntactic ambiguities occur in an input sentence, an individual syntactic representation should be created for each reading. However, in order to reduce the
167
THE Xl-RA NL ACCESS SYSTEM TO EXPERT SYSTEMS
PointMarl-
Vppp-V-fahr
NComp-Nplusrel-N-V61klingen F-PP-PLoc ‘NachPrep-nach MainField-MF Nplusrel-N--Mann NComp <
< Det-dies VonPrep-von
IAuxwerd-werd ‘FrontField-NP-NPl-NComp-PersPron-lch
FIG. 3. Derivation tree for the example sentence.
number of alternatives, certain dependencies which cannot in any case be resolved at a syntactic level (e.g. complex noun phrases or nested subordinate clauses) are not further analysed but recorded in a flat structure. Disambiguation is left up to subsequent analysis processes. Details as to the principles of unification grammars cannot be discussed here. A general account has been given by (Shieber, 1987). The following example should give an impression of the power of XTRAGRAM: The analysis of the sentence “Ich werde von diesem Mann nach Viilklingen gefahren.” (“I am being driven to Viilklingen by this man.“) yields the derivation tree depicted in Fig. 3 (constituent structure), and the feature structure (DAG) of the start node S in Fig. 4. The sentence is in the passive voice. Note that in the DAG, the passive structure is represented below the child node of the root S labeled ‘surface’, and the active structure below the child node of the root S labeled ‘structure’. 3.3. TACIILUS,
A COMPONENT FOR THE ANALYSIS OF POINTING GESTURES
TACT&US is responsible for the interactive construction of forms on the terminal screen, the internal representation of their structure, and for the analysis of pointing to the displayed forms. Preliminary examinations have revealed that most application forms contain
168
J.
ALLGAYER
ET AL.
mainverb--stem
FIG.
4. DAG for the example sentence.
hierarchical structure, and that four basic elements are sufficient in order to describe them (Allgayer, 1986) -value regions, where data can be entered by the user (e.g. the region where ‘78.-’ has been entered in Fig. 1); -label regions, which contain instructions for the completion of the form (e.g. the small region which contains the string ‘DM’); -frame regions, which enclose regions of the form (e.g. the box containing the ‘DIW-region and the value region containing ‘78.-‘); -abstract regions, which group together a number of arbitrary regions which need not be adjacent (e.g. the bottom line of the form or the right-hand column of Fig. 1). The organization graph represents the hierarchical structure of the form. It is built up in parallel with the definition of the form itself. The nodes correspond to the regions of the form, and the edges represent the ‘geometrically embedded’relationship between these regions. As far as pointing gestures are concerned, four different types can be distinguished: -exact pointing with the aid of an instrument-e.g. -standard pointing with one’s index finger,
a pencil,
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
169
FIG. 5. Selectable granularities of pointing gestures.
-vague pointing in using the entire hand, and finally -encircling larger areas. Empirical experiments were carried out to find similarities and differences between natural pointing and pointing with the aid of TACTILUS (Wille, 1989). Following (Clark, Schreuder & Butterick, 1983) the demonstratum is defined as the object being pointed at. As shown in Fig. 6, it is not always identical to the referent intended by the pointing agent. Reasons for this might be the user’s inattentiveness, an oversized type of pointing gesture, or the user’s desire not to hide the data entered in the respective region. Pars-pro-tot0 deixis is considered as a special case of divergence in which the demonstratum is contained geometrically within the referent. The TACTILUS component allows the interactive construction and editing of forms. Because of interchangable fonts and the selective use of grey background insets, the screen-reproduced forms correspond well to the appearance of the originals.
170
.I. ALLGAYER
i-3
AL.
Demonstratum
case (A)
Referent and demonstratum ore identical.
case (Cl
case(B) Referent
and demonstratum geometrically adjacent.
FIG. 6.
are
Pars-pro - toto- deixis: demonstratum lies inside of referent.
Some relationships between demonstration
and referent.
Moreover, TACTILUS allows the user to point at the form displayed on the screen via a mouse. To do so, the user must first choose an adequate symbol from the pointing mode menu (see Fig. 5). After bringing this symbol into the desired position, the pointing gesture is completed by a mouse-click. A pointing area is associated with each type of pointing gesture. Its size corresponds to the degree of accuracy of the gesture. Pointing plausibility is represented by a numerical value expressing the degree to which a region is indicated by the gesture. It is derived from the degree to which a region is covered by the pointing gesture. This value is propagated throughout the graph in order to find the form regions possibly intended by the gesture. The regions for which a plausibility value was assigned are collected in the list of referential candidates. This list is the starting point for other processes such as the linguistic referent identification process (see Section 4.2.4). In order to guarantee a high degree of operating flexibility, TACTILUS has a context-free as well as a context-sensitive application mode. In the latter mode, the system receives a list of potential referents which it re-evaluates through analysis of the pointing gesture. In the context-free mode, the system constructs its own list of referents-with only the pointing gesture as input. A detailed description of TACTILUS is given in (Allgayer 1986; Allgayer & Reddig 1986).
171
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
3.4. SB-ONE, A KL-ONE-LIKE KNOWLEDGE
REPRESENTATION
WORKBENCH
SB-ONE is a knowledge representation language in the KL-ONE paradigm. Several extensions and refinements have been added to the description as given by (Brachmann 1978; Brachmann & Schmolze 1985), however. SB-ONE has been implemented using the network maintenance system FUZZY (Le Faivre, 1974), a subset of which has been implemented in a more efficient way. Only the kernel of SB-ONE will be described in this paper; for a full account see Kobsa, 19886,~; Kalmes 1988, 1989; and Profitlich 1988. SB-ONE is mainly comprised of two levels of representation: The general level, which represents knowledge of a universal nature (including knowledge about classes of objects),? and the individual level, which represents knowledge about individual facts and objects (the individuals) in the domain of discourse. At both levels, the most important means of representation are concepts and attribute descriptions. General concepts correspond to unary predicates which can be applied to individuals of the situation to be represented. A relationship which normally exists between two individuals to which concepts 1 and 2 can be applied, respectively, is expressed through a general attribute description of one of these concepts. An attribute description of a concept gel describes such a relationshp as an attribute of the individuals in the denotation at gel. It consists of a binary role-predicate and the concept gc2. This so-called value-restriction concept gc2 restricts the possible values of the relation’s second argument. The number restriction of an attribute description specifies how many of these attributes the individuals in the denotation of gel possess in the minimal, maximal and default case. A necessity marker indicates whether individuals to which gel applies possess the respective attribute necessarily or only optionally. In Fig. 7, the ovals and circles printed in bold type represent general concepts and roles, respectively. At this level, the fact is being expressed that every individual in the domain to which the concept ‘ACTION’ can be applied can be related to an actor, and that the special action ‘ADD’ claims three additional attributes--the two summands and the result itself. As can be seen, concepts are ordered into a subsumption hierarchy, in which the subordinate concept inherits all attribute descriptions of the superordinate concept (e.g. the ‘agent’ role of ‘ADD’ is inherited from ‘ACTION’). Individualized concepts in SB-ONE assert that, in the domain being represented, there exist individuals to which the corresponding predicates apply. In Fig. 7, the concepts ‘ANNUAL DUES’ and ‘NUMBER 50’ have been individualized, expressing the fact that in the situation being talked about, an annual contribution of 50 marks exists. Concepts labelled ‘SC’ (singleton concepts) are only allowed to be individualized once. They are used for representing numbers, names, or days of the week, for example. A graphics-oriented knowledge acquisition component (Kalmes, 1988) serves in constructing knowledge bases using SB-ONE. On the terminal screen, the SB-ONE editor displays sections of SB-ONE knowledge bases in the form of networks similar to those shown in Figs. 7 & 8. Within this graphic representation, new entries, modifications or deletions can be carried out. The changes are checked as to t This part of a knowledge base is often addressed as ‘T-Box’ in the KL-ONE terminology.
172
J. ALLGAYER
ET Al..
r
PE
FIG. 7. Fragment of the CKB knowledge base implemented in SB-ONE.
whether they obey the syntactic restrictions imposed by SB-ONE and, if this is the case, the knowledge base is updated. Incomplete representation structures which the knowledge engineer has entered need not be supplemented immediately, but can be completed later on (even in a follow-up session with the system), since the knowledge acquisition component keeps detailed records of missing parts and the constraints which they must observe. With the aid of a classification algorithm, the positions of the new entries in the subsumption hierarchy are checked and re-ordered if necessary. The SB-ONE pattern matcher (Aue, Heib & Ndiaye, 1989) can be used for retrieving elements and substructures of SB-ONE knowledge bases. Within a knowledge base, SB-ONE offers the possibility of establishing disjoint partitions to which search and reasoning processes can be restricted. Partitions can also be ordered in a hierarchical manner, so that contents of superordinate partitions are inherited by the subordinates. Processes operating upon subordinate partitions can optionally take the inherited knowledge into account then as well. The partition inheritance mechanism of SB-ONE is used in particular by the user modeling system BGP-MS (see Section 3.5). Two knowledge bases have been implemented within SB-ONE to date: the functional-semantic sfructure (FSS) and the conceptual knowledge base (CKB). In its genera1 section, the FSS represents basic knowledge pertaining to semantically well-formed expressions (compare to Bobrow & Webber, 1980; Sondheimer, Weischedel & Bobrow, 1984; Jacobs, 1987). The FSS defines how German words
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
173
FIG. 8. Fragment of the FSS knowledge base implemented in SB-ONE.
may be combined in order to build semunticully correct complex expressions interpretable by the system. Fig. 8 illustrates (simplified) the FSS representation of the sentence “An die GI zahle ich jahrlich 100 DM” (“I pay 100 DM to the German Informatics Society each year”). A comparison with Fig. 7-which shows a fragment of the CKB-illustrates that the representation of linguistic and world knowledge can sometimes be quite different. As is the case for syntactic structures described in DAGs, and for world knowledge represented in the CKB, complex expressions are represented in the FSS using a central SB-ONE concept and its attribute descriptions. The concept is obtained through translation of a phrase’s nucleus, e.g. the head of a noun phrase, with the attribute descriptions corresponding, for example, to modifiers and relative clauses depending on this noun. The functional relationships between nuclei and their dependent constituents are first categorized, and then explicitly represented in the FSS using SB-ONE roles. Also, pointing actions which may accompany NL descriptions of visible objects (e.g. areas in the tax forms) are represented as attribute descriptions of the concepts corresponding to these objects. For this purpose, a special role (‘deictic-mod’) is added to the concept ‘CONCRETE-OBJ’. Just as syntactic rules exist which are independent of the meaning of an expression, there are also semantic rules which retain their validity, regardless of the expression’s situated use. For example, words grouped into specific semantic classes can only be combined with other words (or word classesjor only take on certain functions within complex expressions-in accordance with their “class regularities”
174
J. ALLGAYER
El‘ AL.
(as defined, for instance, by case-frame descriptions). In our approach, these domain-independent regularities concerning the form and function of linguistic expressions and their hierarchical relationship to one another are captured by the FSS. The task of the semantic part of the lexicon is to group words into word classes (which correspond to FSS concepts or structures) and thus build a bridge from words to the realm of semantics (see Section 4.2.1.). The individualized part of the FSS, then, represents knowledge about individual utterances. Given a certain NL expression, the same individualized representational structure will always be constructed in the FSS. This functional-semantic structure is independent of the domain-specific task within the user-XTRA dialog and its related problems of representation and processing. Referent identification (including anaphora resolution) and dialog act recognition are performed only after an FSS structure has been completed. The CKB, also implemented in SB-ONE, is the central knowledge base of the XTRA system. It not only represents the general and the domain-specific world knowledge of XTRA, as well as the system’s goals, but also forms one basis for the representation of the user’s beliefs and goals in the user model maintained by the BGP-MS system. Moreover, the CKB can access a part of the expert system’s knowledge base with the help of an interface (see Section 4.3). 3.5. BGP-MS, A BELIEF, GOAL AND PLAN MAINTENANCE
SYSTEM
XTRA examines NL user input as to which assumptions can be made regarding user knowledge, beliefs and goals, as well as which user beliefs the system should accept and, finally, which goals the system should set for itself. BGP-MS is a system currently under development which concerns itself with the construction, representation, retrieval, and modification of such beliefs and goals (i.e., a Belief, Goal the integration of inference and and Plan Maintenance System). Furthermore, consistency maintenance systems is planned for the future. Basically, three facilities are used within the representational component of BGP-MS (cf. Kobsa, 1985a, b; Kobsa, 1988): -partitions which contain, for instance, the system’s beliefs regarding the world, the system’s goals, the beliefs of the system with respect to the user’s beliefs, the beliefs of the system with respect to the user’s goals etc. (partition maintenance is already being supported by SB-ONE, the basis for the representation employed in BGP-MS); -the representation structures of SB-ONE which are used to store these knowledge contents; -acceptance attitudes for expressing the fact that descriptions of situations in the domain of discourse are either believed or disbelieved, aspired to or not; they are also used to express uncertainty and indifference. Taken together, these representational means allow for the representation of a wide number of beliefs and goals (as is necessary for user models in NL dialog systems, cf. (Kobsa, 1989~). Figure 9 gives a simplified example. Shown here, among other things, is that the system knows the concept ‘EMPLOYEE SAVINGS BENEFIT’ (partition ‘SB’), but that the system also believes that the user is
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
175
MB FIG. 9. User modeling with partitions.
unfamiliar with it (partition ‘SBUB’).t If identical knowledge contents are found in more than one partition, a single, superordinate partition will be established (if none yet exists). In Fig. 9, this is the partition labeled MB (for ‘Mutual Belief’) which contains a description of those situations for which the following applies: (1) (2) (3) (4)
the system knows them, the system believes that the user knows them, the system believes that the user believes that the system knows them, etc.
SB and SBUB inherit the contents of MB. Thus, the contents of MB are also found when searching within SB or SBUB. BGP-MS executes entry and modification instructions which are supplied, for instance, by the syntactic dialog analysis (see Section 4.2.1). Moreover, it maintains a library of so-called ‘stereotypes’ (see Rich, 1989), i.e. default assumptions concerning the beliefs and goals of certain user groups (e.g. one would expect more detailed knowledge in the case of an income tax expert than, say, an everday taxpayer). BGP-MS can integrate these stereotypical assumptions into the model of the actual user at the beginning of or during the dialog (see Section 4.3.2). Because t ‘SB’ stands for ‘System Believes, ’ ‘SBUB’ for System Believes that User Believes.
176 these stereotypes graphics-oriented
J. ALLGAYER
are also represented editor of SB-ONE.
in SB-ONE,
E7‘ AL.
they can be built up using the
3.6. LST-1, A TAX EXPERT SYSTEM IMPLEMENTED WITHIN THE BABYLON SHELL
BABYLON (di Primio & Brewka, 1985; di Primio & Wittur, 1987) is a development and runtime environment for expert systems (i.e. a so-called ‘expert system shell’). It is a hybrid system allowing the use of four representation formalisms, which interact via the so-called ‘meta-processor’: -production rules, which can be grouped into rule packages that activate each other; -frames, which can be ordered into a frame hierarchy (subordinate frames inherit the slots of superordinates; slots can not only be filled by items or lists, but also by instances of other frames); and -Prolog, which is used to express relational knowledge-also about frameinstances; and -constraints, which can be defined for slots within the same frame or between frames. In all of these representation schemes, the LISP interpreter may be invoked as well. BABYLON offers the user three processing methods: -Forward chaining: the user can activate a rule-package and let its rules “work down” in a forward direction, i.e. draw new conclusions on the basis of given facts. -Backward chaining: the user can pass on an assertion to BABYLON’s rule processor or the Prolog interpreter. These components will try to derive the assertion in a backward direction, i.e. determine whether the preconditions of this assertion, or preconditions of these preconditions, etc., hold true. -Explanation: in calling the explanation component, the rule chain that derived a particular result can be examined by stepping back through the reasoning process until the point of interest is reached. The expert system LST-1 has been developed within this shell system (Beiche 1987; 1989). LST-1 assists the user in filling out his/her annual tax witholding adjustment form, and determines the taxes which are still due or can be refunded. As opposed to many other tax-calculating programs, it offers the user the following advantages: -All entries can be made in random order. -In interacting with the PLUG system, the user’s attention can be focused to sections which have not yet been completely filled (see Section 4.1). -All new input is subjected to type, plausibility, and consistency checks against other input data. -Calculations not requiring further information can be immediately carried out upon request and displayed on the screen. -Even with only partially filled-out application forms, the user is made aware of any missing entries through immediate data-assessment. Then, upon request he/she can also be directed to any further positions containing possible additional deductibles.
177
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
-The system is able to provide application form.
examples
of entries for most regions on the
In the future, the possibilities of partial backtracking are to be utilized to a greater extent (e.g. for reacting to user questions such as “What would the end-result be like if I had entered these costs here [7] instead of there [PI?“). Also, more frequent use of backward chaining is planned for deducing partial results. to the access system, LST-1 was In order to avoid a possible “adaptation” deliberately developed outside of the remaining XTRA system. The only restriction for the development was that, if possible, no other representational formalisms than frames and rules were to be employed. On the one hand, this was supposed to guarantee that interaction between XTRA and the expert system be more bounded and less complex (see Section 4.4). On the other hand, the explanation component of BABYLON can thereby be used to its maximum potential (the explanation component does not deliver an inference chain for the deductions of the Prolog interpreter). Presently, LST-1 has about 150 frames and approximately one hundred rules at its disposal. At runtime, 300-400 instantiated frames are created.
4. Processing in XTRA Process operating upon the knowledge bases described in Section 3 include those which analyse the user’s entries into the tax form displayed on the screen and those which analyse his/her NL input which may be accompanied by pointing gestures onto the form. Other processes perform dialog-specific inferential evaluation with respect to the information content of this input, control the interaction with the of a underlying expert system, and allow for the choice and verbalization communicatively adequate reaction of the system. These system modules are subject to the following boundary conditions: -efficient employment of their own local knowledge; -the use of mutual knowledge where possible; and -the greatest possible degree of domain-independence.
4.1. ANALYSING
THE
USER’S
ENTRIES
IN THE
FORM
ON THE
TERMINAL
SCREEN
Data which the user enters onto the tax form displayed on the terminal screen are directly forwarded to the expert system using domain-dependent translation rules (Beiche, 1988). The interaction structures between the CKB and the expert system (cf. Section 4.4) make this data immediately accessible to the XTRA system as well. The user has in principle the possibility of making form entries in random order. One may expect, however, that the “quality” of his/her problem-solving behavior is likely to improve if the user’s attention is focussed on areas of the form that belong together semantically. Thus, before proceeding to a new area, the user should be notified if there are only a few more fields left to be filled. If, in spite of this notice, he/she decides to proceed, this would have to be accepted by the system, of course. This focusing of the user’s attention is performed in XTRA by the PLUG component (Ripplinger, 1988; Ripplinger & Kobsa 1988).
178
J. ALLGAYER
ET AL.
Such unsolicited advice to the user, though, should be used with discretion in order to avoid tiring, confusing, or annoying him/her unnecessarily. The decision as to whether or not to offer such advice depends on the total number of blank fields, and on the ratio of blank fields to the total number of fields able to be filled out-both with respect to the old section and to the new section being entered. The fewer the entries remaining to be filled in the old area (both in absolute and relative terms), the more the user is advised by the PLUG system to complete this area. The necessary data for this comparison is obtained from the organization graph described in Section 3.3: the value regions of the form are marked as to whether an entry is necessary, possible or not allowed, and the superordinate regions are assessed according to the ratio just mentioned. The result of assessing an individual area is not static but generally varies with each new entry in this area. Moreover, an entry in one field might require further entries in other fields (in the same or some other form section), make them possible, or prohibit them altogether. Thus a completely new assessment is necessary after each entry. These interdependencies between value region markers are represented by dependency rules, which contain the logical connectives v, A and - in their is filled out], then [VR112 condition parts (e.g., ‘Zf [VRllO is filled out] A -[VRlll must not be filled out]). These rules also apply when deleting entries at a later time. Such later deletions may reset other value region markers (e.g., an entry in VR112 may become possible again after the value in VRllO has been removed). The set of all dependency rules can be regarded as defining a dependency network along which the markers are propagated. This constraint problem is also managed by the PLUG system. 4.2. ANALYSING THE USER’S LINGUISTIC AND GESTURAL INPUT
NL input of the user is entered into a dialog window which is separated from the form on the screen. For referring to elements of the form, the user may not only use natural language, however, but also a combination of NL descriptions and pointing gestures. The morphological analysis of the user’s NL input is performed by MORPHIX; syntactic analysis and the association of pointing gestures with corresponding are accomplished by the SB-PATR parser using expressions linguistic XTRAGRAM. The operation of these components has been described in Sections 3.1 and 3.2, respectively. SB-PATR yields as its result a directed acyclic graph (DAG) in which pointing gestures are represented as values of the ‘deictic description’ attribute. A two-step process analyses the DAG semantically: the linguistic analysis performed by the sentential-semantic analysis, and the referentialsemantic interpretation, combining the textual and gestural analysis in order to yield the meaning of a multi-modal dialog contribution in a given communicative situation and the objects having being referred to. 4.2.1. Sentential-semantic analysis Sentential-semantic analysb (SSA) immediately follows the syntactic analysis of the NL input. It translates the DAG produced by SB-PATR into a representation of the
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
179
functional-semantic structure FSS. To this purpose, it successively interprets the constituents of the DAG, retrieves the corresponding word stem information from the semantic lexicon, and individualizes a sub-structure of the general FSS as the semantic representation of the constituent. As in the case of syntactic analysis, semantic analysis treats the verb as a central element, the nucleus, in that the verb is represented as an individualized SB-ONE concept, and the verb’s dependents as dependent attribute descriptions of the concept. The SSA reads the verb stem out of the DAG and then locates and interprets the respective entry in the semantic lexicon, the right-hand side of which can be an FSS concept name or a complex expression in terms of FSS concepts and roles. The FSS concept(s) retrieved is/are individualized successively by filling their dependent roles with the translation of the remaining phrases of the sentence. For the local semantic interpretation of other sentence elements (adverbs, conjunctions, and especially nominal and prepositional phrases), the same strategy is applied as for verbs. If an individualized FSS concept possesses attribute descriptions which themselves possess attribute descriptions, the translation process is applied recursively on the dependents as well. The values of the necessity markers of the roles (which express whether the roles represent obligatory or optional constituents) have a guiding effect on the process of translation. In Fig. 8, for instance, the roles ‘agent’ and ‘object’ of the concept ‘GIVE’ are tried first because they are marked as being necessary (‘NEC’). The roles marked as optional (e.g. ‘benefactive’) are filled subsequently, but are ignored if no filler can be found in the DAG. Sentential-semantic analysis ends with a result which can be subjected to further processing if: -all FSS concepts which have been selected as meaning representations of the sentence have been completely individualized (i.e. all necessary attribute descriptions have been filled), -the DAG has been fully translated (in the case of syntactic ambiguities, the SSA can successively translate each of the alternative DAGs upon request with regard to differences in their syntactic structures, or translate all DAGs at once), and -alternative readings of word stems within the lexicon have been taken into account (depending upon the specific requirements of the subsequent XTRA components). In order to implement the SSA algorithm, interfaces were developed that allow access to the DAG and to the semantic lexicon. The SSA uses functions of the SB-ONE formalism to generate the FSS target structure. 4.2.2. The referential-semantic interpretation second step within the linguistic analysis of the meaning of a sentence is referred to as the referential-semantic interpretation (RSI). Its first module maps the domain-independent FSS representation of the sentence into its conceptually deeper description in terms of the system’s world knowledge expressed in the conceptual knowledge base CKB. The transformation process is governed by a set of transformation rule packages, each of which is attached to a concept of the source structure. Each rule in a package contains a possible translation for the source The
180
J. ALLGAYER
ET AL.
concept into the target knowledge base, and conditions which must be fulfilled by the attribute descriptions of the individualized source concept for the rule to apply. These rules are designed independently of their use in either NL analysis or generation: In the case of the referential-semantic interpretation, the source is an FSS concept together with its environment, the target a structure in the CKB. For purposes of generation, it is just the other way around. Moreover, it is not necessary to define a separate transformation rule package for each source concept since the transformation rules exploit the SB-ONE hierarchy and its inheritance characteristics. For this purpose, a rule inheritance mechanism parallel to that of SB-ONE is under development. During the interpretation of a dialog contribution within its situative context, the interpretation module has to deal with such discourse subtasks as Referent identification. With the help of the linguistic dialog memory LDM (cf. Section 4.3.1), referent identification must determine what objects (things or facts) the expression under consideration refers to. The LDM gives access to all potential referents of definite descriptions (namely the objects mentioned in the ongoing dialog or visible in the visual context) by structuring their corresponding internal referential objects (cf. Habel, 1984) according to discourse-specific criteria. In order to associate a given description with the correct object, the description is first matched against the individualizations of the CKB by application of the SB-ONE pattern matcher, to find all semantically possible referents. With this set of referential objects (ROs) as input, the RSI procedures then determine the RO which is the most plausible referent with respect to the dialog. Combination of the linguistic and gestural parts of a dialog contribution. The analyses of NL and the accompanying pointing gesture are performed in parallel up to the level of sentential-semantic representation. However, the meaning of the compound description is discourse-specific and domain-dependent, because the gesture can change the meaning of an NL expression and vice versa. In this case, taking into account solely the linguistic description would frequently lead to multiple or incorrect ROs. The next two sections describe the integration of the two referential analysis components. Representation of uSer misconceptions in his lher referent specification. Before integrating the meaning of the user’s dialog contribution into the appropriate part of the knowledge base, the referential-semantic interpretation has to make sure that the notions in the user’s input are used in the same way as (or are compatible with) the system’s terminological knowledge. Descriptions containing misconceptions have to be stored within a special partition, but should be treated referentially in the same way as correct ones.
The next steps of processng the resulting meaning representation of the dialog contribution depend, for example, on whether the user’s input is an assertion, question, demand or command, whether it contains new information or something that contradicts the system’s knowledge, etc. The tasks resulting from these characteristics are handled by subsequent XTRA components, e.g. by the user modeling component, the inference system, or the expert system itself.
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
181
4.2.3. Deictic-referential analysis Sometimes, the use of certain linguistic
descriptions within a dialog may cause referent identification to fail. For example, domain-specific technical terms may confuse non-specialists. Also, very detailed and complex descriptions are difficult to understand. For instance, for referring to the field on the application form in which the pointing symbol of Fig. 1 is positioned, an NL description such as “ . . . the right field of the region ‘Beitrige zu Berufsverbanden in the last line of the region ‘Werbungskosten”’ must be used. In such situations, pointing gestures are often and very effectively used in human-to-human dialog. This additional medium can simplify, for example, the complex description mentioned above to: “ . . . this [P] field . . .” In this case, referent specification by the speaker, as well as referent identification by the hearer, is easier and faster ,because of the less complex description used. A domain in which one can strongly benefit from pointing gestures is that of advising on the filling out of forms. (Empirical investigations carried out in the XTRA project demonstrated that users indeed frequently do employ pointing gestures for referring to form areas.) Form deixis is somewhat simpler than deixis in general due to the following characteristics: The speaker and listener are co-present and point only to visible objects. The pointing area is two-dimensional and relatively small; the meaning of directional expressions is the same for both the speaker and the listener. Furthermore, it is always possible to touch the demonstratum; therefore, pointing gestures can be carried out very accurately. Although these facts reduce the problems, referent identification has not become a trivial task, because the referent and the demonstratum are not necessarily identical (cf. Fig. 6). In a form, each single gesture can be used to refer either to the basic region in which the pointing gesture took place, the actual content of this region, one of the superordinated areas in which the basic region is embedded, or the concept related to one of the mentioned areas. Therefore, additional knowledge sources are needed in order to determine the intended referent. Especially useful is the information extractable from the NL expression that was accompanied by the pointing gesture (see Kobsa et al., 1986). Extensive research on pointing gestures and the characterization of form deixis can be found in Schmauks (1986) and Schmauks (1987). 4.2.4. Integration of referential analysis components The form fields which are displayed on the screen meet the ‘physical co-presence’ condition of (Clark & Marshall, 1981). Their representatives in the CKB are therefore available as referential objects in the dialog memory LDM. As was described in the previous sections, both linguistic and deictic analysis can, under certain conditions, deliver a set of referential candidates for one single description. If both components are combined, however, their respective disadvantages largely cancel each other out. Then, only one candidate will remain in the ideal case, namely the intended referent itself. Generally, in order to reduce computational complexity, the most restrictive step of the analysis is carried out first. Heuristics
182
J. ALLGAYER
E7’ AL.
decide in each individual case which one might be. Since a general CKB concept (e.g. ‘AMOUNT OF MONEY’, cf. Fig. 7) applies to a greater number of individualizations than a more specialized concept (e.g. ‘ANNUAL DUES’), the referential-semantic interpretation of the linguistic description is all the more appropriate the more specific the description itself is. If a linguistic description is very general, or if even the head noun is missing, the deictic analysis is to be preferred as the first step. Under certain circumstances, disambiguation can also be attained through case-frame analysis and domain knowledge. Here again, the analysis is all the more effective the more specialized the addressed concept is. For example, the question “Kann ich meinen Gewerkschaftsbeitrag hier [P] addieren?” (“Can I add in my union dues here [f]?” (cf. Fig. 1)) only refers to the money region itself since the ‘result’ attribute description of the ‘ADD’ concept requires instances of ‘NUMBER’ as its fillers (cf. Fig. 7). If, instead, the user had asked “Was kann ich hier [P] tun?” (“What can I do here [PI?“) either the money region or the region to the left of it designating the specific professional organization in question may have been meant. The expression ‘tun’ (to do) cannot be used to distinguish between these two possibilities because of the many subordinate concepts which its CKB representation subsumes (‘ENTER’, ‘ADD’, ‘DELETE’, etc.). 4.3. CONSTRUCTION OF DIALOG KNOWLEDGE
BASES
NL sentences can only be adequately processed in the context of a dialog, utilizing information pertaining to the dialog partner. A particular dialog influences referent identification (i.e. the assignment of a given NL description-possibly accompanied by a pointing gesture-to an object of the world or its representation in the system’s knowledge base) and establishes criteria for a communicatively adequate referent specification (i.e. the generation of a description for an intended object). A model of the user’s goals helps in the analysis of the user’s dialog contributions and determines what dialog contributions the system should itself make, and a model of his/her domain knowledge determines what concepts can be used to express the respective information. In XTRA, structural information about the preceding dialog is represented in the linguistic dialog memory, while a user model represents the system’s knowledge with respect to the goals and knowledge of its dialog partner. During an ongoing interaction with the user, these knowledge bases are incrementally updated. Knowledge newly obtained is immediately exploited in the dialog behavior of the system. 4.3.1. The linguistic dialog memory LDM The linguistic dialog memory (LDM) consists of three parts (see Fig. 10): -the -the -the
referential objects (ROs), dialog sequence memory (DSM) and dialog context model (DCM).
183
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
REFERENTIRL
OBJECTS
DIALOG
SEQUENCE
llEllORY
DIALOG
CONTEXT
tlODEL
FIG. 10. Architecture of the linguistic dialog memory with example entries.
Every object or event visible on the form or introduced into the dialog is represented as a referential object (cf. Habel, 1984; Hahn et al., 1980) in addition to its representation as an individualized CKB sub-structure. The internal structure of an RO consists of two types of links to other knowledge bases. The first link refers to the representation of the object in terms of the CKB. An RO can further contain a set of pointer-pairs, each with one element referring to the FSS representation of a NL description of the object itself, and the other marking the position in the dialog (represented in the DSM) at which this description was used. The DSM represents the sequence of dialog contributions of both the system and the user. ‘Each element within the DSM contains the following information: -an identifying serial number, -a symbol identifying the dialog partner who contributed this part of the dialog (‘U’ for user, ‘S’ for system), -a link to the corresponding RO, -a dynamic focus value and -a reference to the context space within which the current focus value is to be interpreted. The dialog is structured according to subject matter by the dialog context memory (DCM). Context spaces are sections built up within the DCM for questions, answers, interruptions and re-questioning. These context spaces store information about the status of and relations between the rhetorical structures within the
184
J. ALLGAYER
ET AI..
discourse (Reichmann, 1985). This information will be dynamically adapted to changing situations in the course of the dialog, resulting in situation-dependent focus values. In Section 4.2 we described how the architecture of the LDM can be exploited for supporting and enhancing referent identification. In Section 4.5 its support for a communicatively adequate referent specification by the system will be discussed. 4.3.2. The user model The user model in XTRA is maintained by the BGP-MS system (cf. Section 3.5). BGP-MS handles the representation, construction, retrieval, and partly also modification of assumptions of the system relating not only to the user’s goals and beliefs, but also to those of the system itself. There are three ways in which assumptions can be entered into the user model: (a) Stereotype incorporation. Using the graphics-oriented knowledge acquisition component of SB-ONE, stereotype assumptions regarding certain user groups can be defined. These assumptions can pertain to their knowledge within the particular domain or to their plans and goals. We intend to categorize the concepts represented within the CKB (namely concepts which pertain to the general world knowledge as well as technical terms with respect to the application domain of the expert system) into three levels of difficulty, and to divide the users into three levels of experience (cf. Chin, 1989; Rich, 1989; Nessen, 1987). Inexperienced users, for example, are certainly familiar with simple terms but do not necessarily know terms at the highest level of difficulty. At the beginning of a dialog, the user will be rated at the lowest level of experience and the corresponding stereotype will be entered into the empty user model. In the course of the dialog, these stereotyped assumptions will be revised if particular terms belonging to a higher level of difficulty are mentioned often enough by the user. He/she will then be classified accordingly into a higher category and the resulting stereotype will be entered into the user model in place of the old one. (b) Syntactic dialog analysis. Irrespective of the content of the user’s input (i.e. his/her assertions, questions, or commands), certain inferences about the user can be made directly from the syntactic structure of the user’s input sentence. For example, from the user question “Can I deduct my personal computer as a business expense”, the following conclusions can be drawn and entered into the user model: -The user is familiar with the concept “business expenses” (this information might cause the previous stereotype to be overwritten). -The user would like to know whether his/her PC is deductable as a business expense (this entry in the user model will trigger search procedures in the knowledge base of XTRA and the expert system-see the next section). -The user believes that the system knows whether PCs are deductible (which might not be the case if a question departs from the system’s area of discourse). Within this framework, the representation structures supplied by the analysis component can be entered almost unchanged into the partitions ‘SB’, ‘SBUB’, and ‘SBUW’ (cf. Kobsa, 1985~). The syntactic dialog analysis described above will be supplemented by the recognition of conventional indirect speech acts (e.g. “Can you
THE XTRA
NL ACCESS SYSTEM TO EXPERT SYSTEMS
185
add up all of my business expenses?“, which should be interpreted as a request rather than a question) in a later development of the system. Also, in making assumptions from user input, the occurrence of linguistic particles and interjections in the user’s input (such as ‘please’, ‘really’, ‘still not’) can be exploited (Kobsa, 1984). (c) Entries after system dialog contributions. Even the system’s own dialog contributions can help to extend and modify the user model. When the system explains a term to the user, it can assume that from now on the meaning of this term is known by the user (thus it can be used in future dialog contributions of the system). The generator, therefore, will send a corresponding update command to the BGP-MS. Or, after posing questions or requests to the user, the system can assume that she is now aware of the system’s goal to know some fact, or of the system’s goal that the user should behave in a certain way, respectively. The corresponding entry commands should be supplied by the generator as well. 4.4. INTERACTION OF XTRA WITH THE EXPERT SYSTEM
The integration of the conceptual knowledge base of XTRA and the knowledge base of the expert system is essential to the interaction of XTRA and the expert system. Currently, we focus on the relationship between the CKB and the frame knowledge base of LST-1, our first expert system to be accessed (cf. Section 3.6). An integration of the two representational structures is necessary for two reasons: -In order to communicate CKB structures representing questions and information of the user to the expert system, and re-translate its reactions into CKB structures, it must be known within XTRA which CKB concepts and roles correspond to which frames and slots of the expert system. -If possible, the redundant representation of knowledge in both XTRA and the expert system should be avoided. For this reason, CKB concepts and roles which would be semantically identical to existing frames/slots within the expert system are not additionally represented in the CKB. Instead, a reference to the corresponding frame/slot structure is entered. Though representing the present application domain of XTRA, the expert system LST-1 was developed outside of the XTRA system itself. During its implementation, attention was deliberately not paid to the fact that it should be accessible through natural language. Therefore, in conceiving the frame knowledge base, only the requirements pertaining to the expert system were considered. For the design of the CKB, however, different criteria exist: the CKB should form the target structure for analysis and the initial structure for generation processes; classification, search, and inference processes should operate on it; and beliefs, goals, and plans of the system and the user should be expressible within it. It is not surprising that certain discrepancies can be found when comparing the frame knowledge base of LST-1 with the knowledge structures required within the CKB. For example, -LST-1 does not contain certain concepts which might be asked for by the user and thus are required within the CKB;
16
J. ALLGAYER
XTRA
/
ET AI,
XPS
Expert System Rule:
Let TA%PAYERl.Expanses
ZEUSINESS_TRIP,
.Costs+
= ~TECHNICAL_LITERATURE, I
Costs
FIG. 11. Example of transitional structures between the CKB and the XPS knowledge bases.
-some frames have not been organized into an inheritance hierarchy (unusual, but syntactically possible), which is indispensable within the CKB; -in some cases, knowledge contents expressed as slots in LST-1 turned out to be concepts within the CKB. Figure 11 illustrates a simplified version of the first problem. In the expert system, the term ‘deductibility’ is only implicitly contained in the specified rule. Thus, inquiries such as “Is technical literature deductible?” cannot be answered. Therefore, in XTRA, the concept DEDUCTIBLE-ITEMS is introduced and the LST-1 frames TECHNICAL-LITERATURE and BUSINESS-TRIP are subsumed by means of cross-knowledge-base ISA links (1). In order to answer questions such as is introduced “Are technical books deductible?“, a concept TECHNICAL-BOOK in the CKB and linked to the LST-1 frame TECHNICAL-LITERATURE (2). Missing or inadequate inheritance relationships in the frame knowledge base can be corrected or completed within the CKB in a similar way. Moreover, so-called ‘meta-structures’ have been added to the SB-ONE knowledge representation language for transforming slots of the expert system into CKB concepts and frames into roles. The basic access functions of SB-ONE were enhanced in order to also accomodate optional processing of these CKB-XPS interaction structures (and thereby to allow the external origin of knowledge contents to be indistinguishable for higher-level SB-ONE processes). With this enhancement, user inquiries to XTRA represented in CKB structures can be treated in two different ways. First, it is possible to search within the CKB knowledge base while automatically taking the frame contents of LST-1 into account. Second, if a mere search is not sufficient for achieving a result, but inferences are required, frames, slots and instances of the expert system corresponding to the CKB structures can be identified. In this case, the inquiries can be translated in terms of these frames, slots and instances and passed on to the
187
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
expert system, which can then perform its normal internal inferences influenced at all by the access system. 4.5. GENERATION
OF NATURAL
LANGUAGE
without being
OUTPUT
For communicating answers, questions and requests to the user, the XTRA system activates its NL generation component, which translates the CKB parts that are to be communicated into natural language. When the generator-called POPEL+ begins to work, the partition ‘SWMB’ (‘System Wants that Mutual Belief exists’) in BGP-MS contains those CKB structures which are to be expressed. In order to generate a reaction suitable to the particular situation involved, the generation component must process this information in accordance with the current dialog state and user knowledge. 4.51. The architecture of the generation component Within generation systems, a traditional distinction is made between the “what-tosay” part which determines text content, and the “how-to-say” part which renders this content into NL text. On the one hand, this separation has advantages because, in both parts, different processing algorithms and, in general, different knowledge bases are involved. On the other hand, a strict separation of these modules complicates the generation of a communicatively adequate text, since knowledge which is only available in one component is sometimes needed in the other component as well (Appelt, 1985). For this reason, a framework has been developed which both allows a modular architecture, but also permits interaction between modules in a controlled way (Reithinger, 19876, 89). A comparable approach is to be found in the system PAULINE (Hovy, 1987). Quite in the spirit of the traditional distinction, the generator is divided into two main parts (see Fig. 12): POPEL-WHAT, which selects the conceptual content and determines the text sequence, and POPELHOW, which realizes the text (Finkler, 1989; Neumann, 1989). During the generation of a dialog contribution, however, the two modules communicate with each other continuously in order to solve the generation task. A central characteristic of POPEL is that language generation is performed in a parallel and incrementaf way.S Parallelism implies that both parts of the generator run in parallel, but also that within POPEL-HOW the processing of the reaction represented at the various levels of description proceeds in parallel. The incremental operation of the generation is a consequence of this parallelism. While POPELHOW is realizing one part of the dialog contribution, POPEL-WHAT can already be working on the following ones. 4.5.2. Determining the system reaction (’ WHA T-TO -SA Y “) Depending on the dialog state and the user’s knowledge, identical contents sometimes have to be verbalized in different ways. The task of POPEL-WHAT is to select the facts found in the BGP-MS containing the information that the system t POPEL is an acronym
for ‘Production
$ There are psycholinguistic 1987).
of {Perhaps,
Perfect,.
models of human language
,) Eloquent Language’.
production
which assume the same (e.g. Bock,
J. ALLGAYER
188
FIG. 12. Architecture
ET AL.
of the generation component.
wants to express as well as additional information necessary to build up a coherent dialog contribution. In this process, knowledge contained in both the LDM and the user model is at the system’s disposal. The choice as to which CKB structure will be verbalized (and when) is made by the relevant knowledge selector, which starts by looking into the ‘SWMB’ partition of the user model. After having analysed its content, the knowledge selector determines which type of dialog act should be generated. For instance, when SWMB contains a system goal that the user should carry out an action, a request or a question to the user would be appropriate dialog contributions; when the user is to learn of some fact, the system could assert this fact in its dialog contribution. Then, the relevant knowledge selector decides which dialog state the current dialog step has to take place in and selects appropriate rules from POPEL-WHAT’s dialog-rule knowledge base. In accordance with the incremental processing mode, small portions of the CKB are then transferred to POPEL-HOW for verbalization. Many factors are involved in determining the sequence in which parts of the CKB are passed on to POPEL-HOW for verbalization. Among them is the focus structure of the LDM. Others are linguistic restrictions (imposed by the partial sentence description already generated by POPEL-HOW), the plans of the system and the assumed plans of the user as represented in the user model. The selector has to take this information into account while determining the parts of the CKB that have to be verbalized next. Another component of POPEL-WHAT, the context handler, serves as a filter
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
189
between POPEL-HOW and the dialog knowledge bases BGP-MS and LDM. During the generation of object descriptions, the thematic context and the preceding dialog contributions must be considered. For example, a specific referential object can be referred to differently in different contexts: as ‘the entry’, and as ‘Kaiserslautem’. The decisions as to what description to choose are restricted by the dialog-dependent knowledge bases already mentioned. In order to generate a description both modules of the generator have to interact. After POPEL-HOW decided that a description should be generated for a CKB structure, it negotiates with the context handler about the exact content and form of this description. The context handler, in turn, selects the appropriate information from the dialog knowledge bases. 4.53. Realization of content (“HOW-TO-SAY”‘) The realization component POPEL-HOW (Finkler, 1989; Neumann, 1989) is responsible for realizing the communicative actions of the system-starting from the CKB description and on through the different representations-in such a way as to establish a linear sequence of words as the output. In XTRA, knowledge sources used in NL analysis (e.g. lexica, FSS, LDM, CKB), should also be used for generation purposes since both processing a user’s input and generating the system’s output make heavy use of the mutual dialog contributions and their descriptions in these representations. Different representations of knowledge would be a major obstacle for this processing. In analogy to the analysis procedures, the first step in POPEL-HOW provides for the mapping of CKB structures onto FSS structures. The second step then transforms the FSS representation into a syntactic structure. On the basis of this structure, the syntax-dependent word order and the syntactic features for the words are determined. Finally, the morphological synthesis component MORPHIX inflects the words, which are then finally displayed on the screen. Due to the incremental nature of generation, POPEL-HOW only receives parts of the CKB representation of the sentence to generate at a time. The ambiguity of the rules governing the transition between representations may disrupt processingwhich can then only continue if information which has not yet been provided has been received from POPEL-WHAT (e.g. role-fillers pertaining to an instance). Therefore, verbalization will “freeze” if corresponding information from POPELWHAT is not readily accessible. The expectations resulting from such situations (e.g. at a syntactic level, the information that the subject has not yet been identified) are then fed back using the translation rules between the knowledge sources (cf. Section 4.2.2). Finally, POPEL-HOW returns information to POPEL-WHAT about which parts of the CKB have not yet been selected for verbalization but are needed due to linguistic constraints. However, the verbalization component cannot take it for granted that the information it regards as being essential for further processing will always be activated by the selecting component. For example, if POPEL-WHAT determined through information provided by the LDM that a referential object has a very high focus value, it can decide not to verbalize it again. Thus, to continue processing despite incomplete information, POPEL-HOW must contain algorithms to handle these situations (e.g. for generating ellipsis). As an additional device for referent specification, POPEL also generates pointing
190
J. ALLGAYER
E7’ AL,.
gestures onto the form presented on the screen. The decision as to whether to use a gesture at all is made by the context handler, which passes this information to the gesture generator. The global strategy for the generation of pro-forms and pointing gestures, together with several examples, is described in Reithinger (1987~) and Schmauks & Reithinger (1988).
5. Comparison with related work Up till now, only a few systems have been developed (or are still under development) which have a similar objective to that of XTRA, namely NL access to expert systems. There exist, however, a number of more or less sophisticated NL interfaces to databases, some of which are already commercially available (cf. Wahlster, 1986u,b; Carbonell 1986; Hendrix, 1986; Tennant, 1986; Trost, Buchberger, Heinz, Htirtnagl & Matiasek, 1987). Such systems, however, are rather restricted in scope and, apart from the case-frame parsing techniques which are mostly employed, not directly relevant to expert system access. The communicative scope of these systems is “question-answering” only, i.e. the construction of database queries from the user’s NL questions. Other discourse phenomena, including explanation, clarification subdialogs, but mostly also the generation of NL answers, are not dealt with. The first larger-scale NL access system to expert systems was XCALIBUR (Carbonell, Boggs, Mauldin & Anick, 1983, 1985; Carbonell, 1986). This system was aimed at providing flexible NL access to the XSEL expert system which advises on the selection of appropriate components in a VAX configuration. The user can ask for technical specifications of these components and order them. XCALIBUR transforms the user question into a search pattern referring to the static knowledge base of the XSEL expert system, and re-translates XSEL’s answer into natural language. Work on XCALIBUR is mostly concerned with linguistic aspects, focusing on ellipsis and anaphora resolution and expectation-based (interactive) error recovery with respect to orthography, word order, spurious words and punctuation. Although these are important aspects for user-friendly NL interfaces in general (some of which are only insufficiently taken into account in the XTRA system, particularly as far as error recovery is concerned), the specific problems pertaining to the interaction with a naive user are not addressed in XCALIBUR. For instance, XCALIBUR does not adapt to the user’s level of expertise with respect to DEC products, seems not to be able to answer terminological questions and cannot explain XSEL’s reasoning. The same holds true for the interface of (Datskovsky Moerdler, McKeown & Ensor, 1987), which has only been concerned so far with NL input. The interface interprets NL responses to questions of the expert system and transforms the received information into facts suited for this rule-based expert system. It also takes into account information that is volunteered by the user without the system having asked for it. No dialog planning is performed by the system and no other dialog behavior can be exhibited. Most surprisingly, the first application domain is also personal (U.S.) income tax. A completely different approach to that taken by XTRA and the interfaces just mentioned is that of (Cohen & Jones, 1989). The authors outline the basic
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
191
architecture of an envisaged large-scale expert system for educational diagnosis which is to support the assessment of students’ learning difficulties. The system is supposed to communicate in English with widely different user groups, including experienced psychologists, parents, teachers and principals. The authors are mostly concerned with the modeling of the user’s background knowledge of educational testing in order to adapt the system’s answers and explanations to the user’s level of expertise. Cohen and Jones also outline possible enhancements of their model, particularly with respect to the recognition and treatment of user misconceptions, disagreeing appraisals of specific psychological methods, and user plans. Cohen and Jones’ envisaged system is different from all systems mentioned in that there exists only one “super-expert-system” with natural language, dialog management and “normal” expert-system abilities. In all other systems, including XTRA, the former capabilities have been abstracted into an NL access system that is independent of the expert system with which it communicates. The advantage of this approach is that NL access can also be made possible after an expert system has already been built, and that the access system may also be employed for other expert systems after a short period of adaptation.
6. Summary and perspectives In this paper we presented the XTRA system, a portable NL access system to expert systems. Up till now, the main emphasis has been upon the-analysis and generation of natural language and pointing gestures and the development of a representation formalism for knowledge about natural language as well as about the domain. Furthermore, a model for the interaction between XTRA and the underlying expert system has been developed. While research on these topics will continue, new problems will be investigated in the future. One new focus will be the design and development of the inferential component of the SB-ONE knowledge representation system. Previous research has shown that this is an important requirement for a system to be able to deal with the adequate processing of declarative representations of knowledge. In order to alleviate the shortcomings of KL-ONE derivates, we will embed SB-ONE into a logic-oriented language. One main objective of the XTRA project is the adaptation of the access system to various expert systems. We will begin to connect a second expert system in the near future. This process will require the adaptation of the contenti of XTRA’s knowledge bases to the new domain. Also, the transition model of how to integrate knowledge structure of SB-ONE and the expert system has to be evaluated and perhaps refined. In order to facilitate these changes and extensions within the knowledge bases, a knowledge acquisition component will be developed. Using the method of exampledriven knowledge acquisition, this component allows for an integrated access to and exploitation of XTRA’s multiple knowledge bases for knowledge acquisition purposes during the system’s NL interaction with the user. Starting from user input which is linguistically well-formed but cannot be processed due to system limitations (missing or incorrect system knowledge), an analysis of this faulty processing is initiated. This analysis will be performed by inspecting the existing analysis and
192
J. ALLGAYER ET
Al..
inference components and combining their results for generating expectations concerning the input that could not be processed. Due to the redundancy of natural language, we expect to be able to extract a considerable number of missing or incorrect system knowledge units from the user’s input. Of course, developing and integrating new system components will affect the representation formalism. For example, connecting a new expert system will bring up the problem of different dialog strategies. Furthermore, establishing an inference engine and a knowledge acquisition component might require the availability of new knowledge structures in SB-ONE. These requirements were already foreseen during the definition of SB-ONE. Its design was therefore kept flexible, i.e. structures can be augmented without forcing a major redesign.
References ALLGAYER, J. (1986). Eine Graphikkomponente zur Integration von Zeigehandlungen in natiirlichsprachliche KI-Systeme. Proceedings der 16. Cl-Jahrestagung, Berlin, FRG, 284-298. ALLGAYER, J. & REDDIG, C. (1986). Processing descriptions containing words and gestures. In C. R. ROLLINGER & W. HORN, Eds. GWAZ-86 und 2. Osterreichische ArtifkialZntelligence-Tagung. Berlin: Springer-Verlag. APPELT, D. E. (1985). Planning English Sentences. Cambridge: Cambridge University Press. AUE, D., HEIB, S., NDIAYE, A. (1989). SB-ONE Matcher: Benutzeranleitung und Systembeschreibung. Memo, SFB 314, Dept. of Computer Science, Saarbrticken University, FRG. BEICHE, H. P. (1987). Lst-1: Ein wissensbasiertes System zur Durchfiihrung und Berechnung des Lohnsteuerjahresausgleichs. In E. BUCHBERGER & J. RE-I-~I, Eds. 3. Osterreichische Artificial-Zntelligence-Tagung. Berlin: Springer-Verlag. BEICHE, H. P. (1988). Zusammenwirken von LST-1, PLUG, FORMULAR und MINIXTRA. Memo No. 21, SFB 314, Department of Computer Science, University of Saarbriicken, FRG. BEICHE, H. P. (1989). LST-1: Ein Expertsystem zur Unterstiitzung des Benutzers bei der Durchfiihrung aks Lohnsteuerjahresausgleichs. Master Thesis, Department of Computer Science, Saarbriicken University, FRG. BOBROW, R. J. & WEBBER, B. L. (1980). Knowledge representation for syntactic/semantic processing. Proceedings of the First National Conference on Artificial Intelligence, Stanford, CA, pp. 316-323. BOCK, J. K. (1987). Exploring levels of processing in sentence production. In G. KEMPEN, Ed. Natural Language Generation. Dordrecht: Nijhoff. BRACHMAN, R. J. (1978). A Structural Paradigm for Representing Knowledge. Report No. 3605. Bolt, Beranek & Newman, Cambridge, MA. BRACHMAN, R. J. & SCHMOLZE, J. G. (1985). An overview of the KL-ONE knowledge representation system. Cognitive Science, 9, 171-216. CARBONELL, J. G., BOGGS, W. M., MAULDIN, M. L. & ANICK, P. G. (1983). The XCALIBUR project: A natural language interface to expert systems. Proceedings of the &h International Joint Conference on Artificial Intelligence, Karlsruhe, FRG, pp. 653-656. CARBONELL, J. G., BOGGS, W. M., MAULDIN, M. L. 8~ ANICK, P. G. (1985). The XCALIBUR project: A natural language interface to expert systems and data bases. In S. ANDRIOLE, Ed. Applications in Artificial Intelligence. Petrocelli. CARBONELL, J. G. (1986). Requirements for robust natural-language interfaces: The Language Craft and XCALIBUR experiences. Proceedings of the 11th International Conference on Computational Linguistics, Bonn, FRG, pp. 162-163.
THE XTRA NL ACCESSSYSTEMTO EXPERT SYSTEMS
193
CHIN, D. N. (1989). KNOME: Modeling what the user knows in UC: In: A. KOBSA & W. WAHLSTJSR, Eds. User Models in Dialog Systems. Berlin: Springer-Verlag.
CLARK, H. H. & MARSHALL, C. R. (1981). Definite reference and mutual knowledge. In A. K. JOSHI, B. L. WEBBER & I. A. SAG, Eds. Elements of Discourse Understanding. Cambridge: Cambridge University Press. CLARK, H. H., SCHREUDER, R. & BU~-I-RICK, S. (1983). Common ground and the understanding of demonstrative reference. Journal of Verbal Learning and Verbal Behaviour, 22, 245-258. COHEN, R. & JONES, M.
(1989). Incorporating user models into expert systems for educational diagnosis. In A. KOBSA & W. WAHLSI-ER, Eds. User Models in Dialog Systems. Berlin: Springer-Verlag. DAT~KOVSKYMOERDLER, G., MCKEOWN, K. R. & ENSOR, J. R. (1987). Building natural language interfaces for rule-based expert systems. Proceedings of the l&h International Joint Conference on Artificial Intelligence, Milan, Italy, pp. 682-687. DI PRIMIO, F. & BREWKA, G. (1985). BABYLON: Kernel system of an integrated environment for expert systems development and operation. Proceedings of the 5th International Workshop on Expert Systems and Their Applications, Avignon, France, pp. 573-583.
DI PRIMIO, F. & Wrrru~, K. H. (1987). BABYLON: A meta interpretation model for handling mixed knowledge representations. Proceedings of the 7th Znternational Workshop on Expert Systems and Their Applications, Avignon, France, pp. 821-833. RNKLER, W. & NEUMANN, G. (1986). MORPHZX: Ein hochportabler Lemmatisierungsmodul fiir das Deutsche. Memo No. 8, AI Laboratory, Department of Computer Science, University of Saarbriicken, FRG. FINKLER, W. & NEUMANN, G. (1988). MORPHIX: A fast implementation of a classificationbased approach to morphology. In H. TROST, Ed. 4. Osterreichische ArtificialZntelligence-Tagung. Berlin: Springer-Verlag. FINKLER, W. (1989). POPEGHOW: Parallele, inkrementelle Generierung natiirlichsprachlicher SItze aus konzeptuellen Einheiten. Part 1. Master Thesis, Department of Computer Science, University of Saarbrucken, FRG. HABEL, C. (1984): Zur Repriisentation der referentiellen Stmktur. In C. R. ROLLINGER, Ed. Probleme des (Text-)Verstehens-Arts&e der Kiinstlichen Zntelligenz. Tiibingen: Niemeyer. HAHN, W. v., HOEPPNER, W., JAMESON, A. & WAHLSTER, W. (1980). The anatomy of the natural language dialogue system HAM-RPM. In L. BOLC, Ed. Natural Language Based Computer Systems. Miinchen: Hanser. HARBUSCH, K. (1986). A First Snapshot of XTRAGRAM, a Unification Grammar for German Based on PATR. Memo No. 14, SFB 314, Department of Computer Science, University of Saarbrticken, FRG. HENDRIX, G. G. (1986). Q & A: Already a Success? Proceedings of the 11th International Conference on Computational Linguistics, Bonn, FRG, pp. 164-166. Hove, E. H. (1987). Some pragmatic decision criteria in generation. In G. KEMPEN, Ed. Natural Language Generation. Dordrecht: Nijhoff. JACOBS, P. (1987). A knowledge framework for natural language analysis. Proceedings of the lckh Znternational Joint Conference on Artificial Intelligence, Milan, Italy, pp. 675-678. KALMES, J. (1988). SB-Graph User Manual: Release D.l. Memo No. 30, SFB 314, Department of Computer Science, University of Saarbrtlcken, FRG. KALMES, J. (1989). Eine graph&he Benutzerschnittstelle fur die Wissensreprisentationswerkbank SB-ONE. Master Thesis, Department of Computer Science, University of Saarbriicken, F_RG. KARITUNEN, L. (1986). D-PATR: A Development Environment for Unification-Based Grammars. SRI International and Center for the Study of Language and Information, Stanford, CA. KOBSA, A. (1984). Three steps in constructing mutual belief models from user assertions. Proceedings of the 6th European Conference on Artificial Intelligence, Piss, Italy. pp. 423-426.
194
J. ALLGAYER ET
AL.
KOBSA, A. (198%). Benutzermodellierung in Dialogsystemen. Berlin: Springer-Verlag. KOBSA, A. (1985b). Using situation descriptions and Russellian attitudes for representing beliefs and wants. Proceedings of the !%h International Joint Conference on Arttjicial Intelligence, Los Angeles, CA, pp. X3-515. KOBSA, A., ALLGAYER, J., REDDIG, C., SCHMAUKS, D., HARBUSCH, K., WAHLSTER, W. (1986). Combining deictic gestures and natural language for referent identification. Proceedings of the 1lth International Conference on Computational Linguistics, Bonn, FRG. pp 356-361. KOBSA, A. (1988). User models and discourse models: United they stand . . Computational Linguistics 14(3), 91-94. KOBSA, A. (1989~). A taxonomy of beliefs and goals for user models in dialog systems. In A. KOBS_A & W. WAHLSTER, Eds. User Models in Dialog Systems. Berlin: Springer-Verlag. KOBSA, A. (19896). The SB-ONE Knowledge Representation Workbench. Technical Report, SFB 314, Department of Computer Science, University of Saarbrficken, FRG. In preparation. KOBSA, A. (1989~). The SB-ONE Knowledge Representation Workbench (Extended Abstract). Preprints of the Workshop on Formal Aspects of Semantic Networks, Santa Catalina Island, CA, Feb. 1989. LE FAIVRE, R. A. (1974). FUZZY problem-solving. Technical Report No. 37, University of Wisconsin. NESSEN, E. (1987). SC-VM: User Modeling in the SZNIX Consultant. Memo No. 18, Department of Computer Science, University of Saarbriicken, FRG. NEUMANN, G. (1989). POPEL-HOW: Parallele, inkrementelle Generierung natiirlichsprachPart 2. Master Thesis, Department of lichen S&e aus konzeptuellen Einheiten. Computer Science, University of Saarbriicken, FRG. PROFITLICH, H.-J. (1989). SB-ONE: Ein Wissensrepriisentationssystem basierend auf KLONE. Master Thesis, Department of Computer Science, University of Saarbriicken, FRG. REICHMAN, R. (1985). Getting Computers to Talk Like You and Me. Cambridge, MA: MIT Press. REITHINGER, N. (1987~). Generating referring expressions and pointing gestures. In G. KEMPEN, Ed. Natural Language Generation. Dordrecht: Nijhoff. R~THINGER, N. (1987b). Ein erster Blick auf POPEL-Wie wird was gesagt? In K. MORIK, Ed. GWAI-87, 11th German Workshop on Art$cial Intelligence. Berlin: Springer-Verlag. RE~THINGER, N. (1989). POPEL: a parallel and incremental natural-language generation system. Working paper No. 2, SFB 314: AI-Knowledge-Based Systems, Department of Computer Science, University of Saarbrtlcken, FRG. RICH, E. (1989). Stereotypes and user modeling. In A. KOBSA & W. WAHLSTER, Eds. User Models in Dialog Systems. Berlin: Springer-Verlag. RIPPLINGER, B. (1988). Plankontrollierte Benutzereingabe in das Formular Anlage N des Autrags auf Lohnsteuerjahresausgleich. Master thesis, Department of Computer Science, University of Saarbriicken, FRG. RIPPLINGER, B. & KOBSA, A. (1988). PLUG: Benutzerfiihrung auf Basis einer dynamisch verartderlichen Zielhierarchie. In W. HOEPPNER, Ed. GWAI-88, 12th German Workshop on Artificial Intelligence. Berlin: Springer-Verlag. SCHMAUKS,D. (1986). Form und Funktion von Zeigegesten: Ein interdisziplitirer oberblick. Report No. 10, SFB 314, Department of Computer Science, University of Saarbrticken, FRG. SCHMAUKS,D. (1987). Natural and Simulated Pointing. Proceedings of the 3rd Conference of the European Chapter of the Association for Computational Linguistics, Copenhagen, Denmark, pp. 179-185. SCHMAUKS, D. & REITHINGER, N. (1988). Generating multimodal output: Conditions, advantages and problems. Proceedings of the 12th Znternational Conference on Computational Linguistics, Budapest, Hungary, pp. 584-588. SHIEBER, S. M. (1987). An Introduction to Unification-Based Approaches to Grammar. Stanford, CA: Center for the Study of Language and Information.
THE XTRA NL ACCESS SYSTEM TO EXPERT SYSTEMS
195
N. K., WEISCHEDEL,R. M. & BOBROW,R. J. (1984). Semantic interpretation using KL-ONE. Proceedings of the l&h International Conference on Computational Linguistics, Stanford University, CA,pp. 101-107. TENNANT,H. (1986). The commercial application of natural language interface. Proceedings of the 11th International Conference on Computational Lingubtics, Bonn, FRG, p. 167. TROST,H., BUCHBERGER,E., HEINZ, W., H~~RTNAGL,C. & MATIASEK,J. (1987). DATEN BANK-DIALOG: A German language interface for relational databases. Applied Arhjicial Intelligence, 1,181-203. WAHLSTER,W. (1986~). Natural language interfaces: ready for commercial success? Panel Introduction. Proceedings of the 11th International Conference on Computational Linguistics, Bonn, FRG, p. 161. WAHLSTER,W. (1986b). Tbe role of natural language in advanced knowledge-based systems. In H. WINTER, Ed. Art@cial Intelligence and Man-Machine Systems. Berlin: SpringerVerlag. WILLE, M. (1989). Evaluation und Ausbau einer Analysekomponente fur Zeigegesten. Master thesis, Department of Computer Science, University of Saarbrticken, FRG. SONDHEIMER,