blob: c9839edcf9d38fb9a841c407f51cb3592b37f94e [file] [log] [blame]
<?xml version="1.0"?>
<document url="./intro.xml">
<!--
Copyright 2004 The Apache Software Foundation.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Todos:
Change all instances of {your-name} with your name, this is
for things such as document author and list of contributors.
If you are doing a release of the taglib, replace {release-version}
with the version of the taglib.
For a news item, replace date="MM/DD/YYYY" with the date.
-->
<properties>
<author>Rahul Akolkar</author>
<title>The Jakarta-Taglibs Project: Reusable Dialog Components (RDC) Tag Library</title>
</properties>
<body>
<section name="Reusable Dialog Components (RDC) Tag Library" href="Welcome">
<p>
JSP-2.0 Reusable Dialog Components (RDC) ---
a framework for creating JSP taglibs that
aid in rapid development of voice and multimodal applications.
</p>
<h2>Project Motivation</h2>
<p>
Server-side generation of HTML has proven an effective way of
generating the user interface for visual Web applications that
are implemented using server-side application frameworks such
as Struts. Over time, the effort involved in such HTML
generation has been reduced by the availability of various JSP
tag libraries that abstract away the minutiae of HTML
markup. The goal of the RDC project is to achieve for voice
applications what JSP tag libraries have already achieved in
the world of visual Web applications.</p>
<p>
The voice application space is seeing rapid growth with the
maturation of speech technologies along with the arrival of a
stable and robust voice programming model as defined in the
<a href="http://www.w3.org/TR/2004/REC-voicexml20-20040316/">W3C
VoiceXML 2.0 REC</a>. A necessary next step in mainstreaming the
development of server-side voice applications within
environments like Tomcat is the availability of the appropriate
tag libraries that help isolate the JSP developer from the
intricacies of spoken interaction. The goal is to help package
specialized speech design skills in the form of JSP tag
libraries that make it possible for JSP developers to easily
speech-enable Web applications.
</p>
<h2>Project Overview</h2>
<p>
The RDC taglib project provides the following pieces:
<itemizedlist>
<listitem>
<p>A small collection of speech dialog components that aid in basic user interaction.</p>
</listitem>
<listitem>
<p> A collection of sample applications that demonstrate the use of these components.</p>
</listitem>
<listitem>
<p>An extensible JSP-2.0 framework for implementing additional speech components that can collaborate in producing complex spoken interaction.</p>
</listitem>
</itemizedlist>
All functionality is implemented either directly as JSP2.0
<literal>tagx</literal> files, or as Java classes that implement
the equivalent JSP2 tag implementation interfaces. Dialog
components come with speech grammars authored as
<literal>srgs</literal> files, a set of default prompts, and the
associated Java beans that implement validation of the data collected by that component.
</p>
<p>The code is under active development, and we are continuing to evolve and enrich the basic framework as we exercise the presently available functionality by authoring new components and by using these components in real-world voice applications.
</p>
<p>All components in the RDC taglib produce VoiceXML 2.0 that can be served to any VoiceXML 2.0 compliant voice browser.
The generated applications can be deployed to a standard Tomcat server and be accessed by a VoiceXML 2.0 compliant voice browser.
</p>
<h2>Requirements</h2>
<p>
This tag library requires JSP 2.0 support
and has been developed on Tomcat 5.0.
It depends on the following libraries from the Apache project:
<simplelist>
<member>jstl.jar and standard.jar ---JSTL 1.0</member>
<member>jsp-api.jar ---for building custom tags</member>
<member>commons-el.jar --- for delayed EL evaluation</member>
<member>struts.jar, commons-digester.jar and commons-beanutils.jar --- for struts examples</member>
</simplelist>
A majority of the tags implemented by this tag library have been
created as <literal>.tag</literal> files.
Tag handlers implemented in Java extend JSP-2.0's
<literal>SimpleTagSupport</literal>.
</p>
</section>
<section name="RDC News" href="News">
<news>
<newsitem date="02/25/2005">
The Music Store sample application is now multi-channel (Speech + small device GUI)!
</newsitem>
<newsitem date="02/12/2005">
Check out the RDC based Music Store sample application (uses Amazon Web Services)!
</newsitem>
<newsitem date="01/24/2005">
Check out the new features in the RDC pre beta release!
</newsitem>
<newsitem date="09/10/2004">
Check out the new Reusable Dialog Components (RDC) taglib!
</newsitem>
</news>
</section>
<section name="Documentation" href="Documentation">
<p>For more information about the Reusable Dialog Components (RDC) Tag Library,
look at the on-line documentation:
<ul>
<!-- Uncomment the below and modify as needed when doing a release
<li>
View the current release <a href="{release-name}/index.html">
RDC 1.0 Beta 1 Taglib Documentation</a></li>
-->
<li>
View the development version of the <a href="index.html">
RDC Taglib Documentation</a>
</li>
</ul>
</p>
<p>For information on how to use the distributions,
look at the following documentation:
<ul>
<li>Using the Jakarta-Taglibs
<a href="http://jakarta.apache.org/taglibs/binarydist.html">
Binary Distribution</a>
</li>
<li>Using the Jakarta-Taglibs
<a href="http://jakarta.apache.org/taglibs/sourcedist.html">
Source Distribution</a>
</li>
</ul>
</p>
</section>
<section name="Download" href="Download">
<p>Download a binary distribution of the Reusable Dialog
Components (RDC) Tag Library
<ul>
<!-- Uncomment the below and modify as needed when doing a release
<li>
Download the RDC Tag Library 1.0 Beta 1 release from an
<a href="http://jakarta.apache.org/site/binindex.cgi#Release%20Builds">
Apache Jakarta Project Mirror</a>
</li>
-->
<li>
Download the Reusable Dialog Components (RDC) Tag Library
<a href="http://jakarta.apache.org/builds/jakarta-taglibs-sandbox/nightly/projects/rdc/">
nightly development build</a> (contains RDC taglib binary files)
</li>
</ul>
</p>
<p>The following sandbox distributions are available for download:
<ul>
<li>
Download
<a href="http://jakarta.apache.org/builds/jakarta-taglibs-sandbox/nightly/src/">
Jakarta-Taglibs Sandbox Source</a> (contains RDC taglib source files)
</li>
<li>
Download entire
<a href="http://jakarta.apache.org/builds/jakarta-taglibs-sandbox/nightly">
Jakarta-Taglibs Sandbox Distribution</a>
</li>
</ul>
</p>
<p>The following distributions are also available for download:
<ul>
<li>
Download
<a href="http://jakarta.apache.org/builds/jakarta-taglibs/nightly/src/">
Jakarta-Taglibs Source</a>
</li>
<li>
Download entire
<a href="http://jakarta.apache.org/builds/jakarta-taglibs/nightly">
Jakarta-Taglibs Distribution</a>
</li>
</ul>
</p>
</section>
<section name="Contributors" href="Contributors">
<p>List of contributors:</p>
<ul>
<li>Rahul Akolkar</li>
</ul>
</section>
</body>
</document>