<?xml version="1.0"?>

<!DOCTYPE document SYSTEM "./dtd/document-v10.dtd">

<document>
 <header>
  <title>Cocoon JARs</title>
  <authors>
   <person name="John Morrison" email="john.morrison@uk.experian.com"/>
  </authors>
 </header>

 <body>

 <s1 title="What, why and when...">
  <p>This is a list of the available Jars, what they are, where they come from,
   and what they do.</p>

  <table>
   <tr>
     <th>Jar name</th>
     <th>Description</th>
     <th>Required by Cocoon</th>
     <th>Matchers</th>
     <th>Selectors</th>
     <th>Generators</th>
     <th>Serializers</th>
     <th>Actions</th>
     <th>Transformations</th>
     <th>Comment</th>
   </tr>
   <tr>
     <td><link href="http://jakarta.apache.org/avalon/excalibur/">avalon-excalibur</link></td>
     <td>Part of jakarta-avalon, it is a set of classes and patterns that
       support high level server development.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
   </tr>
   <tr>
     <td><link href="http://jakarta.apache.org/avalon/framework/">avalon-framework</link></td>
     <td>Part of jakarta-avalon, it is a set of classes and patterns that
       support high level server development.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/axis/">axis</link></td>
     <td>Apache SOAP implementation</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Is this used outside of the Cocoon samples?</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/axis/">axis-samples</link></td>
     <td>Samples from the AXIS project</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Is this used outside of the Cocoon samples?</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/batik/">batik-libs</link></td>
     <td>Batik is a Java based toolkit for applications which handle images in
       the Scalable Vector Graphics (SVG) format for various purposes, such as
       viewing, generation or manipulation.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td>svg2jpeg, svg2png</td>
     <td/>
     <td/>
     <td/>
   </tr>
   <tr>
     <td><link href="http://oss.software.ibm.com/developerworks/projects/bsf">bsf</link></td>
     <td>The Bean Scripting Framework (BSF) is an architecture for
       incorporating scripting into, and enabling scripting against, Java
       applications and applets. Using BSF, an application can use scripting,
       and become scriptable, against any BSF-supported language. When BSF
       supports additional languages, the application will automatically
       support the additional languages.</td>
     <td>No</td>
     <td/>
     <td/>
     <td>script</td>
 	  <td/>
     <td/>
     <td/>
     <td>I <em>believe</em> that this project is in talks with Apache to be
       &apos;adopted&apos;.</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/cocoon2/">cocoon</link></td>
     <td>Apache Cocoon is a 100% pure Java publishing framework that relies on
       new W3C technologies (such as XML, XSL, SVG, etc..) to provide web
       content.</td>
     <td>Yes!</td>
     <td>All</td>
     <td>All</td>
     <td>All</td>
 	  <td>All</td>
     <td>All</td>
     <td>All</td>
     <td>Delete this == no webapp!</td>
   </tr>
   <tr>
     <td>dom2</td>
     <td>W3C DOM interfaces.</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
     <td>?</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/fop/">fop</link></td>
     <td>FOP is a Java application that reads a formatting object tree
       conforming to the XSL candidate release and then turns it into a PDF
       document or allows you to preview it directly on screen.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td>fo2pdf</td>
     <td/>
     <td/>
     <td/>
   </tr>
   <tr>
     <td><link href="http://hsqldb.sourceforge.net/">hsqldb</link></td>
     <td>hsqldb is a relational database engine written in Java, with a JDBC
       driver, supporting a subset of ANSI-92 SQL. It offers a small, fast
       database engine which offers both in memory and disk based tables.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Used in the demos to provide a database.</td>
   </tr>
   <tr>
     <td><link href="http://jakarta.apache.org/regexp/">jakarta-regexp</link></td>
     <td>Regexp is a Java Regular Expression package that	was graciously
       donated to the Apache Software Foundation by Jonathan Locke.</td>
     <td>No</td>
     <td>RegexpTargetHostMatcherFactory, regexp</td>
     <td/>
     <td>directory</td>
     <td/>
     <td>AbstractValidatorAction</td>
     <td/>
     <td/>
   </tr>
   <tr>
     <td>javac</td>
     <td>Java Compiler.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Sitemap/xsp compilation.  Can be replaced by another Java compiler,
       for example, <link href="http://oss.software.ibm.com/developerworks/opensource/jikes/">Jikes</link>.</td>
   </tr>
   <tr>
     <td><link href="http://java.sun.com/products/jimi/">jimi</link></td>
     <td>Jimi is a class library for managing images. Its primary function is
       image I/O.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Used by FOP?</td>
   </tr>
   <tr>
     <td><link href="http://www.redrival.com/greenrd/java/jstyle/">jstyle</link></td>
     <td>This program formats Java code with consistent indentation and so
       forth, to make it easier to read and maintain.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>XSP code formatting?</td>
   </tr>
   <tr>
     <td><link href="http://www.junit.org/">junit</link></td>
     <td>JUnit is a simple framework to write repeatable tests.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Not used anywhere?  Either in the build *or* sample?!?</td>
   </tr>
   <tr>
     <td><link href="http://jakarta.apache.org/avalon/logkit/">logkit</link></td>
     <td>jakarta-avalon-logkit is a logging toolkit designed for secure
       performance orientated logging in applications.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>Cocoon logging.</td>
   </tr>
   <tr>
     <td><link href="http://www.weft.co.uk/library/maybeupload/">maybeupload</link></td>
     <td>MaybeUpload is a Java language package intended to make it much easier
       to write Servlets to handle RFC1867 file upload.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>File upload capability</td>
   </tr>
   <tr>
     <td><link href="http://www.mozilla.org/rhino/">rhino</link></td>
     <td>Rhino is an implementation of JavaScript in Java.</td>
     <td>No</td>
     <td/>
     <td/>
     <td>ScriptGenerator</td>
     <td/>
     <td/>
     <td/>
     <td/>
   </tr>
   <tr>
     <td><link href="http://lempinen.net/sami/jtidy/">tidy</link></td>
     <td>Tidy is a HTML syntax checker and pretty printer.</td>
     <td>No</td>
     <td/>
     <td/>
     <td>html</td>
     <td/>
     <td/>
     <td/>
     <td>Shouldn't this jar be jTidy?</td>
   </tr>
   <tr>
     <td><link href="http://jakarta.apache.org/velocity/">velocity</link></td>
     <td>Velocity is a general purpose template engine written in Java.</td>
     <td>No</td>
     <td/>
     <td/>
     <td>velocity</td>
     <td/>
     <td/>
     <td/>
     <td>Does this jar <strong>need</strong> to include within it other
       projects?</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/xalan/">xalan</link></td>
     <td>Xalan is an XSLT processor that fully supports the W3C specs.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>XSL transformations - can be replaced by another XSLT processor.</td>
   </tr>
   <tr>
     <td><link href="http://xml.apache.org/xerces-j/">xerces</link></td>
     <td>Xerces is an XML parser.</td>
     <td>Yes</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>XML parsing - can be replaced by another XML parser.</td>
   </tr>
   <tr>
     <td><link href="http://www.jclark.com/xml/xt.html">xt</link></td>
     <td>XT is an implementation in Java of XSLT.</td>
     <td>No</td>
     <td/>
     <td/>
     <td/>
     <td/>
     <td/>
     <td>XTTransformer</td>
     <td>? why have xt <strong>and</strong> xalan.  Has this not been
       superseeded by the TraxTransformer ?</td>
   </tr>
  </table>
 </s1>
</body>
</document>
