metanorma-itu 1.0.16 → 1.1.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 +4 -4
- data/.github/workflows/macos.yml +0 -1
- data/.github/workflows/ubuntu.yml +10 -7
- data/.github/workflows/windows.yml +0 -1
- data/Rakefile +2 -0
- data/lib/asciidoctor/itu/biblio.rng +14 -4
- data/lib/asciidoctor/itu/cleanup.rb +72 -72
- data/lib/asciidoctor/itu/converter.rb +12 -17
- data/lib/asciidoctor/itu/isodoc.rng +444 -1
- data/lib/asciidoctor/itu/reqt.rng +23 -0
- data/lib/isodoc/itu.rb +1 -0
- data/lib/isodoc/itu/base_convert.rb +69 -17
- data/lib/isodoc/itu/html/_coverpage.scss +8 -2
- data/lib/isodoc/itu/html/html_itu_titlepage.html +1 -4
- data/lib/isodoc/itu/html/htmlstyle.scss +8 -4
- data/lib/isodoc/itu/html/itu.scss +3 -0
- data/lib/isodoc/itu/html/word_itu_intro.html +9 -1
- data/lib/isodoc/itu/html/word_itu_titlepage.html +1 -4
- data/lib/isodoc/itu/html/wordstyle.scss +5 -5
- data/lib/isodoc/itu/i18n-en.yaml +2 -1
- data/lib/isodoc/itu/itu.recommendation-annex.xsl +1218 -417
- data/lib/isodoc/itu/itu.recommendation.xsl +1218 -417
- data/lib/isodoc/itu/itu.resolution.xsl +1218 -417
- data/lib/isodoc/itu/metadata.rb +13 -5
- data/lib/isodoc/itu/pdf_convert.rb +0 -13
- data/lib/isodoc/itu/presentation_xml_convert.rb +10 -0
- data/lib/isodoc/itu/ref.rb +38 -15
- data/lib/isodoc/itu/terms.rb +9 -22
- data/lib/isodoc/itu/word_convert.rb +6 -7
- data/lib/isodoc/itu/xref.rb +43 -12
- data/lib/metanorma/itu/processor.rb +6 -8
- data/lib/metanorma/itu/version.rb +1 -1
- data/metanorma-itu.gemspec +3 -2
- metadata +25 -11
@@ -1,4 +1,4 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" version="1.0">
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
|
2
2
|
|
3
3
|
<xsl:output method="xml" encoding="UTF-8" indent="no"/>
|
4
4
|
|
@@ -26,8 +26,9 @@
|
|
26
26
|
</xsl:call-template>
|
27
27
|
</xsl:variable>
|
28
28
|
<xsl:variable name="doctype">
|
29
|
-
<xsl:
|
30
|
-
|
29
|
+
<xsl:call-template name="capitalize">
|
30
|
+
<xsl:with-param name="str" select="/itu:itu-standard/itu:bibdata/itu:ext/itu:doctype"/>
|
31
|
+
</xsl:call-template>
|
31
32
|
</xsl:variable>
|
32
33
|
|
33
34
|
|
@@ -51,8 +52,6 @@
|
|
51
52
|
<xsl:apply-templates select="/itu:itu-standard/itu:annex" mode="contents"/>
|
52
53
|
<xsl:apply-templates select="/itu:itu-standard/itu:bibliography/itu:references[position() != 1]" mode="contents"/> <!-- @id = 'bibliography' -->
|
53
54
|
|
54
|
-
<xsl:apply-templates select="//itu3" mode="contents"/>
|
55
|
-
|
56
55
|
<xsl:apply-templates select="//itu:table" mode="contents"/>
|
57
56
|
|
58
57
|
</contents>
|
@@ -121,42 +120,7 @@
|
|
121
120
|
</fo:page-sequence-master>
|
122
121
|
</fo:layout-master-set>
|
123
122
|
|
124
|
-
<
|
125
|
-
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
126
|
-
<pdf:dictionary type="normal" key="ViewerPreferences">
|
127
|
-
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
128
|
-
</pdf:dictionary>
|
129
|
-
</pdf:catalog>
|
130
|
-
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
131
|
-
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
132
|
-
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
|
133
|
-
<!-- Dublin Core properties go here -->
|
134
|
-
<dc:title><xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:title[@type='main']"/></dc:title>
|
135
|
-
<dc:creator><xsl:value-of select="/itu:iso-standard/itu:bibdata/itu:contributor[itu:role/@type='author']/itu:organization/itu:name"/></dc:creator>
|
136
|
-
<dc:description>
|
137
|
-
<xsl:variable name="abstract">
|
138
|
-
<xsl:copy-of select="/itu:itu-standard/itu:bibdata/itu:abstract//text()"/>
|
139
|
-
</xsl:variable>
|
140
|
-
<xsl:value-of select="normalize-space($abstract)"/>
|
141
|
-
</dc:description>
|
142
|
-
<pdf:Keywords>
|
143
|
-
<xsl:for-each select="/itu:itu-standard/itu:bibdata//itu:keyword">
|
144
|
-
<xsl:sort data-type="text" order="ascending"/>
|
145
|
-
<xsl:apply-templates/>
|
146
|
-
<xsl:choose>
|
147
|
-
<xsl:when test="position() != last()">, </xsl:when>
|
148
|
-
<xsl:otherwise>.</xsl:otherwise>
|
149
|
-
</xsl:choose>
|
150
|
-
</xsl:for-each>
|
151
|
-
</pdf:Keywords>
|
152
|
-
</rdf:Description>
|
153
|
-
<rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
|
154
|
-
<!-- XMP properties go here -->
|
155
|
-
<xmp:CreatorTool/>
|
156
|
-
</rdf:Description>
|
157
|
-
</rdf:RDF>
|
158
|
-
</x:xmpmeta>
|
159
|
-
</fo:declarations>
|
123
|
+
<xsl:call-template name="addPDFUAmeta"/>
|
160
124
|
|
161
125
|
<!-- cover page -->
|
162
126
|
<fo:page-sequence master-reference="cover-page">
|
@@ -180,12 +144,12 @@
|
|
180
144
|
<fo:table-column column-width="35.8mm"/>
|
181
145
|
<fo:table-column column-width="67mm"/>
|
182
146
|
<fo:table-body>
|
183
|
-
<fo:table-row height="
|
147
|
+
<fo:table-row height="37.5mm"> <!-- 42.5mm -->
|
184
148
|
<fo:table-cell>
|
185
149
|
<fo:block> </fo:block>
|
186
150
|
</fo:table-cell>
|
187
151
|
<fo:table-cell number-columns-spanned="3">
|
188
|
-
<fo:block font-family="Arial" font-size="13pt" font-weight="bold" color="gray" margin-top="16pt"
|
152
|
+
<fo:block font-family="Arial" font-size="13pt" font-weight="bold" color="gray"> <!-- margin-top="16pt" letter-spacing="4pt", Helvetica for letter-spacing working -->
|
189
153
|
<fo:block><xsl:value-of select="$linebreak"/></fo:block>
|
190
154
|
<xsl:call-template name="addLetterSpacing">
|
191
155
|
<xsl:with-param name="text" select="/itu:itu-standard/itu:bibdata/itu:contributor[itu:role/@type='author']/itu:organization/itu:name"/>
|
@@ -226,7 +190,12 @@
|
|
226
190
|
<fo:table-cell text-align="right">
|
227
191
|
<xsl:if test="/itu:itu-standard/itu:bibdata/itu:ext/itu:structuredidentifier/itu:annexid">
|
228
192
|
<fo:block font-size="18pt" font-weight="bold">
|
229
|
-
|
193
|
+
<xsl:variable name="title-annex">
|
194
|
+
<xsl:call-template name="getTitle">
|
195
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
196
|
+
</xsl:call-template>
|
197
|
+
</xsl:variable>
|
198
|
+
<xsl:value-of select="$title-annex"/><xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:ext/itu:structuredidentifier/itu:annexid"/>
|
230
199
|
</fo:block>
|
231
200
|
</xsl:if>
|
232
201
|
<fo:block font-size="14pt">
|
@@ -236,29 +205,31 @@
|
|
236
205
|
</fo:block>
|
237
206
|
</fo:table-cell>
|
238
207
|
</fo:table-row>
|
239
|
-
<fo:table-row height="
|
208
|
+
<fo:table-row height="64mm"> <!-- 59mm -->
|
240
209
|
<fo:table-cell>
|
241
210
|
<fo:block> </fo:block>
|
242
211
|
</fo:table-cell>
|
243
|
-
<fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" padding-right="2mm">
|
244
|
-
<fo:block>
|
245
|
-
<
|
246
|
-
<xsl:
|
247
|
-
<xsl:
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
</fo:block>
|
253
|
-
<xsl:if test="/itu:itu-standard/itu:bibdata/itu:series">
|
254
|
-
<fo:block margin-top="6pt">
|
255
|
-
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:series[@type = 'secondary']"/>
|
256
|
-
<xsl:if test="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'tertiary']) != ''">
|
257
|
-
<xsl:text> — </xsl:text>
|
258
|
-
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:series[@type = 'tertiary']"/>
|
212
|
+
<fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" padding-right="2mm" display-align="after">
|
213
|
+
<fo:block padding-bottom="7mm">
|
214
|
+
<fo:block text-transform="uppercase">
|
215
|
+
<xsl:if test="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']) != ''">
|
216
|
+
<xsl:variable name="title">
|
217
|
+
<xsl:text>Series </xsl:text>
|
218
|
+
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']"/>
|
219
|
+
</xsl:variable>
|
220
|
+
<xsl:value-of select="$title"/>
|
259
221
|
</xsl:if>
|
260
222
|
</fo:block>
|
261
|
-
|
223
|
+
<xsl:if test="/itu:itu-standard/itu:bibdata/itu:series">
|
224
|
+
<fo:block margin-top="6pt">
|
225
|
+
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:series[@type = 'secondary']"/>
|
226
|
+
<xsl:if test="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'tertiary']) != ''">
|
227
|
+
<xsl:text> — </xsl:text>
|
228
|
+
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:series[@type = 'tertiary']"/>
|
229
|
+
</xsl:if>
|
230
|
+
</fo:block>
|
231
|
+
</xsl:if>
|
232
|
+
</fo:block>
|
262
233
|
</fo:table-cell>
|
263
234
|
</fo:table-row>
|
264
235
|
<fo:table-row height="40mm">
|
@@ -311,7 +282,12 @@
|
|
311
282
|
<xsl:text> </xsl:text>
|
312
283
|
<xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:ext/itu:structuredidentifier/itu:docnumber"/>
|
313
284
|
<xsl:if test="/itu:itu-standard/itu:bibdata/itu:ext/itu:structuredidentifier/itu:annexid">
|
314
|
-
<xsl:
|
285
|
+
<xsl:variable name="title-annex">
|
286
|
+
<xsl:call-template name="getTitle">
|
287
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
288
|
+
</xsl:call-template>
|
289
|
+
</xsl:variable>
|
290
|
+
<xsl:text> — </xsl:text><xsl:value-of select="$title-annex"/><xsl:value-of select="/itu:itu-standard/itu:bibdata/itu:ext/itu:structuredidentifier/itu:annexid"/>
|
315
291
|
</xsl:if>
|
316
292
|
</fo:block>
|
317
293
|
</fo:table-cell>
|
@@ -346,17 +322,15 @@
|
|
346
322
|
<xsl:value-of select="$linebreak"/>
|
347
323
|
</fo:block>
|
348
324
|
<fo:block font-weight="bold" margin-top="18pt" margin-bottom="18pt">
|
349
|
-
<xsl:
|
325
|
+
<xsl:variable name="title-keywords">
|
326
|
+
<xsl:call-template name="getTitle">
|
327
|
+
<xsl:with-param name="name" select="'title-keywords'"/>
|
328
|
+
</xsl:call-template>
|
329
|
+
</xsl:variable>
|
330
|
+
<xsl:value-of select="$title-keywords"/>
|
350
331
|
</fo:block>
|
351
332
|
<fo:block>
|
352
|
-
<xsl:
|
353
|
-
<xsl:sort data-type="text" order="ascending"/>
|
354
|
-
<xsl:apply-templates/>
|
355
|
-
<xsl:choose>
|
356
|
-
<xsl:when test="position() != last()">, </xsl:when>
|
357
|
-
<xsl:otherwise>.</xsl:otherwise>
|
358
|
-
</xsl:choose>
|
359
|
-
</xsl:for-each>
|
333
|
+
<xsl:call-template name="insertKeywords"/>
|
360
334
|
</fo:block>
|
361
335
|
</xsl:if>
|
362
336
|
|
@@ -379,8 +353,18 @@
|
|
379
353
|
<xsl:if test="xalan:nodeset($contents)//item">
|
380
354
|
<fo:block break-after="page"/>
|
381
355
|
<fo:block-container>
|
382
|
-
<
|
383
|
-
|
356
|
+
<xsl:variable name="title-toc">
|
357
|
+
<xsl:call-template name="getTitle">
|
358
|
+
<xsl:with-param name="name" select="'title-toc'"/>
|
359
|
+
</xsl:call-template>
|
360
|
+
</xsl:variable>
|
361
|
+
<xsl:variable name="title-page">
|
362
|
+
<xsl:call-template name="getTitle">
|
363
|
+
<xsl:with-param name="name" select="'title-page'"/>
|
364
|
+
</xsl:call-template>
|
365
|
+
</xsl:variable>
|
366
|
+
<fo:block margin-top="6pt" text-align="center" font-weight="bold"><xsl:value-of select="$title-toc"/></fo:block>
|
367
|
+
<fo:block margin-top="6pt" text-align="right" font-weight="bold"><xsl:value-of select="$title-page"/></fo:block>
|
384
368
|
|
385
369
|
<xsl:for-each select="xalan:nodeset($contents)//item">
|
386
370
|
<xsl:if test="@display = 'true'">
|
@@ -625,15 +609,21 @@
|
|
625
609
|
<xsl:template match="itu:figure" mode="contents">
|
626
610
|
<xsl:param name="sectionNum"/>
|
627
611
|
<item level="" id="{@id}" display="false" type="figure">
|
628
|
-
<xsl:variable name="title">
|
612
|
+
<xsl:variable name="title-figure">
|
613
|
+
<xsl:call-template name="getTitle">
|
614
|
+
<xsl:with-param name="name" select="'title-figure'"/>
|
615
|
+
</xsl:call-template>
|
616
|
+
</xsl:variable>
|
617
|
+
<xsl:variable name="title" select="$title-figure"/>
|
629
618
|
<xsl:attribute name="section">
|
630
619
|
<xsl:call-template name="getSection">
|
631
620
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
621
|
+
</xsl:call-template>
|
622
|
+
</xsl:attribute>
|
623
|
+
<xsl:attribute name="topsection">
|
624
|
+
<xsl:call-template name="getTopSection">
|
625
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
632
626
|
</xsl:call-template>
|
633
|
-
<!-- <xsl:text>Figure </xsl:text>
|
634
|
-
<xsl:call-template name="getItemNumber">
|
635
|
-
<xsl:with-param name="brackets" select="'false'"/>
|
636
|
-
</xsl:call-template> -->
|
637
627
|
</xsl:attribute>
|
638
628
|
<xsl:value-of select="$title"/>
|
639
629
|
<xsl:call-template name="getItemNumber">
|
@@ -648,13 +638,21 @@
|
|
648
638
|
<xsl:template match="itu:table" mode="contents">
|
649
639
|
<xsl:param name="sectionNum"/>
|
650
640
|
<item level="" id="{@id}" display="false" type="table">
|
651
|
-
<xsl:variable name="title">
|
641
|
+
<xsl:variable name="title-table">
|
642
|
+
<xsl:call-template name="getTitle">
|
643
|
+
<xsl:with-param name="name" select="'title-table'"/>
|
644
|
+
</xsl:call-template>
|
645
|
+
</xsl:variable>
|
646
|
+
<xsl:variable name="title" select="$title-table"/>
|
652
647
|
<xsl:attribute name="section">
|
653
648
|
<xsl:call-template name="getSection">
|
654
649
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
650
|
+
</xsl:call-template>
|
651
|
+
</xsl:attribute>
|
652
|
+
<xsl:attribute name="topsection">
|
653
|
+
<xsl:call-template name="getTopSection">
|
654
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
655
655
|
</xsl:call-template>
|
656
|
-
<!-- <xsl:text>Table </xsl:text>
|
657
|
-
<xsl:call-template name="getItemNumber"/> -->
|
658
656
|
</xsl:attribute>
|
659
657
|
<xsl:value-of select="$title"/>
|
660
658
|
<xsl:call-template name="getItemNumber">
|
@@ -670,23 +668,39 @@
|
|
670
668
|
<xsl:template match="itu:formula" mode="contents">
|
671
669
|
<xsl:param name="sectionNum"/>
|
672
670
|
<item level="" id="{@id}" display="false" type="formula">
|
671
|
+
<xsl:variable name="title-inequality">
|
672
|
+
<xsl:call-template name="getTitle">
|
673
|
+
<xsl:with-param name="name" select="'title-inequality'"/>
|
674
|
+
</xsl:call-template>
|
675
|
+
</xsl:variable>
|
676
|
+
<xsl:variable name="title-equation">
|
677
|
+
<xsl:call-template name="getTitle">
|
678
|
+
<xsl:with-param name="name" select="'title-equation'"/>
|
679
|
+
</xsl:call-template>
|
680
|
+
</xsl:variable>
|
673
681
|
<xsl:variable name="title">
|
674
682
|
<xsl:choose>
|
675
|
-
<xsl:when test="@inequality = 'true'"
|
676
|
-
<xsl:otherwise
|
683
|
+
<xsl:when test="@inequality = 'true'"><xsl:value-of select="$title-inequality"/></xsl:when>
|
684
|
+
<xsl:otherwise><xsl:value-of select="$title-equation"/></xsl:otherwise>
|
677
685
|
</xsl:choose>
|
678
686
|
</xsl:variable>
|
679
|
-
<xsl:
|
687
|
+
<xsl:variable name="section">
|
680
688
|
<xsl:call-template name="getSection">
|
681
689
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
682
690
|
</xsl:call-template>
|
683
|
-
|
684
|
-
|
685
|
-
|
691
|
+
</xsl:variable>
|
692
|
+
<xsl:attribute name="section">
|
693
|
+
<xsl:value-of select="$section"/>
|
694
|
+
</xsl:attribute>
|
686
695
|
<xsl:variable name="parent-element" select="local-name(..)"/>
|
687
696
|
<xsl:attribute name="parent">
|
697
|
+
<xsl:variable name="title-clause">
|
698
|
+
<xsl:call-template name="getTitle">
|
699
|
+
<xsl:with-param name="name" select="'title-clause'"/>
|
700
|
+
</xsl:call-template>
|
701
|
+
</xsl:variable>
|
688
702
|
<xsl:choose>
|
689
|
-
<xsl:when test="$parent-element = 'clause'"
|
703
|
+
<xsl:when test="$parent-element = 'clause'"><xsl:value-of select="normalize-space($title-clause)"/></xsl:when>
|
690
704
|
<xsl:otherwise/>
|
691
705
|
</xsl:choose>
|
692
706
|
</xsl:attribute>
|
@@ -698,6 +712,11 @@
|
|
698
712
|
<xsl:attribute name="number">
|
699
713
|
<xsl:value-of select="$itemNumber"/>
|
700
714
|
</xsl:attribute>
|
715
|
+
<xsl:attribute name="topsection">
|
716
|
+
<xsl:call-template name="getTopSection">
|
717
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
718
|
+
</xsl:call-template>
|
719
|
+
</xsl:attribute>
|
701
720
|
<xsl:value-of select="$title"/>
|
702
721
|
<xsl:value-of select="$itemNumber"/>
|
703
722
|
</item>
|
@@ -793,11 +812,21 @@
|
|
793
812
|
<xsl:variable name="parent-element" select="local-name(..)"/>
|
794
813
|
<item level="" id="{@id}" display="false" type="example" section="{$section}">
|
795
814
|
<xsl:attribute name="parent">
|
815
|
+
<xsl:variable name="title-clause">
|
816
|
+
<xsl:call-template name="getTitle">
|
817
|
+
<xsl:with-param name="name" select="'title-clause'"/>
|
818
|
+
</xsl:call-template>
|
819
|
+
</xsl:variable>
|
796
820
|
<xsl:choose>
|
797
|
-
<xsl:when test="$parent-element = 'clause'"
|
821
|
+
<xsl:when test="$parent-element = 'clause'"><xsl:value-of select="normalize-space($title-clause)"/></xsl:when>
|
798
822
|
<xsl:otherwise/>
|
799
823
|
</xsl:choose>
|
800
824
|
</xsl:attribute>
|
825
|
+
<xsl:attribute name="topsection">
|
826
|
+
<xsl:call-template name="getTopSection">
|
827
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
828
|
+
</xsl:call-template>
|
829
|
+
</xsl:attribute>
|
801
830
|
</item>
|
802
831
|
<xsl:apply-templates mode="contents">
|
803
832
|
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
@@ -816,6 +845,11 @@
|
|
816
845
|
</xsl:call-template>
|
817
846
|
</xsl:variable>
|
818
847
|
<item level="" id="{@id}" display="false" type="note" section="{$section}">
|
848
|
+
<xsl:attribute name="topsection">
|
849
|
+
<xsl:call-template name="getTopSection">
|
850
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
851
|
+
</xsl:call-template>
|
852
|
+
</xsl:attribute>
|
819
853
|
<xsl:number/>
|
820
854
|
</item>
|
821
855
|
<xsl:apply-templates mode="contents">
|
@@ -823,23 +857,6 @@
|
|
823
857
|
</xsl:apply-templates>
|
824
858
|
</xsl:template>
|
825
859
|
|
826
|
-
<xsl:template match="itu:termnote" mode="contents">
|
827
|
-
<xsl:param name="sectionNum"/>
|
828
|
-
<xsl:variable name="level">
|
829
|
-
<xsl:call-template name="getLevel"/>
|
830
|
-
</xsl:variable>
|
831
|
-
<xsl:variable name="section">
|
832
|
-
<xsl:call-template name="getSection">
|
833
|
-
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
834
|
-
</xsl:call-template>
|
835
|
-
</xsl:variable>
|
836
|
-
<item level="" id="{@id}" display="false" type="note" section="{$section}">
|
837
|
-
<xsl:number/>
|
838
|
-
</item>
|
839
|
-
<xsl:apply-templates mode="contents">
|
840
|
-
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
841
|
-
</xsl:apply-templates>
|
842
|
-
</xsl:template>
|
843
860
|
|
844
861
|
<xsl:template match="itu:note" mode="contents">
|
845
862
|
<xsl:param name="sectionNum"/>
|
@@ -854,6 +871,11 @@
|
|
854
871
|
</xsl:for-each>
|
855
872
|
</xsl:variable>
|
856
873
|
<item level="" id="{@id}" display="false" type="note" section="{$section}">
|
874
|
+
<xsl:attribute name="topsection">
|
875
|
+
<xsl:call-template name="getTopSection">
|
876
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
877
|
+
</xsl:call-template>
|
878
|
+
</xsl:attribute>
|
857
879
|
<xsl:number/>
|
858
880
|
</item>
|
859
881
|
<xsl:apply-templates mode="contents">
|
@@ -910,6 +932,18 @@
|
|
910
932
|
</xsl:otherwise>
|
911
933
|
</xsl:choose>
|
912
934
|
</xsl:template>
|
935
|
+
|
936
|
+
<xsl:template match="itu:xref" mode="contents">
|
937
|
+
<xsl:param name="sectionNum"/>
|
938
|
+
<item level="" id="{generate-id()}" display="false" type="xref">
|
939
|
+
|
940
|
+
<xsl:attribute name="topsection">
|
941
|
+
<xsl:call-template name="getTopSection">
|
942
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
943
|
+
</xsl:call-template>
|
944
|
+
</xsl:attribute>
|
945
|
+
</item>
|
946
|
+
</xsl:template>
|
913
947
|
|
914
948
|
<!-- ============================= -->
|
915
949
|
<!-- ============================= -->
|
@@ -925,8 +959,13 @@
|
|
925
959
|
<xsl:value-of select="$linebreak"/>
|
926
960
|
<xsl:value-of select="$linebreak"/>
|
927
961
|
</fo:block>
|
928
|
-
<fo:block font-weight="bold" margin-top="18pt" margin-bottom="18pt">
|
929
|
-
<xsl:
|
962
|
+
<fo:block font-weight="bold" margin-top="18pt" margin-bottom="18pt">
|
963
|
+
<xsl:variable name="title-summary">
|
964
|
+
<xsl:call-template name="getTitle">
|
965
|
+
<xsl:with-param name="name" select="'title-summary'"/>
|
966
|
+
</xsl:call-template>
|
967
|
+
</xsl:variable>
|
968
|
+
<xsl:value-of select="$title-summary"/>
|
930
969
|
</fo:block>
|
931
970
|
<xsl:apply-templates/>
|
932
971
|
</xsl:template>
|
@@ -952,14 +991,23 @@
|
|
952
991
|
<!-- PARAGRAPHS -->
|
953
992
|
<!-- ============================= -->
|
954
993
|
<xsl:template match="itu:p | itu:sections/itu:p">
|
994
|
+
<xsl:param name="sectionNum"/>
|
955
995
|
<fo:block margin-top="6pt">
|
956
996
|
<xsl:attribute name="text-align">
|
957
997
|
<xsl:choose>
|
958
998
|
<xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
|
999
|
+
<xsl:when test="ancestor::*[1][local-name() = 'td']/@align">
|
1000
|
+
<xsl:value-of select="ancestor::*[1][local-name() = 'td']/@align"/>
|
1001
|
+
</xsl:when>
|
1002
|
+
<xsl:when test="ancestor::*[1][local-name() = 'th']/@align">
|
1003
|
+
<xsl:value-of select="ancestor::*[1][local-name() = 'th']/@align"/>
|
1004
|
+
</xsl:when>
|
959
1005
|
<xsl:otherwise>justify</xsl:otherwise>
|
960
1006
|
</xsl:choose>
|
961
1007
|
</xsl:attribute>
|
962
|
-
<xsl:apply-templates
|
1008
|
+
<xsl:apply-templates>
|
1009
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
1010
|
+
</xsl:apply-templates>
|
963
1011
|
</fo:block>
|
964
1012
|
</xsl:template>
|
965
1013
|
|
@@ -975,7 +1023,12 @@
|
|
975
1023
|
<xsl:if test="ancestor::itu:figure">
|
976
1024
|
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
977
1025
|
</xsl:if>
|
978
|
-
<xsl:
|
1026
|
+
<xsl:variable name="title-note">
|
1027
|
+
<xsl:call-template name="getTitle">
|
1028
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
1029
|
+
</xsl:call-template>
|
1030
|
+
</xsl:variable>
|
1031
|
+
<xsl:value-of select="$title-note"/>
|
979
1032
|
<!-- <xsl:if test="../following-sibling::itu:note or ../preceding-sibling::itu:note"> -->
|
980
1033
|
<xsl:if test="count(//itu:note[ancestor::*[local-name() = 'clause'][1][@id = $id] and not (ancestor::itu:table)]) > 1">
|
981
1034
|
<xsl:number count="itu:note[ancestor::*[local-name() = 'clause'][1][@id = $id] and not (ancestor::itu:table)]" level="any"/>
|
@@ -1210,12 +1263,20 @@
|
|
1210
1263
|
</fo:block>
|
1211
1264
|
</xsl:template>
|
1212
1265
|
|
1266
|
+
<xsl:template match="itu:term">
|
1267
|
+
<xsl:param name="sectionNum"/>
|
1268
|
+
<fo:block id="{@id}">
|
1269
|
+
<xsl:apply-templates>
|
1270
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
1271
|
+
</xsl:apply-templates>
|
1272
|
+
</fo:block>
|
1273
|
+
</xsl:template>
|
1213
1274
|
|
1214
1275
|
<xsl:template match="itu:preferred">
|
1215
1276
|
<xsl:param name="sectionNum"/>
|
1216
1277
|
<!-- DEBUG need -->
|
1217
1278
|
<fo:block space-before="6pt" text-align="justify">
|
1218
|
-
<fo:inline
|
1279
|
+
<fo:inline padding-right="5mm" font-weight="bold">
|
1219
1280
|
<!-- <xsl:value-of select="$sectionNum"/><xsl:number format=".1" level="multiple" count="itu:clause/itu:clause | itu:clause/itu:terms | itu:terms/itu:term"/> -->
|
1220
1281
|
<xsl:variable name="level">
|
1221
1282
|
<xsl:call-template name="getLevel"/>
|
@@ -1239,7 +1300,15 @@
|
|
1239
1300
|
<xsl:apply-templates/>
|
1240
1301
|
</fo:inline>
|
1241
1302
|
<xsl:if test="../itu:termsource/itu:origin">
|
1242
|
-
<xsl:
|
1303
|
+
<xsl:variable name="citeas" select="../itu:termsource/itu:origin/@citeas"/>
|
1304
|
+
<xsl:choose>
|
1305
|
+
<xsl:when test="contains($citeas, '[')">
|
1306
|
+
<xsl:text> </xsl:text><xsl:value-of select="$citeas"/> <!-- disable-output-escaping="yes" -->
|
1307
|
+
</xsl:when>
|
1308
|
+
<xsl:otherwise>
|
1309
|
+
<xsl:text> [</xsl:text><xsl:value-of select="$citeas"/><xsl:text>]</xsl:text>
|
1310
|
+
</xsl:otherwise>
|
1311
|
+
</xsl:choose>
|
1243
1312
|
</xsl:if>
|
1244
1313
|
<xsl:text>: </xsl:text>
|
1245
1314
|
<xsl:apply-templates select="following-sibling::itu:definition/node()" mode="process"/> <!-- -->
|
@@ -1354,10 +1423,18 @@
|
|
1354
1423
|
<xsl:with-param name="brackets" select="'false'"/>
|
1355
1424
|
</xsl:call-template>
|
1356
1425
|
</xsl:variable>
|
1357
|
-
<xsl:
|
1358
|
-
<xsl:
|
1359
|
-
<xsl:
|
1360
|
-
|
1426
|
+
<xsl:choose>
|
1427
|
+
<xsl:when test="local-name(*) = 'figure' and normalize-space(itu:name) = ''"/><!-- don't show 'Figure' for outer figure without name -->
|
1428
|
+
<xsl:when test="$itemnumber != ''">
|
1429
|
+
<xsl:variable name="title-figure">
|
1430
|
+
<xsl:call-template name="getTitle">
|
1431
|
+
<xsl:with-param name="name" select="'title-figure'"/>
|
1432
|
+
</xsl:call-template>
|
1433
|
+
</xsl:variable>
|
1434
|
+
<xsl:value-of select="$title-figure"/>
|
1435
|
+
<xsl:value-of select="$itemnumber"/>
|
1436
|
+
</xsl:when>
|
1437
|
+
</xsl:choose>
|
1361
1438
|
<xsl:if test="itu:name">
|
1362
1439
|
<xsl:text> — </xsl:text>
|
1363
1440
|
<xsl:apply-templates select="itu:name" mode="process"/>
|
@@ -1416,18 +1493,6 @@
|
|
1416
1493
|
<xsl:template match="itu:docidentifier"/>
|
1417
1494
|
|
1418
1495
|
|
1419
|
-
|
1420
|
-
<xsl:template match="itu:annex2//itu:note/itu:p">
|
1421
|
-
<fo:block font-size="11pt" margin-top="4pt">
|
1422
|
-
<xsl:text>NOTE </xsl:text>
|
1423
|
-
<!-- <xsl:if test="../following-sibling::itu:note or ../preceding-sibling::itu:note"> -->
|
1424
|
-
<xsl:number count="itu:note"/><xsl:text> </xsl:text>
|
1425
|
-
<!-- </xsl:if> -->
|
1426
|
-
<xsl:text>– </xsl:text>
|
1427
|
-
<xsl:apply-templates/>
|
1428
|
-
</fo:block>
|
1429
|
-
</xsl:template>
|
1430
|
-
|
1431
1496
|
<xsl:template match="itu:ul | itu:ol | itu:sections/itu:ul | itu:sections/itu:ol">
|
1432
1497
|
<xsl:if test="preceding-sibling::*[1][local-name() = 'title']">
|
1433
1498
|
<fo:block padding-top="-8pt" font-size="1pt"> </fo:block>
|
@@ -1439,10 +1504,20 @@
|
|
1439
1504
|
</xsl:template>
|
1440
1505
|
|
1441
1506
|
<xsl:template match="itu:ul//itu:note | itu:ol//itu:note"/>
|
1507
|
+
<xsl:template match="itu:ul//itu:note | itu:ol//itu:note" mode="process">
|
1508
|
+
<fo:block id="{@id}">
|
1509
|
+
<xsl:apply-templates mode="process"/>
|
1510
|
+
</fo:block>
|
1511
|
+
</xsl:template>
|
1442
1512
|
<xsl:template match="itu:ul//itu:note/itu:p | itu:ol//itu:note/itu:p" mode="process">
|
1443
1513
|
<xsl:variable name="id" select="ancestor::*[local-name() = 'clause'][1]/@id"/>
|
1444
|
-
<fo:block font-size="11pt" margin-top="4pt">
|
1445
|
-
<xsl:
|
1514
|
+
<fo:block font-size="11pt" margin-top="4pt">
|
1515
|
+
<xsl:variable name="title-note">
|
1516
|
+
<xsl:call-template name="getTitle">
|
1517
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
1518
|
+
</xsl:call-template>
|
1519
|
+
</xsl:variable>
|
1520
|
+
<xsl:value-of select="$title-note"/>
|
1446
1521
|
<!-- <xsl:if test="../following-sibling::itu:note or ../preceding-sibling::itu:note"> -->
|
1447
1522
|
<xsl:if test="count(//itu:note[ancestor::*[@id = $id] and not (ancestor::itu:table)]) > 1">
|
1448
1523
|
<xsl:number count="itu:note[ancestor::*[@id = $id] and not (ancestor::itu:table)]" level="any"/>
|
@@ -1467,10 +1542,13 @@
|
|
1467
1542
|
<xsl:attribute name="margin-left">18mm</xsl:attribute>
|
1468
1543
|
</xsl:if>
|
1469
1544
|
<xsl:if test="local-name(..) = 'ul'">
|
1470
|
-
<xsl:attribute name="margin-left">
|
1471
|
-
<xsl:if test="
|
1472
|
-
<xsl:attribute name="margin-left">
|
1545
|
+
<xsl:attribute name="margin-left">7mm</xsl:attribute><!-- 15mm -->
|
1546
|
+
<xsl:if test="ancestor::itu:table">
|
1547
|
+
<xsl:attribute name="margin-left">4.5mm</xsl:attribute>
|
1473
1548
|
</xsl:if>
|
1549
|
+
<!-- <xsl:if test="count(ancestor::itu:ol) + count(ancestor::itu:ul) > 1">
|
1550
|
+
<xsl:attribute name="margin-left">7mm</xsl:attribute>
|
1551
|
+
</xsl:if> -->
|
1474
1552
|
</xsl:if>
|
1475
1553
|
<fo:block-container margin-left="0mm">
|
1476
1554
|
<xsl:apply-templates/>
|
@@ -1481,7 +1559,7 @@
|
|
1481
1559
|
</fo:list-item>
|
1482
1560
|
</xsl:template>
|
1483
1561
|
|
1484
|
-
<xsl:template match="itu:li//itu:p">
|
1562
|
+
<xsl:template match="itu:li//itu:p[not(parent::itu:dd)]">
|
1485
1563
|
<fo:block margin-bottom="0pt"> <!-- margin-bottom="6pt" -->
|
1486
1564
|
<!-- <xsl:if test="local-name(ancestor::itu:li[1]/..) = 'ul'">
|
1487
1565
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
@@ -1493,11 +1571,9 @@
|
|
1493
1571
|
<xsl:template match="itu:link" priority="2">
|
1494
1572
|
<fo:inline color="blue">
|
1495
1573
|
<xsl:if test="local-name(..) = 'formattedref' or ancestor::itu:preface">
|
1496
|
-
<xsl:attribute name="
|
1497
|
-
<xsl:attribute name="font-
|
1498
|
-
<xsl:
|
1499
|
-
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
1500
|
-
</xsl:if>
|
1574
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
1575
|
+
<!-- <xsl:attribute name="font-family">Arial</xsl:attribute>
|
1576
|
+
<xsl:attribute name="font-size">8pt</xsl:attribute> -->
|
1501
1577
|
</xsl:if>
|
1502
1578
|
<xsl:call-template name="link"/>
|
1503
1579
|
</fo:inline>
|
@@ -1505,8 +1581,13 @@
|
|
1505
1581
|
|
1506
1582
|
|
1507
1583
|
<xsl:template match="itu:termnote">
|
1508
|
-
<fo:block id="{@id}" margin-top="4pt">
|
1509
|
-
<xsl:
|
1584
|
+
<fo:block id="{@id}" margin-top="4pt">
|
1585
|
+
<xsl:variable name="title-note">
|
1586
|
+
<xsl:call-template name="getTitle">
|
1587
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
1588
|
+
</xsl:call-template>
|
1589
|
+
</xsl:variable>
|
1590
|
+
<xsl:value-of select="$title-note"/>
|
1510
1591
|
<xsl:if test="following-sibling::itu:termnote or preceding-sibling::itu:termnote">
|
1511
1592
|
<xsl:number/><xsl:text> </xsl:text>
|
1512
1593
|
</xsl:if>
|
@@ -1549,7 +1630,7 @@
|
|
1549
1630
|
|
1550
1631
|
<xsl:template match="itu:formula" name="formula">
|
1551
1632
|
<xsl:param name="sectionNum"/>
|
1552
|
-
<fo:block id="{@id}" margin-top="6pt"> <!-- text-align="center" -->
|
1633
|
+
<fo:block id="{@id}" margin-top="6pt" margin-bottom="6pt"> <!-- text-align="center" -->
|
1553
1634
|
<xsl:apply-templates/>
|
1554
1635
|
<fo:inline keep-together.within-line="always">
|
1555
1636
|
</fo:inline>
|
@@ -1599,32 +1680,57 @@
|
|
1599
1680
|
<xsl:param name="sectionNum"/>
|
1600
1681
|
|
1601
1682
|
<xsl:variable name="section" select="xalan:nodeset($contents)//item[@id = current()/@target]/@section"/>
|
1683
|
+
<xsl:variable name="topsection" select="xalan:nodeset($contents)//item[@id = current()/@target]/@topsection"/>
|
1684
|
+
<xsl:variable name="xref_id" select="generate-id()"/>
|
1685
|
+
<xsl:variable name="xreftopsection" select="xalan:nodeset($contents)//item[@id = $xref_id]/@topsection"/>
|
1602
1686
|
|
1603
1687
|
<xsl:variable name="text" select="xalan:nodeset($contents)//item[@id = current()/@target]/text()"/>
|
1604
1688
|
|
1605
1689
|
<fo:basic-link internal-destination="{@target}" color="blue" text-decoration="underline" fox:alt-text="{@target}">
|
1606
1690
|
<xsl:variable name="type" select="xalan:nodeset($contents)//item[@id = current()/@target]/@type"/>
|
1691
|
+
<xsl:variable name="level" select="xalan:nodeset($contents)//item[@id =current()/@target]/@level"/>
|
1692
|
+
|
1693
|
+
<xsl:variable name="title-clause">
|
1694
|
+
<xsl:call-template name="getTitle">
|
1695
|
+
<xsl:with-param name="name" select="'title-clause'"/>
|
1696
|
+
</xsl:call-template>
|
1697
|
+
</xsl:variable>
|
1698
|
+
<xsl:variable name="title-example-xref">
|
1699
|
+
<xsl:call-template name="getTitle">
|
1700
|
+
<xsl:with-param name="name" select="'title-example-xref'"/>
|
1701
|
+
</xsl:call-template>
|
1702
|
+
</xsl:variable>
|
1703
|
+
|
1607
1704
|
<xsl:choose>
|
1608
|
-
<xsl:when test="$type = 'clause'"
|
1609
|
-
<xsl:when test="$type = '
|
1705
|
+
<xsl:when test="($type = 'clause' or $type = 'term') and $level = 1"><xsl:value-of select="$title-clause"/></xsl:when><!-- and not (ancestor::annex) -->
|
1706
|
+
<xsl:when test="($type = 'clause' or $type = 'term') and $level > 1"><xsl:value-of select="java:toLowerCase(java:java.lang.String.new($title-clause))"/></xsl:when>
|
1707
|
+
<xsl:when test="$type = 'example'"><xsl:value-of select="$title-example-xref"/></xsl:when>
|
1610
1708
|
<xsl:when test="$type = 'figure'"/>
|
1611
1709
|
<xsl:when test="$type = 'formula'"/>
|
1612
1710
|
<xsl:when test="$type = 'table'"/>
|
1613
|
-
<xsl:when test="$type = 'term'">Clause </xsl:when>
|
1614
1711
|
<xsl:when test="$type = 'note'"><xsl:text>Note </xsl:text><xsl:value-of select="xalan:nodeset($contents)//item[@id = current()/@target]/text()"/></xsl:when>
|
1615
1712
|
|
1616
1713
|
<xsl:otherwise/> <!-- <xsl:value-of select="$type"/> -->
|
1617
1714
|
</xsl:choose>
|
1618
1715
|
|
1716
|
+
<xsl:variable name="title-in">
|
1717
|
+
<xsl:call-template name="getTitle">
|
1718
|
+
<xsl:with-param name="name" select="'title-in'"/>
|
1719
|
+
</xsl:call-template>
|
1720
|
+
</xsl:variable>
|
1721
|
+
|
1619
1722
|
<xsl:choose>
|
1620
1723
|
<xsl:when test="$type = 'example'">
|
1621
1724
|
<xsl:variable name="currentSection">
|
1622
1725
|
<xsl:call-template name="getSection"/>
|
1623
1726
|
</xsl:variable>
|
1624
|
-
<xsl:if test="not(contains($section, $currentSection))">
|
1625
|
-
|
1626
|
-
<xsl:value-of select="
|
1627
|
-
<xsl:
|
1727
|
+
<xsl:if test="not(contains($section, $currentSection))">
|
1728
|
+
|
1729
|
+
<xsl:value-of select="$title-in"/>
|
1730
|
+
<xsl:if test="$level = 1">
|
1731
|
+
<xsl:value-of select="xalan:nodeset($contents)//item[@id = current()/@target]/@parent"/>
|
1732
|
+
<xsl:text> </xsl:text>
|
1733
|
+
</xsl:if>
|
1628
1734
|
<xsl:value-of select="$section"/>
|
1629
1735
|
</xsl:if>
|
1630
1736
|
</xsl:when>
|
@@ -1635,13 +1741,18 @@
|
|
1635
1741
|
|
1636
1742
|
<xsl:when test="$type = 'formula'">
|
1637
1743
|
<xsl:value-of select="$text"/>
|
1638
|
-
<xsl:variable name="currentSection">
|
1744
|
+
<!-- <xsl:variable name="currentSection">
|
1639
1745
|
<xsl:call-template name="getSection"/>
|
1640
|
-
</xsl:variable>
|
1641
|
-
|
1642
|
-
|
1643
|
-
|
1644
|
-
<xsl:text> </xsl:text>
|
1746
|
+
</xsl:variable>
|
1747
|
+
|
1748
|
+
<xsl:if test="not(contains($section, $currentSection))"> -->
|
1749
|
+
<xsl:if test="$topsection != $xreftopsection">
|
1750
|
+
<xsl:text> </xsl:text>
|
1751
|
+
<xsl:value-of select="$title-in"/>
|
1752
|
+
<xsl:if test="$level = 1">
|
1753
|
+
<xsl:value-of select="xalan:nodeset($contents)//item[@id = current()/@target]/@parent"/>
|
1754
|
+
<xsl:text> </xsl:text>
|
1755
|
+
</xsl:if>
|
1645
1756
|
<xsl:value-of select="$section"/>
|
1646
1757
|
</xsl:if>
|
1647
1758
|
</xsl:when>
|
@@ -1655,7 +1766,12 @@
|
|
1655
1766
|
<xsl:call-template name="getSection"/>
|
1656
1767
|
</xsl:variable>
|
1657
1768
|
<xsl:if test="not(contains($section, $currentSection))">
|
1658
|
-
<xsl:text>
|
1769
|
+
<xsl:text> </xsl:text>
|
1770
|
+
<xsl:value-of select="$title-in"/>
|
1771
|
+
<xsl:choose>
|
1772
|
+
<xsl:when test="$level = 1"><xsl:value-of select="$title-clause"/></xsl:when>
|
1773
|
+
<xsl:when test="$level > 1"><xsl:value-of select="java:toLowerCase(java:java.lang.String.new($title-clause))"/></xsl:when>
|
1774
|
+
</xsl:choose>
|
1659
1775
|
<xsl:value-of select="$section"/>
|
1660
1776
|
</xsl:if>
|
1661
1777
|
</xsl:when>
|
@@ -1696,8 +1812,13 @@
|
|
1696
1812
|
</xsl:template>
|
1697
1813
|
|
1698
1814
|
<xsl:template match="itu:example/itu:name">
|
1699
|
-
<fo:block font-weight="bold">
|
1700
|
-
<xsl:
|
1815
|
+
<fo:block font-weight="bold">
|
1816
|
+
<xsl:variable name="title-example">
|
1817
|
+
<xsl:call-template name="getTitle">
|
1818
|
+
<xsl:with-param name="name" select="'title-example'"/>
|
1819
|
+
</xsl:call-template>
|
1820
|
+
</xsl:variable>
|
1821
|
+
<xsl:value-of select="normalize-space($title-example)"/>
|
1701
1822
|
<xsl:if test="count(ancestor::itu:clause[1]/itu:example) > 1">
|
1702
1823
|
<xsl:text> </xsl:text><xsl:number count="itu:example"/>
|
1703
1824
|
</xsl:if>
|
@@ -1724,10 +1845,10 @@
|
|
1724
1845
|
<fo:basic-link internal-destination="{@bibitemid}" color="blue" text-decoration="underline" fox:alt-text="{@citeas}">
|
1725
1846
|
<xsl:choose>
|
1726
1847
|
<xsl:when test="contains(@citeas, '[')">
|
1727
|
-
<xsl:value-of select="@citeas" disable-output-escaping="yes"
|
1848
|
+
<xsl:value-of select="@citeas"/> <!-- disable-output-escaping="yes" -->
|
1728
1849
|
</xsl:when>
|
1729
1850
|
<xsl:otherwise>
|
1730
|
-
<xsl:text>[</xsl:text><xsl:value-of select="@citeas"
|
1851
|
+
<xsl:text>[</xsl:text><xsl:value-of select="@citeas"/><xsl:text>]</xsl:text> <!-- disable-output-escaping="yes" -->
|
1731
1852
|
</xsl:otherwise>
|
1732
1853
|
</xsl:choose>
|
1733
1854
|
|
@@ -1738,8 +1859,13 @@
|
|
1738
1859
|
</xsl:template>
|
1739
1860
|
|
1740
1861
|
<xsl:template match="itu:locality">
|
1862
|
+
<xsl:variable name="title-section">
|
1863
|
+
<xsl:call-template name="getTitle">
|
1864
|
+
<xsl:with-param name="name" select="'title-section'"/>
|
1865
|
+
</xsl:call-template>
|
1866
|
+
</xsl:variable>
|
1741
1867
|
<xsl:choose>
|
1742
|
-
<xsl:when test="@type ='section'"
|
1868
|
+
<xsl:when test="@type ='section'"><xsl:value-of select="normalize-space($title-section)"/></xsl:when>
|
1743
1869
|
<xsl:otherwise/>
|
1744
1870
|
</xsl:choose>
|
1745
1871
|
<xsl:value-of select="itu:referenceFrom"/>
|
@@ -1750,18 +1876,30 @@
|
|
1750
1876
|
<xsl:apply-templates/>
|
1751
1877
|
</xsl:template>
|
1752
1878
|
|
1753
|
-
<xsl:template match="itu:
|
1754
|
-
<fo:block
|
1755
|
-
<xsl:
|
1756
|
-
<xsl:when test="@lang = 'en'"/>
|
1757
|
-
<xsl:otherwise>
|
1758
|
-
<xsl:attribute name="white-space">pre</xsl:attribute>
|
1759
|
-
</xsl:otherwise>
|
1760
|
-
</xsl:choose>
|
1761
|
-
<xsl:apply-templates/>
|
1879
|
+
<xsl:template match="itu:quote">
|
1880
|
+
<fo:block margin-top="6pt" margin-left="12mm" margin-right="12mm">
|
1881
|
+
<xsl:apply-templates select=".//itu:p"/>
|
1762
1882
|
</fo:block>
|
1883
|
+
<xsl:if test="itu:author or itu:source">
|
1884
|
+
<fo:block text-align="right">
|
1885
|
+
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
1886
|
+
<xsl:text>— </xsl:text>
|
1887
|
+
<xsl:value-of select="itu:author"/>
|
1888
|
+
<xsl:if test="itu:author and itu:source">
|
1889
|
+
<xsl:text>, </xsl:text>
|
1890
|
+
</xsl:if>
|
1891
|
+
<xsl:apply-templates select="itu:source"/>
|
1892
|
+
</fo:block>
|
1893
|
+
</xsl:if>
|
1763
1894
|
</xsl:template>
|
1764
1895
|
|
1896
|
+
<xsl:template match="itu:source">
|
1897
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
1898
|
+
<xsl:value-of select="@citeas"/> <!-- disable-output-escaping="yes" -->
|
1899
|
+
<xsl:apply-templates select="itu:localityStack"/>
|
1900
|
+
</fo:basic-link>
|
1901
|
+
</xsl:template>
|
1902
|
+
|
1765
1903
|
<xsl:template name="insertHeaderFooter">
|
1766
1904
|
<fo:static-content flow-name="footer-even" font-family="Times New Roman" font-size="11pt">
|
1767
1905
|
<fo:block-container height="19mm" display-align="after">
|
@@ -2283,24 +2421,6 @@
|
|
2283
2421
|
</xsl:if>
|
2284
2422
|
</xsl:template>
|
2285
2423
|
|
2286
|
-
<xsl:template name="getLevel">
|
2287
|
-
<xsl:variable name="level_total" select="count(ancestor::*)"/>
|
2288
|
-
<xsl:variable name="level">
|
2289
|
-
<xsl:choose>
|
2290
|
-
<xsl:when test="ancestor::itu:sections">
|
2291
|
-
<xsl:value-of select="$level_total - 2"/>
|
2292
|
-
</xsl:when>
|
2293
|
-
<xsl:when test="ancestor::itu:bibliography">
|
2294
|
-
<xsl:value-of select="$level_total - 2"/>
|
2295
|
-
</xsl:when>
|
2296
|
-
<xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
|
2297
|
-
<xsl:otherwise>
|
2298
|
-
<xsl:value-of select="$level_total - 1"/>
|
2299
|
-
</xsl:otherwise>
|
2300
|
-
</xsl:choose>
|
2301
|
-
</xsl:variable>
|
2302
|
-
<xsl:value-of select="$level"/>
|
2303
|
-
</xsl:template>
|
2304
2424
|
|
2305
2425
|
<xsl:template name="getSection">
|
2306
2426
|
<xsl:param name="sectionNum"/>
|
@@ -2320,8 +2440,16 @@
|
|
2320
2440
|
</xsl:when>
|
2321
2441
|
<xsl:when test="$level >= 2">
|
2322
2442
|
<xsl:variable name="num">
|
2323
|
-
<xsl:
|
2443
|
+
<xsl:call-template name="getSubSection"/>
|
2324
2444
|
</xsl:variable>
|
2445
|
+
<!-- <xsl:variable name="sectionNum_">
|
2446
|
+
<xsl:choose>
|
2447
|
+
<xsl:when test="normalize-space($sectionNum) = ''"><xsl:number format="1" count="itu:sections/*"/></xsl:when>
|
2448
|
+
<xsl:otherwise>
|
2449
|
+
<xsl:value-of select="$sectionNum"/>
|
2450
|
+
</xsl:otherwise>
|
2451
|
+
</xsl:choose>
|
2452
|
+
</xsl:variable> -->
|
2325
2453
|
<xsl:value-of select="concat($sectionNum, $num)"/>
|
2326
2454
|
</xsl:when>
|
2327
2455
|
<xsl:otherwise>
|
@@ -2331,8 +2459,13 @@
|
|
2331
2459
|
</xsl:when>
|
2332
2460
|
<xsl:when test="ancestor::itu:annex[@obligation = 'informative']">
|
2333
2461
|
<xsl:choose>
|
2334
|
-
<xsl:when test="$level = 1">
|
2335
|
-
<xsl:
|
2462
|
+
<xsl:when test="$level = 1">
|
2463
|
+
<xsl:variable name="title-appendix">
|
2464
|
+
<xsl:call-template name="getTitle">
|
2465
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
2466
|
+
</xsl:call-template>
|
2467
|
+
</xsl:variable>
|
2468
|
+
<xsl:value-of select="$title-appendix"/><xsl:text> </xsl:text>
|
2336
2469
|
<xsl:number format="I" level="any" count="itu:annex[@obligation = 'informative']"/>
|
2337
2470
|
</xsl:when>
|
2338
2471
|
<xsl:otherwise>
|
@@ -2342,8 +2475,13 @@
|
|
2342
2475
|
</xsl:when>
|
2343
2476
|
<xsl:when test="ancestor::itu:annex[not(@obligation) or @obligation != 'informative']">
|
2344
2477
|
<xsl:choose>
|
2345
|
-
<xsl:when test="$level = 1">
|
2346
|
-
<xsl:
|
2478
|
+
<xsl:when test="$level = 1">
|
2479
|
+
<xsl:variable name="title-annex">
|
2480
|
+
<xsl:call-template name="getTitle">
|
2481
|
+
<xsl:with-param name="name" select="'title-annex'"/>
|
2482
|
+
</xsl:call-template>
|
2483
|
+
</xsl:variable>
|
2484
|
+
<xsl:value-of select="$title-annex"/>
|
2347
2485
|
<xsl:choose>
|
2348
2486
|
<xsl:when test="count(//itu:annex) = 1">
|
2349
2487
|
<xsl:choose>
|
@@ -2390,98 +2528,279 @@
|
|
2390
2528
|
</xsl:if>
|
2391
2529
|
</xsl:template>
|
2392
2530
|
|
2393
|
-
<xsl:template name="
|
2531
|
+
<xsl:template name="getTopSection">
|
2532
|
+
<xsl:param name="sectionNum"/>
|
2533
|
+
<xsl:variable name="section">
|
2534
|
+
<xsl:call-template name="getSection">
|
2535
|
+
<xsl:with-param name="sectionNum" select="$sectionNum"/>
|
2536
|
+
</xsl:call-template>
|
2537
|
+
</xsl:variable>
|
2538
|
+
<xsl:variable name="topsection_" select="normalize-space(translate($section, '().-',' '))"/>
|
2394
2539
|
<xsl:choose>
|
2395
|
-
<xsl:when test="
|
2396
|
-
<xsl:value-of select="
|
2540
|
+
<xsl:when test="contains($topsection_, ' ')">
|
2541
|
+
<xsl:value-of select="substring-before($topsection_, ' ')"/>
|
2397
2542
|
</xsl:when>
|
2398
2543
|
<xsl:otherwise>
|
2399
|
-
<xsl:value-of select="
|
2544
|
+
<xsl:value-of select="$topsection_"/>
|
2400
2545
|
</xsl:otherwise>
|
2401
2546
|
</xsl:choose>
|
2402
2547
|
</xsl:template>
|
2403
2548
|
|
2404
|
-
<xsl:variable
|
2549
|
+
<xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="titles_">
|
2550
|
+
|
2551
|
+
<title-table lang="en">Table </title-table>
|
2552
|
+
<title-table lang="fr">Tableau </title-table>
|
2553
|
+
|
2554
|
+
<title-table lang="zh">Table </title-table>
|
2405
2555
|
|
2406
2556
|
|
2407
|
-
</xsl:attribute-set><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
|
2408
|
-
<xsl:value-of select="."/>
|
2409
|
-
</xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='br']">
|
2410
|
-
<xsl:value-of select="$linebreak"/>
|
2411
|
-
</xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
|
2412
|
-
<xsl:call-template name="add-zero-spaces"/>
|
2413
|
-
</xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']">
|
2414
|
-
|
2415
|
-
<xsl:variable name="simple-table">
|
2416
|
-
<!-- <xsl:copy> -->
|
2417
|
-
<xsl:call-template name="getSimpleTable"/>
|
2418
|
-
<!-- </xsl:copy> -->
|
2419
|
-
</xsl:variable>
|
2420
|
-
|
2421
|
-
<!-- DEBUG -->
|
2422
|
-
<!-- SourceTable=<xsl:copy-of select="current()"/>EndSourceTable -->
|
2423
|
-
<!-- Simpletable=<xsl:copy-of select="$simple-table"/>EndSimpltable -->
|
2424
2557
|
|
2425
|
-
|
2558
|
+
<title-note lang="en">NOTE </title-note>
|
2559
|
+
<title-note lang="fr">NOTE </title-note>
|
2426
2560
|
|
2427
|
-
<
|
2561
|
+
<title-note lang="zh">NOTE </title-note>
|
2428
2562
|
|
2429
|
-
<!-- <xsl:if test="$namespace = 'iso'">
|
2430
|
-
<fo:block space-before="6pt"> </fo:block>
|
2431
|
-
</xsl:if> -->
|
2432
2563
|
|
2433
|
-
|
2434
|
-
|
2435
|
-
|
2436
|
-
|
2437
|
-
|
2564
|
+
|
2565
|
+
<title-figure lang="en">Figure </title-figure>
|
2566
|
+
<title-figure lang="fr">Figure </title-figure>
|
2567
|
+
|
2568
|
+
<title-figure lang="zh">Figure </title-figure>
|
2569
|
+
|
2570
|
+
|
2571
|
+
|
2572
|
+
<title-example lang="en">EXAMPLE </title-example>
|
2573
|
+
<title-example lang="fr">EXEMPLE </title-example>
|
2574
|
+
|
2575
|
+
<title-example lang="zh">EXAMPLE </title-example>
|
2576
|
+
|
2577
|
+
|
2578
|
+
|
2579
|
+
<title-example-xref lang="en">Example </title-example-xref>
|
2580
|
+
<title-example-xref lang="fr">Exemple </title-example-xref>
|
2581
|
+
|
2582
|
+
<title-section lang="en">Section </title-section>
|
2583
|
+
<title-section lang="fr">Section </title-section>
|
2584
|
+
|
2585
|
+
<title-inequality lang="en">Inequality </title-inequality>
|
2586
|
+
<title-inequality lang="fr">Inequality </title-inequality>
|
2587
|
+
|
2588
|
+
<title-equation lang="en">Equation </title-equation>
|
2589
|
+
<title-equation lang="fr">Equation </title-equation>
|
2438
2590
|
|
2439
|
-
|
2440
|
-
|
2441
|
-
|
2442
|
-
|
2443
|
-
|
2444
|
-
|
2445
|
-
|
2446
|
-
|
2447
|
-
|
2448
|
-
|
2449
|
-
|
2450
|
-
|
2451
|
-
|
2452
|
-
|
2453
|
-
|
2454
|
-
|
2455
|
-
|
2456
|
-
|
2457
|
-
|
2458
|
-
|
2459
|
-
|
2460
|
-
|
2461
|
-
|
2462
|
-
|
2463
|
-
|
2464
|
-
|
2465
|
-
|
2466
|
-
|
2467
|
-
|
2468
|
-
|
2469
|
-
|
2470
|
-
|
2471
|
-
|
2472
|
-
|
2473
|
-
|
2474
|
-
|
2475
|
-
|
2476
|
-
|
2477
|
-
|
2478
|
-
|
2479
|
-
|
2480
|
-
|
2481
|
-
|
2482
|
-
|
2483
|
-
|
2484
|
-
|
2591
|
+
<title-annex lang="en">Annex </title-annex>
|
2592
|
+
<title-annex lang="fr">Annexe </title-annex>
|
2593
|
+
|
2594
|
+
<title-annex lang="zh">Annex </title-annex>
|
2595
|
+
|
2596
|
+
|
2597
|
+
|
2598
|
+
<title-appendix lang="en">Appendix </title-appendix>
|
2599
|
+
<title-appendix lang="fr">Appendix </title-appendix>
|
2600
|
+
|
2601
|
+
<title-clause lang="en">Clause </title-clause>
|
2602
|
+
<title-clause lang="fr">Article </title-clause>
|
2603
|
+
|
2604
|
+
<title-clause lang="zh">Clause </title-clause>
|
2605
|
+
|
2606
|
+
|
2607
|
+
|
2608
|
+
<title-edition lang="en">
|
2609
|
+
|
2610
|
+
<xsl:text>Edition </xsl:text>
|
2611
|
+
|
2612
|
+
|
2613
|
+
</title-edition>
|
2614
|
+
|
2615
|
+
<title-formula lang="en">Formula </title-formula>
|
2616
|
+
<title-formula lang="fr">Formula </title-formula>
|
2617
|
+
|
2618
|
+
<title-toc lang="en">
|
2619
|
+
|
2620
|
+
|
2621
|
+
<xsl:text>Table of Contents</xsl:text>
|
2622
|
+
|
2623
|
+
|
2624
|
+
</title-toc>
|
2625
|
+
<title-toc lang="fr">Sommaire</title-toc>
|
2626
|
+
|
2627
|
+
<title-toc lang="zh">Contents</title-toc>
|
2628
|
+
|
2629
|
+
|
2630
|
+
|
2631
|
+
<title-page lang="en">Page</title-page>
|
2632
|
+
<title-page lang="fr">Page</title-page>
|
2633
|
+
|
2634
|
+
<title-key lang="en">Key</title-key>
|
2635
|
+
<title-key lang="fr">Légende</title-key>
|
2636
|
+
|
2637
|
+
<title-where lang="en">where</title-where>
|
2638
|
+
<title-where lang="fr">où</title-where>
|
2639
|
+
|
2640
|
+
<title-descriptors lang="en">Descriptors</title-descriptors>
|
2641
|
+
|
2642
|
+
<title-part lang="en">
|
2643
|
+
|
2644
|
+
|
2645
|
+
</title-part>
|
2646
|
+
<title-part lang="fr">
|
2647
|
+
|
2648
|
+
|
2649
|
+
</title-part>
|
2650
|
+
<title-part lang="zh">第 # 部分:</title-part>
|
2651
|
+
|
2652
|
+
<title-note-to-entry lang="en">Note # to entry: </title-note-to-entry>
|
2653
|
+
<title-note-to-entry lang="fr">Note # à l'article: </title-note-to-entry>
|
2654
|
+
|
2655
|
+
<title-note-to-entry lang="zh">Note # to entry: </title-note-to-entry>
|
2656
|
+
|
2657
|
+
|
2658
|
+
|
2659
|
+
<title-modified lang="en">modified</title-modified>
|
2660
|
+
<title-modified lang="fr">modifiée</title-modified>
|
2661
|
+
|
2662
|
+
<title-modified lang="zh">modified</title-modified>
|
2663
|
+
|
2664
|
+
|
2665
|
+
|
2666
|
+
<title-source lang="en">SOURCE</title-source>
|
2667
|
+
|
2668
|
+
<title-keywords lang="en">Keywords</title-keywords>
|
2669
|
+
|
2670
|
+
<title-deprecated lang="en">DEPRECATED</title-deprecated>
|
2671
|
+
<title-deprecated lang="fr">DEPRECATED</title-deprecated>
|
2672
|
+
|
2673
|
+
<title-submitting-organizations lang="en">Submitting Organizations</title-submitting-organizations>
|
2674
|
+
|
2675
|
+
<title-list-tables lang="en">List of Tables</title-list-tables>
|
2676
|
+
|
2677
|
+
<title-list-figures lang="en">List of Figures</title-list-figures>
|
2678
|
+
|
2679
|
+
<title-recommendation lang="en">Recommendation </title-recommendation>
|
2680
|
+
|
2681
|
+
<title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
|
2682
|
+
|
2683
|
+
<title-abstract lang="en">Abstract</title-abstract>
|
2684
|
+
|
2685
|
+
<title-summary lang="en">Summary</title-summary>
|
2686
|
+
|
2687
|
+
<title-in lang="en">in </title-in>
|
2688
|
+
|
2689
|
+
<title-box lang="en">Box </title-box>
|
2690
|
+
|
2691
|
+
<title-partly-supercedes lang="en">Partly Supercedes </title-partly-supercedes>
|
2692
|
+
<title-partly-supercedes lang="zh">部分代替 </title-partly-supercedes>
|
2693
|
+
|
2694
|
+
<title-completion-date lang="en">Completion date for this manuscript</title-completion-date>
|
2695
|
+
<title-completion-date lang="zh">本稿完成日期</title-completion-date>
|
2696
|
+
|
2697
|
+
<title-issuance-date lang="en">Issuance Date: #</title-issuance-date>
|
2698
|
+
<title-issuance-date lang="zh"># 发布</title-issuance-date>
|
2699
|
+
|
2700
|
+
<title-implementation-date lang="en">Implementation Date: #</title-implementation-date>
|
2701
|
+
<title-implementation-date lang="zh"># 实施</title-implementation-date>
|
2702
|
+
|
2703
|
+
<title-obligation-normative lang="en">normative</title-obligation-normative>
|
2704
|
+
<title-obligation-normative lang="zh">规范性附录</title-obligation-normative>
|
2705
|
+
|
2706
|
+
<title-caution lang="en">CAUTION</title-caution>
|
2707
|
+
<title-caution lang="zh">注意</title-caution>
|
2708
|
+
|
2709
|
+
<title-warning lang="en">WARNING</title-warning>
|
2710
|
+
<title-warning lang="zh">警告</title-warning>
|
2711
|
+
|
2712
|
+
<title-amendment lang="en">AMENDMENT</title-amendment>
|
2713
|
+
</xsl:variable><xsl:template name="getTitle">
|
2714
|
+
<xsl:param name="name"/>
|
2715
|
+
<xsl:variable name="lang">
|
2716
|
+
<xsl:call-template name="getLang"/>
|
2717
|
+
</xsl:variable>
|
2718
|
+
<xsl:variable name="title_" select="$titles/*[local-name() = $name][@lang = $lang]"/>
|
2719
|
+
<xsl:choose>
|
2720
|
+
<xsl:when test="normalize-space($title_) != ''">
|
2721
|
+
<xsl:value-of select="$title_"/>
|
2722
|
+
</xsl:when>
|
2723
|
+
<xsl:otherwise>
|
2724
|
+
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
2725
|
+
</xsl:otherwise>
|
2726
|
+
</xsl:choose>
|
2727
|
+
</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="link-style">
|
2728
|
+
|
2729
|
+
|
2730
|
+
</xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
|
2731
|
+
|
2732
|
+
|
2733
|
+
|
2734
|
+
|
2735
|
+
|
2736
|
+
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
2737
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2738
|
+
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
2739
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2740
|
+
|
2741
|
+
|
2742
|
+
|
2743
|
+
|
2744
|
+
</xsl:attribute-set><xsl:attribute-set name="appendix-style">
|
2745
|
+
|
2746
|
+
|
2747
|
+
|
2748
|
+
</xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
|
2749
|
+
|
2750
|
+
|
2751
|
+
|
2752
|
+
</xsl:attribute-set><xsl:template match="text()">
|
2753
|
+
<xsl:value-of select="."/>
|
2754
|
+
</xsl:template><xsl:template match="*[local-name()='br']">
|
2755
|
+
<xsl:value-of select="$linebreak"/>
|
2756
|
+
</xsl:template><xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
|
2757
|
+
<!-- <xsl:call-template name="add-zero-spaces"/> -->
|
2758
|
+
<xsl:call-template name="add-zero-spaces-java"/>
|
2759
|
+
</xsl:template><xsl:template match="*[local-name()='table']">
|
2760
|
+
|
2761
|
+
<xsl:variable name="simple-table">
|
2762
|
+
<!-- <xsl:copy> -->
|
2763
|
+
<xsl:call-template name="getSimpleTable"/>
|
2764
|
+
<!-- </xsl:copy> -->
|
2765
|
+
</xsl:variable>
|
2766
|
+
|
2767
|
+
<!-- DEBUG -->
|
2768
|
+
<!-- SourceTable=<xsl:copy-of select="current()"/>EndSourceTable -->
|
2769
|
+
<!-- Simpletable=<xsl:copy-of select="$simple-table"/>EndSimpltable -->
|
2770
|
+
|
2771
|
+
<!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
|
2772
|
+
|
2773
|
+
<fo:block space-before="18pt"> </fo:block>
|
2774
|
+
|
2775
|
+
<!-- <xsl:if test="$namespace = 'iso'">
|
2776
|
+
<fo:block space-before="6pt"> </fo:block>
|
2777
|
+
</xsl:if> -->
|
2778
|
+
|
2779
|
+
<xsl:choose>
|
2780
|
+
<xsl:when test="@unnumbered = 'true'"/>
|
2781
|
+
<xsl:otherwise>
|
2782
|
+
|
2783
|
+
|
2784
|
+
|
2785
|
+
<fo:block font-weight="bold" text-align="center" margin-bottom="6pt" keep-with-next="always">
|
2786
|
+
|
2787
|
+
|
2788
|
+
|
2789
|
+
|
2790
|
+
|
2791
|
+
|
2792
|
+
|
2793
|
+
|
2794
|
+
<xsl:variable name="title-table">
|
2795
|
+
<xsl:call-template name="getTitle">
|
2796
|
+
<xsl:with-param name="name" select="'title-table'"/>
|
2797
|
+
</xsl:call-template>
|
2798
|
+
</xsl:variable>
|
2799
|
+
<xsl:value-of select="$title-table"/>
|
2800
|
+
|
2801
|
+
<xsl:call-template name="getTableNumber"/>
|
2802
|
+
|
2803
|
+
|
2485
2804
|
<xsl:if test="*[local-name()='name']">
|
2486
2805
|
|
2487
2806
|
|
@@ -2557,6 +2876,7 @@
|
|
2557
2876
|
|
2558
2877
|
|
2559
2878
|
|
2879
|
+
|
2560
2880
|
<fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm" table-omit-footer-at-break="true">
|
2561
2881
|
|
2562
2882
|
|
@@ -2573,9 +2893,10 @@
|
|
2573
2893
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2574
2894
|
|
2575
2895
|
|
2896
|
+
|
2576
2897
|
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
2577
2898
|
<xsl:choose>
|
2578
|
-
<xsl:when test=". = 1">
|
2899
|
+
<xsl:when test=". = 1 or . = 0">
|
2579
2900
|
<fo:table-column column-width="proportional-column-width(2)"/>
|
2580
2901
|
</xsl:when>
|
2581
2902
|
<xsl:otherwise>
|
@@ -2583,21 +2904,68 @@
|
|
2583
2904
|
</xsl:otherwise>
|
2584
2905
|
</xsl:choose>
|
2585
2906
|
</xsl:for-each>
|
2586
|
-
|
2907
|
+
|
2908
|
+
<xsl:choose>
|
2909
|
+
<xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
|
2910
|
+
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
2911
|
+
</xsl:when>
|
2912
|
+
<xsl:otherwise>
|
2913
|
+
<xsl:apply-templates/>
|
2914
|
+
</xsl:otherwise>
|
2915
|
+
</xsl:choose>
|
2916
|
+
|
2587
2917
|
</fo:table>
|
2588
2918
|
|
2589
2919
|
|
2590
2920
|
|
2591
2921
|
</fo:block-container>
|
2592
|
-
</xsl:template><xsl:template
|
2922
|
+
</xsl:template><xsl:template name="getTableNumber">
|
2923
|
+
<xsl:choose>
|
2924
|
+
<xsl:when test="ancestor::*[local-name()='executivesummary']"> <!-- NIST -->
|
2925
|
+
<xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered) or @unnumbered != 'true']"/>
|
2926
|
+
</xsl:when>
|
2927
|
+
<xsl:when test="ancestor::*[local-name()='annex']">
|
2928
|
+
|
2929
|
+
|
2930
|
+
|
2931
|
+
|
2932
|
+
<xsl:choose>
|
2933
|
+
<xsl:when test="ancestor::*[local-name()='annex'][@obligation = 'informative']">
|
2934
|
+
<xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
|
2935
|
+
<!-- Table in Appendix -->
|
2936
|
+
<xsl:number format="I-" count="*[local-name()='annex'][@obligation = 'informative']"/>
|
2937
|
+
<xsl:number format="1" level="any" count="*[local-name()='table'][(not(@unnumbered) or @unnumbered != 'true') and ancestor::*[local-name()='annex'][@id = $annex-id]]"/>
|
2938
|
+
</xsl:when>
|
2939
|
+
<!-- Table in Annex -->
|
2940
|
+
<xsl:when test="ancestor::*[local-name()='annex'][not(@obligation) or @obligation != 'informative']">
|
2941
|
+
<xsl:variable name="annex-id" select="ancestor::*[local-name()='annex']/@id"/>
|
2942
|
+
<xsl:number format="A-" count="*[local-name()='annex'][not(@obligation) or @obligation != 'informative']"/>
|
2943
|
+
<xsl:number format="1" level="any" count="*[local-name()='table'][(not(@unnumbered) or @unnumbered != 'true') and ancestor::*[local-name()='annex'][@id = $annex-id]]"/>
|
2944
|
+
</xsl:when>
|
2945
|
+
</xsl:choose>
|
2946
|
+
|
2947
|
+
|
2948
|
+
|
2949
|
+
|
2950
|
+
|
2951
|
+
</xsl:when>
|
2952
|
+
<xsl:otherwise>
|
2953
|
+
|
2954
|
+
|
2955
|
+
<xsl:number format="A." count="*[local-name()='annex']"/>
|
2956
|
+
<xsl:number format="1" level="any" count="//*[local-name()='table'] [not(ancestor::*[local-name()='annex']) and not(ancestor::*[local-name()='executivesummary']) and not(ancestor::*[local-name()='bibdata'])] [not(@unnumbered) or @unnumbered != 'true']"/>
|
2957
|
+
|
2958
|
+
</xsl:otherwise>
|
2959
|
+
</xsl:choose>
|
2960
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']"/><xsl:template match="*[local-name()='table']/*[local-name()='name']" mode="process">
|
2593
2961
|
<xsl:apply-templates/>
|
2594
|
-
</xsl:template><xsl:template
|
2962
|
+
</xsl:template><xsl:template name="calculate-columns-numbers">
|
2595
2963
|
<xsl:param name="table-row"/>
|
2596
2964
|
<xsl:variable name="columns-count" select="count($table-row/*)"/>
|
2597
2965
|
<xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
|
2598
2966
|
<xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
|
2599
2967
|
<xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
|
2600
|
-
</xsl:template><xsl:template
|
2968
|
+
</xsl:template><xsl:template name="calculate-column-widths">
|
2601
2969
|
<xsl:param name="table"/>
|
2602
2970
|
<xsl:param name="cols-count"/>
|
2603
2971
|
<xsl:param name="curr-col" select="1"/>
|
@@ -2606,7 +2974,7 @@
|
|
2606
2974
|
<xsl:if test="$curr-col <= $cols-count">
|
2607
2975
|
<xsl:variable name="widths">
|
2608
2976
|
<xsl:choose>
|
2609
|
-
<xsl:when test="not($table)"
|
2977
|
+
<xsl:when test="not($table)"><!-- this branch is not using in production, for debug only -->
|
2610
2978
|
<xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
|
2611
2979
|
<xsl:variable name="words">
|
2612
2980
|
<xsl:call-template name="tokenize">
|
@@ -2645,9 +3013,16 @@
|
|
2645
3013
|
<xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
|
2646
3014
|
</xsl:variable>
|
2647
3015
|
<xsl:variable name="words">
|
3016
|
+
<xsl:variable name="string_with_added_zerospaces">
|
3017
|
+
<xsl:call-template name="add-zero-spaces-java">
|
3018
|
+
<xsl:with-param name="text" select="$td_text"/>
|
3019
|
+
</xsl:call-template>
|
3020
|
+
</xsl:variable>
|
2648
3021
|
<xsl:call-template name="tokenize">
|
2649
3022
|
<!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
|
2650
|
-
|
3023
|
+
<!-- 2009 thinspace -->
|
3024
|
+
<!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
|
3025
|
+
<xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '', ' '))"/>
|
2651
3026
|
</xsl:call-template>
|
2652
3027
|
</xsl:variable>
|
2653
3028
|
<xsl:variable name="max_length">
|
@@ -2688,17 +3063,28 @@
|
|
2688
3063
|
<xsl:with-param name="table" select="$table"/>
|
2689
3064
|
</xsl:call-template>
|
2690
3065
|
</xsl:if>
|
2691
|
-
</xsl:template><xsl:template
|
3066
|
+
</xsl:template><xsl:template match="text()" mode="td_text">
|
2692
3067
|
<xsl:variable name="zero-space"></xsl:variable>
|
2693
3068
|
<xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
|
2694
|
-
</xsl:template><xsl:template
|
3069
|
+
</xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
|
3070
|
+
<xsl:value-of select="*[local-name()='origin']/@citeas"/>
|
3071
|
+
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
3072
|
+
<xsl:value-of select="@target"/>
|
3073
|
+
</xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
|
3074
|
+
<xsl:param name="cols-count"/>
|
2695
3075
|
<!-- font-weight="bold" -->
|
2696
|
-
<fo:table-header>
|
3076
|
+
<fo:table-header>
|
3077
|
+
|
2697
3078
|
<xsl:apply-templates/>
|
2698
3079
|
</fo:table-header>
|
2699
|
-
</xsl:template><xsl:template
|
3080
|
+
</xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
|
3081
|
+
<fo:table-body>
|
3082
|
+
<xsl:apply-templates/>
|
3083
|
+
</fo:table-body>
|
3084
|
+
</xsl:template><xsl:template match="*[local-name()='tfoot']"/><xsl:template match="*[local-name()='tfoot']" mode="process">
|
2700
3085
|
<xsl:apply-templates/>
|
2701
|
-
</xsl:template><xsl:template
|
3086
|
+
</xsl:template><xsl:template name="insertTableFooter">
|
3087
|
+
<xsl:param name="cols-count"/>
|
2702
3088
|
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
2703
3089
|
<xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
|
2704
3090
|
|
@@ -2709,22 +3095,7 @@
|
|
2709
3095
|
<!-- if there are note(s) or fn(s) then create footer row -->
|
2710
3096
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
2711
3097
|
|
2712
|
-
|
2713
|
-
<xsl:choose>
|
2714
|
-
<xsl:when test="../*[local-name()='thead']">
|
2715
|
-
<!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
|
2716
|
-
<xsl:call-template name="calculate-columns-numbers">
|
2717
|
-
<xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
|
2718
|
-
</xsl:call-template>
|
2719
|
-
</xsl:when>
|
2720
|
-
<xsl:otherwise>
|
2721
|
-
<!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
|
2722
|
-
<xsl:call-template name="calculate-columns-numbers">
|
2723
|
-
<xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
|
2724
|
-
</xsl:call-template>
|
2725
|
-
</xsl:otherwise>
|
2726
|
-
</xsl:choose>
|
2727
|
-
</xsl:variable>
|
3098
|
+
|
2728
3099
|
|
2729
3100
|
<fo:table-row>
|
2730
3101
|
<fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
|
@@ -2756,11 +3127,30 @@
|
|
2756
3127
|
</fo:table-footer>
|
2757
3128
|
|
2758
3129
|
</xsl:if>
|
2759
|
-
</xsl:template><xsl:template
|
3130
|
+
</xsl:template><xsl:template match="*[local-name()='tbody']">
|
2760
3131
|
|
2761
|
-
<xsl:
|
3132
|
+
<xsl:variable name="cols-count">
|
3133
|
+
<xsl:choose>
|
3134
|
+
<xsl:when test="../*[local-name()='thead']">
|
3135
|
+
<xsl:call-template name="calculate-columns-numbers">
|
3136
|
+
<xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
|
3137
|
+
</xsl:call-template>
|
3138
|
+
</xsl:when>
|
3139
|
+
<xsl:otherwise>
|
3140
|
+
<xsl:call-template name="calculate-columns-numbers">
|
3141
|
+
<xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
|
3142
|
+
</xsl:call-template>
|
3143
|
+
</xsl:otherwise>
|
3144
|
+
</xsl:choose>
|
3145
|
+
</xsl:variable>
|
2762
3146
|
|
2763
|
-
<xsl:
|
3147
|
+
<xsl:apply-templates select="../*[local-name()='thead']" mode="process">
|
3148
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
3149
|
+
</xsl:apply-templates>
|
3150
|
+
|
3151
|
+
<xsl:call-template name="insertTableFooter">
|
3152
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
3153
|
+
</xsl:call-template>
|
2764
3154
|
|
2765
3155
|
<fo:table-body>
|
2766
3156
|
<xsl:apply-templates/>
|
@@ -2768,7 +3158,7 @@
|
|
2768
3158
|
|
2769
3159
|
</fo:table-body>
|
2770
3160
|
|
2771
|
-
</xsl:template><xsl:template
|
3161
|
+
</xsl:template><xsl:template match="*[local-name()='tr']">
|
2772
3162
|
<xsl:variable name="parent-name" select="local-name(..)"/>
|
2773
3163
|
<!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
|
2774
3164
|
<fo:table-row min-height="4mm">
|
@@ -2788,7 +3178,7 @@
|
|
2788
3178
|
|
2789
3179
|
<xsl:apply-templates/>
|
2790
3180
|
</fo:table-row>
|
2791
|
-
</xsl:template><xsl:template
|
3181
|
+
</xsl:template><xsl:template match="*[local-name()='th']">
|
2792
3182
|
<fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
|
2793
3183
|
|
2794
3184
|
|
@@ -2815,7 +3205,7 @@
|
|
2815
3205
|
<xsl:apply-templates/>
|
2816
3206
|
</fo:block>
|
2817
3207
|
</fo:table-cell>
|
2818
|
-
</xsl:template><xsl:template
|
3208
|
+
</xsl:template><xsl:template match="*[local-name()='td']">
|
2819
3209
|
<fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
|
2820
3210
|
|
2821
3211
|
|
@@ -2842,6 +3232,7 @@
|
|
2842
3232
|
</xsl:attribute>
|
2843
3233
|
</xsl:if>
|
2844
3234
|
<fo:block>
|
3235
|
+
|
2845
3236
|
<xsl:apply-templates/>
|
2846
3237
|
</fo:block>
|
2847
3238
|
<!-- <xsl:choose>
|
@@ -2857,16 +3248,24 @@
|
|
2857
3248
|
|
2858
3249
|
|
2859
3250
|
</fo:table-cell>
|
2860
|
-
</xsl:template><xsl:template
|
3251
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']"/><xsl:template match="*[local-name()='table']/*[local-name()='note']" mode="process">
|
2861
3252
|
|
2862
3253
|
|
2863
3254
|
<fo:block font-size="10pt" margin-bottom="12pt">
|
2864
3255
|
|
2865
3256
|
|
2866
3257
|
|
3258
|
+
|
2867
3259
|
<fo:inline padding-right="2mm">
|
2868
3260
|
|
2869
|
-
|
3261
|
+
|
3262
|
+
|
3263
|
+
<xsl:variable name="title-note">
|
3264
|
+
<xsl:call-template name="getTitle">
|
3265
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
3266
|
+
</xsl:call-template>
|
3267
|
+
</xsl:variable>
|
3268
|
+
<xsl:value-of select="$title-note"/>
|
2870
3269
|
|
2871
3270
|
<xsl:variable name="id" select="ancestor::*[local-name() = 'table'][1]/@id"/>
|
2872
3271
|
<xsl:if test="count(//*[local-name()='note'][ancestor::*[@id = $id]]) > 1">
|
@@ -2880,9 +3279,9 @@
|
|
2880
3279
|
<xsl:apply-templates mode="process"/>
|
2881
3280
|
</fo:block>
|
2882
3281
|
|
2883
|
-
</xsl:template><xsl:template
|
3282
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
|
2884
3283
|
<xsl:apply-templates/>
|
2885
|
-
</xsl:template><xsl:template
|
3284
|
+
</xsl:template><xsl:template name="fn_display">
|
2886
3285
|
<xsl:variable name="references">
|
2887
3286
|
<xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
|
2888
3287
|
<fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
|
@@ -2903,6 +3302,12 @@
|
|
2903
3302
|
|
2904
3303
|
|
2905
3304
|
|
3305
|
+
|
3306
|
+
<xsl:attribute name="margin-bottom">2pt</xsl:attribute>
|
3307
|
+
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
3308
|
+
<xsl:attribute name="text-indent">-5mm</xsl:attribute>
|
3309
|
+
<xsl:attribute name="start-indent">5mm</xsl:attribute>
|
3310
|
+
|
2906
3311
|
<fo:inline font-size="80%" padding-right="5mm" id="{@id}">
|
2907
3312
|
|
2908
3313
|
<xsl:attribute name="vertical-align">super</xsl:attribute>
|
@@ -2912,6 +3317,7 @@
|
|
2912
3317
|
|
2913
3318
|
|
2914
3319
|
<xsl:attribute name="padding-right">3mm</xsl:attribute>
|
3320
|
+
<xsl:attribute name="font-size">70%</xsl:attribute>
|
2915
3321
|
|
2916
3322
|
|
2917
3323
|
<xsl:value-of select="@reference"/>
|
@@ -2928,7 +3334,7 @@
|
|
2928
3334
|
</fo:block>
|
2929
3335
|
</xsl:if>
|
2930
3336
|
</xsl:for-each>
|
2931
|
-
</xsl:template><xsl:template
|
3337
|
+
</xsl:template><xsl:template name="fn_name_display">
|
2932
3338
|
<!-- <xsl:variable name="references">
|
2933
3339
|
<xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
|
2934
3340
|
<fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
|
@@ -2944,7 +3350,7 @@
|
|
2944
3350
|
<xsl:apply-templates/>
|
2945
3351
|
</fo:block>
|
2946
3352
|
</xsl:for-each>
|
2947
|
-
</xsl:template><xsl:template
|
3353
|
+
</xsl:template><xsl:template name="fn_display_figure">
|
2948
3354
|
<xsl:variable name="key_iso">
|
2949
3355
|
<!-- and (not(@class) or @class !='pseudocode') -->
|
2950
3356
|
</xsl:variable>
|
@@ -2955,6 +3361,36 @@
|
|
2955
3361
|
</fn>
|
2956
3362
|
</xsl:for-each>
|
2957
3363
|
</xsl:variable>
|
3364
|
+
|
3365
|
+
<!-- current hierarchy is 'figure' element -->
|
3366
|
+
<xsl:variable name="following_dl_colwidths">
|
3367
|
+
<xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
|
3368
|
+
<xsl:variable name="html-table">
|
3369
|
+
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
3370
|
+
<xsl:element name="{$ns}:table">
|
3371
|
+
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
3372
|
+
<tbody>
|
3373
|
+
<xsl:apply-templates mode="dl"/>
|
3374
|
+
</tbody>
|
3375
|
+
</xsl:for-each>
|
3376
|
+
</xsl:element>
|
3377
|
+
</xsl:variable>
|
3378
|
+
|
3379
|
+
<xsl:call-template name="calculate-column-widths">
|
3380
|
+
<xsl:with-param name="cols-count" select="2"/>
|
3381
|
+
<xsl:with-param name="table" select="$html-table"/>
|
3382
|
+
</xsl:call-template>
|
3383
|
+
|
3384
|
+
</xsl:if>
|
3385
|
+
</xsl:variable>
|
3386
|
+
|
3387
|
+
|
3388
|
+
<xsl:variable name="maxlength_dt">
|
3389
|
+
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
3390
|
+
<xsl:call-template name="getMaxLength_dt"/>
|
3391
|
+
</xsl:for-each>
|
3392
|
+
</xsl:variable>
|
3393
|
+
|
2958
3394
|
<xsl:if test="xalan:nodeset($references)//fn">
|
2959
3395
|
<fo:block>
|
2960
3396
|
<fo:table width="95%" table-layout="fixed">
|
@@ -2962,8 +3398,19 @@
|
|
2962
3398
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
2963
3399
|
|
2964
3400
|
</xsl:if>
|
2965
|
-
<
|
2966
|
-
|
3401
|
+
<xsl:choose>
|
3402
|
+
<!-- if there 'dl', then set same columns width -->
|
3403
|
+
<xsl:when test="xalan:nodeset($following_dl_colwidths)//column">
|
3404
|
+
<xsl:call-template name="setColumnWidth_dl">
|
3405
|
+
<xsl:with-param name="colwidths" select="$following_dl_colwidths"/>
|
3406
|
+
<xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
|
3407
|
+
</xsl:call-template>
|
3408
|
+
</xsl:when>
|
3409
|
+
<xsl:otherwise>
|
3410
|
+
<fo:table-column column-width="15%"/>
|
3411
|
+
<fo:table-column column-width="85%"/>
|
3412
|
+
</xsl:otherwise>
|
3413
|
+
</xsl:choose>
|
2967
3414
|
<fo:table-body>
|
2968
3415
|
<xsl:for-each select="xalan:nodeset($references)//fn">
|
2969
3416
|
<xsl:variable name="reference" select="@reference"/>
|
@@ -2995,7 +3442,7 @@
|
|
2995
3442
|
</fo:block>
|
2996
3443
|
</xsl:if>
|
2997
3444
|
|
2998
|
-
</xsl:template><xsl:template
|
3445
|
+
</xsl:template><xsl:template match="*[local-name()='fn']">
|
2999
3446
|
<!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
|
3000
3447
|
<fo:inline font-size="80%" keep-with-previous.within-line="always">
|
3001
3448
|
|
@@ -3010,11 +3457,11 @@
|
|
3010
3457
|
<xsl:value-of select="@reference"/>
|
3011
3458
|
</fo:basic-link>
|
3012
3459
|
</fo:inline>
|
3013
|
-
</xsl:template><xsl:template
|
3460
|
+
</xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
|
3014
3461
|
<fo:inline>
|
3015
3462
|
<xsl:apply-templates/>
|
3016
3463
|
</fo:inline>
|
3017
|
-
</xsl:template><xsl:template
|
3464
|
+
</xsl:template><xsl:template match="*[local-name()='dl']">
|
3018
3465
|
<xsl:variable name="parent" select="local-name(..)"/>
|
3019
3466
|
|
3020
3467
|
<xsl:variable name="key_iso">
|
@@ -3026,8 +3473,13 @@
|
|
3026
3473
|
|
3027
3474
|
|
3028
3475
|
<fo:block margin-bottom="12pt" text-align="left">
|
3029
|
-
|
3030
|
-
<xsl:
|
3476
|
+
|
3477
|
+
<xsl:variable name="title-where">
|
3478
|
+
<xsl:call-template name="getTitle">
|
3479
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
3480
|
+
</xsl:call-template>
|
3481
|
+
</xsl:variable>
|
3482
|
+
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
3031
3483
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
3032
3484
|
<xsl:text/>
|
3033
3485
|
<xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
|
@@ -3042,15 +3494,25 @@
|
|
3042
3494
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
3043
3495
|
|
3044
3496
|
|
3045
|
-
<xsl:
|
3497
|
+
<xsl:variable name="title-where">
|
3498
|
+
<xsl:call-template name="getTitle">
|
3499
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
3500
|
+
</xsl:call-template>
|
3501
|
+
</xsl:variable>
|
3502
|
+
<xsl:value-of select="$title-where"/>:
|
3046
3503
|
</fo:block>
|
3047
3504
|
</xsl:when>
|
3048
3505
|
<xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
|
3049
|
-
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
|
3506
|
+
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
|
3050
3507
|
|
3051
3508
|
|
3052
3509
|
|
3053
|
-
<xsl:
|
3510
|
+
<xsl:variable name="title-key">
|
3511
|
+
<xsl:call-template name="getTitle">
|
3512
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
3513
|
+
</xsl:call-template>
|
3514
|
+
</xsl:variable>
|
3515
|
+
<xsl:value-of select="$title-key"/>
|
3054
3516
|
</fo:block>
|
3055
3517
|
</xsl:when>
|
3056
3518
|
</xsl:choose>
|
@@ -3060,31 +3522,19 @@
|
|
3060
3522
|
<fo:block>
|
3061
3523
|
|
3062
3524
|
|
3063
|
-
<xsl:if test="
|
3064
|
-
<xsl:attribute name="margin-left"
|
3525
|
+
<xsl:if test="$parent = 'figure' or $parent = 'formula'">
|
3526
|
+
<xsl:attribute name="margin-left">7.4mm</xsl:attribute>
|
3065
3527
|
</xsl:if>
|
3528
|
+
<xsl:if test="$parent = 'li'">
|
3529
|
+
<!-- <xsl:attribute name="margin-left">-4mm</xsl:attribute> -->
|
3530
|
+
</xsl:if>
|
3531
|
+
|
3066
3532
|
|
3067
3533
|
|
3068
3534
|
<fo:block>
|
3069
3535
|
|
3070
3536
|
|
3071
|
-
|
3072
|
-
<xsl:variable name="html-table">
|
3073
|
-
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
3074
|
-
<xsl:element name="{$ns}:table">
|
3075
|
-
<tbody>
|
3076
|
-
<xsl:apply-templates mode="dl"/>
|
3077
|
-
</tbody>
|
3078
|
-
</xsl:element>
|
3079
|
-
</xsl:variable>
|
3080
|
-
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
3081
|
-
<xsl:variable name="colwidths">
|
3082
|
-
<xsl:call-template name="calculate-column-widths">
|
3083
|
-
<xsl:with-param name="cols-count" select="2"/>
|
3084
|
-
<xsl:with-param name="table" select="$html-table"/>
|
3085
|
-
</xsl:call-template>
|
3086
|
-
</xsl:variable>
|
3087
|
-
<!-- colwidths=<xsl:value-of select="$colwidths"/> -->
|
3537
|
+
|
3088
3538
|
|
3089
3539
|
<fo:table width="95%" table-layout="fixed">
|
3090
3540
|
|
@@ -3097,42 +3547,30 @@
|
|
3097
3547
|
|
3098
3548
|
</xsl:when>
|
3099
3549
|
</xsl:choose>
|
3100
|
-
|
3101
|
-
|
3102
|
-
|
3103
|
-
|
3104
|
-
|
3105
|
-
|
3106
|
-
|
3107
|
-
|
3108
|
-
|
3109
|
-
|
3110
|
-
|
3111
|
-
|
3112
|
-
|
3113
|
-
|
3114
|
-
|
3115
|
-
|
3116
|
-
|
3117
|
-
|
3118
|
-
|
3119
|
-
|
3120
|
-
|
3121
|
-
|
3122
|
-
|
3123
|
-
|
3124
|
-
</xsl:when>
|
3125
|
-
<xsl:otherwise>
|
3126
|
-
<fo:table-column column-width="proportional-column-width({.})"/>
|
3127
|
-
</xsl:otherwise>
|
3128
|
-
</xsl:choose>
|
3129
|
-
</xsl:for-each>
|
3130
|
-
</xsl:otherwise>
|
3131
|
-
</xsl:choose>
|
3132
|
-
<!-- <fo:table-column column-width="15%"/>
|
3133
|
-
<fo:table-column column-width="85%"/> -->
|
3134
|
-
</xsl:otherwise>
|
3135
|
-
</xsl:choose>
|
3550
|
+
<!-- create virtual html table for dl/[dt and dd] -->
|
3551
|
+
<xsl:variable name="html-table">
|
3552
|
+
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
3553
|
+
<xsl:element name="{$ns}:table">
|
3554
|
+
<tbody>
|
3555
|
+
<xsl:apply-templates mode="dl"/>
|
3556
|
+
</tbody>
|
3557
|
+
</xsl:element>
|
3558
|
+
</xsl:variable>
|
3559
|
+
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
3560
|
+
<xsl:variable name="colwidths">
|
3561
|
+
<xsl:call-template name="calculate-column-widths">
|
3562
|
+
<xsl:with-param name="cols-count" select="2"/>
|
3563
|
+
<xsl:with-param name="table" select="$html-table"/>
|
3564
|
+
</xsl:call-template>
|
3565
|
+
</xsl:variable>
|
3566
|
+
<!-- colwidths=<xsl:value-of select="$colwidths"/> -->
|
3567
|
+
<xsl:variable name="maxlength_dt">
|
3568
|
+
<xsl:call-template name="getMaxLength_dt"/>
|
3569
|
+
</xsl:variable>
|
3570
|
+
<xsl:call-template name="setColumnWidth_dl">
|
3571
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
3572
|
+
<xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
|
3573
|
+
</xsl:call-template>
|
3136
3574
|
<fo:table-body>
|
3137
3575
|
<xsl:apply-templates>
|
3138
3576
|
<xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
|
@@ -3142,7 +3580,61 @@
|
|
3142
3580
|
</fo:block>
|
3143
3581
|
</fo:block>
|
3144
3582
|
</xsl:if>
|
3145
|
-
</xsl:template><xsl:template
|
3583
|
+
</xsl:template><xsl:template name="setColumnWidth_dl">
|
3584
|
+
<xsl:param name="colwidths"/>
|
3585
|
+
<xsl:param name="maxlength_dt"/>
|
3586
|
+
<xsl:choose>
|
3587
|
+
<xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
|
3588
|
+
<fo:table-column column-width="50%"/>
|
3589
|
+
<fo:table-column column-width="50%"/>
|
3590
|
+
</xsl:when>
|
3591
|
+
<xsl:otherwise>
|
3592
|
+
<xsl:choose>
|
3593
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 2"> <!-- if dt contains short text like t90, a, etc -->
|
3594
|
+
<fo:table-column column-width="5%"/>
|
3595
|
+
<fo:table-column column-width="95%"/>
|
3596
|
+
</xsl:when>
|
3597
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 5"> <!-- if dt contains short text like t90, a, etc -->
|
3598
|
+
<fo:table-column column-width="10%"/>
|
3599
|
+
<fo:table-column column-width="90%"/>
|
3600
|
+
</xsl:when>
|
3601
|
+
<!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 1.7">
|
3602
|
+
<fo:table-column column-width="60%"/>
|
3603
|
+
<fo:table-column column-width="40%"/>
|
3604
|
+
</xsl:when> -->
|
3605
|
+
<xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 1.3">
|
3606
|
+
<fo:table-column column-width="50%"/>
|
3607
|
+
<fo:table-column column-width="50%"/>
|
3608
|
+
</xsl:when>
|
3609
|
+
<xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 0.5">
|
3610
|
+
<fo:table-column column-width="40%"/>
|
3611
|
+
<fo:table-column column-width="60%"/>
|
3612
|
+
</xsl:when>
|
3613
|
+
<xsl:otherwise>
|
3614
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
3615
|
+
<xsl:choose>
|
3616
|
+
<xsl:when test=". = 1 or . = 0">
|
3617
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
3618
|
+
</xsl:when>
|
3619
|
+
<xsl:otherwise>
|
3620
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
3621
|
+
</xsl:otherwise>
|
3622
|
+
</xsl:choose>
|
3623
|
+
</xsl:for-each>
|
3624
|
+
</xsl:otherwise>
|
3625
|
+
</xsl:choose>
|
3626
|
+
<!-- <fo:table-column column-width="15%"/>
|
3627
|
+
<fo:table-column column-width="85%"/> -->
|
3628
|
+
</xsl:otherwise>
|
3629
|
+
</xsl:choose>
|
3630
|
+
</xsl:template><xsl:template name="getMaxLength_dt">
|
3631
|
+
<xsl:for-each select="*[local-name()='dt']">
|
3632
|
+
<xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
|
3633
|
+
<xsl:if test="position() = 1">
|
3634
|
+
<xsl:value-of select="string-length(normalize-space(.))"/>
|
3635
|
+
</xsl:if>
|
3636
|
+
</xsl:for-each>
|
3637
|
+
</xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']">
|
3146
3638
|
<xsl:param name="key_iso"/>
|
3147
3639
|
|
3148
3640
|
<!-- <tr>
|
@@ -3158,7 +3650,12 @@
|
|
3158
3650
|
<xsl:if test="normalize-space($key_iso) = 'true'">
|
3159
3651
|
<xsl:attribute name="margin-top">0</xsl:attribute>
|
3160
3652
|
</xsl:if>
|
3161
|
-
|
3653
|
+
<xsl:variable name="title-note">
|
3654
|
+
<xsl:call-template name="getTitle">
|
3655
|
+
<xsl:with-param name="name" select="'title-note'"/>
|
3656
|
+
</xsl:call-template>
|
3657
|
+
</xsl:variable>
|
3658
|
+
<xsl:value-of select="$title-note"/>
|
3162
3659
|
</fo:block>
|
3163
3660
|
</fo:table-cell>
|
3164
3661
|
<fo:table-cell>
|
@@ -3167,7 +3664,7 @@
|
|
3167
3664
|
</fo:block>
|
3168
3665
|
</fo:table-cell>
|
3169
3666
|
</fo:table-row>
|
3170
|
-
</xsl:template><xsl:template
|
3667
|
+
</xsl:template><xsl:template match="*[local-name()='dt']" mode="dl">
|
3171
3668
|
<tr>
|
3172
3669
|
<td>
|
3173
3670
|
<xsl:apply-templates/>
|
@@ -3180,11 +3677,16 @@
|
|
3180
3677
|
</td>
|
3181
3678
|
</tr>
|
3182
3679
|
|
3183
|
-
</xsl:template><xsl:template
|
3680
|
+
</xsl:template><xsl:template match="*[local-name()='dt']">
|
3184
3681
|
<xsl:param name="key_iso"/>
|
3185
3682
|
|
3186
3683
|
<fo:table-row>
|
3187
3684
|
<fo:table-cell>
|
3685
|
+
|
3686
|
+
<xsl:if test="ancestor::*[1][local-name() = 'dl']/preceding-sibling::*[1][local-name() = 'formula']">
|
3687
|
+
<xsl:attribute name="padding-right">3mm</xsl:attribute>
|
3688
|
+
</xsl:if>
|
3689
|
+
|
3188
3690
|
<fo:block margin-top="6pt">
|
3189
3691
|
|
3190
3692
|
|
@@ -3194,8 +3696,19 @@
|
|
3194
3696
|
</xsl:if>
|
3195
3697
|
|
3196
3698
|
|
3197
|
-
<xsl:apply-templates/>
|
3198
3699
|
|
3700
|
+
|
3701
|
+
<xsl:if test="ancestor::*[1][local-name() = 'dl']/preceding-sibling::*[1][local-name() = 'formula']">
|
3702
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
3703
|
+
</xsl:if>
|
3704
|
+
|
3705
|
+
|
3706
|
+
<xsl:apply-templates/>
|
3707
|
+
<!-- <xsl:if test="$namespace = 'gb'">
|
3708
|
+
<xsl:if test="ancestor::*[local-name()='formula']">
|
3709
|
+
<xsl:text>—</xsl:text>
|
3710
|
+
</xsl:if>
|
3711
|
+
</xsl:if> -->
|
3199
3712
|
</fo:block>
|
3200
3713
|
</fo:table-cell>
|
3201
3714
|
<fo:table-cell>
|
@@ -3211,37 +3724,37 @@
|
|
3211
3724
|
</fo:table-cell>
|
3212
3725
|
</fo:table-row>
|
3213
3726
|
|
3214
|
-
</xsl:template><xsl:template
|
3727
|
+
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
|
3215
3728
|
<xsl:apply-templates/>
|
3216
|
-
</xsl:template><xsl:template
|
3729
|
+
</xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
|
3217
3730
|
<xsl:apply-templates/>
|
3218
|
-
</xsl:template><xsl:template
|
3731
|
+
</xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
|
3219
3732
|
<fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
|
3220
|
-
</xsl:template><xsl:template
|
3733
|
+
</xsl:template><xsl:template match="*[local-name()='em']">
|
3221
3734
|
<fo:inline font-style="italic">
|
3222
3735
|
<xsl:apply-templates/>
|
3223
3736
|
</fo:inline>
|
3224
|
-
</xsl:template><xsl:template
|
3737
|
+
</xsl:template><xsl:template match="*[local-name()='strong']">
|
3225
3738
|
<fo:inline font-weight="bold">
|
3226
3739
|
<xsl:apply-templates/>
|
3227
3740
|
</fo:inline>
|
3228
|
-
</xsl:template><xsl:template
|
3741
|
+
</xsl:template><xsl:template match="*[local-name()='sup']">
|
3229
3742
|
<fo:inline font-size="80%" vertical-align="super">
|
3230
3743
|
<xsl:apply-templates/>
|
3231
3744
|
</fo:inline>
|
3232
|
-
</xsl:template><xsl:template
|
3745
|
+
</xsl:template><xsl:template match="*[local-name()='sub']">
|
3233
3746
|
<fo:inline font-size="80%" vertical-align="sub">
|
3234
3747
|
<xsl:apply-templates/>
|
3235
3748
|
</fo:inline>
|
3236
|
-
</xsl:template><xsl:template
|
3237
|
-
<fo:inline font-family="Courier" font-size="10pt">
|
3749
|
+
</xsl:template><xsl:template match="*[local-name()='tt']">
|
3750
|
+
<fo:inline font-family="Courier" font-size="10pt">
|
3238
3751
|
<xsl:apply-templates/>
|
3239
3752
|
</fo:inline>
|
3240
|
-
</xsl:template><xsl:template
|
3753
|
+
</xsl:template><xsl:template match="*[local-name()='del']">
|
3241
3754
|
<fo:inline font-size="10pt" color="red" text-decoration="line-through">
|
3242
3755
|
<xsl:apply-templates/>
|
3243
3756
|
</fo:inline>
|
3244
|
-
</xsl:template><xsl:template
|
3757
|
+
</xsl:template><xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
|
3245
3758
|
<xsl:variable name="text" select="normalize-space(.)"/>
|
3246
3759
|
<fo:inline font-size="75%">
|
3247
3760
|
<xsl:if test="string-length($text) > 0">
|
@@ -3250,10 +3763,11 @@
|
|
3250
3763
|
</xsl:call-template>
|
3251
3764
|
</xsl:if>
|
3252
3765
|
</fo:inline>
|
3253
|
-
</xsl:template><xsl:template
|
3766
|
+
</xsl:template><xsl:template name="recursiveSmallCaps">
|
3254
3767
|
<xsl:param name="text"/>
|
3255
3768
|
<xsl:variable name="char" select="substring($text,1,1)"/>
|
3256
|
-
<xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
|
3769
|
+
<!-- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/> -->
|
3770
|
+
<xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
|
3257
3771
|
<xsl:choose>
|
3258
3772
|
<xsl:when test="$char=$upperCase">
|
3259
3773
|
<fo:inline font-size="{100 div 0.75}%">
|
@@ -3269,7 +3783,7 @@
|
|
3269
3783
|
<xsl:with-param name="text" select="substring($text,2)"/>
|
3270
3784
|
</xsl:call-template>
|
3271
3785
|
</xsl:if>
|
3272
|
-
</xsl:template><xsl:template
|
3786
|
+
</xsl:template><xsl:template name="tokenize">
|
3273
3787
|
<xsl:param name="text"/>
|
3274
3788
|
<xsl:param name="separator" select="' '"/>
|
3275
3789
|
<xsl:choose>
|
@@ -3317,7 +3831,7 @@
|
|
3317
3831
|
</xsl:call-template>
|
3318
3832
|
</xsl:otherwise>
|
3319
3833
|
</xsl:choose>
|
3320
|
-
</xsl:template><xsl:template
|
3834
|
+
</xsl:template><xsl:template name="max_length">
|
3321
3835
|
<xsl:param name="words"/>
|
3322
3836
|
<xsl:for-each select="$words//word">
|
3323
3837
|
<xsl:sort select="." data-type="number" order="descending"/>
|
@@ -3325,7 +3839,11 @@
|
|
3325
3839
|
<xsl:value-of select="."/>
|
3326
3840
|
</xsl:if>
|
3327
3841
|
</xsl:for-each>
|
3328
|
-
</xsl:template><xsl:template
|
3842
|
+
</xsl:template><xsl:template name="add-zero-spaces-java">
|
3843
|
+
<xsl:param name="text" select="."/>
|
3844
|
+
<!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
|
3845
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1')"/>
|
3846
|
+
</xsl:template><xsl:template name="add-zero-spaces">
|
3329
3847
|
<xsl:param name="text" select="."/>
|
3330
3848
|
<xsl:variable name="zero-space-after-chars">-</xsl:variable>
|
3331
3849
|
<xsl:variable name="zero-space-after-dot">.</xsl:variable>
|
@@ -3378,7 +3896,7 @@
|
|
3378
3896
|
<xsl:value-of select="$text"/>
|
3379
3897
|
</xsl:otherwise>
|
3380
3898
|
</xsl:choose>
|
3381
|
-
</xsl:template><xsl:template
|
3899
|
+
</xsl:template><xsl:template name="add-zero-spaces-equal">
|
3382
3900
|
<xsl:param name="text" select="."/>
|
3383
3901
|
<xsl:variable name="zero-space-after-equals">==========</xsl:variable>
|
3384
3902
|
<xsl:variable name="zero-space-after-equal">=</xsl:variable>
|
@@ -3404,7 +3922,7 @@
|
|
3404
3922
|
<xsl:value-of select="$text"/>
|
3405
3923
|
</xsl:otherwise>
|
3406
3924
|
</xsl:choose>
|
3407
|
-
</xsl:template><xsl:template
|
3925
|
+
</xsl:template><xsl:template name="getSimpleTable">
|
3408
3926
|
<xsl:variable name="simple-table">
|
3409
3927
|
|
3410
3928
|
<!-- Step 1. colspan processing -->
|
@@ -3431,9 +3949,9 @@
|
|
3431
3949
|
</xsl:choose> -->
|
3432
3950
|
</xsl:variable>
|
3433
3951
|
<xsl:copy-of select="$simple-table"/>
|
3434
|
-
</xsl:template><xsl:template
|
3952
|
+
</xsl:template><xsl:template match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
|
3435
3953
|
<xsl:apply-templates mode="simple-table-colspan"/>
|
3436
|
-
</xsl:template><xsl:template
|
3954
|
+
</xsl:template><xsl:template match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
|
3437
3955
|
<xsl:choose>
|
3438
3956
|
<xsl:when test="@colspan">
|
3439
3957
|
<xsl:variable name="td">
|
@@ -3455,16 +3973,16 @@
|
|
3455
3973
|
</xsl:element>
|
3456
3974
|
</xsl:otherwise>
|
3457
3975
|
</xsl:choose>
|
3458
|
-
</xsl:template><xsl:template
|
3976
|
+
</xsl:template><xsl:template match="@colspan" mode="simple-table-colspan"/><xsl:template match="*[local-name()='tr']" mode="simple-table-colspan">
|
3459
3977
|
<xsl:element name="tr">
|
3460
3978
|
<xsl:apply-templates select="@*" mode="simple-table-colspan"/>
|
3461
3979
|
<xsl:apply-templates mode="simple-table-colspan"/>
|
3462
3980
|
</xsl:element>
|
3463
|
-
</xsl:template><xsl:template
|
3981
|
+
</xsl:template><xsl:template match="@*|node()" mode="simple-table-colspan">
|
3464
3982
|
<xsl:copy>
|
3465
3983
|
<xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
|
3466
3984
|
</xsl:copy>
|
3467
|
-
</xsl:template><xsl:template
|
3985
|
+
</xsl:template><xsl:template name="repeatNode">
|
3468
3986
|
<xsl:param name="count"/>
|
3469
3987
|
<xsl:param name="node"/>
|
3470
3988
|
|
@@ -3475,18 +3993,18 @@
|
|
3475
3993
|
</xsl:call-template>
|
3476
3994
|
<xsl:copy-of select="$node"/>
|
3477
3995
|
</xsl:if>
|
3478
|
-
</xsl:template><xsl:template
|
3996
|
+
</xsl:template><xsl:template match="@*|node()" mode="simple-table-rowspan">
|
3479
3997
|
<xsl:copy>
|
3480
3998
|
<xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
|
3481
3999
|
</xsl:copy>
|
3482
|
-
</xsl:template><xsl:template
|
4000
|
+
</xsl:template><xsl:template match="tbody" mode="simple-table-rowspan">
|
3483
4001
|
<xsl:copy>
|
3484
4002
|
<xsl:copy-of select="tr[1]"/>
|
3485
4003
|
<xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
|
3486
4004
|
<xsl:with-param name="previousRow" select="tr[1]"/>
|
3487
4005
|
</xsl:apply-templates>
|
3488
4006
|
</xsl:copy>
|
3489
|
-
</xsl:template><xsl:template
|
4007
|
+
</xsl:template><xsl:template match="tr" mode="simple-table-rowspan">
|
3490
4008
|
<xsl:param name="previousRow"/>
|
3491
4009
|
<xsl:variable name="currentRow" select="."/>
|
3492
4010
|
|
@@ -3520,43 +4038,53 @@
|
|
3520
4038
|
<xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
|
3521
4039
|
<xsl:with-param name="previousRow" select="$newRow"/>
|
3522
4040
|
</xsl:apply-templates>
|
3523
|
-
</xsl:template><xsl:template
|
4041
|
+
</xsl:template><xsl:template name="getLang">
|
3524
4042
|
<xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
3525
4043
|
<xsl:choose>
|
3526
4044
|
<xsl:when test="$language = 'English'">en</xsl:when>
|
3527
4045
|
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
3528
4046
|
</xsl:choose>
|
3529
|
-
</xsl:template><xsl:template
|
4047
|
+
</xsl:template><xsl:template name="capitalizeWords">
|
3530
4048
|
<xsl:param name="str"/>
|
3531
4049
|
<xsl:variable name="str2" select="translate($str, '-', ' ')"/>
|
3532
4050
|
<xsl:choose>
|
3533
4051
|
<xsl:when test="contains($str2, ' ')">
|
3534
4052
|
<xsl:variable name="substr" select="substring-before($str2, ' ')"/>
|
3535
|
-
<xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
|
3536
|
-
<xsl:value-of select="substring($substr, 2)"/>
|
4053
|
+
<!-- <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
|
4054
|
+
<xsl:value-of select="substring($substr, 2)"/> -->
|
4055
|
+
<xsl:call-template name="capitalize">
|
4056
|
+
<xsl:with-param name="str" select="$substr"/>
|
4057
|
+
</xsl:call-template>
|
3537
4058
|
<xsl:text> </xsl:text>
|
3538
4059
|
<xsl:call-template name="capitalizeWords">
|
3539
4060
|
<xsl:with-param name="str" select="substring-after($str2, ' ')"/>
|
3540
4061
|
</xsl:call-template>
|
3541
4062
|
</xsl:when>
|
3542
4063
|
<xsl:otherwise>
|
3543
|
-
<xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
|
3544
|
-
<xsl:value-of select="substring($str2, 2)"/>
|
4064
|
+
<!-- <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
|
4065
|
+
<xsl:value-of select="substring($str2, 2)"/> -->
|
4066
|
+
<xsl:call-template name="capitalize">
|
4067
|
+
<xsl:with-param name="str" select="$str2"/>
|
4068
|
+
</xsl:call-template>
|
3545
4069
|
</xsl:otherwise>
|
3546
4070
|
</xsl:choose>
|
3547
|
-
</xsl:template><xsl:template
|
4071
|
+
</xsl:template><xsl:template name="capitalize">
|
4072
|
+
<xsl:param name="str"/>
|
4073
|
+
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
|
4074
|
+
<xsl:value-of select="substring($str, 2)"/>
|
4075
|
+
</xsl:template><xsl:template match="mathml:math">
|
3548
4076
|
<fo:inline font-family="STIX2Math">
|
3549
4077
|
<fo:instream-foreign-object fox:alt-text="Math">
|
3550
4078
|
<xsl:copy-of select="."/>
|
3551
4079
|
</fo:instream-foreign-object>
|
3552
4080
|
</fo:inline>
|
3553
|
-
</xsl:template><xsl:template
|
4081
|
+
</xsl:template><xsl:template match="*[local-name()='localityStack']">
|
3554
4082
|
<xsl:for-each select="*[local-name()='locality']">
|
3555
4083
|
<xsl:if test="position() =1"><xsl:text>, </xsl:text></xsl:if>
|
3556
4084
|
<xsl:apply-templates select="."/>
|
3557
4085
|
<xsl:if test="position() != last()"><xsl:text>; </xsl:text></xsl:if>
|
3558
4086
|
</xsl:for-each>
|
3559
|
-
</xsl:template><xsl:template
|
4087
|
+
</xsl:template><xsl:template match="*[local-name()='link']" name="link">
|
3560
4088
|
<xsl:variable name="target">
|
3561
4089
|
<xsl:choose>
|
3562
4090
|
<xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
|
@@ -3586,4 +4114,277 @@
|
|
3586
4114
|
</xsl:otherwise>
|
3587
4115
|
</xsl:choose>
|
3588
4116
|
</fo:inline>
|
4117
|
+
</xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
4118
|
+
<fo:block xsl:use-attribute-sets="sourcecode-style">
|
4119
|
+
<!-- <xsl:choose>
|
4120
|
+
<xsl:when test="@lang = 'en'"></xsl:when>
|
4121
|
+
<xsl:otherwise> -->
|
4122
|
+
<xsl:attribute name="white-space">pre</xsl:attribute>
|
4123
|
+
<xsl:attribute name="wrap-option">wrap</xsl:attribute>
|
4124
|
+
<!-- </xsl:otherwise>
|
4125
|
+
</xsl:choose> -->
|
4126
|
+
<xsl:apply-templates/>
|
4127
|
+
</fo:block>
|
4128
|
+
</xsl:template><xsl:template match="*[local-name()='bookmark']">
|
4129
|
+
<fo:inline id="{@id}"/>
|
4130
|
+
</xsl:template><xsl:template match="*[local-name()='appendix']">
|
4131
|
+
<fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
|
4132
|
+
<xsl:variable name="title-appendix">
|
4133
|
+
<xsl:call-template name="getTitle">
|
4134
|
+
<xsl:with-param name="name" select="'title-appendix'"/>
|
4135
|
+
</xsl:call-template>
|
4136
|
+
</xsl:variable>
|
4137
|
+
<fo:inline padding-right="5mm"><xsl:value-of select="$title-appendix"/> <xsl:number/></fo:inline>
|
4138
|
+
<xsl:apply-templates select="*[local-name()='title']" mode="process"/>
|
4139
|
+
</fo:block>
|
4140
|
+
<xsl:apply-templates/>
|
4141
|
+
</xsl:template><xsl:template match="*[local-name()='appendix']/*[local-name()='title']"/><xsl:template match="*[local-name()='appendix']/*[local-name()='title']" mode="process">
|
4142
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
4143
|
+
</xsl:template><xsl:template match="*[local-name()='appendix']//*[local-name()='example']">
|
4144
|
+
<fo:block xsl:use-attribute-sets="appendix-example-style">
|
4145
|
+
<xsl:variable name="claims_id" select="ancestor::*[local-name()='clause'][1]/@id"/>
|
4146
|
+
<xsl:variable name="title-example">
|
4147
|
+
<xsl:call-template name="getTitle">
|
4148
|
+
<xsl:with-param name="name" select="'title-example'"/>
|
4149
|
+
</xsl:call-template>
|
4150
|
+
</xsl:variable>
|
4151
|
+
<xsl:value-of select="$title-example"/>
|
4152
|
+
<xsl:if test="count(ancestor::*[local-name()='clause'][1]//*[local-name()='example']) > 1">
|
4153
|
+
<xsl:number count="*[local-name()='example'][ancestor::*[local-name()='clause'][@id = $claims_id]]" level="any"/><xsl:text> </xsl:text>
|
4154
|
+
</xsl:if>
|
4155
|
+
<xsl:if test="*[local-name()='name']">
|
4156
|
+
<xsl:text>— </xsl:text><xsl:apply-templates select="*[local-name()='name']" mode="process"/>
|
4157
|
+
</xsl:if>
|
4158
|
+
</fo:block>
|
4159
|
+
<xsl:apply-templates/>
|
4160
|
+
</xsl:template><xsl:template match="*[local-name()='appendix']//*[local-name()='example']/*[local-name()='name']"/><xsl:template match="*[local-name()='appendix']//*[local-name()='example']/*[local-name()='name']" mode="process">
|
4161
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
4162
|
+
</xsl:template><xsl:template match="*[local-name() = 'callout']">
|
4163
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}"><<xsl:apply-templates/>></fo:basic-link>
|
4164
|
+
</xsl:template><xsl:template match="*[local-name() = 'annotation']">
|
4165
|
+
<xsl:variable name="annotation-id" select="@id"/>
|
4166
|
+
<xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
|
4167
|
+
<fo:block id="{$annotation-id}" white-space="nowrap">
|
4168
|
+
<fo:inline>
|
4169
|
+
<xsl:apply-templates>
|
4170
|
+
<xsl:with-param name="callout" select="concat('<', $callout, '> ')"/>
|
4171
|
+
</xsl:apply-templates>
|
4172
|
+
</fo:inline>
|
4173
|
+
</fo:block>
|
4174
|
+
</xsl:template><xsl:template match="*[local-name() = 'annotation']/*[local-name() = 'p']">
|
4175
|
+
<xsl:param name="callout"/>
|
4176
|
+
<fo:inline id="{@id}">
|
4177
|
+
<!-- for first p in annotation, put <x> -->
|
4178
|
+
<xsl:if test="not(preceding-sibling::*[local-name() = 'p'])"><xsl:value-of select="$callout"/></xsl:if>
|
4179
|
+
<xsl:apply-templates/>
|
4180
|
+
</fo:inline>
|
4181
|
+
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
4182
|
+
<xsl:variable name="title-modified">
|
4183
|
+
<xsl:call-template name="getTitle">
|
4184
|
+
<xsl:with-param name="name" select="'title-modified'"/>
|
4185
|
+
</xsl:call-template>
|
4186
|
+
</xsl:variable>
|
4187
|
+
<xsl:choose>
|
4188
|
+
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
4189
|
+
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
4190
|
+
</xsl:choose>
|
4191
|
+
<xsl:apply-templates/>
|
4192
|
+
</xsl:template><xsl:template name="convertDate">
|
4193
|
+
<xsl:param name="date"/>
|
4194
|
+
<xsl:param name="format" select="'short'"/>
|
4195
|
+
<xsl:variable name="year" select="substring($date, 1, 4)"/>
|
4196
|
+
<xsl:variable name="month" select="substring($date, 6, 2)"/>
|
4197
|
+
<xsl:variable name="day" select="substring($date, 9, 2)"/>
|
4198
|
+
<xsl:variable name="monthStr">
|
4199
|
+
<xsl:choose>
|
4200
|
+
<xsl:when test="$month = '01'">January</xsl:when>
|
4201
|
+
<xsl:when test="$month = '02'">February</xsl:when>
|
4202
|
+
<xsl:when test="$month = '03'">March</xsl:when>
|
4203
|
+
<xsl:when test="$month = '04'">April</xsl:when>
|
4204
|
+
<xsl:when test="$month = '05'">May</xsl:when>
|
4205
|
+
<xsl:when test="$month = '06'">June</xsl:when>
|
4206
|
+
<xsl:when test="$month = '07'">July</xsl:when>
|
4207
|
+
<xsl:when test="$month = '08'">August</xsl:when>
|
4208
|
+
<xsl:when test="$month = '09'">September</xsl:when>
|
4209
|
+
<xsl:when test="$month = '10'">October</xsl:when>
|
4210
|
+
<xsl:when test="$month = '11'">November</xsl:when>
|
4211
|
+
<xsl:when test="$month = '12'">December</xsl:when>
|
4212
|
+
</xsl:choose>
|
4213
|
+
</xsl:variable>
|
4214
|
+
<xsl:variable name="result">
|
4215
|
+
<xsl:choose>
|
4216
|
+
<xsl:when test="$format = 'short' or $day = ''">
|
4217
|
+
<xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
|
4218
|
+
</xsl:when>
|
4219
|
+
<xsl:otherwise>
|
4220
|
+
<xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
|
4221
|
+
</xsl:otherwise>
|
4222
|
+
</xsl:choose>
|
4223
|
+
</xsl:variable>
|
4224
|
+
<xsl:value-of select="$result"/>
|
4225
|
+
</xsl:template><xsl:template name="insertKeywords">
|
4226
|
+
<xsl:param name="sorting" select="'true'"/>
|
4227
|
+
<xsl:param name="charAtEnd" select="'.'"/>
|
4228
|
+
<xsl:param name="charDelim" select="', '"/>
|
4229
|
+
<xsl:choose>
|
4230
|
+
<xsl:when test="$sorting = 'true' or $sorting = 'yes'">
|
4231
|
+
<xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
|
4232
|
+
<xsl:sort data-type="text" order="ascending"/>
|
4233
|
+
<xsl:call-template name="insertKeyword">
|
4234
|
+
<xsl:with-param name="charAtEnd" select="$charAtEnd"/>
|
4235
|
+
<xsl:with-param name="charDelim" select="$charDelim"/>
|
4236
|
+
</xsl:call-template>
|
4237
|
+
</xsl:for-each>
|
4238
|
+
</xsl:when>
|
4239
|
+
<xsl:otherwise>
|
4240
|
+
<xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
|
4241
|
+
<xsl:call-template name="insertKeyword">
|
4242
|
+
<xsl:with-param name="charAtEnd" select="$charAtEnd"/>
|
4243
|
+
<xsl:with-param name="charDelim" select="$charDelim"/>
|
4244
|
+
</xsl:call-template>
|
4245
|
+
</xsl:for-each>
|
4246
|
+
</xsl:otherwise>
|
4247
|
+
</xsl:choose>
|
4248
|
+
</xsl:template><xsl:template name="insertKeyword">
|
4249
|
+
<xsl:param name="charAtEnd"/>
|
4250
|
+
<xsl:param name="charDelim"/>
|
4251
|
+
<xsl:apply-templates/>
|
4252
|
+
<xsl:choose>
|
4253
|
+
<xsl:when test="position() != last()"><xsl:value-of select="$charDelim"/></xsl:when>
|
4254
|
+
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
4255
|
+
</xsl:choose>
|
4256
|
+
</xsl:template><xsl:template name="addPDFUAmeta">
|
4257
|
+
<fo:declarations>
|
4258
|
+
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
4259
|
+
<pdf:dictionary type="normal" key="ViewerPreferences">
|
4260
|
+
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
4261
|
+
</pdf:dictionary>
|
4262
|
+
</pdf:catalog>
|
4263
|
+
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
4264
|
+
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
4265
|
+
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
|
4266
|
+
<!-- Dublin Core properties go here -->
|
4267
|
+
<dc:title>
|
4268
|
+
<xsl:variable name="title">
|
4269
|
+
|
4270
|
+
|
4271
|
+
|
4272
|
+
|
4273
|
+
<xsl:value-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'title'][@type='main']"/>
|
4274
|
+
|
4275
|
+
</xsl:variable>
|
4276
|
+
<xsl:choose>
|
4277
|
+
<xsl:when test="normalize-space($title) != ''">
|
4278
|
+
<xsl:value-of select="$title"/>
|
4279
|
+
</xsl:when>
|
4280
|
+
<xsl:otherwise>
|
4281
|
+
<xsl:text> </xsl:text>
|
4282
|
+
</xsl:otherwise>
|
4283
|
+
</xsl:choose>
|
4284
|
+
</dc:title>
|
4285
|
+
<dc:creator>
|
4286
|
+
|
4287
|
+
<xsl:value-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'organization']/*[local-name() = 'name']"/>
|
4288
|
+
|
4289
|
+
|
4290
|
+
</dc:creator>
|
4291
|
+
<dc:description>
|
4292
|
+
<xsl:variable name="abstract">
|
4293
|
+
|
4294
|
+
|
4295
|
+
|
4296
|
+
|
4297
|
+
<xsl:copy-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'abstract']//text()"/>
|
4298
|
+
|
4299
|
+
</xsl:variable>
|
4300
|
+
<xsl:value-of select="normalize-space($abstract)"/>
|
4301
|
+
</dc:description>
|
4302
|
+
<pdf:Keywords>
|
4303
|
+
<xsl:call-template name="insertKeywords"/>
|
4304
|
+
</pdf:Keywords>
|
4305
|
+
</rdf:Description>
|
4306
|
+
<rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
|
4307
|
+
<!-- XMP properties go here -->
|
4308
|
+
<xmp:CreatorTool/>
|
4309
|
+
</rdf:Description>
|
4310
|
+
</rdf:RDF>
|
4311
|
+
</x:xmpmeta>
|
4312
|
+
</fo:declarations>
|
4313
|
+
</xsl:template><xsl:template name="getId">
|
4314
|
+
<xsl:choose>
|
4315
|
+
<xsl:when test="../@id">
|
4316
|
+
<xsl:value-of select="../@id"/>
|
4317
|
+
</xsl:when>
|
4318
|
+
<xsl:otherwise>
|
4319
|
+
<!-- <xsl:value-of select="concat(local-name(..), '_', text())"/> -->
|
4320
|
+
<xsl:value-of select="concat(generate-id(..), '_', text())"/>
|
4321
|
+
</xsl:otherwise>
|
4322
|
+
</xsl:choose>
|
4323
|
+
</xsl:template><xsl:template name="getLevel">
|
4324
|
+
<xsl:variable name="level_total" select="count(ancestor::*)"/>
|
4325
|
+
<xsl:variable name="level">
|
4326
|
+
<xsl:choose>
|
4327
|
+
<xsl:when test="ancestor::*[local-name() = 'preface']">
|
4328
|
+
<xsl:value-of select="$level_total - 2"/>
|
4329
|
+
</xsl:when>
|
4330
|
+
<xsl:when test="ancestor::*[local-name() = 'sections']">
|
4331
|
+
<xsl:value-of select="$level_total - 2"/>
|
4332
|
+
</xsl:when>
|
4333
|
+
<xsl:when test="ancestor::*[local-name() = 'bibliography']">
|
4334
|
+
<xsl:value-of select="$level_total - 2"/>
|
4335
|
+
</xsl:when>
|
4336
|
+
<xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
|
4337
|
+
<xsl:otherwise>
|
4338
|
+
<xsl:value-of select="$level_total - 1"/>
|
4339
|
+
</xsl:otherwise>
|
4340
|
+
</xsl:choose>
|
4341
|
+
</xsl:variable>
|
4342
|
+
<xsl:value-of select="$level"/>
|
4343
|
+
</xsl:template><xsl:template name="getSubSection">
|
4344
|
+
<xsl:number format=".1" level="multiple" count="*[local-name() = 'clause']/*[local-name() = 'clause'] | *[local-name() = 'clause']/*[local-name() = 'terms'] | *[local-name() = 'terms']/*[local-name() = 'term'] | *[local-name() = 'clause']/*[local-name() = 'term'] | *[local-name() = 'terms']/*[local-name() = 'clause'] | *[local-name() = 'terms']/*[local-name() = 'definitions'] | *[local-name() = 'definitions']/*[local-name() = 'clause'] | *[local-name() = 'clause']/*[local-name() = 'definitions'] | *[local-name() = 'definitions']/*[local-name() = 'definitions'] | *[local-name() = 'clause']/*[local-name() = 'references']"/>
|
4345
|
+
</xsl:template><xsl:template name="split">
|
4346
|
+
<xsl:param name="pText" select="."/>
|
4347
|
+
<xsl:param name="sep" select="','"/>
|
4348
|
+
<xsl:if test="string-length($pText) >0">
|
4349
|
+
<item>
|
4350
|
+
<xsl:value-of select="normalize-space(substring-before(concat($pText, ','), $sep))"/>
|
4351
|
+
</item>
|
4352
|
+
<xsl:call-template name="split">
|
4353
|
+
<xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
|
4354
|
+
<xsl:with-param name="sep" select="$sep"/>
|
4355
|
+
</xsl:call-template>
|
4356
|
+
</xsl:if>
|
4357
|
+
</xsl:template><xsl:template name="getDocumentId">
|
4358
|
+
<xsl:call-template name="getLang"/><xsl:value-of select="//*[local-name() = 'p'][1]/@id"/>
|
4359
|
+
</xsl:template><xsl:template name="namespaceCheck">
|
4360
|
+
<xsl:variable name="documentNS" select="namespace-uri(/*)"/>
|
4361
|
+
<xsl:variable name="XSLNS">
|
4362
|
+
|
4363
|
+
|
4364
|
+
|
4365
|
+
<xsl:value-of select="document('')//*/namespace::itu"/>
|
4366
|
+
|
4367
|
+
|
4368
|
+
|
4369
|
+
|
4370
|
+
|
4371
|
+
|
4372
|
+
|
4373
|
+
|
4374
|
+
|
4375
|
+
|
4376
|
+
</xsl:variable>
|
4377
|
+
<xsl:if test="$documentNS != $XSLNS">
|
4378
|
+
<xsl:message>[WARNING]: Document namespace: '<xsl:value-of select="$documentNS"/>' doesn't equal to xslt namespace '<xsl:value-of select="$XSLNS"/>'</xsl:message>
|
4379
|
+
</xsl:if>
|
4380
|
+
</xsl:template><xsl:template name="getLanguage">
|
4381
|
+
<xsl:param name="lang"/>
|
4382
|
+
<xsl:variable name="language" select="java:toLowerCase(java:java.lang.String.new($lang))"/>
|
4383
|
+
<xsl:choose>
|
4384
|
+
<xsl:when test="$language = 'en'">English</xsl:when>
|
4385
|
+
<xsl:when test="$language = 'fr'">French</xsl:when>
|
4386
|
+
<xsl:when test="$language = 'de'">Deutsch</xsl:when>
|
4387
|
+
<xsl:when test="$language = 'cn'">Chinese</xsl:when>
|
4388
|
+
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
4389
|
+
</xsl:choose>
|
3589
4390
|
</xsl:template></xsl:stylesheet>
|