(a) “Add student John Smith to the Hypermedia
course.”
(b) “Send an e-mail to the students of the
Operating Systems course saying that the test
will be on December 14
th
.”
The main advantage and innovation of our
approach is the use of UNL as an interlingua. In this
way, natural language requisitions, expressed in
different human languages, can be translated into the
same UNL representation before being executed. To
convert natural language into UNL, the HERMETO
(Martins et al., 2004) system was used.
To achieve our goal, a new system, the
SeMaComp (Semantic Mapping between UNL
relations and Components) system is being
developed. It uses ontologies to identify what
components, methods and arguments will be
necessary to execute requisitions expressed in UNL.
This paper is organized in the following way:
Section 2 discusses related works about interfaces
for the execution of natural language requisitions.
Section 3 describes the UNL project and the
HERMETO system. Section 4 presents an
imperative natural language requisition system using
SeMaComp. Section 5 describes an application in
the web course management domain. Section 6
concludes the paper with some remarks on future
work.
2 RELATED WORKS
The first efforts to execute user requisitions
expressed in natural language began in the later 70s.
The NLC (Natural Language Processing) system
(Ballard & Bierman, 1979) was designed to process
data stored in matrices or tables. It enables a
computer user to type English commands into a
display terminal and watch them executed on the
screen. A more recent example of the same idea is
NaturalJava system (Price et al., 2000). Its interface
accepts English sentences as input and generates the
Java source code to execute the sentences. Both
systems are very limited because input must be in a
restricted algorithmic fashion. Higher semantic level
sentences are not allowed.
Some approaches, such as OAA (Open Agent
Architecture) (Cheyer & Martin, 2001) and SOTA
(Tsai et al., 2003), have worked with software
components and agents to get a higher level of
abstraction. OAA is a framework for constructing
agent-based systems that makes it possible for
software services to be provided through the
cooperative efforts of distributed collections of
agents. OAA provides an interface that accepts
English sentences as input that are converted to ICL
(Interagent Communication Language), a Prolog-
based language. ICL is used, by the agents, to
communicate with each other and to register their
capabilities with a facilitator agent. The facilitator is
responsible for matching ICL requests to choose the
most suitable agents to execute these requests.
SOTA is an office task automation framework
that uses web services, ontology, and software
agents to create an integrated service platform that
provides user-centric support for automating intranet
office tasks. SOTA can take plain English text
sentences as input and serve users with a single and
integrate user-interface form to access web services,
thus avoiding the need to access each distributed
service manually. SOTA performs its tasks in three
phases: first it parses user input sentences to identify
possible web services using an ontology, next it
prepares most of the input data fields the services
requires, and, finally, it combines related services to
define a single task flow.
Such as OAA and SOTA, our work aims to use a
restricted natural language interface to describe user
requisitions and software components to execute
these requisitions. One of the major differentials of
our approach is that the natural language requisitions
are first converted to an interlingua (UNL (Ushida &
Zhu, 2001)), and then the requisitions are analyzed
and the appropriated component methods are called
(to process the requisitions). References to systems
that convert user requisitions into an interlingua and
use that interlingua semantic information to choose
the appropriated software components have not been
found in the literature.
3 THE UNL PROJECT
The UNL project started in 1996 and currently
embraces several universities and research
institutions in the world. The project proposed an
interlingua, entitled Universal Networking Language
(UNL), which has sufficient expressive power to
represent relevant information conveyed by natural
languages. For each natural language, two systems
should be developed: a "Deconverter" capable of
translating texts from UNL to this natural language,
and an "Enconverter" which has to convert natural
language texts into UNL.
UNL represents sentences using three elements
(UNL Center, 2003):
• Universal Words (UWs): Each UW relates to a
concept and is represented as an English word
that can be optionally supplied with semantic
specifications to restrict its meaning. The
following are examples of UWs: book,
book(icl>publication), book(icl>reserve). In the
EXECUTION OF IMPERATIVE NATURAL LANGUAGE REQUISITIONS BASED ON UNL INTERLINGUA AND
SOFTWARE COMPONENTS
255