| System
Diagram
The System
Architecture of our YAG implementation is shown below.
The Core YAG
The Knowledge Representation Realizer
(surface-2) realizes a knowledge representation into an appropriate feature
structure. Its input contains two parts: a semantic network that represents
content, and a set of control features that provides supporting information
and optional syntactic constraints.
Some of these control features are used by YAG to select the appropriate
template, the remainder are used to select options within a template.
The Feature Structure Realizer (surface-1)
realizes a feature structure into a surface text. This feature structure
specifies the template to be used along with other features and their values.
In addition, this layer will use defaults to specify any missing values
in a feature structure input.
The Template Manager stores a template
into a specified library, and retrieves template structures for the Knowledge
Representation Realizer and the Feature Structure Realizer. If a template
has multiple names, these names (template aliases) will be maintained by
the
Template Manager.
The Knowledge Base
There are two types of knowledge
bases in YAG; domain dependent and domain independent. The domain dependent
knowledge base includes the Mapping Table and Domain Template Libraries.
The domain independent knowledge base includes the Syntactic
Template Library and the Lexicon.
The Mapping Table is used to map
a knowledge representation to its associated template. The Knowledge Representation
Realizer will access a mapping table with selected control features to
pick to an appropriate template when realizing a text from a knowledge
representation.
The Domain Template Libraries contain
templates that are specific to a particular application. Developers can
author their own templates when necessary by manually editing a text file
that contains templates in any text editors. However, YAG also comes with
TATTOO (The Template Authoring and Testing Tool) which is a program that
allows a knowledge engineer to author and test templates in a graphical
environment.
A template can reuse existing templates
(including ones in the Syntactic Template Library). These templates can
serve applications that have special information presentation needs, such
as those in scientific information and weather reports.
The Syntactic Template Library contains
templates that are used as a grammar of English, such as clause, noun-phrase,
and pronoun template. Other templates can embed these templates to form
more complex structures. They can be combined with templates from the Domain
Template Library.
The Lexicon contains word level information.
Templates can access the lexicon directly with a template rule. YAG includes
lexical functions to inflect a given verb according to verb features (e.g.
tense, person, and aspect), and to generate the singular or plural form
of a noun. Additional lexicon functions can be coded if required.
|