|
Welcome
to YAG project homepage.
YAG (Yet Another Generator) is a
natural language generator that employs a template-based approach. Traditional
template-based approaches rely on slot-filling or
variable replacement mechanism.
YAG extends the approach by allowing templates to
embed several types of control expressions,
in addition to simple string values. The
users can specify canned-texts,
general templates, and a grammar with the same
formalism. Moreover templates are
separated from programs that execute them,
yielding portability and reusability
to the approach.
YAG accepts two kinds of input structure;
a feature structure and a knowledge
representation. A feature structure
is a kind of input that is independent of application
domains. It allows the generation
of text from any applications regardless of domains. A
knowledge representation input is
specific to some applications that employ the same
knowledge representation. In the
current distribution, YAG comes with a component
that can generate a text from a
knowledge representation used by SNePS (The
Semantic Network Processing System).
Basically this component performs a mapping
from a knowledge representation
to a feature structure. Applications that use other
kinds of knowledge representation
system are required to implement their own
component that would do the same
thing. YAG's Knowledge Representation Realizer
should serve as an example on how
to do this. |