forrest-svn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cross...@apache.org
Subject svn commit: r527037 [5/6] - in /forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher: ./ resources/stylesheets/ resources/stylesheets/common/ resources/stylesheets/common/css/ resources/stylesheets/common/images/ resources/sty...
Date Tue, 10 Apr 2007 05:33:34 GMT
Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/dispatcher-glossary.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/dispatcher-glossary.xml?view=diff&rev=527037&r1=527036&r2=527037
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/dispatcher-glossary.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/dispatcher-glossary.xml Mon Apr  9 22:33:31 2007
@@ -20,8 +20,10 @@
 <glossary>
   <title>Dispatcher Glossary</title>
   <introduction>
-    <p>This is a glossary of terms and their definitions for the 
-    Dispatcher (aka views).</p>
+    <p>
+      This is a glossary of terms and their definitions for the Dispatcher (aka
+      views).
+    </p>
   </introduction>
   <part id="a">
     <title>A</title>
@@ -35,9 +37,11 @@
       <notes>
         <item-note>See 
         <link href="http://marc.theaimsgroup.com/?l=forrest-dev&amp;m=112596689428172&amp;w=2#1">
-        Archive Mail</link></item-note>
+        Archive Mail</link>
+        </item-note>
         <item-note>See 
-        <link href="http://issues.apache.org/jira/browse/FOR-639">Issue FOR-639</link></item-note>
+        <link href="http://issues.apache.org/jira/browse/FOR-639">Issue FOR-639</link>
+        </item-note>
       </notes>
     </item>
   </part>
@@ -46,10 +50,10 @@
     <item id="Contracts">
       <term>Contracts</term>
       <definitions>
-              <definition>A contract is a snippet of re-usable code that gets used in a structurer file.</definition>
-              <definition>Contracts can be used or omitted as neccessary, though a few are really compulsary in
+        <definition>A contract is a snippet of re-usable code that gets used in a structurer file.</definition>
+        <definition>Contracts can be used or omitted as neccessary, though a few are really compulsary in
                       order to define a basic skeleton structure and to include some styling (CSS)</definition>
-              <definition>Contracts mainly come in three (3) types, static, semi-static &amp; dynamic.<br />
+        <definition>Contracts mainly come in three (3) types, static, semi-static &amp; dynamic.<br />
                       Static Contracts are pre-defined snippets of code that need no further information.<br />
                       Semi-static Contracts can include extra configuration variables, these would over-ride otherwise
                       default variables.<br />
@@ -58,17 +62,18 @@
       </definitions>
     </item>
     <item id="Class">
-            <term>Class</term>
-<see>
+      <term>Class</term>
+      <see>
         <id>Name</id>
         <text>Name</text>
       </see>
-            <definitions>
-                    <definition>In the context of the dispatcher, a <strong>Class</strong> is used as an optional attribute to
-                            the forrest:hook. This converts to <code><![CDATA[<div class="example"></div>]]></code>.
+      <definitions>
+        <definition>In the context of the dispatcher, a <strong>Class</strong> is used as an optional attribute to
+                            the forrest:hook. This converts to <code>
+<![CDATA[<div class="example"></div>]]></code>.
                     </definition>
-            </definitions>
-            </item>
+      </definitions>
+    </item>
   </part>
   <part id="d">
     <title>D</title>
@@ -109,7 +114,7 @@
   <part id="h">
     <title>H</title>
     <item id="Hooks">
-            <term>forrest:hooks</term>
+      <term>forrest:hooks</term>
       <see>
         <id>Contracts</id>
         <text>Contracts</text>
@@ -124,48 +129,49 @@
         <definition>Hooks are used to help define the layout of a page. Hooks are only used to
         define the structure in our output that is required to enable a theme to apply its look and
         feel.</definition>
-<definition>Hooks convert to layout <![CDATA[<div></div>]]> container blocks and usually only consist
+        <definition>Hooks convert to layout <![CDATA[<div></div>]]> container blocks and usually only consist
         of forrest:contracts</definition>
-<definition>Hooks are applied currently in the themes.core plugin as
+        <definition>Hooks are applied currently in the themes.core plugin as
 part of a themes structurer configuration file such as %themename
 %-html.panel.xml (e.g pelt-html.panel.xml) or included in such configuration
 files via a panel file such as %themename%-%format%.panel.xml (e.g
 pelt-html.panel.xml)</definition>
       </definitions>
     </item>
-  </part> 
+  </part>
   <part id="n">
     <title>N</title>
     <item id="Name">
-            <term>Name</term>
-<see>
+      <term>Name</term>
+      <see>
         <id>Class</id>
         <text>Class</text>
       </see>
       <definitions>
         <definition>In the context of the dispatcher, a <strong>name</strong> is used as an optional attribute to 
-                the forrest:hook. This converts to <code><![CDATA[<div id="example"></div>]]></code>.</definition>
+                the forrest:hook. This converts to <code>
+<![CDATA[<div id="example"></div>]]></code>.</definition>
       </definitions>
     </item>
   </part>
   <part id="p">
-          <title>P</title>
-          <item id="Property">
-                  <term>Property</term>
-                  <definitions>
-                          <definition>forrest:property - Todo:open</definition>
-                  </definitions>
-          </item>
-          <item id="Panels">
-                  <term>Panels</term>
-                  <see>
-                          <id>Tiles</id>
-                          <text>Tiles</text>
-                  </see>
-                  <definitions>
-                          <definition>Panels is the new name for a tile - a collection of contracts. </definition>
-                                  </definitions>
-          </item>
+    <title>P</title>
+    <item id="Property">
+      <term>Property</term>
+      <definitions>
+        <definition>forrest:property - Todo:open</definition>
+      </definitions>
+    </item>
+    <item id="Panels">
+      <term>Panels</term>
+      <see>
+        <id>Tiles</id>
+        <text>Tiles</text>
+      </see>
+      <definitions>
+        <definition>Panels is the new name for a tile - a collection of contracts. </definition>
+      </definitions>
+    </item>
   </part>
   <part id="s">
     <title>S</title>
@@ -188,65 +194,65 @@
         <text>Themes</text>
       </see>
       <definitions>
-              <definition>The Structurer allows a user to define the layout and content of a site or parts of a site.</definition>
-              <definition>Structurer files contain hooks &amp; contracts which you can include to build up a site structure template</definition>
-              <definition>A completed structurer file defines an overall theme (look and feel) for a site</definition>
+        <definition>The Structurer allows a user to define the layout and content of a site or parts of a site.</definition>
+        <definition>Structurer files contain hooks &amp; contracts which you can include to build up a site structure template</definition>
+        <definition>A completed structurer file defines an overall theme (look and feel) for a site</definition>
       </definitions>
     </item>
     <item id="Skins">
-            <term>Skins</term>
+      <term>Skins</term>
       <see>
         <id>Themes</id>
         <text>Themes</text>
-</see>
+      </see>
       <see>
         <id>Dispatcher</id>
         <text>Dispatcher</text>
-</see>
-<definitions>
+      </see>
+      <definitions>
         <definition>Skins is the name of the older alternative way for structuring and styling your site pages.</definition>
         <definition>Skins is still used in Forrest versions 0.7 and 0.8-dev, though for 0.8-dev and beyond it can be
                 concidered an option with Dispatcher being the other.(It is enabled as the default option currently)</definition>
-</definitions>
-</item>
+      </definitions>
+    </item>
   </part>
   <part id="t">
-          <title>T</title>
-          <item id="Tiles">
-                  <term>Tiles</term>
+    <title>T</title>
+    <item id="Tiles">
+      <term>Tiles</term>
       <see>
         <id>Panels</id>
         <text>Panels</text>
-</see>
-                  <definitions>
-                          <definition>A tile is a collection of contracts that are grouped together for easy inclusion into a theme.</definition>
-                          <definition>Tiles was the original but deprecated name for a collection of contracts, it is now
+      </see>
+      <definitions>
+        <definition>A tile is a collection of contracts that are grouped together for easy inclusion into a theme.</definition>
+        <definition>Tiles was the original but deprecated name for a collection of contracts, it is now
                                   re-named and re-implemented as a 'Panels'</definition>
-                  </definitions>
-          </item>
+      </definitions>
+    </item>
     <item id="Themes">
       <term>Themes</term>
       <definitions>
-              <definition>A more extensible and adaptable solution than its alternative 'Skins'. A 'Theme' is an overall content &amp; style set.</definition>
-              <definition>A master 'common' theme provides the basis in which you can extend, over-ride or add to in order to make your own theme, you do not
+        <definition>A more extensible and adaptable solution than its alternative 'Skins'. A 'Theme' is an overall content &amp; style set.</definition>
+        <definition>A master 'common' theme provides the basis in which you can extend, over-ride or add to in order to make your own theme, you do not
                       have to create a complete theme from scratch, simply include/exclude/over-ride/add what you need. The current 'Pelt Theme' based on its
                       'Pelt Skin' counterpart, but uses functionality and extends/inherits what it needs to from the 'common' theme.</definition>
       </definitions>
     </item>
   </part>
   <part id="v">
-          <title>V</title>
-          <item id="Views">
-                  <term>Views</term>
-                  <see>
-                          <id>Dispatcher</id>
-                          <text>Dispatcher</text>
-                  </see>
-                  <definitions>
-                          <definition>Views is the older now deprecated name for what is now the 'Dispatcher'</definition>
-                          <definition>Views also, confusingly, was used as a term for the Structurer, and forrest:views is a 
+    <title>V</title>
+    <item id="Views">
+      <term>Views</term>
+      <see>
+        <id>Dispatcher</id>
+        <text>Dispatcher</text>
+      </see>
+      <definitions>
+        <definition>Views is the older now deprecated name for what is now the 'Dispatcher'</definition>
+        <definition>Views also, confusingly, was used as a term for the Structurer, and forrest:views is a 
                                   deprecated code that has been replaced with forrest:template.</definition>
-                  </definitions>
-          </item>
+      </definitions>
+    </item>
   </part>
 </glossary>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-contracts.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-contracts.xml?view=diff&rev=527037&r1=527036&r2=527037
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-contracts.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-contracts.xml Mon Apr  9 22:33:31 2007
@@ -16,57 +16,61 @@
   limitations under the License.
 -->
 <!DOCTYPE howto PUBLIC "-//APACHE//DTD How-to V2.0//EN" "http://forrest.apache.org/dtd/howto-v20.dtd">
-
 <howto>
- <header>
-  <title>How to write a forrest:contract</title>
-  <abstract>
-    This How-To will explain how we wrote the contracts for the dispatcher and hope afterwards you will be able to do the same.
-  </abstract>
-  <last-modified-content-date date="2007-03-24"/>
- </header>
-
+  <header>
+    <title>How to write a forrest:contract</title>
+    <abstract>
+      This How-To will explain how we wrote the contracts for the dispatcher and
+      hope afterwards you will be able to do the same.
+    </abstract>
+    <last-modified-content-date date="2007-03-24"/>
+  </header>
   <audience title="Intended Audience">
-<warning>
-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.
-      See <a href="ext:forrest/status-themes">Status of Themes: Skins and Dispatcher</a>.
-</warning>
+    <warning>
+      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. See <a href="ext:forrest/status-themes">Status of Themes: Skins and
+      Dispatcher</a>.
+    </warning>
     <p>
-      Devs and skin developer that wants to get started with forrest:contract development. 
-      To really understand this how-to you need basic and sometimes advanced understanding of 
-      the "old fashion" skin development process.
+      Devs and skin developer that wants to get started with forrest:contract
+      development. To really understand this how-to you need basic and sometimes
+      advanced understanding of the "old fashion" skin development process.
     </p>
   </audience>
-  
   <purpose title="Purpose">
     <p>
-      This setup guide will explain how to create a forrest:contract from scratch and 
-      how this forrest:contract work with the core parts of forrest.
+      This setup guide will explain how to create a forrest:contract from
+      scratch and how this forrest:contract work with the core parts of forrest.
     </p>
   </purpose>
-
   <prerequisites title="Prerequisites">
     <ul>
       <li>Installing a mozilla browser and the forrestbar helps a lot in developing.</li>
     </ul>
   </prerequisites>
-
-
   <steps title="Steps">
-    <note>The following content is from many mails around the topic, this how-to tries to be the 
-      consolidation of this thread. It is mainly based on the thread "[RT] Why using views" - 
-      in comparison with "old fashion" skins - usecase i18n</note>
+    <note>
+      The following content is from many mails around the topic, this how-to
+      tries to be the consolidation of this thread. It is mainly based on the
+      thread "[RT] Why using views" - in comparison with "old fashion" skins -
+      usecase i18n
+    </note>
     <p>
-      By working on the i18n integration for "pelt" we again encountered the reasons for using the dispatcher. ;-)
-      The maintenance problem was to change the captions of the skin features (contracts) to enable
-      support for i18n. The case is that the <code>site2xhtml.xsl</code> has a lot of repeating code. 
+      By working on the i18n integration for "pelt" we again encountered the
+      reasons for using the dispatcher. ;-) The maintenance problem was to
+      change the captions of the skin features (contracts) to enable support for
+      i18n. The case is that the <code>site2xhtml.xsl</code> has a lot of
+      repeating code.
     </p>
     <p>
-      For example the "last-publish"-contract could be found 2 times in the code.  
-      This is not the only contract that was (is) doubled in the code. The problem with that is that 
-      we needed to search the code for each caption and senselessly repeat the following 
-      maintenance step of adding the <![CDATA[<i18n:text/>]]>-tags.
+      For example the "last-publish"-contract could be found 2 times in the
+      code. This is not the only contract that was (is) doubled in the code. The
+      problem with that is that we needed to search the code for each caption
+      and senselessly repeat the following maintenance step of adding the
+<![CDATA[<i18n:text/>]]>
+      -tags.
     </p>
     <source>
 <![CDATA[
@@ -79,17 +83,18 @@
     </source>
     <section id="enhanceMaintenance">
       <title>Enhance the maintenance</title>
-      <p>Now we can enhance the maintenance for the future and we give these code snippets 
-        contracts names (based on their functionality). This naming enables us to keep
-the contract separate from the position code itself. In xsl you would
-simply do:
+      <p>
+        Now we can enhance the maintenance for the future and we give these code
+        snippets contracts names (based on their functionality). This naming
+        enables us to keep the contract separate from the position code itself.
+        In xsl you would simply do:
       </p>
       <ol>
         <li>replace the script by <![CDATA[<xsl:call-template name="siteinfo-last-published"/>]]></li>
         <li>and add:</li>
       </ol>
-      
-      <source><![CDATA[<xsl:template name="siteinfo-last-published">
+      <source>
+<![CDATA[<xsl:template name="siteinfo-last-published">
  <script type="text/javascript">
   document.write("<i18n:text >Last Published:</i18n:text>&#160;" + document.lastModified);
  </script>
@@ -97,22 +102,23 @@
       </source>
       <p>
         This allows us in a next maintenance to just change the code of
-        <![CDATA[<xsl:template name="siteinfo-last-published"/>]]> and apply it in any position where
-        it is placed.  
+<![CDATA[<xsl:template name="siteinfo-last-published"/>]]>
+        and apply it in any position where it is placed.
       </p>
       <note>
-        Now this refactoring of the site2xhtml.xsl is exactly what we doing in creating contracts for the dispatcher.
+        Now this refactoring of the site2xhtml.xsl is exactly what we doing in
+        creating contracts for the dispatcher.
       </note>
     </section>
     <section id="blankContract">
       <title>Explaining the blank forrest:contract</title>
       <p>
         To start a new forrest:contract you can copy the 'blank.ft' from
-        <code>org.apache.forrest.plugin.themes.core/themes/common/html/blank.ft</code>. 
+        <code>org.apache.forrest.plugin.themes.core/themes/common/html/blank.ft</code>.
       </p>
       <p>
-        The 'blank.ft' is a simple xml file with the following code which you can use to base new contracts 
-        on:
+        The 'blank.ft' is a simple xml file with the following code which you
+        can use to base new contracts on:
       </p>
       <source>
 <![CDATA[<forrest:contract 
@@ -144,53 +150,71 @@
 </forrest:contract>]]>
       </source>
       <p>
-        The most important is the name of the contract <code><![CDATA[<forrest:contract name="blank"/>]]></code>. 
-        This name is the same as the file name of the contract (without file extension) <code>blank.ft</code>. 
+        The most important is the name of the contract <code>
+<![CDATA[<forrest:contract name="blank"/>]]>
+        </code>. This name is the same as the file name of the contract (without
+        file extension) <code>blank.ft</code>.
       </p>
-      <note>This is a <strong>naming convention</strong> that you need
-        to always meet. All @name attributes must be the file name of the contract without file extension.
+      <note>
+        This is a <strong>naming convention</strong> that you need to always
+        meet. All @name attributes must be the file name of the contract without
+        file extension.
       </note>
       <p>
-        The <code><![CDATA[<description/>]]></code> tag needs to be filled in with some information
-        that is explaining the contract to the webdesigner. The better explained the more efficient
-        for the web designer to pick the right contract.
+        The <code>
+<![CDATA[<description/>]]>
+        </code> tag needs to be filled in with some information that is
+        explaining the contract to the webdesigner. The better explained the
+        more efficient for the web designer to pick the right contract.
       </p>
-      <source><![CDATA[<description>
+      <source>
+<![CDATA[<description>
   siteinfo-last-published-howto will output the last published date of the site with the help of jscript.
 </description>]]>
       </source>
       <p>
-        In the <code><![CDATA[<usage/>]]></code> tag we have to explain how the designer can use 
-        the contract in his structurer.
+        In the <code>
+<![CDATA[<usage/>]]>
+        </code> tag we have to explain how the designer can use the contract in
+        his structurer.
       </p>
-      <source><![CDATA[<usage>]]>&lt;![CDATA[<![CDATA[<forrest:contract name="siteinfo-last-published-howto"/>]]>]]&gt;<![CDATA[</usage>]]>
+      <source>
+<![CDATA[<usage>]]>&lt;![CDATA[<![CDATA[<forrest:contract name="siteinfo-last-published-howto"/>]]>]]&gt;<![CDATA[</usage>]]>
       </source>
       <p>
-              To put contract code into the <code><![CDATA[<head></head>]]></code> section, this needs to be declared in the contract as :-
-        <code><![CDATA[<forrest:part xpath="/html/head">...</forrest:part>]]></code>
-        Simply by leaving out the xpath declaration and the code will go into body. You can use 
-        <code><![CDATA[<forrest:part xpath="/html/head">...</forrest:part><forrest:part>...</forrest:part>]]></code>
-        if you need content in both head and body.
+        To put contract code into the <code>
+<![CDATA[<head></head>]]>
+        </code> section, this needs to be declared in the contract as :- <code>
+<![CDATA[<forrest:part xpath="/html/head">...</forrest:part>]]>
+        </code> Simply by leaving out the xpath declaration and the code will go
+        into body. You can use <code>
+<![CDATA[<forrest:part xpath="/html/head">...</forrest:part><forrest:part>...</forrest:part>]]>
+        </code> if you need content in both head and body.
       </p>
       <warning>
-              The last paragraph about <![CDATA[<forrest:part/>]]> has replaced the older way of
-              <![CDATA[<forrest:template name="blank" body="false" head="false">]]>.
-        Please be aware that this part of the dispatcher is still a moving target and may change still.
+        The last paragraph about
+<![CDATA[<forrest:part/>]]>
+        has replaced the older way of
+<![CDATA[<forrest:template name="blank" body="false" head="false">]]>
+        . Please be aware that this part of the dispatcher is still a moving
+        target and may change still.
       </warning>
       <note>
-        It is possible to use contracts in different input/output formats. 
-        We are focusing for now on format="html" as output and the inputFormat="xsl".
+        It is possible to use contracts in different input/output formats. We
+        are focusing for now on format="html" as output and the
+        inputFormat="xsl".
       </note>
     </section>
     <section id="newContract">
       <title>Create a new contract</title>
       <note >
-        We use basic naming convention for contracts. Like
-        "naming does not say anything about layout position, but functionality of the contract".
+        We use basic naming convention for contracts. Like "naming does not say
+        anything about layout position, but functionality of the contract".
       </note>
-      <p> 
-        Now let us pick up the example we started with and create a "siteinfo-last-published-howto" contract.
-        Save the blank.ft to <code>{project.home}/src/documentation/resources/themes/common/html/siteinfo-last-published-howto.ft</code>.
+      <p>
+        Now let us pick up the example we started with and create a
+        "siteinfo-last-published-howto" contract. Save the blank.ft to
+        <code>{project.home}/src/documentation/resources/themes/common/html/siteinfo-last-published-howto.ft</code>.
       </p>
       <p>
         Now the maintenance-optimized code (xpath="/html/body/*") was:
@@ -200,9 +224,11 @@
  <script type="text/javascript">
   document.write("<i18n:text >Last Published:</i18n:text>&#160;" + document.lastModified);
  </script>
-</xsl:template>]]></source>
+</xsl:template>]]>
+      </source>
       <p>
-        In this code we have to do the following steps to use it in our contract:
+        In this code we have to do the following steps to use it in our
+        contract:
       </p>
       <ul>
         <li>Search and replace "siteinfo-last-published" with "siteinfo-last-publish-howto-body"</li>
@@ -217,8 +243,11 @@
  <script type="text/javascript">
   document.write("<i18n:text >Last Published:</i18n:text>&#160;" + document.lastModified);
  </script>
-</xsl:template>]]></source>
-      <p>Now we have to do some last steps in the siteinfo-last-publish-howto.ft</p>
+</xsl:template>]]>
+      </source>
+      <p>
+        Now we have to do some last steps in the siteinfo-last-publish-howto.ft
+      </p>
       <ul>
         <li>Search and replace "blank" with "siteinfo-last-publish-howto"</li>
         <li>Add description and usage of the contract</li>
@@ -227,7 +256,8 @@
       <p>
         As the result your code should look like this:
       </p>
-      <source><![CDATA[<forrest:contract xmlns:forrest="http://apache.org/forrest/templates/1.0"
+      <source>
+<![CDATA[<forrest:contract xmlns:forrest="http://apache.org/forrest/templates/1.0"
   name="siteinfo-last-published-howto">
   <description>
     siteinfo-last-published-howto will output the last published date of the site with the help of jscript.
@@ -256,28 +286,34 @@
     <section id="structurerContract">
       <title>Activating the contract</title>
       <p>
-        To see whether the new contract works we need to add it to our structurer.
-        The contract usage contains the contract-tag <code><![CDATA[<forrest:contract name="siteinfo-last-published-howto"/>]]></code>
-        Please see <a href="site:dispatcher/structurer">Getting started with the "structurer"</a> for more details.
+        To see whether the new contract works we need to add it to our
+        structurer. The contract usage contains the contract-tag <code>
+<![CDATA[<forrest:contract name="siteinfo-last-published-howto"/>]]>
+        </code> Please see <a href="site:dispatcher/structurer">Getting started
+        with the "structurer"</a> for more details.
       </p>
-       <note>
-        Next to write are parameter-contracts with advanced features of the dispatcher. 
+      <note>
+        Next to write are parameter-contracts with advanced features of the
+        dispatcher.
       </note>
     </section>
-    
     <section id="pluginContracts">
       <title>Plugin Supplied Contracts</title>
-      <p>It is possible for plugins to provide contracts for use in the dispatcher.
-      For details on how this is done see the <a href="http://forrest.apache.org/docs/howto/howto-buildPlugin.html#Dispatcher">Plugin HowTo</a>.</p>
+      <p>
+        It is possible for plugins to provide contracts for use in the
+        dispatcher. For details on how this is done see the
+        <a href="http://forrest.apache.org/docs/howto/howto-buildPlugin.html#Dispatcher">Plugin
+        HowTo</a>.
+      </p>
     </section>
   </steps>
   <extension title="Further Reading">
     <p>
-      Congratulations you are now able to work with structurer contracts. 
-      From here we recommend to read the following How-To's (if not already done):
+      Congratulations you are now able to work with structurer contracts. From
+      here we recommend to read the following How-To's (if not already done):
     </p>
     <ul>
-      <li><a href="site:dispatcher/structurer">Getting started with the "structurer"</a> </li>
+      <li><a href="site:dispatcher/structurer">Getting started with the "structurer"</a></li>
     </ul>
   </extension>
   <feedback title="Feedback">

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-quickstart.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-quickstart.xml?view=diff&rev=527037&r1=527036&r2=527037
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-quickstart.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-quickstart.xml Mon Apr  9 22:33:31 2007
@@ -18,36 +18,35 @@
 <!DOCTYPE howto PUBLIC "-//APACHE//DTD How-to V2.0//EN" "http://forrest.apache.org/dtd/howto-v20.dtd">
 <howto>
   <header>
-   <title>Dispatcher quickstart</title>
+    <title>Dispatcher quickstart</title>
     <version>0.3</version>
     <last-modified-content-date date="2007-04-09" />
   </header>
-
   <audience title="Intended Audience">
-    <p>People who are helping to develop the Dispatcher.</p>
-    <warning> The "Dispatcher" (previously known as "Views") is new functionality which is 
-      still in development phase. That is why it is in the "whiteboard" section 
-      of Forrest. This document will also need to change to keep pace.
-      We are working at the moment on moving this plugin
-      from the whiteboard into the core plugins.
-      See <a href="ext:forrest/status-themes">Status of Themes: Skins and Dispatcher</a>.
+    <p>
+      People who are helping to develop the Dispatcher.
+    </p>
+    <warning>
+      The "Dispatcher" (previously known as "Views") is new functionality which
+      is still in development phase. That is why it is in the "whiteboard"
+      section of Forrest. This document will also need to change to keep pace.
+      We are working at the moment on moving this plugin from the whiteboard
+      into the core plugins. See <a href="ext:forrest/status-themes">Status of
+      Themes: Skins and Dispatcher</a>.
     </warning>
   </audience>
-  
   <purpose title="Purpose">
     <p>
-      This document will get you started. We will Dispatcher-enable an
-      existing site and show how to add/remove ready-made contacts.
-      Then we will discuss how add your own new contracts.
+      This document will get you started. We will Dispatcher-enable an existing
+      site and show how to add/remove ready-made contacts. Then we will discuss
+      how add your own new contracts.
     </p>
     <p>
-      This document encourages developers to get involved with
-      fine-tuning and testing the dispatcher. Please help to
-      enhance the current core contracts so that people do not
-      need to re-invent the wheel.
+      This document encourages developers to get involved with fine-tuning and
+      testing the dispatcher. Please help to enhance the current core contracts
+      so that people do not need to re-invent the wheel.
     </p>
   </purpose>
-
   <prerequisites title="Prerequisites">
     <ul>
       <li>Using Forrest trunk of SVN (i.e. forrest-0.8-dev).
@@ -57,15 +56,15 @@
         new Dispatcher. Otherwise create a 'forrest seed-sample' site.</li>
     </ul>
   </prerequisites>
-
   <steps title="Steps">
-    <note> 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 
-      <a href="ext:forrestbar">Forrestbar</a> helps a lot with developing,
-      but is not necessary.
+    <note>
+      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
+      <a href="ext:forrestbar">Forrestbar</a> helps a lot with developing, but
+      is not necessary.
     </note>
-
     <section id="patch">
       <title>Get ready</title>
       <ul>
@@ -73,7 +72,6 @@
         <li>Do the 'cd main; build clean; build' (necessary because the Dispatcher is changing rapidly and uses some Java)</li>
       </ul>
     </section>
-
     <section id="enable">
       <title>Dispatcher-enable the existing site</title>
       <ul>
@@ -83,7 +81,6 @@
         <li>localhost:8888/index.html ... fantastic. See the pelt view.</li>
       </ul>
     </section>
-
     <section id="another-theme">
       <title>Use another theme</title>
       <ul>
@@ -93,7 +90,6 @@
         <li>localhost:8888/index.html ... See the new view.</li>
       </ul>
     </section>
-
     <section id="our-structurer">
       <title>Create our own structurer by copy-and-customise</title>
       <p>
@@ -101,24 +97,26 @@
       </p>
       <note>
         At this stage of rapid development of the Dispatcher, be sure to keep
-        your copy synchronised. Use 'diff' against the known svn version of
-        the core pelt.fv to track your local changes.
-        Also please consider contributing new contracts and changes to the
-        default structurers to the Forrest projects. That eases your local
-        version management and everyone will benefit.
+        your copy synchronised. Use 'diff' against the known svn version of the
+        core pelt.fv to track your local changes. Also please consider
+        contributing new contracts and changes to the default structurers to the
+        Forrest projects. That eases your local version management and everyone
+        will benefit.
       </note>
       <note>
-        We use <code>${themer.project.dir}</code> for PROJECT_HOME/src/documentation/resources/themes
-        (create the new directory folder first).
-        You can change this location by adding <![CDATA[<match pattern="themer.project.dir">
+        We use <code>${themer.project.dir}</code> for
+        PROJECT_HOME/src/documentation/resources/themes (create the new
+        directory folder first). You can change this location by adding
+<![CDATA[<match pattern="themer.project.dir">
           <location src="{properties:resources}/themes" />
-        </match> ]]> to your locationmap and point to another directory.
+        </match> ]]>
+        to your locationmap and point to another directory.
       </note>
       <ul>
         <li>Copy THEMER_PLUGIN/themes/pelt.fv into your project at
           ${themer.project.dir}/pelt.fv
   </li>
-  <li>Copy THEMER_PLUGIN/themes/pelt/panels/pelt-html.panel.xml into your
+        <li>Copy THEMER_PLUGIN/themes/pelt/panels/pelt-html.panel.xml into your
           project at  ${themer.project.dir}/pelt/panels/pelt-html.panel.xml
   </li>
         <li>Re-start 'forrest run'</li>
@@ -127,11 +125,10 @@
         </li>
       </ul>
       <p>
-        From here on there is no need to re-start 'forrest run'. Just edit
-        the structurer and see the effect.
+        From here on there is no need to re-start 'forrest run'. Just edit the
+        structurer and see the effect.
       </p>
     </section>
-
     <section id="remove-default-contract">
       <title>Remove a default contract</title>
       <ul>
@@ -140,12 +137,11 @@
         </li>
       </ul>
     </section>
-
     <section id="add-default-contract">
       <title>Add a default contract</title>
       <p>
-        Forrest provides many default contracts. If you are using the
-        Forrestbar then choose "Devs =&gt; ls.contracts". Otherwise visit
+        Forrest provides many default contracts. If you are using the Forrestbar
+        then choose "Devs =&gt; ls.contracts". Otherwise visit
         localhost:8888/ls.contracts.html
       </p>
       <ul>
@@ -156,32 +152,40 @@
         <li>
           Insert it at the appropriate point in your structurer. Note that it
           will need to go inside the appropriate CSS hook, e.g.
-        <source><![CDATA[  ...
+        <source>
+<![CDATA[  ...
   <forrest:hook name="footer">
     <forrest:contract name="siteinfo-current-time"/>
     ...
-]]></source>
-        </li>
+]]>
+          </source></li>
       </ul>
       <p>
-        Notice that you did not need to copy any other code to your project space.
-        Forrest finds the default contract in its core (the themes.core plugin).
-</p>
-<p>You will find some commonly used contracts in place but commented out in both the common 
-        and the pelt structurer files. Feel free to uncomment them to activate them, move them
-        around into other hooks or create new hooks for them.</p>
-<note>Work is currently under way for implementing Panels (was tiles). Currently we now have a 'panels'
-        sub-dir for each 'theme'. This panels sub-dir currently contains a main html panel '%themename%-html.panel.xml'
-        and a CSS panel '%themename%-css.panel.xml'. So you can change a collection of HTML and CSS outputs from these
-        two XML files.</note>
+        Notice that you did not need to copy any other code to your project
+        space. Forrest finds the default contract in its core (the themes.core
+        plugin).
+      </p>
+      <p>
+        You will find some commonly used contracts in place but commented out in
+        both the common and the pelt structurer files. Feel free to uncomment
+        them to activate them, move them around into other hooks or create new
+        hooks for them.
+      </p>
+      <note>
+        Work is currently under way for implementing Panels (was tiles).
+        Currently we now have a 'panels' sub-dir for each 'theme'. This panels
+        sub-dir currently contains a main html panel
+        '%themename%-html.panel.xml' and a CSS panel
+        '%themename%-css.panel.xml'. So you can change a collection of HTML and
+        CSS outputs from these two XML files.
+      </note>
     </section>
-
     <section id="add-project-contract">
       <title>Add a new project contract</title>
       <warning>
-        Carefully consider the purpose of your contracts. If they are useful
-        in a wider context, then they belong in plugins or the core of Forrest.
-        See below for further discussion on this important topic.
+        Carefully consider the purpose of your contracts. If they are useful in
+        a wider context, then they belong in plugins or the core of Forrest. See
+        below for further discussion on this important topic.
       </warning>
       <p>
         Project-based contracts are defined in theme-specific and
@@ -189,12 +193,13 @@
         ${themer.project.dir}/THEME_NAME/OUTPUT_FORMAT/
       </p>
       <p>
-       Project-based contracts common to all themes go in
+        Project-based contracts common to all themes go in
         ${themer.project.dir}/common/OUTPUT_FORMAT/
       </p>
       <p>
         To get started quickly (it is not a project-based contract but a demo),
-        copy one of the default contracts. e.g. copy siteinfo-current-time.ft to become siteinfo-doodad.ft ...
+        copy one of the default contracts. e.g. copy siteinfo-current-time.ft to
+        become siteinfo-doodad.ft ...
       </p>
       <ul>
         <li>
@@ -214,12 +219,11 @@
         </li>
       </ul>
       <p>
-        See a list of your project-based contracts and their usage notes via 
+        See a list of your project-based contracts and their usage notes via
         Forrestbar "Devs =&gt; ls.contracts.project". Otherwise visit
         localhost:8888/ls.contracts.project.html
       </p>
     </section>
-
 <!--
     <section id="newSection">
       <title>newSection</title>
@@ -228,7 +232,6 @@
       </ul>
     </section>
 -->
-
 <!--
     <section id="notes">
       <title>Notes</title>
@@ -237,29 +240,30 @@
 ]]></source>
     </section>
 -->
-
     <section id="manage">
       <title>Decide how to manage your contracts</title>
-<fixme author="open">
-Glean content from Ross' discussion:
-<a href="http://marc.theaimsgroup.com/?l=forrest-dev&amp;m=113748831226697">Re: Dispatcher quickstart</a>.
-</fixme>
+      <fixme author="open">
+        Glean content from Ross' discussion:
+        <a href="http://marc.theaimsgroup.com/?l=forrest-dev&amp;m=113748831226697">Re:
+        Dispatcher quickstart</a>.
+      </fixme>
     </section>
   </steps>
   <extension title="Further Reading">
-    <p> Congratulations you are now able to work with the Dispatcher. From here 
-      we recommend to read the following How-Tos: </p>
+    <p>
+      Congratulations you are now able to work with the Dispatcher. From here we
+      recommend to read the following How-Tos:
+    </p>
     <ul>
-      <li>
-        <a href="site:dispatcher/structurer">How to use the structurer</a>
-      </li>
-      <li>
-        <a href="site:dispatcher/contracts">Create your own contract 
-          implementation</a>
-      </li>
+      <li><a href="site:dispatcher/structurer">How to use the structurer</a></li>
+      <li><a href="site:dispatcher/contracts">Create your own contract 
+          implementation</a></li>
     </ul>
   </extension>
   <feedback title="Feedback">
-    <p> Please provide feedback about this document via the <a href="ext:mail-lists">mailing lists</a>. </p>
+    <p>
+      Please provide feedback about this document via the
+      <a href="ext:mail-lists">mailing lists</a>.
+    </p>
   </feedback>
 </howto>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-structurer.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-structurer.xml?view=diff&rev=527037&r1=527036&r2=527037
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-structurer.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/how/howto-dispatcher-structurer.xml Mon Apr  9 22:33:31 2007
@@ -17,84 +17,104 @@
 -->
 <!DOCTYPE howto PUBLIC "-//APACHE//DTD How-to V2.0//EN" "http://forrest.apache.org/dtd/howto-v20.dtd">
 <howto>
- <header>
-  <title>How to use the structurer</title>
-  <abstract> This How-To describes the usage of the structurer config domain 
-    specific language to create beautiful websites in no time. </abstract>
-  <last-modified-content-date date="2005-07-17"/>
- </header>
-
+  <header>
+    <title>How to use the structurer</title>
+    <abstract>
+      This How-To describes the usage of the structurer config domain specific
+      language to create beautiful websites in no time.
+    </abstract>
+    <last-modified-content-date date="2005-07-17"/>
+  </header>
   <audience title="Intended Audience">
-    <warning> 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.
-      See <a href="ext:forrest/status-themes">Status of Themes: Skins and Dispatcher</a>.
+    <warning>
+      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. See <a href="ext:forrest/status-themes">Status of Themes: Skins and
+      Dispatcher</a>.
     </warning>
-    <p> This part of the the dispatcher is called the structurer and is 
-      dedicated to webdesigner and user with some knowledge of css. </p>
+    <p>
+      This part of the the dispatcher is called the structurer and is dedicated
+      to webdesigner and user with some knowledge of css.
+    </p>
   </audience>
-  
   <purpose title="Purpose">
-    <p> This how-to will show you how to write a <strong>structurer</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>
+    <p>
+      This how-to will show you how to write a <strong>structurer</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>
   </purpose>
-
   <prerequisites title="Prerequisites">
     <ul>
       <li>Installing a mozilla browser and the forrestbar helps a lot in 
         developing.</li>
     </ul>
   </prerequisites>
-
   <steps title="Steps">
-    <note> 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. </note>
+    <note>
+      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.
+    </note>
     <section id="emptystructurer">
       <title>Empty structurer file</title>
-      <source><![CDATA[<forrest:views 
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
   </forrest:view>
 </forrest:views>]]>
       </source>
-      <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>
+      <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>
     </section>
-
     <section id="firststructurer">
       <title>Creating your first structurer</title>
-      <warning> 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. </warning>
-      <p> In this section we will create a new structurer. We will override the 
-        default structurer of the core themes for the index page of a new seed. 
-        For that we will create a file called <code>index.fv</code> and save it 
-        in the directory <code>{properties:resources}/structurer/url</code> 
-        (create it if needed). This will make <strong>only</strong> the 
-        index.html page look different from the rest of the project. </p>
-	
-	<note label="RecursiveDirectoryTraversalAction"> You can set a view for an individual file, a directory, or the whole site. To address multiple files in a directory call your  <code>.fv</code> file <code>common.fv</code>. If Forrest doesn't find a <code>.fv</code> file with the same name as the current file it will use the common.fv file in that directory, or the first one it finds going upwards through the directory structure. 
-	<code>common.fv</code> files affect all subdirectories unless they are overidden by another <code>common.fv</code> or a file-specific <code>foo.fv</code> file. 
-	</note>
-	
-      <p> Remember: pointing your browser to 
-        <code>http://localhost:8888/ls.contracts.html</code> 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 <code>index.fv</code> 
-        should look like: </p>
-      <source><![CDATA[<forrest:views 
+      <warning>
+        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.
+      </warning>
+      <p>
+        In this section we will create a new structurer. We will override the
+        default structurer of the core themes for the index page of a new seed.
+        For that we will create a file called <code>index.fv</code> and save it
+        in the directory <code>{properties:resources}/structurer/url</code>
+        (create it if needed). This will make <strong>only</strong> the
+        index.html page look different from the rest of the project.
+      </p>
+      <note label="RecursiveDirectoryTraversalAction">
+        You can set a view for an individual file, a directory, or the whole
+        site. To address multiple files in a directory call your
+        <code>.fv</code> file <code>common.fv</code>. If Forrest doesn't find a
+        <code>.fv</code> file with the same name as the current file it will use
+        the common.fv file in that directory, or the first one it finds going
+        upwards through the directory structure. <code>common.fv</code> files
+        affect all subdirectories unless they are overidden by another
+        <code>common.fv</code> or a file-specific <code>foo.fv</code> file.
+      </note>
+      <p>
+        Remember: pointing your browser to
+        <code>http://localhost:8888/ls.contracts.html</code> 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 <code>index.fv</code>
+        should look like:
+      </p>
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
@@ -112,22 +132,31 @@
   </forrest:view>
 </forrest:views>]]>
       </source>
-      <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: <code><![CDATA[<jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/>]]>
-         </code></p>
-          <p>Contracts can offer some property configuration of the outcome of 
-            the transformation. In our case <code><![CDATA[<forrest:property name="content-main-conf">
+      <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: <code>
+<![CDATA[<jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.body.xml"/>]]>
+        </code>
+      </p>
+      <p>
+        Contracts can offer some property configuration of the outcome of the
+        transformation. In our case <code>
+<![CDATA[<forrest:property name="content-main-conf">
         <headings type="underlined"/>
-      </forrest:property>]]>. </code></p>
-      
-      <p> Lets try our new structurer by pointing to 
-        <code>http://localhost:8888/index.html</code>. 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>
-      <source><![CDATA[<forrest:views 
+      </forrest:property>]]>
+        . </code>
+      </p>
+      <p>
+        Lets try our new structurer by pointing to
+        <code>http://localhost:8888/index.html</code>. 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>
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
@@ -153,19 +182,23 @@
   </forrest:view>
 </forrest:views>]]>
       </source>
-      <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>
+      <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>
     </section>
     <section id="hookstructurer">
       <title>Hooks in the structurer</title>
-      <p> We will use now the first time a <code><![CDATA[<forrest:hook name="layoutId"/>]]>
-         </code>. 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>
+      <p>
+        We will use now the first time a <code>
+<![CDATA[<forrest:hook name="layoutId"/>]]>
+        </code>. 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>
       <source>/* menu */
 #leftbar {
     width: 25%;
@@ -174,17 +207,25 @@
     border: thin dashed #565248;
 }
       </source>
-      <p> With this information we know to use <code><![CDATA[<forrest:hook name="leftbar"/>]]>
-        </code> 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>
-      <source><![CDATA[<forrest:hook name="leftbar">
+      <p>
+        With this information we know to use <code>
+<![CDATA[<forrest:hook name="leftbar"/>]]>
+        </code> 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>
+      <source>
+<![CDATA[<forrest:hook name="leftbar">
   <!-- Include contract here -->
 </forrest:hook>]]>
       </source>
-      <p> Our structurer will then look like: </p>
-      <source><![CDATA[<forrest:views 
+      <p>
+        Our structurer will then look like:
+      </p>
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
@@ -215,11 +256,14 @@
     </section>
     <section id="cssstructurer">
       <title>CSS in the structurer</title>
-      <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 <code><![CDATA[<forrest:css />]]>
-        </code>. </p>
+      <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 <code>
+<![CDATA[<forrest:css />]]>
+        </code>.
+      </p>
 <!--      <p>We will now create a file in <code><![CDATA[<!-#- 
    {1} name
    {2} extension (note we assume e.g. PATH/css/{1}.css)
@@ -228,11 +272,15 @@
         we will save a file called howTo.css in v2/src/documentation/resources/themes/common/css/howTo.css containing only 
         the following css:
       </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>
-      <source><![CDATA[<forrest:css >
+      <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>
+      <source>
+<![CDATA[<forrest:css >
 /* Extra css */
 /* menu */
 #leftbar {
@@ -241,16 +289,23 @@
   background: #CCCCFF;
   border: thin solid #000000;
 }
-</forrest:css>]]> </source>
-    <!--<fixme author="thorsten">from here</fixme>-->
-      <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>
+</forrest:css>]]>
+      </source>
+<!--<fixme author="thorsten">from here</fixme>-->
+      <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>
       <note>
-        <code><![CDATA[<forrest:css />]]></code> needs to be the direct child of 
-        <code><![CDATA[<forrest:view type="html">]]></code>
+        <code>
+<![CDATA[<forrest:css />]]>
+        </code> needs to be the direct child of <code>
+<![CDATA[<forrest:view type="html">]]>
+        </code>
       </note>
-      <source><![CDATA[<forrest:views 
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
@@ -288,9 +343,12 @@
   </forrest:view>
 </forrest:views>]]>
       </source>
-      <p>As a second example, let us change 
-        as well the content-main by adding another hook <code><![CDATA[<forrest:hook name="content"/>]]>
-        </code> We need to add the new layout container to our inline css: </p>
+      <p>
+        As a second example, let us change as well the content-main by adding
+        another hook <code>
+<![CDATA[<forrest:hook name="content"/>]]>
+        </code> We need to add the new layout container to our inline css:
+      </p>
       <source>
 /* The actual content */
 #content {
@@ -298,9 +356,12 @@
   padding: 0 20px 0 20px;
   background: #B9D3EE;
 }</source>
-      <p> Then we have to add the 'content-main' contract to the 'content' 
-        hook. The resulting structurer looks like: </p>
-      <source><![CDATA[<forrest:views 
+      <p>
+        Then we have to add the 'content-main' contract to the 'content' hook.
+        The resulting structurer looks like:
+      </p>
+      <source>
+<![CDATA[<forrest:views 
   xmlns:forrest="http://apache.org/forrest/templates/1.0"
   xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
   <forrest:view type="html">
@@ -346,37 +407,61 @@
   </forrest:view>
 </forrest:views>]]>
       </source>
-      <p> We are now able to place contracts into the layout container and add 
-        custom css to the structurer. </p>
+      <p>
+        We are now able to place contracts into the layout container and add
+        custom css to the structurer.
+      </p>
     </section>
     <section>
       <title>Linking to an external css file</title>
-      <note>This will change for the next version of views (v3) where we use a 
-        generic contract instead of the standalone element (forrest:css). </note>
-      <p>Make sure your project has the following directory structure. If it 
-        doesn't you'll have to create it. "common" is the fallback for all 
-        themes, if you want to override the css for a specific theme replace 
-        "common" with "themeName". This is where Forrest will look for external 
-        css stylesheets. </p>
+      <note>
+        This will change for the next version of views (v3) where we use a
+        generic contract instead of the standalone element (forrest:css).
+      </note>
+      <p>
+        Make sure your project has the following directory structure. If it
+        doesn't you'll have to create it. "common" is the fallback for all
+        themes, if you want to override the css for a specific theme replace
+        "common" with "themeName". This is where Forrest will look for external
+        css stylesheets.
+      </p>
       <source>
         $projectHome\src\documentation\resources\themes\common\css</source>
-      <p>Where $projectHome is the directory where your project exists.</p>
-      <p>Put your css stylesheets in this directory. For arguement's sake let's say 
-        it's called mystyles.css</p>
-      <p>Edit your common.fv structurer (or whatever structurer (theme) you are using). This 
-        will probably be some where in: </p>
+      <p>
+        Where $projectHome is the directory where your project exists.
+      </p>
+      <p>
+        Put your css stylesheets in this directory. For arguement's sake let's
+        say it's called mystyles.css
+      </p>
+      <p>
+        Edit your common.fv structurer (or whatever structurer (theme) you are
+        using). This will probably be some where in:
+      </p>
       <source>$projectHome\src\documentation\content\xdocs</source>
-      <p>or if you want to override it for the whole project in:</p>
+      <p>
+        or if you want to override it for the whole project in:
+      </p>
       <source>$projectHome\src\documentation\resources\themes\</source>
-      <p>Add the following element to the *.fv file:</p>
-      <source><![CDATA[<forrest:css url="styles.css" media="screen" theme="pelt"/>]]>
-        </source>
-      <p><strong>Important!</strong> This must appear straight after the "view 
-        type" element (as first child): </p>
-      <source><![CDATA[<forrest:view type="html">]]></source>
-      <source><![CDATA[<forrest:css url="mystyles.css" media="screen" theme="pelt"/>]]>
-        </source>
-      <p>The attributes are: </p>
+      <p>
+        Add the following element to the *.fv file:
+      </p>
+      <source>
+<![CDATA[<forrest:css url="styles.css" media="screen" theme="pelt"/>]]>
+      </source>
+      <p>
+        <strong>Important!</strong> This must appear straight after the "view
+        type" element (as first child):
+      </p>
+      <source>
+<![CDATA[<forrest:view type="html">]]>
+      </source>
+      <source>
+<![CDATA[<forrest:css url="mystyles.css" media="screen" theme="pelt"/>]]>
+      </source>
+      <p>
+        The attributes are:
+      </p>
       <ol>
         <li>the url where the css exist (NOTE: it will be rewritten to "../themes/mystyles.css").</li>
         <li>the media type, you can set different styles for screen and print. 
@@ -385,26 +470,32 @@
         <li>the theme, "pelt" is the default theme (another is the "common" theme). Change this if you 
           are using your own theme.</li>
       </ol>
-      <p>You can have as many css links as you like, and they'll appear in the 
-        head of your document in same order as they are in the .fv file.</p>
-      <fixme author="thorsten"> Add more information of recent threads around 
-        css in the structurer and information how you add an @import? Use e.g. 
+      <p>
+        You can have as many css links as you like, and they'll appear in the
+        head of your document in same order as they are in the .fv file.
+      </p>
+      <fixme author="thorsten">
+        Add more information of recent threads around css in the structurer and
+        information how you add an @import? Use e.g.
         <a 
-        href="http://marc.theaimsgroup.com/?t=113471292700001&amp;r=1&amp;w=2">http://marc.theaimsgroup.com/?t=113471292700001&amp;r=1&amp;w=2</a> 
-        </fixme>
+        href="http://marc.theaimsgroup.com/?t=113471292700001&amp;r=1&amp;w=2">http://marc.theaimsgroup.com/?t=113471292700001&amp;r=1&amp;w=2</a>
+      </fixme>
     </section>
   </steps>
   <extension title="Further Reading">
-    <p> Congratulations you are now able to work with the structurer. 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="site:dispatcher/contracts">Create your own contract 
-          implementation</a>
-      </li>
+      <li><a href="site:dispatcher/contracts">Create your own contract 
+          implementation</a></li>
     </ul>
   </extension>
   <feedback title="Feedback">
-    <p> Please provide feedback about this document via the <a href="ext:mail-lists">mailing lists</a>. </p>
+    <p>
+      Please provide feedback about this document via the
+      <a href="ext:mail-lists">mailing lists</a>.
+    </p>
   </feedback>
 </howto>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/index.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/index.xml?view=diff&rev=527037&r1=527036&r2=527037
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/index.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/index.xml Mon Apr  9 22:33:31 2007
@@ -22,149 +22,196 @@
     <title>Dispatcher (Draft - feature under development)</title>
   </header>
   <body>
-    <warning> The "dispatcher" is new functionality which is still in 
-      development phase. That is why it is in the "whiteboard" section of the 
-      Forrest distribution. We are working at the moment on moving this plugin 
-      from the whiteboard into the core plugins. Further all dispatcher related 
-      documents will be moved into the plugin as well. See <a 
-      href="http://forrest.apache.org/docs_0_80/status-themes.html">Status of 
-      Themes: Skins and Dispatcher</a>. </warning>
+    <warning>
+      The "dispatcher" is new functionality which is still in development phase.
+      That is why it is in the "whiteboard" section of the Forrest distribution.
+      We are working at the moment on moving this plugin from the whiteboard
+      into the core plugins. Further all dispatcher related documents will be
+      moved into the plugin as well. See
+      <a 
+      href="http://forrest.apache.org/docs_0_80/status-themes.html">Status
+      of Themes: Skins and Dispatcher</a>.
+    </warning>
     <section id="introduction">
       <title>Introduction</title>
-      <p> As stated in the Skin documentation the aim of the Forrest skins is 
-        to provide many capabilities so that extra skins are not needed. 
-        Experience showed that many Forrest users still decided to create a new 
-        skin because the default skin did not offer the features that they 
-        wanted or they "just" needed extra content in some pages. We introduced 
-        skinconf.xml where the user could configure some features of skins but 
-        it was up to the skin to support it and did not solve the problem to 
-        add page specific extra content. That led us to develop a new concept 
-        of creating skins (we called the result "themes") which would be more 
-        easily extensible by a user. </p>
+      <p>
+        As stated in the Skin documentation the aim of the Forrest skins is to
+        provide many capabilities so that extra skins are not needed. Experience
+        showed that many Forrest users still decided to create a new skin
+        because the default skin did not offer the features that they wanted or
+        they "just" needed extra content in some pages. We introduced
+        skinconf.xml where the user could configure some features of skins but
+        it was up to the skin to support it and did not solve the problem to add
+        page specific extra content. That led us to develop a new concept of
+        creating skins (we called the result "themes") which would be more
+        easily extensible by a user.
+      </p>
     </section>
     <section id="dispatcher">
       <title>Dispatcher - advanced separation of concerns</title>
-      <p> The aim of the "dispatcher" concept is to provide a flexible 
-        framework for creating site and page specific layout in different 
-        formats from different content through an advanced seperation of 
-        concerns.</p>
-      <p>The dispatcher is a filter that limits the data-model to a minimum by 
-        only requesting what the structurer (e.g. common-html.vt.xml) need. This leads to 
-        a different URL handling focus - away from document centric. A document 
-        can (but does not have to) be behind a certain URL. Like said a 
-        structurer can request any given data as input not only a document and 
-        the forrest core contracts (like navigation). It may be the main 
-        enhancement in comparison to skins that this concept lets you easily 
-        extend the default data models provided by forrest.</p>
-      <p>Since the dispatcher has implemented a fallback concept it makes 
-        maintenance of custom themes which are based on forrest core ones very 
-        easy and less time consuming. The principal is to override or extend 
-        only certain parts (contracts) of the core. This is based on the 
-        observation that normally only a small percentage of core skin 
-        contracts have been changed. At the same time the new plugin system 
-        emerged. Plugins are a way of extending Forrest to satisfy 
-        site-specific needs. This includes to provide for plugin specific 
-        contracts.</p>
+      <p>
+        The aim of the "dispatcher" concept is to provide a flexible framework
+        for creating site and page specific layout in different formats from
+        different content through an advanced seperation of concerns.
+      </p>
+      <p>
+        The dispatcher is a filter that limits the data-model to a minimum by
+        only requesting what the structurer (e.g. common-html.vt.xml) need. This
+        leads to a different URL handling focus - away from document centric. A
+        document can (but does not have to) be behind a certain URL. Like said a
+        structurer can request any given data as input not only a document and
+        the forrest core contracts (like navigation). It may be the main
+        enhancement in comparison to skins that this concept lets you easily
+        extend the default data models provided by forrest.
+      </p>
+      <p>
+        Since the dispatcher has implemented a fallback concept it makes
+        maintenance of custom themes which are based on forrest core ones very
+        easy and less time consuming. The principal is to override or extend
+        only certain parts (contracts) of the core. This is based on the
+        observation that normally only a small percentage of core skin contracts
+        have been changed. At the same time the new plugin system emerged.
+        Plugins are a way of extending Forrest to satisfy site-specific needs.
+        This includes to provide for plugin specific contracts.
+      </p>
       <section id="structurer">
         <title>Structurer - configuration for themes</title>
-        <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 
-      <code>skinconf.xml</code> 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. <code><![CDATA[<div id="content-main"/>]]>
-       </code>. 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 - 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 <code><![CDATA[<forrest:hook name="layoutId"/>]]>
-      </code> will be transformed to <code><![CDATA[<div id="layoutId"/>]]> 
-      </code> </p>
-    <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> The structurer is also a configuration file for the dispatcher. 
-        The new thinking 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 so that they can be 
-        dispatched. </p>
+        <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 <code>skinconf.xml</code> 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. <code>
+<![CDATA[<div id="content-main"/>]]>
+          </code>. 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 - 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 <code>
+<![CDATA[<forrest:hook name="layoutId"/>]]>
+          </code> will be transformed to <code>
+<![CDATA[<div id="layoutId"/>]]>
+          </code>
+        </p>
+        <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>
+          The structurer is also a configuration file for the dispatcher. The
+          new thinking 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 so that they
+          can be dispatched.
+        </p>
       </section>
       <section id="contracts">
         <title>Contracts - grouped functionality</title>
-        <p>The result of the leather-dev development was grouped functionality 
-          in named containers. We gave those code snippets names (based on their 
-          functionality) and called them <strong>contracts</strong>. This naming enabled us to 
-          keep the contract separate from the positioning of the code itself. Furthermore, 
-          since major parts of the code of skins has never been documented, 
-          we started to add for each contract a description and an explanation on
-          how to use this contract. The skinconf.xml gave an excellent 
-          source for this documentation effort, since it described most 
-          features of the pelt skin.</p>
-          <p>Contracts are standalone, self explaining, configurable 
-            pieces of xsl templates created purely for ease of maintenance.</p>
-          <p>Since these contracts are working from the input given in the <a 
-            href="#structurer">structurer</a>, it works on different input 
-            sources. One can pass variables into the contracts that can 
-            be used to apply presentation logic in the xsl (like sorting order, 
-            ...).</p>
+        <p>
+          The result of the leather-dev development was grouped functionality in
+          named containers. We gave those code snippets names (based on their
+          functionality) and called them <strong>contracts</strong>. This naming
+          enabled us to keep the contract separate from the positioning of the
+          code itself. Furthermore, since major parts of the code of skins has
+          never been documented, we started to add for each contract a
+          description and an explanation on how to use this contract. The
+          skinconf.xml gave an excellent source for this documentation effort,
+          since it described most features of the pelt skin.
+        </p>
+        <p>
+          Contracts are standalone, self explaining, configurable pieces of xsl
+          templates created purely for ease of maintenance.
+        </p>
+        <p>
+          Since these contracts are working from the input given in the
+          <a 
+            href="#structurer">structurer</a>, it works on
+          different input sources. One can pass variables into the contracts
+          that can be used to apply presentation logic in the xsl (like sorting
+          order, ...).
+        </p>
       </section>
     </section>
-     <section id="background">
+    <section id="background">
       <title>Background</title>
-      <p> The problem with the forrest skins so far has been that even if 
-        "only" the design changed (html-skeleton), we still had to write a 
-        completely new skin and implement all functionality. Another problem 
-        was that the functionality was not easily extensible by a user. We 
-        decided to support a standard regarding naming conventions for css 
-        elements. This standard has been developed on the <a 
-        href="http://www.oscom.org/events/oscom4/proposals/skins.html"> OSCOM 
-        website</a>, where you can find some more background information.</p>
+      <p>
+        The problem with the forrest skins so far has been that even if "only"
+        the design changed (html-skeleton), we still had to write a completely
+        new skin and implement all functionality. Another problem was that the
+        functionality was not easily extensible by a user. We decided to support
+        a standard regarding naming conventions for css elements. This standard
+        has been developed on the
+        <a 
+        href="http://www.oscom.org/events/oscom4/proposals/skins.html">
+        OSCOM website</a>, where you can find some more background information.
+      </p>
       <section id="nc-definition">
         <title>Definition of naming conventions</title>
-        <p> "A naming convention is an attempt to systematize names in a field 
-          so they unambiguously convey similar information in a similar 
-          manner." <a 
-          href="http://en.wikipedia.org/wiki/Naming_conventions">wikipedia</a> 
-          </p>
+        <p>
+          "A naming convention is an attempt to systematize names in a field so
+          they unambiguously convey similar information in a similar manner."
+          <a 
+          href="http://en.wikipedia.org/wiki/Naming_conventions">wikipedia</a>
+        </p>
       </section>
       <section id="leather">
         <title>leather-dev</title>
-        <p> That led to the development of the "leather-dev" skin which 
-          established a semantic container approach for div elements. 
-          Leather-dev evolved from the "pelt" skin and used almost the same 
-          functionality (contracts). We had started to encapsulate functional 
-          code into templates, but there have been still in 4 xsl files and without 
-          any documentation on what they are doing and how to use them. The 
-          problems with leather-dev was pointed out in the mail "<a 
+        <p>
+          That led to the development of the "leather-dev" skin which
+          established a semantic container approach for div elements.
+          Leather-dev evolved from the "pelt" skin and used almost the same
+          functionality (contracts). We had started to encapsulate functional
+          code into templates, but there have been still in 4 xsl files and
+          without any documentation on what they are doing and how to use them.
+          The problems with leather-dev was pointed out in the mail
+          "<a 
           href="http://marc.theaimsgroup.com/?l=forrest-dev&amp;m=111049344517653" 
-          >status on leather-dev?</a>". The main proplem was to limit users to 
-          only one html-skeleton which was way too limiting regarding design. Since 
-          we had now grouped functionality in named containers we were ready to 
-          start the dispatcher (aka forrest:views).</p>
+          >status
+          on leather-dev?</a>". The main proplem was to limit users to only one
+          html-skeleton which was way too limiting regarding design. Since we
+          had now grouped functionality in named containers we were ready to
+          start the dispatcher (aka forrest:views).
+        </p>
       </section>
     </section>
     <section id="info">
       <title>Further information</title>
-      <p> See the various How-to documents about the dispatcher, starting with 
-              the <a href="site:dispatcher/quickstart">quickstart</a>. It would also be useful to familiarise yourself with some of the terms used in the dispatcher, the <a href="site:about/glossary">Dispatcher Glossary</a> contains some of the terms used.
+      <p>
+        See the various How-to documents about the dispatcher, starting with the
+        <a href="site:dispatcher/quickstart">quickstart</a>. It would also be
+        useful to familiarise yourself with some of the terms used in the
+        dispatcher, the <a href="site:about/glossary">Dispatcher Glossary</a>
+        contains some of the terms used.
+      </p>
+      <p>
+        Apache Forrest 1.0 Specification (Draft, not yet published):
+        <code>site-author/content/xdocs/TR/2005/WD-forrest10.html</code>
       </p>
-      <p> Apache Forrest 1.0 Specification (Draft, not yet published): 
-        <code>site-author/content/xdocs/TR/2005/WD-forrest10.html</code> </p>
     </section>
   </body>
 </document>



Mime
View raw message