docbook_xsl_wrapper 0.1.2 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/CHANGELOG +41 -0
- data/README.md +9 -17
- data/bin/docbook_xsl_wrapper +9 -14
- data/docbook_xsl_wrapper.gemspec +8 -7
- data/lib/docbook_xsl_wrapper.rb +24 -1
- data/lib/docbook_xsl_wrapper/epub.rb +124 -122
- data/lib/docbook_xsl_wrapper/options.rb +1 -1
- data/lib/docbook_xsl_wrapper/validate.rb +22 -0
- data/lib/docbook_xsl_wrapper/version.rb +1 -1
- data/schema/docbookxi.rng +18654 -0
- data/spec/docbook_xsl_wrapper/validate_spec.rb +64 -0
- data/xsl/AUTHORS +4 -0
- data/xsl/COPYING +48 -0
- data/xsl/REVISION +1 -0
- data/xsl/VERSION.xsl +115 -0
- data/xsl/common/addns.xsl +124 -0
- data/xsl/common/af.xml +1272 -0
- data/xsl/common/am.xml +1272 -0
- data/xsl/common/ar.xml +1272 -0
- data/xsl/common/as.xml +703 -0
- data/xsl/common/ast.xml +703 -0
- data/xsl/common/autoidx-kimber.xsl +45 -0
- data/xsl/common/autoidx-kosek.xsl +155 -0
- data/xsl/common/az.xml +715 -0
- data/xsl/common/bg.xml +767 -0
- data/xsl/common/bn.xml +1272 -0
- data/xsl/common/bn_in.xml +703 -0
- data/xsl/common/bs.xml +705 -0
- data/xsl/common/ca.xml +703 -0
- data/xsl/common/charmap.xsl +222 -0
- data/xsl/common/common.xsl +2129 -0
- data/xsl/common/cs.xml +743 -0
- data/xsl/common/cy.xml +1288 -0
- data/xsl/common/da.xml +707 -0
- data/xsl/common/de.xml +709 -0
- data/xsl/common/el.xml +772 -0
- data/xsl/common/en.xml +1272 -0
- data/xsl/common/entities.ent +67 -0
- data/xsl/common/eo.xml +1272 -0
- data/xsl/common/es.xml +719 -0
- data/xsl/common/et.xml +1272 -0
- data/xsl/common/eu.xml +1272 -0
- data/xsl/common/fa.xml +703 -0
- data/xsl/common/fi.xml +713 -0
- data/xsl/common/fr.xml +733 -0
- data/xsl/common/ga.xml +1272 -0
- data/xsl/common/gentext.xsl +855 -0
- data/xsl/common/gl.xml +1272 -0
- data/xsl/common/gu.xml +703 -0
- data/xsl/common/he.xml +1272 -0
- data/xsl/common/hi.xml +703 -0
- data/xsl/common/hr.xml +705 -0
- data/xsl/common/hu.xml +721 -0
- data/xsl/common/id.xml +1272 -0
- data/xsl/common/insertfile.xsl +113 -0
- data/xsl/common/is.xml +715 -0
- data/xsl/common/it.xml +1272 -0
- data/xsl/common/ja.xml +703 -0
- data/xsl/common/ka.xml +743 -0
- data/xsl/common/kn.xml +1272 -0
- data/xsl/common/ko.xml +1272 -0
- data/xsl/common/ky.xml +775 -0
- data/xsl/common/l10n.dtd +64 -0
- data/xsl/common/l10n.xml +78 -0
- data/xsl/common/l10n.xsl +598 -0
- data/xsl/common/la.xml +1272 -0
- data/xsl/common/labels.xsl +933 -0
- data/xsl/common/lt.xml +721 -0
- data/xsl/common/lv.xml +1272 -0
- data/xsl/common/ml.xml +703 -0
- data/xsl/common/mn.xml +773 -0
- data/xsl/common/mr.xml +703 -0
- data/xsl/common/nb.xml +1272 -0
- data/xsl/common/nds.xml +709 -0
- data/xsl/common/nl.xml +703 -0
- data/xsl/common/nn.xml +1272 -0
- data/xsl/common/olink.xsl +1284 -0
- data/xsl/common/or.xml +1272 -0
- data/xsl/common/pa.xml +703 -0
- data/xsl/common/pi.xml +168 -0
- data/xsl/common/pi.xsl +347 -0
- data/xsl/common/pl.xml +721 -0
- data/xsl/common/pt.xml +1272 -0
- data/xsl/common/pt_br.xml +1272 -0
- data/xsl/common/refentry.xsl +1353 -0
- data/xsl/common/ro.xml +1272 -0
- data/xsl/common/ru.xml +769 -0
- data/xsl/common/sk.xml +1272 -0
- data/xsl/common/sl.xml +1272 -0
- data/xsl/common/sq.xml +1272 -0
- data/xsl/common/sr.xml +763 -0
- data/xsl/common/sr_Latn.xml +722 -0
- data/xsl/common/subtitles.xsl +181 -0
- data/xsl/common/sv.xml +707 -0
- data/xsl/common/ta.xml +703 -0
- data/xsl/common/table.xsl +515 -0
- data/xsl/common/targetdatabase.dtd +49 -0
- data/xsl/common/targets.xsl +338 -0
- data/xsl/common/te.xml +703 -0
- data/xsl/common/th.xml +1272 -0
- data/xsl/common/titles.xsl +850 -0
- data/xsl/common/tl.xml +1272 -0
- data/xsl/common/tr.xml +709 -0
- data/xsl/common/uk.xml +769 -0
- data/xsl/common/ur.xml +705 -0
- data/xsl/common/utility.xsl +291 -0
- data/xsl/common/vi.xml +1272 -0
- data/xsl/common/xh.xml +1272 -0
- data/xsl/common/zh.xml +703 -0
- data/xsl/common/zh_cn.xml +703 -0
- data/xsl/common/zh_tw.xml +703 -0
- data/xsl/epub/docbook.xsl +1769 -0
- data/xsl/epub3/chunk.xsl +30 -0
- data/xsl/epub3/docbook-epub.css.xml +142 -0
- data/xsl/epub3/docbook.xsl +20 -0
- data/xsl/epub3/epub3-chunk-mods.xsl +52 -0
- data/xsl/epub3/epub3-element-mods.xsl +2533 -0
- data/xsl/epub3/titlepage.templates.xml +712 -0
- data/xsl/epub3/titlepage.templates.xsl +3842 -0
- data/xsl/lib/lib.xsl +533 -0
- data/xsl/xhtml/admon.xsl +142 -0
- data/xsl/xhtml/annotations.xsl +160 -0
- data/xsl/xhtml/autoidx.xsl +831 -0
- data/xsl/xhtml/autotoc.xsl +706 -0
- data/xsl/xhtml/biblio-iso690.xsl +1302 -0
- data/xsl/xhtml/biblio.xsl +1371 -0
- data/xsl/xhtml/block.xsl +584 -0
- data/xsl/xhtml/callout.xsl +210 -0
- data/xsl/xhtml/chunk-code.xsl +675 -0
- data/xsl/xhtml/chunk-common.xsl +1627 -0
- data/xsl/xhtml/chunker.xsl +317 -0
- data/xsl/xhtml/component.xsl +440 -0
- data/xsl/xhtml/division.xsl +214 -0
- data/xsl/xhtml/ebnf.xsl +331 -0
- data/xsl/xhtml/footnote.xsl +346 -0
- data/xsl/xhtml/formal.xsl +496 -0
- data/xsl/xhtml/glossary.xsl +602 -0
- data/xsl/xhtml/graphics.xsl +1537 -0
- data/xsl/xhtml/html-rtf.xsl +321 -0
- data/xsl/xhtml/html.xsl +690 -0
- data/xsl/xhtml/htmltbl.xsl +102 -0
- data/xsl/xhtml/index.xsl +264 -0
- data/xsl/xhtml/info.xsl +48 -0
- data/xsl/xhtml/inline.xsl +1508 -0
- data/xsl/xhtml/its.xsl +109 -0
- data/xsl/xhtml/keywords.xsl +38 -0
- data/xsl/xhtml/lists.xsl +1227 -0
- data/xsl/xhtml/math.xsl +286 -0
- data/xsl/xhtml/param.xsl +449 -0
- data/xsl/xhtml/pi.xsl +1237 -0
- data/xsl/xhtml/qandaset.xsl +440 -0
- data/xsl/xhtml/refentry.xsl +307 -0
- data/xsl/xhtml/sections.xsl +564 -0
- data/xsl/xhtml/synop.xsl +1623 -0
- data/xsl/xhtml/table.xsl +1179 -0
- data/xsl/xhtml/task.xsl +76 -0
- data/xsl/xhtml/titlepage.templates.xsl +4005 -0
- data/xsl/xhtml/titlepage.xsl +1108 -0
- data/xsl/xhtml/toc.xsl +334 -0
- data/xsl/xhtml/verbatim.xsl +389 -0
- data/xsl/xhtml/xref.xsl +1268 -0
- data/xsl/xhtml5/docbook.xsl +22 -0
- data/xsl/xhtml5/html5-chunk-mods.xsl +112 -0
- data/xsl/xhtml5/html5-element-mods.xsl +791 -0
- data/xsl/xhtml5/xhtml-docbook.xsl +531 -0
- metadata +207 -27
- data/.rvmrc +0 -48
- data/xslt/obfuscate.xsl +0 -12
data/xsl/xhtml/admon.xsl
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ASCII"?>
|
|
2
|
+
<!--This file was created automatically by html2xhtml-->
|
|
3
|
+
<!--from the HTML stylesheets.-->
|
|
4
|
+
<xsl:stylesheet exclude-result-prefixes="d"
|
|
5
|
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook"
|
|
6
|
+
xmlns="http://www.w3.org/1999/xhtml" version="1.0">
|
|
7
|
+
|
|
8
|
+
<!-- ********************************************************************
|
|
9
|
+
$Id: admon.xsl 9728 2013-03-08 00:16:41Z bobstayton $
|
|
10
|
+
********************************************************************
|
|
11
|
+
|
|
12
|
+
This file is part of the XSL DocBook Stylesheet distribution.
|
|
13
|
+
See ../README or http://docbook.sf.net/release/xsl/current/ for
|
|
14
|
+
copyright and other information.
|
|
15
|
+
|
|
16
|
+
******************************************************************** -->
|
|
17
|
+
|
|
18
|
+
<xsl:template match="*" mode="admon.graphic.width">
|
|
19
|
+
<xsl:param name="node" select="."/>
|
|
20
|
+
<xsl:text>25</xsl:text>
|
|
21
|
+
</xsl:template>
|
|
22
|
+
|
|
23
|
+
<xsl:template match="d:note|d:important|d:warning|d:caution|d:tip">
|
|
24
|
+
<xsl:choose>
|
|
25
|
+
<xsl:when test="$admon.graphics != 0">
|
|
26
|
+
<xsl:call-template name="graphical.admonition"/>
|
|
27
|
+
</xsl:when>
|
|
28
|
+
<xsl:otherwise>
|
|
29
|
+
<xsl:call-template name="nongraphical.admonition"/>
|
|
30
|
+
</xsl:otherwise>
|
|
31
|
+
</xsl:choose>
|
|
32
|
+
</xsl:template>
|
|
33
|
+
|
|
34
|
+
<xsl:template name="admon.graphic">
|
|
35
|
+
<xsl:param name="node" select="."/>
|
|
36
|
+
<xsl:value-of select="$admon.graphics.path"/>
|
|
37
|
+
<xsl:choose>
|
|
38
|
+
<xsl:when test="local-name($node)='note'">note</xsl:when>
|
|
39
|
+
<xsl:when test="local-name($node)='warning'">warning</xsl:when>
|
|
40
|
+
<xsl:when test="local-name($node)='caution'">caution</xsl:when>
|
|
41
|
+
<xsl:when test="local-name($node)='tip'">tip</xsl:when>
|
|
42
|
+
<xsl:when test="local-name($node)='important'">important</xsl:when>
|
|
43
|
+
<xsl:otherwise>note</xsl:otherwise>
|
|
44
|
+
</xsl:choose>
|
|
45
|
+
<xsl:value-of select="$admon.graphics.extension"/>
|
|
46
|
+
</xsl:template>
|
|
47
|
+
|
|
48
|
+
<xsl:template name="graphical.admonition">
|
|
49
|
+
<xsl:variable name="admon.type">
|
|
50
|
+
<xsl:choose>
|
|
51
|
+
<xsl:when test="local-name(.)='note'">Note</xsl:when>
|
|
52
|
+
<xsl:when test="local-name(.)='warning'">Warning</xsl:when>
|
|
53
|
+
<xsl:when test="local-name(.)='caution'">Caution</xsl:when>
|
|
54
|
+
<xsl:when test="local-name(.)='tip'">Tip</xsl:when>
|
|
55
|
+
<xsl:when test="local-name(.)='important'">Important</xsl:when>
|
|
56
|
+
<xsl:otherwise>Note</xsl:otherwise>
|
|
57
|
+
</xsl:choose>
|
|
58
|
+
</xsl:variable>
|
|
59
|
+
|
|
60
|
+
<xsl:variable name="alt">
|
|
61
|
+
<xsl:call-template name="gentext">
|
|
62
|
+
<xsl:with-param name="key" select="$admon.type"/>
|
|
63
|
+
</xsl:call-template>
|
|
64
|
+
</xsl:variable>
|
|
65
|
+
|
|
66
|
+
<div>
|
|
67
|
+
<xsl:call-template name="common.html.attributes"/>
|
|
68
|
+
<xsl:call-template name="id.attribute"/>
|
|
69
|
+
<xsl:if test="$admon.style != '' and $make.clean.html = 0">
|
|
70
|
+
<xsl:attribute name="style">
|
|
71
|
+
<xsl:value-of select="$admon.style"/>
|
|
72
|
+
</xsl:attribute>
|
|
73
|
+
</xsl:if>
|
|
74
|
+
|
|
75
|
+
<table border="{$table.border.off}">
|
|
76
|
+
<!-- omit summary attribute in html5 output -->
|
|
77
|
+
<xsl:if test="$div.element != 'section'">
|
|
78
|
+
<xsl:attribute name="summary">
|
|
79
|
+
<xsl:value-of select="$admon.type"/>
|
|
80
|
+
<xsl:if test="d:title|d:info/d:title">
|
|
81
|
+
<xsl:text>: </xsl:text>
|
|
82
|
+
<xsl:value-of select="(d:title|d:info/d:title)[1]"/>
|
|
83
|
+
</xsl:if>
|
|
84
|
+
</xsl:attribute>
|
|
85
|
+
</xsl:if>
|
|
86
|
+
<tr>
|
|
87
|
+
<td rowspan="2" align="center" valign="top">
|
|
88
|
+
<xsl:attribute name="width">
|
|
89
|
+
<xsl:apply-templates select="." mode="admon.graphic.width"/>
|
|
90
|
+
</xsl:attribute>
|
|
91
|
+
<img alt="[{$alt}]">
|
|
92
|
+
<xsl:attribute name="src">
|
|
93
|
+
<xsl:call-template name="admon.graphic"/>
|
|
94
|
+
</xsl:attribute>
|
|
95
|
+
</img>
|
|
96
|
+
</td>
|
|
97
|
+
<th align="{$direction.align.start}">
|
|
98
|
+
<xsl:call-template name="anchor"/>
|
|
99
|
+
<xsl:if test="$admon.textlabel != 0 or d:title or d:info/d:title">
|
|
100
|
+
<xsl:apply-templates select="." mode="object.title.markup"/>
|
|
101
|
+
</xsl:if>
|
|
102
|
+
</th>
|
|
103
|
+
</tr>
|
|
104
|
+
<tr>
|
|
105
|
+
<td align="{$direction.align.start}" valign="top">
|
|
106
|
+
<xsl:apply-templates/>
|
|
107
|
+
</td>
|
|
108
|
+
</tr>
|
|
109
|
+
</table>
|
|
110
|
+
</div>
|
|
111
|
+
</xsl:template>
|
|
112
|
+
|
|
113
|
+
<xsl:template name="nongraphical.admonition">
|
|
114
|
+
<div>
|
|
115
|
+
<xsl:call-template name="common.html.attributes">
|
|
116
|
+
<xsl:with-param name="inherit" select="1"/>
|
|
117
|
+
</xsl:call-template>
|
|
118
|
+
<xsl:call-template name="id.attribute"/>
|
|
119
|
+
<xsl:if test="$admon.style != '' and $make.clean.html = 0">
|
|
120
|
+
<xsl:attribute name="style">
|
|
121
|
+
<xsl:value-of select="$admon.style"/>
|
|
122
|
+
</xsl:attribute>
|
|
123
|
+
</xsl:if>
|
|
124
|
+
|
|
125
|
+
<xsl:if test="$admon.textlabel != 0 or d:title or d:info/d:title">
|
|
126
|
+
<h3 class="title">
|
|
127
|
+
<xsl:call-template name="anchor"/>
|
|
128
|
+
<xsl:apply-templates select="." mode="object.title.markup"/>
|
|
129
|
+
</h3>
|
|
130
|
+
</xsl:if>
|
|
131
|
+
|
|
132
|
+
<xsl:apply-templates/>
|
|
133
|
+
</div>
|
|
134
|
+
</xsl:template>
|
|
135
|
+
|
|
136
|
+
<xsl:template match="d:note/d:title"/>
|
|
137
|
+
<xsl:template match="d:important/d:title"/>
|
|
138
|
+
<xsl:template match="d:warning/d:title"/>
|
|
139
|
+
<xsl:template match="d:caution/d:title"/>
|
|
140
|
+
<xsl:template match="d:tip/d:title"/>
|
|
141
|
+
|
|
142
|
+
</xsl:stylesheet>
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ASCII"?>
|
|
2
|
+
<!--This file was created automatically by html2xhtml-->
|
|
3
|
+
<!--from the HTML stylesheets.-->
|
|
4
|
+
<xsl:stylesheet exclude-result-prefixes="d"
|
|
5
|
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook"
|
|
6
|
+
xmlns="http://www.w3.org/1999/xhtml" version="1.0">
|
|
7
|
+
|
|
8
|
+
<xsl:template name="add.annotation.links">
|
|
9
|
+
<xsl:param name="scripts" select="normalize-space($annotation.js)"/>
|
|
10
|
+
<xsl:choose>
|
|
11
|
+
<xsl:when test="contains($scripts, ' ')">
|
|
12
|
+
<script type="text/javascript" src="{substring-before($scripts, ' ')}"/>
|
|
13
|
+
<xsl:call-template name="add.annotation.links">
|
|
14
|
+
<xsl:with-param name="scripts" select="substring-after($scripts, ' ')"/>
|
|
15
|
+
</xsl:call-template>
|
|
16
|
+
</xsl:when>
|
|
17
|
+
<xsl:otherwise>
|
|
18
|
+
<script type="text/javascript" src="{$scripts}"/>
|
|
19
|
+
</xsl:otherwise>
|
|
20
|
+
</xsl:choose>
|
|
21
|
+
</xsl:template>
|
|
22
|
+
|
|
23
|
+
<xsl:template match="d:annotation"/>
|
|
24
|
+
|
|
25
|
+
<xsl:template name="apply-annotations">
|
|
26
|
+
<xsl:if test="$annotation.support != 0">
|
|
27
|
+
<!-- do any annotations apply to the context node? -->
|
|
28
|
+
<xsl:variable name="id" select="(@id|@xml:id)[1]"/>
|
|
29
|
+
|
|
30
|
+
<xsl:variable name="aids">
|
|
31
|
+
<xsl:for-each select="//d:annotation">
|
|
32
|
+
<xsl:if test="@annotates=$id or starts-with(@annotates, concat($id, ' ')) or contains(@annotates, concat(' ', $id, ' ')) or substring(@annotates, string-length(@annotates)-3) = concat(' ', $id)">
|
|
33
|
+
<xsl:value-of select="generate-id()"/>
|
|
34
|
+
<xsl:text> </xsl:text>
|
|
35
|
+
</xsl:if>
|
|
36
|
+
</xsl:for-each>
|
|
37
|
+
<xsl:if test="normalize-space(@annotations) != ''">
|
|
38
|
+
<xsl:call-template name="annotations-pointed-to">
|
|
39
|
+
<xsl:with-param name="annotations" select="normalize-space(@annotations)"/>
|
|
40
|
+
</xsl:call-template>
|
|
41
|
+
</xsl:if>
|
|
42
|
+
</xsl:variable>
|
|
43
|
+
|
|
44
|
+
<xsl:if test="$aids != ''">
|
|
45
|
+
<xsl:call-template name="apply-annotations-by-gid">
|
|
46
|
+
<xsl:with-param name="gids" select="normalize-space($aids)"/>
|
|
47
|
+
</xsl:call-template>
|
|
48
|
+
</xsl:if>
|
|
49
|
+
</xsl:if>
|
|
50
|
+
</xsl:template>
|
|
51
|
+
|
|
52
|
+
<xsl:template name="annotations-pointed-to">
|
|
53
|
+
<xsl:param name="annotations"/>
|
|
54
|
+
<xsl:choose>
|
|
55
|
+
<xsl:when test="contains($annotations, ' ')">
|
|
56
|
+
<xsl:variable name="a" select="key('id', substring-before($annotations, ' '))"/>
|
|
57
|
+
<xsl:if test="$a">
|
|
58
|
+
<xsl:value-of select="generate-id($a)"/>
|
|
59
|
+
<xsl:text> </xsl:text>
|
|
60
|
+
</xsl:if>
|
|
61
|
+
<xsl:call-template name="annotations-pointed-to">
|
|
62
|
+
<xsl:with-param name="annotations" select="substring-after($annotations, ' ')"/>
|
|
63
|
+
</xsl:call-template>
|
|
64
|
+
</xsl:when>
|
|
65
|
+
<xsl:otherwise>
|
|
66
|
+
<xsl:variable name="a" select="key('id', $annotations)"/>
|
|
67
|
+
<xsl:if test="$a">
|
|
68
|
+
<xsl:value-of select="generate-id($a)"/>
|
|
69
|
+
<xsl:text> </xsl:text>
|
|
70
|
+
</xsl:if>
|
|
71
|
+
</xsl:otherwise>
|
|
72
|
+
</xsl:choose>
|
|
73
|
+
</xsl:template>
|
|
74
|
+
|
|
75
|
+
<xsl:template name="apply-annotations-by-gid">
|
|
76
|
+
<xsl:param name="gids"/>
|
|
77
|
+
|
|
78
|
+
<xsl:choose>
|
|
79
|
+
<xsl:when test="contains($gids, ' ')">
|
|
80
|
+
<xsl:variable name="gid" select="substring-before($gids, ' ')"/>
|
|
81
|
+
<xsl:apply-templates select="key('gid', $gid)" mode="annotation-inline"/>
|
|
82
|
+
<xsl:call-template name="apply-annotations-by-gid">
|
|
83
|
+
<xsl:with-param name="gids" select="substring-after($gids, ' ')"/>
|
|
84
|
+
</xsl:call-template>
|
|
85
|
+
</xsl:when>
|
|
86
|
+
<xsl:otherwise>
|
|
87
|
+
<xsl:apply-templates select="key('gid', $gids)" mode="annotation-inline"/>
|
|
88
|
+
</xsl:otherwise>
|
|
89
|
+
</xsl:choose>
|
|
90
|
+
</xsl:template>
|
|
91
|
+
|
|
92
|
+
<xsl:template match="d:annotation" mode="annotation-inline">
|
|
93
|
+
<xsl:variable name="title">
|
|
94
|
+
<xsl:choose>
|
|
95
|
+
<xsl:when test="d:title">
|
|
96
|
+
<xsl:value-of select="d:title"/>
|
|
97
|
+
</xsl:when>
|
|
98
|
+
<xsl:otherwise>
|
|
99
|
+
<xsl:text>[Annotation #</xsl:text>
|
|
100
|
+
<xsl:number count="d:annotation" level="any" format="1"/>
|
|
101
|
+
<xsl:text>]</xsl:text>
|
|
102
|
+
</xsl:otherwise>
|
|
103
|
+
</xsl:choose>
|
|
104
|
+
</xsl:variable>
|
|
105
|
+
|
|
106
|
+
<a id="anch-{generate-id(.)}" href="#annot-{generate-id(.)}" title="{$title}">
|
|
107
|
+
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
108
|
+
<xsl:attribute name="onClick">
|
|
109
|
+
<xsl:text>popup_</xsl:text>
|
|
110
|
+
<xsl:value-of select="generate-id(.)"/>
|
|
111
|
+
<xsl:text>.showPopup('anch-</xsl:text>
|
|
112
|
+
<xsl:value-of select="generate-id(.)"/>
|
|
113
|
+
<xsl:text>'); return false;</xsl:text>
|
|
114
|
+
</xsl:attribute>
|
|
115
|
+
<img src="{$annotation.graphic.open}" border="0" alt="{$title}"/>
|
|
116
|
+
</a>
|
|
117
|
+
</xsl:template>
|
|
118
|
+
|
|
119
|
+
<xsl:template match="d:annotation" mode="annotation-popup">
|
|
120
|
+
<div class="annotation-nocss">
|
|
121
|
+
<p>
|
|
122
|
+
<a id="annot-{generate-id(.)}"/>
|
|
123
|
+
<xsl:text>Annotation #</xsl:text>
|
|
124
|
+
<xsl:number count="d:annotation" level="any" format="1"/>
|
|
125
|
+
<xsl:text>:</xsl:text>
|
|
126
|
+
</p>
|
|
127
|
+
</div>
|
|
128
|
+
|
|
129
|
+
<div id="popup-{generate-id(.)}" class="annotation-popup">
|
|
130
|
+
<xsl:if test="string-length(.) > 300">
|
|
131
|
+
<xsl:attribute name="style">width:400px</xsl:attribute>
|
|
132
|
+
</xsl:if>
|
|
133
|
+
|
|
134
|
+
<xsl:call-template name="annotation-title"/>
|
|
135
|
+
<div class="annotation-body">
|
|
136
|
+
<xsl:apply-templates select="*[local-name(.) != 'title']"/>
|
|
137
|
+
</div>
|
|
138
|
+
<div class="annotation-close">
|
|
139
|
+
<a href="#" onclick="popup_{generate-id(.)}.hidePopup();return false;">
|
|
140
|
+
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
141
|
+
<img src="{$annotation.graphic.close}" alt="X" border="0"/>
|
|
142
|
+
</a>
|
|
143
|
+
</div>
|
|
144
|
+
</div>
|
|
145
|
+
</xsl:template>
|
|
146
|
+
|
|
147
|
+
<xsl:template name="annotation-title">
|
|
148
|
+
<div class="annotation-title">
|
|
149
|
+
<xsl:choose>
|
|
150
|
+
<xsl:when test="d:title">
|
|
151
|
+
<xsl:apply-templates select="d:title/node()"/>
|
|
152
|
+
</xsl:when>
|
|
153
|
+
<xsl:otherwise>
|
|
154
|
+
<xsl:text>Annotation</xsl:text>
|
|
155
|
+
</xsl:otherwise>
|
|
156
|
+
</xsl:choose>
|
|
157
|
+
</div>
|
|
158
|
+
</xsl:template>
|
|
159
|
+
|
|
160
|
+
</xsl:stylesheet>
|
|
@@ -0,0 +1,831 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ASCII"?>
|
|
2
|
+
<!--This file was created automatically by html2xhtml-->
|
|
3
|
+
<!--from the HTML stylesheets.-->
|
|
4
|
+
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook"
|
|
5
|
+
xmlns:exslt="http://exslt.org/common" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/1999/xhtml" extension-element-prefixes="exslt" exclude-result-prefixes="exslt d" version="1.0">
|
|
6
|
+
|
|
7
|
+
<!-- ********************************************************************
|
|
8
|
+
$Id: autoidx.xsl 9853 2014-01-19 22:49:20Z bobstayton $
|
|
9
|
+
********************************************************************
|
|
10
|
+
|
|
11
|
+
This file is part of the XSL DocBook Stylesheet distribution.
|
|
12
|
+
See ../README or http://docbook.sf.net/release/xsl/current/ for
|
|
13
|
+
copyright and other information.
|
|
14
|
+
|
|
15
|
+
******************************************************************** -->
|
|
16
|
+
|
|
17
|
+
<!-- ==================================================================== -->
|
|
18
|
+
<!-- The "basic" method derived from Jeni Tennison's work. -->
|
|
19
|
+
<!-- The "kosek" method contributed by Jirka Kosek. -->
|
|
20
|
+
<!-- The "kimber" method contributed by Eliot Kimber of Innodata Isogen. -->
|
|
21
|
+
|
|
22
|
+
<xsl:variable name="kimber.imported" select="0"/>
|
|
23
|
+
<xsl:variable name="kosek.imported" select="0"/>
|
|
24
|
+
|
|
25
|
+
<xsl:key name="letter" match="d:indexterm" use="translate(substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1),'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ','AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
26
|
+
|
|
27
|
+
<xsl:key name="primary" match="d:indexterm" use="normalize-space(concat(d:primary/@sortas, " ", d:primary))"/>
|
|
28
|
+
|
|
29
|
+
<xsl:key name="secondary" match="d:indexterm" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)))"/>
|
|
30
|
+
|
|
31
|
+
<xsl:key name="tertiary" match="d:indexterm" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)))"/>
|
|
32
|
+
|
|
33
|
+
<!-- this key used for automatic links from see and seealso to primary -->
|
|
34
|
+
<xsl:key name="primaryonly" match="d:indexterm" use="normalize-space(d:primary)"/>
|
|
35
|
+
|
|
36
|
+
<xsl:key name="endofrange" match="d:indexterm[@class='endofrange']" use="@startref"/>
|
|
37
|
+
|
|
38
|
+
<xsl:key name="primary-section" match="d:indexterm[not(d:secondary) and not(d:see)]" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]))"/>
|
|
39
|
+
|
|
40
|
+
<xsl:key name="secondary-section" match="d:indexterm[not(d:tertiary) and not(d:see)]" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]))"/>
|
|
41
|
+
|
|
42
|
+
<xsl:key name="tertiary-section" match="d:indexterm[not(d:see)]" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]))"/>
|
|
43
|
+
|
|
44
|
+
<xsl:key name="see-also" match="d:indexterm[d:seealso]" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), " ", d:seealso)"/>
|
|
45
|
+
|
|
46
|
+
<xsl:key name="see" match="d:indexterm[d:see]" use="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), " ", d:see)"/>
|
|
47
|
+
|
|
48
|
+
<xsl:key name="sections" match="*[@id or @xml:id]" use="@id|@xml:id"/>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
<xsl:template name="generate-index">
|
|
52
|
+
<xsl:param name="scope" select="(ancestor::d:book|/)[last()]"/>
|
|
53
|
+
|
|
54
|
+
<xsl:choose>
|
|
55
|
+
<xsl:when test="$index.method = 'kosek'">
|
|
56
|
+
<xsl:call-template name="generate-kosek-index">
|
|
57
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
58
|
+
</xsl:call-template>
|
|
59
|
+
</xsl:when>
|
|
60
|
+
<xsl:when test="$index.method = 'kimber'">
|
|
61
|
+
<xsl:call-template name="generate-kimber-index">
|
|
62
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
63
|
+
</xsl:call-template>
|
|
64
|
+
</xsl:when>
|
|
65
|
+
|
|
66
|
+
<xsl:otherwise>
|
|
67
|
+
<xsl:call-template name="generate-basic-index">
|
|
68
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
69
|
+
</xsl:call-template>
|
|
70
|
+
</xsl:otherwise>
|
|
71
|
+
</xsl:choose>
|
|
72
|
+
</xsl:template>
|
|
73
|
+
|
|
74
|
+
<xsl:template name="generate-basic-index">
|
|
75
|
+
<xsl:param name="scope" select="NOTANODE"/>
|
|
76
|
+
|
|
77
|
+
<xsl:variable name="role">
|
|
78
|
+
<xsl:if test="$index.on.role != 0">
|
|
79
|
+
<xsl:value-of select="@role"/>
|
|
80
|
+
</xsl:if>
|
|
81
|
+
</xsl:variable>
|
|
82
|
+
|
|
83
|
+
<xsl:variable name="type">
|
|
84
|
+
<xsl:if test="$index.on.type != 0">
|
|
85
|
+
<xsl:value-of select="@type"/>
|
|
86
|
+
</xsl:if>
|
|
87
|
+
</xsl:variable>
|
|
88
|
+
|
|
89
|
+
<xsl:variable name="terms" select="//d:indexterm [count(.|key('letter', translate(substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')) [count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1 and not(@class = 'endofrange')]"/>
|
|
90
|
+
|
|
91
|
+
<xsl:variable name="alphabetical" select="$terms[contains(concat('AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'), substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1))]"/>
|
|
92
|
+
|
|
93
|
+
<xsl:variable name="others" select="$terms[not(contains(concat('AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'), substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1)))]"/>
|
|
94
|
+
<div class="index">
|
|
95
|
+
<xsl:if test="$others">
|
|
96
|
+
<xsl:choose>
|
|
97
|
+
<xsl:when test="normalize-space($type) != '' and $others[@type = $type][count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary)))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]">
|
|
98
|
+
<div class="indexdiv">
|
|
99
|
+
<h3>
|
|
100
|
+
<xsl:call-template name="gentext">
|
|
101
|
+
<xsl:with-param name="key" select="'index symbols'"/>
|
|
102
|
+
</xsl:call-template>
|
|
103
|
+
</h3>
|
|
104
|
+
<dl>
|
|
105
|
+
<xsl:apply-templates select="$others[count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary)))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]" mode="index-symbol-div">
|
|
106
|
+
<xsl:with-param name="position" select="position()"/>
|
|
107
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
108
|
+
<xsl:with-param name="role" select="$role"/>
|
|
109
|
+
<xsl:with-param name="type" select="$type"/>
|
|
110
|
+
<xsl:sort select="translate(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
111
|
+
</xsl:apply-templates>
|
|
112
|
+
</dl>
|
|
113
|
+
</div>
|
|
114
|
+
</xsl:when>
|
|
115
|
+
<xsl:when test="normalize-space($type) != ''">
|
|
116
|
+
<!-- Output nothing, as there isn't a match for $other using this $type -->
|
|
117
|
+
</xsl:when>
|
|
118
|
+
<xsl:otherwise>
|
|
119
|
+
<div class="indexdiv">
|
|
120
|
+
<h3>
|
|
121
|
+
<xsl:call-template name="gentext">
|
|
122
|
+
<xsl:with-param name="key" select="'index symbols'"/>
|
|
123
|
+
</xsl:call-template>
|
|
124
|
+
</h3>
|
|
125
|
+
<dl>
|
|
126
|
+
<xsl:apply-templates select="$others[count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary)))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]" mode="index-symbol-div">
|
|
127
|
+
<xsl:with-param name="position" select="position()"/>
|
|
128
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
129
|
+
<xsl:with-param name="role" select="$role"/>
|
|
130
|
+
<xsl:with-param name="type" select="$type"/>
|
|
131
|
+
<xsl:sort select="translate(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
132
|
+
</xsl:apply-templates>
|
|
133
|
+
</dl>
|
|
134
|
+
</div>
|
|
135
|
+
</xsl:otherwise>
|
|
136
|
+
</xsl:choose>
|
|
137
|
+
</xsl:if>
|
|
138
|
+
|
|
139
|
+
<xsl:apply-templates select="$alphabetical[count(.|key('letter', translate(substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ','AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]" mode="index-div-basic">
|
|
140
|
+
<xsl:with-param name="position" select="position()"/>
|
|
141
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
142
|
+
<xsl:with-param name="role" select="$role"/>
|
|
143
|
+
<xsl:with-param name="type" select="$type"/>
|
|
144
|
+
<xsl:sort select="translate(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
145
|
+
</xsl:apply-templates>
|
|
146
|
+
</div>
|
|
147
|
+
</xsl:template>
|
|
148
|
+
|
|
149
|
+
<!-- This template not used if html/autoidx-kosek.xsl is imported -->
|
|
150
|
+
<xsl:template name="generate-kosek-index">
|
|
151
|
+
<xsl:param name="scope" select="NOTANODE"/>
|
|
152
|
+
|
|
153
|
+
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
|
|
154
|
+
<xsl:if test="contains($vendor, 'libxslt')">
|
|
155
|
+
<xsl:message terminate="yes">
|
|
156
|
+
<xsl:text>ERROR: the 'kosek' index method does not </xsl:text>
|
|
157
|
+
<xsl:text>work with the xsltproc XSLT processor.</xsl:text>
|
|
158
|
+
</xsl:message>
|
|
159
|
+
</xsl:if>
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
<xsl:if test="$exsl.node.set.available = 0">
|
|
163
|
+
<xsl:message terminate="yes">
|
|
164
|
+
<xsl:text>ERROR: the 'kosek' index method requires the </xsl:text>
|
|
165
|
+
<xsl:text>exslt:node-set() function. Use a processor that </xsl:text>
|
|
166
|
+
<xsl:text>has it, or use a different index method.</xsl:text>
|
|
167
|
+
</xsl:message>
|
|
168
|
+
</xsl:if>
|
|
169
|
+
|
|
170
|
+
<xsl:if test="$kosek.imported = 0">
|
|
171
|
+
<xsl:message terminate="yes">
|
|
172
|
+
<xsl:text>ERROR: the 'kosek' index method requires the
|
|
173
|
+
</xsl:text>
|
|
174
|
+
<xsl:text>kosek index extensions be imported:
|
|
175
|
+
</xsl:text>
|
|
176
|
+
<xsl:text> xsl:import href="html/autoidx-kosek.xsl"</xsl:text>
|
|
177
|
+
</xsl:message>
|
|
178
|
+
</xsl:if>
|
|
179
|
+
|
|
180
|
+
</xsl:template>
|
|
181
|
+
|
|
182
|
+
<!-- This template not used if html/autoidx-kimber.xsl is imported -->
|
|
183
|
+
<xsl:template name="generate-kimber-index">
|
|
184
|
+
<xsl:param name="scope" select="NOTANODE"/>
|
|
185
|
+
|
|
186
|
+
<xsl:variable name="vendor" select="system-property('xsl:vendor')"/>
|
|
187
|
+
<xsl:if test="not(contains($vendor, 'SAXON '))">
|
|
188
|
+
<xsl:message terminate="yes">
|
|
189
|
+
<xsl:text>ERROR: the 'kimber' index method requires the </xsl:text>
|
|
190
|
+
<xsl:text>Saxon version 6 or 8 XSLT processor.</xsl:text>
|
|
191
|
+
</xsl:message>
|
|
192
|
+
</xsl:if>
|
|
193
|
+
|
|
194
|
+
<xsl:if test="$kimber.imported = 0">
|
|
195
|
+
<xsl:message terminate="yes">
|
|
196
|
+
<xsl:text>ERROR: the 'kimber' index method requires the
|
|
197
|
+
</xsl:text>
|
|
198
|
+
<xsl:text>kimber index extensions be imported:
|
|
199
|
+
</xsl:text>
|
|
200
|
+
<xsl:text> xsl:import href="html/autoidx-kimber.xsl"</xsl:text>
|
|
201
|
+
</xsl:message>
|
|
202
|
+
</xsl:if>
|
|
203
|
+
|
|
204
|
+
</xsl:template>
|
|
205
|
+
|
|
206
|
+
<xsl:template match="d:indexterm" mode="index-div-basic">
|
|
207
|
+
<xsl:param name="scope" select="."/>
|
|
208
|
+
<xsl:param name="role" select="''"/>
|
|
209
|
+
<xsl:param name="type" select="''"/>
|
|
210
|
+
|
|
211
|
+
<xsl:variable name="key" select="translate(substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ','AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
212
|
+
|
|
213
|
+
<xsl:if test="key('letter', $key)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))] [count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary)))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]">
|
|
214
|
+
<div class="indexdiv">
|
|
215
|
+
<xsl:if test="contains(concat('AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'), $key)">
|
|
216
|
+
<h3>
|
|
217
|
+
<xsl:value-of select="translate($key, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
218
|
+
</h3>
|
|
219
|
+
</xsl:if>
|
|
220
|
+
<dl>
|
|
221
|
+
<xsl:apply-templates select="key('letter', $key)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))] [count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary))) [count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])=1]" mode="index-primary">
|
|
222
|
+
<xsl:with-param name="position" select="position()"/>
|
|
223
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
224
|
+
<xsl:with-param name="role" select="$role"/>
|
|
225
|
+
<xsl:with-param name="type" select="$type"/>
|
|
226
|
+
<xsl:sort select="translate(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
227
|
+
</xsl:apply-templates>
|
|
228
|
+
</dl>
|
|
229
|
+
</div>
|
|
230
|
+
</xsl:if>
|
|
231
|
+
</xsl:template>
|
|
232
|
+
|
|
233
|
+
<xsl:template match="d:indexterm" mode="index-symbol-div">
|
|
234
|
+
<xsl:param name="scope" select="/"/>
|
|
235
|
+
<xsl:param name="role" select="''"/>
|
|
236
|
+
<xsl:param name="type" select="''"/>
|
|
237
|
+
|
|
238
|
+
<xsl:variable name="key" select="translate(substring(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 1, 1), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ','AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
239
|
+
|
|
240
|
+
<xsl:apply-templates select="key('letter', $key) [count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][count(.|key('primary', normalize-space(concat(d:primary/@sortas, " ", d:primary)))[1]) = 1]" mode="index-primary">
|
|
241
|
+
<xsl:with-param name="position" select="position()"/>
|
|
242
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
243
|
+
<xsl:with-param name="role" select="$role"/>
|
|
244
|
+
<xsl:with-param name="type" select="$type"/>
|
|
245
|
+
<xsl:sort select="translate(normalize-space(concat(d:primary/@sortas, " ", d:primary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
246
|
+
</xsl:apply-templates>
|
|
247
|
+
</xsl:template>
|
|
248
|
+
|
|
249
|
+
<xsl:template match="d:indexterm" mode="index-primary">
|
|
250
|
+
<xsl:param name="scope" select="."/>
|
|
251
|
+
<xsl:param name="role" select="''"/>
|
|
252
|
+
<xsl:param name="type" select="''"/>
|
|
253
|
+
|
|
254
|
+
<xsl:variable name="key" select="normalize-space(concat(d:primary/@sortas, " ", d:primary))"/>
|
|
255
|
+
<xsl:variable name="refs" select="key('primary', $key)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]"/>
|
|
256
|
+
<dt>
|
|
257
|
+
<xsl:if test="$autolink.index.see != 0">
|
|
258
|
+
<!-- add internal id attribute to form see and seealso links -->
|
|
259
|
+
<xsl:attribute name="id">
|
|
260
|
+
<xsl:value-of select="concat('ientry-', generate-id())"/>
|
|
261
|
+
</xsl:attribute>
|
|
262
|
+
</xsl:if>
|
|
263
|
+
<xsl:for-each select="$refs/d:primary">
|
|
264
|
+
<xsl:if test="@id or @xml:id">
|
|
265
|
+
<xsl:choose>
|
|
266
|
+
<xsl:when test="$generate.id.attributes = 0">
|
|
267
|
+
<a id="{(@id|@xml:id)[1]}"/>
|
|
268
|
+
</xsl:when>
|
|
269
|
+
<xsl:otherwise>
|
|
270
|
+
<span>
|
|
271
|
+
<xsl:call-template name="id.attribute"/>
|
|
272
|
+
</span>
|
|
273
|
+
</xsl:otherwise>
|
|
274
|
+
</xsl:choose>
|
|
275
|
+
</xsl:if>
|
|
276
|
+
</xsl:for-each>
|
|
277
|
+
<xsl:value-of select="d:primary"/>
|
|
278
|
+
<xsl:choose>
|
|
279
|
+
<xsl:when test="$index.links.to.section = 1">
|
|
280
|
+
<xsl:for-each select="$refs[@zone != '' or generate-id() = generate-id(key('primary-section', concat($key, " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()])))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]">
|
|
281
|
+
<xsl:apply-templates select="." mode="reference">
|
|
282
|
+
<xsl:with-param name="position" select="position()"/>
|
|
283
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
284
|
+
<xsl:with-param name="role" select="$role"/>
|
|
285
|
+
<xsl:with-param name="type" select="$type"/>
|
|
286
|
+
</xsl:apply-templates>
|
|
287
|
+
</xsl:for-each>
|
|
288
|
+
</xsl:when>
|
|
289
|
+
<xsl:otherwise>
|
|
290
|
+
<xsl:for-each select="$refs[not(d:see) and not(d:secondary)][count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]">
|
|
291
|
+
<xsl:apply-templates select="." mode="reference">
|
|
292
|
+
<xsl:with-param name="position" select="position()"/>
|
|
293
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
294
|
+
<xsl:with-param name="role" select="$role"/>
|
|
295
|
+
<xsl:with-param name="type" select="$type"/>
|
|
296
|
+
</xsl:apply-templates>
|
|
297
|
+
</xsl:for-each>
|
|
298
|
+
</xsl:otherwise>
|
|
299
|
+
</xsl:choose>
|
|
300
|
+
|
|
301
|
+
<xsl:if test="$refs[not(d:secondary)]/*[self::d:see]">
|
|
302
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", " ", " ", d:see))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-see">
|
|
303
|
+
<xsl:with-param name="position" select="position()"/>
|
|
304
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
305
|
+
<xsl:with-param name="role" select="$role"/>
|
|
306
|
+
<xsl:with-param name="type" select="$type"/>
|
|
307
|
+
<xsl:sort select="translate(d:see, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
308
|
+
</xsl:apply-templates>
|
|
309
|
+
</xsl:if>
|
|
310
|
+
</dt>
|
|
311
|
+
<xsl:choose>
|
|
312
|
+
<xsl:when test="$refs/d:secondary or $refs[not(d:secondary)]/*[self::d:seealso]">
|
|
313
|
+
<dd>
|
|
314
|
+
<dl>
|
|
315
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", " ", " ", d:seealso))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-seealso">
|
|
316
|
+
<xsl:with-param name="position" select="position()"/>
|
|
317
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
318
|
+
<xsl:with-param name="role" select="$role"/>
|
|
319
|
+
<xsl:with-param name="type" select="$type"/>
|
|
320
|
+
<xsl:sort select="translate(d:seealso, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
321
|
+
</xsl:apply-templates>
|
|
322
|
+
<xsl:apply-templates select="$refs[d:secondary and count(.|key('secondary', concat($key, " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary))))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]" mode="index-secondary">
|
|
323
|
+
<xsl:with-param name="position" select="position()"/>
|
|
324
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
325
|
+
<xsl:with-param name="role" select="$role"/>
|
|
326
|
+
<xsl:with-param name="type" select="$type"/>
|
|
327
|
+
<xsl:sort select="translate(normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
328
|
+
</xsl:apply-templates>
|
|
329
|
+
</dl>
|
|
330
|
+
</dd>
|
|
331
|
+
</xsl:when>
|
|
332
|
+
<!-- HTML5 requires dd for each dt -->
|
|
333
|
+
<xsl:when test="$div.element = 'section'">
|
|
334
|
+
<dd/>
|
|
335
|
+
</xsl:when>
|
|
336
|
+
</xsl:choose>
|
|
337
|
+
</xsl:template>
|
|
338
|
+
|
|
339
|
+
<xsl:template match="d:indexterm" mode="index-secondary">
|
|
340
|
+
<xsl:param name="scope" select="."/>
|
|
341
|
+
<xsl:param name="role" select="''"/>
|
|
342
|
+
<xsl:param name="type" select="''"/>
|
|
343
|
+
|
|
344
|
+
<xsl:variable name="key" select="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)))"/>
|
|
345
|
+
<xsl:variable name="refs" select="key('secondary', $key)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]"/>
|
|
346
|
+
<dt>
|
|
347
|
+
<xsl:for-each select="$refs/d:secondary">
|
|
348
|
+
<xsl:if test="@id or @xml:id">
|
|
349
|
+
<xsl:choose>
|
|
350
|
+
<xsl:when test="$generate.id.attributes = 0">
|
|
351
|
+
<a id="{(@id|@xml:id)[1]}"/>
|
|
352
|
+
</xsl:when>
|
|
353
|
+
<xsl:otherwise>
|
|
354
|
+
<span>
|
|
355
|
+
<xsl:call-template name="id.attribute"/>
|
|
356
|
+
</span>
|
|
357
|
+
</xsl:otherwise>
|
|
358
|
+
</xsl:choose>
|
|
359
|
+
</xsl:if>
|
|
360
|
+
</xsl:for-each>
|
|
361
|
+
<xsl:value-of select="d:secondary"/>
|
|
362
|
+
<xsl:choose>
|
|
363
|
+
<xsl:when test="$index.links.to.section = 1">
|
|
364
|
+
<xsl:for-each select="$refs[@zone != '' or generate-id() = generate-id(key('secondary-section', concat($key, " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()])))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]">
|
|
365
|
+
<xsl:apply-templates select="." mode="reference">
|
|
366
|
+
<xsl:with-param name="position" select="position()"/>
|
|
367
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
368
|
+
<xsl:with-param name="role" select="$role"/>
|
|
369
|
+
<xsl:with-param name="type" select="$type"/>
|
|
370
|
+
</xsl:apply-templates>
|
|
371
|
+
</xsl:for-each>
|
|
372
|
+
</xsl:when>
|
|
373
|
+
<xsl:otherwise>
|
|
374
|
+
<xsl:for-each select="$refs[not(d:see) and not(d:tertiary)][count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]">
|
|
375
|
+
<xsl:apply-templates select="." mode="reference">
|
|
376
|
+
<xsl:with-param name="position" select="position()"/>
|
|
377
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
378
|
+
<xsl:with-param name="role" select="$role"/>
|
|
379
|
+
<xsl:with-param name="type" select="$type"/>
|
|
380
|
+
</xsl:apply-templates>
|
|
381
|
+
</xsl:for-each>
|
|
382
|
+
</xsl:otherwise>
|
|
383
|
+
</xsl:choose>
|
|
384
|
+
|
|
385
|
+
<xsl:if test="$refs[not(d:tertiary)]/*[self::d:see]">
|
|
386
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", " ", d:see))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-see">
|
|
387
|
+
<xsl:with-param name="position" select="position()"/>
|
|
388
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
389
|
+
<xsl:with-param name="role" select="$role"/>
|
|
390
|
+
<xsl:with-param name="type" select="$type"/>
|
|
391
|
+
<xsl:sort select="translate(d:see, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
392
|
+
</xsl:apply-templates>
|
|
393
|
+
</xsl:if>
|
|
394
|
+
</dt>
|
|
395
|
+
<xsl:choose>
|
|
396
|
+
<xsl:when test="$refs/d:tertiary or $refs[not(d:tertiary)]/*[self::d:seealso]">
|
|
397
|
+
<dd>
|
|
398
|
+
<dl>
|
|
399
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", " ", d:seealso))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-seealso">
|
|
400
|
+
<xsl:with-param name="position" select="position()"/>
|
|
401
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
402
|
+
<xsl:with-param name="role" select="$role"/>
|
|
403
|
+
<xsl:with-param name="type" select="$type"/>
|
|
404
|
+
<xsl:sort select="translate(d:seealso, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
405
|
+
</xsl:apply-templates>
|
|
406
|
+
<xsl:apply-templates select="$refs[d:tertiary and count(.|key('tertiary', concat($key, " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary))))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]) = 1]" mode="index-tertiary">
|
|
407
|
+
<xsl:with-param name="position" select="position()"/>
|
|
408
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
409
|
+
<xsl:with-param name="role" select="$role"/>
|
|
410
|
+
<xsl:with-param name="type" select="$type"/>
|
|
411
|
+
<xsl:sort select="translate(normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
412
|
+
</xsl:apply-templates>
|
|
413
|
+
</dl>
|
|
414
|
+
</dd>
|
|
415
|
+
</xsl:when>
|
|
416
|
+
<!-- HTML5 requires dd for each dt -->
|
|
417
|
+
<xsl:when test="$div.element = 'section'">
|
|
418
|
+
<dd/>
|
|
419
|
+
</xsl:when>
|
|
420
|
+
</xsl:choose>
|
|
421
|
+
</xsl:template>
|
|
422
|
+
|
|
423
|
+
<xsl:template match="d:indexterm" mode="index-tertiary">
|
|
424
|
+
<xsl:param name="scope" select="."/>
|
|
425
|
+
<xsl:param name="role" select="''"/>
|
|
426
|
+
<xsl:param name="type" select="''"/>
|
|
427
|
+
|
|
428
|
+
<xsl:variable name="key" select="concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)))"/>
|
|
429
|
+
<xsl:variable name="refs" select="key('tertiary', $key)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]"/>
|
|
430
|
+
<dt>
|
|
431
|
+
<xsl:for-each select="$refs/d:tertiary">
|
|
432
|
+
<xsl:if test="@id or @xml:id">
|
|
433
|
+
<xsl:choose>
|
|
434
|
+
<xsl:when test="$generate.id.attributes = 0">
|
|
435
|
+
<a id="{(@id|@xml:id)[1]}"/>
|
|
436
|
+
</xsl:when>
|
|
437
|
+
<xsl:otherwise>
|
|
438
|
+
<span>
|
|
439
|
+
<xsl:call-template name="id.attribute"/>
|
|
440
|
+
</span>
|
|
441
|
+
</xsl:otherwise>
|
|
442
|
+
</xsl:choose>
|
|
443
|
+
</xsl:if>
|
|
444
|
+
</xsl:for-each>
|
|
445
|
+
<xsl:value-of select="d:tertiary"/>
|
|
446
|
+
<xsl:choose>
|
|
447
|
+
<xsl:when test="$index.links.to.section = 1">
|
|
448
|
+
<xsl:for-each select="$refs[@zone != '' or generate-id() = generate-id(key('tertiary-section', concat($key, " ", generate-id((ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()])))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]">
|
|
449
|
+
<xsl:apply-templates select="." mode="reference">
|
|
450
|
+
<xsl:with-param name="position" select="position()"/>
|
|
451
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
452
|
+
<xsl:with-param name="role" select="$role"/>
|
|
453
|
+
<xsl:with-param name="type" select="$type"/>
|
|
454
|
+
</xsl:apply-templates>
|
|
455
|
+
</xsl:for-each>
|
|
456
|
+
</xsl:when>
|
|
457
|
+
<xsl:otherwise>
|
|
458
|
+
<xsl:for-each select="$refs[not(d:see)][count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]">
|
|
459
|
+
<xsl:apply-templates select="." mode="reference">
|
|
460
|
+
<xsl:with-param name="position" select="position()"/>
|
|
461
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
462
|
+
<xsl:with-param name="role" select="$role"/>
|
|
463
|
+
<xsl:with-param name="type" select="$type"/>
|
|
464
|
+
</xsl:apply-templates>
|
|
465
|
+
</xsl:for-each>
|
|
466
|
+
</xsl:otherwise>
|
|
467
|
+
</xsl:choose>
|
|
468
|
+
|
|
469
|
+
<xsl:if test="$refs/d:see">
|
|
470
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), " ", d:see))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-see">
|
|
471
|
+
<xsl:with-param name="position" select="position()"/>
|
|
472
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
473
|
+
<xsl:with-param name="role" select="$role"/>
|
|
474
|
+
<xsl:with-param name="type" select="$type"/>
|
|
475
|
+
<xsl:sort select="translate(d:see, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
476
|
+
</xsl:apply-templates>
|
|
477
|
+
</xsl:if>
|
|
478
|
+
</dt>
|
|
479
|
+
<xsl:choose>
|
|
480
|
+
<xsl:when test="$refs/d:seealso">
|
|
481
|
+
<dd>
|
|
482
|
+
<dl>
|
|
483
|
+
<xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(normalize-space(concat(d:primary/@sortas, " ", d:primary)), " ", normalize-space(concat(d:secondary/@sortas, " ", d:secondary)), " ", normalize-space(concat(d:tertiary/@sortas, " ", d:tertiary)), " ", d:seealso))[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1])]" mode="index-seealso">
|
|
484
|
+
<xsl:with-param name="position" select="position()"/>
|
|
485
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
486
|
+
<xsl:with-param name="role" select="$role"/>
|
|
487
|
+
<xsl:with-param name="type" select="$type"/>
|
|
488
|
+
<xsl:sort select="translate(d:seealso, 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
489
|
+
</xsl:apply-templates>
|
|
490
|
+
</dl>
|
|
491
|
+
</dd>
|
|
492
|
+
</xsl:when>
|
|
493
|
+
<!-- HTML5 requires dd for each dt -->
|
|
494
|
+
<xsl:when test="$div.element = 'section'">
|
|
495
|
+
<dd/>
|
|
496
|
+
</xsl:when>
|
|
497
|
+
</xsl:choose>
|
|
498
|
+
</xsl:template>
|
|
499
|
+
|
|
500
|
+
<xsl:template match="d:indexterm" mode="reference">
|
|
501
|
+
<xsl:param name="scope" select="."/>
|
|
502
|
+
<xsl:param name="role" select="''"/>
|
|
503
|
+
<xsl:param name="type" select="''"/>
|
|
504
|
+
<xsl:param name="position"/>
|
|
505
|
+
<xsl:param name="separator" select="''"/>
|
|
506
|
+
|
|
507
|
+
<xsl:variable name="term.separator">
|
|
508
|
+
<xsl:call-template name="index.separator">
|
|
509
|
+
<xsl:with-param name="key" select="'index.term.separator'"/>
|
|
510
|
+
</xsl:call-template>
|
|
511
|
+
</xsl:variable>
|
|
512
|
+
|
|
513
|
+
<xsl:variable name="number.separator">
|
|
514
|
+
<xsl:call-template name="index.separator">
|
|
515
|
+
<xsl:with-param name="key" select="'index.number.separator'"/>
|
|
516
|
+
</xsl:call-template>
|
|
517
|
+
</xsl:variable>
|
|
518
|
+
|
|
519
|
+
<xsl:variable name="range.separator">
|
|
520
|
+
<xsl:call-template name="index.separator">
|
|
521
|
+
<xsl:with-param name="key" select="'index.range.separator'"/>
|
|
522
|
+
</xsl:call-template>
|
|
523
|
+
</xsl:variable>
|
|
524
|
+
|
|
525
|
+
<xsl:choose>
|
|
526
|
+
<xsl:when test="$separator != ''">
|
|
527
|
+
<xsl:value-of select="$separator"/>
|
|
528
|
+
</xsl:when>
|
|
529
|
+
<xsl:when test="$position = 1">
|
|
530
|
+
<xsl:value-of select="$term.separator"/>
|
|
531
|
+
</xsl:when>
|
|
532
|
+
<xsl:otherwise>
|
|
533
|
+
<xsl:value-of select="$number.separator"/>
|
|
534
|
+
</xsl:otherwise>
|
|
535
|
+
</xsl:choose>
|
|
536
|
+
|
|
537
|
+
<xsl:choose>
|
|
538
|
+
<xsl:when test="@zone and string(@zone)">
|
|
539
|
+
<xsl:call-template name="reference">
|
|
540
|
+
<xsl:with-param name="zones" select="normalize-space(@zone)"/>
|
|
541
|
+
<xsl:with-param name="position" select="position()"/>
|
|
542
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
543
|
+
<xsl:with-param name="role" select="$role"/>
|
|
544
|
+
<xsl:with-param name="type" select="$type"/>
|
|
545
|
+
</xsl:call-template>
|
|
546
|
+
</xsl:when>
|
|
547
|
+
<xsl:otherwise>
|
|
548
|
+
<a>
|
|
549
|
+
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
550
|
+
<xsl:variable name="title">
|
|
551
|
+
<xsl:choose>
|
|
552
|
+
<xsl:when test="$index.prefer.titleabbrev != 0">
|
|
553
|
+
<xsl:apply-templates select="(ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]" mode="titleabbrev.markup"/>
|
|
554
|
+
</xsl:when>
|
|
555
|
+
<xsl:otherwise>
|
|
556
|
+
<xsl:apply-templates select="(ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]" mode="title.markup"/>
|
|
557
|
+
</xsl:otherwise>
|
|
558
|
+
</xsl:choose>
|
|
559
|
+
</xsl:variable>
|
|
560
|
+
|
|
561
|
+
<xsl:attribute name="href">
|
|
562
|
+
<xsl:choose>
|
|
563
|
+
<xsl:when test="$index.links.to.section = 1">
|
|
564
|
+
<xsl:call-template name="href.target">
|
|
565
|
+
<xsl:with-param name="object" select="(ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]"/>
|
|
566
|
+
<xsl:with-param name="context" select="(//d:index[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))] | //d:setindex[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))])[1]"/>
|
|
567
|
+
</xsl:call-template>
|
|
568
|
+
</xsl:when>
|
|
569
|
+
<xsl:otherwise>
|
|
570
|
+
<xsl:call-template name="href.target">
|
|
571
|
+
<xsl:with-param name="object" select="."/>
|
|
572
|
+
<xsl:with-param name="context" select="(//d:index[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))] | //d:setindex[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))])[1]"/>
|
|
573
|
+
</xsl:call-template>
|
|
574
|
+
</xsl:otherwise>
|
|
575
|
+
</xsl:choose>
|
|
576
|
+
|
|
577
|
+
</xsl:attribute>
|
|
578
|
+
|
|
579
|
+
<xsl:value-of select="$title"/> <!-- text only -->
|
|
580
|
+
</a>
|
|
581
|
+
|
|
582
|
+
<xsl:variable name="id" select="(@id|@xml:id)[1]"/>
|
|
583
|
+
<xsl:if test="key('endofrange', $id)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))]">
|
|
584
|
+
<xsl:apply-templates select="key('endofrange', $id)[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][last()]" mode="reference">
|
|
585
|
+
<xsl:with-param name="position" select="position()"/>
|
|
586
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
587
|
+
<xsl:with-param name="role" select="$role"/>
|
|
588
|
+
<xsl:with-param name="type" select="$type"/>
|
|
589
|
+
<xsl:with-param name="separator" select="$range.separator"/>
|
|
590
|
+
</xsl:apply-templates>
|
|
591
|
+
</xsl:if>
|
|
592
|
+
</xsl:otherwise>
|
|
593
|
+
</xsl:choose>
|
|
594
|
+
</xsl:template>
|
|
595
|
+
|
|
596
|
+
<xsl:template name="reference">
|
|
597
|
+
<xsl:param name="scope" select="."/>
|
|
598
|
+
<xsl:param name="role" select="''"/>
|
|
599
|
+
<xsl:param name="type" select="''"/>
|
|
600
|
+
<xsl:param name="zones"/>
|
|
601
|
+
|
|
602
|
+
<xsl:choose>
|
|
603
|
+
<xsl:when test="contains($zones, ' ')">
|
|
604
|
+
<xsl:variable name="zone" select="substring-before($zones, ' ')"/>
|
|
605
|
+
<xsl:variable name="target" select="key('sections', $zone)"/>
|
|
606
|
+
|
|
607
|
+
<a>
|
|
608
|
+
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
609
|
+
<xsl:call-template name="id.attribute"/>
|
|
610
|
+
<xsl:attribute name="href">
|
|
611
|
+
<xsl:call-template name="href.target">
|
|
612
|
+
<xsl:with-param name="object" select="$target[1]"/>
|
|
613
|
+
<xsl:with-param name="context" select="//d:index[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]"/>
|
|
614
|
+
</xsl:call-template>
|
|
615
|
+
</xsl:attribute>
|
|
616
|
+
<xsl:apply-templates select="$target[1]" mode="index-title-content"/>
|
|
617
|
+
</a>
|
|
618
|
+
<xsl:text>, </xsl:text>
|
|
619
|
+
<xsl:call-template name="reference">
|
|
620
|
+
<xsl:with-param name="zones" select="substring-after($zones, ' ')"/>
|
|
621
|
+
<xsl:with-param name="position" select="position()"/>
|
|
622
|
+
<xsl:with-param name="scope" select="$scope"/>
|
|
623
|
+
<xsl:with-param name="role" select="$role"/>
|
|
624
|
+
<xsl:with-param name="type" select="$type"/>
|
|
625
|
+
</xsl:call-template>
|
|
626
|
+
</xsl:when>
|
|
627
|
+
<xsl:otherwise>
|
|
628
|
+
<xsl:variable name="zone" select="$zones"/>
|
|
629
|
+
<xsl:variable name="target" select="key('sections', $zone)"/>
|
|
630
|
+
|
|
631
|
+
<a>
|
|
632
|
+
<xsl:apply-templates select="." mode="class.attribute"/>
|
|
633
|
+
<xsl:call-template name="id.attribute"/>
|
|
634
|
+
<xsl:attribute name="href">
|
|
635
|
+
<xsl:call-template name="href.target">
|
|
636
|
+
<xsl:with-param name="object" select="$target[1]"/>
|
|
637
|
+
<xsl:with-param name="context" select="//d:index[count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))][1]"/>
|
|
638
|
+
</xsl:call-template>
|
|
639
|
+
</xsl:attribute>
|
|
640
|
+
<xsl:apply-templates select="$target[1]" mode="index-title-content"/>
|
|
641
|
+
</a>
|
|
642
|
+
</xsl:otherwise>
|
|
643
|
+
</xsl:choose>
|
|
644
|
+
</xsl:template>
|
|
645
|
+
|
|
646
|
+
<xsl:template match="d:indexterm" mode="index-see">
|
|
647
|
+
<xsl:param name="scope" select="."/>
|
|
648
|
+
<xsl:param name="role" select="''"/>
|
|
649
|
+
<xsl:param name="type" select="''"/>
|
|
650
|
+
|
|
651
|
+
<xsl:variable name="see" select="normalize-space(d:see)"/>
|
|
652
|
+
|
|
653
|
+
<!-- can only link to primary, which should appear before comma
|
|
654
|
+
in see "primary, secondary" entry -->
|
|
655
|
+
<xsl:variable name="seeprimary">
|
|
656
|
+
<xsl:choose>
|
|
657
|
+
<xsl:when test="contains($see, ',')">
|
|
658
|
+
<xsl:value-of select="substring-before($see, ',')"/>
|
|
659
|
+
</xsl:when>
|
|
660
|
+
<xsl:otherwise>
|
|
661
|
+
<xsl:value-of select="$see"/>
|
|
662
|
+
</xsl:otherwise>
|
|
663
|
+
</xsl:choose>
|
|
664
|
+
</xsl:variable>
|
|
665
|
+
|
|
666
|
+
<xsl:variable name="seetarget" select="key('primaryonly', $seeprimary)[1]"/>
|
|
667
|
+
|
|
668
|
+
<xsl:variable name="linkend">
|
|
669
|
+
<xsl:if test="$seetarget">
|
|
670
|
+
<xsl:value-of select="concat('#ientry-', generate-id($seetarget))"/>
|
|
671
|
+
</xsl:if>
|
|
672
|
+
</xsl:variable>
|
|
673
|
+
|
|
674
|
+
<xsl:text> (</xsl:text>
|
|
675
|
+
<xsl:call-template name="gentext">
|
|
676
|
+
<xsl:with-param name="key" select="'see'"/>
|
|
677
|
+
</xsl:call-template>
|
|
678
|
+
<xsl:text> </xsl:text>
|
|
679
|
+
<xsl:choose>
|
|
680
|
+
<!-- manual links have precedence -->
|
|
681
|
+
<xsl:when test="d:see/@linkend or d:see/@xlink:href">
|
|
682
|
+
<xsl:call-template name="simple.xlink">
|
|
683
|
+
<xsl:with-param name="node" select="d:see"/>
|
|
684
|
+
<xsl:with-param name="content" select="$see"/>
|
|
685
|
+
</xsl:call-template>
|
|
686
|
+
</xsl:when>
|
|
687
|
+
<xsl:when test="$autolink.index.see = 0">
|
|
688
|
+
<xsl:value-of select="$see"/>
|
|
689
|
+
</xsl:when>
|
|
690
|
+
<xsl:when test="$seetarget">
|
|
691
|
+
<a href="{$linkend}">
|
|
692
|
+
<xsl:value-of select="$see"/>
|
|
693
|
+
</a>
|
|
694
|
+
</xsl:when>
|
|
695
|
+
<xsl:otherwise>
|
|
696
|
+
<xsl:value-of select="$see"/>
|
|
697
|
+
</xsl:otherwise>
|
|
698
|
+
</xsl:choose>
|
|
699
|
+
<xsl:text>)</xsl:text>
|
|
700
|
+
</xsl:template>
|
|
701
|
+
|
|
702
|
+
<xsl:template match="d:indexterm" mode="index-seealso">
|
|
703
|
+
<xsl:param name="scope" select="."/>
|
|
704
|
+
<xsl:param name="role" select="''"/>
|
|
705
|
+
<xsl:param name="type" select="''"/>
|
|
706
|
+
|
|
707
|
+
<xsl:for-each select="d:seealso">
|
|
708
|
+
<xsl:sort select="translate(., 'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ')"/>
|
|
709
|
+
|
|
710
|
+
<xsl:variable name="seealso" select="normalize-space(.)"/>
|
|
711
|
+
|
|
712
|
+
<!-- can only link to primary, which should appear before comma
|
|
713
|
+
in seealso "primary, secondary" entry -->
|
|
714
|
+
<xsl:variable name="seealsoprimary">
|
|
715
|
+
<xsl:choose>
|
|
716
|
+
<xsl:when test="contains($seealso, ',')">
|
|
717
|
+
<xsl:value-of select="substring-before($seealso, ',')"/>
|
|
718
|
+
</xsl:when>
|
|
719
|
+
<xsl:otherwise>
|
|
720
|
+
<xsl:value-of select="$seealso"/>
|
|
721
|
+
</xsl:otherwise>
|
|
722
|
+
</xsl:choose>
|
|
723
|
+
</xsl:variable>
|
|
724
|
+
|
|
725
|
+
<xsl:variable name="seealsotarget" select="key('primaryonly', $seealsoprimary)[1]"/>
|
|
726
|
+
|
|
727
|
+
<xsl:variable name="linkend">
|
|
728
|
+
<xsl:if test="$seealsotarget">
|
|
729
|
+
<xsl:value-of select="concat('#ientry-', generate-id($seealsotarget))"/>
|
|
730
|
+
</xsl:if>
|
|
731
|
+
</xsl:variable>
|
|
732
|
+
|
|
733
|
+
<dt>
|
|
734
|
+
<xsl:text>(</xsl:text>
|
|
735
|
+
<xsl:call-template name="gentext">
|
|
736
|
+
<xsl:with-param name="key" select="'seealso'"/>
|
|
737
|
+
</xsl:call-template>
|
|
738
|
+
<xsl:text> </xsl:text>
|
|
739
|
+
<xsl:choose>
|
|
740
|
+
<!-- manual links have precedence -->
|
|
741
|
+
<xsl:when test="@linkend or @xlink:href">
|
|
742
|
+
<xsl:call-template name="simple.xlink">
|
|
743
|
+
<xsl:with-param name="node" select="."/>
|
|
744
|
+
<xsl:with-param name="content" select="$seealso"/>
|
|
745
|
+
</xsl:call-template>
|
|
746
|
+
</xsl:when>
|
|
747
|
+
<xsl:when test="$autolink.index.see = 0">
|
|
748
|
+
<xsl:value-of select="$seealso"/>
|
|
749
|
+
</xsl:when>
|
|
750
|
+
<xsl:when test="$seealsotarget">
|
|
751
|
+
<a href="{$linkend}">
|
|
752
|
+
<xsl:value-of select="$seealso"/>
|
|
753
|
+
</a>
|
|
754
|
+
</xsl:when>
|
|
755
|
+
<xsl:otherwise>
|
|
756
|
+
<xsl:value-of select="$seealso"/>
|
|
757
|
+
</xsl:otherwise>
|
|
758
|
+
</xsl:choose>
|
|
759
|
+
<xsl:text>)</xsl:text>
|
|
760
|
+
</dt>
|
|
761
|
+
|
|
762
|
+
<xsl:if test="$div.element = 'section'">
|
|
763
|
+
<dd/>
|
|
764
|
+
</xsl:if>
|
|
765
|
+
</xsl:for-each>
|
|
766
|
+
</xsl:template>
|
|
767
|
+
|
|
768
|
+
<xsl:template match="*" mode="index-title-content">
|
|
769
|
+
<xsl:variable name="title">
|
|
770
|
+
<xsl:apply-templates select="(ancestor-or-self::d:set|ancestor-or-self::d:book|ancestor-or-self::d:part|ancestor-or-self::d:reference|ancestor-or-self::d:partintro|ancestor-or-self::d:chapter|ancestor-or-self::d:appendix|ancestor-or-self::d:preface|ancestor-or-self::d:article|ancestor-or-self::d:section|ancestor-or-self::d:sect1|ancestor-or-self::d:sect2|ancestor-or-self::d:sect3|ancestor-or-self::d:sect4|ancestor-or-self::d:sect5|ancestor-or-self::d:refentry|ancestor-or-self::d:refsect1|ancestor-or-self::d:refsect2|ancestor-or-self::d:refsect3|ancestor-or-self::d:simplesect|ancestor-or-self::d:bibliography|ancestor-or-self::d:glossary|ancestor-or-self::d:index|ancestor-or-self::d:webpage|ancestor-or-self::d:topic)[last()]" mode="title.markup"/>
|
|
771
|
+
</xsl:variable>
|
|
772
|
+
|
|
773
|
+
<xsl:value-of select="$title"/>
|
|
774
|
+
</xsl:template>
|
|
775
|
+
|
|
776
|
+
<xsl:template name="index.separator">
|
|
777
|
+
<xsl:param name="key" select="''"/>
|
|
778
|
+
<xsl:param name="lang">
|
|
779
|
+
<xsl:call-template name="l10n.language"/>
|
|
780
|
+
</xsl:param>
|
|
781
|
+
|
|
782
|
+
<xsl:choose>
|
|
783
|
+
<xsl:when test="$key = 'index.term.separator'">
|
|
784
|
+
<xsl:choose>
|
|
785
|
+
<!-- Use the override if not blank -->
|
|
786
|
+
<xsl:when test="$index.term.separator != ''">
|
|
787
|
+
<xsl:copy-of select="$index.term.separator"/>
|
|
788
|
+
</xsl:when>
|
|
789
|
+
<xsl:otherwise>
|
|
790
|
+
<xsl:call-template name="gentext.template">
|
|
791
|
+
<xsl:with-param name="lang" select="$lang"/>
|
|
792
|
+
<xsl:with-param name="context">index</xsl:with-param>
|
|
793
|
+
<xsl:with-param name="name">term-separator</xsl:with-param>
|
|
794
|
+
</xsl:call-template>
|
|
795
|
+
</xsl:otherwise>
|
|
796
|
+
</xsl:choose>
|
|
797
|
+
</xsl:when>
|
|
798
|
+
<xsl:when test="$key = 'index.number.separator'">
|
|
799
|
+
<xsl:choose>
|
|
800
|
+
<!-- Use the override if not blank -->
|
|
801
|
+
<xsl:when test="$index.number.separator != ''">
|
|
802
|
+
<xsl:copy-of select="$index.number.separator"/>
|
|
803
|
+
</xsl:when>
|
|
804
|
+
<xsl:otherwise>
|
|
805
|
+
<xsl:call-template name="gentext.template">
|
|
806
|
+
<xsl:with-param name="lang" select="$lang"/>
|
|
807
|
+
<xsl:with-param name="context">index</xsl:with-param>
|
|
808
|
+
<xsl:with-param name="name">number-separator</xsl:with-param>
|
|
809
|
+
</xsl:call-template>
|
|
810
|
+
</xsl:otherwise>
|
|
811
|
+
</xsl:choose>
|
|
812
|
+
</xsl:when>
|
|
813
|
+
<xsl:when test="$key = 'index.range.separator'">
|
|
814
|
+
<xsl:choose>
|
|
815
|
+
<!-- Use the override if not blank -->
|
|
816
|
+
<xsl:when test="$index.range.separator != ''">
|
|
817
|
+
<xsl:copy-of select="$index.range.separator"/>
|
|
818
|
+
</xsl:when>
|
|
819
|
+
<xsl:otherwise>
|
|
820
|
+
<xsl:call-template name="gentext.template">
|
|
821
|
+
<xsl:with-param name="lang" select="$lang"/>
|
|
822
|
+
<xsl:with-param name="context">index</xsl:with-param>
|
|
823
|
+
<xsl:with-param name="name">range-separator</xsl:with-param>
|
|
824
|
+
</xsl:call-template>
|
|
825
|
+
</xsl:otherwise>
|
|
826
|
+
</xsl:choose>
|
|
827
|
+
</xsl:when>
|
|
828
|
+
</xsl:choose>
|
|
829
|
+
</xsl:template>
|
|
830
|
+
|
|
831
|
+
</xsl:stylesheet>
|