A Functional Approach to Generation with TAG 1 
Kathleen F. McCoy, K. Vijay-Shanker, & Gijoo Yang 
Department of Computer and Information Sciences 
University of Delaware 
Newark, Delaware 19716, USA 
email: mccoy@udel.edu, vijay@udel.edu 
Abstract 
It has been hypothesized that Tree Adjoining 
Grammar (TAG) is particularly well suited for 
sentence generation. It is unclear, however, how a 
sentence generation system based on TAG should 
choose among the syntactic possibilities made 
available in the grammar. In this paper we con- 
sider the question of what needs to be done to 
generate with TAGs and explain a generation sys- 
tem that provides the necessary features. This 
approach is compared with other TAG-based gen- 
eration systems. Particular attention is given to 
Mumble-86 which, like our system, makes syntac- 
tic choice on sophisticated functional grounds. 
1 Introduction 
Joshi (1987) described the relevance of Tree 
Adjoining Grammar (TAG) (Joshi, 1985; Sch- 
abes, Abeille &5 Joshi, 1988) to Natural Language 
Generation. In particular, he pointed out how 
the unique factoring of recursion and dependen- 
cies provided by TAG made it particularly appro- 
priate to derive sentence structures from an input 
provided by a text planning component. Of par- 
ticular importance is the fact that (all) syntactic 
dependencies and function argument structure are 
localizest in TAG trees. 
Shieber and Schabes (1991) discuss using 
Synchronous TAG for generation. Synchronous 
TAG provides a formal foundation to make ex- 
plicit the relationship between elementary syntac- 
tic structures and their corresponding semantic 
counterparts, both expressed as elementary TAG 
trees. This relationship is made explicit by pairing 
the elementary trees in the syntactic and logical 
form languages, and associating the correspond- 
ing nodes. Shieber and Schabes (1990) describe a 
generation algorithm which "parses" an input log- 
ical form string recording the adjoining and sub- 
stitution operations necessary to build the string 
from its elementary components. The correspond- 
ing syntactic structure is then generated by doing 
1 This work is supported ill part by Grant #H133E80015 
from the National hlstitute on Disability and Rehabilita- 
tion Research. Support was also provided by the Nemours 
Fotmdation. We would like to thank John Hughes for Iris 
many conunents and discussions concerning this work. 
the same. set of operations (in reverse. ) on the cor- 
responding elementary structures m the grammar 
describing the natural language. 
Note that the generation methodology pro- 
posed for synchronous TAG (and the hypotheti- 
cal generator alluded to in (Joshi, 1987)) takes 
as input the logical form semantic representation 
and produces a syntactic representation of a natu- 
ral language sentence which captures that logical 
form. While the correspondence between logical 
form and the natural language syntactic form is 
certainly an important and necessary component 
of any sentence generation system, it is unclear 
how finer distinctions can be made in this frame- 
work. That is, synchronous TAG does not address 
the question of which syntactic rendition of a par- 
ticular logical form is most appropriate in a given 
circumstance. This aspect is particularly crucial 
from the point of view of generation. A full-blown 
generation system based on TAG must choose be- 
tween various renditions of a given logical form on 
well-motivated grounds. 
Mumble-86 (McDonald & Pustejovsky, 
1985; Meteer et al., 1987) is a sentence genera- 
tor based on TAG that is able to take more than 
just the logical form representation into account. 
Mumble-86 is one of the foremost sentence gener- 
ation systems and it (or its predecessors) has been 
used as the sentence generation components of a 
number of natural language generation projects 
(e.g., (McDonald, 1983; McCoy, 1989; Conklin & 
McDonald, 1982; Woolf& McDonald, 1984; Rubi- 
noff, 1986)). After briefly describing the method- 
ology in Mumble-86, we will point out some prob- 
lematic aspects of its design. We will then describe 
our architecture which is based on interfacing TAG 
with a rich functional theory provided by func- 
tional systemic grammar (Halliday, 1970; Halli- 
day, 1985; Fawcett, 1980; Hudson, 1981). 2 We pay 
particular attention to those aspects which distin- 
guish our generator from Mumble-86. 
2 Mumble-86 
Mumble-86 generates from a specification 
of what is to be said in the form of an "L-Spec" 
2The particular suitability of TAG as a grammatical for- 
realism to be used in conjtmction with a systemic granunar 
is discussed in (McCoy, Vijay-Shalrker & Yang, 1990). 
44t 
(Linguistic Specification). An L-Spec captures the 
content of what is to be generated along with the 
goals and rhetorical force to be achieved. While 
the form of the L-Spec is dependent on the partic- 
ular application, for the purposes of this discus- 
sion we can think of it as a set of logical form 
expressions that describe the content to be ex- 
pressed. Mumble-86 uses a dictionary-like mecha- 
nism to transform a piece of the L-Spec into an el- 
ementary TAG tree which realizes that piece. The 
translation process itself (performed in the dictio- 
nary) may be influenced by contextual factors (in- 
cluding pragmatic factors which are recorded as a 
side-effect of grammar routines), and by the goals 
recorded in the L-Spec itself. It is in this way that 
the system can make fine-grained decisions con- 
cerning one realization over another. 
Once a TAG tree is chosen to realize the ini- 
tial subpiece, that structure is traversed in a left 
to right fashion. Grammar routines are run dur- 
ing this traversal to ensure grammaticality (e.g., 
subject-verb agreement) and to record contextual 
information to be used in the translation of the 
remaining pieces of the L-Spec. In addition to the 
grammar routines, as the initial tree is traversed at 
each place where new information could be added 
into the evolving surface structure (called attach- 
ment points), the remaining L-Spec is consulted to 
see if it contains an item whose realization could 
be adjoined or substituted at that position. 
In order for this methodology to work, 
(McDonald & Pustejovsky, 1985) point out that 
they have to make some strong assumptions about 
the logical form input to their generator. Notice 
that the methodology described always starts gen- 
erating from an initial tree and other auxiliary or 
initial trees are adjoined or substituted into that 
initial structure. 3 As a result, in generating an 
embedded sentence, the generator must start with 
the innermost clause in order to ensure that the 
first tree chosen is an initial (and not an auxiliary) 
tree. Consider, for example, the generation of the 
sentence "Who did you think hit John". Mumble- 
86 must start generating from the clause "Who 
hit John" which is (roughly) captured in the tree 
shown in Figure 4. This surface structure would 
then be traversed. At the point labeled fr-node (an 
attachment point) the auxiliary tree representing 
"you think" in Figure 2 would be adjoined in. 
Notice, however, that if Mumble-86 must 
work from the inner-most clause out, then the ini- 
tial L-Spec must be in a particular form which is 
not consistent with the "logician's usual represen- 
3An initial tree is a minimal non-recursive structure in 
TAG, wlfile an auxiliary tree is a minimal recursive struc- 
ture. Thus, an auxiliary tree is characterized as having a 
leaf node (wlfich is termed the foot node) which has the 
same label as the root node. The tree in Figure 2 is an 
auxiliary tree. The adjoining operation essentially inserts 
an auxiliary tree into another tree. For instance, the tree in 
Figure 5 is the result of adjoining the auxiliary tree shown 
in Figure 2 into the ilfitial tree shown in Figure 4 at the 
node labeled It-node. 
tation of sentential complement verbs as higher 
operators" (McDonald & Pustejovsky, 1985)\[p. 
101\] (also noted by (Shieber & Schabes, 1991)). 
Instead Mumble-86 requires an alternative logi- 
cal form representation which amounts to break- 
ing the more traditional logical form into smaller 
pieces which reference each other. Mumble-86 
must be told which of these pieces is the embedded 
piece that the processing should start with. 4 
Notice that this architecture is particularly 
problematic for certain kinds of verbs that take in- 
direct questions. For instance, it would preclude 
the proper generation of sentences involving "won- 
der" (as in "I wonder who hit John"). Verbs which 
require the question to remain embedded are prob- 
lematic for Mumble-86 since the main verb (won- 
der) would not be available when its inclusion in 
the surface structure needs to be determined. ~ 
An additional requirement on the logical 
form input to the generator is that the lambda 
expression (representing a wh-question) and the 
expression containing the matrix trace be present 
in a single layer of specification. This, they claim, 
is necessary to generate an appropriate sentence 
form without the necessity of looking arbitrarily 
deep into the representation. This would mean 
that for sentences such as "Who do you think hit 
John", the lambda expression would have to come 
with the "hit John" part of the input. We will 
show that our system does not place either of these 
restrictions on the logical form input and yet is 
able to generate the appropriate sentence without 
looking arbitrarily deep into the input specifica- 
tion. 
One can notice a few features of the sys- 
tem just described. First, because the dictionary 
translation process is context sensitive, the gener- 
ation methodology is able to take more than just 
logical form into account. Note, however, that it is 
unclear what the theory is behind the realizations 
made. In addition, these decisions are encoded 
procedurally thus the theory is rather difficult to 
abstract. 
It is also the case that Mumble-86 makes 
no distinction between decisions that are made 
for functional reasons and those that are made for 
syntactic reasons. Both kinds of information must 
be recorded (procedurally) in grammar routines so 
that they can be taken into account during subse- 
quent translations. While the fact that the gram- 
mar is procedurally encoded and that functional 
4 The task of ordering the elements of logical fonn is con- 
sidered by Mumble-86 to be part of a component wlfich is 
also responsible for ensuring that what is given to mmnble 
is actually expressible in the language (e.g., English). Tiffs 
component is described in (Meteer, 1991). 
~Tlfis is because the logical form for an embedded ques- 
tion and a non-embedded question camlot be distinguished 
in the kind of input required by Mmnble-86 mid the main 
verb (wonder) is not able to pass a~ly information down to 
the embedded clause since it is realized after the embedded 
clause. 
49 
and syntactic decisions are mixed does not affect 
the power of the generator, we argue that it does 
make development and maintenance of the system 
rather difficult. Functional decisions (e.g., that a 
particular item should be made prominent) and 
syntactic decisions (e.g., number agreement) rely 
on two different bodies of work which should be 
able to evolve independently of each other. There 
is no separation of these two different influences in 
Mumble-86. 
The generation process in Mumble-86 is 
syntax driven. From the input L-Spec an initial 
elementary) TAG tree is chosen. This structure 
s then traversed and grammar routines are initi- 
ated. At each possible attachment point during 
the traversal, the semantic structure (L-Spec) is 
consulted to see if it contains an item whose real- 
ization could be adjoined or substituted at that 
position. Thus the syntactic surface structure 
drives the processing. 
As a side effect of the above processing 
strategy, Mumble-86 creates a strictly left-to-right 
realization of surface structure. While this side- 
effect is deliberate for reasons of psychological va- 
lidity, this can be problematic for generating some 
connectives (as is pointed out in (MeKeown & E1- 
hadad, 1991)). This is because Mumble-86 does 
not have access to the content of the items being 
conjoined at the time the connective is generated. 
In the remainder of this paper we describe 
a sentence generation system which we have de- 
veloped. In some ways it is similar to Mumble-86, 
but there are several major differences: 
• The realization of the input in our sys- 
tem is based on systemic functional linguis- 
tics (Halliday, 1970; Halliday, 1985; Fawcett, 
1980; Hudson, 1981). This is a linguistic the- 
ory which states that a generated sentence 
is obtained as a result of a series of func- 
tional choices which are made in a parallel 
fashion along several different functional do- 
mains. The choices are represented as a series 
of networks with traversal of the networks de- 
pendent on the given input along with several 
knowledge sources which encode information 
about how various concepts can be linguisti- 
cally realized. The bulk of the work in sys- 
temic linguistics has been devoted to describ- 
ing what/how functional choice affects surface 
form. We adopt this work from systemic lin- 
guistics, but unlike other implementations, we 
use a formal syntactic framework (TAG) to 
express the syntactic constraints. 
• Our method is not syntax directed, but fol- 
lows a functional decomposition called for by 
the systemic grammar. 
• There is a clear separation between the func- 
tional and the syntactic aspects of sentence 
generation which actually allows these two as- 
pects of generation to be developed indepen- 
dently. 
• We do not place any constraints on the logical 
form input. Our methodology calls for noth- 
ing different from what is required for a stan- 
dard systemic grammar (whose input is based 
on a typical logical form representation). 
• The methodology which we describe allows 
sentence generation to proceed in a seman- 
tic head-driven fashion (Shieber, Van Noord, 
Pereira ~ Moore, 1990). This is the case 
even for the embedded sentences discussed 
earlier which had to be worked "inside out" 
in Mumble-86. 
3 Generator Architecture 
There are many different ways of imple- 
menting a TAG-based generator. We consider the 
principles that we take to be common to any TAG 
generator and indicate how these principles have 
influenced our architecture. We present various 
aspects of our architecture and contrast them with 
choices that have been made in Mumble-86 and 
Synchronous TAG. Our approach is motivated by 
arguments presented in (McCoy, Vijay-Shanker 
Yang, i990), but the details of the processing pre- 
sented there have changed significantly. Our basic 
processing strategy is detailed in (Yang, McCoy 
& Vijay-Shanker, 1991); the work presented here 
is an extension of that strategy. 
In order for a TAG generator to be ro- 
bust, it must have a methodology for decipher- 
ing the input and associating various pieces of the 
input with TAG trees. In Mumble-86 this is ac- 
complished through dictionary look-up along with 
querying the input at various points during the 
surface structure traversal. In contrast, we use a 
systemic grammar traversal for this purpose. In a 
TAG, each elementary tree lexicalizes a predicate 
and contains unexpanded nodes for the required 
arguments. Thus any TAG based generation sys- 
tem should incorporate the notions of semantic 
head-driven generation. Our approach, based on 
systemic grammars, does this because the func- 
tional decomposition that results from traversal of 
a systemic grammar at a single rank identifies the 
head and establishes necessary argumentsl Thus 
it perfectly matches the information captured in 
an elementary TAG tree. 
Once the input has been deciphered, a TAG 
generator must use this to select a tree. Given 
that a systemic grammar is being used in our case, 
we must have a method for associating TAG trees 
with the network traversal. The traversal of a sys- 
temic grammar at a single rank establishes a set of 
functional choices that can be used to select a TAG 
tree. The selection process in any TAG-based gen- 
erator can be considered as providing a classifi- 
cation of TAG trees on functional grounds. We 
make this explicit by providing a network (called 
the TAG network) 6 which is traversed to select a 
TAG tree. The network itself can be thought of as 
6 hi fact we view a systemic network in a similar fashion 
50 
s - act : wh - question 
wh- it : nl 
tense : past 
proc : "think" 
actor: n2 : \["you"\] 
I proc : "hit" 
tense : past 
phen : actee : n3 = 
actor Tt 1 f 
"john" \] 
type : person \] 
id : quest J 
Figure 1. Input for Who did yon think hit John 
Region rl: 
i"~ fr-node 
! ! 
V 
I think nl 
a decision tree whose choice points are functional 
features chosen in the systemic network traversal. 
So far we have identified how the head can 
be lexicalized and placed in an appropriate tree 
with respect to its arguments. This is accom- 
plished by a traversal of a systemic network at one 
rank followed by a TAG network traversal based 
on the functional choices made. Of course, the ar- 
guments themselves must also be realized. This 
is accomplished by a recursive network (systemic 
followed by TAG) traversal (focused on the piece 
of input associated with the particular argument 
being realized). The recursive network traversals 
will also result in the realization of a TAG tree. 
We record information collected during a single 
(rank) network traversal in a data structure called 
a region. Thus, an initial region will be created 
and will record all features necessary for the se- 
lection of a tree realizing the head and argument 
placement. The selected tree (and other struc- 
tures discussed below) will be recorded in the re- 
gion. Each argument will itself be realized in a 
subregion which will be associated with the recur- 
sire network traversal spawned by the piece of in- 
put associated with that argument. Thus we have 
separate regions for each independent piece of in- 
put. This is in contrast to Mumble-86's use of the 
evolving surface structure in which all grammati- 
cal information is recorded. 
Once all arguments have been realized as el- 
ementary trees in the individual regions, the trees 
selected in the individual regions must be com- 
bined with the tree in the initial region. For this 
we use the standard TAG operations of adjoining 
and substitution. 
Essentially, our generation methodology 
consists of two phases: 
1. The descent process - where a systemic net- 
work traversal is used to collect a set of fea- 
tures which are used to select a TAG tree that 
realizes the head and into which the argu- 
ments can be fit. The traversal is also respon- 
as a classification of all fmlctional choices expressible in a 
language. 
Figure 2. Initial tree selected in region rl 
sible for spawning the creation of subregions 
in which the arguments (and modifiers) are 
realized. 
2. The ascent process - where the trees cre- 
ated in the individual subregions are com- 
bined with the tree in the mother region re- 
suiting in the final realization of the whole. 
In our system the systemic network traver- 
sal basically replaces the dictionary look-up phase 
found in Mumble-867 which translates the input 
L-Spec into surface structure. In addition, our sys- 
tem does not walk a surface structure (i.e., the ac- 
tual tree chosen). In Mumble-86 the surface struc- 
ture walk spawned grammar routines and caused 
additional pieces of the L-Spec to be translated 
into surface structure. Our methodology relies on 
the systemic network traversal to spawn realiza- 
tions of the decomposed subpieces. The syntac- 
tic aspects of the grammar routines are now in- 
corporated into our TAG network and grammar. 
Thus our methodology keeps a clearer separation 
between functional and syntactic aspects of the 
generation process. 
The processing in our system will be ex- 
plained with an example. Consider the simplified 
input given in Figure 1. s See (Yang, McCoy & 
Vijay-Shanker, 1991) for a more detailed descrip- 
tion of the processing. 
;'The systenxic grammar also replaces the grammar rou- 
tines of Mmnble-86 responsible for recording contextual in- 
formation for subsequent translations. In addition, the part 
of the dictionary look-up concerned with syntactic realiza- 
tion (i.e., the actual tree chosen) is handled by our TAG 
component. 
STiffs input is simplified in that it is basically a standard 
logical form input with lexicM items specified. In general 
the input is a set of features wlffch drive the traversal of 
the ftmctional systemic networks. 
51 
Region r2: 
I~P ~ if-node 
you 
Figure 3. Tree selected in Actor region r2 
3.1 The Descent Process 
The input given (along with other knowl- 
edge sources traditionally associated with a sys- 
temic network) will be used to drive the traversal 
of a functional systemic network. The purpose 
of this traversal is two fold: (1) to identify the 
head/argument structure of the sentence to be re- 
alized, and (2) to identify a set of functional fea- 
tures which can be used to choose a tree which ap- 
propriately realizes the head/argument structure. 
Traditionally a systemic network consists of 
a number of networks of functional choices which 
are traversed in parallel. Each network considers 
choices along one functional domain. One such 
network is the mood network which is responsible 
for, among other things, determining what kind of 
speech act should be generated for the top-level 
element. This network must notice, for example, 
that the speech-act specified is wh-questioning, 
but that the item being questioned is not one of 
the arguments to the top level process. Thus a 
standard declarative form should be chosen for the 
realization of this top level element. 
Standard implementations of systemic 
grammar (Davey, 1978; Mann & Matthiessen, 
1985; Patten, 1988; Fawcett, 1990), upon traversal 
of the mood network to this point, would evalu- 
ate a set of realization operations which manipu- 
late an eventual surface string. For instance, upon 
identifying that a declarative form is needed, the 
subject would be ordered before the finite. We ar- 
gue in (McCoy, Vijay-Shanker & Yang, 1990) that 
it is more practical to replace the use of such re- 
alization operators with a more formal grammat- 
ical system (and that the use of such a system 
is perfectly consistent with the tenets of systemic 
linguistics). Thus during the network traversal, 
our system simply collects the chosen features and 
these are used to drive the traversal of a TAG net- 
work whose traversal results in the selection of a 
tree. 
At the same time the mood network is tra- 
versed, so would be other networks. The transitiv- 
ity network is concerned with identifying the head 
argument structure of the item being realized. In 
Region r3: 
V Hi 
who 
;S I | ,! 
! $ uS t 
£ 
i:; 
I ' I~,~yr-node iS 
hit I 
N 
I 
john 
Figure 4. Tree selected in Phenomenon region r3 
this case, it would consider the fact that the item 
to be realized has a "process" which is mental. 
This identification results in the expectation of 
two arguments - an actor (doing the mental pro- 
cess) and a phenomenon (that thing the process is 
about). Each of these identified arguments must 
be realized individually. This is accomplished via 
the pveselect operation2 This operation causes 
a recursive network traversal (whose results are 
recorded in a subregion) to be done focused on 
the input for the identified sub-element. 
The features collected during the functional 
systemic network traversal are used to drive the 
traversal of the TAG network which results in the 
selection of a tree realizing the indicated features. 
Features such as that the process is mental and 
that the speech act is declarative would cause the 
selection of a tree for the mother region such as 
the tree in Figure 2. 
Similar processing would then take place 
in the two subregions, each eventually resulting in 
the trees such as those shown in Figures 3 and 4. 
3.2 The Ascent Process 
In a TAG generator, after the input has 
been decomposed and elementary trees associated 
with each subpiece of the input, the chosen trees 
must be put together. Therefore, every TAG gen- 
erator must provide a means to determine where 
9 From the realization operations used in systemic grmn- 
mars (particularly Nigel), we need only the preselect and 
the conflate operations because all structure building op- 
erations are incorporated into TAG. The conflation oper- 
ation is used to map functional features (e.g., agent, phe- 
nomenon) into granunatical functions (e.g., subject, com- 
plement). Note that in the networks from systemic gram- 
mars, we take ouly the functional part and thus avoid hav- 
ing choice points that exist for purely syntactic reasons. 
52 
Region rl: 
S 
~S 
z ~ 
AUX S 
who I 
did ~P 
you think hit John 
Figure 5: Final tree: Who did you think hit John? 
the substitution or adjunction must take place. In 
order to do this, with each tree there must be 
a mapping of grammatical functions to nodes in 
the tree. In our case, we associate a mapping 
table with each tree. For instance, the mapping 
table associated with the tree shown in Figure 2 
would indicate that the phenomenon (which would 
have been conflated with complement) is associ- 
ated with the node labeled nl in the tree. In 
the simplest case the tree which realizes the phe- 
nomenon would be substituted at the node labeled 
nl in the tree in the mother region. 
A data structure similar to a mapping table 
is used by the other TAG generators as well. In 
synchronous TAG the mapping table corresponds 
to the explicit node for node mapping between el- 
ementary logical form and syntactic trees. The 
mapping table in Mumble-86 is implicit in the 
schemas which create the surface structure tree 
(during the dictionary look-up phase) since they 
place L-spec elements in the appropriate place in 
the surface structure they create. 
A more complex case arises when an argu- 
ment node is a footnode of an auxiliary tree. Sup- 
pose an auxiliary tree, fl, was chosen in a region 
and a tree, 7, was chosen in a subregion to real- 
ize the argument specified by the footnode of ft. 
Rather than substituting 7 in/3, fl is adjoined into 
a node in 7- This node is the node in 7 that heads 
the subtree realizing the function specified for the 
subregion. For this reason, each tree in a region 
also has associated with it a pointer we call an fr- 
node which points to the node heading this subtree 
(functional root). In Regions rl and r2 the func- 
tional root is also the root of the tree. Notice in 
Region r3 that the functional root is the embed- 
ded S node. This fr-node is chosen because the 
tree chosen in the region is a wh-question tree due 
to the fact that (according to the input) the phe- 
nomenon is being questioned. There is nothing in 
the phenomenon itself, however, that specifies that 
NP 
' I i S ! 
tried 
I 
t 
% 
• - PRO to win 
Figure 6. Standard tree for "John tried to win" 
its speech-act should be wh-questioning. Thus the 
portion of the tree under the embedded S node 
captures the predicate argument structure which 
realizes the phenomenon as is specified in the in- 
put. If it were the case that the phenomenon was 
specified to be a wh-question (as in "Mary won- 
dered who hit John") then the root node would be 
chosen as the fr-node. The fr-node comes into play 
when the trees in the individual regions are com- 
bined via adjunction during the ascent process. 
Other TAG generators have analogues to 
our fr-node. In synchronous TAG it is implicit in 
the mapping between the nodes in the two kinds of 
trees. In Mumble-86, it is the attachment points 
on surface structure. The point is that if trees 
might be adjoined into, any TAG generator must 
specify where adjoining might take place and this 
specification depends (at least in part) on the func- 
tional content that the tree is intended to capture. 
Going back to our example, in combining 
trees in the subregions with the tree chosen in the 
initial region rl, the agent tree would be combined 
with the tree in region rl using straight substitu- 
tion. The location of the substitution would be 
determined by the address given for the agent in 
the mapping table for the tree in region rl. 
The mapping table also indicates that the 
phenomenon should be placed at nl in the tree 
in Figure 2. Notice, however, that nl is the foot 
node. This is an indication to the processor that 
the final tree in region rl should result from ad- 
joining the tree in rl into the tree in the subregion 
r3 (Figure 4). The place of adjoining is specified 
by the fr-node in the phenomenon tree in region 
r3. The result of this adjoining is shown in Fig- 
ure 5. l° 
1°The details of how the AUX is inserted can be found in 
53 
region r_l: 
entry-point 
functional I syntactic 
features features 
) ~'aversal of the l~ traversal of the 
functionalnetwork ~ TAG, network \] 
, : 
.......... ......... _, .... ...... 
ubregion r__2: '.. 
I i I 
functional network TAG network 
Figure 7: Flow of Information in Processing Model 
4 Passing Features 
So far we have established that any TAG- 
based generator, once an elementary tree has been 
chosen, would need to realize the arguments of the 
predicate by recursively calling the same proce- 
dure. The resulting trees chosen would be com- 
bined with the original elementary tree at the ap- 
propriate place by substitution and adjunction. In 
this recursive process, we have indicated the need 
for only functional information to be passed down 
from the mother region to the subregions (at the 
very least, in the form of the functional input asso- 
ciated with the piece being realized in the region). 
We now consider an example where syntactic in- 
formation must be passed down as well. 
Consider the generation of a sentence such 
as "John tried to win". The standard structure for 
this sentence is given in Figure 6. The problem is 
that in TAG this tree must be derived from the 
combination of two separate sentential trees: one 
headed by the verb "tried" and the other by the 
verb "win". However we must capture the con- 
straint that the subject of the "win" tree is John 
(which is the same as the subject of the "tried" 
(Yang, 1991). It is inserted in the region rl as a result of 
a feature disparity on the nodes of the tree resulting from 
the adjoining operation just described. The same disparity 
would not occur in indirect questions (e.g., "I wonder who 
kit Jolm" ). 
tree) but that it is realized only as a (null) pro. 
Note that this constraint cannot be localized in 
TAG but cuts across two elementary trees. 
While generating this sentence, when we 
choose the "tried" tree in the mother region, we 
must pass down the information that among the 
trees associated with win, the one with "pro" in 
the subject position must be chosen. Notice that 
this is a purely syntactic constraint based on the 
choice of the verb "try". The choosing of this tree 
has ramifications on both the functional network 
traversal (since the agent of "win" should not be 
expanded) and the TAG network traversal. 
In addition, any syntactic constraint that is 
placed on the arguments (perhaps by the choice of 
the head) must be passed down to the subregion 
to influence the realization of the arguments. In 
general, the passed down features may influence 
either the functional or the TAG network traver- 
sal (see Figure 7). Such passing of syntactic and 
functional features must occur in any TAG gener- 
ator where the realization of the head is done prior 
to the realization of its arguments. 
5 Conclusions 
In this paper we started with considering 
the principles underlying the design of any TAG- 
based generator. We have shown how these princi- 
ples have been incorporated in our generation sys- 
tem and have compared it with other TAG-based 
generators. 
The architecture of our generation system 
incorporates both functional aspects of generation 
and syntactic aspects. Each of these aspects is 
handled separately, by two different formalisms 
which are uniquely combined in our architecture. 
The result is a sentence generation system which 
has the advantage of incorporating two bodies of 
knowledge into one system. Our system has sev- 
eral advantages over Mumble-86. In addition to 
the use of systemic grammar as a theory for real- 
ization and a function (rather than syntactic) di- 
rected generation process, we have shown that our 
methodology does not place any special require- 
ments on the input logical form. Our methodology 
can proceed in a head-driven manner using notions 
such as the mapping table and the functional root 
to decide how trees should be combined. These 
notions allow fine distinctions in form which are 
not possible in Mumble-86. In addition, our sys- 
tem separates functional from syntactic decisions 
thus allowing these two bodies to be expanded in- 
dependently. 
A prototype of our system has been imple- 
mented in Lucid Common Lisp on a Sun Worksta- 
tion. Details of the implementation can be found 
in (Yang, 1991). 

References 
Conklin, E. & McDonald, D. (1982). Salience: 
The key to the selection problem in natu- 
ral language generation. In Proceedings of 
the 20th Annual Meeting, (pp. 129-135)., 
Toronto, Canada. Association for Computa- 
tional Linguistics. 
Davey, A. (1978). Discourse Production. Edin- 
burgh: Edinburgh University Press. 
Fawcett, R. (1980). Cognitive linguistics and social 
interaction. Heidelberg: Julius Groos Verlag 
Heidelberg and Exeter University. 
Fawcett, R. P. (1990). The communal project: two 
years old and going well. Network, (13). 
Halliday, M. A. K. (1970). Language struc- 
ture and language function. In J. Lyons 
(Ed.), New Horizons in Linguistics. Har- 
mondsworth, England: Penguins Books. 
Halliday, M. A. K. (1985). An introduction to 
functional grammar. London England: Ed- 
ward Arnold. 
Hudson, R. A. (1981). Systemic generative gram- 
mar. In M. A. K. Halliday & J. R. Mar- 
tin (Eds.), Readings in Systemic Linguistics. 
North Pomfret, Vermont: Batsford. 
Joshi, A. K. (1985). How much context-sensitivity 
is necessary for characterizing structural de- 
scriptions : Tree adjoining grammar. In 
D. Dowty, L. Karttunen, & A. Zwicky (Eds.), 
Natural Language Processing : Theoreti- 
cal, Computational and Psychological Per- 
spectives. New York: Cambridge University 
Press. 
Joshi, A. K. (1987). The relevance of tree ad- 
joining grammar to generation. In G. Kem- 
pen (Ed.), Natural Language Generation: 
New Results in Artificial Intelligence, Psy- 
chology, and Linguistics (pp. 233-252). Dor- 
drecht/Boston: Martinus Nijhoff Publishers 
(Kluwer Academic Publishers). 
Mann, W. & Matthiessen, C. (1985). Nigel: A 
systemic grammar for text generation. In 
O. Freedle (Ed.), Systemic Perspectives on 
Discourse. N J: Norwood. 
McCoy, K. F. (1989). Generating context sen- 
sitive responses to object-related misconcep- 
tions. Artificial Intelligence, 41, 157-195. 
McCoy, K. F., Vijay-Shanker, K., & Yang, G. 
(1990). Using tree adjoining grammars in the 
systemic framework. In Proceedings of 5 th 
International Workshop on Natural Language 
Generation., Dawson, PA. 
McDonald, D. (1983). Dependency directed con- 
trol: Its implications for natural language 
generation. In N. Cercone (Ed.), Computa- 
tional Linguistics (pp. 111-130). Pergamon 
Press. 
McDonald, D. & Pustejovsky, J. D. (1985). Tags 
as a formalism for generation. In Proceedings 
of the 23rd Annual Meeting, Chicago, IL. As- 
sociation for Computational Linguistics. 
McKeown, K. R. & Elhadad, M. (1991). A 
contrastive evaluation of functional unifica- 
tion grammar for surface language gener- 
ation: A case study in choice of connec- 
tives. In C. Paris, W. Swartout, ~c W. Mann 
(Eds.), Natural Language Generation in Ar- 
tificial Intelligence and Linguistics (pp. 351- 
396). Boston/Dordrecht/London: Kluwer 
Academic Publishers. 
Meteer, M. (1991). Bridging the 'generation gap'. 
Computational Intelligence, 7(4). 
Meteer et al., M. (1987). Mumble-86: Design and 
implementation. COINS Tech Report 87-87a, 
University of Massachusetts. 
Patten, T. (1988). Systemic Text Generation 
as Problem Solving. Cambridge: Cambridge 
University Press. 
Rubinoff, R. (1986). Adapting mumble: Expe- 
rience with natural language generation. In 
Proceedings of the 1986 National Conference 
on Artificial Intelligence, (pp. 1063-1068)., 
Philadelphia, Pa. AAAI. 
Schabes, Y., Abeille, A., & Joshi, A. (1988). Pars- 
ing strategies with 'lexicalized' grammars: 
Application to tree adjoining grammars. In 
Proceedings of COLING' 88, Budapest, Hun- 
gary. 
Shieber, S. M. & Schabes, Y. (1991). Gener- 
ation and synchronous tree-adjoining gram- 
mars. Computational Intelligence, 7(4). 
Shieber, S. M., Van Noord, G., Pereira, F., 
& Moore, R. C. (1990). Semantic-head- 
driven generation. Computational Linguis- 
tics, 16(1). 
Woolf, B. & McDonald, D. (1984). Context- 
dependent transitions in tutoring discourse. 
In Proceedings of the 1984 National Confer- 
ence on Artificial Intelligence, Washington, 
D.C. AAAI. 
Yang, G. (1991). An Integrated Approach to Gen- 
eration Using Systemic Grammars and Tree 
Adjoining Grammars. PhD thesis, University 
of Delaware. 
Yang, G., McCoy, K. F., & Vijay-Shanker, K. 
(1991). From functional specification to syn- 
tactic structures: Systemic grammar and tree 
adjoining grammar. Computational Intelli- 
gence, 7(4). 
