Эх сурвалжийг харах

Merged r8226 from new-xsl branch.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@8228 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Manuel Canales Esparcia 18 жил өмнө
parent
commit
60a5a938e6
43 өөрчлөгдсөн 2255 нэмэгдсэн , 977 устгасан
  1. 2 2
      stylesheets/lfs-xsl/docbook-xsl-snapshot/VERSION
  2. 27 74
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/common.xsl
  3. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/de.xml
  4. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/en.xml
  5. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/es.xml
  6. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/fr.xml
  7. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/it.xml
  8. 20 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/labels.xsl
  9. 256 121
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/pi.xsl
  10. 47 58
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/refentry.xsl
  11. 5 5
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/table.xsl
  12. 39 53
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/utility.xsl
  13. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_cn.xml
  14. 7 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_tw.xml
  15. 28 13
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/component.xsl
  16. 13 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/lists.xsl
  17. 1 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/param.xsl
  18. 508 375
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pi.xsl
  19. 16 25
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/table.xsl
  20. 2 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/verbatim.xsl
  21. 11 0
      stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xref.xsl
  22. 28 34
      stylesheets/lfs-xsl/docbook-xsl-snapshot/lib/lib.xsl
  23. 5 5
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/admon.xsl
  24. 9 2
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/autotoc.xsl
  25. 1 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunk-code.xsl
  26. 116 18
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunk-common.xsl
  27. 2 2
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunktoc.xsl
  28. 8 6
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/component.xsl
  29. 7 5
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/division.xsl
  30. 3 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/formal.xsl
  31. 4 6
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/graphics.xsl
  32. 26 36
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/lists.xsl
  33. 2 3
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/math.xsl
  34. 3 3
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/param.xsl
  35. 976 47
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/pi.xsl
  36. 1 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/profile-chunk-code.xsl
  37. 6 24
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/qandaset.xsl
  38. 4 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/sections.xsl
  39. 5 4
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/synop.xsl
  40. 16 36
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/table.xsl
  41. 3 1
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/titlepage.xsl
  42. 6 9
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/verbatim.xsl
  43. 0 2
      stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/xref.xsl

+ 2 - 2
stylesheets/lfs-xsl/docbook-xsl-snapshot/VERSION

@@ -11,14 +11,14 @@
 <xsl:param name="PreviousRelease">1.72.0</xsl:param>
 <xsl:param name="PreviousReleaseRevision">6553</xsl:param>
 <xsl:param name="Revision">$Revision$</xsl:param>
-<xsl:param name="VersionFileURL">$URL: https://svn.sourceforge.net/svnroot/docbook/trunk/xsl/VERSION $</xsl:param>
+<xsl:param name="VersionFileURL">$URL: https://docbook.svn.sourceforge.net/svnroot/docbook/trunk/xsl/VERSION $</xsl:param>
 <xsl:param name="sf-relid" select="0"/>
 <xsl:strip-space elements="fm:*"/>
 
 <fm:project>
   <fm:Project>DocBook</fm:Project>
   <fm:Branch>XSL Stylesheets</fm:Branch>
-  <fm:Version>snapshot_6933</fm:Version>
+  <fm:Version>snapshot_7094</fm:Version>
 <!--
   <fm:License>MIT/X Consortium License</fm:License>
 -->

+ 27 - 74
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/common.xsl

@@ -14,38 +14,24 @@
      See ../README or http://docbook.sf.net/release/xsl/current/ for
      copyright and other information.
 
-     This file contains general templates common to both the HTML and FO
-     versions of the DocBook stylesheets.
      ******************************************************************** -->
 
-<doc:reference xmlns="">
-<referenceinfo>
-<releaseinfo role="meta">
-$Id$
-</releaseinfo>
-<author><surname>Walsh</surname>
-<firstname>Norman</firstname></author>
-<copyright><year>1999-2007</year>
-<holder>Norman Walsh</holder>
-</copyright>
-</referenceinfo>
-<title>Common Template Reference</title>
-
-<partintro id="partintro">
-<title>Introduction</title>
-
-<para>This is technical reference documentation for the “common”
-templates in the DocBook XSL Stylesheets. The common templates are
-“common” because they are shared across output formats (that is,
-they’re not output-format-dependent).</para>
-
-<para>This documentation is not intended to be <quote>user</quote>
-documentation.  It is provided for developers writing
-customization layers for the stylesheets, and for anyone who's
-interested in <quote>how it works</quote>.</para>
-
-</partintro>
-
+<doc:reference xmlns="" xml:id="base">
+  <info>
+    <title>Common » Base Template Reference</title>
+    <releaseinfo role="meta">
+      $Id$
+    </releaseinfo>
+  </info>
+  <!-- * yes, partintro is a valid child of a reference... -->
+  <partintro xml:id="partintro">
+    <title>Introduction</title>
+    <para>This is technical reference documentation for the “base”
+      set of common templates in the DocBook XSL Stylesheets.</para>
+    <para>This is not intended to be user documentation. It is
+      provided for developers writing customization layers for the
+      stylesheets.</para>
+  </partintro>
 </doc:reference>
 
 <!-- ==================================================================== -->
@@ -183,7 +169,7 @@ manvolnum
 
 <refdescription id="section.level-desc">
 <para>This template calculates the hierarchical level of a section.
-The element <sgmltag>sect1</sgmltag> is at level 1, <sgmltag>sect2</sgmltag> is
+The element <tag>sect1</tag> is at level 1, <tag>sect2</tag> is
 at level 2, etc.</para>
 
 <para>Recursive sections are calculated down to the fifth level.</para>
@@ -1324,45 +1310,24 @@ pointed to by the link is one of the elements listed in
 
 <!-- ====================================================================== -->
 <!-- OrderedList Numeration -->
-
-<xsl:template name="orderedlist-starting-number">
-  <xsl:param name="list" select="."/>
-
-  <!-- Need a neutral dbxxx -->
-  <xsl:variable name="pi-html-start">
-    <xsl:call-template name="pi-attribute">
-      <xsl:with-param name="pis"
-                      select="$list/processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'start'"/>
-    </xsl:call-template>
-  </xsl:variable>
-
-  <xsl:variable name="pi-fo-start">
-    <xsl:call-template name="pi-attribute">
-      <xsl:with-param name="pis"
-                      select="$list/processing-instruction('dbfo')"/>
-      <xsl:with-param name="attribute" select="'start'"/>
-    </xsl:call-template>
-  </xsl:variable>
-
+<xsl:template name="output-orderedlist-starting-number">
+  <xsl:param name="list"/>
+  <xsl:param name="pi-start"/>
   <xsl:choose>
     <xsl:when test="not($list/@continuation = 'continues')">
       <xsl:choose>
         <xsl:when test="@startingnumber">
           <xsl:value-of select="@startingnumber"/>
         </xsl:when>
-        <xsl:when test="$pi-html-start != ''">
-          <xsl:value-of select="$pi-html-start"/>
-        </xsl:when>
-        <xsl:when test="$pi-fo-start != ''">
-          <xsl:value-of select="$pi-fo-start"/>
+        <xsl:when test="$pi-start != ''">
+          <xsl:value-of select="$pi-start"/>
         </xsl:when>
         <xsl:otherwise>1</xsl:otherwise>
       </xsl:choose>
     </xsl:when>
     <xsl:otherwise>
       <xsl:variable name="prevlist"
-                    select="$list/preceding::orderedlist[1]"/>
+        select="$list/preceding::orderedlist[1]"/>
       <xsl:choose>
         <xsl:when test="count($prevlist) = 0">2</xsl:when>
         <xsl:otherwise>
@@ -1382,7 +1347,6 @@ pointed to by the link is one of the elements listed in
 <xsl:template name="orderedlist-item-number">
   <!-- context node must be a listitem in an orderedlist -->
   <xsl:param name="node" select="."/>
-
   <xsl:choose>
     <xsl:when test="$node/@override">
       <xsl:value-of select="$node/@override"/>
@@ -1903,33 +1867,28 @@ unchanged.</para>
     localized "choice" separator (for example, "and" or "or") before
     the final item in an inline list (though it could also be useful
     for generating choice separators for non-inline lists).</para>
-
     <para>It currently works by evaluating a processing instruction
     (PI) of the form &lt;?dbchoice&#xa0;choice="foo"?> :
-
     <itemizedlist>
       <listitem>
-        <simpara>if the value of the <sgmltag>choice</sgmltag>
+        <simpara>if the value of the <tag>choice</tag>
         pseudo-attribute is "and" or "or", returns a localized "and"
         or "or"</simpara>
       </listitem>
       <listitem>
         <simpara>otherwise returns the literal value of the
-        <sgmltag>choice</sgmltag> pseudo-attribute</simpara>
+        <tag>choice</tag> pseudo-attribute</simpara>
       </listitem>
     </itemizedlist>
-
     The latter is provided only as a temporary workaround because the
     locale files do not currently have translations for the word
     <wordasword>or</wordasword>. So if you want to generate a a
     logical "or" separator in French (for example), you currently need
     to do this:
-
     <literallayout>&lt;?dbchoice choice="ou"?></literallayout>
     </para>
-
     <warning>
-      <para>The <sgmltag>dbchoice</sgmltag> processing instruction is
+      <para>The <tag>dbchoice</tag> processing instruction is
       an unfortunate hack; support for it may disappear in the future
       (particularly if and when a more appropriate means for marking
       up "choice" lists becomes available in DocBook).</para>
@@ -1937,14 +1896,9 @@ unchanged.</para>
   </refdescription>
 </doc:template>
 <xsl:template name="select.choice.separator">
-  
   <xsl:variable name="choice">
-    <xsl:call-template name="pi-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbchoice')"/>
-      <xsl:with-param name="attribute">choice</xsl:with-param>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbchoice_choice"/>
   </xsl:variable>
-  
   <xsl:choose>
     <!-- if value of $choice is "and" or "or", translate to equivalent in -->
     <!-- current locale -->
@@ -2024,5 +1978,4 @@ engine does not support it.
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>
-
 </xsl:stylesheet>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/de.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="Zusammenfassung"/>
 <l:gentext key="abstract" text="Zusammenfassung"/>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/en.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="Abstract"/>
 <l:gentext key="abstract" text="Abstract"/>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/es.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="Resumen"/>
 <l:gentext key="abstract" text="resumen"/>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/fr.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="Résumé"/>
 <l:gentext key="abstract" text="Résumé"/>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/it.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="Estratto"/>
 <l:gentext key="abstract" text="Estratto"/>

+ 20 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/labels.xsl

@@ -193,12 +193,31 @@ element label.</para>
       <xsl:value-of select="@label"/>
     </xsl:when>
     <xsl:when test="string($reference.autolabel) != 0">
+      <xsl:if test="$component.label.includes.part.label != 0 and
+                      ancestor::part">
+        <xsl:variable name="part.label">
+          <xsl:apply-templates select="ancestor::part" 
+                               mode="label.markup"/>
+        </xsl:variable>
+        <xsl:if test="$part.label != ''">
+          <xsl:value-of select="$part.label"/>
+          <xsl:apply-templates select="ancestor::part" 
+                               mode="intralabel.punctuation"/>
+        </xsl:if>
+      </xsl:if>
       <xsl:variable name="format">
         <xsl:call-template name="autolabel.format">
           <xsl:with-param name="format" select="$reference.autolabel"/>
         </xsl:call-template>
       </xsl:variable>
-      <xsl:number from="book" count="reference" format="{$format}" level="any"/>
+      <xsl:choose>
+        <xsl:when test="$label.from.part != 0 and ancestor::part">
+          <xsl:number from="part" count="reference" format="{$format}" level="any"/>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:number from="book" count="reference" format="{$format}" level="any"/>
+        </xsl:otherwise>
+      </xsl:choose>
     </xsl:when>
   </xsl:choose>
 </xsl:template>

+ 256 - 121
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/pi.xsl

@@ -1,11 +1,13 @@
 <?xml version='1.0'?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-                xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
-                xmlns:date="http://exslt.org/dates-and-times"
-                xmlns:exsl="http://exslt.org/common"
-                exclude-result-prefixes="doc date exsl"
-                extension-element-prefixes="date exsl"
-                version='1.0'>
+<xsl:stylesheet
+  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+  xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
+  xmlns:date="http://exslt.org/dates-and-times"
+  xmlns:exsl="http://exslt.org/common"
+  xmlns:xlink="http://www.w3.org/1999/xlink"
+  exclude-result-prefixes="doc date exsl"
+  extension-element-prefixes="date exsl"
+  version='1.0'>
 
 <!-- ********************************************************************
      $Id$
@@ -15,17 +17,108 @@
      See ../README or http://docbook.sf.net/release/xsl/current/ for
      copyright and other information.
 
-     This file contains general templates for processing processing
-     instructions common to both the HTML and FO versions of the
-     DocBook stylesheets.
      ******************************************************************** -->
 
-<!-- Process PIs also on title pages -->
-<xsl:template match="processing-instruction()" mode="titlepage.mode">
-  <xsl:apply-templates select="."/>
+<doc:reference xmlns=""><info><title>Common Processing Instruction Reference</title>
+    <releaseinfo role="meta">
+      $Id$
+    </releaseinfo>
+  </info>
+  <partintro id="partintro">
+    <title>Introduction</title>
+    <para>This is generated reference documentation for all
+      user-specifiable processing instructions (PIs) in the
+      “common” part of the DocBook XSL stylesheets.
+      <note>
+        <para>You add these PIs at particular points in a document to
+          cause specific “exceptions” to formatting/output behavior. To
+          make global changes in formatting/output behavior across an
+          entire document, it’s better to do it by setting an
+          appropriate stylesheet parameter (if there is one).</para>
+      </note>
+    </para>
+  </partintro>
+</doc:reference>
+
+<!-- ==================================================================== -->
+<doc:pi name="dbchoice_choice" xmlns="">
+  <refpurpose>Generates a localized choice separator</refpurpose>
+  <refdescription id="select.choice.separator-desc">
+    <para>Use the <tag class="xmlpi">dbchoice choice</tag> PI to
+      generate an appropriate localized “choice” separator (for
+      example, <literal>and</literal> or <literal>or</literal>)
+      before the final item in an inline <tag>simplelist</tag></para>
+    <warning>
+      <para>This PI is a less-than-ideal hack; support for it may
+        disappear in the future (particularly if and when a more
+        appropriate means for marking up "choice" lists becomes
+        available in DocBook).</para>
+    </warning>
+  </refdescription>
+  <refsynopsisdiv>
+    <synopsis><tag class="xmlpi">dbchoice choice="and"|"or"|<replaceable>string</replaceable>"</tag></synopsis>
+  </refsynopsisdiv>
+  <refparameter>
+    <variablelist>
+      <varlistentry><term>choice="and"</term>
+        <listitem>
+          <para>generates a localized <literal>and</literal> separator</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry><term>choice="or"</term>
+        <listitem>
+          <para>generates a localized <literal>or</literal> separator</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry><term>choice="<replaceable>string</replaceable>"</term>
+        <listitem>
+          <para>generates a literal <replaceable>string</replaceable> separator</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refparameter>
+</doc:pi>
+<xsl:template name="pi.dbchoice_choice">
+  <xsl:param name="node" select="."/>
+  <xsl:call-template name="pi-attribute">
+    <xsl:with-param name="pis" select="$node/processing-instruction('dbchoice')"/>
+    <xsl:with-param name="attribute">choice</xsl:with-param>
+  </xsl:call-template>
 </xsl:template>
 
-<xsl:template match="processing-instruction('dbtimestamp')">
+<doc:pi name="dbtimestamp" xmlns="">
+  <refpurpose>Inserts a date timestamp</refpurpose>
+  <refdescription>
+    <para>Use the <tag>dbtimestamp</tag> PI at any point in a
+      source document to cause a date timestamp (a formatted
+      string representing the current date and time) to be
+      inserted in output of the document.</para>
+  </refdescription>
+  <refsynopsisdiv>
+    <synopsis><tag class="xmlpi">dbtimestamp format="<replaceable>formatstring</replaceable>" [padding="0"|"1"]</tag></synopsis>
+  </refsynopsisdiv>
+  <refparameter>
+    <variablelist>
+      <varlistentry><term>format="<replaceable>formatstring</replaceable>"</term>
+        <listitem>
+          <para>Specifies format in which the date and time are
+            output</para>
+        <note>
+          <para>For details of the content of the format string,
+            see <link role="tcg" xlink:href="Datetime.html"
+              >Date and time</link>.</para>
+        </note>
+        </listitem>
+      </varlistentry>
+      <varlistentry><term>padding="0"|"1"</term>
+        <listitem>
+          <para>Specifies padding behavior; if non-zero, padding is is added</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refparameter>
+</doc:pi>
+<xsl:template name="pi.dbtimestamp">
   <xsl:variable name="format">
     <xsl:variable name="pi-format">
       <xsl:call-template name="pi-attribute">
@@ -44,8 +137,7 @@
         </xsl:call-template>
       </xsl:otherwise>
     </xsl:choose>
-  </xsl:variable>  
-
+  </xsl:variable> 
   <xsl:variable name="padding">
     <xsl:variable name="pi-padding">
       <xsl:call-template name="pi-attribute">
@@ -60,7 +152,6 @@
       <xsl:otherwise>1</xsl:otherwise>
     </xsl:choose>
   </xsl:variable>
-
   <xsl:variable name="date">
     <xsl:choose>
       <xsl:when test="function-available('date:date-time')">
@@ -72,10 +163,9 @@
       </xsl:when>
     </xsl:choose>
   </xsl:variable>
-
   <xsl:choose>
     <xsl:when test="function-available('date:date-time') or
-                    function-available('date:dateTime')">
+      function-available('date:dateTime')">
       <xsl:call-template name="datetime.format">
         <xsl:with-param name="date" select="$date"/>
         <xsl:with-param name="format" select="$format"/>
@@ -88,124 +178,169 @@
       </xsl:message>
     </xsl:otherwise>
   </xsl:choose>
+</xsl:template>
+
+<doc:pi name="dbtex_delims" xmlns="">
+  <refpurpose>Generates delimiters around embedded TeX equations
+    in output</refpurpose>
+  <refdescription>
+    <para>Use the <tag class="xmlpi">dbtex delims</tag> PI as a
+      child of a <tag>textobject</tag> containing embedded TeX
+      markup, to cause that markup to be surrounded by
+      <literal>$</literal> delimiter characters in output.</para>
+  </refdescription>
+  <refsynopsisdiv>
+    <synopsis><tag class="xmlpi">dbtex delims="no"|"yes"</tag></synopsis>
+  </refsynopsisdiv>
+  <refparameter>
+    <variablelist>
+      <varlistentry><term>dbtex delims="no"|"yes"</term>
+        <listitem>
+          <para>Specifies whether delimiters are output</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refparameter>
+  <refsee role="params">
+    <para><parameter>tex.math.delims</parameter></para>
+  </refsee>
+  <refsee role="tcg">
+    <para><link role="tcg"
+        xlink:href="TexMath.html"
+        >DBTeXMath</link></para>
+  </refsee>
+</doc:pi>
+<xsl:template name="pi.dbtex_delims">
+  <xsl:param name="node" select="."/>
+  <xsl:call-template name="pi-attribute">
+    <xsl:with-param name="pis" select="$node/processing-instruction('dbtex')"/>
+    <xsl:with-param name="attribute" select="'delims'"/>
+  </xsl:call-template>
+</xsl:template>
+
+<!-- ==================================================================== -->
+
+<xsl:template match="processing-instruction()" mode="titlepage.mode">
+  <!-- * Als process PIs on title pages -->
+  <xsl:apply-templates select="."/>
+</xsl:template>
 
+<xsl:template match="processing-instruction('dbtimestamp')">
+  <xsl:call-template name="pi.dbtimestamp"/>
 </xsl:template>
 
 <xsl:template name="datetime.format">
   <xsl:param name="date"/>
   <xsl:param name="format"/>
   <xsl:param name="padding" select="1"/>
-  
   <xsl:if test="$format != ''">
     <!-- replace any whitespace in the format string with a non-breaking space -->
     <xsl:variable name="format-nbsp"
-		  select="translate($format,
-			  '&#x20;&#x9;&#xd;&#xa;',
-			  '&#xa0;&#xa0;&#xa0;&#xa0;')"/>
+      select="translate($format,
+      '&#x20;&#x9;&#xd;&#xa;',
+      '&#xa0;&#xa0;&#xa0;&#xa0;')"/>
     <xsl:variable name="tokenized-format-string">
       <xsl:call-template name="str.tokenize.keep.delimiters">
-	<xsl:with-param name="string" select="$format-nbsp"/>
-	<xsl:with-param name="delimiters" select="'&#xa0;,./-()[]:'"/>
+        <xsl:with-param name="string" select="$format-nbsp"/>
+        <xsl:with-param name="delimiters" select="'&#xa0;,./-()[]:'"/>
       </xsl:call-template>
     </xsl:variable>
-
-  <xsl:choose>
-    <!-- include extra test for Xalan quirk -->
-    <xsl:when test="function-available('exsl:node-set') or 
-		    contains(system-property('xsl:vendor'),'Apache Software Foundation')">
-      <!-- We must preserve context node in order to get valid language -->
-      <xsl:variable name="context" select="."/>
-      <xsl:for-each select="exsl:node-set($tokenized-format-string)/node()">
-        <xsl:variable name="token">
-          <xsl:value-of select="."/>
-        </xsl:variable>
-        <!-- Restore context node -->
-        <xsl:for-each select="$context">
-          <xsl:choose>
-            <xsl:when test="$token = 'a'">
-              <xsl:call-template name="gentext.template">
-                <xsl:with-param name="context" select="'datetime-abbrev'"/>
-                <xsl:with-param name="name" select="date:day-abbreviation($date)"/>
-              </xsl:call-template>
-            </xsl:when>
-            <xsl:when test="$token = 'A'">
-              <xsl:call-template name="gentext.template">
-                <xsl:with-param name="context" select="'datetime-full'"/>
-                <xsl:with-param name="name" select="date:day-name($date)"/>
-              </xsl:call-template>
-            </xsl:when>
-            <xsl:when test="$token = 'b'">
-              <xsl:call-template name="gentext.template">
-                <xsl:with-param name="context" select="'datetime-abbrev'"/>
-                <xsl:with-param name="name" select="date:month-abbreviation($date)"/>
-              </xsl:call-template>
-            </xsl:when>
-            <xsl:when test="$token = 'c'">
-              <xsl:value-of select="date:date($date)"/>
-              <xsl:text> </xsl:text>
-              <xsl:value-of select="date:time($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'B'">
-              <xsl:call-template name="gentext.template">
-                <xsl:with-param name="context" select="'datetime-full'"/>
-                <xsl:with-param name="name" select="date:month-name($date)"/>
-              </xsl:call-template>
-            </xsl:when>
-            <xsl:when test="$token = 'd'">
-              <xsl:if test="$padding = 1 and
-              string-length(date:day-in-month($date)) = 1">0</xsl:if>
-              <xsl:value-of select="date:day-in-month($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'H'">
-              <xsl:if test="$padding = 1 and string-length(date:hour-in-day($date)) = 1">0</xsl:if>
-              <xsl:value-of select="date:hour-in-day($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'j'">
-              <xsl:value-of select="date:day-in-year($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'm'">
-              <xsl:if test="$padding = 1 and string-length(date:month-in-year($date)) = 1">0</xsl:if>
-              <xsl:value-of select="date:month-in-year($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'M'">
-              <xsl:if test="string-length(date:minute-in-hour($date)) = 1">0</xsl:if>
-              <xsl:value-of select="date:minute-in-hour($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'S'">
-              <xsl:if test="string-length(date:second-in-minute($date)) = 1">0</xsl:if>
-              <xsl:value-of select="date:second-in-minute($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'U'">
-              <xsl:value-of select="date:week-in-year($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'w'">
-              <xsl:value-of select="date:day-in-week($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'x'">
-              <xsl:value-of select="date:date($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'X'">
-              <xsl:value-of select="date:time($date)"/>
-            </xsl:when>
-            <xsl:when test="$token = 'Y'">
-              <xsl:value-of select="date:year($date)"/>
-            </xsl:when>
-            <xsl:otherwise>
-              <xsl:value-of select="$token"/>
-            </xsl:otherwise>
-          </xsl:choose>
+    <xsl:choose>
+      <!-- include extra test for Xalan quirk -->
+      <xsl:when test="function-available('exsl:node-set') or 
+        contains(system-property('xsl:vendor'),'Apache Software Foundation')">
+        <!-- We must preserve context node in order to get valid language -->
+        <xsl:variable name="context" select="."/>
+        <xsl:for-each select="exsl:node-set($tokenized-format-string)/node()">
+          <xsl:variable name="token">
+            <xsl:value-of select="."/>
+          </xsl:variable>
+          <!-- Restore context node -->
+          <xsl:for-each select="$context">
+            <xsl:choose>
+              <xsl:when test="$token = 'a'">
+                <xsl:call-template name="gentext.template">
+                  <xsl:with-param name="context" select="'datetime-abbrev'"/>
+                  <xsl:with-param name="name" select="date:day-abbreviation($date)"/>
+                </xsl:call-template>
+              </xsl:when>
+              <xsl:when test="$token = 'A'">
+                <xsl:call-template name="gentext.template">
+                  <xsl:with-param name="context" select="'datetime-full'"/>
+                  <xsl:with-param name="name" select="date:day-name($date)"/>
+                </xsl:call-template>
+              </xsl:when>
+              <xsl:when test="$token = 'b'">
+                <xsl:call-template name="gentext.template">
+                  <xsl:with-param name="context" select="'datetime-abbrev'"/>
+                  <xsl:with-param name="name" select="date:month-abbreviation($date)"/>
+                </xsl:call-template>
+              </xsl:when>
+              <xsl:when test="$token = 'c'">
+                <xsl:value-of select="date:date($date)"/>
+                <xsl:text> </xsl:text>
+                <xsl:value-of select="date:time($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'B'">
+                <xsl:call-template name="gentext.template">
+                  <xsl:with-param name="context" select="'datetime-full'"/>
+                  <xsl:with-param name="name" select="date:month-name($date)"/>
+                </xsl:call-template>
+              </xsl:when>
+              <xsl:when test="$token = 'd'">
+                <xsl:if test="$padding = 1 and
+                  string-length(date:day-in-month($date)) = 1">0</xsl:if>
+                <xsl:value-of select="date:day-in-month($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'H'">
+                <xsl:if test="$padding = 1 and string-length(date:hour-in-day($date)) = 1">0</xsl:if>
+                <xsl:value-of select="date:hour-in-day($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'j'">
+                <xsl:value-of select="date:day-in-year($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'm'">
+                <xsl:if test="$padding = 1 and string-length(date:month-in-year($date)) = 1">0</xsl:if>
+                <xsl:value-of select="date:month-in-year($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'M'">
+                <xsl:if test="string-length(date:minute-in-hour($date)) = 1">0</xsl:if>
+                <xsl:value-of select="date:minute-in-hour($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'S'">
+                <xsl:if test="string-length(date:second-in-minute($date)) = 1">0</xsl:if>
+                <xsl:value-of select="date:second-in-minute($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'U'">
+                <xsl:value-of select="date:week-in-year($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'w'">
+                <xsl:value-of select="date:day-in-week($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'x'">
+                <xsl:value-of select="date:date($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'X'">
+                <xsl:value-of select="date:time($date)"/>
+              </xsl:when>
+              <xsl:when test="$token = 'Y'">
+                <xsl:value-of select="date:year($date)"/>
+              </xsl:when>
+              <xsl:otherwise>
+                <xsl:value-of select="$token"/>
+              </xsl:otherwise>
+            </xsl:choose>
+          </xsl:for-each>
         </xsl:for-each>
-      </xsl:for-each>
-    </xsl:when>
-    <xsl:otherwise>
-      <xsl:message>
-        Timestamp processing requires an XSLT processor with support
-        for the EXSLT node-set() function.
-      </xsl:message>
-    </xsl:otherwise>
-  </xsl:choose>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:message>
+          Timestamp processing requires an XSLT processor with support
+          for the EXSLT node-set() function.
+        </xsl:message>
+      </xsl:otherwise>
+    </xsl:choose>
   </xsl:if>
-
 </xsl:template>
 
 </xsl:stylesheet>

+ 47 - 58
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/refentry.xsl

@@ -16,36 +16,25 @@
      ******************************************************************** -->
 
 <!-- ==================================================================== -->
-<doc:reference xmlns="">
-  <referenceinfo>
+<doc:reference xmlns="" xml:id="refentry">
+  <info>
+    <title>Common » Refentry Metadata Template Reference</title>
     <releaseinfo role="meta">
       $Id$
     </releaseinfo>
-    <corpauthor>The DocBook Project</corpauthor>
-    <copyright>
-      <year>2005-2007</year>
-      <holder>The DocBook Project</holder>
-    </copyright>
-  </referenceinfo>
-  <title>Refentry Metadata-Gathering Template Reference</title>
-
-  <partintro id="partintro">
+  </info>
+  <!-- * yes, partintro is a valid child of a reference... -->
+  <partintro xml:id="partintro">
     <title>Introduction</title>
-
-    <para>This is technical reference documentation for the "refentry
-    metadata gathering" templates in the DocBook XSL Stylesheets.</para>
-
+    <para>This is technical reference documentation for the “refentry
+    metadata” templates in the DocBook XSL Stylesheets.</para>
     <para>This is not intended to be user documentation. It is provided
-    for developers writing customization layers for the
-    stylesheets.</para>
-
+    for developers writing customization layers for the stylesheets.</para>
     <note>
       <para>Currently, only the manpages stylesheets make use of these
       templates. They are, however, potentially useful elsewhere.</para>
     </note>
-
   </partintro>
-
 </doc:reference>
 
 <!-- ==================================================================== -->
@@ -56,27 +45,27 @@
     etc., is sometimes viewed in isolation from its greater "context". For
     example, users view Unix man pages as, well, individual pages, not as
     part of a "book" of some kind. Therefore, it is sometimes necessary to
-    embed "context" information in output for each <sgmltag>refentry</sgmltag>.</para>
+    embed "context" information in output for each <tag>refentry</tag>.</para>
 
     <para>However, one problem is that different users mark up that
     context information in different ways. Often (usually), the
     context information is not actually part of the content of the
-    <sgmltag>refentry</sgmltag> itself, but instead part of the content of a
-    parent or ancestor element to the the <sgmltag>refentry</sgmltag>. And
+    <tag>refentry</tag> itself, but instead part of the content of a
+    parent or ancestor element to the the <tag>refentry</tag>. And
     even then, DocBook provides a variety of elements that users might
     potentially use to mark up the same kind of information. One user
-    might use the <sgmltag>productnumber</sgmltag> element to mark up version
+    might use the <tag>productnumber</tag> element to mark up version
     information about a particular product, while another might use
-    the <sgmltag>releaseinfo</sgmltag> element.</para>
+    the <tag>releaseinfo</tag> element.</para>
 
     <para>Taking all that in mind, the
     <function>get.refentry.metadata</function> template tries to gather
-    metadata from a <sgmltag>refentry</sgmltag> element and its ancestor
+    metadata from a <tag>refentry</tag> element and its ancestor
     elements in an intelligent and user-configurable way. The basic
     mechanism used in the XPath expressions throughout this stylesheet
     is to select the relevant metadata from the *info element that is
-    closest to the actual <sgmltag>refentry</sgmltag>&#160;– either on the
-    <sgmltag>refentry</sgmltag> itself, or on its nearest ancestor.</para>
+    closest to the actual <tag>refentry</tag>&#160;– either on the
+    <tag>refentry</tag> itself, or on its nearest ancestor.</para>
 
     <note>
       <para>The <function>get.refentry.metadata</function>
@@ -91,13 +80,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -194,23 +183,23 @@
   <refdescription id="get.refentry.title-desc">
     <para>The <literal>man(7)</literal> man page describes this as "the
     title of the man page (e.g., <literal>MAN</literal>). This differs
-    from <sgmltag>refname</sgmltag> in that, if the <sgmltag>refentry</sgmltag> has a
-    <sgmltag>refentrytitle</sgmltag>, we use that as the <sgmltag>title</sgmltag>;
-    otherwise, we just use first <sgmltag>refname</sgmltag> in the first
-    <sgmltag>refnamediv</sgmltag> in the source.</para>
+    from <tag>refname</tag> in that, if the <tag>refentry</tag> has a
+    <tag>refentrytitle</tag>, we use that as the <tag>title</tag>;
+    otherwise, we just use first <tag>refname</tag> in the first
+    <tag>refnamediv</tag> in the source.</para>
   </refdescription>
   <refparameter id="get.refentry.title-params">
     <variablelist>
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
     </variablelist>
   </refparameter>
   <refreturn id="get.refentry.title-returns">
-  <para>Returns a <sgmltag>title</sgmltag> node.</para></refreturn>
+  <para>Returns a <tag>title</tag> node.</para></refreturn>
 </doc:template>
 <xsl:template name="get.refentry.title">
   <xsl:param name="refname"/>
@@ -232,8 +221,8 @@
   <refdescription id="get.refentry.section-desc">
     <para>The <literal>man(7)</literal> man page describes this as "the
     section number the man page should be placed in (e.g.,
-    <literal>7</literal>)". If we do not find a <sgmltag>manvolnum</sgmltag>
-    specified in the source, and we find that the <sgmltag>refentry</sgmltag> is
+    <literal>7</literal>)". If we do not find a <tag>manvolnum</tag>
+    specified in the source, and we find that the <tag>refentry</tag> is
     for a function, we use the section number <literal>3</literal>
     ["Library calls (functions within program libraries)"]; otherwise, we
     default to using <literal>1</literal> ["Executable programs or shell
@@ -244,7 +233,7 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
@@ -323,13 +312,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -342,7 +331,7 @@
     </variablelist>
   </refparameter>
   <refreturn id="get.refentry.date-returns">
-    <para>Returns a <sgmltag>date</sgmltag> node.</para>
+    <para>Returns a <tag>date</tag> node.</para>
   </refreturn>
 </doc:template>
 <xsl:template name="get.refentry.date">
@@ -495,13 +484,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -515,7 +504,7 @@
     </variablelist>
   </refparameter>
   <refreturn id="get.refentry.source-returns">
-    <para>Returns a <sgmltag>source</sgmltag> node.</para>
+    <para>Returns a <tag>source</tag> node.</para>
   </refreturn>
 </doc:template>
 <xsl:template name="get.refentry.source">
@@ -611,13 +600,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -795,13 +784,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -981,13 +970,13 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>
         <term>info</term>
         <listitem>
-          <para>A set of info nodes (from a <sgmltag>refentry</sgmltag>
+          <para>A set of info nodes (from a <tag>refentry</tag>
           element and its ancestors)</para>
         </listitem>
       </varlistentry>
@@ -1001,7 +990,7 @@
     </variablelist>
   </refparameter>
   <refreturn id="get.refentry.manual-returns">
-    <para>Returns a <sgmltag>manual</sgmltag> node.</para>
+    <para>Returns a <tag>manual</tag> node.</para>
   </refreturn>
 </doc:template>
 <xsl:template name="get.refentry.manual">
@@ -1140,25 +1129,25 @@
   <refpurpose>Gets user preferences for refentry metadata gathering</refpurpose>
   <refdescription id="get.refentry.metadata.prefs-desc">
     <para>The DocBook XSL stylesheets include several user-configurable
-    global stylesheet parameters for controlling <sgmltag>refentry</sgmltag>
+    global stylesheet parameters for controlling <tag>refentry</tag>
     metadata gathering. Those parameters are not read directly by the
-    other <sgmltag>refentry</sgmltag> metadata-gathering
+    other <tag>refentry</tag> metadata-gathering
     templates. Instead, they are read only by the
     <function>get.refentry.metadata.prefs</function> template,
     which assembles them into a structure that is then passed to
-    the other <sgmltag>refentry</sgmltag> metadata-gathering
+    the other <tag>refentry</tag> metadata-gathering
     templates.</para>
 
     <para>So the, <function>get.refentry.metadata.prefs</function>
     template is the only interface to collecting stylesheet parameters for
-    controlling <sgmltag>refentry</sgmltag> metadata gathering.</para>
+    controlling <tag>refentry</tag> metadata gathering.</para>
   </refdescription>
   <refparameter id="get.refentry.metadata.prefs-params">
     <para>There are no local parameters for this template; however, it
     does rely on a number of global parameters.</para>
   </refparameter>
   <refreturn id="get.refentry.metadata.prefs-returns">
-    <para>Returns a <sgmltag>manual</sgmltag> node.</para>
+    <para>Returns a <tag>manual</tag> node.</para>
   </refreturn>
 </doc:template>
 <xsl:template name="get.refentry.metadata.prefs">
@@ -1223,7 +1212,7 @@
       <varlistentry>
         <term>refname</term>
         <listitem>
-          <para>The first <sgmltag>refname</sgmltag> in the refentry</para>
+          <para>The first <tag>refname</tag> in the refentry</para>
         </listitem>
       </varlistentry>
       <varlistentry>

+ 5 - 5
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/table.xsl

@@ -124,17 +124,17 @@
 <doc:template name="entry.colnum" xmlns="">
 <refpurpose>Determine the column number in which a given entry occurs</refpurpose>
 <refdescription id="entry.colnum-desc">
-<para>If an <sgmltag>entry</sgmltag> has a
-<sgmltag class="attribute">colname</sgmltag> or
-<sgmltag class="attribute">namest</sgmltag> attribute, this template
+<para>If an <tag>entry</tag> has a
+<tag class="attribute">colname</tag> or
+<tag class="attribute">namest</tag> attribute, this template
 will determine the number of the column in which the entry should occur.
-For other <sgmltag>entry</sgmltag>s, nothing is returned.</para>
+For other <tag>entry</tag>s, nothing is returned.</para>
 </refdescription>
 <refparameter id="entry.colnum-params">
 <variablelist>
 <varlistentry><term>entry</term>
 <listitem>
-<para>The <sgmltag>entry</sgmltag>-element which is to be tested.</para>
+<para>The <tag>entry</tag>-element which is to be tested.</para>
 </listitem>
 </varlistentry>
 </variablelist>

+ 39 - 53
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/utility.xsl

@@ -3,6 +3,7 @@
                 xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
                 xmlns:dyn="http://exslt.org/dynamic"
                 xmlns:saxon="http://icl.com/saxon"
+                xmlns:xlink="http://www.w3.org/1999/xlink"
                 exclude-result-prefixes="doc dyn saxon"
                 version='1.0'>
 
@@ -15,42 +16,33 @@
      copyright and other information.
 
      ******************************************************************** -->
-
-<doc:reference xmlns="">
-<referenceinfo>
-<releaseinfo role="meta">
-$Id$
-</releaseinfo>
-<corpauthor>The DocBook Project Development Team</corpauthor>
-<copyright><year>2007</year>
-<holder>The DocBook Project</holder>
-</copyright>
-</referenceinfo>
-<title>Utility Template Reference</title>
-
-<partintro id="partintro">
-<title>Introduction</title>
-
-<para>This is technical reference documentation for the
-  miscellaneous utility templates in the DocBook XSL
-  Stylesheets.</para>
-
-<note>
-<para>These templates are defined in a separate file from the set
-  of “common” templates because some of the comment templates
-  reference DocBook XSL stylesheet parameters, requiring the
-  entire set of parameters to be imported/included in any
-  stylesheet that imports/includes the common templates.</para>
-<para>The utility templates don’t import or include any DocBook
-  XSL stylesheet parameters, so the utility templates can be used
-  without importing the whole set of parameters.</para>
-</note>
-
-<para>The following documentation is not intended to be
-  <quote>user</quote> documentation.  It is provided for developers
-  writing customization layers for the stylesheets, and for anyone
-  who's interested in <quote>how it works</quote>.</para>
-</partintro>
+<doc:reference xmlns="" xml:id="utility">
+  <info>
+    <title>Common » Utility Template Reference</title>
+    <releaseinfo role="meta">
+      $Id$
+    </releaseinfo>
+  </info>
+  <!-- * yes, partintro is a valid child of a reference... -->
+  <partintro xml:id="partintro">
+    <title>Introduction</title>
+    <para>This is technical reference documentation for the
+      miscellaneous utility templates in the DocBook XSL
+      Stylesheets.</para>
+    <note>
+      <para>These templates are defined in a separate file from the set
+        of “common” templates because some of the comment templates
+        reference DocBook XSL stylesheet parameters, requiring the
+        entire set of parameters to be imported/included in any
+        stylesheet that imports/includes the common templates.</para>
+      <para>The utility templates don’t import or include any DocBook
+        XSL stylesheet parameters, so the utility templates can be used
+        without importing the whole set of parameters.</para>
+    </note>
+    <para>This is not intended to be user documentation. It is
+      provided for developers writing customization layers for the
+      stylesheets.</para>
+  </partintro>
 </doc:reference>
 
 <!-- ====================================================================== -->
@@ -67,8 +59,7 @@ $Id$
 
   <refparameter id="log.message-params">
     <variablelist>
-      <varlistentry>
-        <term>level</term>
+      <varlistentry><term>level</term>
         <listitem>
           <para>Text to log/emit in the message-level field to
             indicate the message level
@@ -76,8 +67,7 @@ $Id$
           <literal>Warning</literal>)</para>
         </listitem>
       </varlistentry>
-      <varlistentry>
-        <term>source</term>
+      <varlistentry><term>source</term>
         <listitem>
           <para>Text to log/emit in the source field to identify the
             “source” to which the notification/warning relates.
@@ -96,15 +86,13 @@ $Id$
             XPath expression.</para>
         </listitem>
       </varlistentry>
-      <varlistentry>
-        <term>context-desc</term>
+      <varlistentry><term>context-desc</term>
         <listitem>
           <para>Text to log/emit in the context-description field to
             describe the context for the message.</para>
         </listitem>
       </varlistentry>
-      <varlistentry>
-        <term>context-desc-field-length</term>
+      <varlistentry><term>context-desc-field-length</term>
         <listitem>
           <para>Specifies length of the context-description field
             (in characters); default is 12</para>
@@ -126,14 +114,12 @@ $Id$
           parameter.</para>
         </listitem>
       </varlistentry>
-      <varlistentry>
-        <term>message</term>
+      <varlistentry><term>message</term>
         <listitem>
           <para>Text to log/emit in the actual message field</para>
         </listitem>
       </varlistentry>
-      <varlistentry>
-        <term>message-field-length</term>
+      <varlistentry><term>message-field-length</term>
         <listitem>
           <para>Specifies length of the message
             field (in characters); default is 45</para>
@@ -255,11 +241,11 @@ $Id$
       character).</para>
     <note>
       <para>This function began as a copy of Nate Austin's
-        <function>prepend-pad</function> function in the <ulink
-          url="http://www.dpawson.co.uk/xsl/sect2/padding.html" >Padding
-          Content</ulink> section of Dave Pawson's <ulink
-          url="http://www.dpawson.co.uk/xsl/index.html" >XSLT
-          FAQ</ulink>.</para>
+        <function>prepend-pad</function> function in the <link
+          xlink:href="http://www.dpawson.co.uk/xsl/sect2/padding.html" >Padding
+          Content</link> section of Dave Pawson's <link
+          xlink:href="http://www.dpawson.co.uk/xsl/index.html" >XSLT
+          FAQ</link>.</para>
     </note>
   </refdescription>
   <refreturn id="pad-string-returns">

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_cn.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="摘要"/>
 <l:gentext key="abstract" text="摘要"/>

+ 7 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_tw.xml

@@ -19,6 +19,13 @@
 <!-- copyright and other information. -->
 
 <!-- ******************************************************************** -->
+<!-- In these files, % with a letter is used for a placeholder: -->
+<!--   %t is the current element's title -->
+<!--   %s is the current element's subtitle (if applicable)-->
+<!--   %n is the current element's number label-->
+<!--   %p is the current element's page number (if applicable)-->
+<!-- ******************************************************************** -->
+
 
 <l:gentext key="Abstract" text="摘要"/>
 <l:gentext key="abstract" text="摘要"/>

+ 28 - 13
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/component.xsl

@@ -713,31 +713,46 @@
   </xsl:param>
   <xsl:param name="element" select="local-name(.)"/>
   <xsl:param name="gentext-key" select="local-name(.)"/>
+  <xsl:param name="language">
+    <xsl:call-template name="l10n.language"/>
+  </xsl:param>
+
+  <xsl:param name="format">
+    <xsl:call-template name="page.number.format">
+      <xsl:with-param name="master-reference" select="$master-reference"/>
+      <xsl:with-param name="element" select="$element"/>
+    </xsl:call-template>
+  </xsl:param>
+
+  <xsl:param name="initial-page-number">
+    <xsl:call-template name="initial.page.number">
+      <xsl:with-param name="master-reference" select="$master-reference"/>
+      <xsl:with-param name="element" select="$element"/>
+    </xsl:call-template>
+  </xsl:param>
+
+  <xsl:param name="force-page-count">
+    <xsl:call-template name="force.page.count">
+      <xsl:with-param name="master-reference" select="$master-reference"/>
+      <xsl:with-param name="element" select="$element"/>
+    </xsl:call-template>
+  </xsl:param>
 
   <fo:page-sequence hyphenate="{$hyphenate}"
                     master-reference="{$master-reference}">
     <xsl:attribute name="language">
-      <xsl:call-template name="l10n.language"/>
+      <xsl:value-of select="$language"/>
     </xsl:attribute>
     <xsl:attribute name="format">
-      <xsl:call-template name="page.number.format">
-        <xsl:with-param name="master-reference" select="$master-reference"/>
-        <xsl:with-param name="element" select="$element"/>
-      </xsl:call-template>
+      <xsl:value-of select="$format"/>
     </xsl:attribute>
 
     <xsl:attribute name="initial-page-number">
-      <xsl:call-template name="initial.page.number">
-        <xsl:with-param name="master-reference" select="$master-reference"/>
-        <xsl:with-param name="element" select="$element"/>
-      </xsl:call-template>
+      <xsl:value-of select="$initial-page-number"/>
     </xsl:attribute>
 
     <xsl:attribute name="force-page-count">
-      <xsl:call-template name="force.page.count">
-        <xsl:with-param name="master-reference" select="$master-reference"/>
-        <xsl:with-param name="element" select="$element"/>
-      </xsl:call-template>
+      <xsl:value-of select="$force-page-count"/>
     </xsl:attribute>
 
     <xsl:attribute name="hyphenation-character">

+ 13 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/lists.xsl

@@ -1271,5 +1271,17 @@
 
 <!-- ==================================================================== -->
 
-</xsl:stylesheet>
+<xsl:template name="orderedlist-starting-number">
+  <xsl:param name="list" select="."/>
+  <xsl:variable name="pi-start">
+    <xsl:call-template name="pi.dbfo_start">
+      <xsl:with-param name="node" select="$list"/>
+    </xsl:call-template>
+  </xsl:variable>
+  <xsl:call-template name="output-orderedlist-starting-number">
+    <xsl:with-param name="list" select="$list"/>
+    <xsl:with-param name="pi-start" select="$pi-start"/>
+  </xsl:call-template>
+</xsl:template>
 
+</xsl:stylesheet>

+ 1 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/param.xsl

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ASCII"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" xmlns="http://docbook.org/ns/docbook" exclude-result-prefixes="src" version="1.0">
 
 <!-- This file is generated from param.xweb -->
 

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 508 - 375
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pi.xsl


+ 16 - 25
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/table.xsl

@@ -22,31 +22,22 @@
 
      ******************************************************************** -->
 
-<doc:reference xmlns="">
-<referenceinfo>
-<releaseinfo role="meta">
-$Id$
-</releaseinfo>
-<author><surname>Walsh</surname>
-<firstname>Norman</firstname></author>
-<copyright><year>1999</year><year>2000</year>
-<holder>Norman Walsh</holder>
-</copyright>
-</referenceinfo>
-<title>Formatting Object Table Reference</title>
-
-<partintro id="partintro">
-<title>Introduction</title>
-
-<para>This is technical reference documentation for the FO
-table-processing templates in the DocBook XSL Stylesheets.</para>
-
-<para>This is not intended to be <quote>user</quote> documentation.
-It is provided for developers writing customization layers for the
-stylesheets, and for anyone who's interested in <quote>how it
-works</quote>.</para>
-
-</partintro>
+<doc:reference xmlns="" xml:id="table-templates">
+  <?dbhtml dir="fo"?>
+  <info>
+    <title>Formatting Object Table Reference</title>
+    <releaseinfo role="meta">
+      $Id$
+    </releaseinfo>
+  </info>
+  <partintro xml:id="partintro">
+    <title>Introduction</title>
+    <para>This is technical reference documentation for the FO
+      table-processing templates in the DocBook XSL Stylesheets.</para>
+    <para>This is not intended to be user documentation.  It is
+      provided for developers writing customization layers for the
+      stylesheets.</para>
+  </partintro>
 </doc:reference>
 
 <!-- ==================================================================== -->

+ 2 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/verbatim.xsl

@@ -350,7 +350,8 @@
 
 <xsl:template match="node()|@*" mode="hyphenate.verbatim">
   <xsl:copy>
-    <xsl:apply-templates select="node()|@*" mode="hyphenate.verbatim"/>
+    <xsl:copy-of select="@*"/>
+    <xsl:apply-templates mode="hyphenate.verbatim"/>
   </xsl:copy>
 </xsl:template>
 

+ 11 - 0
stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xref.xsl

@@ -718,6 +718,17 @@
   <xsl:apply-templates select="." mode="callout-bug"/>
 </xsl:template>
 
+<xsl:template match="area|areaset" mode="xref-to">
+  <xsl:param name="referrer"/>
+  <xsl:param name="xrefstyle"/>
+
+  <xsl:call-template name="callout-bug">
+    <xsl:with-param name="conum">
+      <xsl:apply-templates select="." mode="conumber"/>
+    </xsl:with-param>
+  </xsl:call-template>
+</xsl:template>
+
 <xsl:template match="book" mode="xref-to">
   <xsl:param name="referrer"/>
   <xsl:param name="xrefstyle"/>

+ 28 - 34
stylesheets/lfs-xsl/docbook-xsl-snapshot/lib/lib.xsl

@@ -1,5 +1,4 @@
-<?xml version="1.0"?>
-
+<?xml version="1.0" encoding="ASCII"?>
 <!-- ********************************************************************
      $Id$
      ********************************************************************
@@ -11,9 +10,7 @@
      This module implements DTD-independent functions
 
      ******************************************************************** -->
-
-
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:saxon="http://icl.com/saxon" xmlns:dyn="http://exslt.org/dynamic" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" exclude-result-prefixes="src" version="1.0">
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:saxon="http://icl.com/saxon" xmlns:ssb="http://sideshowbarker.net/ns" xmlns:dyn="http://exslt.org/dynamic" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" xmlns="http://docbook.org/ns/docbook" exclude-result-prefixes="src" version="1.0">
 
 <xsl:template name="dot.count">
   <!-- Returns the number of "." characters in a string -->
@@ -312,63 +309,60 @@
     </xsl:otherwise>
   </xsl:choose>
 </xsl:template>
-
   <xsl:template name="str.tokenize.keep.delimiters">
     <xsl:param name="string" select="''"/>
     <xsl:param name="delimiters" select="' '"/>
     <xsl:choose>
       <xsl:when test="not($string)"/>
       <xsl:when test="not($delimiters)">
-	<xsl:call-template name="str.tokenize.keep.delimiters-characters">
-	  <xsl:with-param name="string" select="$string"/>
-	</xsl:call-template>
+        <xsl:call-template name="str.tokenize.keep.delimiters-characters">
+          <xsl:with-param name="string" select="$string"/>
+        </xsl:call-template>
       </xsl:when>
       <xsl:otherwise>
-	<xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
-	  <xsl:with-param name="string" select="$string"/>
-	  <xsl:with-param name="delimiters" select="$delimiters"/>
-	</xsl:call-template>
+        <xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
+          <xsl:with-param name="string" select="$string"/>
+          <xsl:with-param name="delimiters" select="$delimiters"/>
+        </xsl:call-template>
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>
-  
   <xsl:template name="str.tokenize.keep.delimiters-characters">
     <xsl:param name="string"/>
     <xsl:if test="$string">
-      <token><xsl:value-of select="substring($string, 1, 1)"/></token>
+      <ssb:token><xsl:value-of select="substring($string, 1, 1)"/></ssb:token>
       <xsl:call-template name="str.tokenize.keep.delimiters-characters">
-	<xsl:with-param name="string" select="substring($string, 2)"/>
+        <xsl:with-param name="string" select="substring($string, 2)"/>
       </xsl:call-template>
     </xsl:if>
   </xsl:template>
-  
   <xsl:template name="str.tokenize.keep.delimiters-delimiters">
     <xsl:param name="string"/>
     <xsl:param name="delimiters"/>
     <xsl:variable name="delimiter" select="substring($delimiters, 1, 1)"/>
     <xsl:choose>
       <xsl:when test="not($delimiter)">
-	<token><xsl:value-of select="$string"/></token>
+        <ssb:token><xsl:value-of select="$string"/></ssb:token>
       </xsl:when>
       <xsl:when test="contains($string, $delimiter)">
-	<xsl:if test="not(starts-with($string, $delimiter))">
-	  <xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
-	    <xsl:with-param name="string" select="substring-before($string, $delimiter)"/>
-	    <xsl:with-param name="delimiters" select="substring($delimiters, 2)"/>
-	  </xsl:call-template>
-	</xsl:if>
-	<!-- output each delimiter -->
-	<xsl:value-of select="$delimiter"/>
-	<xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
-	  <xsl:with-param name="string" select="substring-after($string, $delimiter)"/>
-	  <xsl:with-param name="delimiters" select="$delimiters"/>
-	</xsl:call-template>
+        <xsl:if test="not(starts-with($string, $delimiter))">
+          <xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
+            <xsl:with-param name="string" select="substring-before($string, $delimiter)"/>
+            <xsl:with-param name="delimiters" select="substring($delimiters, 2)"/>
+          </xsl:call-template>
+        </xsl:if>
+        <!-- output each delimiter -->
+        <xsl:value-of select="$delimiter"/>
+        <xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
+          <xsl:with-param name="string" select="substring-after($string, $delimiter)"/>
+          <xsl:with-param name="delimiters" select="$delimiters"/>
+        </xsl:call-template>
       </xsl:when>
       <xsl:otherwise>
-	<xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
-	  <xsl:with-param name="string" select="$string"/>
-	  <xsl:with-param name="delimiters" select="substring($delimiters, 2)"/>
-	</xsl:call-template>
+        <xsl:call-template name="str.tokenize.keep.delimiters-delimiters">
+          <xsl:with-param name="string" select="$string"/>
+          <xsl:with-param name="delimiters" select="substring($delimiters, 2)"/>
+        </xsl:call-template>
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>

+ 5 - 5
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/admon.xsl

@@ -113,12 +113,12 @@
       </xsl:attribute>
     </xsl:if>
 
-    <h3 class="title">
-      <xsl:call-template name="anchor"/>
-      <xsl:if test="$admon.textlabel != 0 or title or info/title">
+    <xsl:if test="$admon.textlabel != 0 or title or info/title">
+      <h3 class="title">
+        <xsl:call-template name="anchor"/>
         <xsl:apply-templates select="." mode="object.title.markup"/>
-      </xsl:if>
-    </h3>
+      </h3>
+    </xsl:if>
 
     <xsl:apply-templates/>
   </div>

+ 9 - 2
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/autotoc.xsl

@@ -309,6 +309,7 @@
     <xsl:attribute name="href">
       <xsl:call-template name="href.target">
         <xsl:with-param name="context" select="$toc-context"/>
+        <xsl:with-param name="toc-context" select="$toc-context"/>
       </xsl:call-template>
     </xsl:attribute>
     
@@ -482,7 +483,9 @@
     <span class="refentrytitle">
       <a>
         <xsl:attribute name="href">
-          <xsl:call-template name="href.target"/>
+          <xsl:call-template name="href.target">
+            <xsl:with-param name="toc-context" select="$toc-context"/>
+          </xsl:call-template>
         </xsl:attribute>
         <xsl:copy-of select="$title"/>
       </a>
@@ -505,6 +508,7 @@
     <xsl:attribute name="href">
       <xsl:call-template name="href.target">
         <xsl:with-param name="object" select=".."/>
+        <xsl:with-param name="toc-context" select="$toc-context"/>
       </xsl:call-template>
     </xsl:attribute>
     <xsl:apply-templates/>
@@ -532,6 +536,7 @@
         <xsl:attribute name="href">
           <xsl:call-template name="href.target">
             <xsl:with-param name="object" select="$node"/>
+            <xsl:with-param name="toc-context" select="$toc-context"/>
           </xsl:call-template>
         </xsl:attribute>
         <xsl:apply-templates select="$node" mode="titleabbrev.markup"/>
@@ -602,7 +607,9 @@
     </xsl:if>
     <a>
       <xsl:attribute name="href">
-        <xsl:call-template name="href.target"/>
+        <xsl:call-template name="href.target">
+          <xsl:with-param name="toc-context" select="$toc-context"/>
+        </xsl:call-template>
       </xsl:attribute>
       <xsl:apply-templates select="." mode="titleabbrev.markup"/>
     </a>

+ 1 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunk-code.xsl

@@ -64,7 +64,7 @@
   </xsl:variable>
 
   <xsl:variable name="dbhtml-filename">
-    <xsl:call-template name="dbhtml-filename"/>
+    <xsl:call-template name="pi.dbhtml_filename"/>
   </xsl:variable>
 
   <xsl:variable name="filename">

+ 116 - 18
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunk-common.xsl

@@ -737,32 +737,98 @@
 <xsl:template name="href.target">
   <xsl:param name="context" select="."/>
   <xsl:param name="object" select="."/>
-
+  <xsl:param name="toc-context" select="."/>
+  <!-- * If $toc-context contains some node other than the current node, -->
+  <!-- * it means we're processing a link in a TOC. In that case, to -->
+  <!-- * ensure the link will work correctly, we need to take a look at -->
+  <!-- * where the file containing the TOC will get written, and where -->
+  <!-- * the file that's being linked to will get written. -->
+  <xsl:variable name="toc-output-dir">
+    <xsl:if test="not($toc-context = .)">
+      <!-- * Get the $toc-context node and all its ancestors, look down -->
+      <!-- * through them to find the last/closest node to the -->
+      <!-- * toc-context node that has a "dbhtml dir" PI, and get the -->
+      <!-- * directory name from that. That's the name of the directory -->
+      <!-- * to which the current toc output file will get written. -->
+      <xsl:call-template name="dbhtml-dir">
+        <xsl:with-param name="context" select="$toc-context/ancestor-or-self::*[processing-instruction('dbhtml')[contains(.,'dir')]][last()]"/>
+      </xsl:call-template>
+    </xsl:if>
+  </xsl:variable>
+  <xsl:variable name="linked-file-output-dir">
+    <xsl:if test="not($toc-context = .)">
+      <!-- * Get the current node and all its ancestors, look down -->
+      <!-- * through them to find the last/closest node to the current -->
+      <!-- * node that has a "dbhtml dir" PI, and get the directory name -->
+      <!-- * from that.  That's the name of the directory to which the -->
+      <!-- * file that's being linked to will get written. -->
+      <xsl:call-template name="dbhtml-dir">
+        <xsl:with-param name="context" select="ancestor-or-self::*[processing-instruction('dbhtml')[contains(.,'dir')]][last()]"/>
+      </xsl:call-template>
+    </xsl:if>
+  </xsl:variable>
   <xsl:variable name="href.to.uri">
     <xsl:call-template name="href.target.uri">
       <xsl:with-param name="object" select="$object"/>
     </xsl:call-template>
   </xsl:variable>
-
   <xsl:variable name="href.from.uri">
     <xsl:call-template name="href.target.uri">
       <xsl:with-param name="object" select="$context"/>
     </xsl:call-template>
   </xsl:variable>
-  
-  <!--
-  <xsl:message>href.to.uri: <xsl:value-of select="$href.to.uri"/></xsl:message>
-  <xsl:message>href.from.uri: <xsl:value-of select="$href.from.uri"/></xsl:message>
-  -->
-
+  <!-- * <xsl:message>toc-context: <xsl:value-of select="local-name($toc-context)"/></xsl:message> -->
+  <!-- * <xsl:message>node: <xsl:value-of select="local-name(.)"/></xsl:message> -->
+  <!-- * <xsl:message>context: <xsl:value-of select="local-name($context)"/></xsl:message> -->
+  <!-- * <xsl:message>object: <xsl:value-of select="local-name($object)"/></xsl:message> -->
+  <!-- * <xsl:message>toc-output-dir: <xsl:value-of select="$toc-output-dir"/></xsl:message> -->
+  <!-- * <xsl:message>linked-file-output-dir: <xsl:value-of select="$linked-file-output-dir"/></xsl:message> -->
+  <!-- * <xsl:message>href.to.uri: <xsl:value-of select="$href.to.uri"/></xsl:message> -->
+  <!-- * <xsl:message>href.from.uri: <xsl:value-of select="$href.from.uri"/></xsl:message> -->
   <xsl:variable name="href.to">
-    <xsl:call-template name="trim.common.uri.paths">
-      <xsl:with-param name="uriA" select="$href.to.uri"/>
-      <xsl:with-param name="uriB" select="$href.from.uri"/>
-      <xsl:with-param name="return" select="'A'"/>
-    </xsl:call-template>
+    <xsl:choose>
+      <!-- * 2007-07-19, MikeSmith: Added the following conditional to -->
+      <!-- * deal with a problem case for links in TOCs. It checks to see -->
+      <!-- * if the output dir that a TOC will get written to is -->
+      <!-- * different from the output dir of the file being linked to. -->
+      <!-- * If it is different, we do not call trim.common.uri.paths. -->
+      <!-- *  -->
+      <!-- * Reason why I added that conditional is: I ran into a bug for -->
+      <!-- * this case: -->
+      <!-- *  -->
+      <!-- * 1. we are chunking into separate dirs -->
+      <!-- *  -->
+      <!-- * 2. output for the TOC is written to current dir, but the file -->
+      <!-- *    being linked to is written to some subdir "foo". -->
+      <!-- *  -->
+      <!-- * For that case, links to that file in that TOC did not show -->
+      <!-- * the correct path - they omitted the "foo". -->
+      <!-- *  -->
+      <!-- * The cause of that problem was that the trim.common.uri.paths -->
+      <!-- * template[1] was being called under all conditions. But it's -->
+      <!-- * apparent that we don't want to call trim.common.uri.paths in -->
+      <!-- * the case where a linked file is being written to a different -->
+      <!-- * directory than the TOC that contains the link, because doing -->
+      <!-- * so will cause a necessary (not redundant) directory-name -->
+      <!-- * part of the link to get inadvertently trimmed, resulting in -->
+      <!-- * a broken link to that file. Thus, added the conditional. -->
+      <!-- *  -->
+      <!-- * [1] The purpose of the trim.common.uri.paths template is to -->
+      <!-- * prevent cases where, if we didn't call it, we end up with -->
+      <!-- * unnecessary, redundant directory names getting output; for -->
+      <!-- * example, "foo/foo/refname.html". -->
+      <xsl:when test="not($toc-output-dir = $linked-file-output-dir)">
+        <xsl:value-of select="$href.to.uri"/>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:call-template name="trim.common.uri.paths">
+          <xsl:with-param name="uriA" select="$href.to.uri"/>
+          <xsl:with-param name="uriB" select="$href.from.uri"/>
+          <xsl:with-param name="return" select="'A'"/>
+        </xsl:call-template>
+      </xsl:otherwise>
+    </xsl:choose>
   </xsl:variable>
-
   <xsl:variable name="href.from">
     <xsl:call-template name="trim.common.uri.paths">
       <xsl:with-param name="uriA" select="$href.to.uri"/>
@@ -770,13 +836,11 @@
       <xsl:with-param name="return" select="'B'"/>
     </xsl:call-template>
   </xsl:variable>
-
   <xsl:variable name="depth">
     <xsl:call-template name="count.uri.path.depth">
       <xsl:with-param name="filename" select="$href.from"/>
     </xsl:call-template>
   </xsl:variable>
-
   <xsl:variable name="href">
     <xsl:call-template name="copy-string">
       <xsl:with-param name="string" select="'../'"/>
@@ -784,7 +848,6 @@
     </xsl:call-template>
     <xsl:value-of select="$href.to"/>
   </xsl:variable>
-
   <!--
   <xsl:message>
     <xsl:text>In </xsl:text>
@@ -799,7 +862,6 @@
     <xsl:value-of select="$href"/>
   </xsl:message>
   -->
-
   <xsl:value-of select="$href"/>
 </xsl:template>
 
@@ -1444,4 +1506,40 @@
   </xsl:call-template>
 </xsl:template>
 
+<!-- ==================================================================== -->
+
+<xsl:template name="dbhtml-dir">
+  <xsl:param name="context" select="."/>
+  <!-- directories are now inherited from previous levels -->
+  <xsl:variable name="ppath">
+    <xsl:if test="$context/parent::*">
+      <xsl:call-template name="dbhtml-dir">
+        <xsl:with-param name="context" select="$context/parent::*"/>
+      </xsl:call-template>
+    </xsl:if>
+  </xsl:variable>
+  <xsl:variable name="path">
+    <xsl:call-template name="pi.dbhtml_dir">
+      <xsl:with-param name="node" select="$context"/>
+    </xsl:call-template>
+  </xsl:variable>
+  <xsl:choose>
+    <xsl:when test="$path = ''">
+      <xsl:if test="$ppath != ''">
+        <xsl:value-of select="$ppath"/>
+      </xsl:if>
+    </xsl:when>
+    <xsl:otherwise>
+      <xsl:if test="$ppath != ''">
+        <xsl:value-of select="$ppath"/>
+        <xsl:if test="substring($ppath, string-length($ppath), 1) != '/'">
+          <xsl:text>/</xsl:text>
+        </xsl:if>
+      </xsl:if>
+      <xsl:value-of select="$path"/>
+      <xsl:text>/</xsl:text>
+    </xsl:otherwise>
+  </xsl:choose>
+</xsl:template>
+
 </xsl:stylesheet>

+ 2 - 2
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/chunktoc.xsl

@@ -49,8 +49,8 @@
 
   <xsl:variable name="chunk" select="$chunks//tocentry[@linkend=$id]"/>
   <xsl:variable name="filename">
-    <xsl:call-template name="dbhtml-filename">
-      <xsl:with-param name="pis" select="$chunk/processing-instruction('dbhtml')"/>
+    <xsl:call-template name="pi.dbhtml_filename">
+      <xsl:with-param name="node" select="$chunk"/>
     </xsl:call-template>
   </xsl:variable>
 

+ 8 - 6
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/component.xsl

@@ -37,11 +37,13 @@
 
   <xsl:element name="h{$level+1}" namespace="http://www.w3.org/1999/xhtml">
     <xsl:attribute name="class">title</xsl:attribute>
-    <xsl:call-template name="anchor">
-      <xsl:with-param name="node" select="$node"/>
-      <xsl:with-param name="conditional" select="0"/>
-    </xsl:call-template>
-    <xsl:apply-templates select="$node" mode="object.title.markup">
+    <xsl:if test="$generate.id.attributes = 0">
+      <xsl:call-template name="anchor">
+	<xsl:with-param name="node" select="$node"/>
+	<xsl:with-param name="conditional" select="0"/>
+      </xsl:call-template>
+    </xsl:if>
+      <xsl:apply-templates select="$node" mode="object.title.markup">
       <xsl:with-param name="allow-anchors" select="1"/>
     </xsl:apply-templates>
   </xsl:element>
@@ -350,7 +352,7 @@
   </div>
 </xsl:template>
 
-<xsl:template match="article/title" mode="titlepage.mode" priority="2">
+<xsl:template match="article/title|article/articleinfo/title" mode="titlepage.mode" priority="2">
   <xsl:call-template name="component.title">
     <xsl:with-param name="node" select="ancestor::article[1]"/>
   </xsl:call-template>

+ 7 - 5
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/division.xsl

@@ -213,11 +213,13 @@
 
   <h1>
     <xsl:attribute name="class">title</xsl:attribute>
-    <xsl:call-template name="anchor">
-      <xsl:with-param name="node" select="$node"/>
-      <xsl:with-param name="conditional" select="0"/>
-    </xsl:call-template>
-    <xsl:apply-templates select="$node" mode="object.title.markup">
+    <xsl:if test="$generate.id.attributes = 0">
+      <xsl:call-template name="anchor">
+	<xsl:with-param name="node" select="$node"/>
+	<xsl:with-param name="conditional" select="0"/>
+      </xsl:call-template>
+    </xsl:if>
+      <xsl:apply-templates select="$node" mode="object.title.markup">
       <xsl:with-param name="allow-anchors" select="1"/>
     </xsl:apply-templates>
   </h1>

+ 3 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/formal.xsl

@@ -103,7 +103,9 @@
   <xsl:variable name="content">
     <div class="{$class}">
       <xsl:if test="$spacing.paras != 0"><p/></xsl:if>
-      <xsl:call-template name="anchor"/>
+      <xsl:call-template name="anchor">
+        <xsl:with-param name="conditional" select="0"/>
+      </xsl:call-template>
       <xsl:apply-templates/>
   
       <!-- HACK: This doesn't belong inside formal.object; it 

+ 4 - 6
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/graphics.xsl

@@ -221,9 +221,8 @@
   </xsl:variable>
 
   <xsl:variable name="img.src.path.pi">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="../processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'img.src.path'"/>
+    <xsl:call-template name="pi.dbhtml_img.src.path">
+      <xsl:with-param name="node" select=".."/>
     </xsl:call-template>
   </xsl:variable>
 
@@ -598,9 +597,8 @@ valign: <xsl:value-of select="@valign"/></xsl:message>
   </xsl:variable>
 
   <xsl:variable name="bgcolor">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="../processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'background-color'"/>
+    <xsl:call-template name="pi.dbhtml_background-color">
+      <xsl:with-param name="node" select=".."/>
     </xsl:call-template>
   </xsl:variable>
 

+ 26 - 36
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/lists.xsl

@@ -196,10 +196,7 @@
 
 <xsl:template match="variablelist">
   <xsl:variable name="pi-presentation">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'list-presentation'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_list-presentation"/>
   </xsl:variable>
 
   <xsl:variable name="presentation">
@@ -217,24 +214,15 @@
   </xsl:variable>
 
   <xsl:variable name="list-width">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'list-width'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_list-width"/>
   </xsl:variable>
 
   <xsl:variable name="term-width">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'term-width'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_term-width"/>
   </xsl:variable>
 
   <xsl:variable name="table-summary">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'table-summary'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_table-summary"/>
   </xsl:variable>
 
   <div>
@@ -334,16 +322,14 @@
 
 <xsl:template match="varlistentry" mode="varlist-table">
   <xsl:variable name="presentation">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="../processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'term-presentation'"/>
+    <xsl:call-template name="pi.dbhtml_term-presentation">
+      <xsl:with-param name="node" select=".."/>
     </xsl:call-template>
   </xsl:variable>
 
   <xsl:variable name="separator">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="../processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'term-separator'"/>
+    <xsl:call-template name="pi.dbhtml_term-separator">
+      <xsl:with-param name="node" select=".."/>
     </xsl:call-template>
   </xsl:variable>
   <tr>
@@ -462,10 +448,10 @@
   <xsl:variable name="localized-choice-separator">
     <xsl:choose>
       <xsl:when test="processing-instruction('dbchoice')">
-	<xsl:call-template name="select.choice.separator"/>
+        <xsl:call-template name="select.choice.separator"/>
       </xsl:when>
       <xsl:otherwise>
-	<!-- empty -->
+        <!-- empty -->
       </xsl:otherwise>
     </xsl:choose>
   </xsl:variable>
@@ -743,10 +729,7 @@
 
 <xsl:template match="segmentedlist">
   <xsl:variable name="presentation">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'list-presentation'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_list-presentation"/>
   </xsl:variable>
 
   <div>
@@ -814,17 +797,11 @@
 
 <xsl:template match="segmentedlist" mode="seglist-table">
   <xsl:variable name="table-summary">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'table-summary'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_table-summary"/>
   </xsl:variable>
 
   <xsl:variable name="list-width">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'list-width'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_list-width"/>
   </xsl:variable>
 
   <xsl:apply-templates select="title"/>
@@ -1052,4 +1029,17 @@
 
 <!-- ==================================================================== -->
 
+<xsl:template name="orderedlist-starting-number">
+  <xsl:param name="list" select="."/>
+  <xsl:variable name="pi-start">
+    <xsl:call-template name="pi.dbhtml_start">
+      <xsl:with-param name="node" select="$list"/>
+    </xsl:call-template>
+  </xsl:variable>
+  <xsl:call-template name="output-orderedlist-starting-number">
+    <xsl:with-param name="list" select="$list"/>
+    <xsl:with-param name="pi-start" select="$pi-start"/>
+  </xsl:call-template>
+</xsl:template>
+
 </xsl:stylesheet>

+ 2 - 3
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/math.xsl

@@ -267,9 +267,8 @@
 
 <xsl:template name="tex.math.output.delims">
   <xsl:variable name="pi.delims">
-    <xsl:call-template name="pi-attribute">
-      <xsl:with-param name="pis" select=".//processing-instruction('dbtex')"/>
-      <xsl:with-param name="attribute" select="'delims'"/>
+    <xsl:call-template name="pi.dbtex_delims">
+      <xsl:with-param name="node" select="descendant-or-self::*"/>
     </xsl:call-template>
   </xsl:variable>
   <xsl:variable name="result">

+ 3 - 3
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/param.xsl

@@ -2,7 +2,7 @@
 <!--This file was created automatically by html2xhtml-->
 <!--from the HTML stylesheets.-->
 <!-- This file is generated from param.xweb -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml" version="1.0">
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:src="http://nwalsh.com/xmlns/litprog/fragment" xmlns="http://docbook.org/ns/docbook" exclude-result-prefixes="src" version="1.0">
 
 <!-- ********************************************************************
      $Id$
@@ -65,7 +65,7 @@ div.annotation-close { position: absolute;
                        right: 2px;
                      }
 </xsl:param>
-<xsl:param name="annotation.js" select="'http://docbook.sourceforge.net/release/script/AnchorPosition.js             http://docbook.sourceforge.net/release/script/PopupWindow.js'"/>
+<xsl:param name="annotation.js" select="'http://docbook.sourceforge.net/release/script/AnchorPosition.js http://docbook.sourceforge.net/release/script/PopupWindow.js'"/>
 <xsl:param name="annotation.graphic.open" select="'http://docbook.sourceforge.net/release/images/annot-open.png'"/>
 <xsl:param name="annotation.graphic.close" select="'http://docbook.sourceforge.net/release/images/annot-close.png'"/>
 <xsl:param name="annotation.support" select="0"/>
@@ -121,7 +121,7 @@ div.annotation-close { position: absolute;
 <xsl:param name="ebnf.table.bgcolor" select="'#F5DCB3'"/>
 <xsl:param name="ebnf.table.border" select="1"/>
 <xsl:param name="ebnf.assignment">
-<code>::=</code>
+<code xmlns="http://www.w3.org/1999/xhtml">::=</code>
 </xsl:param>
 
 <xsl:param name="ebnf.statement.terminator"/>

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 976 - 47
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/pi.xsl


+ 1 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/profile-chunk-code.xsl

@@ -66,7 +66,7 @@
   </xsl:variable>
 
   <xsl:variable name="dbhtml-filename">
-    <xsl:call-template name="dbhtml-filename"/>
+    <xsl:call-template name="pi.dbhtml_filename"/>
   </xsl:variable>
 
   <xsl:variable name="filename">

+ 6 - 24
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/qandaset.xsl

@@ -19,10 +19,7 @@
   <xsl:variable name="title" select="(blockinfo/title|info/title|title)[1]"/>
   <xsl:variable name="preamble" select="*[local-name(.) != 'title'                                           and local-name(.) != 'titleabbrev'                                           and local-name(.) != 'qandadiv'                                           and local-name(.) != 'qandaentry']"/>
   <xsl:variable name="toc">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'toc'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_toc"/>
   </xsl:variable>
 
   <xsl:variable name="toc.params">
@@ -75,10 +72,7 @@
   </xsl:if>
 
   <xsl:variable name="toc">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'toc'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_toc"/>
   </xsl:variable>
 
   <xsl:variable name="toc.params">
@@ -316,31 +310,19 @@
 <xsl:template name="process.qandaset">
 
   <xsl:variable name="label-width">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'label-width'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_label-width"/>
   </xsl:variable>
 
   <xsl:variable name="table-summary">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'table-summary'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_table-summary"/>
   </xsl:variable>
 
   <xsl:variable name="cellpadding">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'cellpadding'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_cellpadding"/>
   </xsl:variable>
 
   <xsl:variable name="cellspacing">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'cellspacing'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_cellspacing"/>
   </xsl:variable>
 
   <table border="0" summary="Q and A Set">

+ 4 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/sections.xsl

@@ -435,12 +435,15 @@
         <xsl:attribute name="style">clear: both</xsl:attribute>
       </xsl:if>
     </xsl:if>
-    <xsl:if test="$allow-anchors != 0">
+    <xsl:if test="$allow-anchors != 0 and $generate.id.attributes = 0">
       <xsl:call-template name="anchor">
         <xsl:with-param name="node" select="$section"/>
         <xsl:with-param name="conditional" select="0"/>
       </xsl:call-template>
     </xsl:if>
+    <xsl:if test="$generate.id.attributes != 0 and not(local-name(.) = 'appendix')">
+      <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute>
+    </xsl:if>
     <xsl:copy-of select="$title"/>
   </xsl:element>
 </xsl:template>

+ 5 - 4
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/synop.xsl

@@ -23,7 +23,9 @@
   <div>
     <xsl:apply-templates select="." mode="class.attribute"/>
     <p>
-      <xsl:call-template name="anchor"/>
+      <xsl:call-template name="anchor">
+        <xsl:with-param name="conditional" select="0"/>
+      </xsl:call-template>
       <xsl:apply-templates/>
     </p>
   </div>
@@ -177,9 +179,8 @@ paramdef      ::= (#PCDATA|type|replaceable|parameter|funcparams)*
 
 <xsl:template match="funcprototype">
   <xsl:variable name="html-style">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="ancestor::funcsynopsis//processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'funcsynopsis-style'"/>
+    <xsl:call-template name="pi.dbhtml_funcsynopsis-style">
+      <xsl:with-param name="node" select="ancestor::funcsynopsis/descendant-or-self::*"/>
     </xsl:call-template>
   </xsl:variable>
 

+ 16 - 36
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/table.xsl

@@ -135,24 +135,15 @@
   </xsl:if>
 
   <xsl:variable name="summary">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'table-summary'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_table-summary"/>
   </xsl:variable>
 
   <xsl:variable name="cellspacing">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'cellspacing'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_cellspacing"/>
   </xsl:variable>
 
   <xsl:variable name="cellpadding">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="processing-instruction('dbhtml')[1]"/>
-      <xsl:with-param name="attribute" select="'cellpadding'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_cellpadding"/>
   </xsl:variable>
 
   <table>
@@ -215,7 +206,6 @@
 
     <xsl:choose>
       <xsl:when test="$table.borders.with.css != 0">
-        <xsl:attribute name="border">0</xsl:attribute>
         <xsl:choose>
           <xsl:when test="../@frame='all' or (not(../@frame) and $default.table.frame='all')">
             <xsl:attribute name="style">
@@ -302,12 +292,18 @@
               </xsl:call-template>
             </xsl:attribute>
           </xsl:when>
+	  <xsl:when test="../@frame='none'">
+	    <xsl:attribute name="style">
+	      <xsl:text>border: none;</xsl:text>
+	    </xsl:attribute>
+	  </xsl:when>
           <xsl:otherwise>
             <xsl:attribute name="style">
               <xsl:text>border-collapse: collapse;</xsl:text>
             </xsl:attribute>
           </xsl:otherwise>
         </xsl:choose>
+
       </xsl:when>
       <xsl:when test="../@frame='none' or (not(../@frame) and $default.table.frame='none') or local-name(.) = 'entrytbl'">
         <xsl:attribute name="border">0</xsl:attribute>
@@ -326,9 +322,8 @@
     </xsl:variable>
 
     <xsl:variable name="explicit.table.width">
-      <xsl:call-template name="dbhtml-attribute">
-        <xsl:with-param name="pis" select="../processing-instruction('dbhtml')[1]"/>
-        <xsl:with-param name="attribute" select="'table-width'"/>
+      <xsl:call-template name="pi.dbhtml_table-width">
+        <xsl:with-param name="node" select=".."/>
       </xsl:call-template>
     </xsl:variable>
 
@@ -416,10 +411,7 @@
 
 <xsl:template match="tgroup/processing-instruction('dbhtml')">
   <xsl:variable name="summary">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="."/>
-      <xsl:with-param name="attribute" select="'table-summary'"/>
-    </xsl:call-template>
+    <xsl:call-template name="pi.dbhtml_table-summary"/>
   </xsl:variable>
 
   <!-- Suppress the table-summary PI -->
@@ -545,28 +537,19 @@
 
   <xsl:variable name="row-height">
     <xsl:if test="processing-instruction('dbhtml')">
-      <xsl:call-template name="dbhtml-attribute">
-        <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-        <xsl:with-param name="attribute" select="'row-height'"/>
-      </xsl:call-template>
+      <xsl:call-template name="pi.dbhtml_row-height"/>
     </xsl:if>
   </xsl:variable>
 
   <xsl:variable name="bgcolor">
     <xsl:if test="processing-instruction('dbhtml')">
-      <xsl:call-template name="dbhtml-attribute">
-	<xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-	<xsl:with-param name="attribute" select="'bgcolor'"/>
-      </xsl:call-template>
+      <xsl:call-template name="pi.dbhtml_bgcolor"/>
     </xsl:if>
   </xsl:variable>
 
   <xsl:variable name="class">
     <xsl:if test="processing-instruction('dbhtml')">
-      <xsl:call-template name="dbhtml-attribute">
-	<xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-	<xsl:with-param name="attribute" select="'class'"/>
-      </xsl:call-template>
+      <xsl:call-template name="pi.dbhtml_class"/>
     </xsl:if>
   </xsl:variable>
 
@@ -776,10 +759,7 @@
     <xsl:otherwise>
       <xsl:variable name="bgcolor">
         <xsl:if test="processing-instruction('dbhtml')">
-          <xsl:call-template name="dbhtml-attribute">
-            <xsl:with-param name="pis" select="processing-instruction('dbhtml')"/>
-            <xsl:with-param name="attribute" select="'bgcolor'"/>
-          </xsl:call-template>
+          <xsl:call-template name="pi.dbhtml_bgcolor"/>
         </xsl:if>
       </xsl:variable>
 

+ 3 - 1
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/titlepage.xsl

@@ -928,7 +928,9 @@
 
   <h1>
     <xsl:apply-templates select="." mode="class.attribute"/>
-    <a id="{$id}"/>
+    <xsl:if test="$generate.id.attributes = 0">
+      <a id="{$id}"/>
+    </xsl:if>
     <xsl:choose>
       <xsl:when test="$show.revisionflag != 0 and @revisionflag">
 	<span class="{@revisionflag}">

+ 6 - 9
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/verbatim.xsl

@@ -169,23 +169,20 @@
 
   <!-- Extract the <?dbhtml linenumbering.*?> PI values -->
   <xsl:variable name="pi.linenumbering.everyNth">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="$pi.context/processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/>
+    <xsl:call-template name="pi.dbhtml_linenumbering.everyNth">
+      <xsl:with-param name="node" select="$pi.context"/>
     </xsl:call-template>
   </xsl:variable>
 
   <xsl:variable name="pi.linenumbering.separator">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="$pi.context/processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'linenumbering.separator'"/>
+    <xsl:call-template name="pi.dbhtml_linenumbering.separator">
+      <xsl:with-param name="node" select="$pi.context"/>
     </xsl:call-template>
   </xsl:variable>
 
   <xsl:variable name="pi.linenumbering.width">
-    <xsl:call-template name="dbhtml-attribute">
-      <xsl:with-param name="pis" select="$pi.context/processing-instruction('dbhtml')"/>
-      <xsl:with-param name="attribute" select="'linenumbering.width'"/>
+    <xsl:call-template name="pi.dbhtml_linenumbering.width">
+      <xsl:with-param name="node" select="$pi.context"/>
     </xsl:call-template>
   </xsl:variable>
 

+ 0 - 2
stylesheets/lfs-xsl/docbook-xsl-snapshot/xhtml/xref.xsl

@@ -726,7 +726,6 @@
   <xsl:apply-templates select="." mode="callout-bug"/>
 </xsl:template>
 
-<!-- This is currently not working, because there is no corresponding ID generated by Java extensions for processing callouts
 <xsl:template match="area|areaset" mode="xref-to">
   <xsl:param name="referrer"/>
   <xsl:param name="xrefstyle"/>
@@ -737,7 +736,6 @@
     </xsl:with-param>
   </xsl:call-template>
 </xsl:template>
--->
 
 <xsl:template match="book" mode="xref-to">
   <xsl:param name="referrer"/>

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно