You are viewing a plain text version of this content. The canonical link for it is here.
Posted to svn@forrest.apache.org by cr...@apache.org on 2005/04/11 16:59:16 UTC

svn commit: r160895 [23/28] - in forrest/site/0.7: ./ docs/ docs/howto/ docs/images/ docs/plugins/

Added: forrest/site/0.7/docs/menu-index.html
URL: http://svn.apache.org/viewcvs/forrest/site/0.7/docs/menu-index.html?view=auto&rev=160895
==============================================================================
--- forrest/site/0.7/docs/menu-index.html (added)
+++ forrest/site/0.7/docs/menu-index.html Mon Apr 11 07:58:59 2005
@@ -0,0 +1,243 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<div id="menu">
+<ul>
+<li>
+<h1>Documentation</h1>
+<ul>
+    
+<li>
+<div class="current">Overview</div>
+</li>
+    
+<li>
+<a href="../docs/faq.html">FAQs</a>
+</li>
+    
+<li>
+<a href="../docs/changes.html">Changes</a>
+</li>
+    
+<li>
+<a href="../docs/todo.html">Todo</a>
+</li>
+    
+<li>
+<a href="../docs/your-project.html">Using Forrest</a>
+</li>
+    
+<li>
+<a href="../docs/validation.html">XML Validation</a>
+</li>
+    
+<li>
+<a href="../docs/linking.html">Menus and Linking</a>
+</li>
+    
+<li>
+<a href="../docs/searching.html">Searching</a>
+</li>
+    
+<li>
+<a href="../docs/skins.html">Default Skins</a>
+</li>
+    
+<li>
+<a href="../docs/skin-package.html">Skin Packages</a>
+</li>
+    
+<li>
+<a href="../docs/plugins/usingPlugins.html">Plugins</a>
+</li>
+    
+<li>
+<a href="../docs/views.html">Views-dev</a>
+</li>
+    
+    
+<li>
+<a href="../docs/forrest-contract.html">Our Contract</a>
+</li>
+    
+<li>
+<a href="../docs/compliance.html">Standards Compliance</a>
+</li>
+
+    
+<li>
+<h1>Advanced Topics</h1>
+<ul>
+      
+<li>
+<a href="../docs/build.html">Building Forrest</a>
+</li>
+      
+<li>
+<a href="../docs/catalog.html">Using DTD Catalogs</a>
+</li>
+      
+<li>
+<a href="../docs/sitemap-ref.html">Sitemap Reference</a>
+</li>
+      
+<li>
+<a href="../docs/project-sitemap.html">Project sitemap</a>
+</li>
+      
+<li>
+<a href="../docs/plugins/pluginInfrastructure.html">Plugin Infrastructure</a>
+</li>
+      
+<li>
+<a href="../docs/cap.html">Sourcetype Action</a>
+</li>
+    
+</ul>
+</li>
+
+    
+<li>
+<h1>Other versions</h1>
+<ul>
+      
+<li>
+<a href="../docs.html">Overview</a>
+</li>
+      
+<li>
+<a href="http://forrest.apache.org/docs/../0.8/">0.8-dev</a>
+</li>
+      
+<li>
+<div class="current">0.7 (current)</div>
+</li>
+      
+<li>
+<a href="http://forrest.apache.org/docs/../0.6/">0.6</a>
+</li>
+    
+</ul>
+</li>
+    
+    
+<li>
+<h1>Upgrading</h1>
+<ul>
+      
+<li>
+<a href="../docs/upgrading_07.html">Upgrading to 0.7</a>
+</li>
+      
+<li>
+<a href="../docs/upgrading_06.html">Upgrading to 0.6</a>
+</li>
+      
+    
+</ul>
+</li>
+
+    
+<li>
+<h1>SubProjects</h1>
+<ul>
+      
+<li>
+<a href="../docs/forrestbar.html">ForrestBar</a>
+</li>
+      
+<li>
+<a href="../docs/forrestbot.html">Forrestbot</a>
+</li>
+      
+<li>
+<a href="../docs/forrestbot-web-interface.html">Forrestbot Webapp</a>
+</li>
+    
+</ul>
+</li>
+    
+    
+<li>
+<h1>Reference docs</h1>
+<ul>
+      
+<li>
+<h1>DTD documentation</h1>
+<ul>
+        
+<li>
+<a href="../docs/dtd-docs.html">Overview</a>
+</li>
+        
+<li>
+<a href="../docs/document-v20.dtdx.html">document-v20</a>
+</li>
+        
+<li>
+<a href="../docs/howto-v20.dtdx.html">howto-v20</a>
+</li>
+        
+<li>
+<a href="../docs/faq-v20.dtdx.html">faq-v20</a>
+</li>
+        
+<li>
+<a href="../docs/document-v13.dtdx.html">document-v13</a>
+</li>
+        
+<li>
+<a href="../docs/howto-v13.dtdx.html">howto-v13</a>
+</li>
+        
+<li>
+<a href="../docs/faq-v13.dtdx.html">faq-v13</a>
+</li>
+      
+</ul>
+</li>
+      
+<li>
+<h1>Doc samples</h1>
+<ul>
+        
+        
+        
+<li>
+<a href="../docs/document-v13.html">document-v13</a>
+</li>
+        
+<li>
+<a href="../docs/document-v20.html">document-v20</a>
+</li>
+      
+</ul>
+</li>
+    
+</ul>
+</li>
+
+    
+<li>
+<h1>Older Docs</h1>
+<ul>
+      
+<li>
+<a href="../docs/primer.html">Forrest Primer</a>
+</li>
+      
+<li>
+<a href="../docs/libre-intro.html">Libre</a>
+</li>
+      
+<li>
+<a href="../docs/dreams.html">Dream list</a>
+</li>
+    
+</ul>
+</li>
+
+    
+  
+</ul>
+</li>
+</ul>
+</div>

Propchange: forrest/site/0.7/docs/menu-index.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: forrest/site/0.7/docs/plugins/pluginInfrastructure.html
URL: http://svn.apache.org/viewcvs/forrest/site/0.7/docs/plugins/pluginInfrastructure.html?view=auto&rev=160895
==============================================================================
--- forrest/site/0.7/docs/plugins/pluginInfrastructure.html (added)
+++ forrest/site/0.7/docs/plugins/pluginInfrastructure.html Mon Apr 11 07:58:59 2005
@@ -0,0 +1,588 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.7-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<meta-data></meta-data>
+<title>Plugin Infrastructure (v0.7)</title>
+<link type="text/css" href="../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../skin/profile.css" rel="stylesheet">
+<script src="../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="../../images/apache-forrest.png" title="The Apache Software Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="../../images/project-logo.gif" title="Apache Forrest"></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google:');" value="Search the site with google:" size="25" name="q" id="query" type="text">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../index.html">Welcome</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../contrib.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../docs/index.html">0.7 Docs</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../docs/howto/index.html">0.7 How-To</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs">
+<a class="base-not-selected" href="../..">Core</a> | <a class="base-not-selected" href="../..">ForrestBot</a> | <a class="base-not-selected" href="../..">ForrestBar</a>
+</div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript" language="JavaScript"><!--
+              document.write("Published: " + document.lastModified);
+              //  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Documentation</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a title="" href="../../docs/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq.html">FAQs</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/changes.html">Changes</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/todo.html">Todo</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/your-project.html">Using Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/validation.html">XML Validation</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/linking.html">Menus and Linking</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/searching.html">Searching</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/skins.html">Default Skins</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/skin-package.html">Skin Packages</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/plugins/usingPlugins.html">Plugins</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/views.html">Views-dev</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrest-contract.html">Our Contract</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/compliance.html">Standards Compliance</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.15', '../../skin/')" id="menu_selected_1.1.15Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Advanced Topics</div>
+<div id="menu_selected_1.1.15" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a title="" href="../../docs/build.html">Building Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/catalog.html">Using DTD Catalogs</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/sitemap-ref.html">Sitemap Reference</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/project-sitemap.html">Project sitemap</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Plugin Infrastructure</div>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/cap.html">Sourcetype Action</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.16', '../../skin/')" id="menu_1.1.16Title" class="menutitle">Other versions</div>
+<div id="menu_1.1.16" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://forrest.apache.org/docs/../0.8/">0.8-dev</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/index.html">0.7 (current)</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://forrest.apache.org/docs/../0.6/">0.6</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.17', '../../skin/')" id="menu_1.1.17Title" class="menutitle">Upgrading</div>
+<div id="menu_1.1.17" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/upgrading_07.html">Upgrading to 0.7</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/upgrading_06.html">Upgrading to 0.6</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.18', '../../skin/')" id="menu_1.1.18Title" class="menutitle">SubProjects</div>
+<div id="menu_1.1.18" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/forrestbar.html">ForrestBar</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrestbot.html">Forrestbot</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrestbot-web-interface.html">Forrestbot Webapp</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.19', '../../skin/')" id="menu_1.1.19Title" class="menutitle">Reference docs</div>
+<div id="menu_1.1.19" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.1.19.1', '../../skin/')" id="menu_1.1.19.1Title" class="menutitle">DTD documentation</div>
+<div id="menu_1.1.19.1" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/dtd-docs.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v20.dtdx.html">document-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/howto-v20.dtdx.html">howto-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq-v20.dtdx.html">faq-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v13.dtdx.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/howto-v13.dtdx.html">howto-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq-v13.dtdx.html">faq-v13</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.19.2', '../../skin/')" id="menu_1.1.19.2Title" class="menutitle">Doc samples</div>
+<div id="menu_1.1.19.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/document-v13.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v20.html">document-v20</a>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.20', '../../skin/')" id="menu_1.1.20Title" class="menutitle">Older Docs</div>
+<div id="menu_1.1.20" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/primer.html">Forrest Primer</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/libre-intro.html">Libre</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/dreams.html">Dream list</a>
+</div>
+</div>
+</div>
+<div id="credit">
+<hr>
+    This is documentation for current release v0.7
+   (<a href="http://forrest.apache.org/docs.html">More</a> ...)</div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="pluginInfrastructure.pdf"><img alt="PDF -icon" src="../../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">
+	        Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
+<h1>Plugin Infrastructure</h1>
+<div id="motd-area">
+    This is documentation for current release v0.7
+   (<a href="http://forrest.apache.org/docs.html">More</a> ...)</div>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#overview">Overview</a>
+</li>
+<li>
+<a href="#What+is+a+Forrest+Plugin%3F">What is a Forrest Plugin?</a>
+<ul class="minitoc">
+<li>
+<a href="#pluginTypes">Types of Plugin</a>
+<ul class="minitoc">
+<li>
+<a href="#inputPlugins">Input Plugins</a>
+</li>
+<li>
+<a href="#outputPlugins">Output Plugins</a>
+</li>
+<li>
+<a href="#internalPlugins">Internal Plugins</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#Naming+Conventions">Naming Conventions</a>
+</li>
+<li>
+<a href="#An+Example+Plugin">An Example Plugin</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#What+Does+a+Forrest+Plugin+Look+Like%3F">What Does a Forrest Plugin Look Like?</a>
+<ul class="minitoc">
+<li>
+<a href="#The+IMS+Manifest+Plugin">The IMS Manifest Plugin</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#How+does+Installation+work%3F">How does Installation work?</a>
+</li>
+</ul>
+</div>
+    
+<a name="N1000D"></a><a name="overview"></a>
+<h2 class="underlined_10">Overview</h2>
+<div class="section">
+<p>Forrest can be extended with the addition of plugins. This document
+      describes what a plugin is and outlines the plugin infrastructure so
+      that you can start building your own Forrest extensions.</p>
+<div class="frame warning">
+<div class="label">Warning</div>
+<div class="content">The Plugin Infrastructure is still at an early stage of design 
+      and implementation, consequently this document <em>may</em> be out of date.
+      If you are having problems with any of the details, please search for help
+      on the developer mailing list. If you can't find your answer ask
+      for help on that list.</div>
+</div>
+</div>
+      
+    
+<a name="N1001D"></a><a name="What+is+a+Forrest+Plugin%3F"></a>
+<h2 class="underlined_10">What is a Forrest Plugin?</h2>
+<div class="section">
+<p>A Forrest plugin is a set of resources and configuration files that 
+      extend the functionality of Forrest. They will typically consist of a 
+      sitemap, zero or more stylesheets and zero or more schemas.</p>
+<p>The plugins sitemap is mounted by Forrest's sitemap after the project 
+      specific sitemap but before the Forrest default matchers. This allows 
+      a plugin to override/extend default Forrest behaviour. By adopting a 
+      plugin model we can keep the core of Forrest tightly 
+      focused on the basic functionality, whilst still facilitating extensions 
+      to suit individual projects needs.</p>
+<a name="N10029"></a><a name="pluginTypes"></a>
+<h3 class="underlined_5">Types of Plugin</h3>
+<p>There are three types of plugin, <span class="codefrag">input</span>,
+        <span class="codefrag">output</span> and <span class="codefrag">internal</span>. Each plugin has a 
+        specific role to play and extends a different part of Forrest:</p>
+<pre class="code">
+                            internal plugins
+                       (site.xml, abs-linkmap etc.)
+                                   |
+                                  \|/
+                                   .
+          input format --&gt; intermediate format --&gt; output format 
+                        .                       .
+                       /|\                     /|\
+                        |                       |
+                   input plugin            output plugin
+                     (**.xml)         (**.html, **.pdf etc.) 
+</pre>
+<a name="N1003F"></a><a name="inputPlugins"></a>
+<h4>Input Plugins</h4>
+<p>Input plugins provide a new source format. For example, the
+          OpenOffice.org plugin extends Forrest to allow the use of
+          OpenOffice.org Application file formats.</p>
+<p>An input plugin provides an <span class="codefrag">input.xmap</span> file. 
+          This provides the source matchers (i.e. **.xml), it is 
+          mounted in forrest.xmap before the default forrest **.xml behaviour 
+          and therefore can override that default behaviour but it will not 
+          interfere with any internal Forrest infrastructure matches, or any 
+          other plugins infrastructure matches.</p>
+<p>An input plugin may also provide a <span class="codefrag">resources.xmap</span>
+          file. This can be used to match additional resources that are not 
+          stored in XML files, for example, javascript files.</p>
+<a name="N10055"></a><a name="outputPlugins"></a>
+<h4>Output Plugins</h4>
+<p>Output plugins provide a new output format. For example, the
+          s5 plugin extends Forrest to produce HTML slides from Forrest
+          documents.</p>
+<p>An output plugin provides an <span class="codefrag">output.xmap</span> file.
+          This provides the relevant output matchers (i.e. 
+          **.html, **.pdf, **.slides), it is mounted before any of the default 
+          matchers for Forrest and so can override this default behaviour.</p>
+<a name="N10065"></a><a name="internalPlugins"></a>
+<h4>Internal Plugins</h4>
+<p>Internal plugins are for advanced use only. They provide ways 
+          of extending or overriding Forrest's
+          internal operations. For example, the IMSManifest plugin
+          allows Forrest projects to use an IMS Manifest file instead of 
+          a site.xml and tabs.xml configuration files.</p>
+<p>Internal plugins provide an <span class="codefrag">internal.xmap</span> file. 
+          This provides the infrastructure matchers (i.e. 
+          site.xml, faq.xml, issues.xml), and will be mounted before 
+          *any* of the Forrest matches. This sitemap can override any behaviour 
+          within Forrest and so developers of these plugins must be especially
+          careful with the construction of their matchers, since they will be
+          processed before any other matchers and consequently can easily break
+          existing functionality. You must only do a &lt;map:generate ...&gt;
+          if you are certain you are going to process the full result. </p>
+<a name="N10076"></a><a name="Naming+Conventions"></a>
+<h3 class="underlined_5">Naming Conventions</h3>
+<p>Technically you can name a plugin anything you like. However, we
+        do have some naming conventions that we recomend you follow. This is
+        to minimise the chances of collision between plugins from different
+        developers.</p>
+<p>The name should be structured like a java package name, and should
+        include a relevant reverse domain name. For example:</p>
+<pre class="code">org.apache.forrest.plugin.PLUGINNAME</pre>
+<pre class="code">net.sf.forrestPlugins.PLUGINNAME</pre>
+<p>In addition the name of the plugin should indicate the type of plugin
+        it is:</p>
+<pre class="code">NAME-input</pre>
+<pre class="code">NAME-output</pre>
+<pre class="code">NAME-internal</pre>
+<a name="N1009A"></a><a name="An+Example+Plugin"></a>
+<h3 class="underlined_5">An Example Plugin</h3>
+<p>In order to fully understand the applicability of Forrest Plugins we 
+        will consider an extension to the way in which Forrest defines the 
+        structure of the site. By default Forrest uses a site.xml file to 
+        define navigation through the site and a tabs.xml file to define the 
+        tabs across the top of the page. But what if we want to use a different
+        file to describe site structure? For example, what if we want to use an
+        IMS Manifest file from the SCORM content package standards 
+        (http://www.adlnet.org/).</p>
+<p>An IMS Manifest file describes the structure of a site. It is also 
+        possible to define a set of rules for extracting tab information from 
+        such a file. Consequently, it is possible to use an IMSManifest file to 
+        create Forrest's site.xml and tabs.xml files. The advantage would be that
+        we can then use SCORM compliant content objects within Forrest.</p>
+<p>Unfortunately, IMS Manifests are much more complex than site.xml and 
+        tabs.xml files. Therefore, not all users will want to use them. Adding 
+        the functionality as an optional plugin seems to be the ideal 
+        solution.</p>
+</div>
+
+    
+<a name="N100AB"></a><a name="What+Does+a+Forrest+Plugin+Look+Like%3F"></a>
+<h2 class="underlined_10">What Does a Forrest Plugin Look Like?</h2>
+<div class="section">
+<p>Plugins will need to conform to a specified directory structure. 
+      This mirrors the default forrest directory structure:</p>
+<pre class="code">
+[plugin_name]
+  |
+  |-- config files (xmap, skinconf etc.)
+  |
+  |-- resources
+      |
+      |-- schema
+      |   |
+      |   |-- catalog.xcat
+      |   |
+      |   |-- dtd (DTDs etc.)
+      |
+      |-- stylesheets (XSLs etc.)
+</pre>
+<a name="N100B8"></a><a name="The+IMS+Manifest+Plugin"></a>
+<h3 class="underlined_5">The IMS Manifest Plugin</h3>
+<p>If we consider the IMS Manifest Plugin described above, we see that we
+      will need the following files and directory structure:</p>
+<pre class="code">
+org.apache.forrest.plugin.IMSManifest-internal
+  |
+  |-- sitemap.xmap
+  |
+  |-- resources
+      |
+      |-- stylesheets
+                    |
+                    |- imsmanifest2site.xsl
+                    |- imsmanifest2tabs.xsl
+                    |- pathutils.xsl
+                    |- repositoryUtils.xsl
+</pre>
+<p>The sitemap.xmap file will override the default behaviour for the 
+      navigation generation matchers in Forrest, for example, it contains 
+      a matcher as follows:</p>
+<pre class="code">
+&lt;map:match pattern="abs-menulinks"&gt;
+  &lt;map:select type="exists"&gt;
+    &lt;map:when test="{project:content.xdocs}imsmanifest.xml"&gt;
+       &lt;map:generate src="{project:content.xdocs}imsmanifest.xml" /&gt;
+       &lt;map:transform src="resources/stylesheets/imsmanifest2site.xsl"/&gt;
+       &lt;map:transform src="{forrest:stylesheets}/absolutize-linkmap.xsl" /&gt;
+       &lt;map:transform src="{forrest:stylesheets}/site2site-normalizetabs.xsl" /&gt;
+     &lt;map:serialize type="xml"/&gt;
+   &lt;/map:when&gt;
+   &lt;map:when test="{project:content.xdocs}site.xml"&gt;
+      &lt;map:generate src="{project:content.xdocs}site.xml" /&gt;
+      &lt;map:transform src="{forrest:stylesheets}/absolutize-linkmap.xsl" /&gt;
+      &lt;map:transform src="{forrest:stylesheets}/site2site-normalizetabs.xsl" /&gt;
+      &lt;map:transform src="{forrest:stylesheets}/normalizehrefs.xsl"/&gt;
+    &lt;map:serialize type="xml"/&gt;
+  &lt;/map:when&gt;
+  &lt;/map:select&gt;
+&lt;/map:match&gt;
+</pre>
+<div class="frame note">
+<div class="label">Note</div>
+<div class="content">Note that this matcher will default to the behaviour provided by 
+      Forrest if there is no imsmanifest.xml file present in the project.
+      At present it is necessary to copy this default behaviour from the original
+      Forrest *.xmap files. We hope to improve on this in the future.</div>
+</div>
+</div>
+
+  
+<a name="N100D1"></a><a name="How+does+Installation+work%3F"></a>
+<h2 class="underlined_10">How does Installation work?</h2>
+<div class="section">
+<p>When Forrest installs a plugin it downloads a zip of the plugin code and 
+    extracts it into the <span class="codefrag">plugins</span> directory of Forrest and an entry is made 
+    in <span class="codefrag">src/plugins/sitemap.xmap</span>. For example, installing the 
+    IMSManifest plugin described above will result in the following entry 
+    being added to the plugin sitemap:</p>
+<pre class="code">
+&lt;map:select type="exists"&gt;
+  &lt;map:when test="sitemap.xmap"&gt;
+    &lt;map:mount uri-prefix="" 
+      src="sitemap.xmap" 
+      check-reload="yes" 
+      pass-through="true"/&gt;
+  &lt;/map:when&gt;
+&lt;/map:select&gt;
+  </pre>
+<p>Installed plugins are managed by the
+      FORREST_INSTALL_DIR/plugins/sitemap.xmap file. This file is mounted
+      by the main Forrest sitemap with the following code:</p>
+<pre class="code">
+        &lt;map:pipeline internal-only="false"&gt;
+           &lt;map:mount uri-prefix=""
+                      src="{forrest:plugins}/sitemap.xmap"
+                      check-reload="yes"
+                      pass-through="true"/&gt;
+        &lt;/map:pipeline&gt;
+  </pre>
+<div class="frame note">
+<div class="label">Note</div>
+<div class="content">The plugin sitemap.xmap file is automatically managed by Forrest, the 
+      end user need never edit this file.</div>
+</div>
+</div>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+ Copyright &copy; 2002-2005 The Apache Software Foundation.</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Propchange: forrest/site/0.7/docs/plugins/pluginInfrastructure.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: forrest/site/0.7/docs/plugins/pluginInfrastructure.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/0.7/docs/plugins/pluginInfrastructure.pdf?view=auto&rev=160895
==============================================================================
Binary file - no diff available.

Propchange: forrest/site/0.7/docs/plugins/pluginInfrastructure.pdf
------------------------------------------------------------------------------
    svn:mime-type = application/pdf

Added: forrest/site/0.7/docs/plugins/usingPlugins.html
URL: http://svn.apache.org/viewcvs/forrest/site/0.7/docs/plugins/usingPlugins.html?view=auto&rev=160895
==============================================================================
--- forrest/site/0.7/docs/plugins/usingPlugins.html (added)
+++ forrest/site/0.7/docs/plugins/usingPlugins.html Mon Apr 11 07:58:59 2005
@@ -0,0 +1,427 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.7-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<meta-data></meta-data>
+<title>Extending Forrest with Plugins (v0.7)</title>
+<link type="text/css" href="../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../skin/profile.css" rel="stylesheet">
+<script src="../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="../../images/apache-forrest.png" title="The Apache Software Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="../../images/project-logo.gif" title="Apache Forrest"></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google:');" value="Search the site with google:" size="25" name="q" id="query" type="text">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../index.html">Welcome</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../contrib.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../docs/index.html">0.7 Docs</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../docs/howto/index.html">0.7 How-To</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs">
+<a class="base-not-selected" href="../..">Core</a> | <a class="base-not-selected" href="../..">ForrestBot</a> | <a class="base-not-selected" href="../..">ForrestBar</a>
+</div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript" language="JavaScript"><!--
+              document.write("Published: " + document.lastModified);
+              //  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Documentation</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a title="" href="../../docs/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq.html">FAQs</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/changes.html">Changes</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/todo.html">Todo</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/your-project.html">Using Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/validation.html">XML Validation</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/linking.html">Menus and Linking</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/searching.html">Searching</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/skins.html">Default Skins</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/skin-package.html">Skin Packages</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Plugins</div>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/views.html">Views-dev</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrest-contract.html">Our Contract</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/compliance.html">Standards Compliance</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.15', '../../skin/')" id="menu_1.1.15Title" class="menutitle">Advanced Topics</div>
+<div id="menu_1.1.15" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/build.html">Building Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/catalog.html">Using DTD Catalogs</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/sitemap-ref.html">Sitemap Reference</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/project-sitemap.html">Project sitemap</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/plugins/pluginInfrastructure.html">Plugin Infrastructure</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/cap.html">Sourcetype Action</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.16', '../../skin/')" id="menu_1.1.16Title" class="menutitle">Other versions</div>
+<div id="menu_1.1.16" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://forrest.apache.org/docs/../0.8/">0.8-dev</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/index.html">0.7 (current)</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://forrest.apache.org/docs/../0.6/">0.6</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.17', '../../skin/')" id="menu_1.1.17Title" class="menutitle">Upgrading</div>
+<div id="menu_1.1.17" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/upgrading_07.html">Upgrading to 0.7</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/upgrading_06.html">Upgrading to 0.6</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.18', '../../skin/')" id="menu_1.1.18Title" class="menutitle">SubProjects</div>
+<div id="menu_1.1.18" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/forrestbar.html">ForrestBar</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrestbot.html">Forrestbot</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/forrestbot-web-interface.html">Forrestbot Webapp</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.19', '../../skin/')" id="menu_1.1.19Title" class="menutitle">Reference docs</div>
+<div id="menu_1.1.19" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.1.19.1', '../../skin/')" id="menu_1.1.19.1Title" class="menutitle">DTD documentation</div>
+<div id="menu_1.1.19.1" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/dtd-docs.html">Overview</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v20.dtdx.html">document-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/howto-v20.dtdx.html">howto-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq-v20.dtdx.html">faq-v20</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v13.dtdx.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/howto-v13.dtdx.html">howto-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/faq-v13.dtdx.html">faq-v13</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.19.2', '../../skin/')" id="menu_1.1.19.2Title" class="menutitle">Doc samples</div>
+<div id="menu_1.1.19.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/document-v13.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/document-v20.html">document-v20</a>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.20', '../../skin/')" id="menu_1.1.20Title" class="menutitle">Older Docs</div>
+<div id="menu_1.1.20" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="../../docs/primer.html">Forrest Primer</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/libre-intro.html">Libre</a>
+</div>
+<div class="menuitem">
+<a title="" href="../../docs/dreams.html">Dream list</a>
+</div>
+</div>
+</div>
+<div id="credit">
+<hr>
+    This is documentation for current release v0.7
+   (<a href="http://forrest.apache.org/docs.html">More</a> ...)</div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="usingPlugins.pdf"><img alt="PDF -icon" src="../../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">
+	        Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
+<h1>Extending Forrest with Plugins</h1>
+<div id="motd-area">
+    This is documentation for current release v0.7
+   (<a href="http://forrest.apache.org/docs.html">More</a> ...)</div>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#overview">Overview</a>
+<ul class="minitoc">
+<li>
+<a href="#What+plugins+are+available%3F">What plugins are available?</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#How+is+a+Plugin+Installed%3F">How is a Plugin Installed?</a>
+<ul class="minitoc">
+<li>
+<a href="#Upgrading+from+a+Version+of+Forrest+Without+Plugins">Upgrading from a Version of Forrest Without Plugins</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#Avoiding+Plugin+Conflicts">Avoiding Plugin Conflicts</a>
+</li>
+<li>
+<a href="#Further+Reading">Further Reading</a>
+</li>
+</ul>
+</div>
+    
+<a name="N1000D"></a><a name="overview"></a>
+<h2 class="underlined_10">Overview</h2>
+<div class="section">
+<p>Forrest provides the core functionality for generating documentation
+      in various output formats from a range of input formats. However, it
+      does not end there. Forrest can be extended through the addition of
+      plugins. This document serves as an introduction to the Forrest
+      plugin mechanism.</p>
+<a name="N10016"></a><a name="What+plugins+are+available%3F"></a>
+<h3 class="underlined_5">What plugins are available?</h3>
+<p>You can run the command <span class="codefrag">forrest available-plugins</span> to get
+        a list of the known plugins for Forrest.</p>
+<p>If you would like to have your own plugin added to this list then
+        contact the <a href="http://forrest.apache.org/mail-lists.html">developer mailing list</a>.</p>
+</div>
+        
+    
+<a name="N1002B"></a><a name="How+is+a+Plugin+Installed%3F"></a>
+<h2 class="underlined_10">How is a Plugin Installed?</h2>
+<div class="section">
+<p>If a site requires one or more plugins then the site designer will 
+      have named them in the <span class="codefrag">project.required.plugins</span> property 
+      in the projects <span class="codefrag">forrest.properties</span> file. When Forrest 
+      builds the site it will automatically discover the plugin and install 
+      it. In otherwords, the user need do nothing. For example, 
+      <span class="codefrag">project.required.plugins=org.apache.forrest.plugin.OpenOffice.org,simplified-docbook</span>
+      will cause Forrest to load the plugins called "org.apache.forrest.plugin.OpenOffice.org" and
+      "simplified-docbook".</p>
+<p>By default a new forrest project includes plugins to generate 
+      PDF output from your source documents.</p>
+<a name="N10040"></a><a name="Upgrading+from+a+Version+of+Forrest+Without+Plugins"></a>
+<h3 class="underlined_5">Upgrading from a Version of Forrest Without Plugins</h3>
+<p>The plugin functionality was introduced in version 0.7 of Forrest.
+        At this time some of the functionality previously in Forrest was
+        extracted into a plugin. However, we have not broken backward 
+        compatability with earlier versions. In the absence of a
+        <span class="codefrag">project.required.plugins</span> property in the projects 
+        <span class="codefrag">forrest.properties</span> file all plugins that contain 
+        functionality previously part of Forrest itself will be loaded
+        automatically. Unless you intend to use new functionality provided
+        by a plugin you will not need to make any changes top your project.</p>
+<p>If you do require additional plugin functionality, be sure to
+        include all required plugins in the 
+        <span class="codefrag">project.required.plugins</span> property in the project's
+        <span class="codefrag">forrest.properties</span>. You can view
+        <span class="codefrag">main/webapp/default-forrest.properties</span>
+        to see the names of plugins that provide previously core 
+        functionality.</p>
+<p>It is also worth noting that there is a small performance 
+        improvement if you remove plugins that are not in use. Therefore,
+        if you do not use one or more of the plugins named in the 
+        <span class="codefrag">project.required.plugins</span> property of 
+        <span class="codefrag">main/webapp/default-forrest.properties</span>
+        it is recomended that you override this value in your project's
+        <span class="codefrag">forrest.properties</span> file.</p>
+</div>
+    
+    
+<a name="N10069"></a><a name="Avoiding+Plugin+Conflicts"></a>
+<h2 class="underlined_10">Avoiding Plugin Conflicts</h2>
+<div class="section">
+<p>Clashes between plugins can occur. For example, the simplified-docbook 
+      and full docbook plugins may try and process the same files. In this 
+      instance the one that is mounted first will take precedence. Plugins 
+      are mounted in the order they appear in the 
+      <span class="codefrag">project.required.plugins</span> property, therefore the mounting 
+      order and therefore processing precedence is under user control.</p>
+</div>
+    
+    
+<a name="N10076"></a><a name="Further+Reading"></a>
+<h2 class="underlined_10">Further Reading</h2>
+<div class="section">
+<ul>
+        
+<li>
+<a href="../../docs/plugins/pluginInfrastructure.html">Plugin Infrastructure</a>
+</li>
+        
+<li>
+<a href="../../docs/howto/howto-buildPlugin.html">How to build a Plugin</a>
+</li>
+      
+</ul>
+</div>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+ Copyright &copy; 2002-2005 The Apache Software Foundation.</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Propchange: forrest/site/0.7/docs/plugins/usingPlugins.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: forrest/site/0.7/docs/plugins/usingPlugins.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/0.7/docs/plugins/usingPlugins.pdf?view=auto&rev=160895
==============================================================================
Binary file - no diff available.

Propchange: forrest/site/0.7/docs/plugins/usingPlugins.pdf
------------------------------------------------------------------------------
    svn:mime-type = application/pdf