You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2007/11/16 16:12:50 UTC

svn commit: r595691 [7/28] - in /lenya/sandbox/pubs/docu: config/ content/authoring/ content/authoring/0033e320-8731-11dc-ae46-9e7b5d14892d/ content/authoring/018a9980-8731-11dc-ae46-9e7b5d14892d/ content/authoring/02f9e0f0-8731-11dc-ae46-9e7b5d14892d/...

Added: lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.1195221895254.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.1195221895254.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.1195221895254.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.1195221895254.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,616 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: usecases.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document> 
+  <header> 
+    <title>Usecases</title>
+  </header> 
+  <body> 
+
+    <section>
+      <title>Introduction</title>
+      <p>
+      Usecases are sequences of pages that are orthogonal to the website,
+      i.e. they can be executed without leaving the current URI.
+      They are mainly used to execute CMS functions, e.g., to publish a page.
+      Usecases are specified by
+      </p>
+      <ul>
+      <li>a <strong>name</strong> and</li>
+      <li>a set of <strong>steps</strong>.</li>
+      </ul>
+      <p>
+      A usecase is executed using the request parameters <code>lenya.usecase</code> and
+      <code>lenya.step</code>.
+      </p>
+    </section>
+    
+    <section>
+<title>Matching Usecases</title>
+    
+    <p>
+    To match a usecase in a sitemap, the <code>WildcardRequestParameterMatcher</code>
+    is used on the <code>lenya.usecase</code> and <code>lenya.step</code> request
+    parameters. The predefined matchers have the types <code>usecase</code> and
+    <code>step</code>. A simple example of a usecase pipeline would be:
+    </p>
+<source xml:space="preserve">
+<![CDATA[<map:match type="usecase" pattern="publish">
+      
+  <!-- confirmation screen -->
+  <map:match type="step" pattern="showscreen">
+    <map:generate type="serverpages"
+        src="content/publishing/publish-screen.xsp"/>
+    <map:transform src="xslt/publishing/publish-screen.xsl"/>
+    <map:serialize/>
+  </map:match>
+
+  <!-- call publish task -->
+  <map:match type="step" pattern="publish">
+    <map:act type="task">
+      <map:parameter name="publication-id" value="{../../1}"/>
+      <map:parameter name="task-id" value="{request-param:task-id}"/>
+      <map:redirect-to uri="{request:requestURI}" session="true"/>
+    </map:act>
+  </map:match>
+        
+</map:match>]]>
+</source>
+    
+</section>
+
+<section>
+<title>The Usecase Sitemap</title>
+
+  <p>
+  The main usecase sitemap supports a set of generic usecases.
+  It is located at <code>lenya/usecase.xmap</code>.
+  To implement your publication-specific usecases or to override a generic
+  usecase, just add a <code>usecase.xmap</code>
+  sitemap to your publication directory. The Lenya usecase sitemap looks for it
+  and mounts it before the generic usecases are matched.
+  </p>
+
+</section>
+
+  <section>
+    <title>Overview of use cases</title>
+    <p>The following use cases are known:</p>
+
+    <table>
+      <tr>
+        <th colspan="1" rowspan="1">Use case</th>
+        <th colspan="1" rowspan="1">
+<code>lenya.usecase=</code>
+</th>
+        <th colspan="1" rowspan="1">
+<code>lenya.step=</code>
+</th>
+        <th colspan="1" rowspan="1">Comment</th>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Reject Approval</td>
+        <td colspan="1" rowspan="1">reject</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to reject a document from approval.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">reject</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Submit for Approval</td>
+        <td colspan="1" rowspan="1">submit</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to submit a document to approval.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">submit</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Archive</td>
+        <td colspan="1" rowspan="1">archive</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to archive a document.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">archive</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Checkin</td>
+        <td colspan="1" rowspan="1">checkin</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm the checkin of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">checkin</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Checkout</td>
+        <td colspan="1" rowspan="1">checkout</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm the checkout of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">checkout</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Copy</td>
+        <td colspan="1" rowspan="1">copy</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to copy a document.  (The document is held in a clipboard until it is pasted again)</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">copy</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Create</td>
+        <td colspan="1" rowspan="1">create</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Show a form allowing to specify the parameters for
+        creation of a document</td> 
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">create</td>
+        <td colspan="1" rowspan="1">Create the document</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Cut</td>
+        <td colspan="1" rowspan="1">cut</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to cut a document.  (The document is held in a clipboard until it is pasted again)</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">cut</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Deactivate</td>
+        <td colspan="1" rowspan="1">deactivate</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to deactivate a document.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">deactivate</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Delete</td>
+        <td colspan="1" rowspan="1">delete</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to delete a document.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">delete</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Logout</td>
+        <td colspan="1" rowspan="1">logout</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm the logout</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Paste</td>
+        <td colspan="1" rowspan="1">paste</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to paste a document.  (The document which is held in a clipboard until is pasted)</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">paste</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Publish</td>
+        <td colspan="1" rowspan="1">publish</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm the publication of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">publish</td>
+        <td colspan="1" rowspan="1">Publish this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Asset upload</td>
+        <td colspan="1" rowspan="1">aset</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Show a form allowing to specify the parameters for
+          uploading of an asset</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">upload</td>
+        <td colspan="1" rowspan="1">Upload the asset</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">insert</td>
+        <td colspan="1" rowspan="1">Insert an already uploaded asset</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">upload-and-insert</td>
+        <td colspan="1" rowspan="1">Upload and insert an asset</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">remove</td>
+        <td colspan="1" rowspan="1">Remove a previously uploaded asset</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1">Rename</td>
+        <td colspan="1" rowspan="1">rename</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Confirm to rename a document.</td>
+      </tr>
+       <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">rename</td>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Rollback</td>
+        <td colspan="1" rowspan="1">rollback</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Show a list of all versions of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">view</td>
+        <td colspan="1" rowspan="1">View a particular version of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">rollback</td>
+        <td colspan="1" rowspan="1">Roll back to a particular version of this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Schedule</td>
+        <td colspan="1" rowspan="1">schedule</td>
+        <td colspan="1" rowspan="1">showscreen</td>
+        <td colspan="1" rowspan="1">Show a list of all task scheduled for this document</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">add</td>
+        <td colspan="1" rowspan="1">Add a new task</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">modify</td>
+        <td colspan="1" rowspan="1">Modify an existing task</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">delete</td>
+        <td colspan="1" rowspan="1">Delete an existing task</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Edit</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1"/>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">Administration</td>
+        <td colspan="1" rowspan="1">userAddUser</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Add a user</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">userDeleteUser</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Show a form for adding users</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">userChangeProfile</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the profile of a user</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">userChangePasswordUser</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the password as a user</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">userChangePasswordAdmin</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the password as an administrator</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">userChangeGroups</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the group affiliation of a user</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">iprangeAddIPRange</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Add an IP range</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">iprangeDeleteIPRange</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Delete an IP range</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">iprangeChangeProfile</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the profile of an IP range</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">iprangeChangeGroups</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the group affiliation of an IP range</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">groupAddGroup</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Add a group</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">groupDeleteGroup</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Delete a group</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">groupChangeProfile</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the profile of a group</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">groupChangeMembers</td>
+        <td colspan="1" rowspan="1"/>
+        <td colspan="1" rowspan="1">Change the members of a group</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1">View Logs</td>
+        <td colspan="1" rowspan="1">view-logs</td>
+        <td colspan="1" rowspan="1">overview</td>
+        <td colspan="1" rowspan="1">Show the logfile list for this publication</td>
+      </tr>
+      <tr>
+        <td colspan="1" rowspan="1"> </td>
+        <td colspan="1" rowspan="1"> </td>
+        <td colspan="1" rowspan="1">log</td>
+        <td colspan="1" rowspan="1">Show a single logfile</td>
+      </tr>
+    </table>
+
+  </section>
+
+  <section>
+    <title>Use cases</title>
+
+    <section>
+      <title>Resource upload</title>
+
+      <p>
+<code>lenya.usecase=upload</code>
+</p>
+
+      <table>
+        <tr>
+          <th colspan="1" rowspan="1">
+<code>lenya.step=</code>
+</th>
+          <th colspan="1" rowspan="1">additional parameters</th>
+          <th colspan="1" rowspan="1">sample value</th>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">showscreen</td>
+          <td colspan="1" rowspan="1">xpath</td>
+          <td colspan="1" rowspan="1">/NewsML/body.content/block[1]/*[1]</td>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">insertBefore [optional]</td>
+          <td colspan="1" rowspan="1">true</td>
+        </tr>
+
+        <tr>
+          <td colspan="1" rowspan="1">upload</td>
+          <td colspan="1" rowspan="1">documentid</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">xpath</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">insertBefore [optional]</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">uploadFile</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">identifier [optional]</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="2" rowspan="1">All Dublin core identifiers are also accepted</td>
+        </tr>
+      </table>
+    </section>
+
+    <section>
+      <title>Create</title>
+
+      <p>
+<code>lenya.usecase=create</code>
+</p>
+
+      <table>
+        <tr>
+          <th colspan="1" rowspan="1">
+<code>lenya.step=</code>
+</th>
+          <th colspan="1" rowspan="1">additional parameters</th>
+          <th colspan="1" rowspan="1">sample value</th>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">showscreen</td>
+          <td colspan="1" rowspan="1">parentid</td>
+          <td colspan="1" rowspan="1">/dossiers/2003</td>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">doctype</td>
+          <td colspan="1" rowspan="1">Dossier</td>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">create</td>
+          <td colspan="1" rowspan="1">parentid</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">childid</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1">doctype</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+      </table>
+
+    </section>
+
+    <section>
+      <title>Rollback</title>
+
+      <p>
+<code>lenya.usecase=rollback</code>
+</p>
+
+      <table>
+        <tr>
+          <th colspan="1" rowspan="1">
+<code>lenya.step=</code>
+</th>
+          <th colspan="1" rowspan="1">additional parameters</th>
+          <th colspan="1" rowspan="1">sample value</th>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">showscreen</td>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">view</td>
+          <td colspan="1" rowspan="1">version</td>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+      </table>
+    </section>
+
+    <section>
+      <title>View Logs</title>
+
+      <p>
+<code>lenya.usecase=view-logs</code>
+</p>
+
+      <table>
+        <tr>
+          <th colspan="1" rowspan="1">
+<code>lenya.step=</code>
+</th>
+          <th colspan="1" rowspan="1">additional parameters</th>
+          <th colspan="1" rowspan="1">sample value</th>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">overview</td>
+          <td colspan="1" rowspan="1"/>
+          <td colspan="1" rowspan="1"/>
+        </tr>
+        <tr>
+          <td colspan="1" rowspan="1">log</td>
+          <td colspan="1" rowspan="1">logfile</td>
+          <td colspan="1" rowspan="1">2003-05-13-18-34-00-314.xml</td>
+        </tr>
+      </table>
+    </section>
+<section>
+<title id="head-2e3e0110bd5e2eadb614e4e61873e220fc9a4f74">Usecases versus FlowScript</title>
+
+<p>The usecase concept in Lenya 1.2 is inferior to FlowScript. Lenya 2.0-dev contains a simple <a href="lenya-document:9e7b6860-8730-11dc-ae46-9e7b5d14892d"> Usecase Framework</a> for writing usecases based on flow, JX templates, and Java classes for business logic. </p>    </section>
+
+  </section>
+      
+  </body> 
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895254.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895254.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895254.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895254.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Usecases</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/3c5c2010-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221895254" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221882374"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910787402" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910771445"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781626894" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.1195221899500.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.1195221899500.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.1195221899500.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.1195221899500.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: management.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document>
+  <header>
+    <title>Asset Management</title>
+    
+    
+    
+  </header>
+
+  <body>
+    
+    <section>
+      <title>Introduction</title>
+      <p>Asset management is the process by which assets, such as pdf
+      files or images are uploaded to the server and inserted into a
+      document.</p>
+
+      <p>Assets can be either inserted directly into a document or can
+      be uploaded for later insertion. Direct insertion happens when
+      editing the document, upload and removal can be done in the
+      asset tab in the site area.</p>
+    </section>
+
+
+    <section>
+      <title>Asset upload</title> 
+
+      <p>The upload of assets is done quite simply with a multipart
+      request. The Upload screen is generated by an xsp
+      (<code>asset.xsp</code>) which handles asset upload, image
+      upload, asset insertion and image insertion. This screen then
+      generates the multipart request which is eventually handled by
+      the <code>AssetUploadAction</code>. This action stores the asset
+      in the resources directory and generates a meta file with the
+      dublin core meta data that was passed in as request parameter or
+      with data that was extracted from the request (mime type,
+      size). Where the asset is stored is determined by the
+      <code>ResourcesManager</code>.</p>
+
+    </section>
+
+    <section>
+      <title>Asset insertion (via "enable asset upload" screen)</title> 
+
+      <p>Once the asset is uploaded, a reference to it has to be
+      inserted in the original document. Images and "plain" assets are
+      handled slighly different but the basic mechanism is the
+      same.</p>
+
+      <p>The insertion is done via an ant task
+      (<code>insert-asset</code>). This task generates a temporary
+      XSLT stylesheet using <code>generate-insertAsset-xsl.xsl</code>
+      as a meta stylesheet and an XML template which defines the XML
+      snippet that will be inserted in the refering document. The path
+      to the XML template is passed as a parameter to the ant
+      task. Usually these templates are located in
+      <code>config/asset</code>. The generated temporary stylesheet is
+      then applied to the document where the reference to the asset is
+      to be inserted. It will insert the appropriate XML snippet.</p>
+    </section>
+
+    <section>
+      <title>Asset insertion (via Bitflux editor)</title> 
+
+      <p>Images and assets can also be inserted from within the Bitflux editor.</p>
+
+      <p>The insertion is done via a XSLT stylesheet 
+      (<code>image.xsl</code> or <code>asset.xsl</code> in <code>xslt/bxe</code>). 
+      These stylesheets create a popup window that let the user select an asset or image
+      and insert it into the currently opened document via javascript.</p>
+      </section>
+
+    <section>
+      <title>Asset removal</title>
+
+      <p>Assets can be removed in the asset tab in the site area. This
+      removes the asset from the resources directory. It does not
+      however remove any references to it.</p>
+
+      <p>Removal is done with an ant task (<code>remove-asset</code>)
+      which simply deletes the asset from the resources directory.</p>
+    </section>
+
+    <section>
+      <title>Involved classes, XSPs and XSLTs</title>
+
+      <p>The following classes, XSPs and XSLTs are involved in the
+      asset upload:</p>
+      <dl>
+	<dt>src/webapp/lenya/content/authoring/asset.xsp, src/webapp/lenya/xslt/authoring/asset.xsl</dt>
+	<dd>Take care of displaying the proper asset upload
+	screen. There are different screens for image and asset upload
+	and for upload with or without subsequent insertion.</dd> 
+	<dt>org.apache.lenya.cms.cocoon.acting.UploadAction</dt>
+	<dd>Handles the upload request, stores the asset in
+	<code>resources/authoring/$document-id/$resource-name</code>,
+	and creates a file containing the dublin core meta data for
+	the asset.</dd>
+	<dt>$publication-id/config/assets/*</dt>
+	<dd>Define the XML snippets that is to be inserted in lieu of a
+	refernce to an asset.</dd>
+	<dt>src/webapp/lenya/xslt/util/generate-insertAsset-xsl.xsl</dt>
+	<dd>The meta stylesheet which generates the XSLT the will
+	insert the proper XML snippet to link to the asset in the
+	refering document.</dd>
+	<dt>$publication-id/config/tasks/targets.xml</dt>
+	<dd>Defines the <code>insert-asset</code> target which handles
+	asset insertion. Also defines the <code>remove-asset</code>
+	target.</dd> 
+	<dt>org.apache.lenya.cms.publication.ResourcesManager</dt>
+	<dd>Manages resources and hides away some of the iplementaion
+	details where resources and their meta data is stored.</dd>
+      </dl>
+    </section>
+  </body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899500.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899500.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899500.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899500.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Asset Management</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/3da62c40-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221899500" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221889349"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910793005" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910766008"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781616477" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.1195221903751.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.1195221903751.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.1195221903751.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.1195221903751.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,197 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: link-management.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document>
+  <header>
+    <title>Link Management</title>
+    
+    
+    
+  </header>
+
+  <body>
+    
+    <section>
+      <title>Introduction</title>
+
+      <p>Link Managements deals with internal links, i.e. documents
+      that refer to other documents within the same publication. These
+      links might have to be changed.</p>
+      <ol>
+	<li>if a document not yet live,</li>
+	<li>if it is withdrawn from live or </li>
+	<li>if its document-id has changed because it is moved to a
+        different location within the site tree.</li>
+	<li>references in authoring have to link to documents in
+	<code>authoring</code>, however once they are published they
+	need to refer to documents in <code>live</code>
+</li>
+      </ol>
+
+      <p>These four cases have to be dealt with separately.</p>
+      <section>
+	<title>A document is not yet live</title>
+	<p>This case can happen if the user tries to publish a
+	document which has a reference to another document which has
+	not been published yet. The reference will be stale as the
+	refered document is not in the live area yet. A warning will
+	be issued during the publishing process.</p>
+      </section>
+
+      <section>
+	<title>A document is withdrawn from live</title>
+	<p>If a document which is has references to it is withdrawn
+	from the live area the references will be stale, as the
+	refered document is no longer available in the live area. A
+	warning will be issued during the deactivation process.</p>
+      </section>
+
+      <section>
+	<title>A document-id changes</title>
+	<p>If a document is moved within the site tree such that it
+	changes its document-id (e.g. cut a document and paste it
+	somewhere else in the hierarchy in the site area) then all
+	references to this document have to be changed. This is done
+	transparently in the course of the paste.</p>
+      </section>
+
+      <section>
+	<title>Rewrite internal links in live</title>
+	<p>Internal links refer to documents in authoring as long as
+	they are not published. However as soon as they are published,
+	i.e. reside in the live area their references have to go to
+	documents in the live area. A transformer takes care of
+	rewriting the internal links.</p>
+      </section>
+    </section>
+
+    <section>
+      <title>Implementation</title> <p>The implementation is pretty
+      straight-forward and is mostly handled in XSPs and associated
+      helper classes. The heavy lifting us done is the class
+      <code>Grep</code> and the helper class
+      <code>DocumentReferencesHelper</code>. The <code>Grep</code>
+      class can traverse the repository and find references to the
+      current document or can also find references from the current
+      document to other documents. A transformer
+      (SimpleLinkRewritingTransformer) is used to rewrite the internal
+      links in the live area.</p>
+
+      <note>
+        The <code>DocumentReferencesHelper</code> mimics the behaviour of
+        the <code>DefaultDocumentBuilder</code>, therefore the reference check
+        doesn't work with arbitrary <code>DocumentBuilder</code> implementations
+        (see <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=37718">bug 37718</a>)
+      </note>
+      
+      <section>
+	<title>A document is not yet live</title>
+
+	<p>This is implemented as an extension to the publish xsp. It
+	  queries the <code>DocumentReferencesHelper</code> (using the
+	  <code>getInternalReferences</code> method) to ask if there
+	  are references from the current document to other documents
+	  which have not been published yet. The
+	  <code>DocumentReferencesHelper</code> in turn uses the
+	  <code>Grep#findPattern</code> method to search the current
+	  document for patterns of a reference. The pattern is defined
+	  in <code>DocumentReferencesHelper#getInternalLinkPattern</code>.</p>
+      </section>
+
+      <section>
+	<title>A document is withdrawn from live</title>
+
+	<p>This is implemented as an extension to the deactivate
+	  xsp. It queries the <code>DocumentReferencesHelper</code>
+	  (using the <code>getReferences</code> method) to ask if any
+	  other documents refer to the current document. The
+	  <code>DocumentReferencesHelper</code> in turn uses the
+	  <code>Grep#find</code> method to search the repository for
+	  documents which contain a patterns of a reference. The
+	  pattern is defined in
+	  <code>DocumentReferencesHelper#getReferencesSearchString()</code>.</p>
+      </section>
+
+      <section>
+	<title>A document-id changes</title>
+
+	<p>This is implemented with an ant task
+	  (<code>org.apache.lenya.cms.ant.LinkRewriteTask</code>)
+	  which traverses the repository and pipes all documents
+	  through an XSLT stylesheet
+	  (<code>src/webapp/lenya/xslt/util/linkRewrite.xsl</code>) to
+	  modify all references to the document that changed its
+	  document-id.
+	</p>
+      </section>
+
+      <section>
+	<title>Rewrite internal links in live</title>
+
+	<p>The
+	  <code>org.apache.lenya.cms.cocoon.transformation.SimpleLinkRewritingTransformer</code>
+	  transformer takes care of rewriting internal links to ensure
+	  they refer to the appropriate area.
+	</p>
+      </section>
+
+    </section>
+
+    <section>
+      <title>Involved classes, XSPs and XSLTs</title>
+
+      <p>The following classes, XSPs and XSLTs are involved in link
+      management:</p>
+      <dl>
+	<dt>org.apache.lenya.cms.publication.xsp.DocumentReferencesHelper</dt>
+	<dd>A helper class for the publish and deactivate
+	xsps. Defines the regular expressions for internal links. Has
+	methods to deteremine all references from the current document
+	to other documents (<code>getInternalReferences</code>) and to
+	determine all references from other documents to the current
+	document (<code>getReferences</code>).</dd>
+	<dt>org.apache.lenya.search.Grep</dt>
+	<dd>User by <code>DocumentReferencesHelper</code> to search
+	for patterns in a file or in a directory tree.</dd> 
+	<dt>org.apache.lenya.cms.ant.LinkRewriteTask</dt>
+	<dd>An ant task that upon change of a document-id pipes all
+	documents of the repository through a XSLT stylesheet which
+	rewrites internal links that were refering to the old
+	document-id to refere to the new one.</dd> 
+	<dt>org.apache.lenya.cms.cocoon.transformation.SimpleLinkRewritingTransformer</dt>
+	<dd>A transformer that rewrites internal links for the
+	appropriate area.</dd>
+	<dt>$publication-id/config/tasks/targets.xml</dt>
+	<dd>Defines the <code>move-and-rewrite</code> target which
+	handles the link rewriting in the case of a paste, i.e. when a
+	document-id has changed.</dd>  
+	<dt>src/webapp/lenya/xslt/util/linkRewrite.xsl</dt>
+	<dd>The XSLT transformation used by
+	<code>LinkRewriteTask</code> to actually rewrite the internal links.</dd>
+	<dt>src/webapp/lenya/content/publishing/screen.xsp, src/webapp/lenya/xslt/publishing/publish-screen.xsl</dt>
+	<dd>Query the <code>DocumentReferencesHelper</code> to display
+	a warning in case the current document contains references to
+	documents which have not been published yet.</dd>
+	<dt>src/webapp/lenya/content/info/deactivate.xsp, src/webapp/lenya/xslt/info/deactivate.xsl</dt>
+	<dd>Query the <code>DocumentReferencesHelper</code> to display
+	a warning in case there are links to the current document
+	which is about to be deactivated.</dd>
+      </dl>
+    </section>
+  </body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221903751.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221903751.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221903751.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221903751.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Link Management</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/3ef03870-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221903751" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221883049"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910790096" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910763541"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781625339" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.1195221904404.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.1195221904404.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.1195221904404.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.1195221904404.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: metadata.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document>
+  <header>
+    <title>Meta Data</title>
+    
+    
+    
+  </header>
+
+  <body>
+    
+    <section>
+      <title>Introduction</title>
+
+      <p>Meta data is kept directly inside the xml document. It is
+      based on the <a href="http://dublincore.org">Dublin Core</a>
+      standard.</p>
+
+      <p>There are basically three use cases:</p>
+      <ol>
+	<li>Create Meta Data</li>
+	<li>Display Meta Data</li>
+	<li>Modify Meta Data</li>
+      </ol>
+
+    </section>
+
+    <section>
+      <title>Implementation</title> 
+
+      <p/>
+
+      <section>
+	<title>Create Meta Data</title>
+
+	<p>Upon creation of a document a sample is copied from the
+	sample doctype directory. This sample already contains some
+	sample meta data. The creator then applies an XSLT
+	transformation to this sample which adapts the sample values
+	to the values suplied in the creator request. This values are
+	partially filled in by the user (subject, desciption, etc.)
+	and partly by the system (creator, creation data). This is
+	done in the <code>create</code> ant task which at the end
+	invokes an xslt task which applies the
+	<code>addMetaData.xsl</code> stylesheet which adapts the meta
+	data according to the request values.</p>
+
+      </section>
+
+      <section>
+	<title>Display Meta Data</title>
+
+	<p>The display of meta data is handled by the <code>meta.xsp</code> xsp.</p>
+
+      </section>
+
+      <section>
+	<title>Modify Meta data</title>
+
+	<p>The modification of meta data is handled in the
+	<code>info.xmap</code> sitemap. The matcher makes sure to
+	check the document out before the modification and checking it
+	back in after the modification. This is done using the
+	<code>ReservedCheckoutTestAction</code> and
+	<code>ReservedCheckinAction</code>.  If there is an error the
+	request is redirected to the meta data screen which displays a
+	warning saying that the checkout or checkin failed and who was
+	locking the document since what date and time.</p>
+
+	<p>Once the document is checked out the modifications are
+	applied with the help of an ant task. There is a target named
+	<code>save-meta-data</code> which simply invokes the ant task
+	<code>WriteDCParametersTask</code>.  This task saves the meta
+	data using the <code>DublinCore</code> interface.</p>
+
+      </section>
+    </section>
+
+    <section>
+      <title>Involved classes, XSPs and XSLTs</title>
+
+      <p>The following classes, XSPs and XSLTs are involved in meta
+      data handling:</p>
+      <dl>
+	<dt>org.apache.lenya.cms.ant.WriteDCParametersTask</dt>
+	<dd>A simple ant task which saves the meta data which is
+	  passed as arguments to file using the
+	<code>DublinCore</code> class.</dd>
+	<dt>$publication-id/config/tasks/targets.xml</dt>
+	<dd>Defines the <code>save-meta-data</code> target which
+	handles saving of meta data with the help of the
+	<code>WriteDCParametersTask</code> ant task. Also defines
+	the <code>create</code> target which is used create new
+	documents and to change the meta data according to the request
+	values from the creation request.</dd>
+	<dt>org.apache.lenya.cms.publication.DublinCore</dt>
+	<dd>A simple interface to save and retrieve dublin core meta
+	data.</dd>
+	<dt>org.apache.lenya.cms.cocoon.acting.ReservedCheckoutTestAction</dt>
+	<dd>Action that tests if a document can be checked out and if
+	yes does check it out (See <a href="../revisioncontrol/revisioncontroller.html">Revision Controller</a>).</dd>
+	<dt>org.apache.lenya.cms.cocoon.acting.ReservedCheckinAction</dt>
+	<dd>Action that checks a document in (See <a href="../revisioncontrol/revisioncontroller.html">Revision Controller</a>).</dd>
+	<dt>src/webapp/lenya/content/info/meta.xsp, src/webapp/lenya/xslt/info/info.xsl</dt>
+	<dd>Handle the display of the meta data in the info area. This
+	is also a form which can be used to modify the meta data via a
+	POST request.</dd>
+	<dt>src/webapp/lenya/xslt/authoring/addMetaData.xsl</dt>
+	<dd>Simple XSLT stylesheet that modifies the meta data
+	according to the input parameters.</dd>
+      </dl>
+    </section>
+  </body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221904404.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221904404.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221904404.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221904404.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Meta Data Handling</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/403bf250-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221904404" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221883751"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910795106" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910767040"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781621672" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.1195221899670.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.1195221899670.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.1195221899670.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.1195221899670.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: multilingual.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document>
+  <header>
+    <title>Mulitilingual Document handling</title>
+    
+    
+    
+  </header>
+
+  <body>
+    
+    <section>
+      <title>Introduction</title>
+
+      <p>Mulitilingual Document handling deals with documents of
+      different languages. This affects virtually every part of Lenya,
+      namely many aspects of work flow such as creation, publication,
+      deactivation, deletion. It also affects access control, meta
+      data, etc.</p>
+
+      <p>The multilingual capabilities are not a mandatory feature of
+      Lenya. You can easily create monolingual publication by simply
+      replacing a few properties in
+      <code>publication.xconf</code>.</p>
+
+      <p>The multilingual capabilities are deeply ingrained in the
+      core of Lenya and as such a conceptual overview has to delve
+      into many areas of Lenya. The main parts of the multilingual
+      capabilities are as follows:</p>
+
+      <dl>
+	<dt>Site tree</dt>
+	<dd>The <a href="../publication/siteTree.html">site
+	tree</a> contains information about documents. It has been
+	expanded to also contain information about different language
+	versions of the same document. Different language versions of
+	the same document share the same
+	<code>document-id</code>.</dd>
+
+	<dt>Default language</dt> 
+	<dd>A publication has a default language. This is the language
+	in which the document is created. However it is not
+	necessarily the case that there is always a document version
+	in the default language as the user is allowed to remove any
+	language version even the one for the default language.<br/>
+	If you specify an URL without a language suffix you are
+	redirected to the default language document.</dd>
+
+	<dt>publication.xconf</dt>
+	<dd>This is where the available languages and the default
+	language are specified.</dd>
+
+	<dt>page-envelope</dt> 
+	<dd>The <a href="../publication/pageenvelopemodule.html">page
+	envelope</a> exports document specific information such as
+	document-id via an input module. Naturally language specific
+	information for the current document is also available via the
+	page envelope.
+	</dd>
+
+	<dt>Redirection</dt>
+	<dd>If you request a document <code>foo.html</code> in a
+	multilingual publication you will internally be redirected to
+	<code>foo_en.html</code> if "en" is the default language.</dd>
+
+	<dt>Special cases</dt>
+	<dd>Some special care has to be taken when removing language
+	versions. The current implementation does not allow the user
+	to remove all language versions of a document. There always
+	has to be at least one language version.
+	</dd>
+      </dl>
+
+
+    </section>
+
+    <section>
+      <title>Implementation</title>
+
+      <p/>
+
+      <section>
+	<title>Site tree</title>
+
+	<p>The site tree contains nodes for each document. Each node
+	can contain multiple <code>label</code> nodes for each
+	language version of the document.</p>
+
+	<source xml:space="preserve"><![CDATA[
+<node id="doctypes">
+	<label xml:lang="de">Dokumenttypen</label>
+	<label xml:lang="en">Document types</label>
+	<node id="1column">
+		<label xml:lang="de">1 Spalte</label>
+	</node>
+</node>
+]]></source>
+
+	<p>The classe <code>SiteTree</code> and
+	<code>SiteTreeNode</code> provide interfaces to the nodes and
+	the corresponding label nodes.</p>
+
+      </section>
+
+      <section>
+	<title>publication.xconf</title>
+
+	<p>The <code>languages</code> node in
+	<code>publication.xconf</code> defines the languages that are
+	available for this publication and also defines the default language.</p>
+	<source xml:space="preserve"><![CDATA[
+<languages>
+  <language default="true">de</language>
+  <language>en</language>
+</languages>
+]]></source>
+
+	<p>This information is available via the
+	<code>Publication</code> class
+	(<code>getDefaultLanguage()</code> and
+	<code>getLanguages()</code> methods).</p>
+      </section>
+
+      <section>
+	<title>page-envelope</title>
+
+	<p>The <a href="../publication/pageenvelopemodule.html">page-envelope
+	input module</a> exports language related information,
+	namely <code>default-language</code>,
+	<code>document-label</code>, <code>document-language</code>,
+	<code>document-languages</code> and
+	<code>document-languages-csv</code>.</p>
+      </section>
+
+      <section>
+	<title>Redirection</title>
+
+	<p>The <code>DefaultDocumentBuilder</code> which implements the
+	<code>DocumentBuilder</code> interface, takes care of
+	redirecting language agnostic URLs (such as
+	<code>foo.html</code>) to language aware links
+	(<code>foo_en.html</code>), i.e. language agnostic links are
+	redirected to the language aware link with the default language.</p>
+      </section>
+
+      <section>
+	<title>Addition and removal</title>
+
+	<p>More language versions are added with the "Create new
+	language version" screen. Existing language versions can be
+	removed with the "Remove Language" screen. These screens are
+	generated by <code>create-language.xsp</code>,
+	<code>create-language.xsl</code>, <code>removelabel.xsp</code>
+	and <code>removelabel.xsl</code>.</p>
+
+	<p>The creation of a new language version is done via the
+	<code>create-language</code> target which uses the
+	<code>InsertLabelTask</code> ant task to insert a label in the
+	site tree.</p>
+
+	<p>The removal of a language version is done via the
+	<code>remove-language</code> target, which uses the
+	<code>RemoveLabelTask</code> ant task (which removes the label
+	from the site tree).</p>
+      </section>
+    </section>
+
+    <section>
+      <title>Involved classes, XSPs and XSLTs</title>
+
+      <p>The following classes, XSPs and XSLTs are involved in
+      multilingual document handling:</p>
+      <dl>
+	<dt>org.apache.lenya.cms.publication.SiteTree and org.apache.lenya.cms.publication.SiteTreeNode</dt>
+	<dd>These interfaces provide acces to the label nodes.</dd>
+	<dt>org.apache.lenya.cms.publication.Publication</dt>
+	<dd>Provides access to the default language and to all
+	available languages.</dd>
+	<dt>org.apache.lenya.cms.publication.PageEnvelope</dt>
+	<dd>Exports language related information such as
+	<code>default-language</code>, <code>document-language</code>,
+	etc.</dd>
+	<dt>org.apache.lenya.cms.publication.DefaultDocumentBuilder</dt>
+	<dd>Builds a document with the given language. The default
+	implementation also takes care of redirecting
+	<code>foo.html</code> to <code>foo_en.html</code>.</dd>
+<!-- 	FIXME: move this to the core -->
+	<dt>$publication-id/lenya/content/authoring/create-language.xsp,
+	$publication-id/lenya/xslt/authoring/create-language.xsl
+	</dt>
+	<dd>Generate the "Create new language version" screen.</dd>
+	<dt>src/webapp/lenya/content/authoring/removelabel.xsp, src/webapp/lenya/xslt/authoring/removelabel.xsl
+	</dt>
+	<dd>Generate the "Remove Language" screen.</dd>
+	<dt>org.apache.lenya.cms.ant.InsertLabelTask</dt>
+	<dd>Ant task to add a label to the site tree.</dd>
+	<dt>org.apache.lenya.cms.ant.RemoveLabelTask</dt>
+	<dd>Ant task to remove a label from the site tree.</dd>
+	<dt>$publication-id/config/tasks/targets.xml</dt>
+	<dd>Defines the <code>create-language</code> and the
+	<code>remove-language</code> target which
+	handle the addition and removal of language versions of a document.</dd>  
+      </dl>
+    </section>
+  </body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899670.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899670.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899670.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221899670.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Multilingual Document Handling</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/41795450-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221899670" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221889719"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910786056" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910770536"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781617631" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.1195221895794.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.1195221895794.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.1195221895794.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.1195221895794.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: concept.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document> 
+
+<header> 
+    <title>The Task Concept</title>
+     
+    <type>Overview document</type> 
+     
+</header> 
+<body> 
+
+<p>
+In Lenya CMS, a <strong>task</strong> is used to implement a process
+which can be invoked by the user. Tasks are triggered
+from the sitemap using a <a href="taskaction.html">
+<code>TaskAction</code>
+</a>
+or <a href="scheduling.html">scheduled</a> using a <code>TaskJob</code>.
+</p>
+<p>
+Typical tasks are
+</p>
+<ul>
+  <li>publishing a page,</li>
+  <li>exporting a page to a live server,</li>
+  <li>manipulating a file,</li>
+  <li>sending an e-mail, or</li>
+  <li>creating a backup of your site.</li>
+</ul>
+
+</body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895794.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895794.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895794.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221895794.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>The Task Concept</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/42d16a40-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221895794" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221883400"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910780736" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910765992"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781633386" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.1195221910344.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.1195221910344.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.1195221910344.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.1195221910344.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: defining.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document> 
+
+<header> 
+    <title>Defining Tasks</title>
+     
+    <type>Overview document</type> 
+     
+</header> 
+<body> 
+
+<p>
+All tasks to be used in a publication must be declared in the file
+<code>[publication-directory]/content/tasks.xconf</code>.
+A typical task configuration file looks like follows:
+</p>
+<source xml:space="preserve"><![CDATA[
+
+<?xml version="1.0"?>
+<tasks>
+
+  <!-- publish page -->
+  <task id="publish">
+    <label>Publish</label>
+    <task id="publish" class="org.lenya.cms.publishing.DefaultFilePublisher">
+      <parameter name="live-path" value="content/live"/>
+      <parameter name="tree-live-path" value="content/live/tree.xml"/>
+    </task>
+    <task id="export" class="org.lenya.cms.publishing.StaticHTMLExporter">
+      <parameter name="export-path" value="resources/export/pending"/>
+      <parameter name="substitute-regexp" value="s/\/lenya\/your-publication//g"/>
+    </task>
+  </task>
+</tasks>
+
+]]></source>
+<p>
+Every task must have a unique <code>id</code> attribute. This identifier is
+used to address the task from the sitemap.
+Every top-level task must have a child element <code>&lt;label&gt;</code>. The
+content of this element is used, e. g., by the scheduler to let the user choose
+a task from a list. The actual implementation of a task is identified using the
+<code>class</code> attribute.
+</p>
+
+<section>
+<title>Parameters</title>
+<p>
+Usually, a task needs some parameters to be executed properly.
+There are two possibilities to pass parameters to a task:</p>
+<ol>
+  <li>
+    You can define all parameters or a subset of them in the <code>tasks.xconf</code> file.
+  </li>
+  <li>
+    The remainig parameters can be handled to the <code>TaskAction</code> or the
+    <code>TaskJob</code> that executes the task. Request parameters always have a higher
+    priority than parameters from the <code>tasks.xconf</code> file.
+  </li>
+</ol>
+<p>
+To simplifiy the passing of parameters to tasks, the <code>TaskAction</code> and
+<code>TaskJob</code> objects create some default parameters based on
+the request and session objects:</p>
+<ul>
+  <li>
+    <code>Task.PARAMETER_SERVLET_CONTEXT</code> - the path of the servlet context<br/>
+    <code>/home/user_id/build/jakarta-tomcat/webapps/lenya</code>
+  </li>
+  <li>
+    <code>Task.PARAMETER_SERVER_URI</code> - the server URI<br/>
+    <code>http://www.yourhost.com:8080/lenya/publication/index.html</code>
+  </li>
+  <li>
+    <code>Task.PARAMETER_SERVER_PORT</code> - the server port<br/>
+    <code>http://www.yourhost.com:8080/lenya/publication/index.html</code>
+  </li>
+  <li>
+    <code>Task.PARAMETER_CONTEXT_PREFIX</code> - the part of the URI that precedes the publication ID<br/>
+    <code>http://www.yourhost.com:8080/lenya/publication/index.html</code>
+  </li>
+  <li>
+    <code>Task.PARAMETER_PUBLICATION_ID</code> - the publication ID<br/>
+    <code>http://www.yourhost.com:8080/lenya/publication/index.html</code>
+  </li>
+</ul>
+</section>
+
+<section>
+<title>Task Sequences</title>
+<p>
+Tasks can be nested using so-called <em>task sequences</em>. Sub-tasks of other
+tasks don't need to have <code>&lt;label&gt;</code> elements because they can't
+be addressed independently. Whenever a task sequence is executed, all sub-tasks
+are executed in the same order as they are declared.
+</p>
+<p>
+When you group tasks, the enclosing <code>&lt;task&gt;</code> element does not
+need a <code>&lt;class&gt;</code> attribute. If you omit it, the <code>TaskSequence</code>
+class is used as default. If you want to implement your own task grouping
+mechanism using a subclass of <code>TaskSequence</code>, you can append a
+class attribute.
+</p>
+<p>
+All parameters that are passed to a TaskSequence are forwarded to all tasks
+in the sequence. By creating a subclass of <code>TaskSequence</code> you could implement
+a parameter selection mechanism, e. g. using namespace prefixes.
+</p>
+</section>
+
+<section>
+<title>Assigning Tasks to Document Types</title>
+<p>
+Every document type can support a set of tasks. The labels of these tasks
+are displayed on the scheduler screen of a document of this type.
+To assign a task to a document type, you have to edit the file
+<code>[publication-directory]/config/doctypes/doctypes.xconf</code>:
+</p>
+<source xml:space="preserve"><![CDATA[
+
+<doctypes>
+  <doc type="Simple-Document">
+    <tasks>
+      <task id="publish"/>
+      <task id="backup"/>
+      ...
+    </tasks>
+  </doc>
+  ...
+</doctypes>
+
+]]></source>
+<p>
+You can associate every task with an arbitrary number of document types.
+</p>
+
+</section>
+
+
+</body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910344.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910344.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910344.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910344.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Defining Tasks</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/4403cfc0-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221910344" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221889760"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910782313" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910767559"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781633323" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.1195221910383.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.1195221910383.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.1195221910383.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.1195221910383.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: taskaction.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document> 
+
+<header> 
+    <title>The TaskAction: Triggering a Task from the Sitemap</title>
+     
+    <type>Overview document</type> 
+     
+</header> 
+<body> 
+
+<section>
+<title>Declaring the Action</title>
+<p>
+To invoke a task from a sitemap pipeline, you use a <code>TaskAction</code>. The
+task ID is handled to the action by a <code>task</code> parameter:
+</p>
+
+<source xml:space="preserve"><![CDATA[
+
+<map:components>
+  ...
+  <map:actions>
+    <map:action name="publisher"
+                src="org.lenya.cms.cocoon.acting.TaskAction">
+      <task id="publish"/>
+    </map:action>
+  </map:actions>
+  ...
+</map:components>
+
+]]></source>
+<p>
+The <code>TaskAction</code> collects the request parameters and forwards them
+to the task.
+</p>
+<source xml:space="preserve"><![CDATA[
+
+<map:match pattern="lenya/publish*">
+  <map:act type="publisher">
+    <map:redirect-to uri="{parent_uri}" session="true"/>
+  </map:act>
+  <map:redirect-to uri="publishScreen?status=failed" session="true"/>
+</map:match>
+
+]]></source>
+
+<p>
+You can also pass the task ID as a <code>task-id</code> parameter directly in the pipeline:
+</p>
+
+<source xml:space="preserve"><![CDATA[
+
+
+<map:actions>
+  <map:action name="task" src="org.lenya.cms.cocoon.acting.TaskAction"/>
+</map:actions>
+
+...
+
+<map:match pattern="lenya/publish*">
+  <map:act type="task">
+    <map:parameter name="task-id" value="publish-article"/>
+    <map:redirect-to uri="{parent_uri}" session="true"/>
+  </map:act>
+  <map:redirect-to uri="publishScreen?status=failed" session="true"/>
+</map:match>
+
+]]></source>
+
+</section>
+
+<section>
+<title>Scheduling a Task</title>
+<p>
+See section <strong>Scheduler</strong>.
+</p>
+</section>
+
+<section>
+<title>Developing Your Own Tasks</title>
+
+<p>
+Every task must implement the <code>org.lenya.cms.task.Task</code> interface.
+</p>
+<p>
+The easiest way to develop your own task is to extend the <code>AbstractTask</code> class.
+Its <code>parameterize()</code> method simply replaces old parameter values with new
+ones. All you have to do is implementing the <code>execute(String contextPath)</code>
+method.
+</p>
+<p>
+You may wonder why we pass the <code>contextPath</code> as a method parameter
+since we already pass it as a task parameter. This ensures that the task is always
+able to access the Lenya CMS directory, even if it is not created by a <code>TaskAction</code>
+or a <code>TaskJob</code>. Furthermore, if you enter a task in the <code>jobs.xml</code>
+file manually, you won't have to provide a hard-coded <code>servlet-context</code> parameter.
+</p>
+<p>
+<strong>This feature may be subject to changes. If you have any suggestions to improve
+the task implementation, just contact me (Andreas Hartmann) at</strong>
+<a href="mailto:ah@wyona.org">ah@wyona.org</a>.
+</p>
+</section>
+
+</body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910383.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910383.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910383.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221910383.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>The TaskAction</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/452aeaa0-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221910383" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221889782"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910789447" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910762339"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781626307" version="1"/>

Added: lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.1195221900326.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.1195221900326.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.1195221900326.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.1195221900326.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<!-- $Id: scheduling.xml 55543 2004-10-26 00:14:59Z gregor $ --><!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
+
+<document> 
+
+<header> 
+    <title>Scheduling a Task</title>
+     
+    <type>Overview document</type> 
+     
+</header> 
+<body> 
+
+<section>
+<title>Scheduling a Task</title>
+<p>
+See section <strong>Scheduler</strong>.
+</p>
+</section>
+
+</body>
+</document>

Added: lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221900326.bak
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221900326.bak?rev=595691&view=auto
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221900326.bak (added)
+++ lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.meta.1195221900326.bak Fri Nov 16 07:11:58 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata xmlns="http://apache.org/lenya/metadata/1.0">
+<element-set namespace="http://purl.org/dc/elements/1.1/">
+<element key="title">
+<value>Scheduling a Task</value>
+</element>
+</element-set>
+<element-set namespace="http://apache.org/lenya/metadata/document/1.0">
+<element key="extension">
+<value>xml</value>
+</element>
+<element key="mimeType">
+<value>application/xml</value>
+</element>
+<element key="resourceType">
+<value>forrestDocument20</value>
+</element>
+<element key="contentType">
+<value>xml</value>
+</element>
+</element-set>
+</metadata>

Modified: lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.rcml
URL: http://svn.apache.org/viewvc/lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.rcml?rev=595691&r1=595690&r2=595691&view=diff
==============================================================================
--- lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.rcml (original)
+++ lenya/sandbox/pubs/docu/content/authoring/468dd600-8731-11dc-ae46-9e7b5d14892d/en.rcml Fri Nov 16 07:11:58 2007
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <XPSRevisionControl xmlns="">
+<CheckIn backup="true" identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221900326" version="3"/>
+<CheckOut identity="lenya" session="fde084c0-944b-11dc-8f2e-e6c0ff9903ab" time="1195221890449"/>
 <CheckIn backup="true" identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910790993" version="2"/>
 <CheckOut identity="lenya" session="1f12dc80-8860-11dc-ba66-cfbbb816bd0d" time="1193910764342"/>
 <CheckIn backup="true" identity="lenya" session="60798970-8730-11dc-ae46-9e7b5d14892d" time="1193781628031" version="1"/>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org