DCG-NL
Purpose
Translates natural language (English, French) into OAA's ICL queries
using a Prolog DCG-based parser. Vocabulary and grammatical rules
may be distributed, with each agent dynamically contributing linguistic
information on connection.
Description
Most interfaces call convert_to_LF() with a natural language sentence, and then
post the resulting logical form to the Facilitator for execution by a set of agents.
Occasionally, it is useful to break this process into two steps, first creating
a parse tree (nl_sentence) and then translating the parse tree afterwards into
an executable LF (nl_translate); an example of this would be in a dialog box
when you may need to translate individual fields and then piece them together
by hand into a larger lexical structure.
Words can be dynamically added to the system by using the OAA's bb_write
to send appropriate lexical definitions to the Facilitator. This process is
automated by LEAP, the lexical tool in the Agent Development Toolkit.
DCG-NL's syntactic rules can be extended by defining solvables
for nl_sentence_ext and nl_translate_ext for a particular domain.
Entry points to syntactic structures (nl_conditional, nl_imperative, ...)
are provided for use by nl_sentence_ext().
ICL Solvables
- convert_to_LF(Sentence,LogicalForm)
- nl_conditional(ParseTree,Words,Rest)
- nl_imperative(ParseTree,Words,Rest)
- nl_sentence(Sentence, ParseTree)
- nl_statement(ParseTree,Words,Rest)
- nl_translate(ParseTree, LogicalForm)
Information
Author: Adam Cheyer
Version: 1.0
Language: Prolog (Text-based, UNIX)
Availability
Available for SRI International internal use only.
Adam Cheyer < cheyer@ai.sri.com>
01-29-1996