]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
general cleanup.
authorAndré Malo <nd@apache.org>
Sun, 20 Apr 2003 02:52:34 +0000 (02:52 +0000)
committerAndré Malo <nd@apache.org>
Sun, 20 Apr 2003 02:52:34 +0000 (02:52 +0000)
- add more comments
- add the license
- make the code better readable

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99458 13f79535-47bb-0310-9956-ffa450edef68

12 files changed:
docs/manual/style/xsl/common.xsl
docs/manual/style/xsl/directiveindex.xsl
docs/manual/style/xsl/faq.xsl
docs/manual/style/xsl/indexpage.xsl
docs/manual/style/xsl/manualpage.xsl
docs/manual/style/xsl/moduleindex.xsl
docs/manual/style/xsl/quickreference.xsl
docs/manual/style/xsl/sitemap.xsl
docs/manual/style/xsl/synopsis.xsl
docs/manual/style/xsl/util/lf.xml
docs/manual/style/xsl/util/modtrans.xsl
docs/manual/style/xsl/util/nbsp.xml

index 1b4b777240abf38ab2a39a14625950d3a3ab3af6..650318fe37df3bddcdba9e5e30b6eb699366e64d 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
     <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                          -->
-  <!-- Please, don't hard-code output strings! Use the language -->
-  <!-- files and the translation "stuff"...                     -->
-  <!--                                                          -->
+<!--                                                                      -->
+<!-- Please, don't hard-code output strings! Use the language             -->
+<!-- files and the translation "stuff"...                                 -->
+<!--                                                                      -->
 
-  <!-- Constants used for case translation -->
-  <xsl:variable name="lowercase" select="'abcdefghijklmnopqrstuvwxyz'" />
-  <xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
+<!-- Injected variables:                                                  -->
+<!--   $is-chm          - (boolean) target is for CHM generation or not   -->
+<!--   $messages        - (node-set) localized common text snippets       -->
+<!--   $output-encoding - (string) MIME charset name of the output        -->
+<!--                      encoding                                        -->
 
-  <!--
-    space separated list of blockelements defined in common.dtd
-    used for inline content catching in <example>s
-  -->
-  <xsl:variable name="blockelements">
-    p  example  note  table  ul  ol  dl  pre  img  blockquote
-  </xsl:variable>
-
-  <!-- relative path to /manual/ -->
-  <xsl:variable name="path" select="document(/*/@metafile)/metafile/relpath" />
-
-  <!-- load outsourced page types -->
-  <xsl:include href="moduleindex.xsl"/>
-  <xsl:include href="directiveindex.xsl"/>
-  <xsl:include href="manualpage.xsl"/>
-  <xsl:include href="synopsis.xsl"/>
-  <xsl:include href="sitemap.xsl"/>
-  <xsl:include href="indexpage.xsl"/>
-  <xsl:include href="quickreference.xsl"/>
-  <xsl:include href="faq.xsl"/>
-
-  <xsl:include href="util/modtrans.xsl"/>
+<!-- Constants used for case translation -->
+<xsl:variable name="lowercase" select="'abcdefghijklmnopqrstuvwxyz'" />
+<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
 
-  <!-- make sure, we set relative anchors
-       only, if we're actually transforming
-       a modulefile (see <directive>) -->
-  <xsl:variable name="in-modulesynopsis"><xsl:choose>
-    <xsl:when test="/quickreference">0</xsl:when>
-
-    <xsl:otherwise>1</xsl:otherwise></xsl:choose>
-  </xsl:variable>
-
-  <xsl:variable name="index-file">
+<!-- space separated list of blockelements defined in common.dtd -->
+<!--    used for inline content catching in <example>s           -->
+<xsl:variable name="blockelements">
+    p  example  note  table  ul  ol  dl  pre  img  blockquote
+</xsl:variable>
+
+<!-- relative path to /manual/ -->
+<xsl:variable name="path" select="document(/*/@metafile)/metafile/relpath" />
+
+<!-- load outsourced page types -->
+<xsl:include href="moduleindex.xsl" />
+<xsl:include href="directiveindex.xsl" />
+<xsl:include href="manualpage.xsl" />
+<xsl:include href="synopsis.xsl" />
+<xsl:include href="sitemap.xsl" />
+<xsl:include href="indexpage.xsl" />
+<xsl:include href="quickreference.xsl" />
+<xsl:include href="faq.xsl" />
+
+<!-- load utility snippets -->
+<xsl:include href="util/modtrans.xsl" />
+
+<!-- make sure, we set relative anchors only, if we're actually -->
+<!-- transforming a modulefile (see <directive> template)       -->
+<xsl:variable name="in-modulesynopsis" select="boolean(/modulesynopsis)" />
+
+<!-- when referencing to a directory, we may need to complete the path -->
+<!-- with the index file (for offline applications like *.chm files)   -->
+<xsl:variable name="index-file">
     <xsl:if test="$is-chm">index.html</xsl:if>
-  </xsl:variable>
-  <xsl:variable name="ext-target">
-    <xsl:if test="$is-chm">1</xsl:if>
-  </xsl:variable>
-
-  <xsl:template name="helper.uri.fix">
-  <xsl:param name="uri"/>
-    <xsl:choose>
-      <!-- lame is_absolute_uri test -->
-      <xsl:when test="    contains($uri, ':')
-                      and string-length(substring-before($uri, ':')) &lt; 7">
-        <xsl:if test="$ext-target = '1'">
-          <xsl:attribute name="target">_blank</xsl:attribute>
-        </xsl:if>
-      </xsl:when>
-
-      <xsl:otherwise>
-        <xsl:variable name="fragment">
-          <xsl:if test="contains($uri, '#')"><xsl:value-of select="concat('#', substring-after($uri, '#'))"/></xsl:if>
-        </xsl:variable>
-        <xsl:variable name="absuri">
-          <xsl:if test="contains($uri, '#')"><xsl:value-of select="concat('#', substring-before($uri, '#'))"/></xsl:if>
-          <xsl:if test="not(contains($uri, '#'))"><xsl:value-of select="$uri"/></xsl:if>
-        </xsl:variable>
-        
-        <xsl:if test="substring($absuri, string-length($uri), 1) = '/'">
-          <xsl:attribute name="href">
-            <xsl:value-of select="concat($absuri, $index-file, $fragment)"/>
-          </xsl:attribute>
-        </xsl:if>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
+</xsl:variable>
 
-  <!--                                                            -->
-  <!--    Utility templates for constructing pages                -->
-  <!--                                                            -->
+<!-- it may be desired to open external targets in a new window -->
+<xsl:variable name="ext-target" select="boolean($is-chm)" />
 
+<!-- #################################################################### -->
+<!-- Utility templates for constructing pages                             -->
+<!-- #################################################################### -->
 
-  <!--                                                            -->
-  <!-- HTML head                                                  -->
-  <!--                                                            -->
-  <xsl:template name="head">
-    <head>
-      <xsl:if test="$is-chm">
+<!-- ==================================================================== -->
+<!-- HTML head                                                            -->
+<!-- ==================================================================== -->
+<xsl:template name="head">
+<head>
+    <!-- the meta element is necessary for offline handling like CHM -->
+    <xsl:choose>
+    <xsl:when test="$is-chm">
         <meta http-equiv="Content-Type"
                  content="text/html; charset={$output-encoding}" />
-      </xsl:if>
-
-      <xsl:comment>
-        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-              This file is generated from xml source: DO NOT EDIT
-        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-      </xsl:comment>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <title>
+    </xsl:when>
+    <xsl:otherwise>
+        <xsl:comment>
+            &lf;
+            <xsl:text>        </xsl:text>
+            <xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
+            &lf;
+            <xsl:text>              </xsl:text>
+            <xsl:text>This file is generated from xml source: DO NOT EDIT</xsl:text>
+            &lf;
+            <xsl:text>        </xsl:text>
+            <xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
+            &lf;
+            <xsl:text>      </xsl:text>
+        </xsl:comment>
+    </xsl:otherwise>
+    </xsl:choose>&lf;
+
+    <title>
         <xsl:choose>
-          <xsl:when test="name">
+        <xsl:when test="name">
             <xsl:value-of select="name"/>
-          </xsl:when>
+        </xsl:when>
 
-          <xsl:otherwise>
+        <xsl:otherwise>
             <xsl:value-of select="title"/>
-          </xsl:otherwise>
+        </xsl:otherwise>
         </xsl:choose>
 
         <xsl:text> </xsl:text>
         <xsl:value-of select="$messages/message[@name='apachetitle']"/>
-      </title>
+    </title>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <xsl:if test="$is-chm">
+    <!-- chm files get a slightly different stylesheet -->
+    <xsl:choose>
+    <xsl:when test="$is-chm">
         <link type="text/css" rel="stylesheet" media="all"
               href="{$path}/style/css/manual-chm.css" />
-      </xsl:if>
-      
-      <xsl:if test="not($is-chm)">
+    </xsl:when>
+    <xsl:otherwise>
         <link title="Main stylesheet"  type="text/css" media="all"
                 rel="stylesheet"
-               href="{$path}/style/css/manual.css" />
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+               href="{$path}/style/css/manual.css" />&lf;
         <link title="No Sidebar - Default font size" type="text/css" media="all"
                rel="alternate stylesheet"
                href="{$path}/style/css/manual-loose-100pc.css"/>
-      </xsl:if> <!-- /!is-chm -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <link type="text/css" media="print"
-             rel="stylesheet"
-             href="{$path}/style/css/manual-print.css"/>
+    </xsl:otherwise>
+    </xsl:choose>&lf;
 
-      <xsl:if test="not($is-chm)">
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <link type="text/css" media="print"
+           rel="stylesheet"
+           href="{$path}/style/css/manual-print.css"/>
 
+    <!-- chm files do not need a favicon -->
+    <xsl:if test="not($is-chm)">&lf;
         <link rel="shortcut icon" href="{$path}/images/favicon.ico" />
-      </xsl:if>
-
-    </head>
-  </xsl:template>
-  <!-- /head -->
-
-  <!--                                                            -->
-  <!-- page top                                                   -->
-  <!--                                                            -->
-  <xsl:template name="top">
-    <div id="page-header">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    </xsl:if>
+</head>
+</xsl:template>
+<!-- /head -->
 
-      <xsl:call-template name="super-menu" />
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+<!-- ==================================================================== -->
+<!-- page top                                                             -->
+<!-- ==================================================================== -->
+<xsl:template name="top">
+<div id="page-header">&lf;
+    <xsl:call-template name="super-menu" />&lf;
 
-      <p class="apache">
+    <p class="apache">
         <xsl:value-of select="$messages/message[@name='apachehttpserver']"/>
-      </p>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    </p>&lf;
 
-      <img src="{$path}/images/feather.gif" alt="" />
-    </div> <!-- /page-header -->
+    <img src="{$path}/images/feather.gif" alt="" />
+</div>&lf; <!-- /page-header -->
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    <div class="up">
-      <a href="./{$index-file}">
+<div class="up">
+    <a href="./{$index-file}">
         <xsl:if test="parentdocument">
-          <xsl:attribute name="href"><xsl:value-of select="parentdocument/@href"/></xsl:attribute>
-          <xsl:call-template name="helper.uri.fix">
-            <xsl:with-param name="uri" select="parentdocument/@href"/>
-          </xsl:call-template>
-        </xsl:if>
-        <img src="{$path}/images/left.gif" alt="&lt;-" title="&lt;-" />
-      </a>
-    </div>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    <div id="path">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <a href="http://www.apache.org/">
-        <xsl:if test="$ext-target = '1'"><xsl:attribute name="target">_blank</xsl:attribute></xsl:if>
-        <xsl:value-of select="$messages/message[@name='apache']"/>
-      </a>
-      <xsl:text> &gt; </xsl:text>
-      <a href="http://httpd.apache.org/">
-        <xsl:if test="$ext-target = '1'"><xsl:attribute name="target">_blank</xsl:attribute></xsl:if>
-        <xsl:value-of select="$messages/message[@name='http-server']"/>
-      </a>
-      <xsl:text> &gt; </xsl:text>
-      <a href="http://httpd.apache.org/docs-project/">
-        <xsl:if test="$ext-target = '1'"><xsl:attribute name="target">_blank</xsl:attribute></xsl:if>
-        <xsl:value-of select="$messages/message[@name='documentation']"/>
-      </a>
-      <xsl:if test="not(../indexpage)">
-        <xsl:text> &gt; </xsl:text>
-        <a href="{$path}/{$index-file}">
-          <xsl:value-of select="$messages/message[@name='version']"/>
-        </a>
-      </xsl:if>
-      <xsl:if test="../modulesynopsis or ../directiveindex or ../quickreference">
-        <xsl:text> &gt; </xsl:text>
-        <a href="./{$index-file}">
-          <xsl:value-of select="$messages/message[@name='modules']"/>
-        </a>
-      </xsl:if>
-      <xsl:if test="parentdocument/text()">
-        <xsl:text> &gt; </xsl:text>
-        <a href="{parentdocument/@href}">
-          <xsl:call-template name="helper.uri.fix">
-            <xsl:with-param name="uri" select="parentdocument/@href"/>
-          </xsl:call-template>
-          <xsl:value-of select="parentdocument"/>
-        </a>
+            <xsl:attribute name="href">
+                <xsl:value-of select="parentdocument/@href"/>
+            </xsl:attribute>
+
+            <xsl:call-template name="helper.uri.fix">
+                <xsl:with-param name="uri" select="parentdocument/@href" />
+            </xsl:call-template>
       </xsl:if>
-    </div> <!-- /path -->
-  </xsl:template>
-  <!-- /top -->
 
+      <img src="{$path}/images/left.gif" alt="&lt;-" title="&lt;-" />
+    </a>
+</div>&lf;
 
-  <!--                                                            -->
-  <!-- page bottom                                                -->
-  <!--                                                            -->
-  <xsl:template name="bottom">
-    <div id="footer">
+<div id="path">&lf;
+    <a href="http://www.apache.org/">
+        <xsl:if test="$ext-target">
+            <xsl:attribute name="target">_blank</xsl:attribute>
+        </xsl:if>
+        <xsl:value-of select="$messages/message[@name='apache']" />
+    </a>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <xsl:text> &gt; </xsl:text>
 
-      <p class="apache">
-        <xsl:value-of select="$messages/message[@name='maintainedby']"/>
-        <xsl:text> </xsl:text>
-        <a href="http://httpd.apache.org/docs-project/">
-          <xsl:if test="$ext-target = '1'"><xsl:attribute name="target">_blank</xsl:attribute></xsl:if>
-          <xsl:text>Apache HTTP Server Documentation Project</xsl:text>
-        </a>
-      </p>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <a href="http://httpd.apache.org/">
+        <xsl:if test="$ext-target">
+            <xsl:attribute name="target">_blank</xsl:attribute>
+        </xsl:if>
+        <xsl:value-of select="$messages/message[@name='http-server']" />
+    </a>
 
-      <xsl:call-template name="super-menu"/>
+    <xsl:text> &gt; </xsl:text>
 
-    </div> <!-- /footer -->
-  </xsl:template>
-  <!-- /bottom -->
+    <a href="http://httpd.apache.org/docs-project/">
+        <xsl:if test="$ext-target">
+            <xsl:attribute name="target">_blank</xsl:attribute>
+        </xsl:if>
+        <xsl:value-of select="$messages/message[@name='documentation']" />
+    </a>
 
+    <xsl:if test="not(../indexpage)">
+    <xsl:text> &gt; </xsl:text>
 
-  <!--                                                            -->
-  <!-- Process a documentation section                            -->
-  <!--                                                            -->
-  <xsl:template match="section">
+    <a href="{$path}/{$index-file}">
+        <xsl:value-of select="$messages/message[@name='version']"/>
+    </a>
+    </xsl:if>
 
-    <xsl:call-template name="toplink"/>
+    <xsl:if test="../modulesynopsis or ../directiveindex or ../quickreference">
+    <xsl:text> &gt; </xsl:text>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <a href="./{$index-file}">
+        <xsl:value-of select="$messages/message[@name='modules']"/>
+    </a>
+    </xsl:if>
 
-    <div class="section">
+    <xsl:if test="parentdocument/text()">
+    <xsl:text> &gt; </xsl:text>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <a href="{parentdocument/@href}">
+        <xsl:call-template name="helper.uri.fix">
+            <xsl:with-param name="uri" select="parentdocument/@href"/>
+        </xsl:call-template>
+        <xsl:value-of select="parentdocument"/>
+    </a>
+    </xsl:if>
+</div> <!-- /path -->
+</xsl:template>
+<!-- /top -->
 
-      <!-- Section heading -->
-      <h2>
-        <xsl:if test="@id">
-          <a id="{@id}" name="{@id}">
-            <xsl:apply-templates select="title" mode="print"/>
-          </a>
-        </xsl:if>
 
-        <xsl:if test="not(@id)">
-          <xsl:apply-templates select="title" mode="print"/>
-        </xsl:if>
-      </h2>
+<!-- ==================================================================== -->
+<!-- page bottom                                                          -->
+<!-- ==================================================================== -->
+<xsl:template name="bottom">
+<div id="footer">&lf;
+    <p class="apache">
+        <xsl:value-of select="$messages/message[@name='maintainedby']"/>
+        <xsl:text> </xsl:text>
+        <a href="http://httpd.apache.org/docs-project/">
+            <xsl:if test="$ext-target">
+                <xsl:attribute name="target">_blank</xsl:attribute>
+            </xsl:if>
+            <xsl:text>Apache HTTP Server Documentation Project</xsl:text>
+        </a>
+    </p>&lf;
 
-      <!-- Section body -->
-      <xsl:apply-templates/>
+    <xsl:call-template name="super-menu"/>
 
-    </div> <!-- /.section -->
-  </xsl:template>
-  <!-- /section -->
+</div> <!-- /footer -->
+</xsl:template>
+<!-- /bottom -->
 
 
-  <!--                                                            -->
-  <!-- handle subsections (lower level headings)                  -->
-  <!--                                                            -->
-  <xsl:template match="section/section">
+<!-- ==================================================================== -->
+<!-- Process a documentation section                                      -->
+<!-- ==================================================================== -->
+<xsl:template match="section">
+<xsl:call-template name="toplink" />&lf;
+<div class="section">&lf;
 
     <!-- Section heading -->
-    <h3>
-      <xsl:if test="@id">
-        <a id="{@id}" name="{@id}">
-          <xsl:apply-templates select="title" mode="print"/>
-        </a>
-      </xsl:if>
+    <h2>
+        <xsl:choose>
+        <xsl:when test="@id">
+          <a id="{@id}" name="{@id}">
+              <xsl:apply-templates select="title" mode="print" />
+          </a>
+        </xsl:when>
 
-      <xsl:if test="not(@id)">
-        <xsl:apply-templates select="title" mode="print"/>
-      </xsl:if>
-    </h3>
+        <xsl:otherwise>
+            <xsl:apply-templates select="title" mode="print" />
+        </xsl:otherwise>
+        </xsl:choose>
+    </h2>
 
     <!-- Section body -->
-    <xsl:apply-templates/>
-
-  </xsl:template>
-  <!-- /section/section -->
-
-
-  <!--                                                            -->
-  <!-- handle subsubsections (h4)                                 -->
-  <!--                                                            -->
-  <xsl:template match="section/section/section">
-
-    <!-- Section heading -->
-    <h4>
-      <xsl:if test="@id">
+    <xsl:apply-templates />
+</div> <!-- /.section -->
+</xsl:template>
+<!-- /section -->
+
+
+<!-- ==================================================================== -->
+<!-- handle subsections (lower level headings)                            -->
+<!-- ==================================================================== -->
+<xsl:template match="section/section">
+<!-- Section heading -->
+<h3>
+    <xsl:choose>
+    <xsl:when test="@id">
         <a id="{@id}" name="{@id}">
-          <xsl:apply-templates select="title" mode="print"/>
+            <xsl:apply-templates select="title" mode="print" />
         </a>
-      </xsl:if>
+    </xsl:when>
 
-      <xsl:if test="not(@id)">
-        <xsl:apply-templates select="title" mode="print"/>
-      </xsl:if>
-    </h4>
+    <xsl:otherwise>
+        <xsl:apply-templates select="title" mode="print" />
+    </xsl:otherwise>
+    </xsl:choose>
+</h3>
 
-    <!-- Section body -->
-    <xsl:apply-templates/>
+<!-- Section body -->
+<xsl:apply-templates />
+</xsl:template>
+<!-- /section/section -->
 
-  </xsl:template>
-  <!-- /section/section/section -->
 
+<!-- ==================================================================== -->
+<!-- handle subsubsections (h4)                                           -->
+<!-- ==================================================================== -->
+<xsl:template match="section/section/section">
+<!-- Section heading -->
+<h4>
+    <xsl:choose>
+    <xsl:when test="@id">
+        <a id="{@id}" name="{@id}">
+            <xsl:apply-templates select="title" mode="print" />
+        </a>
+    </xsl:when>
 
-  <!--                                                            -->
-  <!-- section nesting > h4 is not supported for now              -->
-  <!--                                                            -->
-  <xsl:template match="section/section/section/section">
-    <xsl:message terminate="yes">
-      <xsl:text>FATAL: exceeding maximum section nesting level.
+    <xsl:otherwise>
+        <xsl:apply-templates select="title" mode="print" />
+    </xsl:otherwise>
+    </xsl:choose>
+</h4>
+
+<!-- Section body -->
+<xsl:apply-templates/>
+
+</xsl:template>
+<!-- /section/section/section -->
+
+
+<!-- ==================================================================== -->
+<!-- section nesting > h4 is not supported for now                        -->
+<!-- ==================================================================== -->
+<xsl:template match="section/section/section/section">
+<xsl:message terminate="yes">
+    <xsl:text>FATAL: exceeding maximum section nesting level.</xsl:text>
+    &lf;&lf;
+    <xsl:text>Perhaps you should consider to split your document into</xsl:text>
+    &lf;
+    <xsl:text>several ones...</xsl:text>
+    &lf;
+</xsl:message>
+</xsl:template>
+<!-- /section/section/section/section -->
+
+
+<!-- ==================================================================== -->
+<!-- (sub)section titles                                                  -->
+<!-- ==================================================================== -->
+<xsl:template match="section/title" mode="print">
+<xsl:apply-templates/>
+</xsl:template>
+<xsl:template match="section/title" />
+<!-- /section/title -->
+
+
+<!-- ==================================================================== -->
+<!-- generate section index                                               -->
+<!-- ==================================================================== -->
+<xsl:template match="section" mode="index">
+<li>
+    <img src="{$path}/images/down.gif" alt="" />
+    <xsl:text> </xsl:text>
+    <xsl:choose>
+    <xsl:when test="@id">
+        <a href="#{@id}">
+            <xsl:apply-templates select="title" mode="print" />
+        </a>
+    </xsl:when>
+    <xsl:otherwise>
+        <xsl:apply-templates select="title" mode="print" />
+    </xsl:otherwise>
+    </xsl:choose>
+</li>&lf;
+</xsl:template>
+<!-- /section index -->
+
+
+<!-- ==================================================================== -->
+<!-- docs super menu                                                      -->
+<!-- ==================================================================== -->
+<xsl:template name="super-menu">
+<p class="menu">
+    <a href="{$path}/mod/{$index-file}">
+        <xsl:value-of select="$messages/message[@name='modules']" />
+    </a>
 
-      Perhaps you should consider to split your document into
-      several ones...
-      </xsl:text>
-    </xsl:message>
-  </xsl:template>
-  <!-- /section/section/section/section -->
+    <xsl:text> | </xsl:text>
 
+    <a href="{$path}/mod/directives.html">
+        <xsl:value-of select="$messages/message[@name='directives']" />
+    </a>
 
-  <!--                                                            -->
-  <!-- (sub)section titles                                        -->
-  <!--                                                            -->
-  <xsl:template match="section/title" mode="print">
-    <xsl:apply-templates/>
-  </xsl:template>
+    <xsl:text> | </xsl:text>
 
-  <xsl:template match="section/title">
-    <!-- Don't print the title twice -->
-  </xsl:template>
-  <!-- /section/title -->
+    <a href="{$path}/faq/{$index-file}">
+        <xsl:value-of select="$messages/message[@name='faq']" />
+    </a>
 
+    <xsl:text> | </xsl:text>
 
-  <!--                                                            -->
-  <!-- generate section index                                     -->
-  <!--                                                            -->
-  <xsl:template match="section" mode="index">
+    <a href="{$path}/glossary.html">
+        <xsl:value-of select="$messages/message[@name='glossary']" />
+    </a>
 
-    <xsl:if test="@id">
-      <li>
-        <img src="{$path}/images/down.gif" alt="" />
-        <xsl:text> </xsl:text>
-        <a href="#{@id}">
-          <xsl:apply-templates select="title" mode="print"/>
-        </a>
-      </li>
+    <xsl:text> | </xsl:text>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <a href="{$path}/sitemap.html">
+        <xsl:value-of select="$messages/message[@name='sitemap']" />
+    </a>
+</p>
+</xsl:template>
+<!-- /super-menu -->
+
+
+<!-- ==================================================================== -->
+<!-- <example>                                                            -->
+<!-- iterate over *all* nodes; bare text and other inline stuff is        -->
+<!-- wrapped into <p><code>, block level elements (defined in             -->
+<!-- $blockelements) are applied "as is"                                  -->
+<!-- ==================================================================== -->
+<xsl:variable name="blocks"
+            select="concat(' ', normalize-space($blockelements), ' ')" />
+
+<xsl:template match="example">
+<div class="example">
+    <xsl:apply-templates select="title" mode="print" />
+
+    <xsl:for-each select="./node()">
+        <xsl:variable name="is-block-node"
+                    select="boolean(contains($blocks,
+                                             concat(' ', local-name(), ' ')))"/>
+        <!-- bb = (number of) blocks nodes before (the current) -->
+        <xsl:variable name="bb"
+                    select="count(preceding-sibling::*[
+                                contains($blocks,
+                                         concat(' ', local-name(), ' '))])" />
+
+        <xsl:if test="$is-block-node or position()=last()">
+            <xsl:variable name="content">
+                <!-- phew. short explanation, what happens here:      -->
+                <!-- We want to get the inline stuff between the last -->
+                <!-- block node and the current node.                 -->
+                <!-- So filter all previous nodes for the condition   -->
+                <!-- that the number of block nodes of all of *their* -->
+                <!-- previous nodes is >= $bb. Hope that helps ;-)    -->
+                <xsl:apply-templates
+                    select="preceding-sibling::node()[
+                                count(preceding-sibling::*[
+                                    contains($blocks,
+                                             concat(' ', local-name(), ' '))])
+                                &gt;= $bb]" />
+
+                <xsl:apply-templates
+                    select="self::node()[not($is-block-node)]" />
+            </xsl:variable>
 
-    </xsl:if>
+            <!-- apply bare text only, if it's not only \s or empty -->
+            <xsl:if test="not(normalize-space($content) = '')">
+                <p><code>
+                    <xsl:copy-of select="$content" />
+                </code></p>
+            </xsl:if>
 
-    <xsl:if test="not(@id)">
-      <li>
-        <img src="{$path}/images/down.gif" alt="" />
-        <xsl:text> </xsl:text>
-        <xsl:apply-templates select="title" mode="print"/>
-
-        <!-- nested sections -->
-        <!-- NOT FOR NOW     -->
-        <!--
-        <xsl:if test="section">
-          <ul>
-            <xsl:apply-templates select="section" mode="index"/>
-          </ul>
+            <xsl:apply-templates select="self::node()[$is-block-node]" />
         </xsl:if>
-        -->
-      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    </xsl:if>
+    </xsl:for-each>
+    <!-- /node() -->
+</div> <!-- /.example -->
+</xsl:template>
+<!-- /example -->
 
-  </xsl:template>
-  <!-- /section index -->
 
+<!-- ==================================================================== -->
+<!-- example/title                                                        -->
+<!-- ==================================================================== -->
+<xsl:template match="example/title" mode="print">
+<h3>
+    <xsl:apply-templates/>
+</h3>
+</xsl:template>
+<xsl:template match="example/title" />
+<!-- /example/title -->
 
-  <!--                                                            -->
-  <!-- docs super menu                                            -->
-  <!--                                                            -->
-  <xsl:template name="super-menu">
-    <p class="menu">
-      <a href="{$path}/mod/{$index-file}">
-        <xsl:value-of select="$messages/message[@name='modules']"/>
-      </a>
-      <xsl:text> | </xsl:text>
-      <a href="{$path}/mod/directives.html">
-        <xsl:value-of select="$messages/message[@name='directives']"/>
-      </a>
-      <xsl:text> | </xsl:text>
-      <a href="{$path}/faq/{$index-file}">
-        <xsl:value-of select="$messages/message[@name='faq']"/>
-      </a>
-      <xsl:text> | </xsl:text>
-      <a href="{$path}/glossary.html">
-        <xsl:value-of select="$messages/message[@name='glossary']"/>
-      </a>
-      <xsl:text> | </xsl:text>
-      <a href="{$path}/sitemap.html">
-        <xsl:value-of select="$messages/message[@name='sitemap']"/>
-      </a>
-    </p>
-  </xsl:template>
-  <!-- /super-menu -->
-
-
-  <!--                                                    -->
-  <!-- <example>                                          -->
-  <!-- iterate over *all* nodes; bare text and other      -->
-  <!-- inline stuff is wrapped into <p><code>, block      -->
-  <!-- level elements (defined in $blockelements) are     -->
-  <!-- applied "as is"                                    -->
-  <!--                                                    -->
-  <xsl:variable name="blocks"
-              select="concat(' ', normalize-space($blockelements), ' ')"/>
-
-  <xsl:template match="example">
-    <div class="example">
-       <xsl:apply-templates select="title" mode="print"/>
-
-       <xsl:for-each select="./node()">
-         <xsl:variable name="is-block-node" select="boolean(contains($blocks, concat(' ',local-name(),' ')))"/>
-         <xsl:variable name="bb" select="count(preceding-sibling::*[contains($blocks,concat(' ',local-name(),' '))])"/>
-
-         <xsl:if test="$is-block-node or position()=last()">
-           <xsl:variable name="content">
-             <xsl:apply-templates select="preceding-sibling::node()[count(preceding-sibling::*[contains($blocks,concat(' ',local-name(),' '))]) &gt;= $bb]"/>
-             <xsl:apply-templates select="self::node()[not($is-block-node)]"/>
-           </xsl:variable>
-
-           <!-- apply bare text only, if it's not only \s or empty -->
-           <xsl:if test="not(normalize-space($content) = '')">
-             <p><code>
-               <xsl:copy-of select="$content"/>
-             </code></p>
-           </xsl:if>
-
-           <xsl:apply-templates select="self::node()[$is-block-node]"/>
-         </xsl:if>
-
-       </xsl:for-each>
-       <!-- /node() -->
-
-     </div> <!-- /.example -->
-  </xsl:template>
-  <!-- /example -->
-
-
-  <!--                                                    -->
-  <!-- example/title                                      -->
-  <!--                                                    -->
-  <xsl:template match="example/title" mode="print">
-    <h3>
-        <xsl:apply-templates/>
-    </h3>
-  </xsl:template>
-
-  <xsl:template match="example/title">
-    <!-- don't print twice -->
-  </xsl:template>
-  <!-- /example/title -->
-
-
-  <!--                                                    -->
-  <!-- indent                                             -->
-  <!--                                                    -->
-  <xsl:template match="indent">
-    <span class="indent">
-      <xsl:apply-templates/>
-    </span>
-  </xsl:template>
-  <!-- /indent -->
-
-
-  <!--                                                    -->
-  <!-- <note>                                             -->
-  <!-- Notes are placed in a table. Uses different back-  -->
-  <!-- ground colors, depending on type of note.          -->
-  <!--                                                    -->
-  <xsl:template match="note">
-    <div class="note">
-      <xsl:if test="@type='warning'">
-        <xsl:attribute name="class">warning</xsl:attribute>
-      </xsl:if>
 
-      <xsl:apply-templates/>
-    </div>
-  </xsl:template>
-  <!-- /note -->
+<!-- ==================================================================== -->
+<!-- indentations                                                         -->
+<!-- ==================================================================== -->
+<xsl:template match="indent">
+<span class="indent">
+    <xsl:apply-templates/>
+</span>
+</xsl:template>
+<!-- /indent -->
 
 
-  <!--                                                    -->
-  <!-- <note><title>                                      -->
-  <!--                                                    -->
-  <xsl:template match="note/title">
-    <h3>
-      <xsl:apply-templates/>
-    </h3>
-  </xsl:template>
-  <!-- /note/title -->
+<!-- ==================================================================== -->
+<!-- <note>                                                               -->
+<!-- ==================================================================== -->
+<xsl:template match="note">
+<div class="note">
+    <xsl:if test="@type='warning'">
+        <xsl:attribute name="class">warning</xsl:attribute>
+    </xsl:if>
 
+    <xsl:apply-templates/>
+</div>
+</xsl:template>
+<!-- /note -->
 
-  <!--                                                    -->
-  <!-- <directive>                                        -->
-  <!-- Inserts link to another directive, which might be  -->
-  <!-- in another module. References are converted into   -->
-  <!-- lower case.                                        -->
-  <!--                                                    -->
-  <xsl:template match="directive" name="directive">
-    <code class="directive">
 
-      <xsl:if test="@module">
-        <xsl:variable name="lowerdirective" select="translate(., $uppercase, $lowercase)"/>
+<!-- ==================================================================== -->
+<!-- <note><title>                                                        -->
+<!-- ==================================================================== -->
+<xsl:template match="note/title">
+<h3>
+    <xsl:apply-templates/>
+</h3>
+</xsl:template>
+<!-- /note/title -->
+
+
+<!-- ==================================================================== -->
+<!-- <directive>                                                          -->
+<!-- Inserts link to another directive, which might be in another module. -->
+<!-- References are converted into lower case.                            -->
+<!-- ==================================================================== -->
+<xsl:template match="directive" name="directive">
+<code class="directive">
+    <xsl:choose>
+    <xsl:when test="@module">
+        <xsl:variable name="lowerdirective"
+            select="translate(., $uppercase, $lowercase)" />
 
         <xsl:choose>
-          <xsl:when test="$in-modulesynopsis = '1' and @module = /modulesynopsis/name">
+        <xsl:when test="$in-modulesynopsis and @module = /modulesynopsis/name">
             <a href="#{$lowerdirective}">
-              <xsl:if test="@type='section'">&lt;</xsl:if>
-              <xsl:value-of select="."/>
-              <xsl:if test="@type='section'">&gt;</xsl:if>
+                <xsl:if test="@type='section'">&lt;</xsl:if>
+                <xsl:value-of select="."/>
+                <xsl:if test="@type='section'">&gt;</xsl:if>
             </a>
-          </xsl:when>
-
-          <xsl:otherwise>
-            <xsl:variable name="obs_">
-              <xsl:if test="@status = 'obsolete'">obs_</xsl:if>
-            </xsl:variable>
-
-            <a href="{$path}/mod/{$obs_}{@module}.html#{$lowerdirective}">
-              <xsl:if test="@type='section'">&lt;</xsl:if>
-              <xsl:value-of select="."/>
-              <xsl:if test="@type='section'">&gt;</xsl:if>
+        </xsl:when>
+        <xsl:otherwise>
+            <a href="{$path}/mod/{@module}.html#{$lowerdirective}">
+                <xsl:if test="@type='section'">&lt;</xsl:if>
+                <xsl:value-of select="."/>
+                <xsl:if test="@type='section'">&gt;</xsl:if>
             </a>
-          </xsl:otherwise>
+        </xsl:otherwise>
         </xsl:choose>
-      </xsl:if>
+    </xsl:when>
 
-      <xsl:if test="not(@module)">
+    <xsl:otherwise>
         <xsl:if test="@type='section'">&lt;</xsl:if>
         <xsl:value-of select="."/>
         <xsl:if test="@type='section'">&gt;</xsl:if>
-      </xsl:if>
-
-    </code>
-  </xsl:template>
-  <!-- /directive -->
-
-
-  <!--                                                    -->
-  <!-- <module>                                           -->
-  <!-- Inserts a link to refereed module                  -->
-  <!--                                                    -->
-  <xsl:template match="module" name="module">
-    <xsl:variable name="obs_">
-      <xsl:if test="@status = 'obsolete'">obs_</xsl:if>
-    </xsl:variable>
-
-    <code class="module">
-      <a href="{$path}/mod/{$obs_}{.}.html">
+    </xsl:otherwise>
+    </xsl:choose>
+</code>
+</xsl:template>
+<!-- /directive -->
+
+
+<!-- ==================================================================== -->
+<!-- <module>                                                             -->
+<!-- Inserts a link to refereed module                                    -->
+<!-- ==================================================================== -->
+<xsl:template match="module" name="module">
+<code class="module">
+    <a href="{$path}/mod/{.}.html">
         <xsl:value-of select="."/>
-      </a>
-    </code>
-  </xsl:template>
-  <!-- /module -->
-
-
-  <!--                                                    -->
-  <!-- <related>                                          -->
-  <!--                                                    -->
-  <xsl:template match="related">
-    <table class="related">
-      <tr>
-        <th>
-          <xsl:value-of select="$messages/message[@name='relatedmodules']"/>
-        </th>
-        <th>
-          <xsl:value-of select="$messages/message[@name='relateddirectives']"/>
-        </th>
-      </tr>
-
-      <tr>
-        <td>
-          <xsl:if test="count(modulelist/*) &gt; 0">
-           <ul>
-             <xsl:apply-templates select="modulelist"/>
-           </ul>
-         </xsl:if>
-        </td>
-
-        <td>
-          <xsl:if test="count(directivelist/*) &gt; 0">
+    </a>
+</code>
+</xsl:template>
+<!-- /module -->
+
+
+<!-- ==================================================================== -->
+<!-- <related>                                                            -->
+<!-- ==================================================================== -->
+<xsl:template match="related">
+<table class="related">
+<tr>
+    <th>
+        <xsl:value-of select="$messages/message[@name='relatedmodules']" />
+    </th>
+    <th>
+        <xsl:value-of select="$messages/message[@name='relateddirectives']" />
+    </th>
+</tr>
+<tr>
+    <td>
+        <xsl:if test="count(modulelist/*) &gt; 0">
             <ul>
-             <xsl:apply-templates select="directivelist"/>
+                <xsl:apply-templates select="modulelist" />
             </ul>
-          </xsl:if>
-        </td>
-      </tr>
-    </table>
-  </xsl:template>
-  <!-- /related -->
-
-
-  <xsl:template match="related/modulelist">
-    <xsl:for-each select="module">
-      <li>
+        </xsl:if>
+    </td>
+    <td>
+        <xsl:if test="count(directivelist/*) &gt; 0">
+            <ul>
+                <xsl:apply-templates select="directivelist"/>
+            </ul>
+        </xsl:if>
+    </td>
+</tr>
+</table>
+</xsl:template>
+<!-- /related -->
+
+<!-- ==================================================================== -->
+<!-- related/modulelist                                                   -->
+<!-- ==================================================================== -->
+<xsl:template match="related/modulelist">
+<xsl:for-each select="module">
+    <li>
         <xsl:call-template name="module"/>
-      </li>
-    </xsl:for-each>
-  </xsl:template>
-
-
-
-  <xsl:template match="related/directivelist">
-    <xsl:for-each select="directive">
-      <li>
+    </li>
+</xsl:for-each>
+</xsl:template>
+<!-- /related/modulelist -->
+
+
+<!-- ==================================================================== -->
+<!-- related/directivelist                                                -->
+<!-- ==================================================================== -->
+<xsl:template match="related/directivelist">
+<xsl:for-each select="directive">
+    <li>
         <xsl:call-template name="directive"/>
-      </li>
-    </xsl:for-each>
-  </xsl:template>
-
-
-  <!--                                                    -->
-  <!-- <table>                                            -->
-  <!--                                                    -->
-  <xsl:template match="table">
-    <table>
-      <xsl:if test="@border">
+    </li>
+</xsl:for-each>
+</xsl:template>
+<!-- /related/directivelist -->
+
+<!-- ==================================================================== -->
+<!-- <table>                                                              -->
+<!-- ==================================================================== -->
+<xsl:template match="table">
+<table>
+    <!-- existing border attribute will result in <table class="bordered"> -->
+    <xsl:if test="@border">
         <xsl:attribute name="class">bordered</xsl:attribute>
-      </xsl:if>
-
-      <xsl:choose>
-        <xsl:when test="@style = 'zebra'">
-          <xsl:for-each select="tr">
-
-            <tr><xsl:choose>
-              <xsl:when test="count(td) = 0">
-                <xsl:attribute name="class">header</xsl:attribute>
-              </xsl:when>
-
-              <xsl:when test="position() mod 2 = (count(preceding-sibling::*[count(td) = 0]) mod 2)">
-                <xsl:attribute name="class">odd</xsl:attribute>
-              </xsl:when></xsl:choose>
-
-              <xsl:apply-templates />
-            </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          </xsl:for-each>
-        </xsl:when>
-
-        <xsl:otherwise>
-          <xsl:apply-templates />
-        </xsl:otherwise>
-      </xsl:choose>
-    </table>
-
-  </xsl:template>
-  <!-- /table -->
-
+    </xsl:if>
 
-  <!--                                                    -->
-  <!-- <ol type                                           -->
-  <!--                                                    -->
-  <xsl:template match="ol">
-    <ol>
-      <xsl:if test="@type = 'A'">
+    <!-- style="zebra": alternating colors per row, i.e. every second row -->
+    <!--                gets a class="odd". Header lines (no <td>) get a  -->
+    <!--                class="header". These lines will be excluded from -->
+    <!--                the "odd" line count. That way header lines act   -->
+    <!--                interjectional, which creates a better visual and -->
+    <!--                psychological effect.                             -->
+    <xsl:choose>
+    <xsl:when test="@style = 'zebra'">
+        <xsl:for-each select="tr">
+            <tr>
+                <xsl:choose>
+                <xsl:when test="count(td) = 0">
+                    <xsl:attribute name="class">header</xsl:attribute>
+                </xsl:when>
+
+                <xsl:when
+                    test="position() mod 2 =
+                            (count(preceding-sibling::*[count(td) = 0]) mod 2)">
+                    <xsl:attribute name="class">odd</xsl:attribute>
+                </xsl:when>
+                </xsl:choose>
+
+                <xsl:apply-templates />
+            </tr>&lf;
+        </xsl:for-each>
+    </xsl:when>
+    <xsl:otherwise>
+        <xsl:apply-templates />
+    </xsl:otherwise>
+    </xsl:choose>
+</table>
+</xsl:template>
+<!-- /table -->
+
+
+<!-- ==================================================================== -->
+<!-- <ol>                                                                 -->
+<!-- ==================================================================== -->
+<xsl:template match="ol">
+<ol>
+    <!-- A. B. C. D. (list-style-type="upper-alpha") -->
+    <xsl:if test="@type = 'A'">
         <xsl:attribute name="class">up-A</xsl:attribute>
-      </xsl:if>
-
-      <xsl:apply-templates/>
-    </ol>
-  </xsl:template>
-  <!-- /ol type -->
-
-
-  <!--                                                    -->
-  <!-- <summary>                                          -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="summary">
-    <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /summary -->
-
-
-  <!--                                                    -->
-  <!-- <description>                                      -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="description">
-    <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /description -->
-
-
-  <!--                                                    -->
-  <!-- <hint>                                             -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="hint">
-    <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /description -->
-
-
-  <!--                                                    -->
-  <!-- <usage>                                            -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="usage">
-    <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /usage -->
-
+    </xsl:if>
 
-  <!--                                                    -->
-  <!-- <syntax>                                           -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="syntax">
     <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /syntax -->
-
-  <!--                                                    -->
-  <!-- <default>                                          -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="default">
-    <xsl:apply-templates/>
-  </xsl:template>
-  <!-- /default -->
-
-
-  <!--                                                    -->
-  <!-- <a>                                                -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="a">
-    <xsl:if test="not(@href)">
-      <xsl:copy>
+</ol>
+</xsl:template>
+<!-- /ol -->
+
+
+<!-- ==================================================================== -->
+<!-- diverse elements                                                     -->
+<!-- Passes through content                                               -->
+<!-- ==================================================================== -->
+<xsl:template match="summary|description|usage|syntax|default">
+<xsl:apply-templates/>
+</xsl:template>
+<!-- /diverse -->
+
+
+<!-- ==================================================================== -->
+<!-- <a>                                                                  -->
+<!-- ==================================================================== -->
+<xsl:template match="a">
+<xsl:choose>
+<xsl:when test="not(@href)">
+    <xsl:copy>
         <xsl:apply-templates select="@*|*|text()"/>
-      </xsl:copy>
-    </xsl:if>
-    
-    <xsl:if test="@href">
-      <a href="@href">
+    </xsl:copy>
+</xsl:when>
+<xsl:otherwise>
+    <a href="@href">
         <xsl:apply-templates select="@*"/>
         <xsl:call-template name="helper.uri.fix">
-          <xsl:with-param name="uri" select="@href"/>
+            <xsl:with-param name="uri" select="@href"/>
         </xsl:call-template>
 
         <xsl:apply-templates select="*|text()"/>
-      </a>
-    </xsl:if>
-  </xsl:template> 
-  <!-- /a -->
-
-
-  <!--                                                    -->
-  <!-- toplink                                            -->
-  <!--                                                    -->
-  <xsl:template name="toplink">
-    <div class="top">
-      <a href="#page-header"><img src="{$path}/images/up.gif" alt="top" /></a>
-    </div>
-  </xsl:template>
-  <!-- /toplink -->
-
-
-  <!--                                                    -->
-  <!-- <transnote>                                        -->
-  <!--                                                    -->
-  <xsl:template match="transnote">
-    <span class="transnote">
-      <xsl:text>(</xsl:text><em>
-      <xsl:value-of select="$messages/message[@name='transnote']"/>
-      </em><xsl:text> </xsl:text>
-      <xsl:apply-templates/>
-      <xsl:text>)</xsl:text>
-    </span>
-  </xsl:template>
-  <!-- /note/title -->
-
-
-  <!--                                                    -->
-  <!-- Filter &#160; in text() nodes.                     -->
-  <!-- In some environments this character won't be       -->
-  <!-- transformed correctly, so we just write it         -->
-  <!-- explicitely as "&nbsp;"                            -->
-  <!--                                                    -->
-  <xsl:template match="text()" name="filter.nbsp">
-  <xsl:param name="text"><xsl:value-of select="."/></xsl:param>
-    <xsl:choose>
-        <xsl:when test="contains($text, '&#160;')">
-            <xsl:value-of select="substring-before($text, '&#160;')"/>
-            &nbsp;
-            <xsl:call-template name="filter.nbsp">
-                <xsl:with-param name="text"
-                              select="substring-after($text, '&#160;')"/>
-            </xsl:call-template>
-        </xsl:when>
-
-        <xsl:otherwise>
-            <xsl:value-of select="$text"/>
-        </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-
-  <!--                                                    -->
-  <!-- Process everything else by just passing it through -->
-  <!--                                                    -->
-  <xsl:template match="*|@*">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|*|text()"/>
-    </xsl:copy>
-  </xsl:template>
-
-
-  <!--                                                    -->
-  <!-- create a letter bar                                -->
-  <!-- used in several documents                          -->
-  <!--                                                    -->
-  <xsl:template name="letter-bar">
-  <xsl:param name="letters"/>
-  <xsl:param name="first"/>
-
-    <xsl:if test="not($first)">
-      <xsl:text> | </xsl:text>
-    </xsl:if>
-
-    <a href="#{substring($letters,1,1)}">
-      &nbsp;
-      <xsl:value-of select="substring($letters,1,1)"/>
-      &nbsp;
     </a>
+</xsl:otherwise>
+</xsl:choose>
+</xsl:template> 
+<!-- /a -->
+
+
+<!-- ==================================================================== -->
+<!-- toplink                                                              -->
+<!-- ==================================================================== -->
+<xsl:template name="toplink">
+<div class="top">
+    <a href="#page-header"><img src="{$path}/images/up.gif" alt="top" /></a>
+</div>
+</xsl:template>
+<!-- /toplink -->
+
+
+<!-- ==================================================================== -->
+<!-- <transnote>                                                          -->
+<!-- translator's notes are displayed in a different color                -->
+<!-- ==================================================================== -->
+<xsl:template match="transnote">
+<span class="transnote">
+    <xsl:text>(</xsl:text>
+    <em>
+        <xsl:value-of select="$messages/message[@name='transnote']" />
+    </em>
+    <xsl:text> </xsl:text>
+    <xsl:apply-templates />
+    <xsl:text>)</xsl:text>
+</span>
+</xsl:template>
+<!-- /transnote -->
+
+
+<!-- ==================================================================== -->
+<!-- Filter &#160; in text() nodes.                                       -->
+<!-- In some environments this character won't be transformed correctly,  -->
+<!-- so we just write it explicitely as "&nbsp;" into the output.         -->
+<!-- ==================================================================== -->
+<xsl:template match="text()" name="filter.nbsp">
+<xsl:param name="text" select="." />
+
+<xsl:choose>
+<xsl:when test="contains($text, '&#160;')">
+    <xsl:value-of select="substring-before($text, '&#160;')" />
+    &nbsp;
+    <xsl:call-template name="filter.nbsp">
+        <xsl:with-param name="text" select="substring-after($text, '&#160;')" />
+    </xsl:call-template>
+</xsl:when>
+<xsl:otherwise>
+    <xsl:value-of select="$text" />
+</xsl:otherwise>
+</xsl:choose>
+</xsl:template>
+<!-- /filter.nbsp -->
+
+
+<!-- ==================================================================== -->
+<!-- Process everything else by just passing it through                   -->
+<!-- ==================================================================== -->
+<xsl:template match="*|@*">
+<xsl:copy>
+    <xsl:apply-templates select="*|@*|text()" />
+</xsl:copy>
+</xsl:template>
+<!-- /pass through -->
+
+
+<!-- ==================================================================== -->
+<!-- create a letter bar                                                  -->
+<!-- ==================================================================== -->
+<xsl:template name="letter-bar">
+<xsl:param name="letters" />
+<xsl:param name="first" />
+
+<xsl:if test="not($first)">
+    <xsl:text> | </xsl:text>
+</xsl:if>
+
+<a href="#{substring($letters,1,1)}">
+    &nbsp;
+    <xsl:value-of select="substring($letters, 1, 1)" />
+    &nbsp;
+</a>
+
+<xsl:if test="string-length($letters) &gt; 1">
+    <xsl:call-template name="letter-bar">
+        <xsl:with-param name="letters" select="substring($letters, 2)" />
+        <xsl:with-param name="first" select="false()" />
+    </xsl:call-template>
+</xsl:if>
+</xsl:template>
+<!-- /letter-bar -->
 
-    <xsl:if test="string-length($letters) &gt; 1">
-      <xsl:call-template name="letter-bar">
-        <xsl:with-param name="letters" select="substring($letters,2)"/>
-        <xsl:with-param name="first" select="false()"/>
-      </xsl:call-template>
-    </xsl:if>
-  </xsl:template>
-
-
-  <!--                                                    -->
-  <!-- template(s) for collecting all start letters       -->
-  <!-- of directives                                      -->
-  <!-- used in several documents                          -->
-  <!--                                                    -->
-  <xsl:template name="directive-startletters">
-  <xsl:param name="directives"/>
 
-    <xsl:call-template name="_squeeze-letters">
-      <xsl:with-param name="lastletter" select="''"/>
+<!-- ==================================================================== -->
+<!-- template(s) for collecting all start letters of directives           -->
+<!-- ==================================================================== -->
+<xsl:template name="directive-startletters">
+<xsl:param name="directives" />
 
-      <xsl:with-param name="letters">
+<xsl:call-template name="_squeeze-letters">
+    <xsl:with-param name="lastletter" select="''" />
+    <xsl:with-param name="letters">
         <xsl:for-each select="$directives">
         <xsl:sort select="name"/>
-          <xsl:value-of select="translate(substring(normalize-space(name),1,1),$lowercase,$uppercase)"/>
+            <xsl:value-of
+                select="translate(substring(normalize-space(name), 1, 1),
+                                  $lowercase, $uppercase)" />
         </xsl:for-each>
-      </xsl:with-param>
-    </xsl:call-template>
+    </xsl:with-param>
+</xsl:call-template>
+</xsl:template>
+<!-- /directive-startletters -->
 
-  </xsl:template>
 
-  <xsl:template name="_squeeze-letters">
-  <xsl:param name="letters"/>
-  <xsl:param name="lastletter"/>
+<!-- ==================================================================== -->
+<!-- squeeze subsequent letters in a string                               -->
+<!-- ==================================================================== -->
+<xsl:template name="_squeeze-letters">
+<xsl:param name="letters"/>
+<xsl:param name="lastletter"/>
 
-    <xsl:variable name="current" select="substring($letters,1,1)"/>
+<xsl:variable name="current" select="substring($letters, 1, 1)" />
 
-    <xsl:if test="not($lastletter = $current)">
-      <xsl:value-of select="$current"/>
-    </xsl:if>
+<xsl:if test="not($lastletter = $current)">
+    <xsl:value-of select="$current" />
+</xsl:if>
 
-    <xsl:if test="string-length($letters) &gt; 1">
-      <xsl:call-template name="_squeeze-letters">
-        <xsl:with-param name="letters" select="substring($letters,2)"/>
+<xsl:if test="string-length($letters) &gt; 1">
+    <xsl:call-template name="_squeeze-letters">
+        <xsl:with-param name="letters" select="substring($letters, 2)" />
         <xsl:with-param name="lastletter" select="$current"/>
-      </xsl:call-template>
+    </xsl:call-template>
+</xsl:if>
+</xsl:template>
+<!-- /_squeeze-letters -->
+
+
+<!-- ==================================================================== -->
+<!-- fix href and target attribute of an element.                         -->
+<!-- ==================================================================== -->
+<xsl:template name="helper.uri.fix">
+<xsl:param name="uri"/>
+
+<xsl:choose>
+<!-- lame is_absolute_uri test -->
+<xsl:when test="    contains($uri, ':')
+                and string-length(substring-before($uri, ':')) &lt; 7">
+    <xsl:if test="$ext-target">
+        <xsl:attribute name="target">_blank</xsl:attribute>
+    </xsl:if>
+</xsl:when>
+<xsl:otherwise>
+    <xsl:variable name="fragment">
+        <xsl:if test="contains($uri, '#')">
+            <xsl:value-of select="concat('#', substring-after($uri, '#'))"/>
+        </xsl:if>
+    </xsl:variable>
+    <xsl:variable name="absuri">
+        <xsl:choose>
+        <xsl:when test="contains($uri, '#')">
+            <xsl:value-of select="concat('#', substring-before($uri, '#'))"/>
+        </xsl:when>
+        <xsl:otherwise>
+            <xsl:value-of select="$uri"/>
+        </xsl:otherwise>
+        </xsl:choose>
+    </xsl:variable>
+        
+    <xsl:if test="substring($absuri, string-length($uri), 1) = '/'">
+        <xsl:attribute name="href">
+            <xsl:value-of select="concat($absuri, $index-file, $fragment)"/>
+        </xsl:attribute>
     </xsl:if>
-  </xsl:template>
+</xsl:otherwise>
+</xsl:choose>
+</xsl:template>
+<!-- /helper.uri.fix -->
 
 </xsl:stylesheet>
index e57dd8cc0baef3b7f98836fbe673b746018b7cfe..b72584dec2dfb664150730212ea8513dd371136c 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                    -->
-  <!-- <directiveindex>                                   -->
-  <!-- Builds the directive index page                    -->
-  <!--                                                    -->
-  <xsl:template match="directiveindex">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
+<!-- ==================================================================== -->
+<!-- <directiveindex>                                                     -->
+<!-- Builds the directive index page                                      -->
+<!-- ==================================================================== -->
+<xsl:template match="directiveindex">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head"/>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="directive-index">
+    <body id="directive-index">
         <xsl:call-template name="top"/>
 
-        <xsl:variable name="directives" select="document(modulefilelist/modulefile)/modulesynopsis[status!='Obsolete']/directivesynopsis[not(@location)]"/>
+        <xsl:variable name="directives"
+            select="document(modulefilelist/modulefile)
+                        /modulesynopsis[status!='Obsolete']
+                        /directivesynopsis[not(@location)]" />
 
         <!-- collect the start letters -->
         <xsl:variable name="start-letters">
-          <xsl:call-template name="directive-startletters">
-            <xsl:with-param name="directives" select="$directives"/>
-          </xsl:call-template>
+            <xsl:call-template name="directive-startletters">
+                <xsl:with-param name="directives" select="$directives" />
+            </xsl:call-template>
         </xsl:variable>
 
         <div id="preamble">
-          <h1>
-            <xsl:value-of select="title"/>
-          </h1>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:apply-templates select="summary" />
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <!-- letter line -->
-          <p class="letters">
-            <xsl:call-template name="letter-bar">
-              <xsl:with-param name="letters" select="$start-letters"/>
-              <xsl:with-param name="first" select="true()"/>
-            </xsl:call-template>
-          </p>
-          <!-- /letter line -->
+            <h1>
+                <xsl:value-of select="title" />
+            </h1>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
+            <xsl:apply-templates select="summary" />&lf;
 
-        </div> <!-- /preamble -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            <!-- letter bar -->
+            <p class="letters">
+                <xsl:call-template name="letter-bar">
+                    <xsl:with-param name="letters" select="$start-letters" />
+                    <xsl:with-param name="first" select="true()" />
+                </xsl:call-template>
+            </p>&lf; <!-- /.letters -->
+        </div>&lf; <!-- /preamble -->
 
         <div id="directive-list">
-          <ul>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <xsl:call-template name="dindex-of-letter">
-              <xsl:with-param name="letters-todo" select="$start-letters"/>
-              <xsl:with-param name="directives" select="$directives"/>
-            </xsl:call-template>
-          </ul>
-        </div> <!-- /directive-list -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template>
-
-
-  <!--                                                     -->
-  <!-- the working horse. builds list items of all         -->
-  <!-- directives starting with one letter                 -->
-  <!-- when done, it calls itself to catch the next letter -->
-  <!--                                                     -->
-  <xsl:template name="dindex-of-letter">
-  <xsl:param name="letters-todo"/>
-  <xsl:param name="directives"/>
-
-    <xsl:variable name="letter" select="substring($letters-todo,1,1)"/>
-
-    <xsl:for-each select="$directives[$letter=translate(substring(normalize-space(name),1,1),$lowercase,$uppercase)]">
-    <xsl:sort select="name"/>
-
-      <li>
-        <a href="{../name}.html#{translate(name,$uppercase,$lowercase)}">
-          <xsl:if test="position()=1">
-            <xsl:attribute name="id"><xsl:value-of select="$letter"/></xsl:attribute>
-            <xsl:attribute name="name"><xsl:value-of select="$letter"/></xsl:attribute>
-          </xsl:if>
-
-          <xsl:if test="@type = 'section'">&lt;</xsl:if>
-          <xsl:value-of select="name"/>
-          <xsl:if test="@type = 'section'">&gt;</xsl:if>
+            <ul>&lf;
+                <xsl:call-template name="dindex-of-letter">
+                    <xsl:with-param name="letters-todo"
+                        select="$start-letters" />
+                    <xsl:with-param name="directives" select="$directives" />
+                </xsl:call-template>
+            </ul>
+        </div>&lf; <!-- /#directive-list -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /directiveindex -->
+
+
+<!-- ==================================================================== -->
+<!-- the working horse. builds list items of all directives starting with -->
+<!-- one letter when done, it calls itself to catch the next letter       -->
+<!-- ==================================================================== -->
+<xsl:template name="dindex-of-letter">
+<xsl:param name="letters-todo" />
+<xsl:param name="directives" />
+
+<xsl:variable name="letter" select="substring($letters-todo, 1, 1)"/>
+
+<xsl:for-each
+    select="$directives
+                [$letter = translate(substring(normalize-space(name), 1, 1),
+                                     $lowercase, $uppercase)]">
+<xsl:sort select="name" />
+    <li>
+        <a href="{../name}.html#{translate(name, $uppercase, $lowercase)}">
+            <xsl:if test="position() = 1">
+                <xsl:attribute name="id">
+                    <xsl:value-of select="$letter" />
+                </xsl:attribute>
+                <xsl:attribute name="name">
+                    <xsl:value-of select="$letter" />
+                </xsl:attribute>
+            </xsl:if>
+
+            <xsl:if test="@type = 'section'">&lt;</xsl:if>
+            <xsl:value-of select="name" />
+            <xsl:if test="@type = 'section'">&gt;</xsl:if>
         </a>
-      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
-
-    </xsl:for-each> <!-- /directives -->
-
-    <!-- call next letter, if there is -->
-    <xsl:if test="string-length($letters-todo) &gt; 1">
-      <xsl:call-template name="dindex-of-letter">
-        <xsl:with-param name="letters-todo" select="substring($letters-todo,2)"/>
-        <xsl:with-param name="directives" select="$directives"/>
-      </xsl:call-template>
-    </xsl:if>
-
-  </xsl:template>
-  <!-- /dindex-of-letter -->
+    </li>&lf;
+</xsl:for-each>
+
+<!-- call next letter, if there is -->
+<xsl:if test="string-length($letters-todo) &gt; 1">
+    <xsl:call-template name="dindex-of-letter">
+        <xsl:with-param name="letters-todo"
+            select="substring($letters-todo, 2)" />
+        <xsl:with-param name="directives" select="$directives" />
+    </xsl:call-template>
+</xsl:if>
+
+</xsl:template>
+<!-- /dindex-of-letter -->
 
 </xsl:stylesheet>
index 7c5ff12af177eae7f6c0413b1254c4a38a5edee0..48691111111d76941899abca5751ac28b033409b 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                    -->
-  <!-- <manualpage>                                       -->
-  <!-- Process an entire document into an HTML page       -->
-  <!--                                                    -->
-  <xsl:template match="faq">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
+<!-- ==================================================================== -->
+<!-- <faq>                                                                -->
+<!-- Process an entire document into an HTML page                         -->
+<!-- ==================================================================== -->
+<xsl:template match="faq">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head"/>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="manual-page">
+    <body id="manual-page">
         <!-- unsqueeze if there's no sidebar -->
-        <xsl:if test="not(count(section) > 1 or (/faq/@all-in-one = 'yes') or seealso)">
-          <xsl:attribute name="class">no-sidebar</xsl:attribute>
+        <xsl:if test="   not(count(section) > 1
+                      or (/faq/@all-in-one = 'yes')
+                      or seealso)">
+            <xsl:attribute name="class">no-sidebar</xsl:attribute>
         </xsl:if>
 
-        <xsl:call-template name="top"/>          
+        <xsl:call-template name="top" />          
 
         <div id="page-content">
-          <div id="preamble">        
-            <h1>
-              <xsl:value-of select="title"/>
-            </h1>
-
-            <xsl:apply-templates select="summary"/>
-          </div> <!-- /preamble -->
-          
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:if test="(not($is-chm) and (count(section) > 1 or (/faq/@all-in-one = 'yes'))) or seealso">
-            <div id="quickview">
-              <xsl:if test="not($is-chm)">
-              <xsl:if test="count(section) > 1">
-                <ul id="toc">
-                  <xsl:apply-templates select="section" mode="index"/>
-                </ul>
-              </xsl:if>
-
-              <xsl:if test="/faq/@all-in-one = 'yes'">
-                <ul id="toc">
-                  <li>
-                    <img src="{$path}/images/down.gif" alt="" />
-                    <xsl:text> </xsl:text>
-                    <a href="#topics">
-                      <xsl:value-of select="$messages/message[@name='topics']"/>
-                    </a>
-                  </li>
-
-<xsl:text>
-</xsl:text>
-
-                  <xsl:apply-templates select="categories/categoryfile" mode="toc"/>
-                </ul>
-              </xsl:if>
-              </xsl:if> <!-- chm -->
-
-              <xsl:if test="seealso">
-                <h3>
-                  <xsl:value-of select="$messages/message[@name='seealso']"/>
-                </h3>
-                <ul class="seealso">
-                  <xsl:for-each select="seealso">
-                    <li>
-                      <xsl:apply-templates/>
-                    </li>
-                  </xsl:for-each>
-                </ul>
-              </xsl:if>
-
-           </div> <!-- /quickview -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          </xsl:if>
-
-          <!-- either one ... -->
-          <xsl:apply-templates select="section"/>
-          <!-- ... or the other is allowed -->
-          <xsl:apply-templates select="categories"/>
-        </div> <!-- /page-content -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template>
-
-  <xsl:template match="categories">
-
-    <xsl:call-template name="toplink"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    <div class="section">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <!-- Section heading -->
-      <h2>
+            <div id="preamble">        
+                <h1>
+                    <xsl:value-of select="title" />
+                </h1>
+
+                <xsl:apply-templates select="summary"/>
+            </div>&lf; <!-- /#preamble -->
+
+            <xsl:if
+                test="(    not($is-chm)
+                       and (count(section) > 1 or (/faq/@all-in-one = 'yes')))
+                      or seealso">
+                <div id="quickview">
+                    <xsl:if test="not($is-chm)">
+                        <xsl:if test="count(section) > 1">
+                            <ul id="toc">
+                                <xsl:apply-templates
+                                    select="section" mode="index" />
+                            </ul>
+                        </xsl:if>
+
+                        <xsl:if test="/faq/@all-in-one = 'yes'">
+                            <ul id="toc">
+                            <li>
+                                <img src="{$path}/images/down.gif" alt="" />
+                                <xsl:text> </xsl:text>
+                                <a href="#topics">
+                                    <xsl:value-of select="$messages/message
+                                                          [@name='topics']" />
+                                </a>
+                            </li>&lf;
+
+                            <xsl:apply-templates
+                                select="categories/categoryfile" mode="toc" />
+                            </ul>
+                        </xsl:if>
+                    </xsl:if> <!-- !$is-chm -->
+
+                    <xsl:if test="seealso">
+                        <h3>
+                            <xsl:value-of
+                                select="$messages/message[@name='seealso']" />
+                        </h3>
+
+                        <ul class="seealso">
+                        <xsl:for-each select="seealso">
+                            <li>
+                                <xsl:apply-templates />
+                            </li>
+                        </xsl:for-each>
+                        </ul>
+                    </xsl:if>
+                </div>&lf; <!-- /#quickview -->
+            </xsl:if> <!-- /have sidebar -->
+
+            <!-- either one ... -->
+            <xsl:apply-templates select="section" />
+            <!-- ... or the other is allowed -->
+            <xsl:apply-templates select="categories" />
+        </div>&lf; <!-- /#page-content -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /faq -->
+
+<!-- ==================================================================== -->
+<!-- <categories> (see categories.xml)                                    -->
+<!-- ==================================================================== -->
+<xsl:template match="categories">
+<xsl:call-template name="toplink" />&lf;
+
+<div class="section">&lf;
+
+    <!-- Section heading -->
+    <h2>
         <a name="topics" id="topics">
-          <xsl:value-of select="$messages/message[@name='topics']"/>
+            <xsl:value-of select="$messages/message[@name='topics']" />
         </a>
-      </h2>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    </h2>&lf;
 
-      <dl>
+    <dl>
         <xsl:apply-templates select="categoryfile" mode="index"/>
-      </dl>
-    </div> <!-- /.section -->
-
-    <xsl:if test="/faq/@all-in-one = 'yes'">
-      <xsl:apply-templates select="categoryfile" mode="suckin"/>
-    </xsl:if>
-
-  </xsl:template>
-
-  <xsl:template match="categories/categoryfile" mode="index">
-    <xsl:variable name="current" select="document(.)/faq" />
-
-    <dt>
-      <a>
-        <xsl:attribute name="href"><xsl:choose>
-          <xsl:when test="/faq/@all-in-one = 'yes'">
-            <xsl:value-of select="concat('#', $current/section/@id)" />
-          </xsl:when>
-
-          <xsl:otherwise>
-            <xsl:value-of select="concat(document($current/@metafile)/metafile/basename, '.html')" />
-          </xsl:otherwise></xsl:choose>
+    </dl>
+</div> <!-- /.section -->
+
+<xsl:if test="/faq/@all-in-one = 'yes'">
+    <xsl:apply-templates select="categoryfile" mode="suckin" />
+</xsl:if>
+</xsl:template>
+<!-- /categories -->
+
+<!-- ==================================================================== -->
+<!-- <categoryfile> mode="index"                                          -->
+<!-- just write the short description with a link to the resource         -->
+<!-- ==================================================================== -->
+<xsl:template match="categories/categoryfile" mode="index">
+<xsl:variable name="current" select="document(.)/faq" />
+
+<dt>
+    <a>
+        <xsl:attribute name="href">
+            <xsl:choose>
+            <xsl:when test="/faq/@all-in-one = 'yes'">
+                <xsl:value-of select="concat('#', $current/section/@id)" />
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:value-of select="concat(document($current/@metafile)
+                                             /metafile/basename, '.html')" />
+            </xsl:otherwise>
+            </xsl:choose>
         </xsl:attribute>
 
         <xsl:value-of select="$current/section/title" />
-      </a>
-    </dt>
-    <dd>
-      <xsl:apply-templates select="$current/description/node()" />
-    </dd>
-
-<xsl:text>
-</xsl:text>
-
-  </xsl:template>
-
-  <xsl:template match="categories/categoryfile" mode="toc">
-    <xsl:variable name="current" select="document(.)/faq" />
-
-    <li>
-      <img src="{$path}/images/down.gif" alt="" />
-      <xsl:text> </xsl:text>
-      <a href="#{$current/section/@id}">
+    </a>
+</dt>
+<dd>
+    <xsl:apply-templates select="$current/description" />
+</dd>&lf;
+</xsl:template>
+<!-- /categoryfile, "index" -->
+
+
+<!-- ==================================================================== -->
+<!-- <categoryfile> mode="toc"                                            -->
+<!-- create sidebar links                                                 -->
+<!-- ==================================================================== -->
+<xsl:template match="categories/categoryfile" mode="toc">
+<xsl:variable name="current" select="document(.)/faq" />
+
+<li>
+    <img src="{$path}/images/down.gif" alt="" />
+    <xsl:text> </xsl:text>
+    <a href="#{$current/section/@id}">
         <xsl:value-of select="$current/section/title" />
-      </a>
-    </li>
-
-<xsl:text>
-</xsl:text>
-
-  </xsl:template>
-
-  <xsl:template match="categories/categoryfile" mode="suckin">
-    <xsl:apply-templates select="document(.)/faq/section" />
-  </xsl:template>
+    </a>
+</li>&lf;
+</xsl:template>
+<!-- /categoryfile, "toc" -->
+
+
+<!-- ==================================================================== -->
+<!-- <categoryfile> mode="suckin"                                         -->
+<!-- load whole file contents (for all-in-one page)                       -->
+<!-- ==================================================================== -->
+<xsl:template match="categories/categoryfile" mode="suckin">
+<xsl:apply-templates select="document(.)/faq/section" />
+</xsl:template>
+<!-- /categoryfile, "suckin" -->
 
 </xsl:stylesheet>
index 2c26a7ff5d2010f26a1f4c45c45d4fe482a2b237..4478d86246824429552ab884434efbd0ca6cdef8 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!-- three columns, select were the particular categories shall be
-       placed in. (order is irrelevant, they're placed in document order) -->
-
-  <xsl:variable name="indexpage-column1" select="'
+<!--                                                                      -->
+<!-- three columns, select were the particular categories shall be        -->
+<!-- placed in. (order is irrelevant, they're placed in document order)   -->
+<!--                                                                      -->
+<xsl:variable name="indexpage-column1" select="'
     release
     manual
-  '"/>
+'"/>
 
-  <xsl:variable name="indexpage-column2" select="'
+<xsl:variable name="indexpage-column2" select="'
     usersguide
-  '"/>
+'"/>
 
-  <xsl:variable name="indexpage-column3" select="'
+<xsl:variable name="indexpage-column3" select="'
     howto
     platform
     other
-  '"/>
-
-  <!--                                                    -->
-  <!-- <indexpage>                                        -->
-  <!-- Process an entire document into an HTML page       -->
-  <!--                                                    -->
-  <xsl:template match="/indexpage">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="index-page">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+'"/>
 
-        <xsl:call-template name="top"/>          
+<!-- ==================================================================== -->
+<!-- <indexpage>                                                          -->
+<!-- Process an entire document into an HTML page                         -->
+<!-- ==================================================================== -->
+<xsl:template match="/indexpage">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head"/>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <body id="index-page">&lf;
+        <xsl:call-template name="top"/>&lf;
 
         <div id="page-content">
-          <h1>
-            <xsl:value-of select="title"/>
-          </h1>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <form action="http://www.google.com/search" method="get">
-          <xsl:if test="$ext-target = '1'">
-            <xsl:attribute name="target">_blank</xsl:attribute>
-          </xsl:if>
-          
-          <p>
-          <!-- search google: -->
-          <!-- with all of the words -->
-          <input type="text" value="" name="as_q" />
-          <xsl:text> </xsl:text>
-          <input type="submit" value="{$messages/message[@name='search']}" />
-
-          <!-- the specified number of results -->
-          <input type="hidden" name="num" value="10" />
-
-          <!-- the current displayed language -->
-          <input type="hidden" name="hl" value="{$messages/@lang}" />
+            <h1>
+                <xsl:value-of select="title"/>
+            </h1>&lf;
 
-          <!-- the current document encoding for input (?) -->
-          <input type="hidden" name="ie" value="{$output-encoding}" />
+            <form>
+                <xsl:call-template name="search.spec" />
+            </form>&lf;
 
-          <!-- (submit the original button and name) -->
-          <input type="hidden" name="btnG" value="Google Search" />
-
-          <!-- including the exact phrase "Apache 2.0" -->
-          <input type="hidden" value="Apache 2.0" name="as_epq" />
-
-          <!-- with at least one of the words (none) -->
-          <input type="hidden" value="" name="as_oq" />
-
-          <!-- without the phrase "List-Post" (to exclude the mail archives) -->
-          <input type="hidden" value="&quot;List-Post&quot;" name="as_eq" />
-
-          <!-- return results written in (any) language -->
-          <input type="hidden" name="lr" value="" />
-
-          <!-- and any format -->
-          <input type="hidden" name="as_ft" value="i" />
-          <input type="hidden" name="as_filetype" value="" />
-
-          <!-- updated anytime -->
-          <input type="hidden" name="as_qdr" value="all" />
-
-          <!-- where the result appears anywhere in the document -->
-          <input type="hidden" name="as_occt" value="any" />
-
-          <!-- only from httpd.apache.org -->
-          <input type="hidden" name="as_dt" value="i" />
-          <input type="hidden" name="as_sitesearch" value="httpd.apache.org" />
+            <table id="indextable">
+            <tr>
+                <td class="col1">
+                    <xsl:apply-templates
+                        select="category[contains($indexpage-column1, @id)]" />
+                </td>
+                <td>
+                    <xsl:apply-templates
+                        select="category[contains($indexpage-column2, @id)]" />
+                </td>
+                <td class="col3">
+                    <xsl:apply-templates
+                        select="category[contains($indexpage-column3, @id)]" />
+                </td>
+            </tr>
+            </table>
+        </div>&lf; <!-- /#page-content -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /indexpage -->
+
+
+<!-- ==================================================================== -->
+<!-- category/page                                                        -->
+<!-- ==================================================================== -->
+<xsl:template match="indexpage/category/page">
+<li>
+    <xsl:if test="@separate='yes'">
+        <xsl:attribute name="class">separate</xsl:attribute>
+    </xsl:if>
 
-          <!-- turn off "safe" mode -->
-          <input type="hidden" name="safe" value="off" />
-          </p></form>
+    <xsl:choose>
+    <xsl:when test="@href">
+        <a href="{@href}">
+            <xsl:call-template name="helper.uri.fix">
+                <xsl:with-param name="uri" select="@href"/>
+            </xsl:call-template>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            <xsl:value-of select="." />
+        </a>
+    </xsl:when>
+    <xsl:otherwise>
+        <xsl:value-of select="." />
+    </xsl:otherwise>
+    </xsl:choose>
+</li>&lf;
+</xsl:template>
+<!-- /category/page -->
+
+
+<!-- ==================================================================== -->
+<!-- Process a indexpage category                                         -->
+<!-- ==================================================================== -->
+<xsl:template match="indexpage/category">
+<div class="category">
+    <!-- Section heading -->
+    <h2>
+        <xsl:if test="@id">
+            <a id="{@id}" name="{@id}">
+                <xsl:apply-templates select="title" mode="print" />
+            </a>
+        </xsl:if>
 
-          <table id="indextable">
-            <tr>
-              <td class="col1">
-                <xsl:apply-templates
-                    select="category[contains($indexpage-column1, @id)]"/>
-              </td>
-              <td>
-                <xsl:apply-templates
-                    select="category[contains($indexpage-column2, @id)]"/>
-              </td>
-              <td class="col3">
-                <xsl:apply-templates
-                    select="category[contains($indexpage-column3, @id)]"/>
-              </td>
-            </tr>
-          </table>
-        </div> <!-- /page-content -->
+        <xsl:if test="not(@id)">
+            <xsl:apply-templates select="title" mode="print" />
+        </xsl:if>
+    </h2>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <!-- category body -->
+    <ul>
+        <xsl:apply-templates select="page" />
+    </ul>&lf;
+</div> <!-- /.section -->
+</xsl:template>
+<!-- /category -->
 
-        <xsl:call-template name="bottom"/>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+<!-- ==================================================================== -->
+<!-- search specification                                                 -->
+<!-- hidden fields are taken from the advanced search page                -->
+<!-- ==================================================================== -->
+<xsl:template name="search.spec">
+<xsl:attribute name="method">get</xsl:attribute>
+<xsl:attribute name="action">http://www.google.com/search</xsl:attribute>
+<xsl:if test="$ext-target">
+    <xsl:attribute name="target">_blank</xsl:attribute>
+</xsl:if>
 
-      </body>
-    </html>
-  </xsl:template>
-  
+<p>
+    <!-- search google: -->
+    <!-- with all of the words -->
+    <input type="text" value="" name="as_q" />
+    <xsl:text> </xsl:text>
+    <input type="submit" value="{$messages/message[@name='search']}" />
 
-  <!--                                                    -->
-  <!-- category/page                                      -->
-  <!--                                                    -->
-  <xsl:template match="indexpage/category/page">
-    <li>
-      <xsl:if test="@separate='yes'">
-        <xsl:attribute name="class">separate</xsl:attribute>
-      </xsl:if>
+    <!-- the specified number of results -->
+    <input type="hidden" name="num" value="10" />
 
-      <xsl:if test="@href">
-        <a href="{@href}">
-          <xsl:call-template name="helper.uri.fix">
-            <xsl:with-param name="uri" select="@href"/>
-          </xsl:call-template>
+    <!-- the current displayed language -->
+    <input type="hidden" name="hl" value="{$messages/@lang}" />
 
-          <xsl:value-of select="."/>
-        </a>
-      </xsl:if>
-      <xsl:if test="not(@href)">
-        <xsl:value-of select="."/>
-      </xsl:if>
-    </li>
+    <!-- the current document encoding for input (?) -->
+    <input type="hidden" name="ie" value="{$output-encoding}" />
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <!-- (submit the original button and name) -->
+    <input type="hidden" name="btnG" value="Google Search" />
 
-  </xsl:template>
-  <!-- /category/page -->
+    <!-- including the exact phrase "Apache 2.0" -->
+    <input type="hidden" value="Apache 2.0" name="as_epq" />
 
+    <!-- with at least one of the words (none) -->
+    <input type="hidden" value="" name="as_oq" />
 
-  <!--                                                            -->
-  <!-- Process a sitemap category                                 -->
-  <!--                                                            -->
-  <xsl:template match="indexpage/category">
+    <!-- without the phrase "List-Post" (to exclude the mail archives) -->
+    <input type="hidden" value="&quot;List-Post&quot;" name="as_eq" />
 
-    <div class="category">
+    <!-- return results written in (any) language -->
+    <input type="hidden" name="lr" value="" />
 
-      <!-- Section heading -->
-      <h2>
-        <xsl:if test="@id">
-          <a id="{@id}" name="{@id}">
-            <xsl:apply-templates select="title" mode="print"/>
-          </a>
-        </xsl:if>
+    <!-- and any format -->
+    <input type="hidden" name="as_ft" value="i" />
+    <input type="hidden" name="as_filetype" value="" />
 
-        <xsl:if test="not(@id)">
-          <xsl:apply-templates select="title" mode="print"/>
-        </xsl:if>
-      </h2>
+    <!-- updated anytime -->
+    <input type="hidden" name="as_qdr" value="all" />
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <!-- where the result appears anywhere in the document -->
+    <input type="hidden" name="as_occt" value="any" />
 
-      <!-- category body -->
-      <ul>
-        <xsl:apply-templates select="page"/>
-      </ul>
-      
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <!-- only from httpd.apache.org -->
+    <input type="hidden" name="as_dt" value="i" />
+    <input type="hidden" name="as_sitesearch" value="httpd.apache.org" />
 
-    </div> <!-- /.section -->
-  </xsl:template>
-  <!-- /category -->
+    <!-- turn off "safe" mode -->
+    <input type="hidden" name="safe" value="off" />
+</p>
+</xsl:template>
+<!-- /search.spec -->
 
 </xsl:stylesheet>
-
index e756f3aded6a901f630efb1081bc69f956169f4a..e46ede83f3f5f7c1f32a0fdc2245c674faad8525 100644 (file)
@@ -1,23 +1,73 @@
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                    -->
-  <!-- <manualpage>                                       -->
-  <!-- Process an entire document into an HTML page       -->
-  <!--                                                    -->
-  <xsl:template match="manualpage">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
+<!-- ==================================================================== -->
+<!-- <manualpage>                                                         -->
+<!-- Process an entire document into an HTML page                         -->
+<!-- ==================================================================== -->
+<xsl:template match="manualpage">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head" />&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="manual-page">
+    <body id="manual-page">
         <!-- unsqueeze if there's no sidebar -->
         <xsl:if test="not(count(section) > 1 or seealso)">
           <xsl:attribute name="class">no-sidebar</xsl:attribute>
         <xsl:call-template name="top"/>          
 
         <div id="page-content">
-          <div id="preamble">        
-            <h1>
-              <xsl:value-of select="title"/>
-            </h1>
+            <div id="preamble">        
+                <h1>
+                    <xsl:value-of select="title"/>
+                </h1>
 
-            <xsl:apply-templates select="summary"/>
-          </div> <!-- /preamble -->
+                <xsl:apply-templates select="summary"/>
+            </div>&lf; <!-- /#preamble -->
           
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:if test="(not($is-chm) and count(section) > 1) or seealso">
-            <div id="quickview">
-              <xsl:if test="not($is-chm) and count(section) > 1">
-                <ul id="toc">
-                  <xsl:apply-templates select="section" mode="index"/>
-                </ul>
-              </xsl:if>
-
-              <xsl:if test="seealso">
-                <h3>
-                  <xsl:value-of select="$messages/message[@name='seealso']"/>
-                </h3>
-                <ul class="seealso">
-                  <xsl:for-each select="seealso">
-                    <li>
-                      <xsl:apply-templates/>
-                    </li>
-                  </xsl:for-each>
-                </ul>
-              </xsl:if>
-
-           </div> <!-- /quickview -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          </xsl:if>
-
-          <xsl:apply-templates select="section"/>
-        </div> <!-- /page-content -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template>
+            <xsl:if test="(not($is-chm) and count(section) > 1) or seealso">
+                <div id="quickview">
+                    <xsl:if test="not($is-chm) and count(section) > 1">
+                        <ul id="toc">
+                        <xsl:apply-templates select="section" mode="index" />
+                        </ul>
+                    </xsl:if>
+
+                    <xsl:if test="seealso">
+                        <h3>
+                            <xsl:value-of
+                                select="$messages/message[@name='seealso']" />
+                        </h3>
+                        <ul class="seealso">
+                        <xsl:for-each select="seealso">
+                            <li>
+                                <xsl:apply-templates />
+                            </li>
+                        </xsl:for-each>
+                        </ul>
+                    </xsl:if>
+                </div>&lf; <!-- /#quickview -->
+            </xsl:if>
+
+            <xsl:apply-templates select="section" />
+        </div>&lf; <!-- /#page-content -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /manualpage -->
 
 </xsl:stylesheet>
index 91ea2c643d41ccfc8d196751175d423914d13aa3..2c34bd3cc318ac9ad7e6613638d64abdf43d3f12 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                              -->
-  <!-- Builds the moduleindex page  -->
-  <!--                              -->
-  <xsl:template match="moduleindex">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
+<!-- ==================================================================== -->
+<!-- <moduleindex>                                                        -->
+<!-- Builds the moduleindex page                                          -->
+<!-- ==================================================================== -->
+<xsl:template match="moduleindex">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head"/>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="module-index">
+    <body id="module-index">
         <xsl:call-template name="top"/>  
 
         <div id="page-content">
-        <div id="preamble">
-          <h1>
-            <xsl:value-of select="title"/>
-          </h1>
+            <div id="preamble">
+                <h1>
+                    <xsl:value-of select="title" />
+                </h1>&lf;
           
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:apply-templates select="summary" />
-        </div>
-        <!-- /preamble -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:if test="not($is-chm) or seealso">
-        <div id="quickview">
-          <xsl:if test="not($is-chm)">
-          <ul id="toc">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <li>
-              <img src="{$path}/images/down.gif" alt="" />
-              <xsl:text> </xsl:text>
-              <a href="#core">
-                <xsl:value-of select="$messages/message[@name='corefeatures']"/>
-              </a>
-            </li>
-
-            <li>
-              <img src="{$path}/images/down.gif" alt="" />
-              <xsl:text> </xsl:text>
-              <a href="#other">
-                <xsl:value-of select="$messages/message[@name='othermodules']"/>
-              </a>
-            </li>
-          </ul>
-          </xsl:if> <!-- chm -->
-
-          <xsl:if test="seealso">
-            <h3>
-              <xsl:value-of select="$messages/message[@name='seealso']"/>
-            </h3>
-            
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <ul class="seealso">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <xsl:for-each select="seealso">
-                <li>
-                  <xsl:apply-templates/>
-                </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              </xsl:for-each>
-            </ul>
-          </xsl:if>
-        </div> <!-- /quickview -->
-        </xsl:if> <!-- chm foo -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="toplink"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <div class="section">
-          <h2>
-            <a name="core" id="core">
-              <xsl:value-of select="$messages/message[@name='corefeatures']"/>
-            </a>
-          </h2>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <!--                                -->
-          <!-- put core and mpm_common on top -->
-          <!--                                -->
-          <dl>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <dt>
-              <a href="{document(modulefilelist/modulefile[starts-with(.,'core.xml')])/modulesynopsis/name}.html">
-                <xsl:value-of select="document(modulefilelist/modulefile[starts-with(.,'core.xml')])/modulesynopsis/name"/>
-              </a>
-            </dt>
-            <dd>
-              <xsl:apply-templates select="document(modulefilelist/modulefile[starts-with(.,'core.xml')])/modulesynopsis/description"/>
-            </dd>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <dt>
-              <a href="{document(modulefilelist/modulefile[starts-with(.,'mpm_common.xml')])/modulesynopsis/name}.html">
-                <xsl:value-of select="document(modulefilelist/modulefile[starts-with(.,'mpm_common.xml')])/modulesynopsis/name"/>
-              </a>
-            </dt>
-            <dd class="separate">
-              <xsl:apply-templates select="document(modulefilelist/modulefile[starts-with(.,'mpm_common.xml')])/modulesynopsis/description"/>
-            </dd>
-          <!-- /core, mpm_common -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <xsl:variable name="mpmmodules" select="document(modulefilelist/modulefile)/modulesynopsis[status='MPM' and name != 'mpm_common']"/>
-            <xsl:variable name="translist">
-              <xsl:call-template name="module-translist">
-                <xsl:with-param name="modules" select="$mpmmodules"/>
-              </xsl:call-template>
-            </xsl:variable>
-
-            <xsl:for-each select="$mpmmodules">
-            <xsl:sort select="substring-before(substring-after($translist, concat('- ', translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -')"/>
-
-              <dt>
-                <a href="{name}.html">
-                  <xsl:value-of select="name"/>
-                </a>
-              </dt>
-              <dd>
-                <xsl:apply-templates select="description"/>
-              </dd>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            </xsl:for-each>
-            <!-- /mpm -->
-          </dl>
-        </div>
-        <!-- /core section -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="toplink"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <div class="section">
-          <h2>
-            <a name="other" id="other">
-              <xsl:value-of select="$messages/message[@name='othermodules']"/>
-            </a>
-          </h2>
+                <xsl:apply-templates select="summary" />
+            </div>&lf; <!-- /#preamble -->
+
+            <xsl:if test="not($is-chm) or seealso">
+                <div id="quickview">
+                    <xsl:if test="not($is-chm)">
+                        <ul id="toc">&lf;
+                        <li>
+                            <img src="{$path}/images/down.gif" alt="" />
+                            <xsl:text> </xsl:text>
+                            <a href="#core">
+                                <xsl:value-of select="$messages/message
+                                                      [@name='corefeatures']" />
+                            </a>
+                        </li>
+                        <li>
+                            <img src="{$path}/images/down.gif" alt="" />
+                            <xsl:text> </xsl:text>
+                            <a href="#other">
+                                <xsl:value-of select="$messages/message
+                                                      [@name='othermodules']" />
+                            </a>
+                        </li>
+                        </ul>
+                    </xsl:if> <!-- !$is-chm -->
+
+                    <xsl:if test="seealso">
+                        <h3>
+                            <xsl:value-of select="$messages/message
+                                                  [@name='seealso']" />
+                        </h3>&lf;            
+
+                        <ul class="seealso">&lf;
+                        <xsl:for-each select="seealso">
+                            <li>
+                                <xsl:apply-templates />
+                            </li>&lf;
+                        </xsl:for-each>
+                        </ul>
+                    </xsl:if> <!-- /seealso -->
+                </div> <!-- /#quickview -->
+            </xsl:if>&lf; <!-- have sidebar -->
+
+            <xsl:call-template name="toplink" />&lf;
+
+            <div class="section">
+                <h2>
+                    <a name="core" id="core">
+                        <xsl:value-of select="$messages/message
+                                              [@name='corefeatures']" />
+                    </a>
+                </h2>&lf;
+
+                <!-- core -->
+                <dl>&lf;
+                <dt>
+                    <a href="{document(modulefilelist/modulefile
+                                       [starts-with(., 'core.xml')])
+                              /modulesynopsis/name}.html">
+                        <xsl:value-of
+                            select="document(modulefilelist/modulefile
+                                             [starts-with(., 'core.xml')])
+                                    /modulesynopsis/name" />
+                    </a>
+                </dt>
+                <dd>
+                    <xsl:apply-templates
+                        select="document(modulefilelist/modulefile
+                                         [starts-with(., 'core.xml')])
+                                /modulesynopsis/description" />
+                </dd>&lf;
+
+                <!-- mpm_common -->
+                <dt>
+                    <a href="{document(modulefilelist/modulefile
+                                       [starts-with(., 'mpm_common.xml')])
+                              /modulesynopsis/name}.html">
+                        <xsl:value-of
+                            select="document(modulefilelist/modulefile
+                                             [starts-with(., 'mpm_common.xml')])
+                                    /modulesynopsis/name" />
+                    </a>
+                </dt>
+                <dd class="separate">
+                    <xsl:apply-templates
+                        select="document(modulefilelist/modulefile
+                                         [starts-with(., 'mpm_common.xml')])
+                                /modulesynopsis/description" />
+                </dd>&lf;
+
+                <!-- and now the remaining MPMs -->
+                <xsl:variable name="mpmmodules"
+                    select="document(modulefilelist/modulefile)
+                            /modulesynopsis
+                                [status='MPM' and name != 'mpm_common']" />
+                <xsl:variable name="translist">
+                    <xsl:call-template name="module-translist">
+                        <xsl:with-param name="modules" select="$mpmmodules" />
+                    </xsl:call-template>
+                </xsl:variable>
+
+                <xsl:for-each select="$mpmmodules">
+                <xsl:sort select="substring-before(substring-after($translist,
+                    concat('- ', translate(normalize-space(name), $lowercase,
+                    $uppercase), ' ')), ' -')" />
+
+                    <dt>
+                        <a href="{name}.html">
+                            <xsl:value-of select="name" />
+                        </a>
+                    </dt>
+                    <dd>
+                        <xsl:apply-templates select="description" />
+                    </dd>&lf;
+                </xsl:for-each>
+                </dl>
+            </div>&lf; <!-- /core section -->
+
+            <xsl:call-template name="toplink" />&lf;
+
+            <div class="section">
+                <h2>
+                    <a name="other" id="other">
+                        <xsl:value-of select="$messages/message
+                                              [@name='othermodules']" />
+                    </a>
+                </h2>&lf;
             
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:variable name="modules" select="document(modulefilelist/modulefile)/modulesynopsis[status!='MPM' and status!='Core' and status!='Obsolete']"/>
-
-          <!-- collect the start letters -->
-          <xsl:variable name="start-letters">
-            <xsl:call-template name="module-startletters">
-              <xsl:with-param name="modules" select="$modules"/>
-            </xsl:call-template>
-          </xsl:variable>
-
-          <!-- letter line -->
-          <p class="letters">
-            <xsl:call-template name="letter-bar">
-              <xsl:with-param name="letters" select="$start-letters"/>
-              <xsl:with-param name="first" select="true()"/>
-            </xsl:call-template>
-          </p>
-          <!-- /letter line -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <dl>
-            <xsl:call-template name="mindex-of-letter">
-              <xsl:with-param name="letters-todo" select="$start-letters"/>
-              <xsl:with-param name="modules" select="$modules"/>
-            </xsl:call-template>
-          </dl>
-        </div>
-        <!-- /modules section -->
-        
-        </div>
-        <!-- /page-content -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template> 
-  <!-- /moduleindex -->
-
-
-  <!--                                                     -->
-  <!-- the working horse. builds list items of all         -->
-  <!-- modules starting with one letter                    -->
-  <!-- when done, it calls itself to catch the next letter -->
-  <!--                                                     -->
-  <xsl:template name="mindex-of-letter">
-  <xsl:param name="letters-todo"/>
-  <xsl:param name="modules"/>
-
-    <xsl:variable name="letter" select="substring($letters-todo,1,1)"/>
-    <xsl:variable name="translist">
-      <xsl:call-template name="module-translist">
-        <xsl:with-param name="modules" select="$modules"/>
-      </xsl:call-template>
-    </xsl:variable>
-
-    <xsl:for-each select="$modules[$letter=substring(substring-before(substring-after($translist, concat('- ', translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -'), 1, 1)]">
-    <xsl:sort select="substring-before(substring-after($translist, concat('- ', translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -')"/>
-
-      <dt>
-        <a href="{name}.html">
-          <xsl:if test="position()=1">
-            <xsl:attribute name="id"><xsl:value-of select="$letter"/></xsl:attribute>
-            <xsl:attribute name="name"><xsl:value-of select="$letter"/></xsl:attribute>
-          </xsl:if>
-
-          <xsl:value-of select="name"/>
-        </a>
-      </dt>
-      <dd>
-        <xsl:apply-templates select="description"/>
-      </dd>
-
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
-
-    </xsl:for-each> <!-- /directives -->
-
-    <!-- call next letter, if there is -->
-    <xsl:if test="string-length($letters-todo) &gt; 1">
-      <xsl:call-template name="mindex-of-letter">
-        <xsl:with-param name="letters-todo" select="substring($letters-todo,2)"/>
-        <xsl:with-param name="modules" select="$modules"/>
-      </xsl:call-template>
-    </xsl:if>
+                <xsl:variable name="modules"
+                    select="document(modulefilelist/modulefile)
+                            /modulesynopsis[status!='MPM' and
+                                            status!='Core']" />
+
+                <xsl:variable name="start-letters">
+                    <xsl:call-template name="module-startletters">
+                        <xsl:with-param name="modules" select="$modules" />
+                    </xsl:call-template>
+                </xsl:variable>
+
+                <p class="letters">
+                    <xsl:call-template name="letter-bar">
+                        <xsl:with-param name="letters" select="$start-letters"/>
+                        <xsl:with-param name="first" select="true()"/>
+                    </xsl:call-template>
+                </p>&lf;
+
+                <dl>
+                <xsl:call-template name="mindex-of-letter">
+                    <xsl:with-param name="letters-todo"
+                        select="$start-letters" />
+                    <xsl:with-param name="modules" select="$modules" />
+                </xsl:call-template>
+                </dl>
+            </div> <!-- /modules section -->
+        </div>&lf; <!-- /#page-content -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template> 
+<!-- /moduleindex -->
+
+
+<!-- ==================================================================== -->
+<!-- the working horse. builds list items of all modules starting with    -->
+<!-- one letter when done, it calls itself to catch the next letter       -->
+<!-- ==================================================================== -->
+<xsl:template name="mindex-of-letter">
+<xsl:param name="letters-todo"/>
+<xsl:param name="modules"/>
+
+<xsl:variable name="letter" select="substring($letters-todo, 1, 1)" />
+<xsl:variable name="translist">
+    <xsl:call-template name="module-translist">
+        <xsl:with-param name="modules" select="$modules" />
+    </xsl:call-template>
+</xsl:variable>
 
-  </xsl:template>
-  <!-- /mindex-of-letter -->
+<xsl:for-each
+    select="$modules[$letter=substring(substring-before(substring-after(
+        $translist, concat('- ', translate(normalize-space(name), $lowercase,
+        $uppercase), ' ')), ' -'), 1, 1)]">
+<xsl:sort
+    select="substring-before(substring-after($translist, concat('- ',
+        translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -')" />
 
+    <dt>
+        <a href="{name}.html">
+            <xsl:if test="position() = 1">
+                <xsl:attribute name="id">
+                    <xsl:value-of select="$letter" />
+                </xsl:attribute>
+                <xsl:attribute name="name">
+                    <xsl:value-of select="$letter" />
+                </xsl:attribute>
+            </xsl:if>
+
+            <xsl:value-of select="name" />
+        </a>
+    </dt>
+    <dd>
+        <xsl:apply-templates select="description" />
+    </dd>&lf;
+</xsl:for-each> <!-- /directives -->
+
+<!-- call next letter, if there is -->
+<xsl:if test="string-length($letters-todo) &gt; 1">
+    <xsl:call-template name="mindex-of-letter">
+        <xsl:with-param name="letters-todo"
+            select="substring($letters-todo, 2)" />
+        <xsl:with-param name="modules" select="$modules" />
+    </xsl:call-template>
+</xsl:if>
+</xsl:template>
+<!-- /mindex-of-letter -->
 
-  <!--                                                    -->
-  <!-- collect start letters of modules                   -->
-  <!--                                                    -->
-  <xsl:template name="module-startletters">
-  <xsl:param name="modules"/>
 
-    <xsl:variable name="translist">
-      <xsl:call-template name="module-translist">
-        <xsl:with-param name="modules" select="$modules"/>
-      </xsl:call-template>
-    </xsl:variable>
+<!-- ==================================================================== -->
+<!-- collect start letters of modules                                     -->
+<!-- ==================================================================== -->
+<xsl:template name="module-startletters">
+<xsl:param name="modules" />
 
-    <xsl:call-template name="_squeeze-letters">
-      <xsl:with-param name="lastletter" select="''"/>
+<xsl:variable name="translist">
+    <xsl:call-template name="module-translist">
+        <xsl:with-param name="modules" select="$modules" />
+    </xsl:call-template>
+</xsl:variable>
 
-      <xsl:with-param name="letters">
+<xsl:call-template name="_squeeze-letters">
+    <xsl:with-param name="lastletter" select="''" />
+    <xsl:with-param name="letters">
         <xsl:for-each select="$modules">
-        <xsl:sort select="substring-before(substring-after($translist, concat('- ', translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -')"/>
-          <xsl:value-of select="substring(substring-before(substring-after($translist, concat('- ', translate(normalize-space(name),$lowercase,$uppercase), ' ')), ' -'), 1, 1)"/>
+        <xsl:sort
+            select="substring-before(substring-after($translist, concat('- ',
+                translate(normalize-space(name), $lowercase, $uppercase), ' ')),
+                ' -')" />
+            <xsl:value-of
+                select="substring(substring-before(substring-after($translist,
+                    concat('- ', translate(normalize-space(name), $lowercase,
+                    $uppercase), ' ')), ' -'), 1, 1)" />
         </xsl:for-each>
-      </xsl:with-param>
-    </xsl:call-template>
-
-  </xsl:template>
-  <!-- /module-startletters -->
-
-
-  <!--                                                     -->
-  <!-- define module name translations for sorting         -->
-  <!--                                                     -->
-  <!-- it's a kind of a hack...                            -->
-  <!-- we build a string that contains the following data: -->
-  <!-- "- modulename sortname - modulename sortname - ..." -->
-  <!-- (with all data in uppercase)                        -->
-  <!--                                                     -->
-  <!-- So, the translation from modulename to sortname     -->
-  <!-- can be done with the expression below:              -->
-  <!--
+    </xsl:with-param>
+</xsl:call-template>
+</xsl:template>
+<!-- /module-startletters -->
+
+
+<!-- ==================================================================== -->
+<!-- define module name translations for sorting                          -->
+<!--                                                                      -->
+<!-- it's a kind of a hack...                                             -->
+<!-- we build a string that contains the following data:                  -->
+<!-- "- modulename sortname - modulename sortname - ..."                  -->
+<!-- (with all data in uppercase)                                         -->
+<!--                                                                      -->
+<!-- So, the translation from modulename to sortname can be done with the -->
+<!-- expression below:                                                    -->
+<!--
        substring-before(
            substring-after($translist, 
-                           concat('- ',
-                                  translate(modulename,
-                                            $lowercase,
-                                            $uppercase),
+                           concat('- ', translate(modulename,
+                                                  $lowercase, $uppercase),
                                   ' ')
                            ),
            ' -')
-                                                           -->
-  <!--                                                     -->
-  <xsl:template name="module-translist">
-  <xsl:param name="modules"/>
-
-    <xsl:text>-</xsl:text>
-    <xsl:for-each select="$modules">
-      <xsl:variable name="sname" select="translate(normalize-space(name),$lowercase,$uppercase)"/>
-
-      <xsl:text> </xsl:text>
-      <xsl:value-of select="$sname"/>
-      <xsl:text> </xsl:text>
-      <xsl:call-template name="module-translatename">
-        <xsl:with-param name="name" select="$sname"/>
-      </xsl:call-template>
-      <xsl:text> -</xsl:text>
-    </xsl:for-each>
-
-  </xsl:template>
-  <!-- /module-translist -->
-
-  </xsl:stylesheet>
+                                                                          -->
+<!-- ==================================================================== -->
+<xsl:template name="module-translist">
+<xsl:param name="modules" />
+
+<xsl:text>-</xsl:text>
+<xsl:for-each select="$modules">
+    <xsl:variable name="sname" select="translate(normalize-space(name),
+                                       $lowercase, $uppercase)" />
+
+    <xsl:text> </xsl:text>
+    <xsl:value-of select="$sname" />
+    <xsl:text> </xsl:text>
+    <xsl:call-template name="module-translatename">
+        <xsl:with-param name="name" select="$sname" />
+    </xsl:call-template>
+    <xsl:text> -</xsl:text>
+</xsl:for-each>
+</xsl:template>
+<!-- /module-translist -->
+
+</xsl:stylesheet>
index 8057f2ca828ea39049529dd12c6cffe196219b78..ba1bc817ccb03095075ad0b6e7738888b6d262a8 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                    -->
-  <!-- <quickreference>                                   -->
-  <!-- Builds the directive quickreference page           -->
-  <!--                                                    -->
-  <xsl:template match="quickreference">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
+<!-- ==================================================================== -->
+<!-- <quickreference>                                                     -->
+<!-- Builds the directive quickreference page                             -->
+<!-- ==================================================================== -->
+<xsl:template match="quickreference">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head"/>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="directive-index">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="top"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <body id="directive-index">&lf;
+        <xsl:call-template name="top"/>&lf;
 
         <div id="preamble">
-          <h1>
-            <xsl:value-of select="title"/>
-          </h1>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:apply-templates select="summary" />
-        </div> <!-- /preamble -->
+            <h1>
+                <xsl:value-of select="title" />
+            </h1>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
+            <xsl:apply-templates select="summary" />
+        </div>&lf; <!-- /#preamble -->
 
         <div id="directive-ref">
+            <xsl:variable name="directives"
+                select="document(modulefilelist/modulefile)
+                        /modulesynopsis/directivesynopsis[not(@location)]" />
 
-         <xsl:variable name="directives" select="document(modulefilelist/modulefile)/modulesynopsis[status!='Obsolete']/directivesynopsis[not(@location)]"/>
-
-          <!-- first collect the start letters -->
-          <xsl:variable name="start-letters">
-            <xsl:call-template name="directive-startletters">
-              <xsl:with-param name="directives" select="$directives"/>
-            </xsl:call-template>
-          </xsl:variable>
-
-          <table id="legend">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <tr>
-              <td class="letters"><span>
-                <xsl:call-template name="letter-bar">
-                  <xsl:with-param name="letters" select="$start-letters"/>
-                  <xsl:with-param name="first" select="true()"/>
+            <xsl:variable name="start-letters">
+                <xsl:call-template name="directive-startletters">
+                    <xsl:with-param name="directives" select="$directives" />
                 </xsl:call-template>
-              </span></td>
-
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
-
-              <td>
-                <xsl:apply-templates select="legend/table[position()=1]"/>
-              </td>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <td>
-                <xsl:apply-templates select="legend/table[position()=2]"/>
-              </td>
-            </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          </table>
-
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
-
-          <table class="qref">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            </xsl:variable>
 
+            <table id="legend">&lf;
+            <tr>
+                <td class="letters">
+                    <span>
+                        <xsl:call-template name="letter-bar">
+                            <xsl:with-param name="letters"
+                                select="$start-letters" />
+                            <xsl:with-param name="first" select="true()" />
+                        </xsl:call-template>
+                    </span>
+                </td>&lf;
+                <td>
+                    <xsl:apply-templates select="legend/table[position()=1]" />
+                </td>&lf;
+                <td>
+                    <xsl:apply-templates select="legend/table[position()=2]" />
+                </td>
+            </tr>&lf;
+            </table>&lf;
+
+            <table class="qref">&lf;
             <xsl:call-template name="reference-of-letter">
-              <xsl:with-param name="letters-todo" select="$start-letters"/>
-              <xsl:with-param name="offset" select="number(0)"/>
-              <xsl:with-param name="directives" select="$directives"/>
+                <xsl:with-param name="letters-todo" select="$start-letters" />
+                <xsl:with-param name="offset" select="number(0)" />
+                <xsl:with-param name="directives" select="$directives" />
             </xsl:call-template>
-          </table>
-
-        </div> <!-- /directive-ref -->
+            </table>
+        </div>&lf; <!-- /#directive-ref -->
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        <xsl:call-template name="bottom"/>&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /quickreference -->
 
-        <xsl:call-template name="bottom"/>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+<!-- ==================================================================== -->
+<!-- the working horse. builds rows of all directives starting with one   -->
+<!-- letter when done, it calls itself to catch the next letter           -->
+<!-- ==================================================================== -->
+<xsl:template name="reference-of-letter">
+<xsl:param name="letters-todo" />
+<xsl:param name="offset" />
+<xsl:param name="directives" />
 
-      </body>
-    </html>
-  </xsl:template>
+<xsl:variable name="letter" select="substring($letters-todo, 1, 1)" />
 
+<xsl:for-each
+    select="$directives[$letter=translate(substring(normalize-space(name), 1,1),
+                                          $lowercase,$uppercase)]">
+<xsl:sort select="name" />
 
-  <!--                                                     -->
-  <!-- the working horse. builds rows of all directives    -->
-  <!-- starting with one letter                            -->
-  <!-- when done, it calls itself to catch the next letter -->
-  <!--                                                     -->
-  <xsl:template name="reference-of-letter">
-  <xsl:param name="letters-todo"/>
-  <xsl:param name="offset"/>
-  <xsl:param name="directives"/>
-
-    <xsl:variable name="letter" select="substring($letters-todo,1,1)"/>
-
-    <xsl:for-each select="$directives[$letter=translate(substring(normalize-space(name),1,1),$lowercase,$uppercase)]">
-    <xsl:sort select="name"/>
-
-      <tr>
+    <tr>
         <xsl:if test="position() mod 2 = $offset">
-          <xsl:attribute name="class">odd</xsl:attribute>
+            <xsl:attribute name="class">odd</xsl:attribute>
         </xsl:if>
 
         <td>
-          <a href="{../name}.html#{translate(name,$uppercase,$lowercase)}">
-            <xsl:if test="position()=1">
-              <xsl:attribute name="id"><xsl:value-of select="$letter"/></xsl:attribute>
-              <xsl:attribute name="name"><xsl:value-of select="$letter"/></xsl:attribute>
-            </xsl:if>
-
-            <xsl:apply-templates select="syntax"/>
-          </a>
+            <a href="{../name}.html#{translate(name, $uppercase, $lowercase)}">
+                <xsl:if test="position()=1">
+                    <xsl:attribute name="id">
+                        <xsl:value-of select="$letter" />
+                    </xsl:attribute>
+                    <xsl:attribute name="name">
+                        <xsl:value-of select="$letter" />
+                    </xsl:attribute>
+                </xsl:if>
+
+                <xsl:apply-templates select="syntax" />
+            </a>
         </td>
-
         <td>
-          <xsl:variable name="default">
-            <xsl:choose>
-              <xsl:when test="count(default[count(br) &gt; 0]) &gt; 0">
-                <xsl:value-of select="default/child::node()[count(preceding-sibling::*) = 0]"/>
-              </xsl:when>
-              <xsl:otherwise>
-                <xsl:value-of select="default"/>
-              </xsl:otherwise>
-            </xsl:choose>
-          </xsl:variable>
-
-          <xsl:value-of select="substring(substring-after(concat($default,' '),name),1,20)"/>
-          <xsl:if test="string-length(substring-after(concat($default,' '),name)) &gt; 20
-                     or count(default[count(br) &gt; 0]) &gt; 0">
-            <xsl:text> +</xsl:text>
-          </xsl:if>
+            <!-- if the default value contains (at least) one <br />, -->
+            <!-- this probably means that a short explanation follows -->
+            <!-- the actual default value. We cut off the string      -->
+            <!-- after the <br /> so it will not be shown here.       -->
+            <!-- (add the + character instead)                        -->
+            <xsl:variable name="default">
+                <xsl:choose>
+                <xsl:when test="count(default[count(br) &gt; 0]) &gt; 0">
+                    <xsl:value-of
+                        select="default/child::node()
+                                [count(preceding-sibling::*) = 0]" />
+                </xsl:when>
+                <xsl:otherwise>
+                    <xsl:value-of select="default"/>
+                </xsl:otherwise>
+                </xsl:choose>
+            </xsl:variable>
+
+            <xsl:value-of select="substring(substring-after(concat($default,
+                                  ' '), name),1,20)" />
+            <xsl:if test="string-length(substring-after(concat($default, ' '),
+                              name)) &gt; 20
+                          or count(default[count(br) &gt; 0]) &gt; 0">
+                <xsl:text> +</xsl:text>
+            </xsl:if>
         </td>
-
         <td>
-          <xsl:if test="contextlist/context[normalize-space(.)='server config']">s</xsl:if>
-          <xsl:if test="contextlist/context[normalize-space(.)='virtual host']">v</xsl:if>
-          <xsl:if test="contextlist/context[normalize-space(.)='directory']">d</xsl:if>
-          <xsl:if test="contextlist/context[normalize-space(.)='.htaccess']">h</xsl:if>
+            <xsl:if test="contextlist/context
+                          [normalize-space(.)='server config']">s</xsl:if>
+            <xsl:if test="contextlist/context
+                          [normalize-space(.)='virtual host']">v</xsl:if>
+            <xsl:if test="contextlist/context
+                          [normalize-space(.)='directory']">d</xsl:if>
+            <xsl:if test="contextlist/context
+                          [normalize-space(.)='.htaccess']">h</xsl:if>
         </td>
-
         <td>
-          <xsl:choose>
+            <xsl:choose>
             <xsl:when test="../status='Base'">B</xsl:when>
             <xsl:when test="../status='MPM'">M</xsl:when>
             <xsl:when test="../status='Core'">C</xsl:when>
             <xsl:when test="../status='Extension'">E</xsl:when>
             <xsl:when test="../status='Experimental'">X</xsl:when>
-          </xsl:choose>
+            </xsl:choose>
         </td>
-      </tr>
-
-      <tr>
+    </tr>
+    <tr>
         <xsl:if test="position() mod 2 = $offset">
-          <xsl:attribute name="class">odd</xsl:attribute>
+            <xsl:attribute name="class">odd</xsl:attribute>
         </xsl:if>
 
-        <td colspan="4" class="descr"><xsl:choose>
-          <xsl:when test="string-length(normalize-space(description)) &gt; 0">
-            <xsl:apply-templates select="description"/>
-          </xsl:when>
-
-          <xsl:otherwise>
-            <xsl:text>-</xsl:text>
-          </xsl:otherwise></xsl:choose>
+        <td colspan="4" class="descr">
+            <xsl:choose>
+            <xsl:when test="string-length(normalize-space(description)) &gt; 0">
+                <xsl:apply-templates select="description"/>
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:text>-</xsl:text>
+            </xsl:otherwise>
+            </xsl:choose>
         </td>
-      </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert a line break -->
-
-    </xsl:for-each> <!-- /directives -->
-
-    <!-- call next letter, if there is -->
-    <xsl:if test="string-length($letters-todo) &gt; 1">
-      <xsl:call-template name="reference-of-letter">
-        <xsl:with-param name="letters-todo" select="substring($letters-todo,2)"/>
-        <xsl:with-param name="offset" select="(count($directives[$letter=translate(substring(normalize-space(name),1,1),$lowercase,$uppercase)]) + $offset) mod 2"/>
-        <xsl:with-param name="directives" select="$directives"/>
-      </xsl:call-template>
-    </xsl:if>
-
-  </xsl:template>
-  <!-- /reference-of-letter -->
+    </tr>&lf;
+</xsl:for-each> <!-- /directives -->
+
+<!-- call next letter, if there is -->
+<xsl:if test="string-length($letters-todo) &gt; 1">
+    <xsl:call-template name="reference-of-letter">
+        <xsl:with-param name="letters-todo"
+            select="substring($letters-todo, 2)" />
+        <xsl:with-param name="offset"
+            select="(count($directives[$letter=translate(substring(
+                    normalize-space(name), 1, 1), $lowercase, $uppercase)])
+                    + $offset) mod 2" />
+        <xsl:with-param name="directives" select="$directives" />
+    </xsl:call-template>
+</xsl:if>
+</xsl:template>
+<!-- /reference-of-letter -->
 
 </xsl:stylesheet>
index ac8f680dbcebd16869a9babd073a8405a504c04c..e9c1e918203eec3f95def44800ed006b047c7d3c 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!-- document() works relative to the xsl (!) file -->
-  <xsl:variable name="basedir" select="'../../'"/>
+<!-- If we use document() in the context of this xsl file, the contextual -->
+<!-- CWD is the xsl file containing directory. $basedir reflects the      -->
+<!-- manual root for that case.                                           -->
+<xsl:variable name="basedir" select="'../../'" />
 
+<!-- ==================================================================== -->
+<!-- <sitemap>                                                            -->
+<!-- Process an entire document into an HTML page                         -->
+<!-- ==================================================================== -->
+<xsl:template match="/sitemap">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head" />&lf;
 
-  <!--                                                    -->
-  <!-- <sitemap>                                          -->
-  <!-- Process an entire document into an HTML page       -->
-  <!--                                                    -->
-  <xsl:template match="/sitemap">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body id="manual-page">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="top"/>          
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+    <body id="manual-page">&lf;
+        <xsl:call-template name="top" />&lf;
 
         <div id="page-content">
-          <div id="preamble">        
-            <h1>
-              <xsl:value-of select="title"/>
-            </h1>
+            <div id="preamble">        
+                <h1>
+                    <xsl:value-of select="title" />
+                </h1>&lf;
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <xsl:apply-templates select="summary"/>
-          </div> <!-- /preamble -->
+                <xsl:apply-templates select="summary" />
+            </div>&lf; <!-- /#preamble -->
           
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:if test="(not($is-chm) and count(category) > 1) or seealso">
-            <div id="quickview">
-              <xsl:if test="not($is-chm) and count(category) > 1">
-
-                <!-- category index -->
-                <ul id="toc">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                  <xsl:for-each select="category">
-                    <xsl:if test="@id">
-                      <li>
-                        <img src="{$path}/images/down.gif" alt="" />
-                        <xsl:text> </xsl:text>
-                        <a href="#{@id}">
-                          <xsl:apply-templates select="title" mode="print"/>
-                        </a>
-                      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+            <xsl:if test="(not($is-chm) and count(category) &gt; 1) or seealso">
+                <div id="quickview">
+                    <xsl:if test="not($is-chm) and count(category) &gt; 1">
+                        <ul id="toc">&lf;
+                        <xsl:for-each select="category">
+                            <xsl:choose>
+                            <xsl:when test="@id">
+                                <li>
+                                    <img src="{$path}/images/down.gif" alt="" />
+                                    <xsl:text> </xsl:text>
+                                    <a href="#{@id}">
+                                        <xsl:apply-templates
+                                            select="title" mode="print" />
+                                    </a>
+                                </li>&lf;
+                            </xsl:when>
+                            <xsl:otherwise>
+                                <li>
+                                    <img src="{$path}/images/down.gif" alt="" />
+                                    <xsl:text> </xsl:text>
+                                    <xsl:apply-templates
+                                        select="title" mode="print" />
+                                </li>&lf;
+                            </xsl:otherwise>
+                            </xsl:choose>
+                        </xsl:for-each>
+                        </ul>&lf;
                     </xsl:if>
 
-                    <xsl:if test="not(@id)">
-                      <li>
-                        <img src="{$path}/images/down.gif" alt="" />
-                        <xsl:text> </xsl:text>
-                        <xsl:apply-templates select="title" mode="print"/>
-                      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+                    <xsl:if test="seealso">
+                        <h3>
+                            <xsl:value-of select="$messages/message
+                                                  [@name='seealso']" />
+                        </h3>&lf;
+
+                        <ul class="seealso">&lf;
+                        <xsl:for-each select="seealso">
+                            <li>
+                                <xsl:apply-templates />
+                            </li>&lf;
+                        </xsl:for-each>
+                        </ul>&lf;
                     </xsl:if>
-                  </xsl:for-each>
-                </ul>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              </xsl:if>
-
-              <xsl:if test="seealso">
-                <h3>
-                  <xsl:value-of select="$messages/message[@name='seealso']"/>
-                </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+                   </div>&lf; <!-- /#quickview -->
+            </xsl:if> <!-- have sidebar -->
 
-                <ul class="seealso">
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            <xsl:apply-templates select="category" />
+        </div>&lf; <!-- /#page-content -->
 
-                  <xsl:for-each select="seealso">
-                    <li>
-                      <xsl:apply-templates/>
-                    </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                  </xsl:for-each>
-                </ul>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              </xsl:if>
-
-           </div> <!-- /quickview -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          </xsl:if>
-
-          <xsl:apply-templates select="category"/>
-        </div> <!-- /page-content -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template>
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /sitemap -->
   
 
-  <!--                                                    -->
-  <!-- category/page                                      -->
-  <!--                                                    -->
-  <xsl:template match="sitemap/category/page">
-    <li>
-      <xsl:if test="@separate='yes'">
+<!-- ==================================================================== -->
+<!-- category/page                                                        -->
+<!-- ==================================================================== -->
+<xsl:template match="sitemap/category/page">
+<li>
+    <xsl:if test="@separate='yes'">
         <xsl:attribute name="class">separate</xsl:attribute>
-      </xsl:if>
+    </xsl:if>
 
-      <xsl:if test="@href">
+    <xsl:choose>
+    <xsl:when test="@href">
         <a href="{@href}">
-          <xsl:call-template name="helper.uri.fix">
-            <xsl:with-param name="uri" select="@href"/>
-          </xsl:call-template>
-          <xsl:value-of select="."/>
+            <xsl:call-template name="helper.uri.fix">
+                <xsl:with-param name="uri" select="@href" />
+            </xsl:call-template>
+            <xsl:value-of select="." />
         </a>
-      </xsl:if>
-      <xsl:if test="not(@href)">
-        <xsl:value-of select="."/>
-      </xsl:if>
-    </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-  </xsl:template>
-  <!-- /category/page -->
-
-
-  <!--                                                            -->
-  <!-- Process a sitemap category                                 -->
-  <!--                                                            -->
-  <xsl:template match="sitemap/category">
-
-    <xsl:call-template name="toplink"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    <div class="section">
-
-      <!-- Section heading -->
-      <h2>
-        <xsl:if test="@id">
-          <a id="{@id}" name="{@id}">
-            <xsl:apply-templates select="title" mode="print"/>
-          </a>
-        </xsl:if>
-
-        <xsl:if test="not(@id)">
-          <xsl:apply-templates select="title" mode="print"/>
-        </xsl:if>
-      </h2>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <!-- category body -->
-      <ul>
-        <xsl:apply-templates select="page"/>
-      </ul>
+    </xsl:when>
+    <xsl:otherwise>
+        <xsl:value-of select="." />
+    </xsl:otherwise>
+    </xsl:choose>
+</li>&lf;
+</xsl:template>
+<!-- /category/page -->
+
+
+<!-- ==================================================================== -->
+<!-- Process a sitemap category                                           -->
+<!-- ==================================================================== -->
+<xsl:template match="sitemap/category">
+<xsl:call-template name="toplink" />&lf;
+
+<div class="section">
+    <!-- Category title -->
+    <h2>
+        <xsl:choose>
+        <xsl:when test="@id">
+            <a id="{@id}" name="{@id}">
+                <xsl:apply-templates select="title" mode="print" />
+            </a>
+        </xsl:when>
+        <xsl:otherwise>
+            <xsl:apply-templates select="title" mode="print" />
+        </xsl:otherwise>
+        </xsl:choose>
+    </h2>&lf;
+
+    <!-- category body -->
+    <ul>
+        <xsl:apply-templates select="page" />
+    </ul>
       
-      <xsl:apply-templates select="modulefilelist"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-    </div> <!-- /.section -->
-  </xsl:template>
-  <!-- /category -->
-
-
-  <!--                                                    -->
-  <!-- category/modulefilelist                            -->
-  <!-- insert module list into sitemap                    -->
-  <!--                                                    -->
-  <xsl:template match="sitemap/category/modulefilelist">
-
-    <!-- create our own translation list first -->
-    <xsl:variable name="translist">
-      <xsl:text>-</xsl:text>
-
-      <xsl:for-each select="modulefile">
-        <xsl:variable name="current" select="document(concat($basedir,'mod/',.))/modulesynopsis" />
+    <!-- optional ... -->
+    <xsl:apply-templates select="modulefilelist" />&lf;
+</div> <!-- /.section -->
+</xsl:template>
+<!-- /category -->
+
+
+<!-- ==================================================================== -->
+<!-- category/modulefilelist                                              -->
+<!-- insert module list into sitemap                                      -->
+<!-- ==================================================================== -->
+<xsl:template match="sitemap/category/modulefilelist">
+<xsl:variable name="translist">
+    <xsl:text>-</xsl:text>
+    <xsl:for-each select="modulefile">
+        <xsl:variable name="current"
+            select="document(concat($basedir,'mod/',.))/modulesynopsis" />
    
         <xsl:text> </xsl:text>
-        <xsl:value-of select="$current/name"/>
+        <xsl:value-of select="$current/name" />
         <xsl:text> </xsl:text>
         <xsl:call-template name="module-translatename">
-          <xsl:with-param name="name" select="$current/name"/>
+            <xsl:with-param name="name" select="$current/name" />
         </xsl:call-template>
         <xsl:text> -</xsl:text>
-      </xsl:for-each>
-    </xsl:variable>
-
-    <ul>
-      <!-- put core and mpm_common on top -->
-      <li>
-        <a href="mod/core.html">
-          <xsl:value-of select="$messages/message[@name='apachecore']"/>
-        </a>
-      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <li>
-        <a href="mod/mpm_common.html">
-          <xsl:value-of select="$messages/message[@name='apachempmcommon']"/>
-        </a>
-      </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <xsl:for-each select="modulefile">
-      <xsl:sort select="substring-before(substring-after($translist, concat('- ', document(concat($basedir,'mod/',.))/modulesynopsis/name, ' ')), ' -')"/>
-
-        <xsl:variable name="current" select="document(concat($basedir,'mod/',.))/modulesynopsis" />
-
-        <xsl:if test="$current/status='MPM' and $current/name!='mpm_common'">
-          <xsl:variable name="name" select="substring-before(substring-after($translist, concat('- ', $current/name, ' ')), ' -')"/>
-
-          <li>
+    </xsl:for-each>
+</xsl:variable>
+
+<ul>
+<li>
+    <a href="mod/core.html">
+        <xsl:value-of select="$messages/message[@name='apachecore']" />
+    </a>
+</li>&lf;
+<li>
+    <a href="mod/mpm_common.html">
+        <xsl:value-of select="$messages/message[@name='apachempmcommon']" />
+    </a>
+</li>&lf;
+
+<xsl:for-each select="modulefile">
+<xsl:sort select="substring-before(substring-after($translist, concat('- ',
+    document(concat($basedir,'mod/',.))/modulesynopsis/name, ' ')), ' -')" />
+
+    <xsl:variable name="current" select="document(concat($basedir, 'mod/', .))
+                                         /modulesynopsis" />
+
+    <xsl:if test="$current/status='MPM' and $current/name!='mpm_common'">
+        <xsl:variable name="name" select="substring-before(substring-after(
+                        $translist, concat('- ', $current/name, ' ')), ' -')" />
+
+        <li>
             <a href="mod/{$current/name}.html">
-              <xsl:value-of select="$messages/message[@name='apachempm']"/>
-              <xsl:text> </xsl:text>
-              <xsl:value-of select="$name"/>
+                <xsl:value-of select="$messages/message[@name='apachempm']" />
+                <xsl:text> </xsl:text>
+                <xsl:value-of select="$name" />
             </a>
-          </li>
+        </li>&lf;
+    </xsl:if>
+</xsl:for-each>
+</ul>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+<ul>
+<xsl:for-each select="modulefile">
+<xsl:sort select="substring-before(substring-after($translist, concat('- ',
+    document(concat($basedir,'mod/',.))/modulesynopsis/name, ' ')), ' -')"/>
 
-        </xsl:if>
-      </xsl:for-each>
-    </ul>
-    <!-- /core, mpm -->
-
-    <ul>
-      <xsl:for-each select="modulefile">
-      <xsl:sort select="substring-before(substring-after($translist, concat('- ', document(concat($basedir,'mod/',.))/modulesynopsis/name, ' ')), ' -')"/>
-
-        <xsl:variable name="current" select="document(concat($basedir,'mod/',.))/modulesynopsis" />
+    <xsl:variable name="current" select="document(concat($basedir,'mod/',.))
+                                         /modulesynopsis" />
 
-        <xsl:if test="$current/status!='MPM' and $current/status!='Core' and $current/status!='Obsolete'">
-          <li>
+    <xsl:if test="$current/status!='MPM' and $current/status!='Core'">
+        <li>
             <a href="mod/{$current/name}.html">
-              <xsl:value-of select="$messages/message[@name='apachemodule']"/>
-              <xsl:text> </xsl:text>
-              <xsl:value-of select="$current/name"/>
+                <xsl:value-of select="$messages/message[@name='apachemodule']"/>
+                <xsl:text> </xsl:text>
+                <xsl:value-of select="$current/name"/>
             </a>
-          </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        </xsl:if>
-      </xsl:for-each>
-    </ul>
-    <!-- /other modules -->
-
-  </xsl:template>
-  <!-- /category/modulefilelist -->
+        </li>&lf;
+    </xsl:if>
+</xsl:for-each>
+</ul>
+</xsl:template>
+<!-- /category/modulefilelist -->
 
 </xsl:stylesheet>
index a760c1ed9cba2caead15c7ef657b0b6cbba1474a..b165583c932ed0b172afb7ccd70e71946c2301ae 100644 (file)
-<?xml version="1.0"?>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <!DOCTYPE xsl:stylesheet [
-    <!ENTITY nbsp SYSTEM "util/nbsp.xml">
+    <!ENTITY lf SYSTEM "util/lf.xml">
 ]>
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/1999/xhtml">
 
-  <!--                                                    -->
-  <!-- <modulesynopsis>                                   -->
-  <!-- Process an entire document into an HTML page       -->
-  <!--                                                    -->
-  <xsl:template match="modulesynopsis">
-    <html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
-      <xsl:call-template name="head"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <body>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="top"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <div id="page-content">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <div id="preamble">
-            <h1>
-              <xsl:choose>
-                <xsl:when test="status='Core'">
-                  <xsl:value-of select="$messages/message[@name='apachecore']"/>
-                </xsl:when>
-
-                <xsl:when test="name='mpm_common'">
-                  <xsl:value-of select="$messages/message[@name='apachempmcommon']"/>
-                </xsl:when>
-
-                <xsl:when test="status='MPM'">
-                  <xsl:value-of select="$messages/message[@name='apachempm']"/>
-                  <xsl:text> </xsl:text>
-                  <xsl:call-template name="module-translatename">
-                    <xsl:with-param name="name" select="name" />
-                  </xsl:call-template>
-                </xsl:when>
-
-                <xsl:otherwise>
-                  <xsl:if test="status='Obsolete'">
-                    <xsl:value-of select="$messages/message[@name='obsoleteapachemodule']"/>
-                  </xsl:if>
-                  <xsl:if test="status!='Obsolete'">
-                    <xsl:value-of select="$messages/message[@name='apachemodule']"/>
-                  </xsl:if>
-                  <xsl:text> </xsl:text>
-                  <xsl:value-of select="name"/>
-                </xsl:otherwise>
-              </xsl:choose>
-            </h1>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <!-- Description and module-headers -->
-            <table class="module">
-              <tr>
-                <th>
-                  <a href="module-dict.html#Description">
-                    <xsl:value-of select="$messages/message[@name='description']"/>
-                    <xsl:text>:</xsl:text>
-                  </a>
-                </th>
-                <td>
-                  <xsl:apply-templates select="description"/>
-                </td>
-              </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <tr>
-                <th>
-                  <a href="module-dict.html#Status">
-                    <xsl:value-of select="$messages/message[@name='status']"/>
-                    <xsl:text>:</xsl:text>
-                  </a>
-                </th>
-                <td>
-                  <xsl:value-of select="status"/>
-
-                  <xsl:if test="hint">
-                    <em>
-                      <xsl:text> (</xsl:text>
-                      <xsl:apply-templates select="hint"/>
-                      <xsl:text>)</xsl:text>
-                    </em>
-                    <br />
-                  </xsl:if>
-                </td>
-              </tr>
-
-              <xsl:if test="identifier">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <tr>
-                <th>
-                  <a href="module-dict.html#ModuleIdentifier">
-                    <xsl:value-of select="$messages/message[@name='moduleidentifier']"/>
-                    <xsl:text>:</xsl:text>
-                  </a>
-                </th>
-                <td>
-                  <xsl:value-of select="identifier"/>
-                </td>
-              </tr>
-              </xsl:if>
-
-              <xsl:if test="sourcefile">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <tr>
-                <th>
-                  <a href="module-dict.html#SourceFile">
-                    <xsl:value-of select="$messages/message[@name='sourcefile']"/>
-                    <xsl:text>:</xsl:text>
-                  </a>
-                </th>
-                <td>
-                  <xsl:value-of select="sourcefile"/>
-                </td>
-              </tr>
-              </xsl:if>
-
-              <xsl:if test="compatibility">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <tr>
-                <th>
-                  <a href="module-dict.html#Compatibility">
-                    <xsl:value-of select="$messages/message[@name='compatibility']"/>
-                    <xsl:text>:</xsl:text>
-                  </a>
-                </th>
-                <td>
-                  <xsl:apply-templates select="compatibility"/>
-                </td>
-              </tr>
-              </xsl:if>
-            </table>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <!-- Summary of module features/usage (1 to 3 paragraphs, optional) -->
-            <xsl:if test="summary">
-              <h3>
-                <xsl:value-of select="$messages/message[@name='summary']"/>
-              </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <xsl:apply-templates select="summary"/>
-            </xsl:if>
-          </div> <!-- /preamble -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <xsl:if test="not($is-chm) or seealso">
-          <div id="quickview">
-
-            <xsl:if test="not($is-chm)">
-            <!-- Index of directives, automatically generated from
-                 directivesynopsis/name -->
-            <h3 class="directives">
-              <xsl:value-of select="$messages/message[@name='directives']"/>
-            </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            <xsl:if test="directivesynopsis">
-              <ul id="toc">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                <xsl:for-each select="directivesynopsis">
-                  <xsl:sort select="name"/>
-                  <xsl:variable name="lowername" select="translate(name, $uppercase, $lowercase)"/>
-
-                  <xsl:if test="not(@location)">
-                    <li>
-                      <img src="{$path}/images/down.gif" alt="" />
-                      <xsl:text> </xsl:text>
-                      <a href="#{$lowername}">
-                        <xsl:if test="@type='section'">&lt;</xsl:if>
-                        <xsl:value-of select="name"/>
-                        <xsl:if test="@type='section'">&gt;</xsl:if>
-                      </a>
-                    </li>
-
-<xsl:text>
-</xsl:text> <!-- insert linebreak -->
-
-                  </xsl:if>
-
-                  <xsl:if test="@location">
-                    <xsl:variable name="lowerlocation" select="translate(@location, $uppercase, $lowercase)"/>
-
-                    <li>
-                      <img src="{$path}/images/right.gif" alt="" />
-                      <xsl:text> </xsl:text>
-                      <a href="{$lowerlocation}.html#{$lowername}">
-                        <xsl:if test="@type='section'">&lt;</xsl:if>
-                        <xsl:value-of select="name"/>
-                        <xsl:if test="@type='section'">&gt;</xsl:if>
-                      </a>
-                    </li>
-
-<xsl:text>
-</xsl:text> <!-- insert linebreak -->
-
-                  </xsl:if>
-                </xsl:for-each>
-              </ul> <!-- /toc -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            </xsl:if>
-
-            <xsl:if test="not(directivesynopsis)">
-              <p>
-                <xsl:value-of select="$messages/message[@name='nodirectives']"/>
-              </p>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-            </xsl:if>
-
-            <xsl:if test="section">
-              <h3>
-                <xsl:value-of select="$messages/message[@name='topics']"/>
-              </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <ul id="topics">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                <xsl:apply-templates select="section" mode="index"/>
-              </ul>
-            </xsl:if>
-            </xsl:if> <!-- /!is-chm -->
-
-            <xsl:if test="seealso">
-                 <h3>
-                  <xsl:value-of select="$messages/message[@name='seealso']"/>
-              </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-              <ul class="seealso">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                <xsl:for-each select="seealso">
-                  <li>
-                    <xsl:apply-templates/>
-                  </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-                </xsl:for-each>
-              </ul>
-            </xsl:if>
-
-          </div> <!-- /quickview -->
-          </xsl:if> <!-- !is-chm -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <!-- Sections of documentation about the module as a whole -->
-          <xsl:apply-templates select="section"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <!-- Directive documentation -->
-          <xsl:apply-templates select="directivesynopsis">
-            <xsl:sort select="name"/>
-          </xsl:apply-templates>
-
-        </div> <!-- /page-content -->
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-        <xsl:call-template name="bottom"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      </body>
-    </html>
-  </xsl:template>
-  <!-- /modulesynopsis -->
-
-
-  <!--                                                            -->
-  <!--    modulesynopsis/compatibility                            -->
-  <!--                                                            -->
-  <xsl:template match="modulesynopsis/compatibility">
-    <xsl:apply-templates />
-  </xsl:template>
-
-
-  <!--                                                            -->
-  <!--    directivesynopsis/compatibility                         -->
-  <!--                                                            -->
-  <xsl:template match="directivesynopsis/compatibility">
-    <xsl:apply-templates />
-  </xsl:template>
-
-
-  <!--                                                            -->
-  <!--    Directivesynopsis                                       -->
-  <!--                                                            -->
-  <xsl:template match="directivesynopsis">
-    <xsl:if test="not(@location)">
-
-      <xsl:call-template name="toplink"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-      <div class="directive-section">
-        <xsl:variable name="lowername" select="translate(name, $uppercase, $lowercase)"/>
-
-        <!-- Directive heading gets both mixed case and lowercase anchors,
-             and includes lt/gt only for "section" directives -->
+<!-- ==================================================================== -->
+<!-- <modulesynopsis>                                                     -->
+<!-- Process an entire document into an HTML page                         -->
+<!-- ==================================================================== -->
+<xsl:template match="modulesynopsis">
+<html xml:lang="{$messages/@lang}" lang="{$messages/@lang}">
+    <xsl:call-template name="head" />&lf;
+
+    <body>&lf;
+        <xsl:call-template name="top" />&lf;
+
+        <div id="page-content">&lf;
+            <div id="preamble">
+                <h1>
+                    <xsl:choose>
+                    <xsl:when test="status='Core'">
+                        <xsl:value-of select="$messages/message
+                                              [@name='apachecore']" />
+                    </xsl:when>
+                    <xsl:when test="name='mpm_common'">
+                        <xsl:value-of select="$messages/message
+                                              [@name='apachempmcommon']" />
+                    </xsl:when>
+                    <xsl:when test="status='MPM'">
+                        <xsl:value-of select="$messages/message
+                                              [@name='apachempm']" />
+                        <xsl:text> </xsl:text>
+                        <xsl:call-template name="module-translatename">
+                            <xsl:with-param name="name" select="name" />
+                        </xsl:call-template>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <xsl:value-of select="$messages/message
+                                              [@name='apachemodule']" />
+                        <xsl:text> </xsl:text>
+                        <xsl:value-of select="name" />
+                    </xsl:otherwise>
+                    </xsl:choose>
+                </h1>&lf;
+
+                <!-- Description and module-headers -->
+                <table class="module">
+                <tr>
+                    <th>
+                        <a href="module-dict.html#Description">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='description']" />
+                            <xsl:text>:</xsl:text>
+                        </a>
+                    </th>
+                    <td>
+                        <xsl:apply-templates select="description" />
+                    </td>
+                </tr>&lf;
+                <tr>
+                    <th>
+                        <a href="module-dict.html#Status">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='status']" />
+                            <xsl:text>:</xsl:text>
+                        </a>
+                    </th>
+                    <td>
+                        <xsl:value-of select="status" />
+                    </td>
+                </tr>
+
+                <xsl:if test="identifier">&lf;
+                <tr>
+                    <th>
+                        <a href="module-dict.html#ModuleIdentifier">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='moduleidentifier']" />
+                            <xsl:text>:</xsl:text>
+                        </a>
+                    </th>
+                    <td>
+                        <xsl:value-of select="identifier" />
+                    </td>
+                </tr>
+                </xsl:if>
+
+                <xsl:if test="sourcefile">&lf;
+                <tr>
+                    <th>
+                        <a href="module-dict.html#SourceFile">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='sourcefile']" />
+                            <xsl:text>:</xsl:text>
+                        </a>
+                    </th>
+                    <td>
+                        <xsl:value-of select="sourcefile" />
+                    </td>
+                </tr>
+                </xsl:if>
+
+                <xsl:if test="compatibility">&lf;
+                <tr>
+                    <th>
+                        <a href="module-dict.html#Compatibility">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='compatibility']" />
+                            <xsl:text>:</xsl:text>
+                        </a>
+                    </th>
+                    <td>
+                        <xsl:apply-templates select="compatibility" />
+                    </td>
+                </tr>
+                </xsl:if>
+                </table>&lf;
+
+                <!-- Summary of module features/usage (1 to 3 paragraphs, -->
+                <!-- optional)                                            -->
+                <xsl:if test="summary">
+                    <h3>
+                        <xsl:value-of select="$messages/message
+                                              [@name='summary']" />
+                    </h3>&lf;
+
+                    <xsl:apply-templates select="summary" />
+                </xsl:if>
+            </div>&lf; <!-- /#preamble -->
+
+            <xsl:if test="not($is-chm) or seealso">
+                <div id="quickview">
+                    <xsl:if test="not($is-chm)">
+                        <h3 class="directives">
+                            <xsl:value-of select="$messages/message
+                                                  [@name='directives']" />
+                        </h3>&lf;
+
+                        <xsl:choose>
+                        <xsl:when test="directivesynopsis">
+                            <ul id="toc">&lf;
+                            <xsl:for-each select="directivesynopsis">
+                            <xsl:sort select="name" />
+                                <xsl:variable name="lowername"
+                                    select="translate(name, $uppercase,
+                                                      $lowercase)" />
+
+                                <xsl:choose>
+                                <xsl:when test="not(@location)">
+                                    <li>
+                                        <img src="{$path}/images/down.gif"
+                                            alt="" />
+                                        <xsl:text> </xsl:text>
+                                        <a href="#{$lowername}">
+                                            <xsl:if test="@type='section'"
+                                                >&lt;</xsl:if>
+                                            <xsl:value-of select="name" />
+                                            <xsl:if test="@type='section'"
+                                                >&gt;</xsl:if>
+                                        </a>
+                                    </li>&lf;
+                                </xsl:when>
+                                <xsl:otherwise>
+                                    <xsl:variable name="lowerlocation"
+                                        select="translate(@location, $uppercase,
+                                                          $lowercase)" />
+                                    <li>
+                                        <img src="{$path}/images/right.gif"
+                                            alt="" />
+                                        <xsl:text> </xsl:text>
+                                        <a href="{$lowerlocation}.html#{
+                                                                   $lowername}">
+                                            <xsl:if test="@type='section'"
+                                                >&lt;</xsl:if>
+                                            <xsl:value-of select="name" />
+                                            <xsl:if test="@type='section'"
+                                                >&gt;</xsl:if>
+                                        </a>
+                                    </li>&lf;
+                                </xsl:otherwise>
+                                </xsl:choose>
+                            </xsl:for-each>
+                            </ul>&lf; <!-- /toc -->
+                        </xsl:when> <!-- have directives -->
+
+                        <xsl:otherwise>
+                            <p>
+                                <xsl:value-of select="$messages/message
+                                                      [@name='nodirectives']" />
+                            </p>&lf;
+                        </xsl:otherwise>
+                        </xsl:choose>
+
+                        <xsl:if test="section">
+                            <h3>
+                                <xsl:value-of select="$messages/message
+                                                      [@name='topics']" />
+                            </h3>&lf;
+
+                            <ul id="topics">&lf;
+                            <xsl:apply-templates
+                                select="section" mode="index" />
+                            </ul>
+                        </xsl:if>
+                    </xsl:if> <!-- /!is-chm -->
+
+                    <xsl:if test="seealso">
+                           <h3>
+                            <xsl:value-of select="$messages/message
+                                                  [@name='seealso']" />
+                        </h3>&lf;
+
+                        <ul class="seealso">&lf;
+                        <xsl:for-each select="seealso">
+                            <li>
+                                <xsl:apply-templates />
+                            </li>&lf;
+                        </xsl:for-each>
+                        </ul>
+                    </xsl:if>
+                </div> <!-- /#quickview -->
+            </xsl:if>&lf; <!-- have sidebar -->
+
+            <!-- Sections of documentation about the module as a whole -->
+            <xsl:apply-templates select="section" />&lf;
+
+            <!-- Directive documentation -->
+            <xsl:apply-templates select="directivesynopsis">
+                <xsl:sort select="name" />
+            </xsl:apply-templates>
+        </div>&lf; <!-- /#page-content -->
+
+        <xsl:call-template name="bottom" />&lf;
+    </body>
+</html>
+</xsl:template>
+<!-- /modulesynopsis -->
+
+
+<!-- ==================================================================== -->
+<!-- Directivesynopsis                                                    -->
+<!-- ==================================================================== -->
+<xsl:template match="directivesynopsis">
+<xsl:if test="not(@location)">
+    <xsl:call-template name="toplink" />&lf;
+
+    <div class="directive-section">
+        <xsl:variable name="lowername"
+            select="translate(name, $uppercase, $lowercase)" />
+
+        <!-- Directive heading gets both mixed case and lowercase      -->
+        <!-- anchors, and includes lt/gt only for "section" directives -->
         <h2>
-          <a id="{name}" name="{name}">
-            <xsl:if test="@type='section'">&lt;</xsl:if>
-            <xsl:value-of select="name"/>
-            <xsl:if test="@type='section'">&gt;</xsl:if>
-          </a>
-          <xsl:choose>
-            <xsl:when test="$messages/message[@name='directive']/@replace-space-with">
-              <xsl:value-of select="$messages/message[@name='directive']/@replace-space-with"/>
+            <a id="{name}" name="{name}">
+                <xsl:if test="@type='section'">&lt;</xsl:if>
+                <xsl:value-of select="name" />
+                <xsl:if test="@type='section'">&gt;</xsl:if>
+            </a>
+
+            <xsl:choose>
+            <xsl:when test="$messages/message
+                            [@name='directive']/@replace-space-with">
+                <xsl:value-of select="$messages/message
+                                      [@name='directive']/@replace-space-with"/>
             </xsl:when>
             <xsl:otherwise>
-              <xsl:text> </xsl:text>
+                <xsl:text> </xsl:text>
             </xsl:otherwise>
-          </xsl:choose>
-          <a id="{$lowername}" name="{$lowername}">
-            <xsl:value-of select="$messages/message[@name='directive']"/>
-          </a>
-        </h2>
+            </xsl:choose>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            <a id="{$lowername}" name="{$lowername}">
+                <xsl:value-of select="$messages/message[@name='directive']" />
+            </a>
+        </h2>&lf;
 
         <!-- Directive header -->
-        <table class="directive">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <tr>
+        <table class="directive">&lf;
+        <tr>
             <th>
-              <a href="directive-dict.html#Description">
-                <xsl:value-of select="$messages/message[@name='description']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Description">
+                    <xsl:value-of select="$messages/message
+                                          [@name='description']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:value-of select="description"/>
+                <xsl:value-of select="description" />
             </td>
-          </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        </tr>&lf;
 
-          <tr>
+        <tr>
             <th>
-              <a href="directive-dict.html#Syntax">
-                <xsl:value-of select="$messages/message[@name='syntax']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Syntax">
+                    <xsl:value-of select="$messages/message[@name='syntax']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <code>
-                <xsl:apply-templates select="syntax"/>
-              </code>
+                <code>
+                    <xsl:apply-templates select="syntax" />
+                </code>
             </td>
-          </tr>
-
-          <xsl:if test="default">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        </tr>
 
-          <tr>
+        <xsl:if test="default">&lf;
+        <tr>
             <th>
-              <a href="directive-dict.html#Default">
-                <xsl:value-of select="$messages/message[@name='default']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Default">
+                    <xsl:value-of select="$messages/message[@name='default']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <code>
-                <xsl:apply-templates select="default"/>
-              </code>
+                <code>
+                    <xsl:apply-templates select="default" />
+                </code>
             </td>
-          </tr>
-          </xsl:if>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        </tr>
+        </xsl:if>&lf;
 
-          <tr>
+        <tr>
             <th>
-              <a href="directive-dict.html#Context">
-                <xsl:value-of select="$messages/message[@name='context']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Context">
+                    <xsl:value-of select="$messages/message[@name='context']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:apply-templates select="contextlist"/>
+                <xsl:apply-templates select="contextlist" />
             </td>
-          </tr>
-
-          <xsl:if test="override">
+        </tr>
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <tr>
+        <xsl:if test="override">&lf;
+        <tr>
             <th>
-              <a href="directive-dict.html#Override">
-                <xsl:value-of select="$messages/message[@name='override']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Override">
+                    <xsl:value-of select="$messages/message[@name='override']"/>
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:value-of select="override"/>
+                <xsl:value-of select="override" />
             </td>
-          </tr>
-          </xsl:if>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        </tr>
+        </xsl:if>&lf;
 
-          <tr>
+        <tr>
             <th>
-              <a href="directive-dict.html#Status">
-                <xsl:value-of select="$messages/message[@name='status']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Status">
+                    <xsl:value-of select="$messages/message[@name='status']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:value-of select="../status"/>
+                <xsl:value-of select="../status" />
             </td>
-          </tr>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        </tr>&lf;
 
-          <tr>
+        <tr>
             <th>
-              <a href="directive-dict.html#Module">
-                <xsl:value-of select="$messages/message[@name='module']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Module">
+                    <xsl:value-of select="$messages/message[@name='module']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:if test="modulelist">
-                <xsl:apply-templates select="modulelist"/>
-              </xsl:if>
-
-              <xsl:if test="not(modulelist)">
-                <xsl:value-of select="../name"/>
-              </xsl:if>
+                <xsl:choose>
+                <xsl:when test="modulelist">
+                    <xsl:apply-templates select="modulelist" />
+                </xsl:when>
+                <xsl:otherwise>
+                    <xsl:value-of select="../name" />
+                </xsl:otherwise>
+                </xsl:choose>
             </td>
-          </tr>
+        </tr>
 
-          <xsl:if test="compatibility">
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <tr>
+        <xsl:if test="compatibility">&lf;
+        <tr>
             <th>
-              <a href="directive-dict.html#Compatibility">
-                <xsl:value-of select="$messages/message[@name='compatibility']"/>
-                <xsl:text>:</xsl:text>
-              </a>
+                <a href="directive-dict.html#Compatibility">
+                    <xsl:value-of select="$messages/message
+                                          [@name='compatibility']" />
+                    <xsl:text>:</xsl:text>
+                </a>
             </th>
             <td>
-              <xsl:apply-templates select="compatibility"/>
+                <xsl:apply-templates select="compatibility" />
             </td>
-          </tr>
-          </xsl:if>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+        </tr>
+        </xsl:if>&lf;
         </table>
 
-        <xsl:apply-templates select="usage"/>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+        <xsl:apply-templates select="usage" />&lf;
 
         <xsl:if test="seealso">
-          <h3>
-            <xsl:value-of select="$messages/message[@name='seealso']"/>
-          </h3>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
-          <ul>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+            <h3>
+                <xsl:value-of select="$messages/message[@name='seealso']" />
+            </h3>&lf;
 
+            <ul>&lf;
             <xsl:for-each select="seealso">
-              <li>
-                <xsl:apply-templates/>
-              </li>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+                <li>
+                    <xsl:apply-templates />
+                </li>&lf;
             </xsl:for-each>
-          </ul>
-
-<xsl:text>
-</xsl:text> <!-- insert line break -->
-
+            </ul>&lf;
         </xsl:if>
+    </div>&lf; <!-- /.directive-section -->
+</xsl:if>
+</xsl:template>
+<!-- /directivesynopsis -->
+
+
+<!-- ==================================================================== -->
+<!-- <contextlist>                                                        -->
+<!-- ==================================================================== -->
+<xsl:template match="contextlist">
+<xsl:apply-templates select="context" />
+</xsl:template>
+<!-- /contextlist -->
+
+
+<!-- ==================================================================== -->
+<!-- <context>                                                            -->
+<!-- Each entry is separeted with a comma                                 -->
+<!-- ==================================================================== -->
+<xsl:template match="context">
+<xsl:choose>
+<xsl:when test="normalize-space(.) = 'server config'">
+    <xsl:value-of select="$messages/message[@name='serverconfig']" />
+</xsl:when>
+<xsl:when test="normalize-space(.) = 'virtual host'">
+    <xsl:value-of select="$messages/message[@name='virtualhost']" />
+</xsl:when>
+<xsl:when test="normalize-space(.) = 'directory'">
+    <xsl:value-of select="$messages/message[@name='directory']" />
+</xsl:when>
+<xsl:when test="normalize-space(.) = '.htaccess'">
+    <xsl:value-of select="$messages/message[@name='htaccess']" />
+</xsl:when>
+<xsl:otherwise> <!-- error -->
+    <xsl:message terminate="yes">
+        unknown context: <xsl:value-of select="." />
+    </xsl:message>
+</xsl:otherwise>
+</xsl:choose>
+
+<xsl:if test="position() != last()">
+    <xsl:text>, </xsl:text>
+</xsl:if>
+</xsl:template>
+<!-- /context -->
+
+
+<!-- ==================================================================== -->
+<!-- <modulelist>                                                         -->
+<!-- ==================================================================== -->
+<xsl:template match="modulelist">
+<xsl:for-each select="module">
+    <xsl:call-template name="module" />
+    <xsl:if test="position() != last()">
+        <xsl:text>, </xsl:text>
+    </xsl:if>
+</xsl:for-each>
+</xsl:template>
+<!-- /modulelist -->
 
-      </div> <!-- /directive-section -->
 
-<xsl:text>
-</xsl:text> <!-- insert line break -->
+<!-- ==================================================================== -->
+<!-- modulesynopsis/compatibility                                         -->
+<!-- ==================================================================== -->
+<xsl:template match="modulesynopsis/compatibility">
+<xsl:apply-templates />
+</xsl:template>
 
-    </xsl:if>
-  </xsl:template>
-  <!-- /directivesynopsis -->
-
-
-  <!--                                                    -->
-  <!-- <contextlist>                                      -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="contextlist">
-    <xsl:apply-templates select="context"/>
-  </xsl:template>
-  <!-- /contextlist -->
-
-
-  <!--                                                    -->
-  <!-- <context>                                          -->
-  <!-- Each entry is separeted with a comma               -->
-  <!--                                                    -->
-  <xsl:template match="context">
-    <xsl:choose>
-      <xsl:when test="normalize-space(.) = 'server config'">
-        <xsl:value-of select="$messages/message[@name='serverconfig']"/>
-      </xsl:when>
-      <xsl:when test="normalize-space(.) = 'virtual host'">
-        <xsl:value-of select="$messages/message[@name='virtualhost']"/>
-      </xsl:when>
-      <xsl:when test="normalize-space(.) = 'directory'">
-        <xsl:value-of select="$messages/message[@name='directory']"/>
-      </xsl:when>
-      <xsl:when test="normalize-space(.) = '.htaccess'">
-        <xsl:value-of select="$messages/message[@name='htaccess']"/>
-      </xsl:when>
-
-      <xsl:otherwise> <!-- error -->
-        <xsl:message terminate="yes">
-          unknown context: <xsl:value-of select="." />
-        </xsl:message>
-      </xsl:otherwise>
-    </xsl:choose>
 
-    <xsl:if test="position() != last()">
-      <xsl:text>, </xsl:text>
-    </xsl:if>
-  </xsl:template>
-  <!-- /context -->
-
-
-  <!--                                                    -->
-  <!-- <modulelist>                                       -->
-  <!-- Passes through content                             -->
-  <!--                                                    -->
-  <xsl:template match="modulelist">
-    <xsl:for-each select="module">
-      <xsl:call-template name="module"/>
-      <xsl:if test="position() != last()">
-        <xsl:text>, </xsl:text>
-      </xsl:if>
-    </xsl:for-each>
-  </xsl:template>
-  <!-- /modulelist -->
+<!-- ==================================================================== -->
+<!-- directivesynopsis/compatibility                                      -->
+<!-- ==================================================================== -->
+<xsl:template match="directivesynopsis/compatibility">
+<xsl:apply-templates />
+</xsl:template>
 
 </xsl:stylesheet>
index 0e056aa9cddfee6b9b0160a61cee738f2d2545c7..380d3fe33d4d7e6c50ee9bc24ef727f36d09682f 100644 (file)
@@ -1,3 +1,3 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 
-<xsl:text>&#xA;</xsl:text>
\ No newline at end of file
+<xsl:text>&#xA;</xsl:text>
index 944993caf473aefb44219a66eb4686b5039ea096..9db5c413458a99191b9a975633091a98522306bd 100644 (file)
@@ -1,26 +1,78 @@
-<?xml version="1.0"?>
-<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp "&#160;"> ]>
+<?xml version="1.0"?><!--
+/* ====================================================================
+ * The Apache Software License, Version 1.1
+ *
+ * Copyright (c) 2002-2003 The Apache Software Foundation.  All rights
+ * reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * 3. The end-user documentation included with the redistribution,
+ *    if any, must include the following acknowledgment:
+ *       "This product includes software developed by the
+ *        Apache Software Foundation (http://www.apache.org/)."
+ *    Alternately, this acknowledgment may appear in the software itself,
+ *    if and wherever such third-party acknowledgments normally appear.
+ *
+ * 4. The names "Apache" and "Apache Software Foundation" must
+ *    not be used to endorse or promote products derived from this
+ *    software without prior written permission. For written
+ *    permission, please contact apache@apache.org.
+ *
+ * 5. Products derived from this software may not be called "Apache",
+ *    nor may "Apache" appear in their name, without prior written
+ *    permission of the Apache Software Foundation.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ * ====================================================================
+ *
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ */ -->
 <xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 
 <xsl:template name="module-translatename">
-<xsl:param name="name"/>
+<xsl:param name="name" />
 
-  <xsl:variable name="sname" select="translate($name,$lowercase,$uppercase)"/>
+<xsl:variable name="sname" select="translate($name, $lowercase, $uppercase)" />
 
-  <xsl:choose>
-    <xsl:when test="starts-with($sname,'MOD_') or starts-with($sname,'MPM_')">
-      <xsl:value-of select="substring($name, 5)"/>
-    </xsl:when>
+<xsl:choose>
+<xsl:when test="starts-with($sname, 'MOD_') or starts-with($sname, 'MPM_')">
+    <xsl:value-of select="substring($name, 5)" />
+</xsl:when>
 
-    <xsl:when test="starts-with($sname,'MPMT_')">
-      <xsl:value-of select="substring($name, 6)"/>
-    </xsl:when>
+<xsl:when test="starts-with($sname, 'MPMT_')">
+    <xsl:value-of select="substring($name, 6)" />
+</xsl:when>
 
-    <xsl:otherwise>
-      <xsl:value-of select="$name"/>
-    </xsl:otherwise>
-  </xsl:choose>
+<xsl:otherwise>
+    <xsl:value-of select="$name" />
+</xsl:otherwise>
+</xsl:choose>
 </xsl:template>
 <!-- /module-translatename -->
 
index e65a989e28189a49673387489b4e87a8763175c7..069d6cf503bec1771405648b3604d8d7894f2173 100644 (file)
@@ -1,3 +1,3 @@
 <?xml version="1.0" encoding="utf-8"?>
 
-<xsl:text disable-output-escaping="yes">&amp;nbsp;</xsl:text> 
+<xsl:text disable-output-escaping="yes">&amp;nbsp;</xsl:text>