metanorma-bipm 1.0.3 → 1.1.0
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 +9 -32
- data/.gitignore +1 -0
- data/.rubocop.yml +14 -0
- data/lib/asciidoctor/bipm/biblio.rng +4 -6
- data/lib/asciidoctor/bipm/bipm.rng +6 -0
- data/lib/asciidoctor/bipm/converter.rb +65 -34
- data/lib/asciidoctor/bipm/isodoc.rng +235 -3
- data/lib/isodoc/bipm/bipm.brochure.xsl +910 -559
- data/lib/isodoc/bipm/bipm.guide.xsl +910 -559
- data/lib/isodoc/bipm/bipm.mise-en-pratique.xsl +910 -559
- data/lib/isodoc/bipm/bipm.rapport.xsl +910 -559
- data/lib/isodoc/bipm/html/html_bipm_titlepage.html +4 -2
- data/lib/isodoc/bipm/html/htmlstyle.css +7 -0
- data/lib/isodoc/bipm/i18n-en.yaml +9 -0
- data/lib/isodoc/bipm/i18n-fr.yaml +6 -0
- data/lib/isodoc/bipm/index.rb +9 -4
- data/lib/isodoc/bipm/jcgm.standard.xsl +956 -580
- data/lib/isodoc/bipm/metadata.rb +15 -5
- data/lib/isodoc/bipm/pdf_convert.rb +12 -9
- data/lib/isodoc/bipm/presentation_xml_convert.rb +63 -19
- data/lib/isodoc/bipm/xref.rb +111 -55
- data/lib/metanorma/bipm/version.rb +1 -1
- data/metanorma-bipm.gemspec +6 -6
- data/metanorma.yml +1 -0
- metadata +25 -23
@@ -4,6 +4,7 @@
|
|
4
4
|
|
5
5
|
<xsl:param name="svg_images"/>
|
6
6
|
<xsl:variable name="images" select="document($svg_images)"/>
|
7
|
+
<xsl:param name="basepath"/>
|
7
8
|
|
8
9
|
<xsl:param name="initial_page_number"/>
|
9
10
|
<xsl:param name="doc_split_by_language"/>
|
@@ -11,7 +12,6 @@
|
|
11
12
|
<!-- <item id="#">N_page</item> -->
|
12
13
|
<!-- param for second pass -->
|
13
14
|
<xsl:param name="external_index"/><!-- path to index xml, generated on 1st pass, based on FOP Intermediate Format -->
|
14
|
-
<xsl:variable name="index" select="document($external_index)"/>
|
15
15
|
|
16
16
|
<xsl:variable name="first_pass" select="count($index//item) = 0"/>
|
17
17
|
|
@@ -114,7 +114,8 @@
|
|
114
114
|
|
115
115
|
<!-- add id to xref and split xref with @to into two xref -->
|
116
116
|
<xsl:variable name="current_document_index_id">
|
117
|
-
<xsl:apply-templates select=".//bipm:clause[@type = 'index']" mode="index_add_id"/>
|
117
|
+
<!-- <xsl:apply-templates select=".//bipm:clause[@type = 'index']" mode="index_add_id"/> -->
|
118
|
+
<xsl:apply-templates select=".//bipm:indexsect" mode="index_add_id"/>
|
118
119
|
</xsl:variable>
|
119
120
|
|
120
121
|
<xsl:variable name="current_document_index">
|
@@ -145,7 +146,8 @@
|
|
145
146
|
</xsl:variable>
|
146
147
|
|
147
148
|
<xsl:variable name="current_document_index_id">
|
148
|
-
<xsl:apply-templates select=".//bipm:clause[@type = 'index']" mode="index_add_id"/>
|
149
|
+
<!-- <xsl:apply-templates select=".//bipm:clause[@type = 'index']" mode="index_add_id"/> -->
|
150
|
+
<xsl:apply-templates select=".//bipm:indexsect" mode="index_add_id"/>
|
149
151
|
</xsl:variable>
|
150
152
|
|
151
153
|
<xsl:variable name="current_document_index">
|
@@ -165,14 +167,7 @@
|
|
165
167
|
</xsl:choose>
|
166
168
|
</xsl:variable>
|
167
169
|
|
168
|
-
<xsl:variable name="bookmark_in_fn">
|
169
|
-
<xsl:for-each select="//bipm:bookmark[ancestor::bipm:fn]">
|
170
|
-
<bookmark><xsl:value-of select="@id"/></bookmark>
|
171
|
-
</xsl:for-each>
|
172
|
-
</xsl:variable>
|
173
170
|
|
174
|
-
<xsl:variable name="dash" select="'–'"/>
|
175
|
-
|
176
171
|
<xsl:variable name="ids">
|
177
172
|
<xsl:for-each select="//*[@id]">
|
178
173
|
<id><xsl:value-of select="@id"/></id>
|
@@ -200,7 +195,8 @@
|
|
200
195
|
<xsl:apply-templates select="/*/bipm:bibliography/bipm:references[not(@normative='true')]" mode="contents"/>
|
201
196
|
|
202
197
|
<!-- Index -->
|
203
|
-
<xsl:apply-templates select="//bipm:clause[@type = 'index']" mode="contents"/>
|
198
|
+
<!-- <xsl:apply-templates select="//bipm:clause[@type = 'index']" mode="contents"/> -->
|
199
|
+
<xsl:apply-templates select="//bipm:indexsect" mode="contents"/>
|
204
200
|
|
205
201
|
</contents>
|
206
202
|
</xsl:template>
|
@@ -259,6 +255,28 @@
|
|
259
255
|
</fo:repeatable-page-master-alternatives>
|
260
256
|
</fo:page-sequence-master>
|
261
257
|
|
258
|
+
<!-- Document pages (landscape orientation) -->
|
259
|
+
<fo:simple-page-master master-name="document-landscape-odd" page-width="{$pageHeight}" page-height="{$pageWidth}">
|
260
|
+
<fo:region-body margin-top="25.4mm" margin-bottom="22mm" margin-left="31.7mm" margin-right="40mm"/>
|
261
|
+
<fo:region-before region-name="header-odd" extent="25.4mm"/>
|
262
|
+
<fo:region-after region-name="footer" extent="22mm"/> <!-- debug: background-color="green" -->
|
263
|
+
<fo:region-start region-name="left-region" extent="17mm"/>
|
264
|
+
<fo:region-end region-name="right-region" extent="26.5mm"/>
|
265
|
+
</fo:simple-page-master>
|
266
|
+
<fo:simple-page-master master-name="document-landscape-even" page-width="{$pageHeight}" page-height="{$pageWidth}">
|
267
|
+
<fo:region-body margin-top="25.4mm" margin-bottom="22mm" margin-left="31.7mm" margin-right="40mm"/>
|
268
|
+
<fo:region-before region-name="header-even" extent="25.4mm"/>
|
269
|
+
<fo:region-after region-name="footer" extent="22mm"/> <!-- debug: background-color="green" -->
|
270
|
+
<fo:region-start region-name="left-region" extent="17mm"/>
|
271
|
+
<fo:region-end region-name="right-region" extent="26.5mm"/>
|
272
|
+
</fo:simple-page-master>
|
273
|
+
<fo:page-sequence-master master-name="document-landscape">
|
274
|
+
<fo:repeatable-page-master-alternatives>
|
275
|
+
<fo:conditional-page-master-reference odd-or-even="even" master-reference="document-landscape-even"/>
|
276
|
+
<fo:conditional-page-master-reference odd-or-even="odd" master-reference="document-landscape-odd"/>
|
277
|
+
</fo:repeatable-page-master-alternatives>
|
278
|
+
</fo:page-sequence-master>
|
279
|
+
|
262
280
|
<!-- Index pages -->
|
263
281
|
<fo:simple-page-master master-name="index-odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
264
282
|
<fo:region-body margin-top="25.4mm" margin-bottom="22mm" margin-left="31.7mm" margin-right="41.7mm" column-count="2" column-gap="10mm"/>
|
@@ -284,8 +302,9 @@
|
|
284
302
|
|
285
303
|
</fo:layout-master-set>
|
286
304
|
|
287
|
-
|
288
|
-
|
305
|
+
<fo:declarations>
|
306
|
+
<xsl:call-template name="addPDFUAmeta"/>
|
307
|
+
</fo:declarations>
|
289
308
|
|
290
309
|
<xsl:call-template name="addBookmarks">
|
291
310
|
<xsl:with-param name="contents" select="$contents"/>
|
@@ -333,10 +352,14 @@
|
|
333
352
|
<xsl:apply-templates select="xalan:nodeset($current_document)" mode="flatxml"/>
|
334
353
|
</xsl:variable> -->
|
335
354
|
|
336
|
-
<xsl:variable name="
|
355
|
+
<xsl:variable name="flatxml_">
|
337
356
|
<xsl:apply-templates select="." mode="flatxml"/>
|
338
357
|
</xsl:variable>
|
339
358
|
|
359
|
+
<xsl:variable name="flatxml">
|
360
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml_)" mode="pagebreak"/>
|
361
|
+
</xsl:variable>
|
362
|
+
|
340
363
|
<!-- flatxml=<xsl:copy-of select="$flatxml"/> -->
|
341
364
|
|
342
365
|
<xsl:apply-templates select="xalan:nodeset($flatxml)/bipm:bipm-standard" mode="bipm-standard">
|
@@ -360,10 +383,14 @@
|
|
360
383
|
<xsl:apply-templates select="xalan:nodeset($current_document)" mode="flatxml"/>
|
361
384
|
</xsl:variable> -->
|
362
385
|
|
363
|
-
<xsl:variable name="
|
386
|
+
<xsl:variable name="flatxml_">
|
364
387
|
<xsl:apply-templates select="." mode="flatxml"/>
|
365
388
|
</xsl:variable>
|
366
389
|
|
390
|
+
<xsl:variable name="flatxml">
|
391
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml_)" mode="pagebreak"/>
|
392
|
+
</xsl:variable>
|
393
|
+
|
367
394
|
<xsl:apply-templates select="xalan:nodeset($flatxml)/bipm:bipm-standard" mode="bipm-standard">
|
368
395
|
<xsl:with-param name="curr_docnum" select="$num"/>
|
369
396
|
</xsl:apply-templates>
|
@@ -376,10 +403,14 @@
|
|
376
403
|
</xsl:when>
|
377
404
|
<xsl:otherwise>
|
378
405
|
|
379
|
-
<xsl:variable name="
|
406
|
+
<xsl:variable name="flatxml_">
|
380
407
|
<xsl:apply-templates mode="flatxml"/>
|
381
408
|
</xsl:variable>
|
382
|
-
|
409
|
+
|
410
|
+
<xsl:variable name="flatxml">
|
411
|
+
<xsl:apply-templates select="xalan:nodeset($flatxml_)" mode="pagebreak"/>
|
412
|
+
</xsl:variable>
|
413
|
+
|
383
414
|
<!-- flatxml=<xsl:copy-of select="$flatxml"/> -->
|
384
415
|
|
385
416
|
<!-- indexes=<xsl:copy-of select="$indexes"/> -->
|
@@ -836,7 +867,8 @@
|
|
836
867
|
</xsl:choose>
|
837
868
|
</xsl:template>
|
838
869
|
|
839
|
-
<xsl:template match="bipm:clause[@type = 'index']" mode="flatxml"/>
|
870
|
+
<!-- <xsl:template match="bipm:clause[@type = 'index']" mode="flatxml"/> -->
|
871
|
+
<xsl:template match="bipm:indexsect" mode="flatxml"/>
|
840
872
|
<!-- <xsl:template match="bipm:clause[@type = 'index']" mode="flatxml">
|
841
873
|
<xsl:copy>
|
842
874
|
<xsl:apply-templates select="@*" mode="flatxml_index"/>
|
@@ -864,8 +896,82 @@
|
|
864
896
|
<!-- END: Flattening xml for fit notes at page sides (margins) -->
|
865
897
|
<!-- ================================= -->
|
866
898
|
|
899
|
+
<!-- ================================= -->
|
900
|
+
<!-- Page breaks processing (close previous elements (clause) and start new) -->
|
901
|
+
<!-- ================================= -->
|
902
|
+
<xsl:template match="@*|node()" mode="pagebreak">
|
903
|
+
<xsl:copy>
|
904
|
+
<xsl:apply-templates select="@*|node()" mode="pagebreak"/>
|
905
|
+
</xsl:copy>
|
906
|
+
</xsl:template>
|
867
907
|
|
908
|
+
<xsl:template match="node()[bipm:pagebreak[@orientation]]" mode="pagebreak">
|
909
|
+
<xsl:variable name="element_name" select="local-name()"/>
|
910
|
+
<xsl:for-each select="bipm:pagebreak[@orientation]">
|
911
|
+
<xsl:variable name="pagebreak_id" select="generate-id()"/>
|
912
|
+
<xsl:variable name="pagebreak_previous_orientation" select="preceding-sibling::bipm:pagebreak[@orientation][1]/@orientation"/>
|
913
|
+
|
914
|
+
<!-- copy elements before page break -->
|
915
|
+
<xsl:element name="{$element_name}" namespace="https://www.metanorma.org/ns/bipm">
|
916
|
+
<xsl:if test="not(preceding-sibling::bipm:pagebreak[@orientation])">
|
917
|
+
<xsl:apply-templates select="../@*" mode="pagebreak"/>
|
918
|
+
</xsl:if>
|
919
|
+
<xsl:if test="$pagebreak_previous_orientation != ''">
|
920
|
+
<xsl:attribute name="orientation"><xsl:value-of select="$pagebreak_previous_orientation"/></xsl:attribute>
|
921
|
+
</xsl:if>
|
922
|
+
|
923
|
+
<xsl:apply-templates select="preceding-sibling::node()[following-sibling::bipm:pagebreak[@orientation][1][generate-id(.) = $pagebreak_id]][not(local-name() = 'pagebreak' and @orientation)]" mode="pagebreak"/>
|
924
|
+
</xsl:element>
|
925
|
+
|
926
|
+
<!-- copy elements after last page break -->
|
927
|
+
<xsl:if test="position() = last() and following-sibling::node()">
|
928
|
+
<xsl:element name="{$element_name}" namespace="https://www.metanorma.org/ns/bipm">
|
929
|
+
<xsl:attribute name="orientation"><xsl:value-of select="@orientation"/></xsl:attribute>
|
930
|
+
<xsl:apply-templates select="following-sibling::node()" mode="pagebreak"/>
|
931
|
+
</xsl:element>
|
932
|
+
</xsl:if>
|
933
|
+
|
934
|
+
</xsl:for-each>
|
935
|
+
|
936
|
+
</xsl:template>
|
868
937
|
|
938
|
+
<xsl:template match="bipm:pagebreak2" mode="pagebreak">
|
939
|
+
<xsl:variable name="orientation" select="normalize-space(@orientation)"/>
|
940
|
+
<xsl:variable name="tree">
|
941
|
+
<xsl:for-each select="ancestor::*[ancestor::bipm:sections or ancestor::bipm:annex or ancestor::bipm:preface]">
|
942
|
+
<element pos="{position()}">
|
943
|
+
<xsl:value-of select="name()"/>
|
944
|
+
</element>
|
945
|
+
</xsl:for-each>
|
946
|
+
</xsl:variable>
|
947
|
+
<!-- close preceding elements -->
|
948
|
+
<xsl:for-each select="xalan:nodeset($tree)//element">
|
949
|
+
<xsl:sort data-type="number" order="descending" select="@pos"/>
|
950
|
+
<xsl:text disable-output-escaping="yes"></</xsl:text>
|
951
|
+
<xsl:value-of select="."/>
|
952
|
+
<xsl:text disable-output-escaping="yes">></xsl:text>
|
953
|
+
</xsl:for-each>
|
954
|
+
<!-- open elements -->
|
955
|
+
<xsl:for-each select="xalan:nodeset($tree)//element">
|
956
|
+
<xsl:text disable-output-escaping="yes"><</xsl:text>
|
957
|
+
<xsl:value-of select="."/>
|
958
|
+
<xsl:for-each select="@*[local-name() != 'pos']">
|
959
|
+
<xsl:text> </xsl:text>
|
960
|
+
<xsl:value-of select="local-name()"/>
|
961
|
+
<xsl:text>="</xsl:text>
|
962
|
+
<xsl:value-of select="."/>
|
963
|
+
<xsl:text>"</xsl:text>
|
964
|
+
</xsl:for-each>
|
965
|
+
<xsl:if test="position() = 1">
|
966
|
+
<xsl:text> orientation="</xsl:text><xsl:value-of select="$orientation"/><xsl:text>"</xsl:text>
|
967
|
+
</xsl:if>
|
968
|
+
<xsl:text disable-output-escaping="yes">></xsl:text>
|
969
|
+
</xsl:for-each>
|
970
|
+
|
971
|
+
</xsl:template>
|
972
|
+
<!-- ================================= -->
|
973
|
+
<!-- END: Page breaks processing -->
|
974
|
+
<!-- ================================= -->
|
869
975
|
|
870
976
|
<xsl:template match="bipm:bipm-standard"/>
|
871
977
|
<xsl:template match="bipm:bipm-standard" mode="bipm-standard">
|
@@ -1075,12 +1181,11 @@
|
|
1075
1181
|
|
1076
1182
|
|
1077
1183
|
<!-- Document Pages -->
|
1078
|
-
|
1079
1184
|
<xsl:apply-templates select="bipm:sections/*" mode="sections"/>
|
1080
1185
|
|
1081
1186
|
|
1082
|
-
|
1083
1187
|
<!-- Normative references -->
|
1188
|
+
|
1084
1189
|
<xsl:apply-templates select="bipm:bibliography/bipm:references[@normative='true']" mode="sections"/>
|
1085
1190
|
|
1086
1191
|
<xsl:apply-templates select="bipm:annex" mode="sections"/>
|
@@ -1088,8 +1193,12 @@
|
|
1088
1193
|
<!-- Bibliography -->
|
1089
1194
|
<xsl:apply-templates select="bipm:bibliography/bipm:references[not(@normative='true')]" mode="sections"/>
|
1090
1195
|
|
1196
|
+
<!-- Document Control -->
|
1197
|
+
<xsl:apply-templates select="bipm:doccontrol" mode="sections"/>
|
1198
|
+
|
1091
1199
|
<!-- Index -->
|
1092
|
-
<xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:clause[@type = 'index']" mode="index"/>
|
1200
|
+
<!-- <xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:clause[@type = 'index']" mode="index" /> -->
|
1201
|
+
<xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:indexsect" mode="index"/>
|
1093
1202
|
|
1094
1203
|
<!-- End Document Pages -->
|
1095
1204
|
|
@@ -1240,7 +1349,6 @@
|
|
1240
1349
|
<xsl:apply-templates select="bipm:preface/*" mode="sections"/> <!-- bipm:clause -->
|
1241
1350
|
|
1242
1351
|
<!-- Document Pages -->
|
1243
|
-
|
1244
1352
|
<xsl:apply-templates select="bipm:sections/*" mode="sections"/>
|
1245
1353
|
<!-- <xsl:call-template name="sections_appendix"/> --> <!-- without pagebreaks -->
|
1246
1354
|
|
@@ -1252,8 +1360,12 @@
|
|
1252
1360
|
|
1253
1361
|
<xsl:apply-templates select="bipm:bibliography/bipm:references[not(@normative='true')]" mode="sections"/>
|
1254
1362
|
|
1363
|
+
<!-- Document Control -->
|
1364
|
+
<xsl:apply-templates select="bipm:doccontrol" mode="sections"/>
|
1365
|
+
|
1255
1366
|
<!-- Index -->
|
1256
|
-
<xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:clause[@type = 'index']" mode="index"/>
|
1367
|
+
<!-- <xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:clause[@type = 'index']" mode="index" /> -->
|
1368
|
+
<xsl:apply-templates select="xalan:nodeset($indexes)/doc[@id = $docid]//bipm:indexsect" mode="index"/>
|
1257
1369
|
|
1258
1370
|
</xsl:otherwise>
|
1259
1371
|
</xsl:choose>
|
@@ -1395,17 +1507,20 @@
|
|
1395
1507
|
|
1396
1508
|
<xsl:variable name="titles_length" select="string-length($title_appendix_fr) + string-length($title_appendix_en) + string-length($title_annex_fr) + string-length($title_annex_en) + string-length($title_part_fr) + string-length($title_part_en) + string-length($title_subpart_fr) + string-length($title_subpart_fr)"/>
|
1397
1509
|
|
1398
|
-
<xsl:variable name="font-size-number-factor">
|
1510
|
+
<!-- <xsl:variable name="font-size-number-factor">
|
1399
1511
|
<xsl:choose>
|
1400
1512
|
<xsl:when test="$titles_length > 350">0.7</xsl:when>
|
1401
1513
|
<xsl:when test="$titles_length > 250">0.85</xsl:when>
|
1514
|
+
<xsl:when test="$titles_length > 130">0.9</xsl:when>
|
1402
1515
|
<xsl:otherwise>1</xsl:otherwise>
|
1403
1516
|
</xsl:choose>
|
1404
|
-
</xsl:variable>
|
1517
|
+
</xsl:variable> -->
|
1405
1518
|
|
1406
1519
|
<xsl:variable name="space-factor">
|
1407
1520
|
<xsl:choose>
|
1408
1521
|
<xsl:when test="$titles_length > 250">0.3</xsl:when>
|
1522
|
+
<xsl:when test="$titles_length > 200">0.5</xsl:when>
|
1523
|
+
<xsl:when test="$titles_length > 150">0.7</xsl:when>
|
1409
1524
|
<xsl:otherwise>1</xsl:otherwise>
|
1410
1525
|
</xsl:choose>
|
1411
1526
|
</xsl:variable>
|
@@ -1413,11 +1528,21 @@
|
|
1413
1528
|
<xsl:variable name="font-size-factor">
|
1414
1529
|
<xsl:choose>
|
1415
1530
|
<xsl:when test="$titles_length > 350">0.5</xsl:when>
|
1416
|
-
<xsl:when test="$titles_length > 250">0.
|
1531
|
+
<xsl:when test="$titles_length > 250">0.55</xsl:when>
|
1532
|
+
<xsl:when test="$titles_length > 180">0.65</xsl:when>
|
1533
|
+
<xsl:when test="$titles_length > 130">0.8</xsl:when>
|
1417
1534
|
<xsl:otherwise>1</xsl:otherwise>
|
1418
1535
|
</xsl:choose>
|
1419
1536
|
</xsl:variable>
|
1420
|
-
|
1537
|
+
|
1538
|
+
<xsl:variable name="font-size-number-factor">
|
1539
|
+
<xsl:choose>
|
1540
|
+
<xsl:when test="$font-size-factor < 1"><xsl:value-of select="$font-size-factor *1.3"/></xsl:when>
|
1541
|
+
<xsl:otherwise>1</xsl:otherwise>
|
1542
|
+
</xsl:choose>
|
1543
|
+
</xsl:variable>
|
1544
|
+
|
1545
|
+
<!-- <fo:block font-size="6pt">DEBUG font-size-factor=<xsl:value-of select="$font-size-factor"/>, titles_length=<xsl:value-of select="$titles_length"/></fo:block> -->
|
1421
1546
|
<!-- Appendix titles processing -->
|
1422
1547
|
<xsl:variable name="appendix_num" select="normalize-space((//bipm:bipm-standard)[1]/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix)"/>
|
1423
1548
|
<xsl:if test="$appendix_num != ''">
|
@@ -1837,11 +1962,12 @@
|
|
1837
1962
|
<xsl:if test="@level >= 3">
|
1838
1963
|
<fo:inline padding-right="2mm"><xsl:value-of select="@section"/></fo:inline>
|
1839
1964
|
</xsl:if>
|
1840
|
-
<xsl:variable name="sectionTitle">
|
1965
|
+
<!-- <xsl:variable name="sectionTitle">
|
1841
1966
|
<xsl:apply-templates select="title"/>
|
1842
|
-
</xsl:variable>
|
1967
|
+
</xsl:variable> -->
|
1843
1968
|
<fo:inline>
|
1844
|
-
<xsl:value-of select="$sectionTitle"/>
|
1969
|
+
<!-- <xsl:value-of select="$sectionTitle"/> -->
|
1970
|
+
<xsl:apply-templates select="title"/>
|
1845
1971
|
</fo:inline>
|
1846
1972
|
<!-- <xsl:text> </xsl:text> -->
|
1847
1973
|
<!-- keep-together.within-line="always" -->
|
@@ -1919,6 +2045,7 @@
|
|
1919
2045
|
<xsl:variable name="type">
|
1920
2046
|
<xsl:choose>
|
1921
2047
|
<xsl:when test="@type = 'index'">index</xsl:when>
|
2048
|
+
<xsl:when test="local-name() = 'indexsect'">index</xsl:when>
|
1922
2049
|
<xsl:otherwise><xsl:value-of select="local-name()"/></xsl:otherwise>
|
1923
2050
|
</xsl:choose>
|
1924
2051
|
</xsl:variable>
|
@@ -1937,17 +2064,26 @@
|
|
1937
2064
|
</xsl:if>
|
1938
2065
|
</xsl:template>
|
1939
2066
|
|
2067
|
+
<xsl:template match="*[local-name() = 'strong']" mode="contents_item" priority="2">
|
2068
|
+
<!-- <xsl:copy> -->
|
2069
|
+
<xsl:apply-templates mode="contents_item"/>
|
2070
|
+
<!-- </xsl:copy> -->
|
2071
|
+
</xsl:template>
|
2072
|
+
|
1940
2073
|
<!-- ============================= -->
|
1941
2074
|
<!-- ============================= -->
|
1942
2075
|
|
1943
2076
|
|
1944
2077
|
<xsl:template match="node()" mode="sections">
|
1945
2078
|
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
2079
|
+
<xsl:if test="@orientation = 'landscape'">
|
2080
|
+
<xsl:attribute name="master-reference">document-landscape</xsl:attribute>
|
2081
|
+
</xsl:if>
|
2082
|
+
|
1946
2083
|
<xsl:call-template name="insertFootnoteSeparator"/>
|
1947
2084
|
|
1948
2085
|
<xsl:variable name="header-title">
|
1949
2086
|
<xsl:choose>
|
1950
|
-
|
1951
2087
|
<xsl:when test="local-name(..) = 'sections'">
|
1952
2088
|
<xsl:choose>
|
1953
2089
|
<xsl:when test="./bipm:title[1]/*[local-name() = 'tab']">
|
@@ -1988,6 +2124,7 @@
|
|
1988
2124
|
</xsl:variable>
|
1989
2125
|
<xsl:call-template name="insertHeaderFooter">
|
1990
2126
|
<xsl:with-param name="header-title" select="$header-title"/>
|
2127
|
+
<xsl:with-param name="orientation" select="@orientation"/>
|
1991
2128
|
</xsl:call-template>
|
1992
2129
|
|
1993
2130
|
<fo:flow flow-name="xsl-region-body">
|
@@ -2459,13 +2596,25 @@
|
|
2459
2596
|
<xsl:variable name="space-before-value" select="normalize-space($space-before)"/>
|
2460
2597
|
|
2461
2598
|
<fo:table table-layout="fixed" width="174mm" line-height="135%">
|
2599
|
+
<xsl:if test="@orientation = 'landscape'">
|
2600
|
+
<xsl:attribute name="width">261mm</xsl:attribute> <!-- 87 = (297 - 210) -->
|
2601
|
+
</xsl:if>
|
2462
2602
|
<xsl:call-template name="setId"/>
|
2463
2603
|
<xsl:if test="$space-before-value != ''">
|
2464
2604
|
<xsl:attribute name="space-before"><xsl:value-of select="$space-before-value"/></xsl:attribute>
|
2465
2605
|
</xsl:if>
|
2466
|
-
|
2606
|
+
|
2607
|
+
<xsl:choose>
|
2608
|
+
<xsl:when test="@orientation = 'landscape'">
|
2609
|
+
<fo:table-column column-width="224mm"/> <!-- +87 -->
|
2610
|
+
</xsl:when>
|
2611
|
+
<xsl:otherwise>
|
2612
|
+
<fo:table-column column-width="137mm"/>
|
2613
|
+
</xsl:otherwise>
|
2614
|
+
</xsl:choose>
|
2467
2615
|
<fo:table-column column-width="5mm"/>
|
2468
2616
|
<fo:table-column column-width="32mm"/>
|
2617
|
+
|
2469
2618
|
<fo:table-body>
|
2470
2619
|
|
2471
2620
|
<xsl:variable name="total_rows" select="count(*)"/>
|
@@ -3046,6 +3195,18 @@
|
|
3046
3195
|
</fo:block>
|
3047
3196
|
</xsl:template>
|
3048
3197
|
|
3198
|
+
<xsl:template match="bipm:preferred">
|
3199
|
+
<fo:block font-weight="bold" keep-with-next="always" space-before="8pt" margin-bottom="6pt">
|
3200
|
+
<xsl:if test="ancestor::bipm:term/bipm:name">
|
3201
|
+
<fo:inline>
|
3202
|
+
<xsl:attribute name="padding-right">2mm</xsl:attribute>
|
3203
|
+
<xsl:apply-templates select="ancestor::bipm:term/bipm:name" mode="presentation"/>
|
3204
|
+
</fo:inline>
|
3205
|
+
</xsl:if>
|
3206
|
+
<xsl:apply-templates/>
|
3207
|
+
</fo:block>
|
3208
|
+
</xsl:template>
|
3209
|
+
|
3049
3210
|
<xsl:template match="bipm:bibitem">
|
3050
3211
|
<fo:block id="{@id}" margin-bottom="12pt" start-indent="25mm" text-indent="-25mm" line-height="115%">
|
3051
3212
|
<xsl:if test=".//bipm:fn">
|
@@ -3264,7 +3425,7 @@
|
|
3264
3425
|
|
3265
3426
|
<!-- set height for sup -->
|
3266
3427
|
<!-- <xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1 and mathml:mtext and (mathml:mtext/text() != '' and mathml:mtext/text() != ' ' and mathml:mtext/text() != ' ')]/mathml:mtext" mode="mtext"> -->
|
3267
|
-
<xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1]/*" mode="mathml" priority="
|
3428
|
+
<xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1 and not(mathml:mfenced)]/*" mode="mathml" priority="3">
|
3268
3429
|
<xsl:copy>
|
3269
3430
|
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
3270
3431
|
</xsl:copy>
|
@@ -3295,26 +3456,88 @@
|
|
3295
3456
|
<mrow>
|
3296
3457
|
<mtext>Cu</mtext>
|
3297
3458
|
</mrow>
|
3298
|
-
</mfenced>
|
3299
|
-
|
3459
|
+
</mfenced>
|
3460
|
+
to:
|
3461
|
+
<mfenced open="(" close=")" separators="">
|
3462
|
+
<mathml:mo rspace="-0.35em"></mathml:mo>
|
3463
|
+
<mathml:mspace width="-0.15em"/>
|
3464
|
+
<mrow>
|
3465
|
+
<mtext>Cu</mtext>
|
3466
|
+
</mrow>
|
3467
|
+
<mathml:mspace width="-0.1em"/>
|
3468
|
+
</mfenced>
|
3469
|
+
-->
|
3470
|
+
<xsl:template match="mathml:mfenced[count(*) = 1]" mode="mathml" priority="2">
|
3471
|
+
<xsl:if test="preceding-sibling::*">
|
3472
|
+
<mathml:mo rspace="-0.35em"/><!-- decrease space before opening bracket -->
|
3473
|
+
</xsl:if>
|
3474
|
+
<xsl:copy>
|
3475
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
3476
|
+
<xsl:if test="not(@separators)">
|
3477
|
+
<xsl:attribute name="separators"/>
|
3478
|
+
</xsl:if>
|
3479
|
+
<mathml:mspace width="-0.15em"/> <!-- decrease space between opening brackets and inside text-->
|
3480
|
+
<xsl:apply-templates mode="mathml"/>
|
3481
|
+
<mathml:mspace width="-0.1em"/> <!-- decrease space between inside text and closing brackets -->
|
3482
|
+
</xsl:copy>
|
3483
|
+
</xsl:template>
|
3484
|
+
|
3485
|
+
<!-- to:
|
3300
3486
|
<mrow>
|
3301
3487
|
<mtext>(Cu)</mtext>
|
3302
3488
|
</mrow> -->
|
3303
|
-
|
3489
|
+
<!-- <xsl:template match="mathml:mfenced[count(*) = 1 and *[count(*) = 1] and */*[count(*) = 0]] |
|
3490
|
+
mathml:mfenced[count(*) = 1 and *[count(*) = 1] and */*[count(*) = 1] and */*/*[count(*) = 0]]" mode="mathml" priority="2">
|
3304
3491
|
<xsl:apply-templates mode="mathml"/>
|
3305
3492
|
</xsl:template>
|
3306
|
-
|
3307
|
-
|
3493
|
+
<xsl:template match="mathml:mfenced[count(*) = 1]/*[count(*) = 1]/*[count(*) = 0] |
|
3494
|
+
mathml:mfenced[count(*) = 1]/*[count(*) = 1]/*[count(*) = 1]/*[count(*) = 0]" mode="mathml" priority="2">
|
3308
3495
|
<xsl:copy>
|
3309
3496
|
<xsl:apply-templates select="@*" mode="mathml"/>
|
3310
|
-
<xsl:value-of select="ancestor::mathml:mfenced/@open"/>
|
3497
|
+
<xsl:value-of select="ancestor::mathml:mfenced[1]/@open"/>
|
3311
3498
|
<xsl:value-of select="."/>
|
3312
|
-
<xsl:value-of select="ancestor::mathml:mfenced/@close"/>
|
3499
|
+
<xsl:value-of select="ancestor::mathml:mfenced[1]/@close"/>
|
3500
|
+
</xsl:copy>
|
3501
|
+
</xsl:template> -->
|
3502
|
+
|
3503
|
+
<!-- Decrease height of / and | -->
|
3504
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '/' or normalize-space(text()) = '|']" mode="mathml">
|
3505
|
+
<xsl:copy>
|
3506
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
3507
|
+
<xsl:if test="not(@stretchy) and not(preceding-sibling::*[1][local-name() = 'mfrac'] and following-sibling::*[1][local-name() = 'mfrac'])">
|
3508
|
+
<xsl:attribute name="stretchy">false</xsl:attribute>
|
3509
|
+
</xsl:if>
|
3510
|
+
<xsl:apply-templates mode="mathml"/>
|
3511
|
+
</xsl:copy>
|
3512
|
+
</xsl:template>
|
3513
|
+
|
3514
|
+
<!-- Decrease a distance before and after of delta -->
|
3515
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = 'Δ']" mode="mathml">
|
3516
|
+
<xsl:copy>
|
3517
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
3518
|
+
<xsl:if test="not(@rspace)">
|
3519
|
+
<xsl:attribute name="rspace">0em</xsl:attribute>
|
3520
|
+
</xsl:if>
|
3521
|
+
<xsl:if test="not(@lspace) and (preceding-sibling::*[1][local-name() = 'mo'] or not(preceding-sibling::*))">
|
3522
|
+
<xsl:attribute name="lspace">0em</xsl:attribute>
|
3523
|
+
</xsl:if>
|
3524
|
+
<xsl:apply-templates mode="mathml"/>
|
3313
3525
|
</xsl:copy>
|
3314
3526
|
</xsl:template>
|
3527
|
+
|
3528
|
+
<xsl:template match="mathml:mi[string-length(normalize-space()) > 1]" mode="mathml" priority="2">
|
3529
|
+
<xsl:if test="preceding-sibling::* and preceding-sibling::*[1][not(local-name() = 'mfenced' or local-name() = 'mo')]">
|
3530
|
+
<mathml:mspace width="0.3em"/>
|
3531
|
+
</xsl:if>
|
3532
|
+
<xsl:copy-of select="."/>
|
3533
|
+
<xsl:if test="following-sibling::* and following-sibling::*[1][not(local-name() = 'mfenced' or local-name() = 'mo')]">
|
3534
|
+
<mathml:mspace width="0.3em"/>
|
3535
|
+
</xsl:if>
|
3536
|
+
</xsl:template>
|
3315
3537
|
|
3316
3538
|
<xsl:template name="insertHeaderFooter">
|
3317
|
-
<xsl:param name="header-title"/>
|
3539
|
+
<xsl:param name="header-title"/>
|
3540
|
+
<xsl:param name="orientation"/>
|
3318
3541
|
<fo:static-content flow-name="header-odd">
|
3319
3542
|
<fo:block-container font-family="Arial" font-size="8pt" padding-top="12.5mm">
|
3320
3543
|
<fo:block text-align="right">
|
@@ -3329,9 +3552,12 @@
|
|
3329
3552
|
</fo:block>
|
3330
3553
|
</fo:block-container>
|
3331
3554
|
<fo:block-container font-size="1pt" border-top="0.5pt solid black" margin-left="81mm" width="86mm">
|
3332
|
-
|
3333
|
-
|
3334
|
-
|
3555
|
+
<xsl:if test="$orientation = 'landscape'">
|
3556
|
+
<xsl:attribute name="margin-left">168mm</xsl:attribute>
|
3557
|
+
</xsl:if>
|
3558
|
+
<fo:block> </fo:block>
|
3559
|
+
</fo:block-container>
|
3560
|
+
</fo:static-content>
|
3335
3561
|
<fo:static-content flow-name="header-even">
|
3336
3562
|
<fo:block-container font-family="Arial" font-size="8pt" padding-top="12.5mm">
|
3337
3563
|
<fo:block>
|
@@ -3489,247 +3715,85 @@
|
|
3489
3715
|
<!-- Index processing -->
|
3490
3716
|
<!-- =================== -->
|
3491
3717
|
|
3492
|
-
<xsl:template match="
|
3493
|
-
|
3494
|
-
|
3495
|
-
|
3718
|
+
<!-- <xsl:template match="bipm:clause[@type = 'index']" /> -->
|
3719
|
+
<!-- <xsl:template match="bipm:clause[@type = 'index']" mode="index"> -->
|
3720
|
+
<xsl:template match="bipm:indexsect"/>
|
3721
|
+
<xsl:template match="bipm:indexsect" mode="index">
|
3722
|
+
|
3723
|
+
<fo:page-sequence master-reference="index" force-page-count="no-force">
|
3724
|
+
<xsl:variable name="header-title">
|
3725
|
+
<xsl:choose>
|
3726
|
+
<xsl:when test="./bipm:title[1]/*[local-name() = 'tab']">
|
3727
|
+
<xsl:apply-templates select="./bipm:title[1]/*[local-name() = 'tab'][1]/following-sibling::node()" mode="header"/>
|
3728
|
+
</xsl:when>
|
3729
|
+
<xsl:otherwise>
|
3730
|
+
<xsl:apply-templates select="./bipm:title[1]" mode="header"/>
|
3731
|
+
</xsl:otherwise>
|
3732
|
+
</xsl:choose>
|
3733
|
+
</xsl:variable>
|
3734
|
+
<xsl:call-template name="insertHeaderFooter">
|
3735
|
+
<xsl:with-param name="header-title" select="$header-title"/>
|
3736
|
+
</xsl:call-template>
|
3737
|
+
|
3738
|
+
<fo:flow flow-name="xsl-region-body">
|
3739
|
+
<fo:block id="{@id}" span="all">
|
3740
|
+
<xsl:apply-templates select="bipm:title"/>
|
3741
|
+
</fo:block>
|
3742
|
+
<fo:block>
|
3743
|
+
<xsl:apply-templates select="*[not(local-name() = 'title')]"/>
|
3744
|
+
|
3745
|
+
<!-- TEST <xsl:variable name="alphabet" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"/>
|
3746
|
+
<xsl:for-each select="(document('')//node())[position() < 26]">
|
3747
|
+
<xsl:variable name="letter" select="substring($alphabet, position(), 1)"/>
|
3748
|
+
<xsl:if test="position() <= 3">
|
3749
|
+
<fo:block font-size="10pt" font-weight="bold" margin-bottom="3pt" keep-with-next="always"><xsl:value-of select="$letter"/>, DEBUG</fo:block>
|
3750
|
+
|
3751
|
+
<fo:block>accélération due à la pesanteur (gn), 33</fo:block>
|
3752
|
+
<fo:block>activité d’un radionucléide, 26, 27</fo:block>
|
3753
|
+
<fo:block>ampère (A), 13, 16, 18, 20, 28, 44, 49, 51, 52, 54, 55, 71, 81, 83-86, 89, 91-94, 97, 99, 100, 101, 103-104</fo:block>
|
3754
|
+
<fo:block>angle, 25, 26, 33, 37 38, 40, 48, 55, 65</fo:block>
|
3755
|
+
<fo:block>atmosphère normale, 52</fo:block>
|
3756
|
+
<fo:block>atome gramme, 104</fo:block>
|
3757
|
+
<fo:block>atome de césium, niveaux hyperfins, 15, 17, 18, 56, 58, 83, 85, 92, 94, 97, 98, 102</fo:block>
|
3758
|
+
<xsl:if test="position() != last()"><fo:block> </fo:block></xsl:if>
|
3759
|
+
</xsl:if>
|
3760
|
+
</xsl:for-each> -->
|
3761
|
+
</fo:block>
|
3762
|
+
</fo:flow>
|
3763
|
+
</fo:page-sequence>
|
3496
3764
|
</xsl:template>
|
3497
3765
|
|
3498
|
-
<xsl:template match="bipm:
|
3499
|
-
|
3500
|
-
|
3501
|
-
|
3502
|
-
|
3503
|
-
|
3504
|
-
<xsl:attribute name="id">
|
3505
|
-
<xsl:value-of select="$id"/>
|
3506
|
-
</xsl:attribute>
|
3507
|
-
<xsl:apply-templates mode="index_add_id"/>
|
3508
|
-
</xsl:copy>
|
3509
|
-
<!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
|
3510
|
-
<xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
|
3511
|
-
<xsl:if test="@to">
|
3512
|
-
<xsl:value-of select="$dash"/>
|
3513
|
-
<xsl:copy>
|
3514
|
-
<xsl:copy-of select="@*"/>
|
3515
|
-
<xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
|
3516
|
-
<xsl:attribute name="id">
|
3517
|
-
<xsl:value-of select="$id"/><xsl:text>_to</xsl:text>
|
3518
|
-
</xsl:attribute>
|
3519
|
-
<xsl:apply-templates mode="index_add_id"/>
|
3520
|
-
</xsl:copy>
|
3521
|
-
</xsl:if>
|
3766
|
+
<!-- <xsl:template match="bipm:clause[@type = 'index']/bipm:title" priority="4"> -->
|
3767
|
+
<xsl:template match="bipm:indexsect/bipm:title" priority="4">
|
3768
|
+
<fo:block font-size="16pt" font-weight="bold" margin-bottom="84pt" margin-left="-18mm">
|
3769
|
+
<!-- Index -->
|
3770
|
+
<xsl:apply-templates/>
|
3771
|
+
</fo:block>
|
3522
3772
|
</xsl:template>
|
3523
|
-
|
3524
|
-
<xsl:template match="
|
3525
|
-
|
3526
|
-
|
3527
|
-
|
3773
|
+
|
3774
|
+
<!-- <xsl:template match="bipm:clause[@type = 'index']/bipm:clause/bipm:title" priority="4"> -->
|
3775
|
+
<xsl:template match="bipm:indexsect/bipm:clause/bipm:title" priority="4">
|
3776
|
+
<!-- Letter A, B, C, ... -->
|
3777
|
+
<fo:block font-size="10pt" font-weight="bold" margin-bottom="3pt" keep-with-next="always">
|
3778
|
+
<xsl:apply-templates/>
|
3779
|
+
</fo:block>
|
3528
3780
|
</xsl:template>
|
3529
3781
|
|
3530
|
-
|
3531
|
-
|
3532
|
-
|
3533
|
-
<xsl:apply-templates select="node()[1]" mode="process_li_element"/>
|
3534
|
-
</xsl:copy>
|
3782
|
+
|
3783
|
+
<xsl:template match="*[local-name() = 'stem']/text()">
|
3784
|
+
<xsl:value-of select="normalize-space()"/>
|
3535
3785
|
</xsl:template>
|
3536
3786
|
|
3537
|
-
|
3538
|
-
|
3539
|
-
|
3540
|
-
|
3541
|
-
|
3542
|
-
<xsl:choose>
|
3543
|
-
|
3544
|
-
|
3545
|
-
|
3546
|
-
|
3547
|
-
<xsl:with-param name="target"><xsl:value-of select="$target"/></xsl:with-param>
|
3548
|
-
</xsl:apply-templates>
|
3549
|
-
</xsl:when>
|
3550
|
-
<xsl:when test="self::text()">
|
3551
|
-
<xsl:value-of select="."/>
|
3552
|
-
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
3553
|
-
</xsl:when>
|
3554
|
-
<xsl:when test="self::* and local-name(.) = 'xref'">
|
3555
|
-
<xsl:variable name="id" select="@id"/>
|
3556
|
-
<xsl:variable name="page" select="$index//item[@id = $id]"/>
|
3557
|
-
<xsl:variable name="id_next" select="following-sibling::bipm:xref[1]/@id"/>
|
3558
|
-
<xsl:variable name="page_next" select="$index//item[@id = $id_next]"/>
|
3559
|
-
|
3560
|
-
<xsl:variable name="id_prev" select="preceding-sibling::bipm:xref[1]/@id"/>
|
3561
|
-
<xsl:variable name="page_prev" select="$index//item[@id = $id_prev]"/>
|
3562
|
-
|
3563
|
-
<xsl:choose>
|
3564
|
-
<!-- 2nd pass -->
|
3565
|
-
<!-- if page is equal to page for next and page is not the end of range -->
|
3566
|
-
<xsl:when test="$page != '' and $page_next != '' and $page = $page_next and not(contains($page, '_to'))"> <!-- case: 12, 12-14 -->
|
3567
|
-
<!-- skip element (i.e. remove it) and remove next text ',' -->
|
3568
|
-
<!-- [removed_xref] -->
|
3569
|
-
|
3570
|
-
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
3571
|
-
<xsl:with-param name="remove">true</xsl:with-param>
|
3572
|
-
<xsl:with-param name="target">
|
3573
|
-
<xsl:choose>
|
3574
|
-
<xsl:when test="$target != ''"><xsl:value-of select="$target"/></xsl:when>
|
3575
|
-
<xsl:otherwise><xsl:value-of select="@target"/></xsl:otherwise>
|
3576
|
-
</xsl:choose>
|
3577
|
-
</xsl:with-param>
|
3578
|
-
</xsl:apply-templates>
|
3579
|
-
</xsl:when>
|
3580
|
-
|
3581
|
-
<xsl:when test="$page != '' and $page_prev != '' and $page = $page_prev and contains($page_prev, '_to')"> <!-- case: 12-14, 14, ... -->
|
3582
|
-
<!-- remove xref -->
|
3583
|
-
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
3584
|
-
<xsl:with-param name="remove">true</xsl:with-param>
|
3585
|
-
</xsl:apply-templates>
|
3586
|
-
</xsl:when>
|
3587
|
-
|
3588
|
-
<xsl:otherwise>
|
3589
|
-
<xsl:apply-templates select="." mode="xref_copy">
|
3590
|
-
<xsl:with-param name="target" select="$target"/>
|
3591
|
-
</xsl:apply-templates>
|
3592
|
-
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
3593
|
-
</xsl:otherwise>
|
3594
|
-
</xsl:choose>
|
3595
|
-
</xsl:when>
|
3596
|
-
<xsl:when test="self::* and local-name(.) = 'ul'">
|
3597
|
-
<!-- ul -->
|
3598
|
-
<xsl:apply-templates select="." mode="index_update"/>
|
3599
|
-
</xsl:when>
|
3600
|
-
<xsl:otherwise>
|
3601
|
-
<xsl:apply-templates select="." mode="xref_copy">
|
3602
|
-
<xsl:with-param name="target" select="$target"/>
|
3603
|
-
</xsl:apply-templates>
|
3604
|
-
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
3605
|
-
</xsl:otherwise>
|
3606
|
-
</xsl:choose>
|
3607
|
-
</xsl:template>
|
3608
|
-
|
3609
|
-
<xsl:template match="@*|node()" mode="xref_copy">
|
3610
|
-
<xsl:param name="target"/>
|
3611
|
-
<xsl:copy>
|
3612
|
-
<xsl:apply-templates select="@*" mode="xref_copy"/>
|
3613
|
-
<xsl:if test="$target != '' and not(xalan:nodeset($bookmark_in_fn)//bookmark[. = $target])">
|
3614
|
-
<xsl:attribute name="target"><xsl:value-of select="$target"/></xsl:attribute>
|
3615
|
-
</xsl:if>
|
3616
|
-
<xsl:apply-templates select="node()" mode="xref_copy"/>
|
3617
|
-
</xsl:copy>
|
3618
|
-
</xsl:template>
|
3619
|
-
|
3620
|
-
|
3621
|
-
<xsl:template name="generateIndexXrefId">
|
3622
|
-
<xsl:variable name="level" select="count(ancestor::bipm:ul)"/>
|
3623
|
-
<!-- <xsl:variable name="parent_ul_id" select="generate-id(ancestor::bipm:ul[1])"/>
|
3624
|
-
<xsl:variable name="item_number" select="count(ancestor::bipm:li[ancestor::bipm:ul[generate-id() = $parent_ul_id]])"/> -->
|
3625
|
-
<xsl:variable name="docid">
|
3626
|
-
<xsl:call-template name="getDocumentId"/>
|
3627
|
-
</xsl:variable>
|
3628
|
-
<xsl:variable name="item_number">
|
3629
|
-
<xsl:number count="bipm:li[ancestor::bipm:clause[@type = 'index']]" level="any"/>
|
3630
|
-
</xsl:variable>
|
3631
|
-
<xsl:variable name="xref_number"><xsl:number count="bipm:xref"/></xsl:variable>
|
3632
|
-
<xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
|
3633
|
-
</xsl:template>
|
3634
|
-
|
3635
|
-
<xsl:template match="bipm:clause[@type = 'index']"/>
|
3636
|
-
<xsl:template match="bipm:clause[@type = 'index']" mode="index">
|
3637
|
-
|
3638
|
-
<fo:page-sequence master-reference="index" force-page-count="no-force">
|
3639
|
-
<xsl:variable name="header-title">
|
3640
|
-
<xsl:choose>
|
3641
|
-
<xsl:when test="./bipm:title[1]/*[local-name() = 'tab']">
|
3642
|
-
<xsl:apply-templates select="./bipm:title[1]/*[local-name() = 'tab'][1]/following-sibling::node()" mode="header"/>
|
3643
|
-
</xsl:when>
|
3644
|
-
<xsl:otherwise>
|
3645
|
-
<xsl:apply-templates select="./bipm:title[1]" mode="header"/>
|
3646
|
-
</xsl:otherwise>
|
3647
|
-
</xsl:choose>
|
3648
|
-
</xsl:variable>
|
3649
|
-
<xsl:call-template name="insertHeaderFooter">
|
3650
|
-
<xsl:with-param name="header-title" select="$header-title"/>
|
3651
|
-
</xsl:call-template>
|
3652
|
-
|
3653
|
-
<fo:flow flow-name="xsl-region-body">
|
3654
|
-
<fo:block id="{@id}" span="all">
|
3655
|
-
<xsl:apply-templates select="bipm:title"/>
|
3656
|
-
</fo:block>
|
3657
|
-
<fo:block>
|
3658
|
-
<xsl:apply-templates select="*[not(local-name() = 'title')]"/>
|
3659
|
-
|
3660
|
-
<!-- TEST <xsl:variable name="alphabet" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"/>
|
3661
|
-
<xsl:for-each select="(document('')//node())[position() < 26]">
|
3662
|
-
<xsl:variable name="letter" select="substring($alphabet, position(), 1)"/>
|
3663
|
-
<xsl:if test="position() <= 3">
|
3664
|
-
<fo:block font-size="10pt" font-weight="bold" margin-bottom="3pt" keep-with-next="always"><xsl:value-of select="$letter"/>, DEBUG</fo:block>
|
3665
|
-
|
3666
|
-
<fo:block>accélération due à la pesanteur (gn), 33</fo:block>
|
3667
|
-
<fo:block>activité d’un radionucléide, 26, 27</fo:block>
|
3668
|
-
<fo:block>ampère (A), 13, 16, 18, 20, 28, 44, 49, 51, 52, 54, 55, 71, 81, 83-86, 89, 91-94, 97, 99, 100, 101, 103-104</fo:block>
|
3669
|
-
<fo:block>angle, 25, 26, 33, 37 38, 40, 48, 55, 65</fo:block>
|
3670
|
-
<fo:block>atmosphère normale, 52</fo:block>
|
3671
|
-
<fo:block>atome gramme, 104</fo:block>
|
3672
|
-
<fo:block>atome de césium, niveaux hyperfins, 15, 17, 18, 56, 58, 83, 85, 92, 94, 97, 98, 102</fo:block>
|
3673
|
-
<xsl:if test="position() != last()"><fo:block> </fo:block></xsl:if>
|
3674
|
-
</xsl:if>
|
3675
|
-
</xsl:for-each> -->
|
3676
|
-
</fo:block>
|
3677
|
-
</fo:flow>
|
3678
|
-
</fo:page-sequence>
|
3679
|
-
</xsl:template>
|
3680
|
-
|
3681
|
-
<xsl:template match="bipm:clause[@type = 'index']/bipm:title" priority="4">
|
3682
|
-
<fo:block font-size="16pt" font-weight="bold" margin-bottom="84pt" margin-left="-18mm">
|
3683
|
-
<!-- Index -->
|
3684
|
-
<xsl:apply-templates/>
|
3685
|
-
</fo:block>
|
3686
|
-
</xsl:template>
|
3687
|
-
|
3688
|
-
<xsl:template match="bipm:clause[@type = 'index']/bipm:clause" priority="4">
|
3689
|
-
<xsl:apply-templates/>
|
3690
|
-
<fo:block>
|
3691
|
-
<xsl:if test="following-sibling::bipm:clause">
|
3692
|
-
<fo:block> </fo:block>
|
3693
|
-
</xsl:if>
|
3694
|
-
</fo:block>
|
3695
|
-
</xsl:template>
|
3696
|
-
|
3697
|
-
<xsl:template match="bipm:clause[@type = 'index']/bipm:clause/bipm:title" priority="4">
|
3698
|
-
<!-- Letter A, B, C, ... -->
|
3699
|
-
<fo:block font-size="10pt" font-weight="bold" margin-bottom="3pt" keep-with-next="always">
|
3700
|
-
<xsl:apply-templates/>
|
3701
|
-
</fo:block>
|
3702
|
-
</xsl:template>
|
3703
|
-
|
3704
|
-
<xsl:template match="bipm:clause[@type = 'index']//bipm:ul" priority="4">
|
3705
|
-
<xsl:apply-templates/>
|
3706
|
-
</xsl:template>
|
3707
|
-
|
3708
|
-
<xsl:template match="bipm:clause[@type = 'index']//bipm:li" priority="4">
|
3709
|
-
<xsl:variable name="level" select="count(ancestor::bipm:ul)"/>
|
3710
|
-
<fo:block start-indent="{5 * $level}mm" text-indent="-5mm">
|
3711
|
-
<xsl:apply-templates/>
|
3712
|
-
</fo:block>
|
3713
|
-
</xsl:template>
|
3714
|
-
|
3715
|
-
<xsl:template match="bipm:bookmark">
|
3716
|
-
<fo:inline id="{@id}"/>
|
3717
|
-
</xsl:template>
|
3718
|
-
|
3719
|
-
<xsl:template match="*[local-name() = 'stem']/text()">
|
3720
|
-
<xsl:value-of select="normalize-space()"/>
|
3721
|
-
</xsl:template>
|
3722
|
-
|
3723
|
-
<!-- =================== -->
|
3724
|
-
<!-- End of Index processing -->
|
3725
|
-
<!-- =================== -->
|
3726
|
-
|
3727
|
-
<xsl:variable name="Image-Logo-BIPM">
|
3728
|
-
<xsl:text>iVBORw0KGgoAAAANSUhEUgAAAaIAAADRCAYAAACOyra0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2dpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTdGMTE3NDA3MjA2ODExODIyQUJFNEQ3OTI1MkI2OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCMTdGMTkxM0YzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCMTdGMTkxMkYzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBJbkRlc2lnbiBDUzYgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0idXVpZDoyNGQ2ZDM1ZS1kNDc4LTcxNGItYjYwZi1iMDMyYWFmYzM3OTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5pZDoxNjcwQkZBMDExMjA2ODExODIyQUJFNEQ3OTI1MkI2OSIvPiA8L3JkZjpEZXNjcmlw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</xsl:text>
|
3729
|
-
</xsl:variable>
|
3730
|
-
|
3731
|
-
<xsl:variable name="Image-Logo-SI">
|
3732
|
-
<xsl:variable name="si-aspect" select="java:toLowerCase(java:java.lang.String.new(normalize-space(//bipm:bipm-standard/bipm:bibdata//bipm:si-aspect)))"/>
|
3787
|
+
<!-- =================== -->
|
3788
|
+
<!-- End of Index processing -->
|
3789
|
+
<!-- =================== -->
|
3790
|
+
|
3791
|
+
<xsl:variable name="Image-Logo-BIPM">
|
3792
|
+
<xsl:text>iVBORw0KGgoAAAANSUhEUgAAAaIAAADRCAYAAACOyra0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2dpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTdGMTE3NDA3MjA2ODExODIyQUJFNEQ3OTI1MkI2OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCMTdGMTkxM0YzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCMTdGMTkxMkYzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBJbkRlc2lnbiBDUzYgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0idXVpZDoyNGQ2ZDM1ZS1kNDc4LTcxNGItYjYwZi1iMDMyYWFmYzM3OTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5pZDoxNjcwQkZBMDExMjA2ODExODIyQUJFNEQ3OTI1MkI2OSIvPiA8L3JkZjpEZXNjcmlw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</xsl:text>
|
3793
|
+
</xsl:variable>
|
3794
|
+
|
3795
|
+
<xsl:variable name="Image-Logo-SI">
|
3796
|
+
<xsl:variable name="si-aspect" select="java:toLowerCase(java:java.lang.String.new(normalize-space(//bipm:bipm-standard/bipm:bibdata//bipm:si-aspect)))"/>
|
3733
3797
|
<xsl:choose>
|
3734
3798
|
<xsl:when test="$si-aspect = 'a_e_deltanu'">
|
3735
3799
|
<svg xmlns="http://www.w3.org/2000/svg" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" id="svg85" version="1.2" viewBox="0 0 595.28 595.28" height="595.28pt" width="595.28pt">
|
@@ -4381,6 +4445,7 @@
|
|
4381
4445
|
|
4382
4446
|
|
4383
4447
|
|
4448
|
+
|
4384
4449
|
</xsl:attribute-set><xsl:attribute-set name="termexample-name-style">
|
4385
4450
|
|
4386
4451
|
|
@@ -4566,12 +4631,18 @@
|
|
4566
4631
|
|
4567
4632
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
4568
4633
|
|
4569
|
-
|
4634
|
+
|
4570
4635
|
</xsl:attribute-set><xsl:attribute-set name="deprecates-style">
|
4571
4636
|
|
4572
4637
|
</xsl:attribute-set><xsl:attribute-set name="definition-style">
|
4573
4638
|
|
4574
4639
|
|
4640
|
+
</xsl:attribute-set><xsl:attribute-set name="add-style">
|
4641
|
+
<xsl:attribute name="color">red</xsl:attribute>
|
4642
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
4643
|
+
</xsl:attribute-set><xsl:attribute-set name="del-style">
|
4644
|
+
<xsl:attribute name="color">red</xsl:attribute>
|
4645
|
+
<xsl:attribute name="text-decoration">line-through</xsl:attribute>
|
4575
4646
|
</xsl:attribute-set><xsl:template name="processPrefaceSectionsDefault_Contents">
|
4576
4647
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
|
4577
4648
|
<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
|
@@ -4617,212 +4688,240 @@
|
|
4617
4688
|
<xsl:call-template name="add-zero-spaces-java"/>
|
4618
4689
|
</xsl:template><xsl:template match="*[local-name()='table']" name="table">
|
4619
4690
|
|
4620
|
-
<xsl:variable name="
|
4621
|
-
<xsl:call-template name="getSimpleTable"/>
|
4622
|
-
</xsl:variable>
|
4691
|
+
<xsl:variable name="table">
|
4623
4692
|
|
4624
|
-
|
4625
|
-
|
4626
|
-
|
4627
|
-
|
4628
|
-
<!-- <xsl:if test="$namespace = 'bipm'">
|
4629
|
-
<fo:block> </fo:block>
|
4630
|
-
</xsl:if> -->
|
4631
|
-
|
4632
|
-
<!-- $namespace = 'iso' or -->
|
4633
|
-
|
4634
|
-
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
4635
|
-
|
4636
|
-
|
4637
|
-
|
4638
|
-
<xsl:call-template name="fn_name_display"/>
|
4693
|
+
<xsl:variable name="simple-table">
|
4694
|
+
<xsl:call-template name="getSimpleTable"/>
|
4695
|
+
</xsl:variable>
|
4639
4696
|
|
4640
4697
|
|
4641
|
-
|
4642
|
-
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
|
4643
|
-
|
4644
|
-
<!-- <xsl:variable name="cols-count">
|
4645
|
-
<xsl:choose>
|
4646
|
-
<xsl:when test="*[local-name()='thead']">
|
4647
|
-
<xsl:call-template name="calculate-columns-numbers">
|
4648
|
-
<xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
|
4649
|
-
</xsl:call-template>
|
4650
|
-
</xsl:when>
|
4651
|
-
<xsl:otherwise>
|
4652
|
-
<xsl:call-template name="calculate-columns-numbers">
|
4653
|
-
<xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
|
4654
|
-
</xsl:call-template>
|
4655
|
-
</xsl:otherwise>
|
4656
|
-
</xsl:choose>
|
4657
|
-
</xsl:variable> -->
|
4658
|
-
<!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
|
4659
|
-
<!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
|
4660
|
-
|
4661
|
-
|
4662
|
-
|
4663
|
-
<xsl:variable name="colwidths">
|
4664
|
-
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
|
4665
|
-
<xsl:call-template name="calculate-column-widths">
|
4666
|
-
<xsl:with-param name="cols-count" select="$cols-count"/>
|
4667
|
-
<xsl:with-param name="table" select="$simple-table"/>
|
4668
|
-
</xsl:call-template>
|
4669
|
-
</xsl:if>
|
4670
|
-
</xsl:variable>
|
4671
|
-
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
4672
|
-
|
4673
|
-
<!-- <xsl:variable name="colwidths2">
|
4674
|
-
<xsl:call-template name="calculate-column-widths">
|
4675
|
-
<xsl:with-param name="cols-count" select="$cols-count"/>
|
4676
|
-
</xsl:call-template>
|
4677
|
-
</xsl:variable> -->
|
4678
|
-
|
4679
|
-
<!-- cols-count=<xsl:copy-of select="$cols-count"/>
|
4680
|
-
colwidthsNew=<xsl:copy-of select="$colwidths"/>
|
4681
|
-
colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
|
4682
|
-
|
4683
|
-
<xsl:variable name="margin-left">
|
4684
|
-
<xsl:choose>
|
4685
|
-
<xsl:when test="sum(xalan:nodeset($colwidths)//column) > 75">15</xsl:when>
|
4686
|
-
<xsl:otherwise>0</xsl:otherwise>
|
4687
|
-
</xsl:choose>
|
4688
|
-
</xsl:variable>
|
4689
|
-
|
4690
|
-
<fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
|
4691
4698
|
|
4692
4699
|
|
4693
|
-
|
4694
|
-
|
4695
|
-
|
4696
4700
|
|
4701
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
4702
|
+
<fo:block> </fo:block>
|
4703
|
+
</xsl:if> -->
|
4697
4704
|
|
4698
|
-
|
4705
|
+
<!-- $namespace = 'iso' or -->
|
4706
|
+
|
4707
|
+
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
4699
4708
|
|
4709
|
+
|
4700
4710
|
|
4711
|
+
<xsl:call-template name="fn_name_display"/>
|
4701
4712
|
|
4713
|
+
|
4702
4714
|
|
4715
|
+
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
|
4703
4716
|
|
4704
|
-
|
4705
|
-
<xsl:
|
4706
|
-
|
4707
|
-
|
4708
|
-
|
4709
|
-
|
4710
|
-
|
4711
|
-
|
4712
|
-
|
4713
|
-
|
4717
|
+
<!-- <xsl:variable name="cols-count">
|
4718
|
+
<xsl:choose>
|
4719
|
+
<xsl:when test="*[local-name()='thead']">
|
4720
|
+
<xsl:call-template name="calculate-columns-numbers">
|
4721
|
+
<xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
|
4722
|
+
</xsl:call-template>
|
4723
|
+
</xsl:when>
|
4724
|
+
<xsl:otherwise>
|
4725
|
+
<xsl:call-template name="calculate-columns-numbers">
|
4726
|
+
<xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
|
4727
|
+
</xsl:call-template>
|
4728
|
+
</xsl:otherwise>
|
4729
|
+
</xsl:choose>
|
4730
|
+
</xsl:variable> -->
|
4731
|
+
<!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
|
4732
|
+
<!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
|
4733
|
+
|
4734
|
+
|
4735
|
+
|
4736
|
+
<xsl:variable name="colwidths">
|
4737
|
+
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
|
4738
|
+
<xsl:call-template name="calculate-column-widths">
|
4739
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
4740
|
+
<xsl:with-param name="table" select="$simple-table"/>
|
4741
|
+
</xsl:call-template>
|
4714
4742
|
</xsl:if>
|
4743
|
+
</xsl:variable>
|
4744
|
+
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
4745
|
+
|
4746
|
+
<!-- <xsl:variable name="colwidths2">
|
4747
|
+
<xsl:call-template name="calculate-column-widths">
|
4748
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
4749
|
+
</xsl:call-template>
|
4750
|
+
</xsl:variable> -->
|
4715
4751
|
|
4752
|
+
<!-- cols-count=<xsl:copy-of select="$cols-count"/>
|
4753
|
+
colwidthsNew=<xsl:copy-of select="$colwidths"/>
|
4754
|
+
colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
|
4716
4755
|
|
4756
|
+
<xsl:variable name="margin-left">
|
4757
|
+
<xsl:choose>
|
4758
|
+
<xsl:when test="sum(xalan:nodeset($colwidths)//column) > 75">15</xsl:when>
|
4759
|
+
<xsl:otherwise>0</xsl:otherwise>
|
4760
|
+
</xsl:choose>
|
4761
|
+
</xsl:variable>
|
4717
4762
|
|
4718
|
-
<
|
4719
|
-
<attribute name="table-layout">fixed</attribute>
|
4720
|
-
<attribute name="width">
|
4721
|
-
<xsl:choose>
|
4722
|
-
<xsl:when test="@width"><xsl:value-of select="@width"/></xsl:when>
|
4723
|
-
<xsl:otherwise>100%</xsl:otherwise>
|
4724
|
-
</xsl:choose>
|
4725
|
-
</attribute>
|
4726
|
-
<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
|
4727
|
-
<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
|
4763
|
+
<fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
|
4728
4764
|
|
4729
4765
|
|
4766
|
+
|
4767
|
+
|
4768
|
+
|
4730
4769
|
|
4731
4770
|
|
4732
|
-
|
4733
|
-
|
4734
|
-
|
4771
|
+
|
4735
4772
|
|
4736
|
-
|
4737
|
-
|
4738
|
-
<xsl:if test="not(ancestor::*[local-name()='preface']) and not(ancestor::*[local-name()='note_side']) and not(ancestor::*[local-name() = 'annex'] and .//*[local-name() = 'xref'][@pagenumber])">
|
4739
|
-
<attribute name="border-top">0.5pt solid black</attribute>
|
4740
|
-
<attribute name="border-bottom">0.5pt solid black</attribute>
|
4741
|
-
</xsl:if>
|
4742
|
-
<attribute name="margin-left">0mm</attribute>
|
4743
|
-
<attribute name="margin-right">0mm</attribute>
|
4744
4773
|
|
4745
|
-
</xsl:variable>
|
4746
|
-
|
4747
|
-
|
4748
|
-
<fo:table id="{@id}" table-omit-footer-at-break="true">
|
4749
4774
|
|
4750
|
-
<xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
|
4751
|
-
<xsl:attribute name="{@name}">
|
4752
|
-
<xsl:value-of select="."/>
|
4753
|
-
</xsl:attribute>
|
4754
|
-
</xsl:for-each>
|
4755
4775
|
|
4756
|
-
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4757
|
-
<xsl:if test="$isNoteOrFnExist = 'true'">
|
4758
|
-
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
4759
|
-
</xsl:if>
|
4760
4776
|
|
4761
|
-
|
4762
|
-
<xsl:
|
4763
|
-
|
4764
|
-
|
4765
|
-
|
4766
|
-
</xsl:
|
4767
|
-
<xsl:
|
4768
|
-
|
4769
|
-
|
4770
|
-
|
4771
|
-
|
4772
|
-
</xsl:when>
|
4773
|
-
<xsl:otherwise>
|
4774
|
-
<fo:table-column column-width="proportional-column-width({.})"/>
|
4775
|
-
</xsl:otherwise>
|
4776
|
-
</xsl:choose>
|
4777
|
-
</xsl:for-each>
|
4778
|
-
</xsl:otherwise>
|
4779
|
-
</xsl:choose>
|
4777
|
+
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
4778
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
4779
|
+
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
4780
|
+
<xsl:if test="not(ancestor::*[local-name()='note_side'])">
|
4781
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
4782
|
+
</xsl:if>
|
4783
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
4784
|
+
<xsl:if test="@parent-type = 'quote'">
|
4785
|
+
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
4786
|
+
<xsl:attribute name="font-size">9pt</xsl:attribute>
|
4787
|
+
</xsl:if>
|
4780
4788
|
|
4781
|
-
<xsl:choose>
|
4782
|
-
<xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
|
4783
|
-
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
4784
|
-
</xsl:when>
|
4785
|
-
<xsl:otherwise>
|
4786
|
-
<xsl:apply-templates/>
|
4787
|
-
</xsl:otherwise>
|
4788
|
-
</xsl:choose>
|
4789
4789
|
|
4790
|
-
|
4791
|
-
|
4792
|
-
|
4793
|
-
|
4794
|
-
|
4795
|
-
|
4796
|
-
|
4797
|
-
|
4798
|
-
|
4799
|
-
|
4800
|
-
|
4801
|
-
<!-- insert footer as table -->
|
4802
|
-
<!-- <fo:table>
|
4803
|
-
<xsl:for-each select="xalan::nodeset($table_attributes)/attribute">
|
4804
|
-
<xsl:attribute name="{@name}">
|
4805
|
-
<xsl:value-of select="."/>
|
4806
|
-
</xsl:attribute>
|
4807
|
-
</xsl:for-each>
|
4790
|
+
<xsl:variable name="table_width">
|
4791
|
+
<!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
|
4792
|
+
|
4793
|
+
|
4794
|
+
|
4795
|
+
<xsl:choose>
|
4796
|
+
<xsl:when test="@width"><xsl:value-of select="@width"/></xsl:when>
|
4797
|
+
<xsl:otherwise>100%</xsl:otherwise>
|
4798
|
+
</xsl:choose>
|
4799
|
+
|
4800
|
+
</xsl:variable>
|
4808
4801
|
|
4809
|
-
<xsl:
|
4802
|
+
<xsl:variable name="table_attributes">
|
4803
|
+
<attribute name="table-layout">fixed</attribute>
|
4804
|
+
<attribute name="width"><xsl:value-of select="normalize-space($table_width)"/></attribute>
|
4805
|
+
<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
|
4806
|
+
<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
|
4807
|
+
|
4808
|
+
|
4809
|
+
|
4810
|
+
|
4811
|
+
|
4812
|
+
|
4813
|
+
|
4814
|
+
|
4815
|
+
|
4816
|
+
|
4817
|
+
<xsl:if test="not(ancestor::*[local-name()='preface']) and not(ancestor::*[local-name()='note_side']) and not(ancestor::*[local-name() = 'annex'] and .//*[local-name() = 'xref'][@pagenumber]) and not(ancestor::*[local-name() = 'doccontrol'])">
|
4818
|
+
<attribute name="border-top">0.5pt solid black</attribute>
|
4819
|
+
<attribute name="border-bottom">0.5pt solid black</attribute>
|
4820
|
+
</xsl:if>
|
4821
|
+
<attribute name="margin-left">0mm</attribute>
|
4822
|
+
<attribute name="margin-right">0mm</attribute>
|
4823
|
+
|
4824
|
+
</xsl:variable>
|
4825
|
+
|
4826
|
+
|
4827
|
+
<fo:table id="{@id}" table-omit-footer-at-break="true">
|
4828
|
+
|
4829
|
+
<xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
|
4830
|
+
<xsl:attribute name="{@name}">
|
4831
|
+
<xsl:value-of select="."/>
|
4832
|
+
</xsl:attribute>
|
4833
|
+
</xsl:for-each>
|
4834
|
+
|
4835
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
4836
|
+
<xsl:if test="$isNoteOrFnExist = 'true'">
|
4837
|
+
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
4838
|
+
</xsl:if>
|
4839
|
+
|
4840
|
+
<xsl:choose>
|
4841
|
+
<xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
|
4842
|
+
<xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
|
4843
|
+
<fo:table-column column-width="{@width}"/>
|
4844
|
+
</xsl:for-each>
|
4845
|
+
</xsl:when>
|
4846
|
+
<xsl:otherwise>
|
4847
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
4848
|
+
<xsl:choose>
|
4849
|
+
<xsl:when test=". = 1 or . = 0">
|
4850
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
4851
|
+
</xsl:when>
|
4852
|
+
<xsl:otherwise>
|
4853
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
4854
|
+
</xsl:otherwise>
|
4855
|
+
</xsl:choose>
|
4856
|
+
</xsl:for-each>
|
4857
|
+
</xsl:otherwise>
|
4858
|
+
</xsl:choose>
|
4859
|
+
|
4810
4860
|
<xsl:choose>
|
4811
|
-
<xsl:when test="
|
4812
|
-
<
|
4861
|
+
<xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
|
4862
|
+
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
4813
4863
|
</xsl:when>
|
4814
4864
|
<xsl:otherwise>
|
4815
|
-
<
|
4865
|
+
<xsl:apply-templates/>
|
4816
4866
|
</xsl:otherwise>
|
4817
4867
|
</xsl:choose>
|
4868
|
+
|
4869
|
+
</fo:table>
|
4870
|
+
|
4871
|
+
<xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
|
4872
|
+
<xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
|
4873
|
+
<xsl:call-template name="insertTableFooterInSeparateTable">
|
4874
|
+
<xsl:with-param name="table_attributes" select="$table_attributes"/>
|
4875
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
4876
|
+
<xsl:with-param name="colgroup" select="$colgroup"/>
|
4877
|
+
</xsl:call-template>
|
4818
4878
|
</xsl:for-each>
|
4819
|
-
|
4820
|
-
|
4821
|
-
|
4822
|
-
|
4823
|
-
|
4824
|
-
|
4825
|
-
|
4879
|
+
|
4880
|
+
<!-- insert footer as table -->
|
4881
|
+
<!-- <fo:table>
|
4882
|
+
<xsl:for-each select="xalan::nodeset($table_attributes)/attribute">
|
4883
|
+
<xsl:attribute name="{@name}">
|
4884
|
+
<xsl:value-of select="."/>
|
4885
|
+
</xsl:attribute>
|
4886
|
+
</xsl:for-each>
|
4887
|
+
|
4888
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
4889
|
+
<xsl:choose>
|
4890
|
+
<xsl:when test=". = 1 or . = 0">
|
4891
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
4892
|
+
</xsl:when>
|
4893
|
+
<xsl:otherwise>
|
4894
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
4895
|
+
</xsl:otherwise>
|
4896
|
+
</xsl:choose>
|
4897
|
+
</xsl:for-each>
|
4898
|
+
</fo:table>-->
|
4899
|
+
|
4900
|
+
|
4901
|
+
|
4902
|
+
|
4903
|
+
|
4904
|
+
</fo:block-container>
|
4905
|
+
</xsl:variable>
|
4906
|
+
|
4907
|
+
|
4908
|
+
|
4909
|
+
<xsl:choose>
|
4910
|
+
<xsl:when test="@width">
|
4911
|
+
|
4912
|
+
<!-- centered table when table name is centered (see table-name-style) -->
|
4913
|
+
|
4914
|
+
|
4915
|
+
|
4916
|
+
<xsl:copy-of select="$table"/>
|
4917
|
+
|
4918
|
+
|
4919
|
+
</xsl:when>
|
4920
|
+
<xsl:otherwise>
|
4921
|
+
<xsl:copy-of select="$table"/>
|
4922
|
+
</xsl:otherwise>
|
4923
|
+
</xsl:choose>
|
4924
|
+
|
4826
4925
|
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
|
4827
4926
|
<xsl:if test="normalize-space() != ''">
|
4828
4927
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
@@ -4831,6 +4930,9 @@
|
|
4831
4930
|
<xsl:if test="not(*[local-name()='tab'])"> <!-- table without number -->
|
4832
4931
|
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
4833
4932
|
</xsl:if>
|
4933
|
+
<xsl:if test="not(../preceding-sibling::*) and ancestor::node()[@orientation]">
|
4934
|
+
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
4935
|
+
</xsl:if>
|
4834
4936
|
|
4835
4937
|
<xsl:apply-templates/>
|
4836
4938
|
</fo:block>
|
@@ -4954,7 +5056,15 @@
|
|
4954
5056
|
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
4955
5057
|
<xsl:value-of select="@target"/>
|
4956
5058
|
</xsl:template><xsl:template match="*[local-name()='math']" mode="td_text">
|
4957
|
-
<xsl:variable name="
|
5059
|
+
<xsl:variable name="mathml">
|
5060
|
+
<xsl:for-each select="*">
|
5061
|
+
<xsl:if test="local-name() != 'unit' and local-name() != 'prefix' and local-name() != 'dimension' and local-name() != 'quantity'">
|
5062
|
+
<xsl:copy-of select="."/>
|
5063
|
+
</xsl:if>
|
5064
|
+
</xsl:for-each>
|
5065
|
+
</xsl:variable>
|
5066
|
+
|
5067
|
+
<xsl:variable name="math_text" select="normalize-space(xalan:nodeset($mathml))"/>
|
4958
5068
|
<xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
|
4959
5069
|
</xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
|
4960
5070
|
<xsl:param name="cols-count"/>
|
@@ -5259,10 +5369,21 @@
|
|
5259
5369
|
<xsl:attribute name="border-bottom">solid black 0.5pt</xsl:attribute>
|
5260
5370
|
<xsl:attribute name="height">8mm</xsl:attribute>
|
5261
5371
|
<xsl:attribute name="padding-top">2mm</xsl:attribute>
|
5262
|
-
<xsl:if test="ancestor::*[local-name() = 'annex'] and ancestor::*[local-name() = 'table']//*[local-name() = 'xref'][@pagenumber]"><!-- for Annex ToC -->
|
5372
|
+
<xsl:if test="(ancestor::*[local-name() = 'annex'] and ancestor::*[local-name() = 'table']//*[local-name() = 'xref'][@pagenumber]) or ancestor::*[local-name() = 'doccontrol']"><!-- for Annex ToC -->
|
5263
5373
|
<xsl:attribute name="border-top">solid black 0pt</xsl:attribute>
|
5264
5374
|
<xsl:attribute name="border-bottom">solid black 0pt</xsl:attribute>
|
5265
5375
|
</xsl:if>
|
5376
|
+
<xsl:if test="ancestor::*[local-name() = 'doccontrol']">
|
5377
|
+
<xsl:attribute name="text-align">
|
5378
|
+
<xsl:choose>
|
5379
|
+
<xsl:when test="@align">
|
5380
|
+
<xsl:value-of select="@align"/>
|
5381
|
+
</xsl:when>
|
5382
|
+
<xsl:otherwise>left</xsl:otherwise>
|
5383
|
+
</xsl:choose>
|
5384
|
+
</xsl:attribute>
|
5385
|
+
<xsl:attribute name="display-align">before</xsl:attribute>
|
5386
|
+
</xsl:if>
|
5266
5387
|
|
5267
5388
|
<xsl:if test="@colspan">
|
5268
5389
|
<xsl:attribute name="number-columns-spanned">
|
@@ -5319,6 +5440,9 @@
|
|
5319
5440
|
<xsl:if test="not(ancestor::*[local-name()='tr']/following-sibling::*[local-name()='tr'])"> <!-- last row -->
|
5320
5441
|
<xsl:attribute name="padding-bottom">2mm</xsl:attribute>
|
5321
5442
|
</xsl:if>
|
5443
|
+
<xsl:if test="ancestor::*[local-name() = 'doccontrol']">
|
5444
|
+
<xsl:attribute name="display-align">before</xsl:attribute>
|
5445
|
+
</xsl:if>
|
5322
5446
|
|
5323
5447
|
<xsl:if test="@colspan">
|
5324
5448
|
<xsl:attribute name="number-columns-spanned">
|
@@ -5723,7 +5847,7 @@
|
|
5723
5847
|
<xsl:with-param name="table" select="$html-table"/>
|
5724
5848
|
</xsl:call-template>
|
5725
5849
|
</xsl:variable>
|
5726
|
-
<!-- colwidths=<xsl:
|
5850
|
+
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
5727
5851
|
<xsl:variable name="maxlength_dt">
|
5728
5852
|
<xsl:call-template name="getMaxLength_dt"/>
|
5729
5853
|
</xsl:variable>
|
@@ -5752,13 +5876,22 @@
|
|
5752
5876
|
</xsl:when>
|
5753
5877
|
<xsl:otherwise>
|
5754
5878
|
<xsl:choose>
|
5879
|
+
<!-- to set width check most wide chars like `W` -->
|
5755
5880
|
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 2"> <!-- if dt contains short text like t90, a, etc -->
|
5756
|
-
<fo:table-column column-width="
|
5757
|
-
<fo:table-column column-width="
|
5881
|
+
<fo:table-column column-width="7%"/>
|
5882
|
+
<fo:table-column column-width="93%"/>
|
5758
5883
|
</xsl:when>
|
5759
|
-
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 5"> <!-- if dt contains short text like
|
5760
|
-
<fo:table-column column-width="
|
5761
|
-
<fo:table-column column-width="
|
5884
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 5"> <!-- if dt contains short text like ABC, etc -->
|
5885
|
+
<fo:table-column column-width="15%"/>
|
5886
|
+
<fo:table-column column-width="85%"/>
|
5887
|
+
</xsl:when>
|
5888
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 7"> <!-- if dt contains short text like ABCDEF, etc -->
|
5889
|
+
<fo:table-column column-width="20%"/>
|
5890
|
+
<fo:table-column column-width="80%"/>
|
5891
|
+
</xsl:when>
|
5892
|
+
<xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) <= 10"> <!-- if dt contains short text like ABCDEFEF, etc -->
|
5893
|
+
<fo:table-column column-width="25%"/>
|
5894
|
+
<fo:table-column column-width="75%"/>
|
5762
5895
|
</xsl:when>
|
5763
5896
|
<!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] > 1.7">
|
5764
5897
|
<fo:table-column column-width="60%"/>
|
@@ -5975,8 +6108,16 @@
|
|
5975
6108
|
<fo:inline text-decoration="underline">
|
5976
6109
|
<xsl:apply-templates/>
|
5977
6110
|
</fo:inline>
|
6111
|
+
</xsl:template><xsl:template match="*[local-name()='add']">
|
6112
|
+
<fo:inline xsl:use-attribute-sets="add-style">
|
6113
|
+
<xsl:apply-templates/>
|
6114
|
+
</fo:inline>
|
5978
6115
|
</xsl:template><xsl:template match="*[local-name()='del']">
|
5979
|
-
<fo:inline
|
6116
|
+
<fo:inline xsl:use-attribute-sets="del-style">
|
6117
|
+
<xsl:apply-templates/>
|
6118
|
+
</fo:inline>
|
6119
|
+
</xsl:template><xsl:template match="*[local-name()='hi']">
|
6120
|
+
<fo:inline background-color="yellow">
|
5980
6121
|
<xsl:apply-templates/>
|
5981
6122
|
</fo:inline>
|
5982
6123
|
</xsl:template><xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
|
@@ -6068,6 +6209,10 @@
|
|
6068
6209
|
<xsl:param name="text" select="."/>
|
6069
6210
|
<!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
|
6070
6211
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1')"/>
|
6212
|
+
</xsl:template><xsl:template name="add-zero-spaces-link-java">
|
6213
|
+
<xsl:param name="text" select="."/>
|
6214
|
+
<!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
|
6215
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |,)','$1')"/>
|
6071
6216
|
</xsl:template><xsl:template name="add-zero-spaces">
|
6072
6217
|
<xsl:param name="text" select="."/>
|
6073
6218
|
<xsl:variable name="zero-space-after-chars">-</xsl:variable>
|
@@ -6319,6 +6464,14 @@
|
|
6319
6464
|
<xsl:apply-templates select="." mode="mathml"/>
|
6320
6465
|
</xsl:variable>
|
6321
6466
|
<fo:instream-foreign-object fox:alt-text="Math">
|
6467
|
+
|
6468
|
+
<xsl:if test="local-name(../..) = 'formula'">
|
6469
|
+
<xsl:attribute name="width">95%</xsl:attribute>
|
6470
|
+
<xsl:attribute name="content-height">100%</xsl:attribute>
|
6471
|
+
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
6472
|
+
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
6473
|
+
</xsl:if>
|
6474
|
+
|
6322
6475
|
<!-- <xsl:copy-of select="."/> -->
|
6323
6476
|
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
6324
6477
|
</fo:instream-foreign-object>
|
@@ -6332,7 +6485,12 @@
|
|
6332
6485
|
<!-- replace start and end spaces to non-break space -->
|
6333
6486
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),'(^ )|( $)',' ')"/>
|
6334
6487
|
</xsl:copy>
|
6335
|
-
</xsl:template><xsl:template match="
|
6488
|
+
</xsl:template><xsl:template match="mathml:mi[. = ',' and not(following-sibling::*[1][local-name() = 'mtext' and text() = ' '])]" mode="mathml">
|
6489
|
+
<xsl:copy>
|
6490
|
+
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
6491
|
+
</xsl:copy>
|
6492
|
+
<mathml:mspace width="0.5ex"/>
|
6493
|
+
</xsl:template><xsl:template match="mathml:math/*[local-name()='unit']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='prefix']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='dimension']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='quantity']" mode="mathml"/><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
|
6336
6494
|
<xsl:variable name="target">
|
6337
6495
|
<xsl:choose>
|
6338
6496
|
<xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
|
@@ -6353,7 +6511,10 @@
|
|
6353
6511
|
<fo:basic-link external-destination="{@target}" fox:alt-text="{@target}">
|
6354
6512
|
<xsl:choose>
|
6355
6513
|
<xsl:when test="normalize-space(.) = ''">
|
6356
|
-
<xsl:value-of select="$target"/>
|
6514
|
+
<!-- <xsl:value-of select="$target"/> -->
|
6515
|
+
<xsl:call-template name="add-zero-spaces-link-java">
|
6516
|
+
<xsl:with-param name="text" select="$target"/>
|
6517
|
+
</xsl:call-template>
|
6357
6518
|
</xsl:when>
|
6358
6519
|
<xsl:otherwise>
|
6359
6520
|
<xsl:apply-templates/>
|
@@ -6363,8 +6524,6 @@
|
|
6363
6524
|
</xsl:otherwise>
|
6364
6525
|
</xsl:choose>
|
6365
6526
|
</fo:inline>
|
6366
|
-
</xsl:template><xsl:template match="*[local-name()='bookmark']">
|
6367
|
-
<fo:inline id="{@id}"/>
|
6368
6527
|
</xsl:template><xsl:template match="*[local-name()='appendix']">
|
6369
6528
|
<fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
|
6370
6529
|
<xsl:apply-templates select="*[local-name()='title']" mode="process"/>
|
@@ -6586,27 +6745,43 @@
|
|
6586
6745
|
<fo:block id="{@id}">
|
6587
6746
|
<xsl:apply-templates/>
|
6588
6747
|
</fo:block>
|
6748
|
+
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
6589
6749
|
</xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']//*[local-name() = 'p']">
|
6590
6750
|
<fo:block xsl:use-attribute-sets="figure-pseudocode-p-style">
|
6591
6751
|
<xsl:apply-templates/>
|
6592
6752
|
</fo:block>
|
6593
6753
|
</xsl:template><xsl:template match="*[local-name() = 'image']">
|
6594
|
-
<
|
6595
|
-
|
6596
|
-
|
6597
|
-
|
6598
|
-
|
6599
|
-
|
6600
|
-
|
6601
|
-
|
6602
|
-
|
6603
|
-
|
6604
|
-
|
6605
|
-
|
6606
|
-
|
6607
|
-
|
6608
|
-
|
6609
|
-
|
6754
|
+
<xsl:choose>
|
6755
|
+
<xsl:when test="ancestor::*[local-name() = 'title']">
|
6756
|
+
<fo:inline padding-left="1mm" padding-right="1mm">
|
6757
|
+
<xsl:variable name="src">
|
6758
|
+
<xsl:call-template name="image_src"/>
|
6759
|
+
</xsl:variable>
|
6760
|
+
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/>
|
6761
|
+
</fo:inline>
|
6762
|
+
</xsl:when>
|
6763
|
+
<xsl:otherwise>
|
6764
|
+
<fo:block xsl:use-attribute-sets="image-style">
|
6765
|
+
|
6766
|
+
<xsl:variable name="src">
|
6767
|
+
<xsl:call-template name="image_src"/>
|
6768
|
+
</xsl:variable>
|
6769
|
+
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
|
6770
|
+
</fo:block>
|
6771
|
+
</xsl:otherwise>
|
6772
|
+
</xsl:choose>
|
6773
|
+
</xsl:template><xsl:template name="image_src">
|
6774
|
+
<xsl:choose>
|
6775
|
+
<xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
|
6776
|
+
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
6777
|
+
</xsl:when>
|
6778
|
+
<xsl:when test="not(starts-with(@src, 'data:'))">
|
6779
|
+
<xsl:value-of select="concat('url(file:',$basepath, @src, ')')"/>
|
6780
|
+
</xsl:when>
|
6781
|
+
<xsl:otherwise>
|
6782
|
+
<xsl:value-of select="@src"/>
|
6783
|
+
</xsl:otherwise>
|
6784
|
+
</xsl:choose>
|
6610
6785
|
</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">
|
6611
6786
|
<xsl:apply-templates mode="contents"/>
|
6612
6787
|
<xsl:text> </xsl:text>
|
@@ -6853,6 +7028,8 @@
|
|
6853
7028
|
<xsl:copy>
|
6854
7029
|
<xsl:apply-templates mode="contents_item"/>
|
6855
7030
|
</xsl:copy>
|
7031
|
+
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents_item">
|
7032
|
+
<xsl:copy-of select="."/>
|
6856
7033
|
</xsl:template><xsl:template match="*[local-name() = 'br']" mode="contents_item">
|
6857
7034
|
<xsl:text> </xsl:text>
|
6858
7035
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
@@ -7181,10 +7358,11 @@
|
|
7181
7358
|
</xsl:choose>
|
7182
7359
|
|
7183
7360
|
</xsl:template><xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
|
7184
|
-
|
7361
|
+
<xsl:variable name="num"><xsl:number/></xsl:variable>
|
7185
7362
|
<xsl:variable name="element">
|
7186
7363
|
block
|
7187
7364
|
|
7365
|
+
|
7188
7366
|
</xsl:variable>
|
7189
7367
|
<xsl:choose>
|
7190
7368
|
<xsl:when test="normalize-space($element) = 'block'">
|
@@ -7259,11 +7437,13 @@
|
|
7259
7437
|
</xsl:if>
|
7260
7438
|
</xsl:if>
|
7261
7439
|
|
7440
|
+
|
7262
7441
|
<fo:block-container margin-left="0mm">
|
7263
7442
|
|
7264
7443
|
<fo:block xsl:use-attribute-sets="quote-style">
|
7265
7444
|
<!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
|
7266
|
-
|
7445
|
+
|
7446
|
+
<xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
|
7267
7447
|
</fo:block>
|
7268
7448
|
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
7269
7449
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
@@ -7286,32 +7466,50 @@
|
|
7286
7466
|
<xsl:text>— </xsl:text>
|
7287
7467
|
<xsl:apply-templates/>
|
7288
7468
|
</xsl:template><xsl:template match="*[local-name() = 'eref']">
|
7289
|
-
|
7290
|
-
|
7291
|
-
|
7292
|
-
|
7293
|
-
|
7294
|
-
|
7295
|
-
|
7296
|
-
|
7297
|
-
|
7298
|
-
|
7299
|
-
|
7300
|
-
|
7301
|
-
|
7302
|
-
|
7303
|
-
|
7304
|
-
|
7305
|
-
|
7306
|
-
|
7307
|
-
|
7308
|
-
|
7309
|
-
|
7310
|
-
|
7311
|
-
|
7312
|
-
|
7313
|
-
|
7314
|
-
|
7469
|
+
|
7470
|
+
<xsl:variable name="bibitemid">
|
7471
|
+
<xsl:choose>
|
7472
|
+
<xsl:when test="//*[local-name() = 'bibitem'][@hidden='true' and @id = current()/@bibitemid]"/>
|
7473
|
+
<xsl:when test="//*[local-name() = 'references'][@hidden='true']/*[local-name() = 'bibitem'][@id = current()/@bibitemid]"/>
|
7474
|
+
<xsl:otherwise><xsl:value-of select="@bibitemid"/></xsl:otherwise>
|
7475
|
+
</xsl:choose>
|
7476
|
+
</xsl:variable>
|
7477
|
+
|
7478
|
+
<xsl:choose>
|
7479
|
+
<xsl:when test="normalize-space($bibitemid) != ''">
|
7480
|
+
<fo:inline xsl:use-attribute-sets="eref-style">
|
7481
|
+
<xsl:if test="@type = 'footnote'">
|
7482
|
+
|
7483
|
+
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
7484
|
+
<xsl:attribute name="font-size">80%</xsl:attribute>
|
7485
|
+
<xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
|
7486
|
+
<xsl:attribute name="vertical-align">super</xsl:attribute>
|
7487
|
+
|
7488
|
+
|
7489
|
+
</xsl:if>
|
7490
|
+
|
7491
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
7492
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
7493
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
7494
|
+
</xsl:if>
|
7495
|
+
<xsl:if test="@type = 'inline'">
|
7496
|
+
|
7497
|
+
<xsl:attribute name="color">blue</xsl:attribute>
|
7498
|
+
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
7499
|
+
|
7500
|
+
|
7501
|
+
|
7502
|
+
</xsl:if>
|
7503
|
+
|
7504
|
+
<xsl:apply-templates/>
|
7505
|
+
</fo:basic-link>
|
7506
|
+
|
7507
|
+
</fo:inline>
|
7508
|
+
</xsl:when>
|
7509
|
+
<xsl:otherwise>
|
7510
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
7511
|
+
</xsl:otherwise>
|
7512
|
+
</xsl:choose>
|
7315
7513
|
</xsl:template><xsl:template match="*[local-name() = 'tab']">
|
7316
7514
|
<!-- zero-space char -->
|
7317
7515
|
<xsl:variable name="depth">
|
@@ -7493,6 +7691,153 @@
|
|
7493
7691
|
</fo:block>
|
7494
7692
|
</xsl:otherwise>
|
7495
7693
|
</xsl:choose>
|
7694
|
+
</xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="dash" select="'–'"/><xsl:variable name="bookmark_in_fn">
|
7695
|
+
<xsl:for-each select="//*[local-name() = 'bookmark'][ancestor::*[local-name() = 'fn']]">
|
7696
|
+
<bookmark><xsl:value-of select="@id"/></bookmark>
|
7697
|
+
</xsl:for-each>
|
7698
|
+
</xsl:variable><xsl:template match="@*|node()" mode="index_add_id">
|
7699
|
+
<xsl:copy>
|
7700
|
+
<xsl:apply-templates select="@*|node()" mode="index_add_id"/>
|
7701
|
+
</xsl:copy>
|
7702
|
+
</xsl:template><xsl:template match="*[local-name() = 'xref']" mode="index_add_id">
|
7703
|
+
<xsl:variable name="id">
|
7704
|
+
<xsl:call-template name="generateIndexXrefId"/>
|
7705
|
+
</xsl:variable>
|
7706
|
+
<xsl:copy> <!-- add id to xref -->
|
7707
|
+
<xsl:apply-templates select="@*" mode="index_add_id"/>
|
7708
|
+
<xsl:attribute name="id">
|
7709
|
+
<xsl:value-of select="$id"/>
|
7710
|
+
</xsl:attribute>
|
7711
|
+
<xsl:apply-templates mode="index_add_id"/>
|
7712
|
+
</xsl:copy>
|
7713
|
+
<!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
|
7714
|
+
<xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
|
7715
|
+
<xsl:if test="@to">
|
7716
|
+
<xsl:value-of select="$dash"/>
|
7717
|
+
<xsl:copy>
|
7718
|
+
<xsl:copy-of select="@*"/>
|
7719
|
+
<xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
|
7720
|
+
<xsl:attribute name="id">
|
7721
|
+
<xsl:value-of select="$id"/><xsl:text>_to</xsl:text>
|
7722
|
+
</xsl:attribute>
|
7723
|
+
<xsl:apply-templates mode="index_add_id"/>
|
7724
|
+
</xsl:copy>
|
7725
|
+
</xsl:if>
|
7726
|
+
</xsl:template><xsl:template match="@*|node()" mode="index_update">
|
7727
|
+
<xsl:copy>
|
7728
|
+
<xsl:apply-templates select="@*|node()" mode="index_update"/>
|
7729
|
+
</xsl:copy>
|
7730
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']" mode="index_update">
|
7731
|
+
<xsl:copy>
|
7732
|
+
<xsl:apply-templates select="@*" mode="index_update"/>
|
7733
|
+
<xsl:apply-templates select="node()[1]" mode="process_li_element"/>
|
7734
|
+
</xsl:copy>
|
7735
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']/node()" mode="process_li_element" priority="2">
|
7736
|
+
<xsl:param name="element"/>
|
7737
|
+
<xsl:param name="remove" select="'false'"/>
|
7738
|
+
<xsl:param name="target"/>
|
7739
|
+
<!-- <node></node> -->
|
7740
|
+
<xsl:choose>
|
7741
|
+
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $dash) and $remove = 'true'">
|
7742
|
+
<!-- skip text (i.e. remove it) and process next element -->
|
7743
|
+
<!-- [removed_<xsl:value-of select="."/>] -->
|
7744
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
7745
|
+
<xsl:with-param name="target"><xsl:value-of select="$target"/></xsl:with-param>
|
7746
|
+
</xsl:apply-templates>
|
7747
|
+
</xsl:when>
|
7748
|
+
<xsl:when test="self::text()">
|
7749
|
+
<xsl:value-of select="."/>
|
7750
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
7751
|
+
</xsl:when>
|
7752
|
+
<xsl:when test="self::* and local-name(.) = 'xref'">
|
7753
|
+
<xsl:variable name="id" select="@id"/>
|
7754
|
+
<xsl:variable name="page" select="$index//item[@id = $id]"/>
|
7755
|
+
<xsl:variable name="id_next" select="following-sibling::*[local-name() = 'xref'][1]/@id"/>
|
7756
|
+
<xsl:variable name="page_next" select="$index//item[@id = $id_next]"/>
|
7757
|
+
|
7758
|
+
<xsl:variable name="id_prev" select="preceding-sibling::*[local-name() = 'xref'][1]/@id"/>
|
7759
|
+
<xsl:variable name="page_prev" select="$index//item[@id = $id_prev]"/>
|
7760
|
+
|
7761
|
+
<xsl:choose>
|
7762
|
+
<!-- 2nd pass -->
|
7763
|
+
<!-- if page is equal to page for next and page is not the end of range -->
|
7764
|
+
<xsl:when test="$page != '' and $page_next != '' and $page = $page_next and not(contains($page, '_to'))"> <!-- case: 12, 12-14 -->
|
7765
|
+
<!-- skip element (i.e. remove it) and remove next text ',' -->
|
7766
|
+
<!-- [removed_xref] -->
|
7767
|
+
|
7768
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
7769
|
+
<xsl:with-param name="remove">true</xsl:with-param>
|
7770
|
+
<xsl:with-param name="target">
|
7771
|
+
<xsl:choose>
|
7772
|
+
<xsl:when test="$target != ''"><xsl:value-of select="$target"/></xsl:when>
|
7773
|
+
<xsl:otherwise><xsl:value-of select="@target"/></xsl:otherwise>
|
7774
|
+
</xsl:choose>
|
7775
|
+
</xsl:with-param>
|
7776
|
+
</xsl:apply-templates>
|
7777
|
+
</xsl:when>
|
7778
|
+
|
7779
|
+
<xsl:when test="$page != '' and $page_prev != '' and $page = $page_prev and contains($page_prev, '_to')"> <!-- case: 12-14, 14, ... -->
|
7780
|
+
<!-- remove xref -->
|
7781
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
7782
|
+
<xsl:with-param name="remove">true</xsl:with-param>
|
7783
|
+
</xsl:apply-templates>
|
7784
|
+
</xsl:when>
|
7785
|
+
|
7786
|
+
<xsl:otherwise>
|
7787
|
+
<xsl:apply-templates select="." mode="xref_copy">
|
7788
|
+
<xsl:with-param name="target" select="$target"/>
|
7789
|
+
</xsl:apply-templates>
|
7790
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
7791
|
+
</xsl:otherwise>
|
7792
|
+
</xsl:choose>
|
7793
|
+
</xsl:when>
|
7794
|
+
<xsl:when test="self::* and local-name(.) = 'ul'">
|
7795
|
+
<!-- ul -->
|
7796
|
+
<xsl:apply-templates select="." mode="index_update"/>
|
7797
|
+
</xsl:when>
|
7798
|
+
<xsl:otherwise>
|
7799
|
+
<xsl:apply-templates select="." mode="xref_copy">
|
7800
|
+
<xsl:with-param name="target" select="$target"/>
|
7801
|
+
</xsl:apply-templates>
|
7802
|
+
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element"/>
|
7803
|
+
</xsl:otherwise>
|
7804
|
+
</xsl:choose>
|
7805
|
+
</xsl:template><xsl:template match="@*|node()" mode="xref_copy">
|
7806
|
+
<xsl:param name="target"/>
|
7807
|
+
<xsl:copy>
|
7808
|
+
<xsl:apply-templates select="@*" mode="xref_copy"/>
|
7809
|
+
<xsl:if test="$target != '' and not(xalan:nodeset($bookmark_in_fn)//bookmark[. = $target])">
|
7810
|
+
<xsl:attribute name="target"><xsl:value-of select="$target"/></xsl:attribute>
|
7811
|
+
</xsl:if>
|
7812
|
+
<xsl:apply-templates select="node()" mode="xref_copy"/>
|
7813
|
+
</xsl:copy>
|
7814
|
+
</xsl:template><xsl:template name="generateIndexXrefId">
|
7815
|
+
<xsl:variable name="level" select="count(ancestor::*[local-name() = 'ul'])"/>
|
7816
|
+
|
7817
|
+
<xsl:variable name="docid">
|
7818
|
+
<xsl:call-template name="getDocumentId"/>
|
7819
|
+
</xsl:variable>
|
7820
|
+
<xsl:variable name="item_number">
|
7821
|
+
<xsl:number count="*[local-name() = 'li'][ancestor::*[local-name() = 'indexsect']]" level="any"/>
|
7822
|
+
</xsl:variable>
|
7823
|
+
<xsl:variable name="xref_number"><xsl:number count="*[local-name() = 'xref']"/></xsl:variable>
|
7824
|
+
<xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
|
7825
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']" priority="4">
|
7826
|
+
<xsl:apply-templates/>
|
7827
|
+
<fo:block>
|
7828
|
+
<xsl:if test="following-sibling::*[local-name() = 'clause']">
|
7829
|
+
<fo:block> </fo:block>
|
7830
|
+
</xsl:if>
|
7831
|
+
</fo:block>
|
7832
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'ul']" priority="4">
|
7833
|
+
<xsl:apply-templates/>
|
7834
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']" priority="4">
|
7835
|
+
<xsl:variable name="level" select="count(ancestor::*[local-name() = 'ul'])"/>
|
7836
|
+
<fo:block start-indent="{5 * $level}mm" text-indent="-5mm">
|
7837
|
+
<xsl:apply-templates/>
|
7838
|
+
</fo:block>
|
7839
|
+
</xsl:template><xsl:template match="*[local-name() = 'bookmark']" name="bookmark">
|
7840
|
+
<fo:inline id="{@id}" font-size="1pt"/>
|
7496
7841
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
7497
7842
|
<!-- <row>
|
7498
7843
|
<date>05-07-2013</date>
|
@@ -7708,7 +8053,7 @@
|
|
7708
8053
|
<xsl:param name="charDelim" select="', '"/>
|
7709
8054
|
<xsl:choose>
|
7710
8055
|
<xsl:when test="$sorting = 'true' or $sorting = 'yes'">
|
7711
|
-
<xsl:for-each select="
|
8056
|
+
<xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
|
7712
8057
|
<xsl:sort data-type="text" order="ascending"/>
|
7713
8058
|
<xsl:call-template name="insertKeyword">
|
7714
8059
|
<xsl:with-param name="charAtEnd" select="$charAtEnd"/>
|
@@ -7717,7 +8062,7 @@
|
|
7717
8062
|
</xsl:for-each>
|
7718
8063
|
</xsl:when>
|
7719
8064
|
<xsl:otherwise>
|
7720
|
-
<xsl:for-each select="
|
8065
|
+
<xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
|
7721
8066
|
<xsl:call-template name="insertKeyword">
|
7722
8067
|
<xsl:with-param name="charAtEnd" select="$charAtEnd"/>
|
7723
8068
|
<xsl:with-param name="charDelim" select="$charDelim"/>
|
@@ -7734,65 +8079,71 @@
|
|
7734
8079
|
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
7735
8080
|
</xsl:choose>
|
7736
8081
|
</xsl:template><xsl:template name="addPDFUAmeta">
|
7737
|
-
<
|
7738
|
-
<
|
7739
|
-
|
7740
|
-
|
7741
|
-
|
7742
|
-
|
7743
|
-
|
7744
|
-
|
7745
|
-
|
7746
|
-
|
7747
|
-
|
7748
|
-
|
8082
|
+
<xsl:variable name="lang">
|
8083
|
+
<xsl:call-template name="getLang"/>
|
8084
|
+
</xsl:variable>
|
8085
|
+
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
8086
|
+
<pdf:dictionary type="normal" key="ViewerPreferences">
|
8087
|
+
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
8088
|
+
</pdf:dictionary>
|
8089
|
+
</pdf:catalog>
|
8090
|
+
<x:xmpmeta xmlns:x="adobe:ns:meta/">
|
8091
|
+
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
8092
|
+
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
|
8093
|
+
<!-- Dublin Core properties go here -->
|
8094
|
+
<dc:title>
|
8095
|
+
<xsl:variable name="title">
|
8096
|
+
<xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
|
8097
|
+
|
7749
8098
|
|
8099
|
+
<xsl:value-of select="*[local-name() = 'title'][@language = $lang and @type = 'main']"/>
|
7750
8100
|
|
7751
|
-
<xsl:value-of select="//*[local-name() = 'bibdata'][@type='standard']/*[local-name() = 'title'][@language = 'en' and @type = 'main']"/>
|
7752
8101
|
|
7753
8102
|
|
7754
8103
|
|
7755
8104
|
|
7756
|
-
</xsl:
|
7757
|
-
|
7758
|
-
|
7759
|
-
|
7760
|
-
|
7761
|
-
|
7762
|
-
|
7763
|
-
</xsl:
|
7764
|
-
</xsl:
|
7765
|
-
</
|
7766
|
-
|
8105
|
+
</xsl:for-each>
|
8106
|
+
</xsl:variable>
|
8107
|
+
<xsl:choose>
|
8108
|
+
<xsl:when test="normalize-space($title) != ''">
|
8109
|
+
<xsl:value-of select="$title"/>
|
8110
|
+
</xsl:when>
|
8111
|
+
<xsl:otherwise>
|
8112
|
+
<xsl:text> </xsl:text>
|
8113
|
+
</xsl:otherwise>
|
8114
|
+
</xsl:choose>
|
8115
|
+
</dc:title>
|
8116
|
+
<dc:creator>
|
8117
|
+
<xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
|
7767
8118
|
|
8119
|
+
<xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
|
8120
|
+
<xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
|
8121
|
+
<xsl:if test="position() != last()">; </xsl:if>
|
8122
|
+
</xsl:for-each>
|
7768
8123
|
|
7769
|
-
<xsl:value-of select="//*[local-name() = 'bibdata'][@type='standard']/*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'organization']/*[local-name() = 'name']"/>
|
7770
8124
|
|
7771
8125
|
|
7772
|
-
</
|
7773
|
-
|
7774
|
-
|
7775
|
-
|
7776
|
-
|
7777
|
-
|
7778
|
-
|
7779
|
-
|
7780
|
-
|
7781
|
-
|
7782
|
-
|
7783
|
-
|
7784
|
-
|
7785
|
-
|
7786
|
-
|
7787
|
-
|
7788
|
-
|
7789
|
-
<
|
7790
|
-
|
7791
|
-
|
7792
|
-
|
7793
|
-
</rdf:RDF>
|
7794
|
-
</x:xmpmeta>
|
7795
|
-
</fo:declarations>
|
8126
|
+
</xsl:for-each>
|
8127
|
+
</dc:creator>
|
8128
|
+
<dc:description>
|
8129
|
+
<xsl:variable name="abstract">
|
8130
|
+
|
8131
|
+
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
|
8132
|
+
|
8133
|
+
|
8134
|
+
</xsl:variable>
|
8135
|
+
<xsl:value-of select="normalize-space($abstract)"/>
|
8136
|
+
</dc:description>
|
8137
|
+
<pdf:Keywords>
|
8138
|
+
<xsl:call-template name="insertKeywords"/>
|
8139
|
+
</pdf:Keywords>
|
8140
|
+
</rdf:Description>
|
8141
|
+
<rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
|
8142
|
+
<!-- XMP properties go here -->
|
8143
|
+
<xmp:CreatorTool/>
|
8144
|
+
</rdf:Description>
|
8145
|
+
</rdf:RDF>
|
8146
|
+
</x:xmpmeta>
|
7796
8147
|
</xsl:template><xsl:template name="getId">
|
7797
8148
|
<xsl:choose>
|
7798
8149
|
<xsl:when test="../@id">
|