You are viewing a plain text version of this content. The canonical link for it is here.
Posted to svn@forrest.apache.org by th...@apache.org on 2007/04/02 02:51:57 UTC

svn commit: r524707 - in /forrest/trunk/whiteboard/plugins: org.apache.forrest.plugin.internal.dispatcher/ org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/ org.apache.forrest.themes.core/themes/ org.apache.forrest.themes.c...

Author: thorsten
Date: Sun Apr  1 17:51:55 2007
New Revision: 524707

URL: http://svn.apache.org/viewvc?view=rev&rev=524707
Log:
FOR-975 Renaming tiles to panel

Added:
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-fo.panel.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-html.panel.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/export-link.panel.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-css.panel.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-html.panel.xml
Removed:
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/fo/common-fo.vt.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/html/common-html.vt.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/html/export-link.vt.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/css/pelt-css.vt.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/html/pelt-html.vt.xml
Modified:
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/internal.xmap
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/locationmap.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/documentation/content/xdocs/dispatcher-glossary.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/status.xml
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common.fv
    forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt.fv

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/internal.xmap
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/internal.xmap?view=diff&rev=524707&r1=524706&r2=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/internal.xmap (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/internal.xmap Sun Apr  1 17:51:55 2007
@@ -130,11 +130,11 @@
     </map:pipeline>
 
     <!-- You can group elements to a template and call it from any view. 
-      <jx:import uri="cocoon://prepare.tiles.export-link"/>
+      <jx:import uri="cocoon://prepare.panels.export-link"/>
     -->
     <map:pipeline>
-      <map:match pattern="prepare.tiles.**-*">
-        <map:generate src="{lm:resolve.tiles.{1}-{2}}" />
+      <map:match pattern="prepare.panels.**">
+        <map:generate src="{lm:resolve.panels.{1}}" />
         <map:transform type="linkrewriter" />
         <map:transform src="{lm:root-strip.xsl}" />
         <map:serialize />

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/locationmap.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/locationmap.xml?view=diff&rev=524707&r1=524706&r2=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/locationmap.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/locationmap.xml Sun Apr  1 17:51:55 2007
@@ -246,22 +246,22 @@
                     />
             </select>
         </match>
-        <!-- Structurer tiles - You can group elements to a template and call it from any view. -->
-        <match pattern="resolve.tiles.**-*">
+        <!-- Structurer panels - You can group elements to a template and call it from any view. -->
+        <match pattern="resolve.panels.**">
             <select type="exists">
                 <location 
-                    src="{properties:resources}/themes/{properties:dispatcher.theme}/{2}/{1}-{2}.vt.xml" 
+                    src="{properties:resources}/themes/{properties:dispatcher.theme}/panels/{1}.panel.xml" 
                     />
                 <location 
-                    src="{properties:resources}/themes/{properties:dispatcher.fallback.theme}/{2}/{1}-{2}.vt.xml" 
+                    src="{properties:resources}/themes/{properties:dispatcher.fallback.theme}/panels/{1}.panel.xml" 
                     />
-                <!--  plugin provided tiles -->
-                <location src="{lm:resolvePluginTiles.{1}-{2}}" />
+                <!--  plugin provided panels -->
+                <location src="{lm:resolvePluginTiles.{1}}" />
                 <location 
-                    src="{lm:dispatcher.themer}/themes/{properties:dispatcher.theme}/{2}/{1}-{2}.vt.xml" 
+                    src="{lm:dispatcher.themer}/themes/{properties:dispatcher.theme}/panels/{1}.panel.xml" 
                     />
                 <location 
-                    src="{lm:dispatcher.themer}/themes/{properties:dispatcher.fallback.theme}/{2}/{1}-{2}.vt.xml" 
+                    src="{lm:dispatcher.themer}/themes/{properties:dispatcher.fallback.theme}/panels/{1}.panel.xml" 
                     />
             </select>
         </match>

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=524707&r1=524706&r2=524707
==============================================================================
--- 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 Sun Apr  1 17:51:55 2007
@@ -126,8 +126,11 @@
         feel.</definition>
 <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 part of a themes structurer configuration
-        file such as %themename%-html.vt.xml (e.g pelt-html.vt.xml)</definition>
+<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> 
@@ -153,14 +156,14 @@
                           <definition>forrest:property - Todo:open</definition>
                   </definitions>
           </item>
-          <item id="Panel">
-                  <term>Panel</term>
+          <item id="Panels">
+                  <term>Panels</term>
                   <see>
                           <id>Tiles</id>
                           <text>Tiles</text>
                   </see>
                   <definitions>
-                          <definition>Panel is the new name for a tile - a collection of contracts. Not yet implemented.</definition>
+                          <definition>Panels is the new name for a tile - a collection of contracts. </definition>
                                   </definitions>
           </item>
   </part>
@@ -212,13 +215,13 @@
           <item id="Tiles">
                   <term>Tiles</term>
       <see>
-        <id>Panel</id>
-        <text>Panel</text>
+        <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 is the current but soon to be deprecated name for a collection of contracts, it is soon to be
-                                  re-named and re-implemented as a 'Panel'</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>
     <item id="Themes">

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/status.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/status.xml?view=diff&rev=524707&r1=524706&r2=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/status.xml (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/status.xml Sun Apr  1 17:51:55 2007
@@ -40,6 +40,9 @@
   <changes>
     <!-- Add new releases here -->
     <release version="0.1" date="unreleased">
+      <action context="code" dev="TS" fixes-bug="FOR-975" importance="high">
+        FOR-975 Renaming tiles to panel.
+      </action>
       <action context="code" type="add" dev="TS" fixes-bug="FOR-937" due-to="Sjur Moshagen">
         More i18n work by Sjur on Dispatcher. This patch correctly localizes menus &amp; tabs.
       </action>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common.fv
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common.fv?view=diff&rev=524707&r1=524706&r2=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common.fv (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common.fv Sun Apr  1 17:51:55 2007
@@ -26,7 +26,7 @@
   <!-- 
     You can group elements (hooks and contracts) to a template 
     and import it from any structurer. 
-    The following <jx:import uri="cocoon://prepare.tiles.*"/>
+    The following <jx:import uri="cocoon://prepare.panels.*"/>
     are stored in 
     {properties:dispatcher.themer}/themes/{properties:dispatcher.theme}/html/{1}.vt.xml 
     or 
@@ -35,9 +35,9 @@
     {properties:resources}/themes/{properties:dispatcher.theme}/html/{1}.vt.xml
 -->
   <forrest:view type="fo" hooksXpath="/">
-    <jx:import uri="cocoon://prepare.tiles.common-fo"/>
+    <jx:import uri="cocoon://prepare.panels.common-fo"/>
   </forrest:view>
   <forrest:view type="html" hooksXpath="/html/body">
-    <jx:import uri="cocoon://prepare.tiles.common-html"/>
+    <jx:import uri="cocoon://prepare.panels.common-html"/>
   </forrest:view>
 </forrest:views>

Added: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-fo.panel.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-fo.panel.xml?view=auto&rev=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-fo.panel.xml (added)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-fo.panel.xml Sun Apr  1 17:51:55 2007
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<forrest:template xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
+    <!-- Settings specific to PDF output. -->
+    <forrest:contract name="layout-master-set">
+      <forrest:property name="config">
+        <!-- 
+        Supported page sizes are a0, a1, a2, a3, a4, a5, executive,
+        folio, legal, ledger, letter, quarto, tabloid (default letter).
+        Supported page orientations are portrait, landscape (default
+        portrait).
+        -->
+        <page size="a4" orientation="portrait"/>
+        <!--
+        Margins can be specified for top, bottom, inner, and outer
+        edges. If double-sided="false", the inner edge is always left
+        and the outer is always right. If double-sided="true", the
+        inner edge will be left on odd pages, right on even pages,
+        the outer edge vice versa.
+        Specified below are the default settings.
+        -->
+        <margins double-sided="false">
+          <top>1in</top>
+          <bottom>1in</bottom>
+          <inner>1.25in</inner>
+          <outer>1in</outer>
+        </margins>
+      </forrest:property>
+    </forrest:contract>
+    <forrest:contract name="content-title" dataURI="cocoon://#{$getRequest}.title.xml"/>
+    <forrest:contract name="page-header" dataURI="cocoon://#{$getRequest}.title.xml"/>
+    <forrest:contract name="page-footer-numbering">
+        <!-- 
+        Pattern of the page numbering in the footer - Default is "Page x".
+        first occurrence of '1' digit represents the current page number,
+        second occurrence of '1' digit represents the total page number,
+        anything else is considered as the static part of the numbering pattern.
+        Examples : x is the current page number, y the total page number.
+        <page-numbering-format>none</page-numbering-format> Do not displays the page numbering
+        <page-numbering-format>1</page-numbering-format> Displays "x"
+        <page-numbering-format>p1.</page-numbering-format> Displays "px."
+        <page-numbering-format>Page 1/1</page-numbering-format> Displays "Page x/y"
+        <page-numbering-format>(1-1)</page-numbering-format> Displays "(x-y)"
+        -->
+      <forrest:property name="skip-first-page-numbering">true</forrest:property>
+      <forrest:property name="page-numbering-format">1/1</forrest:property>
+    </forrest:contract>
+    <forrest:contract name="page-footer-copyright">
+      <forrest:property name="copyright">
+        <!-- The following are used to construct a copyright statement as follows :
+        <property> <symbol> <year> <vendor> <msg>
+                         <url>
+        ie. Copyright c 2002 ACME
+	      http://ACME.org
+	inception year option let you create a copyright with a range of date automaticalculated :
+	2002-2007
+       -->
+        <year inception='true'>2002</year>
+        <vendor>ACME</vendor>
+        <url>http://ACME.org</url>
+        <msg>Tous droits r&#xe9;serv&#xe9;s.</msg>
+        <symbol></symbol>
+        <property></property>
+      </forrest:property>
+    </forrest:contract>
+    <forrest:contract name="content-abstract" dataURI="cocoon://#{$getRequest}.abstract.xml"/>
+    <forrest:contract name="content-notice" dataURI="cocoon://#{$getRequest}.notice.xml"/>
+    <forrest:contract name="content-authors" dataURI="cocoon://#{$getRequest}.authors.xml"/>
+    <forrest:contract name="content-toc" dataURI="cocoon://#{$getRequest}.toc.xml">
+        <!-- Configure the TOC, i.e. the Table of Contents.
+        @max-depth
+        how many "section" levels need to be included in the
+	generated Table of Contents (TOC).
+	  (default is 2)
+        @page-break-after (default is true)
+	jump to the next page after the TOC.
+	  (default is true)
+        @min-sections
+        Minimum required to create a TOC.
+          (FIXME min-section is not managed yet)
+        -->
+      <forrest:property name="max-depth">2</forrest:property>
+      <forrest:property name="page-break-after">true</forrest:property>
+    </forrest:contract>
+    <forrest:contract name="content-main-outline" dataURI="cocoon://#{$getRequest}.toc.xml"/>
+    <forrest:contract name="content-main" dataURI="cocoon://#{$getRequest}.source.rewritten.xml">
+      <forrest:property name="config">
+        <!-- 
+        Supported text alignments are left, right, justify (default left).
+        -->
+        <page text-align="left" background-color="#ffffff"/>
+
+        <!-- Heading types can be clean|underlined|boxed  -->
+        <headings type="underlined" color="#4a6d8c"/>
+
+        <!--
+        Print the URL text next to all links going outside the file
+        -->
+        <show-external-urls>false</show-external-urls>
+
+	<colors>
+          <color name="code" value="#CFDCED"/>
+          <color name="highlight" value="#ffff00"/>
+          <color name="fixme" value="#cc6600"/>
+          <color name="note" value="#006699"/>
+          <color name="warning" value="#990000"/>
+          <color name="table" value="#7099C5"/>
+          <color name="table-cell" value="#f0f0ff"/>
+          <color name="body" value="#ffffff" link="#0F3660"
+            vlink="#009999" hlink="#000066"/>
+        </colors>
+
+      </forrest:property>
+    </forrest:contract>
+</forrest:template>

Added: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-html.panel.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-html.panel.xml?view=auto&rev=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-html.panel.xml (added)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/common-html.panel.xml Sun Apr  1 17:51:55 2007
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<forrest:template xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
+  <!-- 
+        @type defines this structurer to html.
+        @hooksXpath defines where all hooks will be injected (as prefix).
+        -->
+    <forrest:contract name="branding-css-links">
+      <!-- More information around this contract
+        http://marc.theaimsgroup.com/?l=forrest-dev&m=113473237805195&w=2
+        -->
+      <!--Note: The forrest:properties element does not exit anymore (in comparison to a previous versions) -->
+      <forrest:property name="branding-css-links-input">
+        <css url="common.css"/>
+      </forrest:property>
+    </forrest:contract>
+    <forrest:contract name="siteinfo-meta" dataURI="lm://project.build-info">
+      <forrest:property name="custom">
+         <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
+      </forrest:property>
+      <forrest:property name="theme" value="common"/>
+    </forrest:contract>
+    <!--
+        nuggets (extra data requested by the contract) are now defined in the contract element. 
+        As well the former @nugget is now called @dataURI to reflect better the function of the attribute.
+      -->
+    <forrest:hook name="container">
+      <forrest:hook name="header">
+        <forrest:contract name="branding-tagline">
+          <forrest:property name="branding-tagline-name">new 
+            seed</forrest:property>
+          <forrest:property name="branding-tagline-tagline">powered by the 
+            dispatcher</forrest:property>
+        </forrest:contract>
+        <forrest:hook name="nav-main-hook">
+          <forrest:contract name="nav-main" 
+            dataURI="cocoon://#{$getRequest}.navigation.xml"/>
+          <forrest:contract name="nav-main-sub" 
+            dataURI="cocoon://#{$getRequest}.navigation.xml"/>
+        </forrest:hook>
+      </forrest:hook>
+      <forrest:hook name="page">
+        <forrest:hook name="leftbar">
+          <forrest:contract name="nav-section" 
+            dataURI="cocoon://#{$getRequest}.navigation.xml">
+            <forrest:property name="nav-section-toc" nugget="get.toc">
+              <jx:import uri="cocoon://#{$getRequest}.toc.xml"/>
+            </forrest:property>
+            <forrest:property name="toc" max-depth="2"/>
+          </forrest:contract>
+        </forrest:hook>
+        <forrest:contract name="search-input">
+          <forrest:property name="search-input">
+            <search name="MyProject" domain="mydomain" provider="google"/>
+          </forrest:property>
+        </forrest:contract>
+      </forrest:hook>
+<!--  
+    You can group elements (hooks and contracts) to a template 
+    and import it from any structurer. 
+  
+<forrest:hook name="export-link">
+  <forrest:contract name="content-xml-link"/>
+  <forrest:contract name="content-pdf-link"/>
+</forrest:hook>
+  
+    can be called as  <jx:import uri="cocoon://prepare.panels.export-link"/>
+    when stored in 
+    {properties:resources}/themes/{properties:dispatcher.theme}/html/export-link.vt.xml
+    or
+    {properties:dispatcher.themer}/themes/{properties:dispatcher.theme}/html/export-link.vt.xml 
+    or 
+    {properties:dispatcher.themer}/themes/{properties:dispatcher.fallback.theme}/html/export-link.vt.xml
+    
+    FIXME: The above does not work as a result of http://svn.apache.org/viewvc?view=rev&rev=520650 
+-->
+        <forrest:hook name="export-link">
+            <forrest:contract name="content-source-xml-link"/>
+            <forrest:contract name="content-pdf-link"/>
+        </forrest:hook>
+          
+        <forrest:hook name="content">
+          <forrest:contract name="content-title" 
+            dataURI="cocoon://#{$getRequest}.title.xml"/>
+          <forrest:contract name="content-abstract" 
+            dataURI="cocoon://#{$getRequest}.abstract.xml"/>
+          <forrest:contract name="content-minitoc" 
+            dataURI="cocoon://#{$getRequest}.toc.xml">
+            <forrest:property name="content-minitoc-conf" max-depth="2" 
+              min-sections="1" location="page"/>
+          </forrest:contract>
+          <forrest:contract name="content-main" 
+              dataURI="cocoon://#{$getRequest}.body.xml"/>
+        </forrest:hook>
+    </forrest:hook>
+    <forrest:hook name="footer">
+      <forrest:contract name="siteinfo-feedback">
+          <forrest:property name="siteinfo-feedback">
+            <feedback to="webmaster@foo.com"
+              href="mailto:webmaster@foo.com?subject=Feedback&#160;" >
+              Send feedback about the website to:
+            </feedback>
+          </forrest:property>
+      </forrest:contract>
+      <forrest:contract name="siteinfo-last-published"/>
+    </forrest:hook>
+</forrest:template>
\ No newline at end of file

Added: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/export-link.panel.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/export-link.panel.xml?view=auto&rev=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/export-link.panel.xml (added)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/common/panels/export-link.panel.xml Sun Apr  1 17:51:55 2007
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<forrest:template 
+    xmlns:forrest="http://apache.org/forrest/templates/1.0"
+    xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
+  <forrest:hook name="export-link">
+    <forrest:contract name="content-source-xml-link"/>
+    <forrest:contract name="content-pdf-link"/>
+    <!-- You can include other templates from panels as well -->
+    <!--<jx:import uri="cocoon://prepare.structurer-panels.export-link-test"/>-->
+    <!-- FIXME: jxpath -->
+    <!-- Use this when jxpath bug is solved -->
+    <!--<jx:import uri="lm:panels.export-link-test"/>-->
+  </forrest:hook>
+</forrest:template>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt.fv
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt.fv?view=diff&rev=524707&r1=524706&r2=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt.fv (original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt.fv Sun Apr  1 17:51:55 2007
@@ -22,14 +22,14 @@
   <jx:set var="getRequest" value="#{$cocoon/parameters/getRequest}"/>
   <jx:set var="getRequestExtension" value="#{$cocoon/parameters/getRequestExtension}" />
   <forrest:view type="fo" hooksXpath="/">
-    <jx:import uri="cocoon://prepare.tiles.common-fo"/>
+    <jx:import uri="cocoon://prepare.panels.common-fo"/>
   </forrest:view>
   <!-- CSS View of the request e.g. index.dispatcher.css -->
   <forrest:view type="css" hooksXpath="/">
-    <jx:import uri="cocoon://prepare.tiles.pelt-css"/>
+    <jx:import uri="cocoon://prepare.panels.pelt-css"/>
   </forrest:view>
   <!-- HTML View of the request (e.g. index.html)-->
   <forrest:view type="html" hooksXpath="/html/body">
-    <jx:import uri="cocoon://prepare.tiles.pelt-html"/>
+    <jx:import uri="cocoon://prepare.panels.pelt-html"/>
   </forrest:view>
 </forrest:views>

Added: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-css.panel.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-css.panel.xml?view=auto&rev=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-css.panel.xml (added)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-css.panel.xml Sun Apr  1 17:51:55 2007
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<forrest:template xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
+  <forrest:contract name="branding-theme-profiler">
+    <forrest:properties contract="branding-theme-profiler">
+      <forrest:property name="branding-theme-profiler-theme">
+        Pelt</forrest:property>
+      <forrest:property name="branding-theme-profiler">
+        <!-- These values are used for the generated CSS files.
+        They essentially "override" the default colors defined in the chosen theme.
+        There are four duplicate "groups" of colors below, denoted by comments:
+        Color group: Forrest, Krysalis, Collabnet, and Lenya using Pelt.
+        They are provided for example only. To customize the colors of any theme,
+        uncomment one of these groups of color elements and change the values
+        of the particular color elements that you wish to change.
+        Note that by default, all color groups are commented-out which means that
+        the default colors provided by the theme are being used.
+        -->
+        <!-- Color group: Forrest: example colors similar to forrest.apache.org
+        Some of the element names are obscure, so comments are added to show how
+        the "pelt" theme uses them, other themes might use these elements in a different way.
+        Tip: temporarily change the value of an element to red (#ff0000) and see the effect.
+        pelt: breadtrail: the strip at the top of the page and the second strip under the tabs
+        pelt: header: top strip containing project and group logos
+        pelt: heading|subheading: section headings within the content
+        pelt: navstrip: the strip under the tabs which contains the published date
+        pelt: menu: the left-hand navigation panel
+        pelt: toolbox: the selected menu item
+        pelt: border: line border around selected menu item
+        pelt: searchbox: the background of the searchbox
+        pelt: body: any remaining parts, e.g. the bottom of the page
+        pelt: footer: the second from bottom strip containing credit logos and published date
+        pelt: feedback: the optional bottom strip containing feedback link
+        -->
+        
+        <!-- Color group: pelt -->
+        <!--
+        <color name="breadtrail" value="#CFDCED" font="#0F3660" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="header" value="#294563"/>
+        <color name="tab-selected" value="#4A6D8C" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="tab-unselected" value="#B5C7E7" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="subtab-selected" value="#4A6D8C" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="subtab-unselected" value="#4A6D8C" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="heading" value="#294563"/>
+        <color name="subheading" value="#4A6D8C"/>
+        <color name="published" value="#4A6D8C" font="#FFFFFF"/>
+        <color name="feedback" value="#4A6D8C" font="#FFFFFF" align="center"/>
+        <color name="navstrip" value="#4A6D8C" font="#FFFFFF" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
+        <color name="menu" value="#4A6D8C" font="#CFDCED" link="#FFFFFF" vlink="#FFFFFF" hlink="#FFCF00"/>    
+        <color name="toolbox" value="#CFDCED"/>
+        <color name="border" value="#999999"/>
+        <color name="dialog" value="#4A6D8C"/>
+        <color name="searchbox" value="#4A6D8C" font="#000000"/>
+        <color name="body" value="#FFFFFF" link="#0F3660" vlink="#009999" hlink="#000066"/>
+        <color name="table" value="#7099C5"/>    
+        <color name="table-cell" value="#F0F0FF"/>    
+        <color name="highlight" value="#FFFF00"/>
+        <color name="fixme" value="#CC6600"/>
+        <color name="note" value="#006699"/>
+        <color name="warning" value="#990000"/>
+        <color name="code" value="#CFDCED"/>
+        <color name="footer" value="#CEDFEF"/>
+        -->
+        <!-- Color group: Krysalis -->
+        <!--
+        <color name="header"    value="#FFFFFF"/>
+        
+        <color name="tab-selected" value="#a5b6c6" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="tab-unselected" value="#F7F7F7"  link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="subtab-selected" value="#a5b6c6"  link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="subtab-unselected" value="#a5b6c6"  link="#000000" vlink="#000000" hlink="#000000"/>
+        
+        <color name="heading" value="#a5b6c6"/>
+        <color name="subheading" value="#CFDCED"/>
+        
+        <color name="navstrip" value="#CFDCED" font="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="toolbox" value="#a5b6c6"/>
+        <color name="border" value="#a5b6c6"/>
+        
+        <color name="menu" value="#F7F7F7" link="#000000" vlink="#000000" hlink="#000000"/>    
+        <color name="dialog" value="#F7F7F7"/>
+        
+        <color name="body"    value="#ffffff" link="#0F3660" vlink="#009999" hlink="#000066"/>
+        
+        <color name="table" value="#a5b6c6"/>    
+        <color name="table-cell" value="#ffffff"/>    
+        <color name="highlight" value="#ffff00"/>
+        <color name="fixme" value="#cc6600"/>
+        <color name="note" value="#006699"/>
+        <color name="warning" value="#990000"/>
+        <color name="code" value="#a5b6c6"/>
+        
+        <color name="footer" value="#a5b6c6"/>
+        -->
+        <!-- Color group: Collabnet -->
+        <!--
+        <color name="header"    value="#003366"/>
+        
+        <color name="tab-selected" value="#dddddd" link="#555555" vlink="#555555" hlink="#555555"/>
+        <color name="tab-unselected" value="#999999" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
+        <color name="subtab-selected" value="#cccccc" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="subtab-unselected" value="#cccccc" link="#555555" vlink="#555555" hlink="#555555"/>
+        
+        <color name="heading" value="#003366"/>
+        <color name="subheading" value="#888888"/>
+        
+        <color name="navstrip" value="#dddddd" font="#555555"/>
+        <color name="toolbox" value="#dddddd" font="#555555"/>
+        <color name="border" value="#999999"/>
+        
+        <color name="menu" value="#ffffff"/>    
+        <color name="dialog" value="#eeeeee"/>
+        
+        <color name="body"      value="#ffffff"/>
+        
+        <color name="table" value="#ccc"/>    
+        <color name="table-cell" value="#ffffff"/>   
+        <color name="highlight" value="#ffff00"/>
+        <color name="fixme" value="#cc6600"/>
+        <color name="note" value="#006699"/>
+        <color name="warning" value="#990000"/>
+        <color name="code" value="#003366"/>
+        
+        <color name="footer" value="#ffffff"/>
+        -->
+        <!-- Color group: Lenya using pelt-->
+        <!--<color name="header" value="#ffffff"/>
+        
+        <color name="tab-selected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="tab-unselected" value="#F5F4E9" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="subtab-selected" value="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="subtab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
+        
+        <color name="heading" value="#E5E4D9"/>
+        <color name="subheading" value="#000000"/>
+        <color name="published" value="#000000"/>
+        <color name="navstrip" value="#E5E4D9" font="#000000"/>
+        <color name="toolbox" value="#CFDCED" font="#000000"/>
+        <color name="border" value="#999999"/>
+        
+        <color name="menu" value="#E5E4D9" font="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
+        <color name="dialog" value="#CFDCED"/>
+        <color name="body" value="#ffffff" />
+        
+        <color name="table" value="#ccc"/>
+        <color name="table-cell" value="#ffffff"/>
+        <color name="highlight" value="#ffff00"/>
+        <color name="fixme" value="#cc6600"/>
+        <color name="note" value="#006699"/>
+        <color name="warning" value="#990000"/>
+        <color name="code" value="#003366"/>
+        
+        <color name="footer" value="#E5E4D9"/>-->
+      </forrest:property>
+    </forrest:properties>
+  </forrest:contract>
+</forrest:template>

Added: forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-html.panel.xml
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-html.panel.xml?view=auto&rev=524707
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-html.panel.xml (added)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.themes.core/themes/pelt/panels/pelt-html.panel.xml Sun Apr  1 17:51:55 2007
@@ -0,0 +1,287 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<forrest:template xmlns:forrest="http://apache.org/forrest/templates/1.0"
+  xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
+  <!-- 
+        @type defines this structurer to html.
+        @hooksXpath defines where all hooks will be injected (as prefix).
+        -->
+    <forrest:contract name="branding-css-links">
+      <!-- More information around this contract
+        http://marc.theaimsgroup.com/?l=forrest-dev&m=113473237805195&w=2
+        -->
+      <!--Note: The forrest:properties element does not exit anymore (in comparison to a previous versions) -->
+      <forrest:property name="branding-css-links-input">
+        <css url="common.css" media="screen" rel="alternate stylesheet" 
+          theme="common"/>
+        <css url="leather-dev.css" media="screen" rel="alternate stylesheet" 
+          theme="common"/>
+        <css url="pelt.screen.css" media="screen" theme="Pelt"/>
+        <!-- You can request url specific css as defined above, 
+          but beware that you need to use the *.dispatcher.css extension!!!-->
+        <css prefix="" url="#{$getRequest}.dispatcher.css" media="screen" theme="Pelt"/>
+        <css url="pelt.print.css" media="print"/>
+        <css>/* Extra css */ 
+p.quote {
+ margin-left: 2em; 
+ padding: .5em; 
+ background-color: #f0f0f0; 
+ font-family: monospace; 
+}</css>
+      </forrest:property>
+    </forrest:contract>
+    <forrest:contract name="siteinfo-meta" dataURI="lm://project.build-info">
+      <forrest:property name="custom">
+         <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
+      </forrest:property>
+      <forrest:property name="theme" value="pelt"/>
+    </forrest:contract>
+    <forrest:contract name="siteinfo-meta-navigation" 
+      dataURI="cocoon://#{$getRequest}.navigation.xml"/>
+    <forrest:contract name="siteinfo-meta-icon">
+      <forrest:property name="siteinfo-meta-icon">
+        <favicon-url>favicon.ico</favicon-url>
+      </forrest:property>
+    </forrest:contract>
+    <forrest:hook name="container">
+      <forrest:contract name="branding-breadcrumbs">
+        <forrest:property name="branding-breadcrumbs">
+          <trail>
+            <link1 name="MyGroup" href="http://www.apache.org/"/>
+            <link2 name="MyProject" href="http://forrest.apache.org/"/>
+          </trail>
+        </forrest:property>
+      </forrest:contract>
+      <forrest:hook name="header">
+        <forrest:contract name="branding-tagline">
+          <forrest:property name="branding-tagline-name">new 
+            seed</forrest:property>
+          <forrest:property name="branding-tagline-tagline">powered by the 
+            dispatcher</forrest:property>
+        </forrest:contract>
+        <forrest:hook class="logo">
+          <forrest:contract name="branding-logo">
+            <forrest:property name="branding-logo-name">
+              MyGroup</forrest:property>
+            <forrest:property name="branding-logo-description">MyGroup 
+              Description</forrest:property>
+            <forrest:property name="branding-logo-url">
+              http://mygroup.org/</forrest:property>
+            <forrest:property name="branding-logo-logo">
+              images/group.png</forrest:property>
+          </forrest:contract>
+        </forrest:hook>
+        <forrest:hook class="logo">
+          <forrest:contract name="branding-logo">
+            <forrest:property name="branding-logo-name">
+              MyProject</forrest:property>
+            <forrest:property name="branding-logo-description">MyProject 
+              Description</forrest:property>
+            <forrest:property name="branding-logo-url">
+              http://myproj.mygroup.org/</forrest:property>
+            <forrest:property name="branding-logo-logo">
+              images/project.png</forrest:property>
+          </forrest:contract>
+        </forrest:hook>
+        <forrest:contract name="helper-form-blank"/>
+        <forrest:contract name="search-input">
+          <forrest:property name="input-size">25</forrest:property>
+          <forrest:property name="search-input">
+            <search name="MyProject" domain="mydomain" provider="google"/>
+          </forrest:property>
+        </forrest:contract>
+        <forrest:hook name="nav-main-hook">
+          <forrest:contract name="nav-main" 
+            dataURI="cocoon://#{$getRequest}.navigation.xml"/>
+          <forrest:hook name="publishedStrip" nbsp="true">
+            <forrest:contract name="nav-main-sub" 
+              dataURI="cocoon://#{$getRequest}.navigation.xml"/>
+            <forrest:contract name="siteinfo-last-published"/>
+          </forrest:hook>
+        </forrest:hook>
+      </forrest:hook>
+      <forrest:hook name="page">
+        <forrest:hook class="breadtrail" nbsp="true" />
+        <!--<forrest:contract name="branding-breadcrumbs">
+          <forrest:property name="branding-breadcrumbs">
+            <trail>
+              <link1 name="myGroup" href="http://www.apache.org/"/>
+              <link2 name="myProject" href="http://forrest.apache.org/"/>
+              <link3 name="" href=""/>
+            </trail>
+          </forrest:property>
+        </forrest:contract>-->
+        <forrest:hook name="leftbar">
+          <forrest:contract name="nav-section" 
+            dataURI="cocoon://#{$getRequest}.navigation.xml">
+            <forrest:property name="nav-section-toc" nugget="get.tov">
+              <jx:import 
+                uri="cocoon://#{$cocoon/parameters/getRequest}.toc.xml"/>
+            </forrest:property>
+            <forrest:property name="expanding">true</forrest:property>
+            <!--<forrest:property name="toc" max-depth="2"/>-->
+          </forrest:contract>
+          <!-- <forrest:contract name="genericMarkup">
+            <forrest:property name="genericMarkup">
+              <hr/>
+            </forrest:property>
+    </forrest:contract>-->
+          <!-- <forrest:contract name="search-input">
+            <forrest:property name="input-size">18</forrest:property>
+            <forrest:property name="search-input">
+              <search name="MyProject" domain="mydomain" provider="google"/>
+            </forrest:property>
+    </forrest:contract>-->
+          <forrest:contract name="siteinfo-credits">
+            <forrest:property name="box-location">credit</forrest:property>
+            <forrest:property name="top-separator">true</forrest:property>
+            <!--<forrest:property name="siteinfo-credits">
+              <credits>
+                <credit>
+                  <name>Built with Apache Forrest</name>
+                  <url>http://forrest.apache.org/</url>
+                  <image>images/built-with-forrest-button.png</image>
+                  <width>88</width>
+                  <height>31</height>
+                </credit>
+              </credits>
+      </forrest:property>-->
+          </forrest:contract>
+          <!-- <forrest:contract name="genericMarkup">
+            <forrest:property name="genericMarkup">
+              <hr/>
+            </forrest:property>
+    </forrest:contract>-->
+          <forrest:contract name="content-motd-page">
+            <forrest:property name="content-motd-page">
+              <motd>
+                <!--FIXME: motd-page location needs removing
+These options are not effective anymore in dispatcher
+ Need to be removed in Structurer and contracts usage/decription-->
+                <!--<motd-option pattern="index.html">
+                  <motd-title>sample</motd-title>
+                  <motd-page location="page">
+                    This is an example of a Message of the day (MOTD).
+                  </motd-page>
+                  <motd-page-url>index.html</motd-page-url>
+	  </motd-option>-->
+                <motd-option pattern="samples/faq.html">
+                  <motd-title></motd-title>
+                  <motd-page location="both"> How to enable this MOTD is on 
+                    this page. </motd-page>
+                  <motd-page-url>#motd</motd-page-url>
+                </motd-option>
+              </motd>
+            </forrest:property>
+          </forrest:contract>
+          <forrest:contract name="nav-section-round-bottom"/>
+          <!-- This content displays below the navigation. the below example displays
+          ApacheCon logos and links, but can be used for whatever, or commented out 
+          <forrest:hook name="below-nav">
+          <forrest:contract name="siteinfo-credits">
+          <forrest:property name="box-location">credit2</forrest:property>
+          <forrest:property name="top-separator">false</forrest:property>
+          <forrest:property name="use-br">false</forrest:property>
+          <forrest:property name="siteinfo-credits">
+            <credits>
+              <credit>
+                <name>ApacheCon Europe 2007</name>
+                <url>http://apachecon.com/2007/EU/</url>
+                <image>http://apache.org/ads/ApacheCon/2007-europe-125x125.png</image>
+                <width>125</width>
+                <height>125</height>
+              </credit>
+              <credit>
+                <name>ApacheCon US 2007</name>
+                <url>http://people.apache.org/calendar.html#200711</url>
+                <image>http://apache.org/ads/ApacheCon/2007-usa-125x125.png</image>
+                <width>125</width>
+                <height>125</height>
+              </credit>
+            </credits>
+          </forrest:property>
+        </forrest:contract>
+</forrest:hook>-->
+<!-- end of below-nav content -->
+        </forrest:hook>
+        <forrest:hook name="content">
+ <forrest:hook name="export-link">
+          <forrest:contract name="content-pdf-link"/>
+        </forrest:hook>
+          <!-- FIXME - Problem with ndeSetTextSize() script from fontsize.js not compliant between Pelt and Leather-dev... -->
+          <forrest:hook class="trail">
+            <forrest:contract name="branding-fontsize"/>
+    </forrest:hook>
+          <forrest:contract name="content-title" 
+            dataURI="cocoon://#{$getRequest}.title.xml"/>
+          <forrest:contract name="content-abstract" 
+            dataURI="cocoon://#{$getRequest}.abstract.xml"/>
+          <forrest:contract name="content-minitoc" 
+            dataURI="cocoon://#{$getRequest}.toc.xml">
+            <forrest:property name="content-minitoc-conf" max-depth="2" 
+              min-sections="1" location="page"/>
+          </forrest:contract>
+          <forrest:contract name="content-main" 
+            dataURI="cocoon://#{$getRequest}.body.xml">
+            <forrest:property name="content-main-conf">
+              <headings type="underlined"/>
+            </forrest:property>
+          </forrest:contract>
+          <!--
+          <forrest:contract name="content-authors">
+              <forrest:property name="content-authors" nugget="get.authors">
+                <jx:import uri="cocoon://#{$cocoon/parameters/getRequest}.authors.xml"/>
+              </forrest:property>
+          </forrest:contract>
+          -->
+        </forrest:hook>
+      </forrest:hook>
+      <forrest:hook name="footer">
+        <forrest:hook class="lastmodified">
+          <forrest:contract name="siteinfo-last-published"/>
+        </forrest:hook>
+        <forrest:hook class="copyright">
+          <forrest:contract name="siteinfo-copyright">
+            <forrest:property name="siteinfo-copyright">
+              <copyright>
+                <year inception="true">2002</year>
+                <vendor>The Example Organisation.</vendor>
+                <copyright-link>http://example.org</copyright-link>
+              </copyright>
+            </forrest:property>
+          </forrest:contract>
+        </forrest:hook>
+        <forrest:contract name="siteinfo-compliance-links"/>
+        <forrest:contract name="siteinfo-credits">
+          <forrest:property name="box-location">credit</forrest:property>
+          <forrest:property name="top-separator">false</forrest:property>
+          <forrest:property name="use-br">false</forrest:property>
+          <forrest:property name="siteinfo-credits">
+            <credits>
+              <credit>
+                <name>Built with Apache Forrest</name>
+                <url>http://forrest.apache.org/</url>
+                <image>images/built-with-forrest-button.png</image>
+                <width>88</width>
+                <height>31</height>
+              </credit>
+              <credit role="accueil">
+                <name>Built with Cocoon</name>
+                <url>http://cocoon.apache.org/</url>
+                <image>http://forrest.apache.org/images/built-with-cocoon.gif</image>
+              </credit>
+            </credits>
+          </forrest:property>
+        </forrest:contract>
+        <!-- <forrest:contract name="siteinfo-feedback">
+          <forrest:properties contract="siteinfo-feedback">
+            <forrest:property name="siteinfo-feedback">
+              <feedback to="the Webmaster"
+                href="mailto:webmaster@foo.com?subject=Feedback&#160;" >
+                Send feedback about the website to:
+              </feedback>
+            </forrest:property>
+          </forrest:properties>
+  </forrest:contract>-->
+      </forrest:hook>
+    </forrest:hook>
+</forrest:template>