A MODULAR APPROACH TO STORY GENERATION 
Lyn Pemberton 
School of Cognitive and Computing Sciences 
University of Sussex 
Falmer~ 
Brighton 
BN1 9QN 
United Kingdom 
ABSTRACT 
One way of characterising texts is in terms of 
the discourse structures on which they appear 
to be built. Each type of text, or genre, e.g. the 
sports report, the recipe, the sermon, the 
proverb, will have associated with it a 
characteristic organisation of units. In this 
paper, a general model of the structure of one 
text type, the story, is described. This model 
forms the basis of a program which combines 
the general story structure principles with rules 
goveming a particular sub-genre, the Old 
French epic, in order to generate story 
summaries. 
INTRODUCTION 
Over the last twelve years, research in 
Psychology and AI into narrative structure has 
been marked by acrimonious disputes over the 
right to existence of the "story grammar" 
approach. The point at issue is whether it is 
possible, as story grammarians suggest, to 
identify structural regularities particular to 
narrative texts (Mandler and Johnson, 1980; 
Pemberton, 1987; Shen, 1988), or whether any 
structural regularities should be interpreted 
rather as world knowledge, usable in contexts 
other than stories (Gamham, 1983; Wilensky, 
1980; Yazdani, 1982). 
The work described in this paper adopts the 
story grammarian position, arguing that a 
general model of story structure may be used, 
in conjunction with, but separate from, a 
model of the "story world", to generate stories. 
Moreover, a fuller version of such an account 
of story generation must draw not only on the 
general story structure model and the story 
world model, but also on aspects of the 
audience, the author, the medium of expression 
and the cultural context. 
TEXT TYPES 
People are able to categorise texts into types, 
according to the global conditions of 
coherence which they perceive at work in 
texts. Knowledge of the particular structures of 
each text type is an element of the cultural 
competence of the speaker/hearer, enabling 
him/her to process varieties of cultural artefact 
such as jokes, sermons, weather reports, sets of 
instructions and so on, in appropriate ways 
(Ryan, 1981). 
Often, especially in "realistic" texts, it may 
seem that these conditions of coherence are 
reducible to the everyday concepts which we 
use to analyse aspects of the real world, 
especially notions such as plans, goals and 
intentions. On the other hand, the fact that the 
same real world events, e.g. a road accident, 
or a bank robbery, may be represented in texts 
of widely different types, such as a newspaper 
article, a telegram message, a joke, or a 
conversational anecdote, indicates that 
structuring models, in addition to those 
imposed by the structure of the content, are at 
work in texts. Such models facilitate the 
- 217- 
processing of texts, creating certain 
expectations when we recognise a text as an 
instance of a particular genre, and providing a 
set of patterns to guide the creation of new 
instances. 
Text types interact in complex ways with the 
other categorial features of texts, such as 
content, speaker type, speech situation, register 
and speech act identity. Sometimes, text types 
are highly constrained in this regard. For 
example, conventionally a text of the "sermon" 
genre is uttered in the "church service" speech 
situation, in a formal register: it is normally 
produced only by a priest-figure, and often 
serves as a "warning" or "exhortation" speech 
act. Texts of the story genre are not tightly 
linked to any such characteristics: they may be 
expressed by anyone, in any register, in almost 
any speech situation, and, while their 
illocutionary force is essentially "assertion", 
their intended perlocutionary forces may be 
many and varied. However, sub-genres such as 
the detective story, the narrative ballad, the 
traditional folk tale and so on, will impose 
further constraints of their own. 
A MODEL OF STORY GENERATION 
As this discussion of genre theory implies, 
story structure cannot be discussed in isolation 
from a variety of other constraints. A theory of 
story structure for the purposes of text 
generation must be situated within a broader 
theory of story production, which can perhaps 
best be described in terms of the sorts of 
knowledge which contribute to the creation of 
a story. A full story generating system would 
need access to many different kinds of separate 
but interacting knowledge. These would 
include knowledge of: 
(a) story structure 
Co) the audience 
(c) the author 
(d) the cultural context 
(e) the rules of the sub-genre 
Knowledge of the audience will influence what 
information should be included in the text and 
what can be taken as read. Characteristics of 
the author may lead, for instance, to choices 
which give a particular perlocutionary force to 
the text: a moralist might insist on a fictional 
wrongdoer coming to a sticky end, where a 
cynic might let him/her go unpunished. The 
cultural context refers to the socio-historical 
setting in which the text is produced, which 
restricts the particular sub-genres available: 
tales of saints' lives, for instance, all the rage 
in the Twelfth Century, are now out of vogue 
and so virtually "untellable". The rules of the 
sub-genre will place constraints not only on 
the content of the text, but also on the choice 
of expressive medium and on stylistic choices 
within the expressive medium: verse will be 
fine for a narrative ballad, inappropriate for a 
detective story. It is knowledge of types (a) 
and (e) which is encoded in the grammar of the 
Old French epic described below. 
A STORY GRAMMAR FOR THE EPIC 
The study reported in (Pemberton, 1984) is an 
attempt to identify a general model of story 
structure, as well as the additional constraints 
on the form and content of a particular sub- 
genre, the mediaeval French epic. Nine poems 
composed in mediaeval France, concerning the 
adventures of a family of French Christian 
fighters, were analysed and their narrative 
structure described in terms of a grammar. 
It was found necessary to distinguish between 
various levels of analysis of the text. The 
textual level is that which the reader 
experiences directly: in the poems in question, 
a textual element might be "Guillelmes vit 
Cation" (Guillaume saw Charles). The textual 
level, which is not included in the study, may 
be thought of as the lexicalised version of the 
layer of analysis referred to as discourse. This 
is in turn a modified version of the story line, 
where the story line is the succession of all the 
events in a story, and discourse consists of 
these same events restructured into a form 
- 218 - 
suitable for telling. The story line of a 
detective story, for instance, would recount the 
crime and its detection in chronological 
sequence, while the discourse ordering might 
begin instead with the discovery of the crime. 
While discourse and story line differ in 
structure relative to each other, they share the 
same elements, which consist of propositions 
formed of events and actors. A typical 
discourse/storyline element might be 
"saw(Guillaume, Charles)". The highest level 
of analysis, the narrative model, is the abstract 
form of the story line. Units at this level are as 
free of content as possible, and consist of 
combinations of functions and roles. The set of 
functions in the grammar includes elements 
such as "cause," "succeed" and "attempt", 
while roles are case-like notions such as 
"subject," "beneficiary" and "opponent". The 
narrative model is a construct applicable to 
many different types of story, whereas units of 
discourse and storyline will be peculiar to the 
genre in question. 
NARRATIVE 
Information about story structure takes the 
form of a grammar, whose starting symbol is 
complex stories. A complex story consists of 
one or more simple stories. Two stories may 
be combined using any of four links: these are 
cause, where the first story causes the second; 
motive, where a particular action of the first 
story motivates the second; then, where all the 
active elements of one story follow all the 
active elements of the other, and same actor, 
where there is merely sharing of one or more 
actors. 
The simple story is expanded into an initial 
situation, an active event, and a final situation. 
Semantic restrictions on the initial situation 
state that it must involve two roles, subject and 
object or object class, in a relation of lack, 
while the final situation must consist of a 
negation or restatement of the initial lack. The 
active event consists of an event in which the 
subject (or a surrogate) attempts to obtain the 
object, or a member of the object class. Each 
element is linked to the next by succession in 
time, while final situation is linked to the 
active event in a causal relationship. 
The active event is expanded into a five-part 
structure consisting of motivation, plan, 
qualification, action, and resolution. The 
motivation phase consists of the process 
whereby the subject or surrogate subject 
acquires the will to bring an end to the initial 
situation by means of some action. There are 
two types of motivation: general motivation 
looks back to the initial situation, while 
specific motivation looks forward to the action 
which will end the initial situation. An 
everyday example will illustrate this 
distinction: a person who is hungry will have a 
general motivation to end that state of hunger, 
but only when confronted with the sight of, 
say, a loaf of bread, will s/he acquire the 
specific motivation to end the undesirable state 
by an action. The stimuli which bring about 
general and specific motivation are referred to 
as motivating acts. 
The plan phase consists of the subject's 
acquisition of the knowledge needed to 
perform the main act: this knowledge is 
acquired via one or more informing acts. 
Similarly, qualification is the process of 
acquiring the power, material or physical, to 
carry out the main act, via a series of 
qualifying acts. The action is the subject's 
attempt to obtain the object, while resolution is 
the phase in which the success or failure of the 
action is made clear, determining whether the 
final situation is to be a negation or a 
reaffirmation of the initial state. Within tiffs 
scheme, recursion allows for several attempts 
to be made on the same goal, or for a new goal 
to be set. 
The terminal elements of this grammar of the 
narrative model are narrative motifs, which, 
when instantiated, will make up the 
chronological flow of the text. It is these 
motifs which provide the answer to the 
question "What happened next?" in the story. 
- 219 - 
However, few real-life story texts could be 
described in terms of the bare minimum of 
propositions generated by the grammar as 
sketched so far: much more richness of detail 
is required. The grammar allows for this extra 
detail by permitting any element of the active 
event to be supplemented by other narrative 
motifs, of two types, tied or free. Tied 
narrative motifs are those which expand 
elements generated by the narrative model: a 
qualifying act, for instance, may be expressed 
in several steps, or several motivating acts may 
take place. However, even the simplest 
narrative text contains representations of 
events which, while not deriving from the 
narrative model, still describe what happened 
next (cf. Shen, 1988). These are free narrative 
motifs, which may illustrate character, 
exemplify themes, create irony, suggest an 
historical setting, and so on (cf. Barthes, 
1970). Particularly important for the epic is the 
opposition motif, which serves to hinder, 
jeopardise or delay some element of the active 
event. 
STORY LINE 
The movement between the elements of the 
narrative model and those of the story line may 
be seen essentially as a process of 
instantiation, detailing which types of actors 
from the story world of the genre may fill 
which roles, and which types of events may 
serve which functions. For reasons of space, 
the reader is referred to (Pemberton, 1984) for 
details of the epic story world. 
DISCOURSE 
Mapping between story line and discourse 
involves transformations determining which 
elements derived from the narrative model 
may go unexpressed in the text, and which 
may be presented out of their original order. 
Two of the more important deletion 
transformations involve the non-expression of 
high level constituents, the plan and 
qualification phases. These are necessary 
because few of the stories in the corpus 
correspond exactly to the the problem solving 
model of human behaviour reflected in the full 
form of the grammar. In particular, only two of 
the simple stories which make up the fifty two 
stories identified in the texts include an 
expression of the plan sequence: in both cases 
this happens when the planned action is a ruse. 
Thus fifty of the stories are without a planning 
phase. Moreover, several stories omit both 
planning and qualification: this happens in 
stories where an actor who has provided aid to 
a successful subject is rewarded, or where he is 
otherwise presented with the object, without 
having to carry out any directed action to 
acquire it. 
Elsewhere, it is potential redundancy which 
allows the safe deletion of elements. The initial 
situation, for instance, is not normally 
expressed. In cause linked stories, this is 
presumably because the audience may be 
assumed to have heard a first story, such as 
"Charles won Paris from Saladin" and be able 
to infer from it that Saladin now lacks Paris. In 
other examples, it is shared cultural 
assumptions which make it unnecessary to 
state explicitly that, for instance, where a city 
is in Saracen hands, a French knight will covet 
it: to say so would be stating the obvious for 
the contemporary audience. 
Other elements capable of deletion include the 
resolution and final situation. In all these 
examples, the principle at work appears to be 
that of easy inferability: an element of the 
canonical form may go unexpressed wherever 
it is almost as easy to retrieve as one expressed 
in the text (Johnson and Mandler, 1980). The 
qualifying and action phases are never omitted. 
The rules governing movement of elements 
will not be discussed in detail here (see 
Pemberton, 1984). In many stories, the order 
of elements as they are presented to the reader 
corresponds exactly to that of the story line, 
i.e. discourse and story line ordering coincide. 
Departures from the story line order are 
associated with the points at which stories are 
- 220 - 
interwoven: an example would be when an 
actor is motivated to pursue one goal while 
engaged in the pursuit of another. This is a 
common situation in the texts of the corpus, 
where a subject often catches sight of his 
future wife while he is involved in the 
conquest of a city. 
The GESTER Program 
The GESTER program (GEnerating STories 
from Epic Rules) is a first step towards 
generating stories from interacting modules of 
independent knowledge. The program is 
written in POPLOG Prolog, using Prolog's 
grammar rule facility. The program has access 
to information about story structure, in the 
form of a simplified version of the narrative 
grammar described above, and to the possible 
events and actors of the epic sub-genre, in the 
form of a simplified version of the discourse 
grammar and a database of objects and 
attributes in the epic world. In other words, it 
produces summaries from knowledge sources 
(a) and (e). No special information about the 
author and audience is introduced, i.e. the 
program ignores modules (b) and (c), and I 
assume that knowledge of the cultural context 
(d) is adequately represented here by the 
constraints imposed by the rules of the sub- 
genre (e). Since it would be outside the scope 
of the project to produce output in the 
appropriate linguistic form, i.e. Old French 
verse, the program produces summaries in a 
makeshift canned English-like representation. 
The Story Structure Rules are described at a 
level of generality which makes it possible for 
them to be used in the generation of stories of 
any traditional genre when combined with 
suitable story world rules and facts. The 
highest level rules, complex_story, represent 
the "root" of the parse tree generated by the 
program to represent the structure of the stories 
it produces. At the moment, a complex story 
consists of just two simple stories. The 
program generates stories by choosing one of 
the complex_story rules to serve as the root 
and then proceeding through the tree, making 
choices as allowed by the constraints imposed 
by the Story World roles, which in turn refer to 
the facts stored in the Story World database, 
until the terminal symbols are reached. 
Recursion allows for repeated attempts at a 
goal before final success or failure, and 
opposition motifs are also generated. 
The program uses a variety of features to 
produce an acceptably coherent story. They 
may usefuUy be divided into three groups: 
firstly, there are story features, which are used 
to determine a variety of characteristics of the 
complex story; secondly, role features, which 
guarantee one kind of coherence by assigning 
the same roles to the same actors throughout a 
story; and thirdly, transformation features, 
which regulate the mapping between story line 
and discourse levels. There are four story 
features, Link, Resolution, Mode and Motive. 
Link is the feature which describes the way in 
which the two component stories of the 
complex stories are joined together. Its 
possible values are cause, motive, then and 
same_actor, corresponding to the possibilities 
uncovered in the original study. The resolution 
feature simply determines whether a story will 
be successfully resolved, while the mode 
feature is used to distinguish stories involving 
friendly interactions from those involving 
hostility. The motivation feature allows for the 
specification of particular types of motivating 
act. 
The seven role features specify relations 
between actors. For instance, there might be a 
story describing the attack by GuiUaume 
(Subject) on the city of Saragossa (Object, 
with Object category city), currently ruled by 
Thibaut (Source), in which he is helped by 
Charles (Auxiliary), with opposition from 
Clarion (Opponent), after which Guinaume 
(Beneficiary) rules the city. 
The program also incorporates two 
transformation features, delete and move, to 
generate the story summary to the level of 
discourse. Deletion is managed via the delete 
- 221 - 
feature, which may have values delete and 
no_delete. With delete switched on, some or 
all of those elements which may legally be 
deleted will no longer included in the output 
version. The move feature, with values move 
and no_move, allows for elements of a second 
story to be interwoven with those of the first, 
according to the rules identified in the original 
study. 
The Story Structure Rules use these features to 
generate complex stories to the level firstly of 
narrative, then of a simplified form of 
discourse. 
The choice of actors and actions to appear in a 
story is constrained by the rules contained in 
the Story World Rules module. These 
comprise, firstly, "lexicalisation rules" for the 
non-terminal elements generated by the 
general grammar, e.g. "try to obtain (a city)" is 
to be lexicalised as "take by siege" or "take by 
ruse." Similarly, motivating acts in stories 
concerning the conquest of a city may be: 
(a) hearsay 
(b) hearing its defenders are absent 
(c) presence of allied prisoners in city 
(d) sight of the city 
(e) loss of one's own city 
(f) a taunt from the city's ruler 
When a wife is the object, the subject may be 
motivated by: 
(a) hearsay 
(b) a love letter from the woman 
(c) nagging by advisors 
(d) sight of the woman 
(e) hearing a song about the woman 
Secondly, Story World Rules detail the 
restrictions on possible combinations of actors 
and actions. For instance, while a Christian 
knight may attempt to marry any Saracen 
woman, even one who is already married, a 
Saracen man may not woo a Christian woman, 
married or not. Other rules specify aspects of 
loyalty, inheritance, religious belief, marriage 
and military practice, identified from the 
analysis of the Old French corpus. Some rules 
involve several inference steps. For example, 
to choose an auxiliary, the program first checks 
to see if any actor is flagged as being 
particularly friendly towards the subject, as a 
result of having helped him or having received 
his help in earlier stories. If not, an auxiliary is 
sought amongst members of the set of male 
co-nationals of the appropriate status (e.g. 
knights rather than commoners or priests), 
with a family member, father or brother, being 
preferred to a mere compatriot. However, if the 
subject has previously displeased the potential 
auxiliary, perhaps by not rewarding him for 
services rendered, he will refuse to help. 
Similarly, if the subject happens to be a rebel, 
his family and compatriots will all refuse to 
help him, and he will have to accept an actor 
of the opposing nation as his ally. None of this 
reasoning, of course, appears in the story 
summary itself: it merely serves as its logical 
underpinning. 
The Story World database module contains 
necessary facts about objects and relations. 
There are only three types of object 
represented in the database, people, cities and 
deities. Facts such as the social status, marital 
status, family and social relations, nationality 
and gender are found here, ready to be called 
on by the Story World Rules. Obviously this is 
only a very small proportion of the facts which 
would have to be made available to the rest of 
the program if it were to produce stories 
rivalling the richness of incident found in the 
epic. 
The program's output consists of the string of 
terminal elements making up the content of the 
story, together with a representation of its 
parse tree. An example story is set out below. 
This is a complex story in which the French 
king, Charles, wins first the city of Narbonne 
(S1), then a Saracen wife, Blancheflor, whom 
he sees while invading the city ($2). In order 
to produce this summary, the program 
determines possible subject-object 
combinations for the first story, choosing 
- 222 - 
appropriate acto~ for the supponing roles. At 
various poin~ in the processing, inferences are 
made about obligatory and option~ even~. For 
instance, Charles, as king, has no need to ask 
permission of his monarch before seaing out to 
conquer the caste, as a mere knight would. In 
S1, the subject and auxiliary are not near the 
object as the gory begins and so must fide to 
Narbonne, whereas this is unnecessary in $2, 
~nce Blancheflor is ~ready in Narbonne. 
Various events of $2 are influenced by even~ 
of SI: for instance, since Charles forged to 
reward his ally, Aymeri, in S1, Aymeri is 
unwiUing to help in the action of $2. In a 
similar way, while Thibaut opposed Charles in 
S1, he cannot do so in $2, as he is in prison. 
The summary was generated with the Link 
feature inganti~ed to produce a motive-linked 
gory, and with both deletion and movement 
options chosen. Elements of the nan~ive 
which are dele~d because the delete option is 
chosen have been written in by hand, for the 
purposes of demonstration. 
?- complex story (motive, Resolution, 
Mode, Motive, move, delete, 
Subject, Category, Object, 
Beneficiary, Auxiliary, Source, 
Opponent, Nresolution, Nmode, 
Nmotive, Nsubject, Ncategory, 
Nobject, Nbeneficiary, Nauxiliary, 
Nsource, Nopponent, Tree, 
Complex_story, \[\]). 
Charles lacked a city. 
\[*Charles lacked a wife.\] 
As a result of hearing of Narbonne 
Charles wanted Narbonne. 
\[Then Charles planned to obtain 
Narbonne for Charles.\] 
Then Aymeri agreed to help Charles. 
Then Charles and Aymeri rode to 
Narbonne. 
\[Then Charles was ready to try to 
obtain Narbonne.\] 
Then, Charles attacked the walls of 
Narbonne, currently controlled by 
Baufumez, helped by Aymeri. 
Thibaut and Clarion threw burning 
pitch down on Charles and Aymeri. 
Charles and Aymeri retreated. 
Then, Charles attacked the walls of 
Narbonne, currently controlled by 
Baufumez, helped by Aymeri. 
Thibaut and Clarion threw stones down 
on Charles and Aymeri. 
Charles and Aymeri broke into 
Narbonne. 
*As a result of seeing Blancheflor 
Charles wanted Blancheflor. 
Charles succeeded in getting Narbonne. 
Charles praised God. Charles forgot to 
reward Aymeri. Charles threw Thibaut 
into prison. 
\[Then as a result of getting Narbonne 
Charles no longer lacked a city.\] 
Then Charles planned to obtain 
Blancheflor for Charles. 
Then Aymeri refused to help Charles 
because he was not rewarded. 
Then Bertrand agreed to help Charles. 
\[Charles was now ready to try to 
obtain Blancheflor.\] 
Charles abducted Blancheflor, 
currently controlled by Thibaut helped 
by Bertrand. 
Because Thibaut was in prison he did 
not oppose Charles and Bertrand. 
Clarion opposed Charles and Bertrand 
in getting Blancheflor. 
Charles succeeded in getting 
Blancheflor. 
Charles praised God. 
Charles rewarded Bertrand. 
\[Then as a result of getting 
Blancheflor Charles no longer lacked a 
wife.\] 
The following not~ions are added for 
clarification: 
* = moved element 
\[ \] = de~ted element 
- 223 - 
FUTURE EXTENSIONS 
The work described here represents a first step 
in implementing a model of story generation. 
The program now needs to be extended in a 
number of directions. Firstly, each of the 
modules must be enriched to enable greater 
detail, greater variety of incident, and more 
complexity of structure. The inclusion of a 
more complex mapping between role and 
actor, to allow for the distribution among 
several actors of a single role, will be a first 
step here. Secondly, the story structure rules 
will be applied to a representation of a 
different story world, possibly that of the fairy 
tale or the romantic short story, in order to test 
the independence of the modules. A further, 
more ambitious extension, would be to attempt 
to incorporate a mapping from the level of 
discourse, to the textual level: work by Ashby 
(1976) and Heinemann (1973) indicates such a 
mapping to be achievable for at least a subset 
of discourse motifs. 
ACKNOWLEDGEMENTS 
My thanks to Aaron Sloman and James 
Goodlet for comments on an earlier version of 
this paper. 
REFERENCES 
Ashby, Genette. 1976. A Generative Grammar 
of the Formulaic Language in the Single 
Combat in the Chanson de Roland. PhD 
Dissertation: University of Columbia. 
Barthes, Roland. 1970. S/Z. Paris: Seuil. 
van Dijk, Teun A. 1972. Some Aspects of Text 
Grammars. The Hague: Mouton. 
1980. Macrostructures : An 
Interdisciplinary Study of Global 
Structures in Discourse, Interpretation 
and Cognition. New York: Lawrence 
Erlbaum. 
Gamham, Alan. 1983. What's wrong with 
story grammars. Cognition, 15: 145-54. 
Heinemann, Edward A. 1973. Composition 
stylisee et technique litteraire dans la 
Chanson de Roland. Romania, 94: 1-27. 
Johnson, Nancy S. and Jean M. Mandler. 
1980. A Tale of Two Structures: 
underlying and surface forms in stories. 
Poetics, 9: 51-86. 
Mandler, Jean M and Nancy S. Johnson. 1980. 
On Throwing Out the Baby with the 
Bathwater: A Reply to Black and 
Wilensky's Evaluation of Story 
Grammars. Cognitive Science, 4: 305- 
312. 
Mann, William. 1984. Discourse Structures for 
Text Generation. COLING-84: 367-375. 
Pemberton, Lyn. 1984. Story Structure: A 
Narrative Grammar of Nine Chansons de 
Geste of the Guillaume d'Orange Cycle. 
PhD dissertation: University of Toronto. 
1987. A Story Grammar for the Old 
French Epic. MSc dissertation: 
University of Sussex. 
Propp, Vladimir. 1928, 1968. Morphology of 
the Folktale. Austin, Texas: University 
of Texas Press. 
Rumelhart, David E. 1975. Notes on a schema 
for stories. In D.G. Bobrow and A.M. 
Collins, eds, Representation and 
Understanding. New York: Academic 
Press. 
Ryan, Marie-Laure. 1981. On the Why, What 
and How of Generic Taxonomy. 
Poetics, 10: 109-126. 
Shen, Yeshayahu. 1988. Schema Theory and 
the Processing of Narrative Texts: the 
X-bar Story Grammar and the notion of 
Discourse Topic. Journal of Pragmatics, 
12: 639-676. 
Wilensky, Robert. 1983. Story grammars 
versus story points. Behavioral and 
Brain Sciences, 6: 579-623. 
Yazdani, Masoud. 1982. How to write a story. 
ECAI-82 : 259-60. 
- 224- 
