A message processing system 
with object-centered semantics 
Jean-Frm1~ois DELANNOY 
Groupe Reprdsentatlon et Traitcment des Connaissances 
Centre National de la Recherche 5k~Aentlflque 
31, chcmin Joseph Aiguler 
13402 MARSEILI,E CEDEX 9 - FIUkNCE 
e-mail : GIrI'C @ FI~VIOPI 1.BITNE~F 
Abstract 
This paper presents a report processing method with ohjcct-centered semantics. The syntactic 
analysis is performed along classical generative principles, though with a deliberately simple output 
as a list of index-value doublets, which the semantic module pr(messes using methods in an object- 
oriented framework. The final representation is made of two types of object-centered structures : llrst, 
case-like, event level dated structures corresponding to the Input clauses; second, detailed 
representation of the culTent state of an agent of the reference world, plus rccords tbr tile follow-up of 
a task over time. Uncertainty, imprecision and prevision are handled using specialized fields. This 
framework is applied to the processing of daily naval reports in English. 
I. Introduction 
The objective of the project is the processing of 
messages in English reporting the daily evolution of 
naval situation in the Mediterranean. The 
information extracted is exploited for situation 
monitoring, maintenance of a historical database, 
formulation of previsions, and detection of 
highlights and anomalies. 
A report typically gives information on the activity 
of one ship during the past 24 hours; for example: 
"La Belle Poulc is performing oceanographical 
measurement in the northern Mediterranean, while moving 
south at a speed of 5 knots. La Belle Poule was 
approxinlately 40 nautical miles south of Ma.rseille at 
10:00, April 14." 
This example exhibits discursive information on the 
c.urrcnt activity and movement of the ship and a 
spatio-temporal plotting relative to a reference 
location. 
2. Representation 
2. I. The taxonomy of '~ermanent objects" 
The permanent objects (Figure 1) are relatively 
perennial, non-event-based entities which make up 
the fixed knowledge background or reference world. 
They ,are : 
- ships: instances of known ships; 
- spatial items : instances of zones and places, plus 
geographical directions; 
action types, down to preterminal class level (action 
instances are created upon parsing, as detailed 
Imreunder). Actions subclassit~ into activities and 
I Ilovcnlent:i; 
Unlike action types, which arc not expectcd to be 
modified, new instances of ships and locations can be 
added intcractively to the taxonorny. 
~ dircctim! 
A proper ~ I civilian mllliarY /I 7gtralt 
movenlent | patr~ 
oceanographical Int¢lll ince 
etc. etc. Oklt~lCle - / \,.,.&.,,"<~ po,/~ l'-.,,oa 
t \ ............ , 
C 0 ~ ~ll cnog~iIlg llmlde Med facility reference 
rl,t}:|~l~:hlp~ ~k ~ port" atid"h~A)rage ,:::':,!p\\ \ 
Bclentlfl\[ m~lta y , nt! :! 
corn'bat 
O~ guxlllaly mllle 
cruiser ~rtn~weeper amphlb! 
destroyer' ~ ~ ~lnlng frlgat@ ~ amdstance "~ ship 
patrol ohlp Intelligence 
collector 
Figm'e 1 : The t,~..gnomy (if permanent objects 
2.2. Sh~ame 
The ship frame indicates both the current state of a 
ship and indications on its activity. 
The general structure of a ship frame is : 
- status, a boolean (active/inactive) 
- ongoing tasks 
-completed tasks. This and the preceding field 
contain pointers to instances of the class "task", 
whose fields are : type (an activity}, start date, 
intermediate {last recorded) date, end date and 
location. 
-temporary information : current location, and, 
when available : goal, destination, geographical 
direction, companion ship, and speed; 
- list of spatio-temporal plottings. 
1 333 
2.3. Action frame 
Actions {event-level representation) are instances of 
the subclasses of the class "action". Modality values 
are attached : 
- to the action itself : 
-temporal aspect : "previsional", "under-way", 
"completed". 
-degree of certainty : "observed", "certain" 
(meaning given as certain; this is the default 
value), "probable", "possible", ordered by 
decreasing cert~nty. 
- to the action parameters : 
- certainty, as above 
- precision : "exact", "approximate" 
2.4, lr~ference procedures 
The inference procedures, implemented as methods 
and demons, perform the following tasks : 
- check and complete new information 
- manage correspondence between fields (e.g, between 
the "goal" and "ongoing tasks" fields), taking 
modality values into account 
- look for better modalities (uncertainty, 
imprecision) 
- launch previsions 
- try to confirm active previsions 
- signal salient and anomalous points. 
Previsions can be explicit in the text (future action; 
goal or destination), or scenario-related. 
i nput  \] ~ \[ercalion~nd I ~ \[ \] *f--~ syntactic 11~ .1~,~,kluJ*o ~ -I~ filling out of ~.a~tln~"i'~f ..... '~ -~ integration ~ ship 5 k,~-'- -~ "'1 analysis I"- %%, ......... ~/ Vlaction instance \] ~ ................ M | I \] ~framej 
t ........... J ""-----"t \[ .... J ~ --' ~ "~_-:'-"\]- 
± 
I lexicon \] J .................. \] \[ novelty test \] i 
"- ~' I i~", ~te.~;; I I lmpr(~(\[mcnt °fm°datittesl { /'~'~---"~ 
\[ I- ..... J~,,~-,~-,~l'~,,~ ~- ..... I \[ acceptability \[ { k.._~ I ~ .................... I ~ prevision handling \] { I - 
k_ _ J ~ ~to~,in "knowledge, J "'1 historical M_ ~ ....... \[ ..... o- */ I knowledge 
L base 
Figu,re 2: The P\[0ce,ssi, ng ,flOW 
3. Syntactic analysis 
3.1, The ~ma;~:t~r 
Syntactic analysis is peribrmed by an augmented 
I)CG grauu',~ar. The output is a list of doublets <p,v>, 
where p is either a preposition or a syntactic category, 
apd v the lcxical-semantic translation of the item(s), 
The \[risk of the analyzer is not domain-neutral and 
t'(:t purely grammatical : 
- d~e "p" clement of the doublets is in fact filtered and 
sometimes transformed : prepositions which 
trar~slate identically end up the same (but inversely, 
ambiguities caused Ey plurivocal prepositions arc left 
for the sc~:i:antic processor to solve, mainly by the use 
of domain filtering); 
a lot of lexicon entries are complex nouns and 
vet-bai phrases 
A clause is represented in the output under the form : 
<ap, x-np,>.<vp, x-vp>.<x-prepl , Xl> ..... 
'QX - p1'cPIl, Xll>.ll\[l 
3.2. IVhat is ~ted frorn s~jntact~a kncxvledge? 
There have been deeply contrasted positions on the 
role of syntax. It can be thought of as a full-fledged 
first stage, as an auxiliary which is sufficiently 
informative even when a complete syntactic structure 
per se (e.g. an x-barred tree) is not built (conceptual 
analysis : \[Schank & Riesbeck 81\]), as a co-process in 
close cooperation with semantics (since SHRDLU), as 
the first in an ordered sequence of increasingly costly 
means (as suggested by \[Rau & Jacobs 87\], who then 
list slot-filling involving filtering, heuristics when 
choices are to be made, and general domain 
knowledge). 
Grossly, syntax in itself carries information on : 
- constituent ordering and constituent relationship 
-flexion and syntactic function (if the grammar is 
relational). 
13ut more actively, syntactic analysis backed by 
lexical semantics, even if less sophisticated than in 
LFG or Mel'cuk's model for example, can play an 
active part in sorting items out and ascribing them an 
adequate translation, as for prepositions with an 
identical meaning. In fact, besides applying weil- 
formedness rules, the analyzer and lexicon can do 
some rearrangements so as to have the job all 
prepared for case attribution to function nicely. 
4. Semantic processing 
The system first searches a clause for an action in the 
verb doublet or, if the verb has translated as "empty" 
(for verbs like "perform", conduct"), in the tbllowing 
noun phrase. The field valuation mechanism of the 
object environment checks that the action value does 
belong to the declared domain. An instance of the 
action type is created, and the system fills its fields 
with the values it finds in the second element of the 
doublets; the condition on the first place \[preposition) 
is expressed as a parameter. Domain checking is 
again performed. A case-like structure is obtained. 
When tile action instance has completed the 
valuation of its fields, it pours itself into an existing 
active task of the same ship if available, or else into a 
new task it creates. Temporary data {current 
334 2 
direction, destination, speed, company and goal) are 
replaced without testing if the new values are 
different. If the new action is an activity rather than 
a movement, it will either merge into the last 
recorded task If it is the same or a compatible one, or 
will generate a new task, If it is declared to be 
completed, it is (re-)written into the completed-tasks 
field after its status flag has been set to "Inactive". If it 
is incompatible with an existing ongoing task, that 
task is closed 
For all of the above, a new modality for an already 
valuated field will be checked against the existing 
modality : a "better" modality (e.g. certain vs 
probable} supersedes the previous one, whereas a 
worse one is anomalous and can be signalled. The 
processing of the above example thus results in the 
crcaetion/updating of the following frames : 
Output lists : 
(<np,I.a-Belle-Pmfle>.<vp,empty>.<oceanographical 
met~smement>. <in,northern-Mediterraaean>). 
(<vp,rtvovement>.<noprep,south>.<speed,5>).nil 
<np,Lao Belle-Poule>.<vp,be-loc>.<adv,approximate>. 
<pl otting,<40,south,Marseille, 10.00,04,14>>.nil 
Re,ru~rks : 
-ellipsis of the subject noun phrase is recognized. 
- plottings lave their own structure and treatment; 
Action instances : 
oa~.anographical-rr~oas urement - 13 
agent La Belle Poule 
location northern Mediterranean 
movement-56 
agent La Belle Poule 
direction south 
stx~ 5 
plotting-87 
ship La-Belle-Poule 
x~f-loc Marseille 
distance 40 (approximate) 
"dale 041410 
Remark : instances of movements are erased after 
I.tSe. 
Updated ship frame : 
ongoing tasks taskT.nil 
completed tasks nil 
zone northern Mexliterrm~ean 
direction south 
destination Tunis (possible) 
stxxxt 5 knots 
companion ship none 
plotting list 
<Marseille, 11,south,approx,041215>. 
<Marseille,29,sou th,approx,041312>. 
<Marseille,40,south,approx,041410>. nil 
The task is described as : 
type oceanographical measurement 
stem date 041312 
intermediate date 041410 
end date 
location northern Mediterranean 
5. Related work 
The principled application of structured object 
representation to semantic processing had its 
operational landmarks in Bobrow and Winograd's 
KPd, and the systems developed by the Yale AI group 
(e.g. \[Schank & Riesbeck 811\]. \[Itirst 87\] proposes an 
overaU application of the object paradigrn, including 
to synta×, rather in the spirit of {Srnall & Rieger 82\]'s 
and (Flnck 89\]'s word experts. \[Fargues, Catach, 
I)ugourd 86\] use logic grammars, but with a semantic 
representation based on networks \[Sowa's conceptual 
graphs) rather than fi'ames. 
6. Implementation 
The system is implemented in Objlog (\[Dugerdil 89\]), a 
frame language based on Prolog II and featuring 
multiple inheritance with points of view, selective 
inheritance for value-sharing in relationships other 
than taxonomical, and dynamic facets. The 
grammar Itself is written in Prolog It. A menu-and- 
mouse interface has been developed for the 
IntexTogation module. 
7. Conclusion 
I have tried to show that objects are a convenient and 
efficient way to implement semantic representation 
as well as analysis in a reasonably small domain. 
Syntax based on a moderately strict set of well- 
formedness conditions and some initiative In 
renaming is an appropriate partner for such a 
semantic analyzer. 
Many thanks to Franqoise Picard at GI~TC for 
collabol-ation and advice. This research is backed by 
a CIFRE convention with SYSECA-Temps R6el and 
the Association Nationale pour la Recherche 
Technique (ANRT), 

References 

Bobrow D., Winograd T. \[1977) : "An Overview of KRL, 
A Knowledge Representation Language", 
Cognitive, Science, vol 1, n o 1, 3-46 

Delannoy J,F,, Picard F, (1989) : "Conception et 
lmpl6mentatlon d'une base de connaissances 
utilis6e dans le cadre d'un syst6me de 
comprehension automatique de messages en 
anglais", Rapport interne n ° 377, Groupc 
Repr6sentation et Traitement des Connais- 
sances , Marseille 

Dugerdil Ph. \[1989) : Contribution & l'~tude de la 
reprOsentation des con~uaissances fondfee sur les 
objets, Th(?se de l'Universit6 d'Aix-Marseille II 

Fargues J., Catach L,, Dugourd A. (1986) : "Conceptual 
Graphs for semantic and knowledge pro- 
cessing", IBM Journal of Research and 
Development, vol 30 no 1, January 1986, 70-79 

Finck. D. {1989} • "Description d'un analyseur 
systdmique : ANASYS", note du Centre de Re- 
cherche en Infonnatique de Nancy, CRIN 89-R-101 

Hlrst G. (1987) : Semantic Interpretation and the 
Resolution of Ambi.quity, Cambridge University 
Press 

Small S., Rieger C. (1982) : "Parsing and 
Comprehending wlth Word Experts (A TheoIT 
and Its Realization)", in Lehnert W.G., Ringle 
M.H. (eds.) : Strategies for Natural Language 
Processing., Lawrence Erlbaum Associates, 89-145 

Rau L,F., Jacobs P,S, {1987} : "Integrating top-down 
and bottom-up strategies in a text processing 
system", Proceedings of the 2nd ACL Conference 
on Applied Natural Language Processing, 
Austin, Texas, 1987 (published 1988), 129-135 

Schank R.C., Ricsbeck C. (eds.) (1981} : Inside 
Computer Understanding, Lawrence Erlbaum 
Associates 
