forrest-svn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cross...@apache.org
Subject svn commit: r344476 - in /forrest/site: docs_0_80/howto/howto-structurer-dsl.html docs_0_80/howto/howto-structurer-dsl.pdf forrest-friday.html forrest-friday.pdf forrest-issues.html forrest-issues.pdf linkmap.html linkmap.pdf
Date Tue, 15 Nov 2005 23:26:23 GMT
Author: crossley
Date: Tue Nov 15 15:26:03 2005
New Revision: 344476

URL: http://svn.apache.org/viewcvs?rev=344476&view=rev
Log:
Automatic publish from forrestbot

Modified:
    forrest/site/docs_0_80/howto/howto-structurer-dsl.html
    forrest/site/docs_0_80/howto/howto-structurer-dsl.pdf
    forrest/site/forrest-friday.html
    forrest/site/forrest-friday.pdf
    forrest/site/forrest-issues.html
    forrest/site/forrest-issues.pdf
    forrest/site/linkmap.html
    forrest/site/linkmap.pdf

Modified: forrest/site/docs_0_80/howto/howto-structurer-dsl.html
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-structurer-dsl.html?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
--- forrest/site/docs_0_80/howto/howto-structurer-dsl.html (original)
+++ forrest/site/docs_0_80/howto/howto-structurer-dsl.html Tue Nov 15 15:26:03 2005
@@ -5,7 +5,7 @@
 <meta content="Apache Forrest" name="Generator">
 <meta name="Forrest-version" content="0.8-dev">
 <meta name="Forrest-skin-name" content="pelt">
-<title>How to use the forrest:view config-DSL (v0.8-dev)</title>
+<title>How to use the structurer (v0.8-dev)</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">
@@ -205,10 +205,10 @@
 <a href="../../docs_0_80/howto/howto-structurer-install.html">Install</a>
 </div>
 <div class="menupage">
-<div class="menupagetitle">forrest:view DSL</div>
+<div class="menupagetitle">structurer</div>
 </div>
 <div class="menuitem">
-<a href="../../docs_0_80/howto/howto-structurer-contracts.html">Contract implementations</a>
+<a href="../../docs_0_80/howto/howto-structurer-contracts.html">contracts</a>
 </div>
 </div>
 <div onclick="SwitchMenu('menu_1.1.15.13', '../../skin/')" id="menu_1.1.15.13Title" class="menutitle">Old Views (deprecated)</div>
@@ -326,11 +326,9 @@
 	          &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>How to use the forrest:view config-DSL</h1>
-<div class="abstract">
-    This How-To describes the usage of the forrest:view config Domain Specific Language 
-    to create beautiful websites in no time.
-  </div>
+<h1>How to use the structurer</h1>
+<div class="abstract"> This How-To describes the usage of the structurer config domain 
+    specific language to create beautiful websites in no time. </div>
 <div id="motd-area">
         This is documentation for development version v0.8
        (<a href="http://forrest.apache.org/versions/">More</a>)</div>
@@ -349,16 +347,16 @@
 <a href="#Steps">Steps</a>
 <ul class="minitoc">
 <li>
-<a href="#emptyView">Empty view file</a>
+<a href="#emptystructurer">Empty structurer file</a>
 </li>
 <li>
-<a href="#firstView">Creating your first view</a>
+<a href="#firststructurer">Creating your first structurer</a>
 </li>
 <li>
-<a href="#hookView">Hooks in views</a>
+<a href="#hookstructurer">Hooks in the structurer</a>
 </li>
 <li>
-<a href="#cssView">CSS in views</a>
+<a href="#cssstructurer">CSS in the structurer</a>
 </li>
 </ul>
 </li>
@@ -375,150 +373,224 @@
 <div class="section">
 <div class="warning">
 <div class="label">Warning</div>
-<div class="content">
-"Views" are new functionality which is still in development phase. That is why it is in the
-"whiteboard" section of the Forrest distribution.
-This HowTo is far from being finished. 
+<div class="content"> The "Dispatcher" (aka "Views") is new functionality which is 
+      still in development phase. That is why it is in the "whiteboard" section 
+      of the Forrest distribution. This HowTo is a good start but still needs 
+      more work. </div>
 </div>
+<p> This part of the the dispatcher is called the structurer and is 
+      dedicated to webdesigner and user with some knowlegde of css. </p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content"> For the moment we will use a special seed template called seed-v2. 
+      We still need to fix issues of the dispatcher that it really can replace 
+      old fashion skins. Like performance, standalone contracts, other testing 
+      output/input formats - using POJO based processing will help solving 
+      this. All this will ATM happen in the v2 seed-target till the dispatcher 
+      will be realesed to the stable plugins. So make regular updates of your 
+      forrest-trunk to keep track. </div>
+</div>
+<div class="warning">
+<div class="label">Warning</div>
+<div class="content"> The way we develope contracts will/may change with introduction 
+      of java based processing rather then xsl. Please keep this in mind and 
+      help updating the documentation by sending patches. TIA. ;-) </div>
 </div>
-<p>
-      This part of the views is dedicated to webdesigner and user with some knowlegde of css.
-    </p>
 </div>
-<a name="N1001B"></a><a name="Purpose"></a>
+<a name="N10021"></a><a name="Purpose"></a>
 <h2 class="underlined_10">Purpose</h2>
 <div class="section">
-<p>
-      This how-to will show you how to write a <strong>forrest:view</strong> from the ground up. 
-      We will focus on html as the output format. As well it will show how to add your own css implementation to the view.
-    </p>
+<p> This how-to will show you how to write a <strong>forrest:view</strong> 
+      from the ground up. We will focus on html as the output format. As well 
+      it will show how to add your own css implementation to the structurer. 
+      </p>
 </div>
-<a name="N10026"></a><a name="Prerequisites"></a>
+<a name="N1002C"></a><a name="Prerequisites"></a>
 <h2 class="underlined_10">Prerequisites</h2>
 <div class="section">
 <ul>
       
-<li>
-        You have a ready-to-go new seed (newSeed) based on views as described in <a href="../../docs_0_80/howto/howto-view-install.html">Install views</a>.
-      </li>
+<li> You have a ready-to-go new seed-v2 (v2) based on the dispatcher like 
+        described in <a href="../../docs_0_80/howto/howto-structurer-install.html">Install</a>. </li>
       
-<li>
-      	This includes as well as all additional plugins that are mentioned in <a href="../../docs_0_80/howto/howto-view-install.html">Install views</a>.
-      </li>
+<li> Reading that how-to is as well a good idea to understand the used 
+        directory structure in this how-to. </li>
       
-<li>
-        Reading that how-to is as well a good idea to understand the used directory structure in this how-to.
-      </li>
+<li>Installing a mozilla browser and the forrestbar helps a lot in 
+        developing.</li>
     
 </ul>
 </div>
-<a name="N1003F"></a><a name="Steps"></a>
+<a name="N10041"></a><a name="Steps"></a>
 <h2 class="underlined_10">Steps</h2>
 <div class="section">
 <div class="note">
 <div class="label">Note</div>
-<div class="content">
-      When developing with views we assume you are using 'forrest run' and the following workflow:<br>
-      change files -&gt; refresh browser
-    </div>
-</div>
-<p>
-      We developed<strong> forrest:view</strong>  to let the user decide where to place elements in e.g. html pages.
-      We started this work with the <span class="codefrag">skinconf.xml</span> where you could configure certain elements and
-      their positions. These elements were known under certain names. It was up to the skin designer to support 
-      this configuration and the elements.
-    </p>
-<p>
-     The work started with grouping elements (the ones from skinconf). We used css-contracts that 
-     we added as @attributes e.g. <span class="codefrag">&lt;div id="content-main"/&gt; </span>. That made it 
-     possible to use the same elements in different skins. For the full list refer to the
-      <a href="http://svn.apache.org/repos/asf/forrest/trunk/main/webapp/skins/leather-dev/contracts.initial.txt">
-        initial contract list
-      </a>
-    
+<div class="content"> When developing with the dispatcher we assume you are using 'forrest 
+      run' and the following workflow "change files -&gt; refresh browser"<br> 
+      Installing a mozilla browser and the forrestbar helps a lot in 
+      developing. Many instructions assumes that you have the forrestbar 
+      installed. </div>
+</div>
+<p> We developed<strong> the structurer</strong> to let the user decide 
+      where to place elements in e.g. html pages. We started this work with the 
+      <span class="codefrag">skinconf.xml</span> where you could configure certain elements and 
+      their positions. These elements were known under certain names. It was up 
+      to the skin designer to support this configuration and the elements. </p>
+<p> The work started with grouping elements (the ones from skinconf). We 
+      used css-contracts that we added as @attributes e.g. <span class="codefrag">&lt;div id="content-main"/&gt;
+       </span>. That made it possible to use the same elements in different 
+      skins. For the full list refer to the <a href="http://svn.apache.org/repos/asf/forrest/trunk/main/webapp/skins/leather-dev/contracts.initial.txt"> 
+      initial contract list </a> 
 </p>
-<p>
-     Around this contracts we developed a configuration Domain Specific Language and called it<strong>forrest:view</strong>.
-    These <strong>forrest:view</strong>s allows us to define the order in which <strong>forrest:contract</strong>s appear, and also to group
-     them using <strong>forrest:hook</strong>s.
-    </p>
-<p>
-     
-<strong>forrest:hook</strong>s are containers that are only used for layout reasons. They <strong>do not</strong> add 
-     any content or functionality to the output. They add <strong>only</strong> layout information to 
-     the output. Actually a <span class="codefrag">&lt;forrest:hook name="layoutId"/&gt;</span> will be transformed
-     to <span class="codefrag">&lt;div id="layoutId"/&gt; </span>
-    
+<p> Around this contracts we developed a configuration Domain Specific 
+      Language - called <strong>the structurer</strong>. The 
+      <strong>structurer</strong> allows us to define the order in which 
+      <strong>forrest:contract</strong>s appear, and also to group them using 
+      <strong>forrest:hook</strong>s. </p>
+<p> 
+<strong>forrest:hook</strong>s are containers that are only used for 
+      layout reasons. They <strong>do not</strong> add any content nor 
+      functionality to the output. They add <strong>only</strong> layout 
+      information to the output. Actually e.g. a <span class="codefrag">&lt;forrest:hook name="layoutId"/&gt;
+      </span> will be transformed to <span class="codefrag">&lt;div id="layoutId"/&gt; 
+      </span> 
 </p>
-<p>
-     
-<strong>forrest:contract</strong>s are functionality or extra content that a skin can use to display the requested
-     document (content-main). Sometimes a contract delivers <strong>format-specific markup</strong>, other times it delivers
-     a <strong>format-independent string</strong>.
-    </p>
-<a name="N10089"></a><a name="emptyView"></a>
-<h3 class="underlined_5">Empty view file</h3>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0"&gt;
-  &lt;forrest:view type="xhtml"&gt;
+<p> 
+<strong>forrest:contract</strong>s are functionality or extra content 
+      that a theme can use to display the request. Sometimes a contract 
+      delivers <strong>format-specific markup</strong>, other times it delivers 
+      a <strong>format-independent string</strong>. We decide different kind of 
+      contracts, static one (like described in the contract howto), semi static 
+      (which offer configuration parameter in the structurer) and dynamic 
+      contracts (which offer semi-static configuration and/or requesting the 
+      content).  </p>
+<p>Till now the processing includes firstly all raw data into the 
+      structurer, then generating a dynamic xsl and last but nor least 
+      response. That is heavy based on xsl processing which is quite slow. A 
+      better way is that we do not include *raw* but the *transformed* (by the 
+      contract) data . This way we do not have to generate a dynamic stylesheet 
+      which leads to the upcoming development of standalone contracts.</p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content"> The structurer is as well a configuration file for the dispatcher. 
+        The new think on the dispatcher is that one can include any content 
+        from any given business service by dispatching a request against it. In 
+        "old fashion" skins and in v1 contracts we assumed a given data model. 
+        In the dispatcher there is <strong>no</strong> given data model any 
+        more. All data has to be defined in the structurer that they can be 
+        dispatched. </div>
+</div>
+<a name="N10094"></a><a name="emptystructurer"></a>
+<h3 class="underlined_5">Empty structurer file</h3>
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
   &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<p>
-       
-<strong> forrest:view</strong>  is designed to be open for any format that can use<strong> forrest:view</strong>  as configuration file.
-	The only format we implemented is xhtml for now. This is as well true for the delivered contracts.
-      </p>
-<p>
-        Now let us start to skin our site.
-      </p>
-<a name="N100A0"></a><a name="firstView"></a>
-<h3 class="underlined_5">Creating your first view</h3>
-<p>
-				In this section we will create a new view. We will override the default view of the view-plugin
-        for the index page of the <a href="../../docs_0_80/howto/howto-view-install.html">newSeed</a>.
-        For that we will create a file called <span class="codefrag">index.fv</span> and save it in our xdocs directory. 
-        This will make <strong>only</strong> the index.html page look different from the rest of the project.
-			</p>
-<p>
-        Remember: pointing your browser to <span class="codefrag">http://localhost:8888/ls.contracts.html</span> will
-        show a page with all contracts that you can use in your project.
-      </p>
-<p>
-        Let use the blank view from the earlier step and add the content-main contract. In 
-        ls.contracts.html we find the information for how to use the contract in our view. Our 
-        <span class="codefrag">index.fv</span> should look like:
-      </p>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0"&gt;
-  &lt;forrest:view type="xhtml"&gt;
-    &lt;forrest:contract name="content-main"/&gt;
+<p> 
+<strong> The structurer</strong> is designed to be open for any 
+        format that can use<strong> forrest:view</strong> as configuration 
+        file. The only format we implemented is html for now. This is as well 
+        true for the delivered contracts. </p>
+<a name="N100A8"></a><a name="firststructurer"></a>
+<h3 class="underlined_5">Creating your first structurer</h3>
+<div class="warning">
+<div class="label">Warning</div>
+<div class="content"> The structurer is based on jx templates to allow simple 
+        presentation logic (all code starting with "jx:"). Please refer to the 
+        cocoon documentation about jx. For now we are using jx to 
+        include the raw data into the presentation model and generating an 
+        alias-xsl stylesheet. That is heavy on performance and we will change 
+        this ASAP. Mind the warning at the start of the howto. </div>
+</div>
+<p> In this section we will create a new structurer. We will override the 
+        default structurer of the themer-plugin for the index page of the <a href="../../docs_0_80/howto/howto-structurer-install.html">v2</a>. For that we will create a 
+        file called <span class="codefrag">index.fv</span> and save it in our xdocs directory. 
+        This will make <strong>only</strong> the index.html page look different 
+        from the rest of the project. </p>
+<p> Remember: pointing your browser to 
+        <span class="codefrag">http://localhost:8888/ls.contracts.html</span> will show a page 
+        with all contracts and themes that you can use in your project provided 
+        by forrest. </p>
+<p> Let us use the blank structurer from the earlier step and add the 
+        content-main contract. In ls.contracts.html we find the information for 
+        how to use the contract in our structurer. Our <span class="codefrag">index.fv</span> 
+        should look like: </p>
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
+    &lt;forrest:contract name="content-main"&gt;
+    &lt;forrest:properties contract="content-main"&gt;
+      &lt;forrest:property name="content-main" nugget="get.body"&gt;
+        &lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+      &lt;/forrest:property&gt;
+      &lt;!-- Heading types can be clean|underlined|boxed  --&gt;
+      &lt;forrest:property name="content-main-conf"&gt;
+        &lt;headings type="underlined"/&gt;
+      &lt;/forrest:property&gt;
+    &lt;/forrest:properties&gt;
+  &lt;/forrest:contract&gt;
   &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<p>
-        Lets try our new view by pointing to <span class="codefrag">http://localhost:8888/index.html</span>. 
-        We will see only the main content. Now let us add the section navigation to our view.
-        The contract usage in the view can be looked up in ls.contracts.html. Our view now looks like:
-      </p>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0"&gt;
-  &lt;forrest:view type="xhtml"&gt;
-    &lt;forrest:contract name="content-main"/&gt;
-    &lt;forrest:contract name="nav-section"/&gt;
+<p>A contract has to request the data model it want to transform. This 
+        happends by defining forrest:properties which have the same name like 
+        the contract. In our case we want the HTML rendered from intermediate 
+        format (**.body.xml). This we are going to include via: <span class="codefrag">&lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+         </span>
+</p>
+<p>Contracts can offer some property configuration of the outcome of 
+            the transformation. In our case <span class="codefrag">&lt;forrest:property name="content-main-conf"&gt;
+        &lt;headings type="underlined"/&gt;
+      &lt;/forrest:property&gt;. </span>
+</p>
+<p> Lets try our new structurer by pointing to 
+        <span class="codefrag">http://localhost:8888/index.html</span>. We will see only the 
+        main content. Now let us add the section navigation to our structurer. 
+        The contract usage in the structurer can be looked up in 
+        ls.contracts.html. Our structurer now looks like: </p>
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
+    &lt;forrest:contract name="nav-main"&gt;
+      &lt;forrest:properties contract="nav-main"&gt;
+        &lt;forrest:property name="nav-main" nugget="get.navigation"&gt;
+          &lt;jx:import 
+            uri="cocoon://#{$cocoon/parameters/getRequest}.navigation.xml"/&gt;
+        &lt;/forrest:property&gt;
+      &lt;/forrest:properties&gt;
+    &lt;/forrest:contract&gt;
+    &lt;forrest:contract name="content-main"&gt;
+      &lt;forrest:properties contract="content-main"&gt;
+        &lt;forrest:property name="content-main" nugget="get.body"&gt;
+          &lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+        &lt;/forrest:property&gt;
+        &lt;!-- Heading types can be clean|underlined|boxed  --&gt;
+        &lt;forrest:property name="content-main-conf"&gt;
+          &lt;headings type="underlined"/&gt;
+        &lt;/forrest:property&gt;
+      &lt;/forrest:properties&gt;
+    &lt;/forrest:contract&gt;
   &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<p>
-        We now find the main content and the section navigation after each other and in the order 
-        we placed them in the view, but we want it next to each other 
-        (left: nav-section; right: content-main).
-      </p>
-<a name="N100D1"></a><a name="hookView"></a>
-<h3 class="underlined_5">Hooks in views</h3>
-<p>
-        We will use now the first time a <span class="codefrag">&lt;forrest:hook name="layoutId"/&gt;</span>.
-        Hooks are the styling side of views. We can imitate arbitrary html skeleton 
-        with their help. Before we explain how to use your own css in views, we will use the default css.
-        In the default.css we can find 
-      </p>
+<p> We now find the main content and the section navigation after each 
+        other and in the order we placed them in the structurer, but we want it 
+        next to each other (left: nav-section; right: content-main). </p>
+<a name="N100E6"></a><a name="hookstructurer"></a>
+<h3 class="underlined_5">Hooks in the structurer</h3>
+<p> We will use now the first time a <span class="codefrag">&lt;forrest:hook name="layoutId"/&gt;
+         </span>. Hooks are the styling side of the structurer. We can imitate 
+        arbitrary html skeleton with their help. Before we explain how to use 
+        your own css in the structurer, we will use the default css. You can 
+        see in our example that we have css included. That is a default 
+        fallback coming from the implementation. In this common.css we can find 
+        </p>
 <pre class="code">/* menu */
 #leftbar {
     width: 25%;
@@ -527,137 +599,201 @@
     border: thin dashed #565248;
 }
       </pre>
-<p>
-        With this information we know to use <span class="codefrag">&lt;forrest:hook name="leftbar"/&gt;</span> 
-        and add contracts into that container. 
-      </p>
-<p>
-        If we want to put the nav-section contract into the left-hand side position
-        of the site we need to place the contract into that hook. Like:
-      </p>
+<p> With this information we know to use <span class="codefrag">&lt;forrest:hook name="leftbar"/&gt;
+        </span> and add contracts into that container. </p>
+<p> If we want to put the nav-section contract into the left-hand side 
+        position of the site we need to place the contract into that hook. 
+        Like: </p>
 <pre class="code">&lt;forrest:hook name="leftbar"&gt;
-  &lt;forrest:contract name="nav-section"/&gt;
+  &lt;!-- Include contract here --&gt;
 &lt;/forrest:hook&gt;
-			</pre>
-<p>
-        Our view will then look like:
-      </p>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0" &gt;
-  &lt;forrest:view type="xhtml"&gt;
+      </pre>
+<p> Our structurer will then look like: </p>
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
     &lt;forrest:hook name="leftbar"&gt;
-      &lt;forrest:contract name="nav-section"/&gt;
-    &lt;/forrest:hook&gt;
-    &lt;forrest:contract name="content-main"/&gt;   
-  &lt;/forrest:view&gt;  
+      &lt;forrest:contract name="nav-section"&gt;
+        &lt;forrest:properties contract="nav-section"&gt;
+          &lt;forrest:property name="nav-section" nugget="get.navigation"&gt;
+            &lt;jx:import 
+              uri="cocoon://#{$cocoon/parameters/getRequest}.navigation.xml"/&gt;
+          &lt;/forrest:property&gt;
+        &lt;/forrest:properties&gt;
+      &lt;/forrest:contract&gt;
+    &lt;/forrest:hook&gt;   
+    &lt;forrest:contract name="content-main"&gt;
+      &lt;forrest:properties contract="content-main"&gt;
+        &lt;forrest:property name="content-main" nugget="get.body"&gt;
+          &lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+        &lt;/forrest:property&gt;
+        &lt;!-- Heading types can be clean|underlined|boxed  --&gt;
+        &lt;forrest:property name="content-main-conf"&gt;
+          &lt;headings type="underlined"/&gt;
+        &lt;/forrest:property&gt;
+      &lt;/forrest:properties&gt;
+    &lt;/forrest:contract&gt;
+  &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<a name="N100F6"></a><a name="cssView"></a>
-<h3 class="underlined_5">CSS in views</h3>
-<p>
-        We now know how to place contracts and hooks in our view. Until this stage we only used the default.css. 
-        CSS-support of views is as easy as placing contracts/hooks. To override the default.css
-        stylesheet we use another tag within our view <span class="codefrag">&lt;forrest:css url="default.css"/&gt;</span>.
-      </p>
-<p>
-        We will now create a file in <span class="codefrag">{project:skins-dir}{path}/{name}.css</span>. In our case
-        we will save a file called howTo.css in newSeed/src/documentation/skins/css/howTo.css containing only 
-        the following css:
-      </p>
-<pre class="code">/* menu */
+<a name="N1010B"></a><a name="cssstructurer"></a>
+<h3 class="underlined_5">CSS in the structurer</h3>
+<p>We now know how to place contracts and hooks in our structurer. Until 
+        this stage we only used the common.css. CSS-support of the structurer 
+        is as easy as placing contracts/hooks. To override the common.css 
+        stylesheet we use another tag within our structurer <span class="codefrag">&lt;forrest:css /&gt;
+        </span>. </p>
+<p>You can add inline and linked css with the structurer. As soon as you 
+        use forrest:css you will disable the fallback css support from 
+        forrest. With this tag we tell the dispatcher that we want to override the common.css.  
+        After adding the following to our index.fv the design will be different.</p>
+<pre class="code">&lt;forrest:css &gt;
+/* Extra css */
+/* menu */
 #leftbar {
-    width: 25%;
-    float: left;
-    background: #CCCCFF;
-    border: thin solid #000000;
+  width: 25%;
+  float: left;
+  background: #CCCCFF;
+  border: thin solid #000000;
 }
-      </pre>
-<p>
-        We just changed the border-style to 'solid', the background to '#CCCCFF' and the color to '#000000'. 
-        Now we have to add a new tag to tell that we want to override the default.css. We are doing this 
-        by adding the tag <span class="codefrag">&lt;forrest:css url="howTo.css"/&gt;</span> to our view.
-      </p>
+&lt;/forrest:css&gt; </pre>
+<p> We just changed the border-style to 'solid', the background to 
+        '#CCCCFF' and the color to '#000000'.  So you see a white page where the menu is surrounded by a solid 
+        border with the defined background.</p>
 <div class="note">
 <div class="label">Note</div>
 <div class="content">
         
-<span class="codefrag">&lt;forrest:css url="howTo.css"/&gt;</span> needs to be the direct child of 
-        <span class="codefrag">&lt;forrest:view type="xhtml"&gt;</span>
+<span class="codefrag">&lt;forrest:css /&gt;</span> needs to be the direct child of 
+        <span class="codefrag">&lt;forrest:view type="html"&gt;</span>
       
 </div>
 </div>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0" &gt;
-  &lt;forrest:view type="xhtml"&gt;
-  	&lt;forrest:css url="howTo.css"/&gt;
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
+    &lt;forrest:css &gt;
+/* Extra css */
+/* menu */
+#leftbar {
+  width: 25%;
+  float: left;
+  background: #CCCCFF;
+  border: thin solid #000000;
+}
+    &lt;/forrest:css&gt;
     &lt;forrest:hook name="leftbar"&gt;
-      &lt;forrest:contract name="nav-section"/&gt;
-    &lt;/forrest:hook&gt;
-    &lt;forrest:contract name="content-main"/&gt;   
-  &lt;/forrest:view&gt;  
+      &lt;forrest:contract name="nav-section"&gt;
+        &lt;forrest:properties contract="nav-section"&gt;
+          &lt;forrest:property name="nav-section" nugget="get.navigation"&gt;
+            &lt;jx:import 
+              uri="cocoon://#{$cocoon/parameters/getRequest}.navigation.xml"/&gt;
+          &lt;/forrest:property&gt;
+        &lt;/forrest:properties&gt;
+      &lt;/forrest:contract&gt;
+    &lt;/forrest:hook&gt;   
+    &lt;forrest:contract name="content-main"&gt;
+      &lt;forrest:properties contract="content-main"&gt;
+        &lt;forrest:property name="content-main" nugget="get.body"&gt;
+          &lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+        &lt;/forrest:property&gt;
+        &lt;!-- Heading types can be clean|underlined|boxed  --&gt;
+        &lt;forrest:property name="content-main-conf"&gt;
+          &lt;headings type="underlined"/&gt;
+        &lt;/forrest:property&gt;
+      &lt;/forrest:properties&gt;
+    &lt;/forrest:contract&gt;
+  &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<p>
-        Now you see a white page where the menu is surrounded by a solid border with the defined background.
-         As a second example, let us change as well the content-main by adding another hook 
-         <span class="codefrag">&lt;forrest:hook name="content"/&gt;</span> We need to add the new layout container
-         to our howTo.css:
-      </p>
+<p>As a second example, let us change 
+        as well the content-main by adding another hook <span class="codefrag">&lt;forrest:hook name="content"/&gt;
+        </span> We need to add the new layout container to our inline css: </p>
 <pre class="code">
 /* The actual content */
 #content {
-    margin-left: 25%;
-    padding: 0 20px 0 20px;
-    background: #B9D3EE;
+  margin-left: 25%;
+  padding: 0 20px 0 20px;
+  background: #B9D3EE;
+}</pre>
+<p> Then we have to add the 'content-main' contract to the 'content' 
+        hook. The resulting structurer looks like: </p>
+<pre class="code">&lt;forrest:views 
+  xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"&gt;
+  &lt;forrest:view type="html"&gt;
+    &lt;forrest:css &gt;
+/* Extra css */
+/* menu */
+#leftbar {
+  width: 25%;
+  float: left;
+  background: #CCCCFF;
+  border: thin solid #000000;
 }
-      </pre>
-<p>
-        Then we have to add the 'content-main' contract to the 'content' hook.
-        The resulting view looks like:
-      </p>
-<pre class="code">&lt;forrest:views xmlns:forrest="http://apache.org/forrest/templates/1.0" &gt;
-  &lt;forrest:view type="xhtml"&gt;
-  	&lt;forrest:css url="howTo.css"/&gt;
+/* The actual content */
+#content {
+  margin-left: 25%;
+  padding: 0 20px 0 20px;
+  background: #B9D3EE;
+}
+    &lt;/forrest:css&gt;
     &lt;forrest:hook name="leftbar"&gt;
-      &lt;forrest:contract name="nav-section"/&gt;
+      &lt;forrest:contract name="nav-section"&gt;
+        &lt;forrest:properties contract="nav-section"&gt;
+          &lt;forrest:property name="nav-section" nugget="get.navigation"&gt;
+            &lt;jx:import 
+              uri="cocoon://#{$cocoon/parameters/getRequest}.navigation.xml"/&gt;
+          &lt;/forrest:property&gt;
+        &lt;/forrest:properties&gt;
+      &lt;/forrest:contract&gt;
     &lt;/forrest:hook&gt;
     &lt;forrest:hook name="content"&gt;
-      &lt;forrest:contract name="content-main"/&gt;
-    &lt;/forrest:hook&gt;  
-  &lt;/forrest:view&gt;  
+      &lt;forrest:contract name="content-main"&gt;
+      &lt;forrest:properties contract="content-main"&gt;
+        &lt;forrest:property name="content-main" nugget="get.body"&gt;
+          &lt;jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/&gt;
+        &lt;/forrest:property&gt;
+        &lt;!-- Heading types can be clean|underlined|boxed  --&gt;
+        &lt;forrest:property name="content-main-conf"&gt;
+          &lt;headings type="underlined"/&gt;
+        &lt;/forrest:property&gt;
+      &lt;/forrest:properties&gt;
+    &lt;/forrest:contract&gt;
+    &lt;/forrest:hook&gt;
+  &lt;/forrest:view&gt;
 &lt;/forrest:views&gt;
       </pre>
-<p>
-        We are now able to place contracts into the layout container and add custom css to the view.
-      </p>
+<p> We are now able to place contracts into the layout container and add 
+        custom css to the structurer. </p>
 <div class="fixme">
 <div class="label">Fixme (thorsten)</div>
-<div class="content">
-        Let us now look into advanced features of views. 
-        I will write a how-to for advanced contracts soon. :)
-      </div>
+<div class="content"> Add more information of recent threads around css in the structurer 
+        </div>
 </div>
 </div>
-<a name="N1013A"></a><a name="Further Reading"></a>
+<a name="N1014D"></a><a name="Further Reading"></a>
 <h2 class="underlined_10">Further Reading</h2>
 <div class="section">
-<p>
-      Congratulations you are now able to work with the view DSL. 
-      From here we recommend to read the following How-Tos:
-    </p>
+<p> Congratulations you are now able to work with the structurer. From here 
+      we recommend to read the following How-Tos: </p>
 <ul>
       
 <li>
-<a href="../../docs_0_80/howto/howto-view-contracts.html">Create your own contract implementation</a> 
+        
+<a href="../../docs_0_80/howto/howto-structurer-contracts.html">Create your own contract 
+          implementation</a>
+      
 </li>
     
 </ul>
 </div>
-<a name="N1014B"></a><a name="Feedback"></a>
+<a name="N1015F"></a><a name="Feedback"></a>
 <h2 class="underlined_10">Feedback</h2>
 <div class="section">
-<p>
-      Please provide feedback about this document via the
-      <a href="../../mail-lists.html">mailing lists</a>.
-    </p>
+<p> Please provide feedback about this document via the <a href="../../mail-lists.html">mailing lists</a>. </p>
 </div>
 </div>
 <!--+

Modified: forrest/site/docs_0_80/howto/howto-structurer-dsl.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-structurer-dsl.pdf?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
Binary files - no diff available.

Modified: forrest/site/forrest-friday.html
URL: http://svn.apache.org/viewcvs/forrest/site/forrest-friday.html?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
--- forrest/site/forrest-friday.html (original)
+++ forrest/site/forrest-friday.html Tue Nov 15 15:26:03 2005
@@ -213,10 +213,10 @@
         and lasts for 24 hours.
       </p>
 <p>
-        The next event will take place on <strong>11 November 2005</strong>. See 
-        <a href="http://www.timeanddate.com/worldclock/fixedtime.html?year=2005&month=11&day=11&hour=6&min=0&sec=0">start time</a>
+        The next event will take place on <strong>9 December 2005</strong>. See 
+        <a href="http://www.timeanddate.com/worldclock/fixedtime.html?year=2005&month=12&day=09&hour=6&min=0&sec=0">start time</a>
         and
-        <a href="http://www.timeanddate.com/worldclock/meetingtime.html?day=4&month=11&year=2005&p1=136&p2=48&p3=176&p4=240&p5=224&p6=213">zone overlap</a>.
+        <a href="http://www.timeanddate.com/worldclock/meetingtime.html?day=9&month=12&year=2005&p1=136&p2=48&p3=176&p4=240&p5=224&p6=213">zone overlap</a>.
       </p>
 </div>
 

Modified: forrest/site/forrest-friday.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/forrest-friday.pdf?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
Binary files - no diff available.

Modified: forrest/site/forrest-issues.html
URL: http://svn.apache.org/viewcvs/forrest/site/forrest-issues.html?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
--- forrest/site/forrest-issues.html (original)
+++ forrest/site/forrest-issues.html Tue Nov 15 15:26:03 2005
@@ -204,25 +204,25 @@
 <a href="#%5BFOR-427%5D+Need+licensing+element+in+plugins.xml">[FOR-427] Need licensing element in plugins.xml</a>
 </li>
 <li>
-<a href="#%5BFOR-388%5D+Use+plugins+in-place+if+src+available">[FOR-388] Use plugins in-place if src available</a>
+<a href="#%5BFOR-701%5D+Missing+locationmap+entry+gives+poor+error">[FOR-701] Missing locationmap entry gives poor error</a>
 </li>
 <li>
-<a href="#%5BFOR-711%5D+Cache+results+from+the+Locationmap">[FOR-711] Cache results from the Locationmap</a>
+<a href="#%5BFOR-654%5D+Create+Schema+for+XHTML2+subset">[FOR-654] Create Schema for XHTML2 subset</a>
 </li>
 <li>
-<a href="#%5BFOR-675%5D+upgrading+to+commons-jxpath-1.2.jar+causes+failures+with+linkrewriter+protocols+site%3A+etc.">[FOR-675] upgrading to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc.</a>
+<a href="#%5BFOR-707%5D+Document+i18n+features+of+Forrest">[FOR-707] Document i18n features of Forrest</a>
 </li>
 <li>
-<a href="#%5BFOR-701%5D+Missing+locationmap+entry+gives+poor+error">[FOR-701] Missing locationmap entry gives poor error</a>
+<a href="#%5BFOR-630%5D+Forrest+strategy+and+direction">[FOR-630] Forrest strategy and direction</a>
 </li>
 <li>
-<a href="#%5BFOR-654%5D+Create+Schema+for+XHTML2+subset">[FOR-654] Create Schema for XHTML2 subset</a>
+<a href="#%5BFOR-388%5D+Use+plugins+in-place+if+src+available">[FOR-388] Use plugins in-place if src available</a>
 </li>
 <li>
-<a href="#%5BFOR-707%5D+Document+i18n+features+of+Forrest">[FOR-707] Document i18n features of Forrest</a>
+<a href="#%5BFOR-675%5D+upgrading+to+commons-jxpath-1.2.jar+causes+failures+with+linkrewriter+protocols+site%3A+etc.">[FOR-675] upgrading to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc.</a>
 </li>
 <li>
-<a href="#%5BFOR-630%5D+Forrest+strategy+and+direction">[FOR-630] Forrest strategy and direction</a>
+<a href="#%5BFOR-711%5D+Cache+results+from+the+Locationmap">[FOR-711] Cache results from the Locationmap</a>
 </li>
 <li>
 <a href="#%5BFOR-490%5D+serve+multiple+sites+on+a+single+Forrest+instance">[FOR-490] serve multiple sites on a single Forrest instance</a>
@@ -349,47 +349,7 @@
 <p>Since plugins can be hosted on different sites they can be released under licenses other than the Apache one. We need an element in plugins.xml that records the type of license a plugin is released under. This element should be used by the plugin install process to verify that the user agrees to the terms of that license before download and installation is started.&lt;br&gt;
 </p>
 </div>
-<a name="N10065"></a><a name="%5BFOR-388%5D+Use+plugins+in-place+if+src+available"></a>
-<h2 class="underlined_10">[FOR-388] Use plugins in-place if src available</h2>
-<div class="section">
-<p>
-<a href="http://issues.apache.org/jira/browse/FOR-388">http://issues.apache.org/jira/browse/FOR-388</a>
-</p>
-<p>At present Forrest will attempt to download plugins even if they are available in src form in the local filesystem as part of an SVN checkout.
-&lt;br&gt;
-
-&lt;br&gt;
-Have Forrest mount plugins from designated directories in preference to downloading them wherever possible (need more than posible location for src plugins as some people may be developing their own plugins outside of Forrest)
-&lt;br&gt;
-
-&lt;br&gt;
-</p>
-</div>
-<a name="N10073"></a><a name="%5BFOR-711%5D+Cache+results+from+the+Locationmap"></a>
-<h2 class="underlined_10">[FOR-711] Cache results from the Locationmap</h2>
-<div class="section">
-<p>
-<a href="http://issues.apache.org/jira/browse/FOR-711">http://issues.apache.org/jira/browse/FOR-711</a>
-</p>
-<p>Now that we are using the locationmap extensively it is showing up just how innefficient it is. The problem is that for the majority of requests there are multiple reqeuests to the locationmap. We can make things much faster (especially on the first page request) by caching results in the locationmap.
-&lt;br&gt;
-
-&lt;br&gt;
-I think a simple cache will sufice, lets just provide a static hashmap using the hint as a key and, of course, the location as the value.
-&lt;br&gt;
-
-&lt;br&gt;
-If we test all locationmaps and find no result we should record that tere is no result in this hashmap. This will also be a good place to throw an exception so that Cocoon can better report such errors (see FOR-701)</p>
-</div>
-<a name="N10081"></a><a name="%5BFOR-675%5D+upgrading+to+commons-jxpath-1.2.jar+causes+failures+with+linkrewriter+protocols+site%3A+etc."></a>
-<h2 class="underlined_10">[FOR-675] upgrading to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc.</h2>
-<div class="section">
-<p>
-<a href="http://issues.apache.org/jira/browse/FOR-675">http://issues.apache.org/jira/browse/FOR-675</a>
-</p>
-<p>upgrading from commons-jxpath-20030909.jar to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc. This happens in both modes: 'forret run' and 'forrest'.</p>
-</div>
-<a name="N1008F"></a><a name="%5BFOR-701%5D+Missing+locationmap+entry+gives+poor+error"></a>
+<a name="N10065"></a><a name="%5BFOR-701%5D+Missing+locationmap+entry+gives+poor+error"></a>
 <h2 class="underlined_10">[FOR-701] Missing locationmap entry gives poor error</h2>
 <div class="section">
 <p>
@@ -401,7 +361,7 @@
 &lt;br&gt;
 We need to throw a meaningful error when when a resource cannot be found.</p>
 </div>
-<a name="N1009D"></a><a name="%5BFOR-654%5D+Create+Schema+for+XHTML2+subset"></a>
+<a name="N10073"></a><a name="%5BFOR-654%5D+Create+Schema+for+XHTML2+subset"></a>
 <h2 class="underlined_10">[FOR-654] Create Schema for XHTML2 subset</h2>
 <div class="section">
 <p>
@@ -411,7 +371,7 @@
 &lt;br&gt;
 &lt;a href="http://marc.theaimsgroup.com/?l=forrest-dev&amp;m=112489488330888&amp;w=2"&gt;http://marc.theaimsgroup.com/?l=forrest-dev&amp;amp;m=112489488330888&amp;amp;w=2&lt;/a&gt;</p>
 </div>
-<a name="N100AB"></a><a name="%5BFOR-707%5D+Document+i18n+features+of+Forrest"></a>
+<a name="N10081"></a><a name="%5BFOR-707%5D+Document+i18n+features+of+Forrest"></a>
 <h2 class="underlined_10">[FOR-707] Document i18n features of Forrest</h2>
 <div class="section">
 <p>
@@ -431,7 +391,7 @@
 &lt;br&gt;
 We could, at the very least use the locationmap to pull this content into our site [OT: I wonder if this could be a way to generate more documentation?)</p>
 </div>
-<a name="N100B9"></a><a name="%5BFOR-630%5D+Forrest+strategy+and+direction"></a>
+<a name="N1008F"></a><a name="%5BFOR-630%5D+Forrest+strategy+and+direction"></a>
 <h2 class="underlined_10">[FOR-630] Forrest strategy and direction</h2>
 <div class="section">
 <p>
@@ -600,6 +560,46 @@
 
 &lt;br&gt;
 * [C] Content directory.</p>
+</div>
+<a name="N1009D"></a><a name="%5BFOR-388%5D+Use+plugins+in-place+if+src+available"></a>
+<h2 class="underlined_10">[FOR-388] Use plugins in-place if src available</h2>
+<div class="section">
+<p>
+<a href="http://issues.apache.org/jira/browse/FOR-388">http://issues.apache.org/jira/browse/FOR-388</a>
+</p>
+<p>At present Forrest will attempt to download plugins even if they are available in src form in the local filesystem as part of an SVN checkout.
+&lt;br&gt;
+
+&lt;br&gt;
+Have Forrest mount plugins from designated directories in preference to downloading them wherever possible (need more than posible location for src plugins as some people may be developing their own plugins outside of Forrest)
+&lt;br&gt;
+
+&lt;br&gt;
+</p>
+</div>
+<a name="N100AB"></a><a name="%5BFOR-675%5D+upgrading+to+commons-jxpath-1.2.jar+causes+failures+with+linkrewriter+protocols+site%3A+etc."></a>
+<h2 class="underlined_10">[FOR-675] upgrading to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc.</h2>
+<div class="section">
+<p>
+<a href="http://issues.apache.org/jira/browse/FOR-675">http://issues.apache.org/jira/browse/FOR-675</a>
+</p>
+<p>upgrading from commons-jxpath-20030909.jar to commons-jxpath-1.2.jar causes failures with linkrewriter protocols site: etc. This happens in both modes: 'forret run' and 'forrest'.</p>
+</div>
+<a name="N100B9"></a><a name="%5BFOR-711%5D+Cache+results+from+the+Locationmap"></a>
+<h2 class="underlined_10">[FOR-711] Cache results from the Locationmap</h2>
+<div class="section">
+<p>
+<a href="http://issues.apache.org/jira/browse/FOR-711">http://issues.apache.org/jira/browse/FOR-711</a>
+</p>
+<p>Now that we are using the locationmap extensively it is showing up just how innefficient it is. The problem is that for the majority of requests there are multiple reqeuests to the locationmap. We can make things much faster (especially on the first page request) by caching results in the locationmap.
+&lt;br&gt;
+
+&lt;br&gt;
+I think a simple cache will sufice, lets just provide a static hashmap using the hint as a key and, of course, the location as the value.
+&lt;br&gt;
+
+&lt;br&gt;
+If we test all locationmaps and find no result we should record that tere is no result in this hashmap. This will also be a good place to throw an exception so that Cocoon can better report such errors (see FOR-701)</p>
 </div>
 <a name="N100C7"></a><a name="%5BFOR-490%5D+serve+multiple+sites+on+a+single+Forrest+instance"></a>
 <h2 class="underlined_10">[FOR-490] serve multiple sites on a single Forrest instance</h2>

Modified: forrest/site/forrest-issues.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/forrest-issues.pdf?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
Binary files - no diff available.

Modified: forrest/site/linkmap.html
URL: http://svn.apache.org/viewcvs/forrest/site/linkmap.html?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
--- forrest/site/linkmap.html (original)
+++ forrest/site/linkmap.html Tue Nov 15 15:26:03 2005
@@ -252,7 +252,286 @@
 </div>
 <a name="N10007"></a><a name="Table+of+Contents"></a>
 <h2 class="underlined_10">Table of Contents</h2>
-<div class="section"></div>
+<div class="section">
+<ul>
+<li>
+<a href="">Forrest</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>site</em>
+</li>
+<ul>
+
+  
+   
+  
+<ul>
+<li>
+<a href="">About</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>about</em>
+</li>
+<ul>
+    
+<ul>
+<li>
+<a href="index.html">Index</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>index</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="license.html">License</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>license</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="http://forrest.apache.org/mirrors.cgi">Download</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>download</em>
+</li>
+</ul>
+    
+    
+<ul>
+<li>
+<a href="who.html">Who we are</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>who</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="events.html">Events</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>events</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="flyer.html">Flyer</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>flyer</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="live-sites.html">Example sites</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>live-sites</em>
+</li>
+</ul>
+  
+</ul>
+</ul>
+  
+  
+<ul>
+<li>
+<a href="">Getting Involved</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>getting-involved</em>
+</li>
+<ul>
+    
+<ul>
+<li>
+<a href="contrib.html">Contributing</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>contrib</em>
+</li>
+<ul>
+      
+    
+</ul>
+</ul>
+    
+<ul>
+<li>
+<a href="http://svn.apache.org/viewcvs.cgi/forrest/trunk/">Browse SVN</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>SVN</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="mail-lists.html">Mail lists</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>mail-lists</em>
+</li>
+<ul>
+      
+      
+      
+    
+</ul>
+</ul>
+    
+<ul>
+<li>
+<a href="issues.html">Bugs and Issues</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>bugs</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="forrest-issues.html">Open Issues</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>forrest-issues</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="gump.html">Gump Integration</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>gump-forrest</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="guidelines.html">Project guidelines</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>guidelines</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="committed.html">Being committed</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>committed</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="forrest-friday.html">ForrestFriday</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>forrest-friday</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="zone.html">Zone notes</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>zone</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="plan/">Planning notes</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>plan</em>
+</li>
+<ul>
+      
+<ul>
+<li>
+<a href="plan/index.html">Overview</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>overview</em>
+</li>
+</ul>
+      
+<ul>
+<li>
+<a href="plan/internal-xhtml.html">Internal XHTML</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>internal-xhtml</em>
+</li>
+</ul>
+    
+</ul>
+</ul>
+  
+</ul>
+</ul>
+
+  
+<ul>
+<li>
+<a href="">Proposals</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>proposals</em>
+</li>
+<ul>
+    
+<ul>
+<li>
+<a href="proposal-asf-forrestbot.html">ASF Forrestbot</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>asf-forrestbot</em>
+</li>
+</ul>
+  
+</ul>
+</ul>
+
+  
+<ul>
+<li>
+<a href="">Related projects</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>references</em>
+</li>
+<ul>
+    
+<ul>
+<li>
+<a href="http://gump.apache.org/">Apache Gump</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>gump</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="http://cocoon.apache.org/">Apache Cocoon</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>cocoon</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="http://lenya.apache.org/">Apache Lenya</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>lenya</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="http://xml.apache.org/">Apache XML</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>xml</em>
+</li>
+</ul>
+  
+</ul>
+</ul>
+
+  
+
+  
+
+  
+  
+  
+
+  
+<ul>
+<li>
+<a href="tools/">Tools</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>tools</em>
+</li>
+<ul>
+    
+<ul>
+<li>
+<a href="tools/index.html">Index</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>index</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="tools/forrestbar.html">ForrestBar</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>forrestbar</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="tools/forrestbot.html">Forrestbot</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>forrestbot</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="tools/forrestbot-web-interface.html">Forrestbot Webapp</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>forrestbot-web-interface</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="tools/eclipse.html">Eclipse Plugin</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>eclipse</em>
+</li>
+</ul>
+    
+<ul>
+<li>
+<a href="tools/xxe.html">XXE-Editor</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>xxe</em>
+</li>
+</ul>
+  
+</ul>
+</ul>
+
+  
+  
+    
+
+    
+
+    
+
+    
+
+</ul>
+</ul>
+</div>
 </div>
 <!--+
     |end content

Modified: forrest/site/linkmap.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/linkmap.pdf?rev=344476&r1=344475&r2=344476&view=diff
==============================================================================
Binary files - no diff available.



Mime
View raw message