metanorma-un 0.5.3 → 0.5.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +62 -0
- data/README.adoc +2 -4
- data/lib/asciidoctor/un/basicdoc.rng +4 -11
- data/lib/asciidoctor/un/boilerplate.xml +7 -5
- data/lib/asciidoctor/un/isodoc.rng +27 -50
- data/lib/asciidoctor/un/un.rng +7 -0
- data/lib/isodoc/un/html/html_unece_plenary_titlepage.html +17 -1
- data/lib/isodoc/un/html/html_unece_titlepage.html +20 -1
- data/lib/isodoc/un/html/htmlstyle.css +11 -4
- data/lib/isodoc/un/html/htmlstyle.scss +6 -2
- data/lib/isodoc/un/html/unece.css +19 -20
- data/lib/isodoc/un/html/unece.scss +19 -20
- data/lib/isodoc/un/html/word_unece_plenary_titlepage.html +17 -1
- data/lib/isodoc/un/html/word_unece_titlepage.html +17 -1
- data/lib/isodoc/un/html/wordstyle.css +17 -17
- data/lib/isodoc/un/html/wordstyle.scss +17 -17
- data/lib/isodoc/un/html_convert.rb +3 -1
- data/lib/isodoc/un/i18n-en.yaml +1 -0
- data/lib/isodoc/un/pdf_convert.rb +2 -2
- data/lib/isodoc/un/presentation_xml_convert.rb +1 -0
- data/lib/isodoc/un/un.plenary-attachment.xsl +647 -96
- data/lib/isodoc/un/un.plenary.xsl +647 -96
- data/lib/isodoc/un/un.recommendation.xsl +546 -89
- data/lib/isodoc/un/word_convert.rb +5 -1
- data/lib/isodoc/un/xref.rb +5 -5
- data/lib/metanorma/un/fonts_manifest.yaml +6 -0
- data/lib/metanorma/un/processor.rb +0 -8
- data/lib/metanorma/un/version.rb +1 -1
- data/metanorma-unece.gemspec +2 -2
- metadata +8 -9
- data/.github/workflows/macos.yml +0 -38
- data/.github/workflows/ubuntu.yml +0 -56
- data/.github/workflows/windows.yml +0 -40
data/lib/isodoc/un/i18n-en.yaml
CHANGED
@@ -16,10 +16,10 @@ module IsoDoc
|
|
16
16
|
def pdf_stylesheet(docxml)
|
17
17
|
case doctype = docxml&.at(ns("//bibdata/ext/doctype"))&.text
|
18
18
|
when "plenary", "agenda", "budgetary"
|
19
|
-
"
|
19
|
+
"un.plenary.xsl"
|
20
20
|
else
|
21
21
|
docxml&.at(ns("//bibdata/ext/session/*")) ?
|
22
|
-
"un.plenary-attachment.xsl" : "
|
22
|
+
"un.plenary-attachment.xsl" : "un.recommendation.xsl"
|
23
23
|
end
|
24
24
|
end
|
25
25
|
end
|
@@ -16,6 +16,14 @@
|
|
16
16
|
|
17
17
|
<xsl:variable name="contents">
|
18
18
|
<contents>
|
19
|
+
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
|
20
|
+
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
|
21
|
+
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']" mode="contents"/>
|
22
|
+
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']" mode="contents"/>
|
23
|
+
|
24
|
+
<xsl:apply-templates select="/un:un-standard/un:sections/*" mode="contents"/>
|
25
|
+
<xsl:apply-templates select="/un:un-standard/un:annex" mode="contents"/>
|
26
|
+
<xsl:apply-templates select="/un:un-standard/un:bibliography/un:references" mode="contents"/>
|
19
27
|
</contents>
|
20
28
|
</xsl:variable>
|
21
29
|
|
@@ -29,7 +37,7 @@
|
|
29
37
|
|
30
38
|
<xsl:template match="/">
|
31
39
|
<xsl:call-template name="namespaceCheck"/>
|
32
|
-
<fo:root font-family="Times New Roman,
|
40
|
+
<fo:root font-family="Times New Roman, STIX Two Math, Source Han Sans" font-size="10pt" xml:lang="{$lang}">
|
33
41
|
<fo:layout-master-set>
|
34
42
|
<!-- Cover page -->
|
35
43
|
<fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
@@ -66,6 +74,10 @@
|
|
66
74
|
|
67
75
|
<xsl:call-template name="addPDFUAmeta"/>
|
68
76
|
|
77
|
+
<xsl:call-template name="addBookmarks">
|
78
|
+
<xsl:with-param name="contents" select="$contents"/>
|
79
|
+
</xsl:call-template>
|
80
|
+
|
69
81
|
<!-- Cover Page -->
|
70
82
|
<fo:page-sequence master-reference="cover-page" force-page-count="no-force">
|
71
83
|
<fo:flow flow-name="xsl-region-body">
|
@@ -150,7 +162,40 @@
|
|
150
162
|
<fo:block margin-left="-20mm">
|
151
163
|
<fo:block font-size="17pt" margin-bottom="16pt">
|
152
164
|
<xsl:value-of select="$title"/>
|
165
|
+
|
166
|
+
<xsl:for-each select="/un:un-standard/un:bibdata/un:note[@type = 'title-footnote']">
|
167
|
+
<xsl:variable name="number" select="position()"/>
|
168
|
+
<fo:inline font-size="14pt" baseline-shift="15%" font-weight="normal">
|
169
|
+
<xsl:if test="$number = 1">
|
170
|
+
<xsl:text> </xsl:text>
|
171
|
+
</xsl:if>
|
172
|
+
<fo:basic-link internal-destination="title-footnote_{$number}" fox:alt-text="title footnote">
|
173
|
+
<xsl:call-template name="repeat">
|
174
|
+
<xsl:with-param name="char" select="'*'"/>
|
175
|
+
<xsl:with-param name="count" select="$number"/>
|
176
|
+
</xsl:call-template>
|
177
|
+
</fo:basic-link>
|
178
|
+
<xsl:if test="position() != last()"><fo:inline baseline-shift="20%">,</fo:inline></xsl:if>
|
179
|
+
</fo:inline>
|
180
|
+
</xsl:for-each>
|
181
|
+
|
182
|
+
<xsl:for-each select="/un:un-standard/un:bibdata/un:note[@type = 'title-footnote']">
|
183
|
+
<xsl:variable name="number" select="position()"/>
|
184
|
+
<fo:block id="title-footnote_{$number}" font-size="14pt" font-weight="normal">
|
185
|
+
<xsl:if test="$number = 1">
|
186
|
+
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
187
|
+
</xsl:if>
|
188
|
+
<xsl:call-template name="repeat">
|
189
|
+
<xsl:with-param name="char" select="'*'"/>
|
190
|
+
<xsl:with-param name="count" select="$number"/>
|
191
|
+
</xsl:call-template>
|
192
|
+
<xsl:text> </xsl:text>
|
193
|
+
<xsl:apply-templates/>
|
194
|
+
</fo:block>
|
195
|
+
</xsl:for-each>
|
196
|
+
|
153
197
|
</fo:block>
|
198
|
+
|
154
199
|
<fo:block font-size="14pt" margin-bottom="16pt">
|
155
200
|
<xsl:value-of select="/un:un-standard/un:bibdata/un:title[@language = 'en' and @type = 'subtitle']"/>
|
156
201
|
</fo:block>
|
@@ -173,20 +218,22 @@
|
|
173
218
|
</fo:block>
|
174
219
|
|
175
220
|
<fo:block padding-top="1mm">
|
176
|
-
<
|
177
|
-
<
|
178
|
-
<barcode:
|
179
|
-
<barcode:
|
180
|
-
|
181
|
-
|
182
|
-
<barcode:
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
221
|
+
<xsl:if test="normalize-space($code) != ''">
|
222
|
+
<fo:instream-foreign-object fox:alt-text="Barcode">
|
223
|
+
<barcode:barcode message="{$code}">
|
224
|
+
<barcode:code39>
|
225
|
+
<barcode:height>8.5mm</barcode:height>
|
226
|
+
<barcode:module-width>0.24mm</barcode:module-width>
|
227
|
+
<barcode:human-readable>
|
228
|
+
<barcode:placement>none</barcode:placement>
|
229
|
+
<!--<barcode:pattern>* _ _ _ _ _ _ _ _ _ *</barcode:pattern>
|
230
|
+
<barcode:font-name>Arial</barcode:font-name>
|
231
|
+
<barcode:font-size>9.7pt</barcode:font-size> -->
|
232
|
+
</barcode:human-readable>
|
233
|
+
</barcode:code39>
|
234
|
+
</barcode:barcode>
|
235
|
+
</fo:instream-foreign-object>
|
236
|
+
</xsl:if>
|
190
237
|
</fo:block>
|
191
238
|
<fo:block padding-top="-0.8mm" text-align="left" font-family="Arial" font-size="8pt" letter-spacing="1.8mm">
|
192
239
|
<xsl:value-of select="concat('*', $code, '*')"/>
|
@@ -200,14 +247,16 @@
|
|
200
247
|
</fo:block-container>
|
201
248
|
<fo:block-container absolute-position="fixed" left="170mm" top="253mm">
|
202
249
|
<fo:block>
|
203
|
-
<
|
204
|
-
<
|
205
|
-
<barcode:
|
206
|
-
<barcode:
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
250
|
+
<xsl:if test="normalize-space(/un:un-standard/un:bibdata/un:ext/un:session/un:id) != ''">
|
251
|
+
<fo:instream-foreign-object fox:alt-text="Barcode">
|
252
|
+
<barcode:barcode message="{concat('http://undocs.org/', /un:un-standard/un:bibdata/un:ext/un:session/un:id)}">
|
253
|
+
<barcode:qr>
|
254
|
+
<barcode:module-width>0.55mm</barcode:module-width>
|
255
|
+
<barcode:ec-level>M</barcode:ec-level>
|
256
|
+
</barcode:qr>
|
257
|
+
</barcode:barcode>
|
258
|
+
</fo:instream-foreign-object>
|
259
|
+
</xsl:if>
|
211
260
|
</fo:block>
|
212
261
|
</fo:block-container>
|
213
262
|
|
@@ -262,6 +311,65 @@
|
|
262
311
|
</xsl:template>
|
263
312
|
|
264
313
|
|
314
|
+
|
315
|
+
<!-- ============================= -->
|
316
|
+
<!-- CONTENTS -->
|
317
|
+
<!-- ============================= -->
|
318
|
+
<xsl:template match="node()" mode="contents">
|
319
|
+
<xsl:apply-templates mode="contents"/>
|
320
|
+
</xsl:template>
|
321
|
+
|
322
|
+
<!-- element with title -->
|
323
|
+
<xsl:template match="*[un:title]" mode="contents">
|
324
|
+
<xsl:variable name="level">
|
325
|
+
<xsl:call-template name="getLevel">
|
326
|
+
<xsl:with-param name="depth" select="un:title/@depth"/>
|
327
|
+
</xsl:call-template>
|
328
|
+
</xsl:variable>
|
329
|
+
|
330
|
+
<xsl:variable name="display">
|
331
|
+
<xsl:choose>
|
332
|
+
<xsl:when test="$level > 3">false</xsl:when>
|
333
|
+
<xsl:otherwise>true</xsl:otherwise>
|
334
|
+
</xsl:choose>
|
335
|
+
</xsl:variable>
|
336
|
+
|
337
|
+
<xsl:variable name="skip">
|
338
|
+
<xsl:choose>
|
339
|
+
<xsl:when test="ancestor-or-self::un:bibitem">true</xsl:when>
|
340
|
+
<xsl:when test="ancestor-or-self::un:term">true</xsl:when>
|
341
|
+
<xsl:when test="@inline-header = 'true'">true</xsl:when>
|
342
|
+
<xsl:otherwise>false</xsl:otherwise>
|
343
|
+
</xsl:choose>
|
344
|
+
</xsl:variable>
|
345
|
+
|
346
|
+
<xsl:if test="$skip = 'false'">
|
347
|
+
|
348
|
+
<xsl:variable name="section">
|
349
|
+
<xsl:call-template name="getSection"/>
|
350
|
+
</xsl:variable>
|
351
|
+
|
352
|
+
<xsl:variable name="title">
|
353
|
+
<xsl:call-template name="getName"/>
|
354
|
+
</xsl:variable>
|
355
|
+
|
356
|
+
<xsl:variable name="type">
|
357
|
+
<xsl:value-of select="local-name()"/>
|
358
|
+
</xsl:variable>
|
359
|
+
|
360
|
+
<item id="{@id}" level="{$level}" section="{$section}" type="{$type}" display="{$display}">
|
361
|
+
<title>
|
362
|
+
<xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
|
363
|
+
</title>
|
364
|
+
<xsl:apply-templates mode="contents"/>
|
365
|
+
</item>
|
366
|
+
</xsl:if>
|
367
|
+
|
368
|
+
</xsl:template>
|
369
|
+
<xsl:template match="un:references[not(@normative='true')]/un:bibitem" mode="contents"/>
|
370
|
+
<!-- ============================= -->
|
371
|
+
<!-- ============================= -->
|
372
|
+
|
265
373
|
|
266
374
|
<!-- ============================= -->
|
267
375
|
<!-- PARAGRAPHS -->
|
@@ -1104,13 +1212,22 @@
|
|
1104
1212
|
|
1105
1213
|
</title-edition>
|
1106
1214
|
|
1215
|
+
<title-edition lang="fr">
|
1216
|
+
|
1217
|
+
<xsl:text>Édition </xsl:text>
|
1218
|
+
|
1219
|
+
</title-edition>
|
1220
|
+
|
1107
1221
|
|
1108
1222
|
<title-toc lang="en">
|
1109
1223
|
|
1110
1224
|
|
1111
1225
|
|
1112
1226
|
</title-toc>
|
1113
|
-
<title-toc lang="fr">
|
1227
|
+
<title-toc lang="fr">
|
1228
|
+
|
1229
|
+
|
1230
|
+
</title-toc>
|
1114
1231
|
|
1115
1232
|
<title-toc lang="zh">Contents</title-toc>
|
1116
1233
|
|
@@ -1130,13 +1247,22 @@
|
|
1130
1247
|
<title-part lang="en">
|
1131
1248
|
|
1132
1249
|
|
1250
|
+
|
1133
1251
|
</title-part>
|
1134
1252
|
<title-part lang="fr">
|
1135
1253
|
|
1136
1254
|
|
1255
|
+
|
1137
1256
|
</title-part>
|
1138
1257
|
<title-part lang="zh">第 # 部分:</title-part>
|
1139
1258
|
|
1259
|
+
<title-subpart lang="en">
|
1260
|
+
|
1261
|
+
</title-subpart>
|
1262
|
+
<title-subpart lang="fr">
|
1263
|
+
|
1264
|
+
</title-subpart>
|
1265
|
+
|
1140
1266
|
<title-modified lang="en">modified</title-modified>
|
1141
1267
|
<title-modified lang="fr">modifiée</title-modified>
|
1142
1268
|
|
@@ -1198,10 +1324,19 @@
|
|
1198
1324
|
|
1199
1325
|
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
1200
1326
|
<xsl:param name="name"/>
|
1201
|
-
<xsl:
|
1202
|
-
|
1327
|
+
<xsl:param name="lang"/>
|
1328
|
+
<xsl:variable name="lang_">
|
1329
|
+
<xsl:choose>
|
1330
|
+
<xsl:when test="$lang != ''">
|
1331
|
+
<xsl:value-of select="$lang"/>
|
1332
|
+
</xsl:when>
|
1333
|
+
<xsl:otherwise>
|
1334
|
+
<xsl:call-template name="getLang"/>
|
1335
|
+
</xsl:otherwise>
|
1336
|
+
</xsl:choose>
|
1203
1337
|
</xsl:variable>
|
1204
|
-
<xsl:variable name="
|
1338
|
+
<xsl:variable name="language" select="normalize-space($lang_)"/>
|
1339
|
+
<xsl:variable name="title_" select="$titles/*[local-name() = $name][@lang = $language]"/>
|
1205
1340
|
<xsl:choose>
|
1206
1341
|
<xsl:when test="normalize-space($title_) != ''">
|
1207
1342
|
<xsl:value-of select="$title_"/>
|
@@ -1210,7 +1345,9 @@
|
|
1210
1345
|
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
1211
1346
|
</xsl:otherwise>
|
1212
1347
|
</xsl:choose>
|
1213
|
-
</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="
|
1348
|
+
</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="root-style">
|
1349
|
+
|
1350
|
+
</xsl:attribute-set><xsl:attribute-set name="link-style">
|
1214
1351
|
|
1215
1352
|
|
1216
1353
|
|
@@ -1344,6 +1481,7 @@
|
|
1344
1481
|
|
1345
1482
|
|
1346
1483
|
|
1484
|
+
|
1347
1485
|
</xsl:attribute-set><xsl:attribute-set name="appendix-style">
|
1348
1486
|
|
1349
1487
|
|
@@ -1379,6 +1517,7 @@
|
|
1379
1517
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1380
1518
|
|
1381
1519
|
|
1520
|
+
|
1382
1521
|
</xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
|
1383
1522
|
|
1384
1523
|
|
@@ -1445,6 +1584,7 @@
|
|
1445
1584
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
1446
1585
|
|
1447
1586
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
1587
|
+
|
1448
1588
|
|
1449
1589
|
|
1450
1590
|
|
@@ -1566,6 +1706,10 @@
|
|
1566
1706
|
|
1567
1707
|
|
1568
1708
|
|
1709
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
1710
|
+
<fo:block> </fo:block>
|
1711
|
+
</xsl:if> -->
|
1712
|
+
|
1569
1713
|
<!-- $namespace = 'iso' or -->
|
1570
1714
|
|
1571
1715
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
@@ -1603,6 +1747,7 @@
|
|
1603
1747
|
<xsl:with-param name="table" select="$simple-table"/>
|
1604
1748
|
</xsl:call-template>
|
1605
1749
|
</xsl:variable>
|
1750
|
+
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
1606
1751
|
|
1607
1752
|
<!-- <xsl:variable name="colwidths2">
|
1608
1753
|
<xsl:call-template name="calculate-column-widths">
|
@@ -1624,32 +1769,54 @@
|
|
1624
1769
|
<fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
|
1625
1770
|
|
1626
1771
|
|
1627
|
-
|
1772
|
+
|
1773
|
+
|
1628
1774
|
|
1629
1775
|
<xsl:attribute name="margin-bottom">18pt</xsl:attribute>
|
1776
|
+
<xsl:attribute name="font-size">8pt</xsl:attribute>
|
1777
|
+
|
1630
1778
|
|
1631
1779
|
|
1632
|
-
|
1780
|
+
|
1633
1781
|
|
1634
1782
|
|
1635
1783
|
|
1636
|
-
|
1637
|
-
|
1638
|
-
|
1639
|
-
|
1640
|
-
|
1641
|
-
|
1784
|
+
|
1785
|
+
|
1786
|
+
|
1787
|
+
|
1788
|
+
<xsl:variable name="table_attributes">
|
1789
|
+
<attribute name="table-layout">fixed</attribute>
|
1790
|
+
<attribute name="width">100%</attribute>
|
1791
|
+
<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
|
1792
|
+
<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
|
1642
1793
|
|
1643
1794
|
|
1644
1795
|
|
1645
|
-
<xsl:attribute name="border-top">0.5pt solid black</xsl:attribute>
|
1646
|
-
<xsl:attribute name="font-size">8pt</xsl:attribute>
|
1647
1796
|
|
1797
|
+
|
1798
|
+
|
1648
1799
|
|
1800
|
+
<attribute name="border-top">0.5pt solid black</attribute>
|
1801
|
+
|
1649
1802
|
|
1803
|
+
|
1650
1804
|
|
1805
|
+
</xsl:variable>
|
1806
|
+
|
1807
|
+
|
1808
|
+
<fo:table id="{@id}" table-omit-footer-at-break="true">
|
1651
1809
|
|
1810
|
+
<xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
|
1811
|
+
<xsl:attribute name="{@name}">
|
1812
|
+
<xsl:value-of select="."/>
|
1813
|
+
</xsl:attribute>
|
1814
|
+
</xsl:for-each>
|
1652
1815
|
|
1816
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
1817
|
+
<xsl:if test="$isNoteOrFnExist = 'true'">
|
1818
|
+
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
1819
|
+
</xsl:if>
|
1653
1820
|
|
1654
1821
|
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
1655
1822
|
<xsl:choose>
|
@@ -1673,6 +1840,33 @@
|
|
1673
1840
|
|
1674
1841
|
</fo:table>
|
1675
1842
|
|
1843
|
+
<xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
|
1844
|
+
<xsl:call-template name="insertTableFooterInSeparateTable">
|
1845
|
+
<xsl:with-param name="table_attributes" select="$table_attributes"/>
|
1846
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
1847
|
+
</xsl:call-template>
|
1848
|
+
</xsl:for-each>
|
1849
|
+
|
1850
|
+
<!-- insert footer as table -->
|
1851
|
+
<!-- <fo:table>
|
1852
|
+
<xsl:for-each select="xalan::nodeset($table_attributes)/attribute">
|
1853
|
+
<xsl:attribute name="{@name}">
|
1854
|
+
<xsl:value-of select="."/>
|
1855
|
+
</xsl:attribute>
|
1856
|
+
</xsl:for-each>
|
1857
|
+
|
1858
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
1859
|
+
<xsl:choose>
|
1860
|
+
<xsl:when test=". = 1 or . = 0">
|
1861
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
1862
|
+
</xsl:when>
|
1863
|
+
<xsl:otherwise>
|
1864
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
1865
|
+
</xsl:otherwise>
|
1866
|
+
</xsl:choose>
|
1867
|
+
</xsl:for-each>
|
1868
|
+
</fo:table>-->
|
1869
|
+
|
1676
1870
|
|
1677
1871
|
|
1678
1872
|
|
@@ -1682,6 +1876,7 @@
|
|
1682
1876
|
<xsl:if test="normalize-space() != ''">
|
1683
1877
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
1684
1878
|
|
1879
|
+
|
1685
1880
|
<xsl:apply-templates/>
|
1686
1881
|
</fo:block>
|
1687
1882
|
</xsl:if>
|
@@ -1737,6 +1932,13 @@
|
|
1737
1932
|
<xsl:for-each select="xalan:nodeset($table)//tr">
|
1738
1933
|
<xsl:variable name="td_text">
|
1739
1934
|
<xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
|
1935
|
+
|
1936
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
1937
|
+
<xsl:for-each select="*[local-name()='td'][$curr-col]//*[local-name()='math']">
|
1938
|
+
<word><xsl:value-of select="normalize-space(.)"/></word>
|
1939
|
+
</xsl:for-each>
|
1940
|
+
</xsl:if> -->
|
1941
|
+
|
1740
1942
|
</xsl:variable>
|
1741
1943
|
<xsl:variable name="words">
|
1742
1944
|
<xsl:variable name="string_with_added_zerospaces">
|
@@ -1796,11 +1998,14 @@
|
|
1796
1998
|
<xsl:value-of select="*[local-name()='origin']/@citeas"/>
|
1797
1999
|
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
1798
2000
|
<xsl:value-of select="@target"/>
|
2001
|
+
</xsl:template><xsl:template match="*[local-name()='math']" mode="td_text">
|
2002
|
+
<xsl:variable name="math_text" select="normalize-space(.)"/>
|
2003
|
+
<xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
|
1799
2004
|
</xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
|
1800
2005
|
<xsl:param name="cols-count"/>
|
1801
2006
|
<!-- font-weight="bold" -->
|
1802
2007
|
<fo:table-header>
|
1803
|
-
|
2008
|
+
|
1804
2009
|
<xsl:apply-templates/>
|
1805
2010
|
</fo:table-header>
|
1806
2011
|
</xsl:template><xsl:template name="table-header-title">
|
@@ -1825,6 +2030,13 @@
|
|
1825
2030
|
</xsl:template><xsl:template match="*[local-name()='tfoot']"/><xsl:template match="*[local-name()='tfoot']" mode="process">
|
1826
2031
|
<xsl:apply-templates/>
|
1827
2032
|
</xsl:template><xsl:template name="insertTableFooter">
|
2033
|
+
<xsl:param name="cols-count"/>
|
2034
|
+
<xsl:if test="../*[local-name()='tfoot']">
|
2035
|
+
<fo:table-footer>
|
2036
|
+
<xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
|
2037
|
+
</fo:table-footer>
|
2038
|
+
</xsl:if>
|
2039
|
+
</xsl:template><xsl:template name="insertTableFooter2">
|
1828
2040
|
<xsl:param name="cols-count"/>
|
1829
2041
|
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
1830
2042
|
<xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
|
@@ -1846,11 +2058,29 @@
|
|
1846
2058
|
<!-- fn will be processed inside 'note' processing -->
|
1847
2059
|
|
1848
2060
|
|
2061
|
+
|
2062
|
+
|
2063
|
+
|
2064
|
+
|
1849
2065
|
<!-- except gb -->
|
1850
2066
|
|
1851
2067
|
<xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
|
1852
2068
|
|
1853
2069
|
|
2070
|
+
<!-- show Note under table in preface (ex. abstract) sections -->
|
2071
|
+
<!-- empty, because notes show at page side in main sections -->
|
2072
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
2073
|
+
<xsl:choose>
|
2074
|
+
<xsl:when test="ancestor::*[local-name()='preface']">
|
2075
|
+
<xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
|
2076
|
+
</xsl:when>
|
2077
|
+
<xsl:otherwise>
|
2078
|
+
<fo:block/>
|
2079
|
+
</xsl:otherwise>
|
2080
|
+
</xsl:choose>
|
2081
|
+
</xsl:if> -->
|
2082
|
+
|
2083
|
+
|
1854
2084
|
<!-- horizontal row separator -->
|
1855
2085
|
|
1856
2086
|
|
@@ -1864,6 +2094,88 @@
|
|
1864
2094
|
</fo:table-footer>
|
1865
2095
|
|
1866
2096
|
</xsl:if>
|
2097
|
+
</xsl:template><xsl:template name="insertTableFooterInSeparateTable">
|
2098
|
+
<xsl:param name="table_attributes"/>
|
2099
|
+
<xsl:param name="colwidths"/>
|
2100
|
+
|
2101
|
+
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
2102
|
+
|
2103
|
+
<xsl:if test="$isNoteOrFnExist = 'true'">
|
2104
|
+
|
2105
|
+
<xsl:variable name="cols-count" select="count(xalan:nodeset($colwidths)//column)"/>
|
2106
|
+
|
2107
|
+
<fo:table keep-with-previous="always">
|
2108
|
+
<xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
|
2109
|
+
<xsl:choose>
|
2110
|
+
<xsl:when test="@name = 'border-top'">
|
2111
|
+
<xsl:attribute name="{@name}">0pt solid black</xsl:attribute>
|
2112
|
+
</xsl:when>
|
2113
|
+
<xsl:when test="@name = 'border'">
|
2114
|
+
<xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
|
2115
|
+
<xsl:attribute name="border-top">0pt solid black</xsl:attribute>
|
2116
|
+
</xsl:when>
|
2117
|
+
<xsl:otherwise>
|
2118
|
+
<xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
|
2119
|
+
</xsl:otherwise>
|
2120
|
+
</xsl:choose>
|
2121
|
+
</xsl:for-each>
|
2122
|
+
|
2123
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
2124
|
+
<xsl:choose>
|
2125
|
+
<xsl:when test=". = 1 or . = 0">
|
2126
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
2127
|
+
</xsl:when>
|
2128
|
+
<xsl:otherwise>
|
2129
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
2130
|
+
</xsl:otherwise>
|
2131
|
+
</xsl:choose>
|
2132
|
+
</xsl:for-each>
|
2133
|
+
|
2134
|
+
<fo:table-body>
|
2135
|
+
<fo:table-row>
|
2136
|
+
<fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
|
2137
|
+
|
2138
|
+
|
2139
|
+
|
2140
|
+
<!-- fn will be processed inside 'note' processing -->
|
2141
|
+
|
2142
|
+
|
2143
|
+
|
2144
|
+
|
2145
|
+
|
2146
|
+
|
2147
|
+
|
2148
|
+
<!-- except gb -->
|
2149
|
+
|
2150
|
+
<xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
|
2151
|
+
|
2152
|
+
|
2153
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
2154
|
+
<xsl:choose>
|
2155
|
+
<xsl:when test="ancestor::*[local-name()='preface']">
|
2156
|
+
show Note under table in preface (ex. abstract) sections
|
2157
|
+
<xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
|
2158
|
+
</xsl:when>
|
2159
|
+
<xsl:otherwise>
|
2160
|
+
empty, because notes show at page side in main sections
|
2161
|
+
<fo:block/>
|
2162
|
+
</xsl:otherwise>
|
2163
|
+
</xsl:choose>
|
2164
|
+
</xsl:if> -->
|
2165
|
+
|
2166
|
+
|
2167
|
+
<!-- horizontal row separator -->
|
2168
|
+
|
2169
|
+
|
2170
|
+
<!-- fn processing -->
|
2171
|
+
<xsl:call-template name="fn_display"/>
|
2172
|
+
|
2173
|
+
</fo:table-cell>
|
2174
|
+
</fo:table-row>
|
2175
|
+
</fo:table-body>
|
2176
|
+
|
2177
|
+
</fo:table>
|
2178
|
+
</xsl:if>
|
1867
2179
|
</xsl:template><xsl:template match="*[local-name()='tbody']">
|
1868
2180
|
|
1869
2181
|
<xsl:variable name="cols-count">
|
@@ -1920,8 +2232,12 @@
|
|
1920
2232
|
<xsl:if test="not(*[local-name()='th'])">
|
1921
2233
|
<xsl:attribute name="min-height">8mm</xsl:attribute>
|
1922
2234
|
</xsl:if>
|
1923
|
-
|
1924
|
-
|
2235
|
+
|
2236
|
+
|
2237
|
+
|
2238
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
2239
|
+
<xsl:attribute name="height">8mm</xsl:attribute>
|
2240
|
+
</xsl:if> -->
|
1925
2241
|
|
1926
2242
|
<xsl:apply-templates/>
|
1927
2243
|
</fo:table-row>
|
@@ -1955,6 +2271,7 @@
|
|
1955
2271
|
<xsl:attribute name="text-indent">0mm</xsl:attribute>
|
1956
2272
|
|
1957
2273
|
|
2274
|
+
|
1958
2275
|
<xsl:if test="@colspan">
|
1959
2276
|
<xsl:attribute name="number-columns-spanned">
|
1960
2277
|
<xsl:value-of select="@colspan"/>
|
@@ -1994,7 +2311,7 @@
|
|
1994
2311
|
|
1995
2312
|
|
1996
2313
|
|
1997
|
-
|
2314
|
+
|
1998
2315
|
|
1999
2316
|
|
2000
2317
|
|
@@ -2009,6 +2326,7 @@
|
|
2009
2326
|
<xsl:attribute name="text-indent">0mm</xsl:attribute>
|
2010
2327
|
|
2011
2328
|
|
2329
|
+
|
2012
2330
|
<xsl:if test="@colspan">
|
2013
2331
|
<xsl:attribute name="number-columns-spanned">
|
2014
2332
|
<xsl:value-of select="@colspan"/>
|
@@ -2020,7 +2338,8 @@
|
|
2020
2338
|
</xsl:attribute>
|
2021
2339
|
</xsl:if>
|
2022
2340
|
<xsl:call-template name="display-align"/>
|
2023
|
-
<fo:block>
|
2341
|
+
<fo:block>
|
2342
|
+
|
2024
2343
|
<xsl:apply-templates/>
|
2025
2344
|
</fo:block>
|
2026
2345
|
</fo:table-cell>
|
@@ -2032,6 +2351,8 @@
|
|
2032
2351
|
|
2033
2352
|
|
2034
2353
|
|
2354
|
+
|
2355
|
+
|
2035
2356
|
<fo:inline padding-right="2mm">
|
2036
2357
|
|
2037
2358
|
|
@@ -2046,10 +2367,11 @@
|
|
2046
2367
|
</fo:inline> -->
|
2047
2368
|
</xsl:if>
|
2048
2369
|
|
2049
|
-
|
2370
|
+
|
2050
2371
|
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
2051
2372
|
|
2052
2373
|
</fo:inline>
|
2374
|
+
|
2053
2375
|
<xsl:apply-templates mode="process"/>
|
2054
2376
|
</fo:block>
|
2055
2377
|
|
@@ -2073,6 +2395,7 @@
|
|
2073
2395
|
|
2074
2396
|
|
2075
2397
|
|
2398
|
+
|
2076
2399
|
<fo:inline font-size="80%" padding-right="5mm" id="{@id}">
|
2077
2400
|
|
2078
2401
|
<xsl:attribute name="vertical-align">super</xsl:attribute>
|
@@ -2082,12 +2405,15 @@
|
|
2082
2405
|
|
2083
2406
|
|
2084
2407
|
|
2408
|
+
|
2085
2409
|
<xsl:value-of select="@reference"/>
|
2086
2410
|
|
2411
|
+
|
2087
2412
|
</fo:inline>
|
2088
2413
|
<fo:inline>
|
2089
2414
|
|
2090
|
-
<xsl:apply-templates/>
|
2415
|
+
<!-- <xsl:apply-templates /> -->
|
2416
|
+
<xsl:copy-of select="./node()"/>
|
2091
2417
|
</fo:inline>
|
2092
2418
|
</fo:block>
|
2093
2419
|
</xsl:if>
|
@@ -2124,7 +2450,20 @@
|
|
2124
2450
|
<xsl:variable name="following_dl_colwidths">
|
2125
2451
|
<xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
|
2126
2452
|
<xsl:variable name="html-table">
|
2127
|
-
<xsl:variable name="
|
2453
|
+
<xsl:variable name="doc_ns">
|
2454
|
+
|
2455
|
+
</xsl:variable>
|
2456
|
+
<xsl:variable name="ns">
|
2457
|
+
<xsl:choose>
|
2458
|
+
<xsl:when test="normalize-space($doc_ns) != ''">
|
2459
|
+
<xsl:value-of select="normalize-space($doc_ns)"/>
|
2460
|
+
</xsl:when>
|
2461
|
+
<xsl:otherwise>
|
2462
|
+
<xsl:value-of select="substring-before(name(/*), '-')"/>
|
2463
|
+
</xsl:otherwise>
|
2464
|
+
</xsl:choose>
|
2465
|
+
</xsl:variable>
|
2466
|
+
<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
|
2128
2467
|
<xsl:element name="{$ns}:table">
|
2129
2468
|
<xsl:for-each select="*[local-name() = 'dl'][1]">
|
2130
2469
|
<tbody>
|
@@ -2189,7 +2528,8 @@
|
|
2189
2528
|
<xsl:attribute name="margin-bottom">0</xsl:attribute>
|
2190
2529
|
</xsl:if>
|
2191
2530
|
|
2192
|
-
<xsl:apply-templates/>
|
2531
|
+
<!-- <xsl:apply-templates /> -->
|
2532
|
+
<xsl:copy-of select="./node()"/>
|
2193
2533
|
</fo:block>
|
2194
2534
|
</fo:table-cell>
|
2195
2535
|
</fo:table-row>
|
@@ -2208,9 +2548,12 @@
|
|
2208
2548
|
|
2209
2549
|
|
2210
2550
|
|
2551
|
+
|
2211
2552
|
<fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
|
2212
2553
|
|
2554
|
+
|
2213
2555
|
<xsl:value-of select="@reference"/>
|
2556
|
+
|
2214
2557
|
</fo:basic-link>
|
2215
2558
|
</fo:inline>
|
2216
2559
|
</xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
|
@@ -2218,7 +2561,11 @@
|
|
2218
2561
|
<xsl:apply-templates/>
|
2219
2562
|
</fo:inline>
|
2220
2563
|
</xsl:template><xsl:template match="*[local-name()='dl']">
|
2221
|
-
<fo:block-container
|
2564
|
+
<fo:block-container>
|
2565
|
+
|
2566
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2567
|
+
|
2568
|
+
|
2222
2569
|
<xsl:if test="parent::*[local-name() = 'note']">
|
2223
2570
|
<xsl:attribute name="margin-left">
|
2224
2571
|
<xsl:choose>
|
@@ -2228,8 +2575,11 @@
|
|
2228
2575
|
</xsl:attribute>
|
2229
2576
|
|
2230
2577
|
</xsl:if>
|
2231
|
-
<fo:block-container
|
2232
|
-
|
2578
|
+
<fo:block-container>
|
2579
|
+
|
2580
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2581
|
+
|
2582
|
+
|
2233
2583
|
<xsl:variable name="parent" select="local-name(..)"/>
|
2234
2584
|
|
2235
2585
|
<xsl:variable name="key_iso">
|
@@ -2243,9 +2593,12 @@
|
|
2243
2593
|
<fo:block margin-bottom="12pt" text-align="left">
|
2244
2594
|
|
2245
2595
|
<xsl:variable name="title-where">
|
2246
|
-
|
2247
|
-
|
2248
|
-
|
2596
|
+
|
2597
|
+
|
2598
|
+
<xsl:call-template name="getTitle">
|
2599
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2600
|
+
</xsl:call-template>
|
2601
|
+
|
2249
2602
|
</xsl:variable>
|
2250
2603
|
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
2251
2604
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
@@ -2261,9 +2614,12 @@
|
|
2261
2614
|
|
2262
2615
|
|
2263
2616
|
<xsl:variable name="title-where">
|
2264
|
-
|
2265
|
-
|
2266
|
-
|
2617
|
+
|
2618
|
+
|
2619
|
+
<xsl:call-template name="getTitle">
|
2620
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2621
|
+
</xsl:call-template>
|
2622
|
+
|
2267
2623
|
</xsl:variable>
|
2268
2624
|
<xsl:value-of select="$title-where"/>
|
2269
2625
|
</fo:block>
|
@@ -2274,9 +2630,12 @@
|
|
2274
2630
|
|
2275
2631
|
|
2276
2632
|
<xsl:variable name="title-key">
|
2277
|
-
|
2278
|
-
|
2279
|
-
|
2633
|
+
|
2634
|
+
|
2635
|
+
<xsl:call-template name="getTitle">
|
2636
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
2637
|
+
</xsl:call-template>
|
2638
|
+
|
2280
2639
|
</xsl:variable>
|
2281
2640
|
<xsl:value-of select="$title-key"/>
|
2282
2641
|
</fo:block>
|
@@ -2308,7 +2667,20 @@
|
|
2308
2667
|
</xsl:choose>
|
2309
2668
|
<!-- create virtual html table for dl/[dt and dd] -->
|
2310
2669
|
<xsl:variable name="html-table">
|
2311
|
-
<xsl:variable name="
|
2670
|
+
<xsl:variable name="doc_ns">
|
2671
|
+
|
2672
|
+
</xsl:variable>
|
2673
|
+
<xsl:variable name="ns">
|
2674
|
+
<xsl:choose>
|
2675
|
+
<xsl:when test="normalize-space($doc_ns) != ''">
|
2676
|
+
<xsl:value-of select="normalize-space($doc_ns)"/>
|
2677
|
+
</xsl:when>
|
2678
|
+
<xsl:otherwise>
|
2679
|
+
<xsl:value-of select="substring-before(name(/*), '-')"/>
|
2680
|
+
</xsl:otherwise>
|
2681
|
+
</xsl:choose>
|
2682
|
+
</xsl:variable>
|
2683
|
+
<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
|
2312
2684
|
<xsl:element name="{$ns}:table">
|
2313
2685
|
<tbody>
|
2314
2686
|
<xsl:apply-templates mode="dl"/>
|
@@ -2452,6 +2824,7 @@
|
|
2452
2824
|
|
2453
2825
|
|
2454
2826
|
|
2827
|
+
|
2455
2828
|
<xsl:apply-templates/>
|
2456
2829
|
<!-- <xsl:if test="$namespace = 'gb'">
|
2457
2830
|
<xsl:if test="ancestor::*[local-name()='formula']">
|
@@ -2505,6 +2878,7 @@
|
|
2505
2878
|
</fo:inline>
|
2506
2879
|
</xsl:template><xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
|
2507
2880
|
<fo:inline font-weight="bold">
|
2881
|
+
|
2508
2882
|
<xsl:apply-templates/>
|
2509
2883
|
</fo:inline>
|
2510
2884
|
</xsl:template><xsl:template match="*[local-name()='sup']">
|
@@ -2518,18 +2892,18 @@
|
|
2518
2892
|
</xsl:template><xsl:template match="*[local-name()='tt']">
|
2519
2893
|
<fo:inline xsl:use-attribute-sets="tt-style">
|
2520
2894
|
<xsl:variable name="_font-size">
|
2521
|
-
|
2522
|
-
|
2523
|
-
|
2524
2895
|
|
2525
2896
|
|
2526
2897
|
|
2527
2898
|
|
2528
2899
|
|
2529
2900
|
|
2530
|
-
|
2531
2901
|
|
2532
|
-
|
2902
|
+
|
2903
|
+
|
2904
|
+
|
2905
|
+
|
2906
|
+
|
2533
2907
|
|
2534
2908
|
|
2535
2909
|
</xsl:variable>
|
@@ -2833,7 +3207,18 @@
|
|
2833
3207
|
<xsl:with-param name="previousRow" select="$newRow"/>
|
2834
3208
|
</xsl:apply-templates>
|
2835
3209
|
</xsl:template><xsl:template name="getLang">
|
2836
|
-
<xsl:variable name="
|
3210
|
+
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3211
|
+
<xsl:variable name="language">
|
3212
|
+
<xsl:choose>
|
3213
|
+
<xsl:when test="$language_current != ''">
|
3214
|
+
<xsl:value-of select="$language_current"/>
|
3215
|
+
</xsl:when>
|
3216
|
+
<xsl:otherwise>
|
3217
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
3218
|
+
</xsl:otherwise>
|
3219
|
+
</xsl:choose>
|
3220
|
+
</xsl:variable>
|
3221
|
+
|
2837
3222
|
<xsl:choose>
|
2838
3223
|
<xsl:when test="$language = 'English'">en</xsl:when>
|
2839
3224
|
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
@@ -2867,7 +3252,8 @@
|
|
2867
3252
|
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
|
2868
3253
|
<xsl:value-of select="substring($str, 2)"/>
|
2869
3254
|
</xsl:template><xsl:template match="mathml:math">
|
2870
|
-
<fo:inline font-family="
|
3255
|
+
<fo:inline font-family="STIX Two Math"> <!-- -->
|
3256
|
+
|
2871
3257
|
<xsl:variable name="mathml">
|
2872
3258
|
<xsl:apply-templates select="." mode="mathml"/>
|
2873
3259
|
</xsl:variable>
|
@@ -2897,6 +3283,7 @@
|
|
2897
3283
|
</xsl:choose>
|
2898
3284
|
</xsl:variable>
|
2899
3285
|
<fo:inline xsl:use-attribute-sets="link-style">
|
3286
|
+
|
2900
3287
|
<xsl:choose>
|
2901
3288
|
<xsl:when test="$target = ''">
|
2902
3289
|
<xsl:apply-templates/>
|
@@ -2950,10 +3337,14 @@
|
|
2950
3337
|
</fo:inline>
|
2951
3338
|
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
2952
3339
|
<xsl:variable name="title-modified">
|
2953
|
-
|
2954
|
-
|
2955
|
-
|
3340
|
+
|
3341
|
+
|
3342
|
+
<xsl:call-template name="getTitle">
|
3343
|
+
<xsl:with-param name="name" select="'title-modified'"/>
|
3344
|
+
</xsl:call-template>
|
3345
|
+
|
2956
3346
|
</xsl:variable>
|
3347
|
+
|
2957
3348
|
<xsl:choose>
|
2958
3349
|
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
2959
3350
|
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
@@ -2961,7 +3352,7 @@
|
|
2961
3352
|
<xsl:apply-templates/>
|
2962
3353
|
</xsl:template><xsl:template match="*[local-name() = 'xref']">
|
2963
3354
|
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
2964
|
-
|
3355
|
+
|
2965
3356
|
<xsl:apply-templates/>
|
2966
3357
|
</fo:basic-link>
|
2967
3358
|
</xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
|
@@ -3023,6 +3414,8 @@
|
|
3023
3414
|
|
3024
3415
|
|
3025
3416
|
|
3417
|
+
|
3418
|
+
|
3026
3419
|
<fo:inline xsl:use-attribute-sets="note-name-style">
|
3027
3420
|
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
3028
3421
|
</fo:inline>
|
@@ -3115,7 +3508,8 @@
|
|
3115
3508
|
</fo:inline>
|
3116
3509
|
</xsl:if>
|
3117
3510
|
</xsl:template><xsl:template match="*[local-name() = 'figure']">
|
3118
|
-
<fo:block-container id="{@id}">
|
3511
|
+
<fo:block-container id="{@id}">
|
3512
|
+
|
3119
3513
|
<fo:block>
|
3120
3514
|
<xsl:apply-templates/>
|
3121
3515
|
</fo:block>
|
@@ -3150,15 +3544,109 @@
|
|
3150
3544
|
|
3151
3545
|
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
|
3152
3546
|
</fo:block>
|
3153
|
-
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
|
3547
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
|
3154
3548
|
<xsl:apply-templates mode="contents"/>
|
3155
3549
|
<xsl:text> </xsl:text>
|
3156
|
-
</xsl:template><xsl:template match="
|
3550
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">
|
3551
|
+
<xsl:apply-templates mode="bookmarks"/>
|
3552
|
+
<xsl:text> </xsl:text>
|
3553
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="contents" priority="2">
|
3554
|
+
<xsl:value-of select="."/>
|
3555
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
|
3157
3556
|
<xsl:value-of select="."/>
|
3158
|
-
</xsl:template><xsl:template match="
|
3557
|
+
</xsl:template><xsl:template match="node()" mode="contents">
|
3558
|
+
<xsl:apply-templates mode="contents"/>
|
3559
|
+
</xsl:template><xsl:template match="node()" mode="bookmarks">
|
3560
|
+
<xsl:apply-templates mode="bookmarks"/>
|
3561
|
+
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
|
3562
|
+
<xsl:apply-templates select="."/>
|
3563
|
+
</xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" mode="contents" priority="3"/><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
|
3564
|
+
<xsl:apply-templates mode="bookmarks"/>
|
3565
|
+
</xsl:template><xsl:template name="addBookmarks">
|
3566
|
+
<xsl:param name="contents"/>
|
3567
|
+
<xsl:if test="xalan:nodeset($contents)//item">
|
3568
|
+
<fo:bookmark-tree>
|
3569
|
+
<xsl:choose>
|
3570
|
+
<xsl:when test="xalan:nodeset($contents)/doc">
|
3571
|
+
<xsl:choose>
|
3572
|
+
<xsl:when test="count(xalan:nodeset($contents)/doc) > 1">
|
3573
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
3574
|
+
<fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
|
3575
|
+
<fo:bookmark-title>
|
3576
|
+
<xsl:variable name="bookmark-title_">
|
3577
|
+
<xsl:call-template name="getLangVersion">
|
3578
|
+
<xsl:with-param name="lang" select="@lang"/>
|
3579
|
+
</xsl:call-template>
|
3580
|
+
</xsl:variable>
|
3581
|
+
<xsl:choose>
|
3582
|
+
<xsl:when test="normalize-space($bookmark-title_) != ''">
|
3583
|
+
<xsl:value-of select="normalize-space($bookmark-title_)"/>
|
3584
|
+
</xsl:when>
|
3585
|
+
<xsl:otherwise>
|
3586
|
+
<xsl:choose>
|
3587
|
+
<xsl:when test="@lang = 'en'">English</xsl:when>
|
3588
|
+
<xsl:when test="@lang = 'fr'">Français</xsl:when>
|
3589
|
+
<xsl:when test="@lang = 'de'">Deutsche</xsl:when>
|
3590
|
+
<xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
|
3591
|
+
</xsl:choose>
|
3592
|
+
</xsl:otherwise>
|
3593
|
+
</xsl:choose>
|
3594
|
+
</fo:bookmark-title>
|
3595
|
+
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
3596
|
+
</fo:bookmark>
|
3597
|
+
|
3598
|
+
</xsl:for-each>
|
3599
|
+
</xsl:when>
|
3600
|
+
<xsl:otherwise>
|
3601
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
3602
|
+
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
3603
|
+
</xsl:for-each>
|
3604
|
+
</xsl:otherwise>
|
3605
|
+
</xsl:choose>
|
3606
|
+
</xsl:when>
|
3607
|
+
<xsl:otherwise>
|
3608
|
+
<xsl:apply-templates select="xalan:nodeset($contents)/contents/item" mode="bookmark"/>
|
3609
|
+
</xsl:otherwise>
|
3610
|
+
</xsl:choose>
|
3611
|
+
|
3612
|
+
|
3613
|
+
|
3614
|
+
|
3615
|
+
|
3616
|
+
|
3617
|
+
|
3618
|
+
|
3619
|
+
</fo:bookmark-tree>
|
3620
|
+
</xsl:if>
|
3621
|
+
</xsl:template><xsl:template name="getLangVersion">
|
3622
|
+
<xsl:param name="lang"/>
|
3623
|
+
<xsl:choose>
|
3624
|
+
<xsl:when test="$lang = 'en'">
|
3625
|
+
|
3626
|
+
|
3627
|
+
</xsl:when>
|
3628
|
+
<xsl:when test="$lang = 'fr'">
|
3629
|
+
|
3630
|
+
|
3631
|
+
</xsl:when>
|
3632
|
+
<xsl:when test="$lang = 'de'">Deutsche</xsl:when>
|
3633
|
+
<xsl:otherwise><xsl:value-of select="$lang"/> version</xsl:otherwise>
|
3634
|
+
</xsl:choose>
|
3635
|
+
</xsl:template><xsl:template match="item" mode="bookmark">
|
3636
|
+
<fo:bookmark internal-destination="{@id}" starting-state="hide">
|
3637
|
+
<fo:bookmark-title>
|
3638
|
+
<xsl:if test="@section != ''">
|
3639
|
+
<xsl:value-of select="@section"/>
|
3640
|
+
<xsl:text> </xsl:text>
|
3641
|
+
</xsl:if>
|
3642
|
+
<xsl:value-of select="normalize-space(title)"/>
|
3643
|
+
</fo:bookmark-title>
|
3644
|
+
<xsl:apply-templates mode="bookmark"/>
|
3645
|
+
</fo:bookmark>
|
3646
|
+
</xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
|
3159
3647
|
<xsl:if test="normalize-space() != ''">
|
3160
3648
|
<fo:block xsl:use-attribute-sets="figure-name-style">
|
3161
|
-
|
3649
|
+
|
3162
3650
|
<xsl:apply-templates/>
|
3163
3651
|
</fo:block>
|
3164
3652
|
</xsl:if>
|
@@ -3213,7 +3701,7 @@
|
|
3213
3701
|
<xsl:apply-templates/>
|
3214
3702
|
</xsl:otherwise>
|
3215
3703
|
</xsl:choose>
|
3216
|
-
</xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
|
3704
|
+
</xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="bookmarks"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
|
3217
3705
|
<xsl:text> </xsl:text>
|
3218
3706
|
</xsl:template><xsl:template match="*[local-name() = 'strong']" mode="contents_item">
|
3219
3707
|
<xsl:copy>
|
@@ -3745,9 +4233,12 @@
|
|
3745
4233
|
</fo:block>
|
3746
4234
|
</xsl:template><xsl:template match="*[local-name() = 'deprecates']">
|
3747
4235
|
<xsl:variable name="title-deprecated">
|
3748
|
-
|
3749
|
-
|
3750
|
-
|
4236
|
+
|
4237
|
+
|
4238
|
+
<xsl:call-template name="getTitle">
|
4239
|
+
<xsl:with-param name="name" select="'title-deprecated'"/>
|
4240
|
+
</xsl:call-template>
|
4241
|
+
|
3751
4242
|
</xsl:variable>
|
3752
4243
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
3753
4244
|
<xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/>
|
@@ -3794,13 +4285,14 @@
|
|
3794
4285
|
</xsl:template><xsl:template match="*[local-name() = 'clause']">
|
3795
4286
|
<fo:block>
|
3796
4287
|
<xsl:call-template name="setId"/>
|
4288
|
+
|
3797
4289
|
<xsl:apply-templates/>
|
3798
4290
|
</fo:block>
|
3799
4291
|
</xsl:template><xsl:template match="*[local-name() = 'definitions']">
|
3800
4292
|
<fo:block id="{@id}">
|
3801
4293
|
<xsl:apply-templates/>
|
3802
4294
|
</fo:block>
|
3803
|
-
</xsl:template><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@normative='true']">
|
4295
|
+
</xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@normative='true']">
|
3804
4296
|
|
3805
4297
|
<fo:block id="{@id}">
|
3806
4298
|
<xsl:apply-templates/>
|
@@ -3824,20 +4316,30 @@
|
|
3824
4316
|
<!-- 0xA0 to space replacement -->
|
3825
4317
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
3826
4318
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
3827
|
-
<
|
3828
|
-
<xsl:
|
3829
|
-
<
|
3830
|
-
<xsl:
|
3831
|
-
<xsl:
|
3832
|
-
|
3833
|
-
|
3834
|
-
|
3835
|
-
|
3836
|
-
|
3837
|
-
|
3838
|
-
|
3839
|
-
|
3840
|
-
|
4319
|
+
<xsl:choose>
|
4320
|
+
<xsl:when test="parent::*[local-name() = 'note']">
|
4321
|
+
<fo:block-container>
|
4322
|
+
<xsl:attribute name="margin-left">
|
4323
|
+
<xsl:choose>
|
4324
|
+
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
4325
|
+
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
4326
|
+
</xsl:choose>
|
4327
|
+
</xsl:attribute>
|
4328
|
+
|
4329
|
+
|
4330
|
+
<fo:block-container margin-left="0mm">
|
4331
|
+
<fo:block>
|
4332
|
+
<xsl:apply-templates select="." mode="ul_ol"/>
|
4333
|
+
</fo:block>
|
4334
|
+
</fo:block-container>
|
4335
|
+
</fo:block-container>
|
4336
|
+
</xsl:when>
|
4337
|
+
<xsl:otherwise>
|
4338
|
+
<fo:block>
|
4339
|
+
<xsl:apply-templates select="." mode="ul_ol"/>
|
4340
|
+
</fo:block>
|
4341
|
+
</xsl:otherwise>
|
4342
|
+
</xsl:choose>
|
3841
4343
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
3842
4344
|
<!-- <row>
|
3843
4345
|
<date>05-07-2013</date>
|
@@ -4010,6 +4512,7 @@
|
|
4010
4512
|
|
4011
4513
|
|
4012
4514
|
|
4515
|
+
|
4013
4516
|
|
4014
4517
|
</xsl:variable>
|
4015
4518
|
<xsl:choose>
|
@@ -4024,6 +4527,7 @@
|
|
4024
4527
|
<dc:creator>
|
4025
4528
|
|
4026
4529
|
|
4530
|
+
|
4027
4531
|
</dc:creator>
|
4028
4532
|
<dc:description>
|
4029
4533
|
<xsl:variable name="abstract">
|
@@ -4033,6 +4537,7 @@
|
|
4033
4537
|
<xsl:copy-of select="/*/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
|
4034
4538
|
|
4035
4539
|
|
4540
|
+
|
4036
4541
|
</xsl:variable>
|
4037
4542
|
<xsl:value-of select="normalize-space($abstract)"/>
|
4038
4543
|
</dc:description>
|
@@ -4104,13 +4609,22 @@
|
|
4104
4609
|
</xsl:template><xsl:template name="split">
|
4105
4610
|
<xsl:param name="pText" select="."/>
|
4106
4611
|
<xsl:param name="sep" select="','"/>
|
4612
|
+
<xsl:param name="normalize-space" select="'true'"/>
|
4107
4613
|
<xsl:if test="string-length($pText) >0">
|
4108
4614
|
<item>
|
4109
|
-
<xsl:
|
4615
|
+
<xsl:choose>
|
4616
|
+
<xsl:when test="$normalize-space = 'true'">
|
4617
|
+
<xsl:value-of select="normalize-space(substring-before(concat($pText, $sep), $sep))"/>
|
4618
|
+
</xsl:when>
|
4619
|
+
<xsl:otherwise>
|
4620
|
+
<xsl:value-of select="substring-before(concat($pText, $sep), $sep)"/>
|
4621
|
+
</xsl:otherwise>
|
4622
|
+
</xsl:choose>
|
4110
4623
|
</item>
|
4111
4624
|
<xsl:call-template name="split">
|
4112
4625
|
<xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
|
4113
4626
|
<xsl:with-param name="sep" select="$sep"/>
|
4627
|
+
<xsl:with-param name="normalize-space" select="$normalize-space"/>
|
4114
4628
|
</xsl:call-template>
|
4115
4629
|
</xsl:if>
|
4116
4630
|
</xsl:template><xsl:template name="getDocumentId">
|
@@ -4133,6 +4647,7 @@
|
|
4133
4647
|
|
4134
4648
|
|
4135
4649
|
|
4650
|
+
|
4136
4651
|
</xsl:variable>
|
4137
4652
|
<xsl:if test="$documentNS != $XSLNS">
|
4138
4653
|
<xsl:message>[WARNING]: Document namespace: '<xsl:value-of select="$documentNS"/>' doesn't equal to xslt namespace '<xsl:value-of select="$XSLNS"/>'</xsl:message>
|
@@ -4158,4 +4673,40 @@
|
|
4158
4673
|
</xsl:otherwise>
|
4159
4674
|
</xsl:choose>
|
4160
4675
|
</xsl:attribute>
|
4676
|
+
</xsl:template><xsl:template name="add-letter-spacing">
|
4677
|
+
<xsl:param name="text"/>
|
4678
|
+
<xsl:param name="letter-spacing" select="'0.15'"/>
|
4679
|
+
<xsl:if test="string-length($text) > 0">
|
4680
|
+
<xsl:variable name="char" select="substring($text, 1, 1)"/>
|
4681
|
+
<fo:inline padding-right="{$letter-spacing}mm">
|
4682
|
+
<xsl:if test="$char = '®'">
|
4683
|
+
<xsl:attribute name="font-size">58%</xsl:attribute>
|
4684
|
+
<xsl:attribute name="baseline-shift">30%</xsl:attribute>
|
4685
|
+
</xsl:if>
|
4686
|
+
<xsl:value-of select="$char"/>
|
4687
|
+
</fo:inline>
|
4688
|
+
<xsl:call-template name="add-letter-spacing">
|
4689
|
+
<xsl:with-param name="text" select="substring($text, 2)"/>
|
4690
|
+
<xsl:with-param name="letter-spacing" select="$letter-spacing"/>
|
4691
|
+
</xsl:call-template>
|
4692
|
+
</xsl:if>
|
4693
|
+
</xsl:template><xsl:template name="repeat">
|
4694
|
+
<xsl:param name="char" select="'*'"/>
|
4695
|
+
<xsl:param name="count"/>
|
4696
|
+
<xsl:if test="$count > 0">
|
4697
|
+
<xsl:value-of select="$char"/>
|
4698
|
+
<xsl:call-template name="repeat">
|
4699
|
+
<xsl:with-param name="char" select="$char"/>
|
4700
|
+
<xsl:with-param name="count" select="$count - 1"/>
|
4701
|
+
</xsl:call-template>
|
4702
|
+
</xsl:if>
|
4703
|
+
</xsl:template><xsl:template name="getLocalizedString">
|
4704
|
+
<xsl:param name="key"/>
|
4705
|
+
|
4706
|
+
<xsl:variable name="curr_lang">
|
4707
|
+
<xsl:call-template name="getLang"/>
|
4708
|
+
</xsl:variable>
|
4709
|
+
|
4710
|
+
<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
4711
|
+
|
4161
4712
|
</xsl:template></xsl:stylesheet>
|