[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [docbook-apps] Header
> -----Original Message-----
> From: tom_schr@web.de
>
> Sorry, I posted the wrong version, this works:
>
> <xsl:template name="tw.generate.breadcrumb"
> xmlns:d="http://docbook.org/ns/docbook">
> <xsl:param name="current.node" select="."/>
>
> <xsl:for-each select="ancestor::*">
> <xsl:element name="a">
> <xsl:attribute name="href">
> <xsl:apply-templates select="." mode="chunk-filename"/>
> </xsl:attribute>
>
> <xsl:choose>
> <xsl:when test="title">
> <xsl:value-of select="normalize-space(title)"/>
> </xsl:when>
> <xsl:when test="d:info/d:title">
> <xsl:value-of select="normalize-space(d:info/d:title)"/>
> </xsl:when>
> </xsl:choose>
This template does not handle <title> elements inside <articleinfo> or other
<*info> elements. And I don't think the namespace stuff or the current.node
parameter are necessary.
The following trimmed-down template (called from user.header.content) works
with DocBook 4 and 5:
<xsl:template name="tw.generate.breadcrumb">
<xsl:for-each select="ancestor::*">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:call-template name="href.target">
<xsl:with-param name="object" select="."/>
<xsl:with-param name="context" select="."/>
</xsl:call-template>
</xsl:attribute>
<xsl:apply-templates select="." mode="title.markup"/>
</xsl:element>
<xsl:text> » </xsl:text>
</xsl:for-each>
<xsl:if test="self::* != /*">
<strong><xsl:apply-templates select="." mode="title.markup"/></strong>
</xsl:if>
</xsl:template>
/MJ
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]