1 <xsl:stylesheet exclude-result-prefixes="d"
2 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 xmlns:d="http://docbook.org/ns/docbook"
4 xmlns:fo="http://www.w3.org/1999/XSL/Format"
7 <!-- ================================================================ -->
9 <!-- PTC/Arbortext Code for XSL 1.1 bookmark support -->
11 <!-- ================================================================ -->
13 <xsl:param name="ati.xsl11.bookmarks" select="1"/>
15 <xsl:variable name="ati-a-dia" select=
16 "'āăąćĉċčďđēĕėęěœĝğġģĥħĩīĭįıĵķĺļľŀłńņňŋōŏőŕŗřśŝşšţťŧũūŭůűųŵŷźżžĀĂĄĆĈĊČĎĐĒĔĖĘĚŒĜĞĠĢĤĦĨĪĬĮİĴĶĹĻĽĿŁŃŅŇŊŌŎŐŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽ'"/>
18 <xsl:variable name="ati-a-asc" select=
19 "'aaaccccddeeeeeegggghhiiiiijklllllnnnnooorrrsssstttuuuuuuwyzzzAAACCCCDDEEEEEEGGGGHHIIIIIJKLLLLLNNNNOOORRRSSSSTTTUUUUUUWYYZZZ'"/>
21 <xsl:template match="*" mode="ati.xsl11.bookmarks">
22 <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/>
25 <xsl:template match="d:set|d:book|d:part|d:reference|d:preface|d:chapter|d:appendix|d:article
26 |d:glossary|d:bibliography|d:index|d:setindex
27 |d:refentry|d:refsynopsisdiv
28 |d:refsect1|d:refsect2|d:refsect3|d:refsection
29 |d:sect1|d:sect2|d:sect3|d:sect4|d:sect5|d:section"
30 mode="ati.xsl11.bookmarks">
31 <xsl:variable name="id">
32 <xsl:call-template name="object.id"/>
34 <xsl:variable name="bookmark-label">
35 <xsl:apply-templates select="." mode="object.title.markup"/>
38 <!-- Put the root element bookmark at the same level as its children -->
39 <!-- If the object is a set or book, generate a bookmark for the toc -->
42 <xsl:when test="self::d:index and $generate.index = 0"/>
43 <xsl:when test="parent::*">
44 <fo:bookmark internal-destination="{$id}">
46 <xsl:value-of select="translate($bookmark-label, $ati-a-dia, $ati-a-asc)"/>
48 <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/>
52 <fo:bookmark internal-destination="{$id}">
54 <xsl:value-of select="translate($bookmark-label, $ati-a-dia, $ati-a-asc)"/>
58 <xsl:variable name="toc.params">
59 <xsl:call-template name="find.path.params">
60 <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
63 <xsl:if test="contains($toc.params, 'toc')
64 and d:section|d:sect1|d:refentry
65 |d:article|d:bibliography|d:glossary
67 <fo:bookmark internal-destination="toc...{$id}">
69 <xsl:call-template name="gentext">
70 <xsl:with-param name="key" select="'TableofContents'"/>
75 <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/>