tom Sun Mar 9 10:01:15 2003 EDT
Added files:
/phpdoc/xsl bightml.xsl html.xsl param_html.xsl
Removed files:
/phpdoc/xsl bightml.xsl.in html.xsl.in
Modified files:
/phpdoc/xsl common.xsl html-common.xsl
/phpdoc/xsl/docbook README VERSION
Log:
new adaptation of some docbook-xsl-stylesheets
Index: phpdoc/xsl/common.xsl
diff -u phpdoc/xsl/common.xsl:1.6 phpdoc/xsl/common.xsl:1.7
--- phpdoc/xsl/common.xsl:1.6 Sun Feb 10 07:57:56 2002
+++ phpdoc/xsl/common.xsl Sun Mar 9 10:01:13 2003
@@ -1,79 +1,48 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
- Common customizations for all formats
-
- $Id: common.xsl,v 1.6 2002/02/10 12:57:56 goba Exp $
+ common.xsl: Common customizations for all formats
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
-<!-- Configuration parameters -->
-<xsl:param name="funcsynopsis.style" select="'ansi'"/>
-<xsl:param name="funcsynopsis.decoration" select="'1'"/>
-<xsl:param name="refentry.generate.name" select="'0'"/>
-<!-- Turn off separators on reference and refentry pages -->
-<xsl:param name="refentry.separator" select="'0'"/>
-<xsl:template name="reference.titlepage.separator"/>
+<!-- Set the LANGUAGE for autom. generated text -->
+<xsl:param name="l10n.gentext.language" select="/book/@lang"/>
-<!-- Start numbering in every part, toc to 2 section depth -->
-<xsl:param name="label.from.part" select="'1'"/>
+<!-- temporary till also this is in std.-distrib. -->
+<xsl:template match="titleabbrev"></xsl:template>
-<!-- Load version information into variable -->
-<xsl:param name="version" select="document('version.xml')/versions"/>
+<!-- Start NUMBERING (e.g. chapters) in every part -->
+<xsl:param name="label.from.part" select="'0'"/>
-<!-- We do not want semicolon at the end of prototype and our own style
- of square brackets for optional parameters -->
-<xsl:template match="paramdef/parameter">
- <xsl:apply-templates />
-</xsl:template>
+<!-- Colorize background for programlisting and screens -->
+<xsl:param name="shade.verbatim" select="1"/>
-<xsl:template match="paramdef/parameter/optional">
- <xsl:apply-templates />
-</xsl:template>
+<!-- REFENTRIES: make functionnames the title -->
+<xsl:param name="refentry.generate.name" select="'0'"/>
+<xsl:param name="refentry.generate.title" select="1"/>
+
+<!-- Load VERSION INFORMATION into variable -->
+<xsl:param name="version" select="document('version.xml')/versions"/>
-<xsl:template match="paramdef">
- <xsl:if test="preceding-sibling::paramdef=false()">(</xsl:if>
- <xsl:apply-templates />
- <xsl:choose>
- <xsl:when test="following-sibling::paramdef">
- <xsl:choose>
- <xsl:when
test="following-sibling::paramdef[position()=1]/child::parameter/child::optional">
- <xsl:text> [, </xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>, </xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:otherwise>
- <xsl:for-each
select="preceding-sibling::paramdef/child::parameter/child::optional">
- <xsl:text>]</xsl:text>
- </xsl:for-each>
- <xsl:if test="child::parameter/child::optional">
- <xsl:text>]</xsl:text>
- </xsl:if>
- <xsl:text>)</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
-</xsl:template>
-<!-- same for docbook 4 style protos -->
+<!-- PROTOTYPES: PHP-Version without semicolon, etc.
+ note: methodparams are separated in html-common and fo -->
<xsl:template match="methodsynopsis">
<xsl:apply-templates />
</xsl:template>
-<xsl:template match="methodsynopsis/void">
- <xsl:text>(void)</xsl:text>
-</xsl:template>
-
<xsl:template match="methodsynopsis/type">
<xsl:apply-templates />
<xsl:text> </xsl:text>
</xsl:template>
+<xsl:template match="methodsynopsis/void">
+ <xsl:text> (void)</xsl:text>
+</xsl:template>
+
<xsl:template match="methodparam/type">
<xsl:apply-templates />
<xsl:text> </xsl:text>
@@ -84,7 +53,12 @@
</xsl:template>
<xsl:template match="methodparam">
- <xsl:if test="preceding-sibling::methodparam=false()">(</xsl:if>
+ <xsl:if test="preceding-sibling::methodparam=false()">
+ <xsl:text> (</xsl:text>
+ <xsl:if test="@choice='opt'">
+ <xsl:text>[</xsl:text>
+ </xsl:if>
+ </xsl:if>
<xsl:apply-templates />
<xsl:choose>
<xsl:when test="following-sibling::methodparam">
@@ -101,12 +75,31 @@
<xsl:for-each
select="preceding-sibling::methodparam/attribute::choice[.='opt']">
<xsl:text>]</xsl:text>
</xsl:for-each>
- <xsl:if test="child::methodparam/attribute::choice[.='opt']">
+ <xsl:if test="self::methodparam/attribute::choice[.='opt']">
<xsl:text>]</xsl:text>
</xsl:if>
<xsl:text>)</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
+
+
+<!-- for the list of TRANSLATORS -->
+<xsl:template match="collab" mode="titlepage.mode">
+ <xsl:choose>
+ <xsl:when test="position()=last()">
+ <xsl:apply-templates/>
+ </xsl:when>
+ <xsl:when test="position() > 1">
+ <xsl:apply-templates/><xsl:text>, </xsl:text>
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="collabname">
+ <xsl:apply-templates/>
+</xsl:template>
+
</xsl:stylesheet>
Index: phpdoc/xsl/html-common.xsl
diff -u phpdoc/xsl/html-common.xsl:1.19 phpdoc/xsl/html-common.xsl:1.20
--- phpdoc/xsl/html-common.xsl:1.19 Fri Aug 30 08:56:02 2002
+++ phpdoc/xsl/html-common.xsl Sun Mar 9 10:01:13 2003
@@ -1,35 +1,32 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
- Common HTML customizations
-
- $Id: html-common.xsl,v 1.19 2002/08/30 12:56:02 goba Exp $
+ html-common.xsl: Common HTML customizations
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:include href="common.xsl"/>
+<xsl:include href="param_html.xsl"/>
<!-- We do not want style="" atts to appear in HTML output -->
<xsl:param name="admon.style" select="''"/>
-<!-- We do not want extra head links in HTML -->
-<xsl:param name="html.extra.head.links" select="0"/>
-<!-- This differs from the default as the ",figure,table,example,equation"
- is missing after the book toc (for comformance with the DSSSL output).
--->
+<!-- ========================== TOC =================================== -->
+
+<!-- Supress the ",figure,example,equation" (like DSSSL output). -->
<xsl:param name="generate.toc">
-appendix toc
+appendix toc,title
article toc
-book toc
-chapter toc
-part toc
+book toc,title
+chapter toc,title
+part toc,title
preface toc
qandadiv toc
qandaset toc
-reference toc
+reference toc,title
sect1 toc
sect2 toc
sect3 toc
@@ -39,224 +36,571 @@
set toc
</xsl:param>
-<!-- This makes the generation a bit faster (no file name printouts) -->
-<xsl:param name="chunk.quietly">1</xsl:param>
-<!-- Enclose functions in links, add parenthesis -->
-<xsl:template match="function">
+<!-- Make the TOC-depths like in the DSSSL-version -->
+<xsl:param name="toc.max.depth" select="1"/>
+
+<xsl:template name="subtoc">
+ <xsl:param name="toc-context" select="."/>
+ <xsl:param name="nodes" select="NOT-AN-ELEMENT"/>
+
+ <xsl:variable name="subtoc">
+ <xsl:element name="{$toc.list.type}">
+ <xsl:apply-templates mode="toc" select="$nodes">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </xsl:element>
+ </xsl:variable>
+
+ <xsl:variable name="depth">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'section'">
+ <xsl:value-of select="count(ancestor::section) + 1"/>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'sect1'">1</xsl:when>
+ <xsl:when test="local-name(.) = 'sect2'">2</xsl:when>
+ <xsl:when test="local-name(.) = 'sect3'">3</xsl:when>
+ <xsl:when test="local-name(.) = 'sect4'">4</xsl:when>
+ <xsl:when test="local-name(.) = 'sect5'">5</xsl:when>
+ <xsl:when test="local-name(.) = 'refsect1'">1</xsl:when>
+ <xsl:when test="local-name(.) = 'refsect2'">2</xsl:when>
+ <xsl:when test="local-name(.) = 'refsect3'">3</xsl:when>
+ <xsl:when test="local-name(.) = 'simplesect'">
+ <!-- sigh... -->
+ <xsl:choose>
+ <xsl:when test="local-name(..) = 'section'">
+ <xsl:value-of select="count(ancestor::section)"/>
+ </xsl:when>
+ <xsl:when test="local-name(..) = 'sect1'">2</xsl:when>
+ <xsl:when test="local-name(..) = 'sect2'">3</xsl:when>
+ <xsl:when test="local-name(..) = 'sect3'">4</xsl:when>
+ <xsl:when test="local-name(..) = 'sect4'">5</xsl:when>
+ <xsl:when test="local-name(..) = 'sect5'">6</xsl:when>
+ <xsl:when test="local-name(..) = 'refsect1'">2</xsl:when>
+ <xsl:when test="local-name(..) = 'refsect2'">3</xsl:when>
+ <xsl:when test="local-name(..) = 'refsect3'">4</xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="depth.from.context"
select="count(ancestor::*)-count($toc-context/ancestor::*)"/>
+
+ <xsl:variable name="subtoc.list">
+ <xsl:choose>
+ <xsl:when test="$toc.dd.type = ''">
+ <xsl:copy-of select="$subtoc"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:element name="{$toc.dd.type}">
+ <xsl:copy-of select="$subtoc"/>
+ </xsl:element>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="my.toc.max.depth">
+ <xsl:choose>
+ <xsl:when test="local-name(..) = 'book'">2</xsl:when>
+ <xsl:otherwise>
+ <xsl:copy-of select="$toc.max.depth"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:element name="{$toc.listitem.type}">
+ <xsl:variable name="label">
+ <xsl:apply-templates select="." mode="label.markup"/>
+ </xsl:variable>
+ <xsl:copy-of select="$label"/>
+ <xsl:if test="$label != ''">
+ <xsl:value-of select="$autotoc.label.separator"/>
+ </xsl:if>
+
+ <a>
+ <xsl:attribute name="href">
+ <xsl:call-template name="href.target">
+ <xsl:with-param name="context" select="$toc-context"/>
+ </xsl:call-template>
+ </xsl:attribute>
+ <xsl:apply-templates select="." mode="title.markup"/>
+ </a>
+ <xsl:if test="$toc.listitem.type = 'li'
+ and $toc.section.depth > $depth and count($nodes)>0
+ and $my.toc.max.depth > $depth.from.context">
+ <xsl:copy-of select="$subtoc.list"/>
+ </xsl:if>
+ </xsl:element>
+ <xsl:if test="$toc.listitem.type != 'li'
+ and $toc.section.depth > $depth and count($nodes)>0
+ and $my.toc.max.depth > $depth.from.context">
+ <xsl:copy-of select="$subtoc.list"/>
+ </xsl:if>
+</xsl:template>
+
+<!-- ======================= END TOC ================================= -->
+
+<!-- ======================= TITLEPAGE ================================= -->
+
+<!-- Let authors, editor, and translators look similar to DSSSL-version -->
+<xsl:template match="author|editor" mode="titlepage.mode">
+ <xsl:call-template name="person.name"/><br/>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="book.titlepage.recto.auto.mode">
<xsl:choose>
- <xsl:when test="name(parent::*)!='funcdef'">
- <xsl:choose>
- <xsl:when
test="ancestor::refentry/refnamediv/refname=translate(current(),'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')">
- <xsl:call-template name="inline.boldseq">
- <xsl:with-param name="content">
- <xsl:apply-templates/>
- <xsl:text>()</xsl:text>
- </xsl:with-param>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <a>
- <xsl:attribute name="href">
- <xsl:call-template name="href.target">
- <xsl:with-param name="object" select="id(concat('function.',
translate(string(current()),'_','-')))"/>
- </xsl:call-template>
- </xsl:attribute>
- <xsl:call-template name="inline.boldseq">
- <xsl:with-param name="content">
- <xsl:apply-templates/>
- <xsl:text>()</xsl:text>
- </xsl:with-param>
- </xsl:call-template>
- </a>
- </xsl:otherwise>
- </xsl:choose>
+ <xsl:when test="@id='authors'">
+ <xsl:call-template name="anchor"/>
+ <h3><xsl:call-template name="gentext.by"/></h3>
+ <p><xsl:apply-templates select="." mode="titlepage.mode"/></p>
+ </xsl:when>
+ <xsl:when test="@id='editors'">
+ <h3><xsl:call-template name="gentext.edited.by"/></h3>
+ <p><xsl:apply-templates mode="titlepage.mode"/></p>
</xsl:when>
+ <xsl:when test="@id='translators'">
+ <h4><xsl:apply-templates select="collab[1]/collabname"/></h4>
+ <p><xsl:apply-templates select="collab" mode="titlepage.mode"/></p>
+ </xsl:when>
+ <xsl:otherwise></xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- don't just show the date for pubdate -->
+<xsl:template match="bookinfo/pubdate" mode="titlepage.mode">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'published'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:apply-templates />
+</xsl:template>
+
+<!-- PREFACE/ABSTRACT: supress the autogenerated title,
+ but make a blockquote like in DSSSL-result -->
+<xsl:template match="preface/abstract">
+ <div class="{name(.)}">
+ <xsl:call-template name="anchor"/>
+ <blockquote>
+ <xsl:apply-templates />
+ </blockquote>
+ </div>
+</xsl:template>
+
+<!-- ======================== END TITLEPAGE =============================== -->
+
+
+
+<!-- METHODNAMES should be bold like in DSSSL -->
+<xsl:template match="methodsynopsis/methodname">
+ <b><xsl:apply-templates/></b>
+</xsl:template>
+
+
+<!-- Add LINKS to TYPES -->
+<xsl:template match="type">
+ <xsl:variable name="mytype">
+ <xsl:apply-templates/>
+ </xsl:variable>
+ <xsl:variable name="name">
+ <xsl:choose>
+ <xsl:when test="$mytype='int'">language.types.integer</xsl:when>
+ <xsl:when test="$mytype='bool'">language.types.boolean</xsl:when>
+ <xsl:when test="$mytype='double'">language.types.float</xsl:when>
<xsl:otherwise>
- <xsl:call-template name="inline.monoseq"/>
+ <xsl:copy-of select="concat('language.types.',
+
translate($mytype,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz'))"/>
</xsl:otherwise>
</xsl:choose>
-</xsl:template>
+ </xsl:variable>
-<!-- To overcome precedence issues -->
-<xsl:template match="funcdef/function">
<xsl:choose>
- <xsl:when test="$funcsynopsis.decoration != 0">
- <b class="fsfunc"><xsl:apply-templates/></b>
+ <xsl:when test="count(/*/[EMAIL PROTECTED]'langref']/[EMAIL
PROTECTED]'language.types']/[EMAIL PROTECTED]) = 1
+ and not(ancestor::[EMAIL PROTECTED])">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:call-template name="href.target">
+ <xsl:with-param name="object" select="id($name)"/>
+ </xsl:call-template>
+ </xsl:attribute>
+ <xsl:copy-of select="$mytype"/>
+ </a>
</xsl:when>
<xsl:otherwise>
- <xsl:apply-templates/>
+ <xsl:copy-of select="$mytype"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
-<!-- Title abbreviations are not used in HTML output,
- only in phpweb left menu generation -->
-<xsl:template match="titleabbrev"/>
-<!-- Add version information bellow function name -->
+<!-- Add VERSION INFORMATION below FUNCTION name -->
<xsl:template match="refnamediv">
+ <h2>
+ <xsl:apply-templates select="refname[1]"/>
+ </h2>
+ <p>
+ <xsl:text>(</xsl:text>
+ <xsl:value-of select="$version/[EMAIL PROTECTED](current()/refname)]/@from"/>
+ <xsl:text>)</xsl:text>
+ </p>
+ <p>
+ <xsl:apply-templates/>
+ </p>
+</xsl:template>
+
+
+<!-- Let NOTES and WARNINGS look more similar to the dsssl-version -->
+<xsl:template match="simpara|para|title" mode="note.single.entry">
+ <xsl:apply-templates />
+</xsl:template>
+
+<xsl:template match="note">
+ <xsl:variable name="inlinepara">
+ <xsl:choose>
+ <xsl:when test="count(title) = 0">
+ <xsl:apply-templates select="*[1]" mode="note.single.entry"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="*[2]" mode="note.single.entry"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <blockquote>
+ <p>
+ <b>
+ <xsl:choose>
+ <xsl:when test="count(title) > 0">
+ <xsl:apply-templates select="title" mode="note.single.entry"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>: </xsl:text>
+ </b>
+ <xsl:copy-of select="$inlinepara"/>
+ </p>
+ <xsl:choose>
+ <xsl:when test="$inlinepara != '' and count(title) > 0">
+ <xsl:apply-templates select="*[not(position() < 3)]" />
+ </xsl:when>
+ <xsl:when test="$inlinepara != '' and count(title) = 0">
+ <xsl:apply-templates select="*[not(position() < 2)]" />
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </blockquote>
+</xsl:template>
+
+<xsl:template match="warning|caution">
+ <xsl:variable name="pos">
+ <xsl:choose>
+ <xsl:when test="count(title[1])=1">2</xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
<div class="{name(.)}">
+ <p style="font-size:10px"></p>
+ <table border="1" width="96%" align="center">
+ <tr>
+ <td align="center"><b>
+ <xsl:choose>
+ <xsl:when test="$pos=2">
+ <xsl:apply-templates select="title" mode="note.single.entry"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="gentext"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </b></td>
+ </tr>
+ <tr><td>
+ <xsl:apply-templates select="*[position()=$pos]" mode="note.single.entry" />
+ <xsl:choose>
+ <xsl:when test="(count(child::*)-$pos) > 1">
+ <xsl:apply-templates select="*[position()>$pos and position()!=last()]" />
+ <xsl:apply-templates select="*[position()=last()]"
mode="note.single.entry" />
+ </xsl:when>
+ <xsl:otherwise>
+ <p style="font-size=8px"></p>
+ <xsl:apply-templates select="*[position()>$pos]" mode="note.single.entry"
/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td></tr>
+ </table>
+ <p style="font-size:10px"></p>
+ </div>
+</xsl:template>
+
+
+<!-- Ensure PARAGRAPHS: $html.cleanup is useful and should
+ be used for e.g <span...>, but supresses the <p>-tags
+ if something is inside a para (e.g. <para>bla<example>). -->
+<xsl:template match="para">
+ <xsl:variable name="p">
+ <xsl:if test="position() = 1 and parent::listitem">
+ <xsl:call-template name="anchor">
+ <xsl:with-param name="node" select="parent::listitem"/>
+ </xsl:call-template>
+ </xsl:if>
<xsl:call-template name="anchor"/>
+ <xsl:apply-templates/>
+ </xsl:variable>
+ <p>
<xsl:choose>
- <xsl:when test="$refentry.generate.name != 0">
- <h2>
- <xsl:call-template name="gentext">
- <xsl:with-param name="key" select="'RefName'"/>
- </xsl:call-template>
- </h2>
- </xsl:when>
- <xsl:when test="$refentry.generate.title != 0">
- <h2>
- <xsl:choose>
- <xsl:when test="../refmeta/refentrytitle">
- <xsl:apply-templates select="../refmeta/refentrytitle"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:apply-templates select="refname[1]"/>
- </xsl:otherwise>
- </xsl:choose>
- </h2>
+ <xsl:when test="$html.cleanup != 0">
+ <xsl:call-template name="unwrap.p">
+ <xsl:with-param name="p" select="$p"/>
+ </xsl:call-template>
</xsl:when>
+ <xsl:otherwise>
+ <xsl:copy-of select="$p"/>
+ </xsl:otherwise>
</xsl:choose>
- <p>(<xsl:value-of select="$version/[EMAIL
PROTECTED](current()/refname)]/@from"/>)</p>
- <p>
- <xsl:apply-templates/>
- </p>
- </div>
+ </p>
</xsl:template>
-<!-- This is the same as in DocBook XSL, except that we
- preserve the role in programlisting and the like -->
-<xsl:template match="programlisting|screen|synopsis">
- <xsl:param name="suppress-numbers" select="'0'"/>
- <xsl:variable name="id">
- <xsl:call-template name="object.id"/>
- </xsl:variable>
- <xsl:call-template name="anchor"/>
-
- <xsl:variable name="preclass">
+
+<!-- CHAPTER-TITLES: make them <h1> like in DSSSL -->
+<xsl:template match="chapter/title" mode="titlepage.mode">
+ <xsl:variable name="node" select="ancestor::chapter[1]"/>
+ <h1>
+ <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:with-param name="allow-anchors" select="1"/>
+ </xsl:apply-templates>
+ </h1>
+</xsl:template>
+
+
+<!-- SECTION-TITLES: <sect1> -> <h1> ... <sect5> -> <h5>) as in DSSSL -->
+<xsl:template name="section.heading">
+ <xsl:param name="section" select="."/>
+ <xsl:param name="level" select="1"/>
+ <xsl:param name="allow-anchors" select="1"/>
+ <xsl:param name="title"/>
+
+ <xsl:variable name="id">
<xsl:choose>
- <xsl:when test="./@role">
- <xsl:value-of select="./@role"/>
+ <xsl:when test="contains(local-name(..), 'info')">
+ <xsl:call-template name="object.id">
+ <xsl:with-param name="object" select="../.."/>
+ </xsl:call-template>
</xsl:when>
<xsl:otherwise>
- <xsl:value-of select="name(.)"/>
+ <xsl:call-template name="object.id">
+ <xsl:with-param name="object" select=".."/>
+ </xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
+ <xsl:element name="h{$level}">
+ <xsl:if test="$css.decoration != '0'">
+ <xsl:if test="$level<3">
+ <xsl:attribute name="style">clear:both</xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="$allow-anchors != 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:copy-of select="$title"/>
+ </xsl:element>
+</xsl:template>
- <xsl:variable name="content">
+
+<!-- Let FAQ-QUESTIONS look more similar to the dsssl-version -->
+<xsl:template match="question">
+ <xsl:variable name="deflabel">
<xsl:choose>
- <xsl:when test="$suppress-numbers = '0'
- and @linenumbering = 'numbered'
- and $use.extensions != '0'
- and $linenumbering.extension != '0'">
- <xsl:variable name="rtf">
- <xsl:apply-templates/>
- </xsl:variable>
- <pre class="{$preclass}">
- <xsl:call-template name="number.rtf.lines">
- <xsl:with-param name="rtf" select="$rtf"/>
- </xsl:call-template>
- </pre>
+ <xsl:when test="ancestor-or-self::[EMAIL PROTECTED]">
+ <xsl:value-of select="(ancestor-or-self::[EMAIL PROTECTED])[last()]
+ /@defaultlabel"/>
</xsl:when>
<xsl:otherwise>
- <pre class="{$preclass}">
- <xsl:apply-templates/>
- </pre>
+ <xsl:value-of select="qanda.defaultlabel"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
+ <tr>
+ <td align="left" valign="top">
+ <xsl:call-template name="anchor">
+ <xsl:with-param name="node" select=".."/>
+ <xsl:with-param name="conditional" select="0"/>
+ </xsl:call-template>
+ <xsl:call-template name="anchor">
+ <xsl:with-param name="conditional" select="0"/>
+ </xsl:call-template>
+ <b>
+ <xsl:apply-templates select="." mode="label.markup"/>
+ <xsl:text>. </xsl:text>
+ </b>
+ </td>
+ <td align="left" valign="top">
+ <b><xsl:apply-templates select="*[name(.) != 'label']"
mode="note.single.entry"/></b>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<!-- make the TITLE "Table of contents" an HTML-HEADER, so that the
+ size-diff to the headers in the reference-intro's isn't that big -->
+<xsl:template name="make.toc">
+ <xsl:param name="toc-context" select="."/>
+ <xsl:param name="toc.title.p" select="true()"/>
+ <xsl:param name="nodes" select="/NOT-AN-ELEMENT"/>
+
+ <xsl:variable name="toc.title">
+ <xsl:if test="$toc.title.p">
+ <h2>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key">TableofContents</xsl:with-param>
+ </xsl:call-template>
+ </h2>
+ </xsl:if>
+ </xsl:variable>
+
<xsl:choose>
- <xsl:when test="$shade.verbatim != 0">
- <table xsl:use-attribute-sets="shade.verbatim.style">
- <tr>
- <td>
- <xsl:copy-of select="$content"/>
- </td>
- </tr>
- </table>
+ <xsl:when test="$manual.toc != ''">
+ <xsl:variable name="id">
+ <xsl:call-template name="object.id"/>
+ </xsl:variable>
+ <xsl:variable name="toc" select="document($manual.toc, .)"/>
+ <xsl:variable name="tocentry" select="$toc//[EMAIL PROTECTED]"/>
+ <xsl:if test="$tocentry and $tocentry/*">
+ <xsl:copy-of select="$toc.title"/>
+ <xsl:element name="{$toc.list.type}">
+ <xsl:call-template name="manual-toc">
+ <xsl:with-param name="tocentry" select="$tocentry/*[1]"/>
+ </xsl:call-template>
+ </xsl:element>
+ </xsl:if>
</xsl:when>
<xsl:otherwise>
- <xsl:copy-of select="$content"/>
+ <xsl:if test="$nodes">
+ <xsl:copy-of select="$toc.title"/>
+ <xsl:element name="{$toc.list.type}">
+ <xsl:apply-templates select="$nodes" mode="toc">
+ <xsl:with-param name="toc-context" select="$toc-context"/>
+ </xsl:apply-templates>
+ </xsl:element>
+ </xsl:if>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
-<!-- Call title printout code - this was not working in
- the 1.48 DBXML distribution -->
-<xsl:template name="refentry.titlepage">
- <div class="titlepage">
- <xsl:call-template name="refentry.title"/>
+
+
+<!-- Add a Label (e.g. I.) to reference-title, suppress
+ <hr> after reference-title, and save some <div>'s -->
+<xsl:template name="reference.titlepage">
+ <xsl:apply-templates select="title" mode="reference.titlepage.mode"/>
+</xsl:template>
+<xsl:template match="title" mode="reference.titlepage.mode">
+ <h1>
+ <xsl:apply-templates select=".." mode="label.markup"/>
+ <xsl:text>. </xsl:text>
+ <xsl:apply-templates mode="titlepage.mode"/>
+ </h1>
+</xsl:template>
+
+<xsl:template match="reference/partintro">
+ <div class="{name(.)}">
+ <xsl:apply-templates/>
+
+ <xsl:variable name="toc.params">
+ <xsl:call-template name="find.path.params">
+ <xsl:with-param name="node" select="parent::*"/>
+ <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:if test="contains($toc.params, 'toc')">
+ <xsl:apply-templates select="parent::*" mode="make.part.toc"/>
+ </xsl:if>
+ <xsl:call-template name="process.footnotes"/>
</div>
</xsl:template>
-<!-- Custom mode for titles for navigation without
- "Chapter 1" and other autogenerated content -->
-<xsl:template match="*" mode="phpdoc.object.title">
- <xsl:call-template name="substitute-markup">
- <xsl:with-param name="allow-anchors" select="0"/>
- <xsl:with-param name="template" select="'%t'"/>
- </xsl:call-template>
+<xsl:template match="reference/partintro/section">
+ <xsl:apply-templates mode="titlepage.mode"/>
</xsl:template>
-<!-- Rendering of methodsynopsis. The output of this should look like:
-
- int preg_match_all ( string pattern, string subject, array matches [, int flags])
-
- working from a structure like this:
-
- <methodsynopsis>
- <type>int</type><methodname>preg_match_all</methodname>
- <methodparam><type>string</type><parameter>pattern</parameter></methodparam>
- <methodparam><type>string</type><parameter>subject</parameter></methodparam>
- <methodparam><type>array</type><parameter>matches</parameter></methodparam>
- <methodparam
choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
- </methodsynopsis>
--->
-<!-- Override default [java] methodsynopsis rendering -->
-<xsl:template match="methodsynopsis">
- <xsl:apply-templates select="." mode="php"/>
-</xsl:template>
-
-<!-- Print out the return type, the method name, then the parameters.
- Close all the optional signs opened and close the prentheses -->
-<xsl:template match="methodsynopsis" mode="php">
- <span class="funcreturntype">
- <xsl:value-of select="concat(./type/text(), ' ')"/>
- </span>
- <span class="funcname">
- <xsl:value-of select="./methodname/text()"/>
- </span>
- <xsl:text> ( </xsl:text>
- <xsl:apply-templates select="./methodparam" mode="php"/>
- <xsl:for-each select="./[EMAIL PROTECTED] = 'opt']">
- <xsl:text>]</xsl:text>
- </xsl:for-each>
- <xsl:text> )</xsl:text>
-</xsl:template>
-
-<!-- Print out optional sign if needed, then a comma if this is
- not the first param, then the type and the parameter name -->
-<xsl:template match="methodsynopsis/methodparam" mode="php">
- <xsl:if test="@choice = 'opt'">
- <xsl:text> [</xsl:text>
- </xsl:if>
- <xsl:if test="position() != 1">
- <xsl:text>, </xsl:text>
- </xsl:if>
- <span class="funcparamtype">
- <xsl:value-of select="./type/text()"/>
- </span>
- <xsl:text> </xsl:text>
- <span class="funcparamname">
- <xsl:value-of select="./parameter/text()"/>
- </span>
+
+<!-- Just to DECREASE FILESIZE (since we have no css-styles) -->
+<xsl:template name="refentry.titlepage">
</xsl:template>
-</xsl:stylesheet>
+<xsl:template match="parameter">
+ <i><tt><xsl:apply-templates/></tt></i>
+</xsl:template>
+
+<xsl:template match="constant|filename|literal|option|varname">
+ <tt><xsl:apply-templates/></tt>
+</xsl:template>
+<xsl:template match="refsection|refsect1|refsect2|refsect3">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template name="formal.object.heading">
+ <xsl:param name="object" select="."/>
+ <p>
+ <b>
+ <xsl:apply-templates select="$object" mode="object.title.markup">
+ <xsl:with-param name="allow-anchors" select="1"/>
+ </xsl:apply-templates>
+ </b>
+ </p>
+</xsl:template>
+
+<xsl:template name="nongraphical.admonition">
+ <xsl:if test="$admon.style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="$admon.style"/>
+ </xsl:attribute>
+ </xsl:if>
+ <h3>
+ <xsl:call-template name="anchor"/>
+ <xsl:apply-templates select="." mode="object.title.markup"/>
+ </h3>
+ <xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template name="component.title">
+ <xsl:param name="node" select="."/>
+ <h2>
+ <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:with-param name="allow-anchors" select="1"/>
+ </xsl:apply-templates>
+ </h2>
+</xsl:template>
+
+<xsl:template match="programlisting|screen|synopsis">
+ <xsl:param name="suppress-numbers" select="'0'"/>
+ <table xsl:use-attribute-sets="shade.verbatim.style">
+ <tr>
+ <td>
+ <pre><xsl:apply-templates/></pre>
+ </td>
+ </tr>
+ </table>
+</xsl:template>
+
+
+
+</xsl:stylesheet>
Index: phpdoc/xsl/docbook/README
diff -u phpdoc/xsl/docbook/README:1.1 phpdoc/xsl/docbook/README:1.2
--- phpdoc/xsl/docbook/README:1.1 Tue Aug 13 11:34:28 2002
+++ phpdoc/xsl/docbook/README Sun Mar 9 10:01:14 2003
@@ -63,7 +63,7 @@
Copyright
---------
-Copyright (C) 1999, 2000, 2001 Norman Walsh
+Copyright (C) 1999, 2000, 2001, 2002 Norman Walsh
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
Index: phpdoc/xsl/docbook/VERSION
diff -u phpdoc/xsl/docbook/VERSION:1.1 phpdoc/xsl/docbook/VERSION:1.2
--- phpdoc/xsl/docbook/VERSION:1.1 Tue Aug 13 11:34:28 2002
+++ phpdoc/xsl/docbook/VERSION Sun Mar 9 10:01:14 2003
@@ -1,6 +1,6 @@
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version='1.0'>
-<xsl:param name="VERSION">1.51.1</xsl:param>
+<xsl:param name="VERSION">1.60.1</xsl:param>
</xsl:stylesheet>
Index: phpdoc/xsl/bightml.xsl
+++ phpdoc/xsl/bightml.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
bightml.xsl: HTML specific stylesheet (not chunked)
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:import href="./docbook/html/docbook.xsl"/>
<xsl:include href="html-common.xsl"/>
<!-- don't let the copright + year-list appear twice -->
<xsl:template match="copyright" mode="titlepage.mode" />
<!-- add missing separators -->
<xsl:template match="preface|part|chapter|reference|appendix|sect1|sect2">
<hr/>
<xsl:apply-imports/>
</xsl:template>
<xsl:template match="reference/partintro/section">
<xsl:apply-imports/>
</xsl:template>
<!-- Just decrease FILESIZE in this huge file -->
<xsl:template match="refentry">
<hr/>
<div class="{name(.)}">
<xsl:call-template name="anchor">
<xsl:with-param name="conditional" select="0"/>
</xsl:call-template>
<xsl:apply-templates/>
<xsl:call-template name="process.footnotes"/>
</div>
</xsl:template>
<!-- Add parenthesis FUNCTIONS, and if target exists link
them to their refentry, otherweise make it bold -->
<xsl:template match="function">
<xsl:variable name="content">
<xsl:apply-templates/><xsl:text>()</xsl:text>
</xsl:variable>
<xsl:variable name="targetid">
<xsl:value-of select="concat('function.', translate(string(current()),'_','-'))"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="ancestor::refentry/refnamediv/refname=translate(current(),
'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')
or count(/*/[EMAIL PROTECTED]'funcref']/*/[EMAIL PROTECTED]) =
0">
<b><xsl:copy-of select="$content"/></b>
</xsl:when>
<xsl:otherwise>
<a>
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="id($targetid)"/>
</xsl:call-template>
</xsl:attribute>
<xsl:copy-of select="$content"/>
</a>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
Index: phpdoc/xsl/html.xsl
+++ phpdoc/xsl/html.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
html.xsl: Chunked HTML specific stylesheet
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:import href="./docbook/html/chunkfast.xsl"/>
<xsl:include href="html-common.xsl"/>
<xsl:param name="base.dir" select="'html/'"/>
<xsl:param name="use.id.as.filename" select="1"/>
<!-- Speed up generation (no file name printouts) -->
<xsl:param name="chunk.quietly">1</xsl:param>
<!-- Make LEGALNOTICE an extra-file, omit extra-link on start-page (link
directly from the original <COPYRIGHT>), and make nav-header/footer -->
<xsl:template match="copyright" mode="titlepage.mode">
<p>
<a href="{concat('copyright',$html.ext)}">
<xsl:call-template name="gentext">
<xsl:with-param name="key" select="'Copyright'"/>
</xsl:call-template>
</a>
<xsl:text> </xsl:text>
<xsl:call-template name="dingbat">
<xsl:with-param name="dingbat">copyright</xsl:with-param>
</xsl:call-template>
<xsl:text> </xsl:text>
<xsl:call-template name="copyright.years">
<xsl:with-param name="years" select="year"/>
<xsl:with-param name="print.ranges" select="$make.year.ranges"/>
<xsl:with-param name="single.year.ranges"
select="$make.single.year.ranges"/>
</xsl:call-template>
<xsl:text> </xsl:text>
<xsl:apply-templates select="holder" mode="titlepage.mode"/>
</p>
</xsl:template>
<xsl:template match="legalnotice" mode="titlepage.mode">
<xsl:variable name="filename">
<xsl:value-of select="concat($base.dir,'copyright',$html.ext)"/>
</xsl:variable>
<xsl:call-template name="write.chunk">
<xsl:with-param name="filename" select="$filename"/>
<xsl:with-param name="quiet" select="$chunk.quietly"/>
<xsl:with-param name="content">
<html>
<head>
<xsl:call-template name="system.head.content"/>
<title>
<xsl:apply-templates select="." mode="object.title.markup.textonly"/>
</title>
</head>
<body>
<xsl:call-template name="body.attributes"/>
<table width="100%" summary="Navigation header">
<tr>
<th align="center"><xsl:value-of select="/book/title"/></th>
</tr>
</table>
<hr/>
<xsl:apply-templates mode="titlepage.mode"/>
<hr/>
<table width="100%" summary="Navigation footer">
<tr>
<td align="center">
<a accesskey="h">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="/*[1]"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'home'"/>
</xsl:call-template>
</a>
</td>
</tr>
</table>
</body>
</html>
</xsl:with-param>
</xsl:call-template>
</xsl:template>
<!-- NAVIGATION-HEADERS: let them look similar to dsssl
(not in 1st page, 1st line always "PHP manual", titles
labelled just with e.g. 'A.' instead of 'appendix A.') -->
<xsl:template name="header.navigation">
<xsl:param name="prev" select="/foo"/>
<xsl:param name="next" select="/foo"/>
<xsl:param name="nav.context"/>
<xsl:variable name="home" select="/*[1]"/>
<xsl:variable name="up" select="parent::*"/>
<xsl:variable name="row2" select="(count($prev) > 0
or (count($up) > 0 and $up != $home)
or count($next) > 0)
and local-name(.) != 'book'"/>
<div class="navheader">
<xsl:if test="$row2">
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">
<xsl:value-of select="/book/title"/>
</th>
</tr>
<tr>
<td width="20%" align="left">
<xsl:if test="count($prev)>0">
<a>
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$prev"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'prev'"/>
</xsl:call-template>
</a>
</xsl:if>
<xsl:text> </xsl:text>
</td>
<td width="60%" align="center">
<xsl:choose>
<xsl:when test="count($up) > 0 and $up != $home">
<xsl:variable name="label">
<xsl:apply-templates select="$up" mode="label.markup"/>
</xsl:variable>
<xsl:copy-of select="$label"/>
<xsl:if test="$label != ''">
<xsl:text>. </xsl:text>
</xsl:if>
<xsl:apply-templates select="$up" mode="title.markup"/>
</xsl:when>
<xsl:otherwise> </xsl:otherwise>
</xsl:choose>
</td>
<td width="20%" align="right">
<xsl:text> </xsl:text>
<xsl:if test="count($next)>0">
<a>
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$next"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'next'"/>
</xsl:call-template>
</a>
</xsl:if>
</td>
</tr>
</table>
<hr/>
</xsl:if>
</div>
</xsl:template>
<!-- NAVIGATION-FOOTERS: label just with e.g. 'A.' instead of 'appendix A.') -->
<xsl:template name="footer.navigation">
<xsl:param name="prev" select="/foo"/>
<xsl:param name="next" select="/foo"/>
<xsl:param name="nav.context"/>
<xsl:variable name="home" select="/*[1]"/>
<xsl:variable name="up" select="parent::*"/>
<xsl:variable name="row1" select="count($prev) > 0
or count($up) > 0
or count($next) > 0"/>
<xsl:variable name="row2" select="$prev != 0 or $next != 0
or ($home != . or $nav.context = 'toc')"/>
<div class="navfooter">
<hr/>
<xsl:if test="$row1 or $row2">
<table width="100%" summary="Navigation footer">
<xsl:if test="$row1">
<tr>
<td width="40%" align="left">
<xsl:if test="count($prev)>0">
<a accesskey="p">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$prev"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'prev'"/>
</xsl:call-template>
</a>
</xsl:if>
<xsl:text> </xsl:text>
</td>
<td width="20%" align="center">
<xsl:choose>
<xsl:when test="count($up)>0">
<a accesskey="u">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$up"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'up'"/>
</xsl:call-template>
</a>
</xsl:when>
<xsl:otherwise> </xsl:otherwise>
</xsl:choose>
</td>
<td width="40%" align="right">
<xsl:text> </xsl:text>
<xsl:if test="count($next)>0">
<a accesskey="n">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$next"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'next'"/>
</xsl:call-template>
</a>
</xsl:if>
</td>
</tr>
</xsl:if>
<xsl:if test="$row2">
<tr>
<td width="40%" align="left" valign="top">
<xsl:variable name="label">
<xsl:apply-templates select="$prev" mode="label.markup"/>
</xsl:variable>
<xsl:copy-of select="$label"/>
<xsl:if test="$label != ''">
<xsl:text>. </xsl:text>
</xsl:if>
<xsl:apply-templates select="$prev" mode="title.markup"/>
<xsl:text> </xsl:text>
</td>
<td width="20%" align="center">
<xsl:choose>
<xsl:when test="$home != . or $nav.context = 'toc'">
<a accesskey="h">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="$home"/>
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="navig.content">
<xsl:with-param name="direction" select="'home'"/>
</xsl:call-template>
</a>
</xsl:when>
<xsl:otherwise> </xsl:otherwise>
</xsl:choose>
</td>
<td width="40%" align="right" valign="top">
<xsl:text> </xsl:text>
<xsl:variable name="label">
<xsl:apply-templates select="$next" mode="label.markup"/>
</xsl:variable>
<xsl:copy-of select="$label"/>
<xsl:if test="$label != ''">
<xsl:text>. </xsl:text>
</xsl:if>
<xsl:apply-templates select="$next" mode="title.markup"/>
</td>
</tr>
</xsl:if>
</table>
</xsl:if>
</div>
</xsl:template>
<!-- Add parenthesis FUNCTIONS, and if target exists link
them to their refentry, otherweise make it bold -->
<xsl:template match="function">
<xsl:variable name="content">
<xsl:apply-templates/><xsl:text>()</xsl:text>
</xsl:variable>
<xsl:variable name="targetid">
<xsl:value-of select="concat('function.', translate(string(current()),'_','-'))"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="ancestor::refentry/refnamediv/refname=translate(current(),
'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')
or count(/*/[EMAIL PROTECTED]'funcref']/*/[EMAIL PROTECTED]) = 0">
<b><xsl:copy-of select="$content"/></b>
</xsl:when>
<xsl:otherwise>
<a>
<xsl:attribute name="href">
<xsl:value-of select="concat($targetid, '.html')"/>
</xsl:attribute>
<xsl:copy-of select="$content"/>
</a>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<!-- Suppress Links in html-header -->
<xsl:template name="html.head">
<xsl:param name="prev"/>
<xsl:param name="next"/>
<head>
<title>
<xsl:apply-templates select="." mode="object.title.markup.textonly"/>
</title>
</head>
</xsl:template>
<!-- Don't let the "next"-links of navigation-headers(footers)
point to a section below reference/partintro, which is no chunk -->
<xsl:template name="chunk-first-section-with-parent">
<xsl:param name="content">
<xsl:apply-imports/>
</xsl:param>
<xsl:variable name="prev-v1"
select="(ancestor::sect1[$chunk.section.depth > 0
and preceding-sibling::sect1][1]
|ancestor::sect2[$chunk.section.depth > 1
and preceding-sibling::sect2
and parent::sect1[preceding-sibling::sect1]][1]
|ancestor::section[$chunk.section.depth > count(ancestor::section)
and
not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/>
<xsl:variable name="prev-v2"
select="(preceding::sect1[$chunk.section.depth > 0
and preceding-sibling::sect1][1]
|preceding::sect2[$chunk.section.depth > 1
and preceding-sibling::sect2
and parent::sect1[preceding-sibling::sect1]][1]
|preceding::section[$chunk.section.depth > count(ancestor::section)
and preceding-sibling::section
and
not(ancestor::section[not(preceding-sibling::section)])][1])[last()]"/>
<xsl:variable name="prev"
select="(preceding::book[1]
|preceding::preface[1]
|preceding::chapter[1]
|preceding::appendix[1]
|preceding::part[1]
|preceding::reference[1]
|preceding::refentry[1]
|preceding::colophon[1]
|preceding::article[1]
|preceding::bibliography[1]
|preceding::glossary[1]
|preceding::index[1]
|preceding::setindex[1]
|ancestor::set
|ancestor::book[1]
|ancestor::preface[1]
|ancestor::chapter[1]
|ancestor::appendix[1]
|ancestor::part[1]
|ancestor::reference[1]
|ancestor::article[1]
|$prev-v1
|$prev-v2)[last()]"/>
<xsl:variable name="next-v1"
select="(following::sect1[$chunk.section.depth > 0
and preceding-sibling::sect1][1]
|following::sect2[$chunk.section.depth > 1
and preceding-sibling::sect2
and parent::sect1[preceding-sibling::sect1]][1]
|following::section[$chunk.section.depth > count(ancestor::section)
and preceding-sibling::section
and
not(ancestor::section[not(preceding-sibling::section)])
and not(parent::partintro)][1])[1]"/>
<xsl:variable name="next-v2"
select="(descendant::sect1[$chunk.section.depth > 0
and preceding-sibling::sect1][1]
|descendant::sect2[$chunk.section.depth > 1
and preceding-sibling::sect2
and parent::sect1[preceding-sibling::sect1]][1]
|descendant::section[$chunk.section.depth > count(ancestor::section)
and preceding-sibling::section
and
not(ancestor::section[not(preceding-sibling::section)])
and not(parent::partintro)])[1]"/>
<xsl:variable name="next"
select="(following::book[1]
|following::preface[1]
|following::chapter[1]
|following::appendix[1]
|following::part[1]
|following::reference[1]
|following::refentry[1]
|following::colophon[1]
|following::bibliography[1]
|following::glossary[1]
|following::index[1]
|following::article[1]
|following::setindex[1]
|descendant::book[1]
|descendant::preface[1]
|descendant::chapter[1]
|descendant::appendix[1]
|descendant::article[1]
|descendant::bibliography[1]
|descendant::glossary[1]
|descendant::index[1]
|descendant::colophon[1]
|descendant::setindex[1]
|descendant::part[1]
|descendant::reference[1]
|descendant::refentry[1]
|$next-v1
|$next-v2)[1]"/>
<xsl:call-template name="process-chunk">
<xsl:with-param name="prev" select="$prev"/>
<xsl:with-param name="next" select="$next"/>
<xsl:with-param name="content" select="$content"/>
</xsl:call-template>
</xsl:template>
</xsl:stylesheet>
Index: phpdoc/xsl/param_html.xsl
+++ phpdoc/xsl/param_html.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
param_html.xsl: Parameters generated by the configure-script
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="html" encoding="ISO-8859-1"/>
</xsl:stylesheet>
--
PHP Documentation Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php