ACTIVE SCHENATA 
AND THEIR POLE 
IN SEMANTIC PARSING 
Joachim H.Laubsch Dietmar ~.Roesner 
Institut fuer Informatik Mathematisches Institut A 
Universitaet Stuttgart 
D-7000 Stuttgart 
West Germany 
Abstract 
In the past years we have been applying semantic 
ATN-grammars - as introduced by Brown & Burton 
(1974) - to natural language question-answering 
tasks (e.g. a LISP-Tutor \[Barth, 1977\], s 
question-answering system about the micro-world 
of soccer \[Rathke & Sonntag, 1979\]). We found 
that semantic grammars execute efficiently, but 
become large very quickly even with moderate 
domains of discourse. We therefore looked for 
ways to support parsing by domain-dependent 
knowledge represented in an inheritance network 
\[Lauhsch,IQTQT. In this paper we first briefly 
describe our representation language Ohjtalk, 
and then illustrate how it is used for building 
an understanding system for processing German 
newspaper texts about the jobmarket situation. 
keywords: newspaper processing, ATN, frames 
semantic grammar, object-oriented 
programming, 0hj~alk 
Concepts as active schemata 
We have developped an object-oriented 
representation language called 0bjTalk - in 
which objects are frame-like data structures 
which have behavioral traits and communicate 
through message passing. The objects (classes 
and instances) are organized into a (multiple) 
inheritance hierarchy. 0bjTalk is an extension 
to Lisp and was inspired by SMALLTAL~ 
\[Goldberg&~ay, 1976\], VRL \[~oberts&Coldstein, 
1977\], and KLONE \[Braehman, 1978\]. 
An inheritance net of objects (with the root 
class Object) is constructed by sending the 
message NEW: to the class CLASS, i.e. a concept 
definition in ObjTalk has the form: 
(ASK CLASS NEW: <concept-name> 
SUPERC (<concept-name1>...) 
GENERIC-PROPERTIES 
<slot-name>: <filler-description> 
ME~HODS 
<method-name>: \[<filter> => <body>\] 
~RIGCER-ATN 
<Trigger-keys> ; attached ATN 
\[<subATN-node> <production>\] 
...) 
The effect of sending NEW: to CLASS is to define 
a class with the given <concept-name> as a 
subclass of the named superelass(es). Instances 
are made by sending the concept a message that 
causes to fill its slots with fillers which 
satisfy the filler description. If an object 
receives a message, this will be matched against 
the method-filters. In case of success the 
corresponding method's body will be evaluated. 
Concepts inherit methods and generic properties 
fro~ their superclass(es) recursively upto the 
root node Object (which implements the 
system-defined messages). Objects may be further 
specified dynamically by adding slots or 
methods, or filling slots. 
For schema-driven parsing, a semantic suhATN 
should be activated whenever a particular word 
is found, or concept is expected. The basic 
mechanism is to attach trigger-key8 to a schema 
that state which words 
364-- 
which words or concepts make a schema active. 
Once active it puts the named subATN-nodes in a 
preferred aetivatable state. The ATN-machine has 
been extended to prefer PUSH arcs from 
non-deterministic states if they are 
activatable. This is implemented by primitives 
for activating a subATN, deactivating an active 
one, and a test for activation. 
The suhATNs of the trigger-atn form (or those 
ones in filler descriptions) are made 
activatable if 
(I) a concept has been partially instantiated 
(an instance of this concept or one lower in 
the hierarchy was made, but not all obligatory 
roles are filled), or 
(2) one of the concepts mentioned in 
trigger-keys has been instantiated, or 
(5) one of the words mentioned in trigger 
Mys was found by the scanner. 
Arc actions of the ATN may send messages to 
concepts, and thus (partially) instantiate a 
concept. 
Application to newspaper 
understanding 
We are currently applying ObjTalk to 
understanding newspaper reports about the 
johmarket situation. Reports of this kind are 
highly stereotypical: They describe the present 
jobmarket situation in terms of a few attributes 
and their respective changes. These indicators 
are interpreted and discussed within the 
framework of a simple model of jobmarket 
fluctuations by officials of the issuing 
organization. Sometimes the data are also 
commented upon by political speakers of 
different views. 
Jobmarket reports are prototypical for related 
"official statistical reports" (e.g. 
developments of population, crime, stockmarket 
etc.). These articles are differing in structure 
and contents (data, values, changes, 
explanantions, interpretations) from the more 
"event"-oriented newspaper-texts of DeJongs 
~RI~P \[Iq79\] and Cullingfords SAM \[1978\]. 
~he knowledge-base 
We have built a knowledge-base of (ObjTalk-) 
concepts in order to proess news articles of 
this type. The design was guided by the 
principle of providing an active schema for 
everything that would be considered a "thema" in 
the reports. 
The most global frame is the one for 
"job-market-situation" (jms). It combines in its 
roles all what would "normally" be reported in 
our texts and should therefore be expected by 
the system: time, region, relevant aspects or 
indicators - i.e. jobless-rate, open-jobs, new 
employments ... - , explanations for the general 
situation, general predictions. (Think of a 
jms-frame as a "snapshot" of the 
jobmarket-developments; Schankian people may 
think of it as analoguous to a script). 
The relevant aspects are in a sense constituting 
the jms, technically spoken: are in a part-of 
relation to the jms-frame. Their frames 
themselves are combined from frames for the 
static and the dynamic part of the 
jobmarket-factor,i.e, an index- and an 
index-change-frame. Each concept for an 
individual jobmarket-aspect also involves 
encoded knowledge for a (specificl evaluation, 
explanation and prediction. 
The common traits of the individual jm-indices 
are organized in the jm-index-frsme, which 
itself inherits knowledge (slots,...) from a 
more general index-frame that combines the 
shared traits of all such indices (cf. above). 
This organization should later allow easy 
extension of the system. 
Examples 
Parsing the sentence 
"DIE ZAHL DER ARBEITSLOSEN YN ENGLAND IST IM 
MAY UM 14000 AU~ 1,509 MILLIONEN 
ZURUECKGEGANGEN" 
("THE ~MBER OF I~EMPLOYED PERSONS IN ENGLAND 
HAS DECREASED YN MAY BY 14000 TO 1,509 MILLYON") 
would cause the following instances to be 
created and included into the static and dynamic 
roles of the resp. jm-sspect: 
365- 
jobless-index-1 = ( a jobless-index with 
region: (England) 
value: (I.~09 million) 
time: (DATE ~I 5 80) 
sex: (AND MALE FEMALE) 
jobtypes: (ALL JOBTYPES) 
changes: change-jobless-index-1 
• ,. ) 
change-jobless-index-1 = ( a change-of-index 
with 
ref.-index: jobless-index-1 
time-new: (DATE ~I 5 80) 
time-old: (DATE ~O 4 80) 
time-interval: (DATE-YNT 5 80) 
value-new: (~.5Oq million) 
value-old: (1.52~ million) 
change-abs: (-14000) 
change-qual: (DECREASE) 
evaluation: (POSITIVE) 
• ., ) 
(The last inference is done by a method of class 
jobless-index which says that for this index 
DECREASE is evaluated positively; this rule does 
of course not hold for e.g. the 
open-jobs-index). 
Schemata for argumentations 
Statements about facts are often followed by 
explanations given by an official person. Such 
statements are recognized and dealt with by a 
schema called "interpretation" which is 
activatable e.g. by verbs like the German 
"erklaeren" ("declare"). 
The interpretation schema has as roles: 
fact: (OR (CLASS jm-indicator) 
(CLASS jm-situation)~ 
speaker:~(CLASS official/person) 
object: (CLASS explanatory/statement) 
The object of an interpretation is an 
explanatory statement, which has roles for a 
manifest fact and supporting reasons. The system 
has an elementary knowledge about (jm-specific) 
economic dependencies (e.g. decrease in the 
jobless rate in the time interval from March to 
May may be due to seasonal effects), and uses 
this to identify resp. utterances as reasons in 
an explanatory statement. 
Guiding ATN control through schemata 
The kernel of our grammar consists of semantic 
ATNs particular to role fillers of (0bjTalk-~ 
concepts. In general, the parser tries to use 
the most specific subATN possible, and only 
falls back onto a syntactic subnet if no 
expectations are active. 
The semantic subATNs may be rather idiosyncratic 
(like the one for NP/jobmarket/official/person 
to handle phrases like "DER PRAESID~NT DER 
BUNDESANSTALT ~\[~R ARBEIT IN NUERNBERG, JOSEF 
STINGL ...") and are organized hierarchically. 
They may be used by diverse concepts with 
similar slots. The value returned via the POP 
arc of a subnet may be used directly as filler 
for the triggering slot. A more general 
interface between the ATN results and the slots 
of a schema is provided by the productions in 
the trigger-atn form. The production filters out 
those parts of an ATN result that fit as 
role-fillers of the concept. 
Writing semantic ATNs is simplified by the 
chance to specify only one generic PUSH arc 
(e.g. NP) that processes a class, instead of the 
possibly large set of more specific ~\[SHes (e.g. 
NP/PERSON, NP/OFFICIAL/PERSON, NP/JOBMARKET/ 
OFFICIAL/PERSON, ...). 
If the parser is in the starting state of such a 
generic PUSH and a schema is active whose roles 
are to be filled by semantic subATNs, then those 
standing in subclass relation to the generic 
PUSH are preferred. E.g., if an unfilled slot 
expects a N~/0FFICIAL/PERSON, and the parser 
expects a NP, then, since NP/OFFICIAL/PERSON is 
a specialisation of NP, it is activated and - in 
case of success - the result is used to fill 
that slot. 
In general, several schemata can be active at a 
time, in the sense that some of their slots are 
unfilled. (In other words: There may be several 
"thematic expectations" looking for further 
information in the article). Then all of the 
attached subATNs are activatable. It is possible 
that an expected subATN succeeds but the result 
fails to meet a filler-restriction (or even does 
not match the production). This is treated like 
a failure of the subATN itself. 
--366-- 
An informal parse 
The following example - slightly shortened from 
a real news note - is intended to give a flavor 
of how knowledge base and parser processes 
cooperate in analysing a johmarket report: 
>>DIE ZAHL DER ARBEIT~LOSEN .. 
(The number of unemployed ..) 
This triggers the concept for a jobless-index 
and, since there is no one active yet, 
instantiates a jobmarket-situation as context 
for further processing. Within it, the 
jobless-index becomes the static part of the 
reap. jms-aspect-frame. 
>> .. VERRINGERTE SICH .. (.. decreased ..) 
An instance of change-of-index for 
jobless-index is created (because verbs like 
"decrease" are attached to index-changes) and 
identified as the expected dynamic part of the 
still active jms-aspect. 
>> .. LASSE KEINE KON~JNKTURELLEN AUFTRIEBS- 
KRAE~TE MEHR ERMENNEN, .. 
(.. does not show any signs of economic 
recovery, ..) 
Since the manifest fact may be explained by 
economic recovery or other reasons, the intent 
of this statement is to exclude the former 
explanation. The exclusion of a reason activates 
a more general argumentation schema which now 
demands that a positive explanation must follow 
(at least in well written texts). 
>> .. DER RUECKCANC DER ARBEITSLOSICWEIT SEI NUR 
AUF SAISONALE EIN~JESSE ZURUECKZUFUEHREN. 
(.. the decrease in jobless rate is only 
caused by seasonal influences.) 
The first part repeats the manifestation (and 
is optional), and the second part claims 
seasonal effects as reason for it. ~his 
explanation is confirmed by one of our inference 
rules ( time-interval is May ) about the 
relations between season and changes in 
jobmarket-indices. This finally allows to fill 
the reason slot of the explanatory statement. 
>> .. IN MAI i~ 58000 AUF 766000. 
(.. in may by q8000 to 766000.) 
Various unfilled slots in the active 
jobless-index and change-of-index schemas are 
filled by successfully processed particular 
PP-nets attached to those slots (e.g. 
PP/TIME-INT for time-intemral), some slots get 
their default values, which reflect newspaper 
conventions of "what is known without having 
been said" (e.g. the region slot gets "western 
germany" ) . 
>>DER PRAESIDENT DER BI~DESANSTALT FUER ARBEIm, 
JOSEPH ST!NGL, ERKLAERTE ... 
(The president of the federal employment 
office, J.S., declared ...) 
This leads to the instantiation of an 
interpretation frame (which itself will fill the 
explanation slot of the jms-aspect) with the 
named official filling the speaker slot, and 
makes thus a schema for an explanatory statement 
active. Slots to be filled here are a 
manifestation and reasons. 
>> .. DIE ENTWICKLUNC AM ARBEITSMARZT .. 
(.. the development on the jobmarket ..) 
This refers to the previously built change of 
jobless-index (as - by default - central aspect 
of jms-developments and - in this context - only 
"development" talked about so far\]. It becomes 
filler for the manifestation slot. 

REFERENCES 

Barth, M. "Zur Implementierung eines Lehrsystems 
fuer LISP." Diplomarb. 62, IFI-UNI Stuttgart, 1977. 

Brachman, R.J. "A Structural Paradigm for 
Representing Knowledge." BBN Rep. No. Z6Oq, 
Cambridge, 1978. 

Brown, J.S., Burton, R.R. & Bell, A.C. "SOPHIE - 
a Sophisticated Instructional ~7nvironment for 
teaching electronic trouble-shooting." BBN Rep. 2790, 
Cambridge, 19'74. 

Cullingford, R.E. "Script Application: Computer 
Understanding of Newspaper Stories" Res.Report #116, 
Yale, 1978. 

DeJong, F.D. "Skimming Stories in Real Time: An 
Experiment in Integrated Understanding" Res.Report 
#158, Yale, 19'79. 

Goldberg, A. & Kay, A. (Eds.) "SMALLTALK-72 
Instructional Manual." XEROX PARC, Palo Alto, 1976. 

Laubsch, J.H. "Interfacing a semsntie net with 
an augmented transition network." Proc. 6th Intern. 
Joint Conf. on Artificial Intelligence, ~okyo, 1979. 

Rathke, Ch. & Sonntag, B. "Einsatz semantischer 
Grammatiken in Frage/Antwort-Systemen, Teil I +II." 
Diplomarb. 2~O & 2ZI, IFI-I~I Stuttgart, 1979. 

Roberts, R.B. & Ooldstein, I.P. "The VRL 
Manual." MIT-AI Memo 409, Cambridge, Iq77. 
Rosenberg, St.T. "Frame-based next Processing" 
MIT-AI Memo 4ZI, Cambridge, 19"77. 
