metanorma-iso 1.5.4 → 1.5.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/asciidoctor/iso/basicdoc.rng +23 -0
- data/lib/asciidoctor/iso/front.rb +3 -12
- data/lib/asciidoctor/iso/isodoc.rng +121 -14
- data/lib/asciidoctor/iso/isostandard.rng +8 -1
- data/lib/asciidoctor/iso/section.rb +0 -7
- data/lib/isodoc/iso/html/isodoc.css +16 -4
- data/lib/isodoc/iso/html/isodoc.scss +18 -4
- data/lib/isodoc/iso/iso.amendment.xsl +802 -267
- data/lib/isodoc/iso/iso.international-standard.xsl +802 -267
- data/lib/isodoc/iso/isosts_convert.rb +31 -0
- data/lib/isodoc/iso/xref.rb +7 -11
- data/lib/metanorma-iso.rb +1 -0
- data/lib/metanorma/iso/processor.rb +4 -1
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +2 -2
- data/spec/asciidoctor-iso/amd_spec.rb +7 -39
- data/spec/asciidoctor-iso/base_spec.rb +6 -6
- data/spec/asciidoctor-iso/cleanup_spec.rb +30 -30
- data/spec/asciidoctor-iso/table_spec.rb +111 -111
- data/spec/isodoc/amd_spec.rb +31 -16
- data/spec/isodoc/blocks_spec.rb +1 -1
- data/spec/isodoc/i18n_spec.rb +17 -4
- data/spec/isodoc/inline_spec.rb +1 -1
- data/spec/isodoc/iso_spec.rb +5 -5
- data/spec/isodoc/postproc_spec.rb +4 -1
- data/spec/isodoc/ref_spec.rb +5 -2
- data/spec/isodoc/section_spec.rb +2 -2
- data/spec/isodoc/table_spec.rb +1 -1
- data/spec/isodoc/terms_spec.rb +1 -1
- data/spec/isodoc/xref_spec.rb +11 -11
- data/spec/metanorma/processor_spec.rb +1 -1
- data/spec/spec_helper.rb +1 -1
- metadata +7 -6
@@ -15,6 +15,8 @@
|
|
15
15
|
<xsl:variable name="pageWidth" select="'210mm'"/>
|
16
16
|
<xsl:variable name="pageHeight" select="'297mm'"/>
|
17
17
|
|
18
|
+
<xsl:variable name="docidentifierISO" select="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso'] | /iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'ISO']"/>
|
19
|
+
|
18
20
|
<xsl:variable name="copyrightText" select="concat('© ISO ', iso:iso-standard/iso:bibdata/iso:copyright/iso:from ,' – All rights reserved')"/>
|
19
21
|
|
20
22
|
<xsl:variable name="lang-1st-letter_tmp" select="substring-before(substring-after(/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-with-lang'], '('), ')')"/>
|
@@ -293,6 +295,10 @@
|
|
293
295
|
|
294
296
|
<xsl:call-template name="addPDFUAmeta"/>
|
295
297
|
|
298
|
+
<xsl:call-template name="addBookmarks">
|
299
|
+
<xsl:with-param name="contents" select="$contents"/>
|
300
|
+
</xsl:call-template>
|
301
|
+
|
296
302
|
<!-- cover page -->
|
297
303
|
<xsl:choose>
|
298
304
|
<xsl:when test="$stage-abbreviation != ''">
|
@@ -399,7 +405,7 @@
|
|
399
405
|
<xsl:value-of select="$stage-fullname-uppercased"/>
|
400
406
|
</fo:block>
|
401
407
|
<fo:block font-size="20pt" font-weight="bold" text-align="right">
|
402
|
-
<xsl:value-of select="
|
408
|
+
<xsl:value-of select="$docidentifierISO"/>
|
403
409
|
</fo:block>
|
404
410
|
|
405
411
|
|
@@ -539,36 +545,69 @@
|
|
539
545
|
</fo:table-cell>
|
540
546
|
<fo:table-cell>
|
541
547
|
<fo:block text-align="left">
|
542
|
-
<xsl:
|
548
|
+
<xsl:choose>
|
549
|
+
<xsl:when test="$doctype = 'amendment'">
|
550
|
+
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(translate(/iso:iso-standard/iso:bibdata/iso:ext/iso:updates-document-type,'-',' ')))"/>
|
551
|
+
</xsl:when>
|
552
|
+
<xsl:otherwise>
|
553
|
+
<xsl:value-of select="$doctype_uppercased"/>
|
554
|
+
</xsl:otherwise>
|
555
|
+
</xsl:choose>
|
543
556
|
</fo:block>
|
544
557
|
</fo:table-cell>
|
545
558
|
<fo:table-cell>
|
546
559
|
<fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
|
547
|
-
<xsl:value-of select="
|
560
|
+
<xsl:value-of select="$docidentifierISO"/>
|
548
561
|
</fo:block>
|
549
562
|
</fo:table-cell>
|
550
563
|
</fo:table-row>
|
551
564
|
<fo:table-row height="42mm">
|
552
565
|
<fo:table-cell number-columns-spanned="3" font-size="10pt" line-height="1.2">
|
553
566
|
<fo:block text-align="right">
|
554
|
-
<xsl:if test="$stage-abbreviation = 'PRF' or $stage-abbreviation = 'IS' or $stage-abbreviation = 'published'">
|
567
|
+
<xsl:if test="$stage-abbreviation = 'PRF' or $stage-abbreviation = 'IS' or $stage-abbreviation = 'D' or $stage-abbreviation = 'published'">
|
555
568
|
<xsl:call-template name="printEdition"/>
|
556
569
|
</xsl:if>
|
557
570
|
<xsl:choose>
|
558
|
-
<xsl:when test="$stage-abbreviation = 'IS'">
|
571
|
+
<xsl:when test="$stage-abbreviation = 'IS' and /iso:iso-standard/iso:bibdata/iso:date[@type = 'published']">
|
559
572
|
<xsl:value-of select="$linebreak"/>
|
560
573
|
<xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'published']"/>
|
561
574
|
</xsl:when>
|
562
|
-
<xsl:when test="$stage-abbreviation = '
|
575
|
+
<xsl:when test="($stage-abbreviation = 'IS' or $stage-abbreviation = 'D') and /iso:iso-standard/iso:bibdata/iso:date[@type = 'created']">
|
576
|
+
<xsl:value-of select="$linebreak"/>
|
577
|
+
<xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'created']"/>
|
578
|
+
</xsl:when>
|
579
|
+
<xsl:when test="$stage-abbreviation = 'IS' or $stage-abbreviation = 'published'">
|
563
580
|
<xsl:value-of select="$linebreak"/>
|
564
581
|
<xsl:value-of select="substring(/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date,1, 7)"/>
|
565
582
|
</xsl:when>
|
566
583
|
</xsl:choose>
|
567
|
-
|
568
|
-
|
584
|
+
</fo:block>
|
585
|
+
<!-- <xsl:value-of select="$linebreak"/>
|
586
|
+
<xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/> -->
|
587
|
+
<xsl:if test="$doctype = 'amendment'">
|
588
|
+
<fo:block text-align="right" margin-right="0.5mm">
|
589
|
+
<fo:block font-weight="bold" margin-top="4pt">
|
590
|
+
<xsl:variable name="title-amendment">
|
591
|
+
<xsl:call-template name="getTitle">
|
592
|
+
<xsl:with-param name="name" select="'title-amendment'"/>
|
593
|
+
</xsl:call-template>
|
594
|
+
</xsl:variable>
|
595
|
+
<xsl:value-of select="$title-amendment"/><xsl:text> </xsl:text>
|
596
|
+
<xsl:variable name="amendment-number" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@amendment"/>
|
597
|
+
<xsl:if test="normalize-space($amendment-number) != ''">
|
598
|
+
<xsl:value-of select="$amendment-number"/><xsl:text> </xsl:text>
|
599
|
+
</xsl:if>
|
600
|
+
</fo:block>
|
601
|
+
<fo:block>
|
602
|
+
<xsl:if test="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']">
|
603
|
+
<xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:date[@type = 'updated']"/>
|
604
|
+
</xsl:if>
|
605
|
+
</fo:block>
|
569
606
|
</fo:block>
|
607
|
+
</xsl:if>
|
570
608
|
</fo:table-cell>
|
571
609
|
</fo:table-row>
|
610
|
+
|
572
611
|
</fo:table-body>
|
573
612
|
</fo:table>
|
574
613
|
|
@@ -637,6 +676,12 @@
|
|
637
676
|
</xsl:if>
|
638
677
|
<xsl:value-of select="$title-part"/>
|
639
678
|
</xsl:if> -->
|
679
|
+
<xsl:variable name="title-amd" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'title-amd']"/>
|
680
|
+
<xsl:if test="$doctype = 'amendment' and normalize-space($title-amd) != ''">
|
681
|
+
<fo:block margin-right="-5mm" margin-top="12pt">
|
682
|
+
<xsl:call-template name="printAmendmentTitle"/>
|
683
|
+
</fo:block>
|
684
|
+
</xsl:if>
|
640
685
|
</fo:block>
|
641
686
|
|
642
687
|
<fo:block font-size="9pt"><xsl:value-of select="$linebreak"/></fo:block>
|
@@ -651,6 +696,15 @@
|
|
651
696
|
|
652
697
|
<xsl:call-template name="printTitlePartFr"/>
|
653
698
|
|
699
|
+
<xsl:variable name="title-amd" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'fr' and @type = 'title-amd']"/>
|
700
|
+
<xsl:if test="$doctype = 'amendment' and normalize-space($title-amd) != ''">
|
701
|
+
<fo:block margin-right="-5mm" margin-top="6pt">
|
702
|
+
<xsl:call-template name="printAmendmentTitle">
|
703
|
+
<xsl:with-param name="lang" select="'fr'"/>
|
704
|
+
</xsl:call-template>
|
705
|
+
</fo:block>
|
706
|
+
</xsl:if>
|
707
|
+
|
654
708
|
</fo:block>
|
655
709
|
</fo:block>
|
656
710
|
</fo:block-container>
|
@@ -714,7 +768,7 @@
|
|
714
768
|
</fo:table-cell>
|
715
769
|
<fo:table-cell>
|
716
770
|
<fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
|
717
|
-
<xsl:value-of select="
|
771
|
+
<xsl:value-of select="$docidentifierISO"/>
|
718
772
|
</fo:block>
|
719
773
|
</fo:table-cell>
|
720
774
|
</fo:table-row>
|
@@ -891,7 +945,7 @@
|
|
891
945
|
</fo:block-container>
|
892
946
|
<fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
|
893
947
|
<fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
|
894
|
-
<xsl:variable name="stage-title" select="substring-after(substring-before(
|
948
|
+
<xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
|
895
949
|
<fo:block padding-top="2mm"><xsl:value-of select="$stage-title"/><xsl:text> stage</xsl:text></fo:block>
|
896
950
|
</fo:block-container>
|
897
951
|
<fo:block><xsl:value-of select="$linebreak"/></fo:block>
|
@@ -964,7 +1018,7 @@
|
|
964
1018
|
</xsl:if>
|
965
1019
|
|
966
1020
|
<xsl:variable name="margin-left">12</xsl:variable>
|
967
|
-
<xsl:for-each select="xalan:nodeset($contents)//item
|
1021
|
+
<xsl:for-each select="xalan:nodeset($contents)//item[@display = 'true']"><!-- [not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
|
968
1022
|
|
969
1023
|
<fo:block>
|
970
1024
|
<xsl:if test="@level = 1">
|
@@ -994,9 +1048,9 @@
|
|
994
1048
|
</fo:list-item-label>
|
995
1049
|
<fo:list-item-body start-indent="body-start()">
|
996
1050
|
<fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
|
997
|
-
<fo:basic-link internal-destination="{@id}" fox:alt-text="{
|
1051
|
+
<fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
|
998
1052
|
|
999
|
-
<xsl:apply-templates/>
|
1053
|
+
<xsl:apply-templates select="title"/>
|
1000
1054
|
|
1001
1055
|
<fo:inline keep-together.within-line="always">
|
1002
1056
|
<fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
|
@@ -1065,19 +1119,8 @@
|
|
1065
1119
|
|
1066
1120
|
<xsl:variable name="title-amd" select="/iso:iso-standard/iso:bibdata/iso:title[@language = 'en' and @type = 'title-amd']"/>
|
1067
1121
|
<xsl:if test="$doctype = 'amendment' and normalize-space($title-amd) != ''">
|
1068
|
-
<fo:block
|
1069
|
-
<xsl:
|
1070
|
-
<xsl:call-template name="getTitle">
|
1071
|
-
<xsl:with-param name="name" select="'title-amendment'"/>
|
1072
|
-
</xsl:call-template>
|
1073
|
-
</xsl:variable>
|
1074
|
-
<xsl:value-of select="$title-amendment"/>
|
1075
|
-
<xsl:variable name="amendment-number" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@amendment"/>
|
1076
|
-
<xsl:if test="normalize-space($amendment-number) != ''">
|
1077
|
-
<xsl:text> </xsl:text><xsl:value-of select="$amendment-number"/>
|
1078
|
-
</xsl:if>
|
1079
|
-
<xsl:text>: </xsl:text>
|
1080
|
-
<xsl:value-of select="$title-amd"/>
|
1122
|
+
<fo:block margin-top="12pt">
|
1123
|
+
<xsl:call-template name="printAmendmentTitle"/>
|
1081
1124
|
</fo:block>
|
1082
1125
|
</xsl:if>
|
1083
1126
|
|
@@ -1172,6 +1215,27 @@
|
|
1172
1215
|
<xsl:apply-templates/>
|
1173
1216
|
</xsl:template>
|
1174
1217
|
|
1218
|
+
<xsl:template name="printAmendmentTitle">
|
1219
|
+
<xsl:param name="lang" select="'en'"/>
|
1220
|
+
<xsl:variable name="title-amd" select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-amd']"/>
|
1221
|
+
<xsl:if test="$doctype = 'amendment' and normalize-space($title-amd) != ''">
|
1222
|
+
<fo:block font-weight="normal" line-height="1.1">
|
1223
|
+
<xsl:variable name="title-amendment">
|
1224
|
+
<xsl:call-template name="getTitle">
|
1225
|
+
<xsl:with-param name="name" select="'title-amendment'"/>
|
1226
|
+
</xsl:call-template>
|
1227
|
+
</xsl:variable>
|
1228
|
+
<xsl:value-of select="$title-amendment"/>
|
1229
|
+
<xsl:variable name="amendment-number" select="/iso:iso-standard/iso:bibdata/iso:ext/iso:structuredidentifier/iso:project-number/@amendment"/>
|
1230
|
+
<xsl:if test="normalize-space($amendment-number) != ''">
|
1231
|
+
<xsl:text> </xsl:text><xsl:value-of select="$amendment-number"/>
|
1232
|
+
</xsl:if>
|
1233
|
+
<xsl:text>: </xsl:text>
|
1234
|
+
<xsl:value-of select="$title-amd"/>
|
1235
|
+
</fo:block>
|
1236
|
+
</xsl:if>
|
1237
|
+
</xsl:template>
|
1238
|
+
|
1175
1239
|
<!-- ============================= -->
|
1176
1240
|
<!-- CONTENTS -->
|
1177
1241
|
<!-- ============================= -->
|
@@ -1196,9 +1260,7 @@
|
|
1196
1260
|
</xsl:variable>
|
1197
1261
|
|
1198
1262
|
<xsl:variable name="display">
|
1199
|
-
<xsl:choose>
|
1200
|
-
<xsl:when test="ancestor-or-self::iso:bibitem">false</xsl:when>
|
1201
|
-
<xsl:when test="ancestor-or-self::iso:term">false</xsl:when>
|
1263
|
+
<xsl:choose>
|
1202
1264
|
<xsl:when test="ancestor-or-self::iso:annex and $level >= 2">false</xsl:when>
|
1203
1265
|
<xsl:when test="$section = '' and $type = 'clause'">false</xsl:when>
|
1204
1266
|
<xsl:when test="$level <= 3">true</xsl:when>
|
@@ -1206,8 +1268,16 @@
|
|
1206
1268
|
</xsl:choose>
|
1207
1269
|
</xsl:variable>
|
1208
1270
|
|
1271
|
+
<xsl:variable name="skip">
|
1272
|
+
<xsl:choose>
|
1273
|
+
<xsl:when test="ancestor-or-self::iso:bibitem">true</xsl:when>
|
1274
|
+
<xsl:when test="ancestor-or-self::iso:term">true</xsl:when>
|
1275
|
+
<xsl:otherwise>false</xsl:otherwise>
|
1276
|
+
</xsl:choose>
|
1277
|
+
</xsl:variable>
|
1278
|
+
|
1209
1279
|
|
1210
|
-
<xsl:if test="$
|
1280
|
+
<xsl:if test="$skip = 'false'">
|
1211
1281
|
|
1212
1282
|
<xsl:variable name="title">
|
1213
1283
|
<xsl:call-template name="getName"/>
|
@@ -1218,12 +1288,13 @@
|
|
1218
1288
|
<xsl:if test="ancestor-or-self::iso:annex">annex</xsl:if>
|
1219
1289
|
</xsl:variable>
|
1220
1290
|
|
1221
|
-
<item id="{@id}" level="{$level}" section="{$section}" type="{$type}" root="{$root}">
|
1222
|
-
<
|
1291
|
+
<item id="{@id}" level="{$level}" section="{$section}" type="{$type}" root="{$root}" display="{$display}">
|
1292
|
+
<title>
|
1293
|
+
<xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
|
1294
|
+
</title>
|
1295
|
+
<xsl:apply-templates mode="contents"/>
|
1223
1296
|
</item>
|
1224
|
-
|
1225
|
-
</xsl:if>
|
1226
|
-
|
1297
|
+
</xsl:if>
|
1227
1298
|
</xsl:template>
|
1228
1299
|
|
1229
1300
|
|
@@ -1446,7 +1517,7 @@
|
|
1446
1517
|
</xsl:element>
|
1447
1518
|
<xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(local-name(..) = 'admonition')">
|
1448
1519
|
<fo:block margin-bottom="12pt">
|
1449
|
-
<xsl:if test="ancestor::iso:annex">
|
1520
|
+
<xsl:if test="ancestor::iso:annex or following-sibling::iso:table">
|
1450
1521
|
<xsl:attribute name="margin-bottom">0</xsl:attribute>
|
1451
1522
|
</xsl:if>
|
1452
1523
|
<xsl:value-of select="$linebreak"/>
|
@@ -1579,7 +1650,7 @@
|
|
1579
1650
|
|
1580
1651
|
|
1581
1652
|
|
1582
|
-
<xsl:template match="iso:ul | iso:ol">
|
1653
|
+
<xsl:template match="iso:ul | iso:ol" mode="ul_ol">
|
1583
1654
|
<fo:list-block provisional-distance-between-starts="7mm" margin-top="8pt"> <!-- margin-bottom="8pt" -->
|
1584
1655
|
<xsl:apply-templates/>
|
1585
1656
|
</fo:list-block>
|
@@ -1606,7 +1677,9 @@
|
|
1606
1677
|
</fo:list-item>
|
1607
1678
|
</xsl:template>
|
1608
1679
|
|
1609
|
-
|
1680
|
+
<xsl:template match="iso:note" mode="process">
|
1681
|
+
<xsl:call-template name="note"/>
|
1682
|
+
</xsl:template>
|
1610
1683
|
|
1611
1684
|
<xsl:template match="iso:preferred">
|
1612
1685
|
<fo:block line-height="1.1">
|
@@ -1688,8 +1761,12 @@
|
|
1688
1761
|
|
1689
1762
|
<xsl:template match="mathml:math" priority="2">
|
1690
1763
|
<fo:inline font-family="Cambria Math">
|
1764
|
+
<xsl:variable name="mathml">
|
1765
|
+
<xsl:apply-templates select="." mode="mathml"/>
|
1766
|
+
</xsl:variable>
|
1691
1767
|
<fo:instream-foreign-object fox:alt-text="Math">
|
1692
|
-
<xsl:copy-of select="."/>
|
1768
|
+
<!-- <xsl:copy-of select="."/> -->
|
1769
|
+
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
1693
1770
|
</fo:instream-foreign-object>
|
1694
1771
|
</fo:inline>
|
1695
1772
|
</xsl:template>
|
@@ -1979,6 +2056,12 @@
|
|
1979
2056
|
|
1980
2057
|
</title-edition>
|
1981
2058
|
|
2059
|
+
<title-edition lang="fr">
|
2060
|
+
|
2061
|
+
<xsl:text>Édition </xsl:text>
|
2062
|
+
|
2063
|
+
</title-edition>
|
2064
|
+
|
1982
2065
|
|
1983
2066
|
<title-toc lang="en">
|
1984
2067
|
|
@@ -2025,7 +2108,12 @@
|
|
2025
2108
|
|
2026
2109
|
|
2027
2110
|
|
2028
|
-
<title-source lang="en">
|
2111
|
+
<title-source lang="en">
|
2112
|
+
|
2113
|
+
<xsl:text>SOURCE</xsl:text>
|
2114
|
+
|
2115
|
+
|
2116
|
+
</title-source>
|
2029
2117
|
|
2030
2118
|
<title-keywords lang="en">Keywords</title-keywords>
|
2031
2119
|
|
@@ -2068,6 +2156,10 @@
|
|
2068
2156
|
<title-warning lang="zh">警告</title-warning>
|
2069
2157
|
|
2070
2158
|
<title-amendment lang="en">AMENDMENT</title-amendment>
|
2159
|
+
|
2160
|
+
<title-continued lang="en">(continued)</title-continued>
|
2161
|
+
<title-continued lang="fr">(continué)</title-continued>
|
2162
|
+
|
2071
2163
|
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
2072
2164
|
<xsl:param name="name"/>
|
2073
2165
|
<xsl:variable name="lang">
|
@@ -2082,18 +2174,20 @@
|
|
2082
2174
|
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
2083
2175
|
</xsl:otherwise>
|
2084
2176
|
</xsl:choose>
|
2085
|
-
</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="
|
2177
|
+
</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="root-style">
|
2178
|
+
|
2179
|
+
</xsl:attribute-set><xsl:attribute-set name="link-style">
|
2086
2180
|
|
2087
2181
|
<xsl:attribute name="color">blue</xsl:attribute>
|
2088
2182
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
2089
2183
|
|
2090
2184
|
|
2185
|
+
|
2091
2186
|
</xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
|
2092
2187
|
<xsl:attribute name="white-space">pre</xsl:attribute>
|
2093
2188
|
<xsl:attribute name="wrap-option">wrap</xsl:attribute>
|
2094
2189
|
|
2095
|
-
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
2096
|
-
<xsl:attribute name="font-size">9pt</xsl:attribute>
|
2190
|
+
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
2097
2191
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
2098
2192
|
|
2099
2193
|
|
@@ -2103,6 +2197,7 @@
|
|
2103
2197
|
|
2104
2198
|
|
2105
2199
|
|
2200
|
+
|
2106
2201
|
</xsl:attribute-set><xsl:attribute-set name="permission-style">
|
2107
2202
|
|
2108
2203
|
</xsl:attribute-set><xsl:attribute-set name="permission-name-style">
|
@@ -2153,6 +2248,7 @@
|
|
2153
2248
|
|
2154
2249
|
|
2155
2250
|
|
2251
|
+
|
2156
2252
|
</xsl:attribute-set><xsl:attribute-set name="example-body-style">
|
2157
2253
|
|
2158
2254
|
|
@@ -2173,6 +2269,7 @@
|
|
2173
2269
|
|
2174
2270
|
|
2175
2271
|
|
2272
|
+
|
2176
2273
|
|
2177
2274
|
|
2178
2275
|
|
@@ -2209,9 +2306,10 @@
|
|
2209
2306
|
|
2210
2307
|
|
2211
2308
|
|
2309
|
+
<xsl:attribute name="font-size">11pt</xsl:attribute>
|
2212
2310
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2213
2311
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
2214
|
-
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
2312
|
+
<!-- <xsl:attribute name="margin-top">12pt</xsl:attribute> -->
|
2215
2313
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2216
2314
|
|
2217
2315
|
|
@@ -2242,11 +2340,13 @@
|
|
2242
2340
|
|
2243
2341
|
<xsl:attribute name="color">blue</xsl:attribute>
|
2244
2342
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
2245
|
-
|
2343
|
+
|
2344
|
+
|
2246
2345
|
</xsl:attribute-set><xsl:attribute-set name="eref-style">
|
2247
2346
|
|
2248
2347
|
|
2249
2348
|
|
2349
|
+
|
2250
2350
|
</xsl:attribute-set><xsl:attribute-set name="note-style">
|
2251
2351
|
|
2252
2352
|
|
@@ -2266,20 +2366,20 @@
|
|
2266
2366
|
|
2267
2367
|
|
2268
2368
|
|
2369
|
+
</xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
|
2269
2370
|
|
2270
2371
|
|
2271
|
-
</xsl:attribute-set><xsl:attribute-set name="note-name-style">
|
2272
2372
|
|
2273
2373
|
|
2274
2374
|
|
2275
2375
|
|
2376
|
+
<xsl:attribute name="padding-right">6mm</xsl:attribute>
|
2377
|
+
|
2276
2378
|
|
2277
2379
|
|
2278
|
-
<xsl:attribute name="padding-right">6mm</xsl:attribute>
|
2279
2380
|
|
2280
2381
|
|
2281
2382
|
|
2282
|
-
|
2283
2383
|
|
2284
2384
|
</xsl:attribute-set><xsl:attribute-set name="note-p-style">
|
2285
2385
|
|
@@ -2309,6 +2409,8 @@
|
|
2309
2409
|
|
2310
2410
|
|
2311
2411
|
|
2412
|
+
</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
|
2413
|
+
|
2312
2414
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
2313
2415
|
|
2314
2416
|
|
@@ -2337,6 +2439,7 @@
|
|
2337
2439
|
</xsl:attribute-set><xsl:attribute-set name="origin-style">
|
2338
2440
|
|
2339
2441
|
|
2442
|
+
|
2340
2443
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
2341
2444
|
|
2342
2445
|
<xsl:attribute name="margin-bottom">10pt</xsl:attribute>
|
@@ -2345,6 +2448,7 @@
|
|
2345
2448
|
|
2346
2449
|
|
2347
2450
|
|
2451
|
+
|
2348
2452
|
|
2349
2453
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2350
2454
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
@@ -2388,14 +2492,16 @@
|
|
2388
2492
|
</xsl:attribute-set><xsl:attribute-set name="tt-style">
|
2389
2493
|
|
2390
2494
|
|
2391
|
-
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
2392
|
-
|
2495
|
+
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
2496
|
+
|
2393
2497
|
|
2394
2498
|
</xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
|
2395
2499
|
<xsl:attribute name="font-size">11pt</xsl:attribute>
|
2396
2500
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2397
2501
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
2398
2502
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
2503
|
+
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
2504
|
+
|
2399
2505
|
</xsl:attribute-set><xsl:attribute-set name="domain-style">
|
2400
2506
|
|
2401
2507
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
@@ -2461,12 +2567,10 @@
|
|
2461
2567
|
|
2462
2568
|
|
2463
2569
|
|
2464
|
-
|
2570
|
+
<!-- $namespace = 'iso' or -->
|
2465
2571
|
|
2466
2572
|
|
2467
2573
|
|
2468
|
-
<xsl:call-template name="fn_name_display"/>
|
2469
|
-
|
2470
2574
|
|
2471
2575
|
|
2472
2576
|
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
|
@@ -2520,8 +2624,9 @@
|
|
2520
2624
|
|
2521
2625
|
|
2522
2626
|
|
2627
|
+
|
2523
2628
|
|
2524
|
-
|
2629
|
+
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
2525
2630
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2526
2631
|
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
2527
2632
|
<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
|
@@ -2551,6 +2656,8 @@
|
|
2551
2656
|
|
2552
2657
|
|
2553
2658
|
|
2659
|
+
|
2660
|
+
|
2554
2661
|
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
2555
2662
|
<xsl:choose>
|
2556
2663
|
<xsl:when test=". = 1 or . = 0">
|
@@ -2581,8 +2688,11 @@
|
|
2581
2688
|
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
|
2582
2689
|
<xsl:if test="normalize-space() != ''">
|
2583
2690
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
2584
|
-
|
2585
|
-
|
2691
|
+
|
2692
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
2693
|
+
|
2694
|
+
<xsl:apply-templates/>
|
2695
|
+
</fo:block>
|
2586
2696
|
</xsl:if>
|
2587
2697
|
</xsl:template><xsl:template name="calculate-columns-numbers">
|
2588
2698
|
<xsl:param name="table-row"/>
|
@@ -2698,28 +2808,29 @@
|
|
2698
2808
|
</xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
|
2699
2809
|
<xsl:param name="cols-count"/>
|
2700
2810
|
<!-- font-weight="bold" -->
|
2701
|
-
<fo:table-header>
|
2702
|
-
|
2703
|
-
<fo:table-row>
|
2704
|
-
<fo:table-cell number-columns-spanned="{$cols-count}"> <!-- border-left="1pt solid white" border-right="1pt solid white" border-top="1pt solid white" -->
|
2705
|
-
<fo:block text-align="center" font-size="11pt" font-weight="bold">
|
2706
|
-
<!-- (continued) -->
|
2707
|
-
<fo:block-container position="absolute" top="-7mm">
|
2708
|
-
<fo:block>
|
2709
|
-
<fo:retrieve-table-marker retrieve-class-name="table_continued" retrieve-position-within-table="first-starting" retrieve-boundary-within-table="table-fragment"/>
|
2710
|
-
</fo:block>
|
2711
|
-
</fo:block-container>
|
2811
|
+
<fo:table-header>
|
2712
2812
|
|
2713
|
-
|
2714
|
-
|
2715
|
-
|
2716
|
-
</fo:block> -->
|
2813
|
+
<xsl:call-template name="table-header-title">
|
2814
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
2815
|
+
</xsl:call-template>
|
2717
2816
|
|
2718
|
-
</fo:table-cell>
|
2719
|
-
</fo:table-row>
|
2720
|
-
|
2721
2817
|
<xsl:apply-templates/>
|
2722
2818
|
</fo:table-header>
|
2819
|
+
</xsl:template><xsl:template name="table-header-title">
|
2820
|
+
<xsl:param name="cols-count"/>
|
2821
|
+
<!-- row for title -->
|
2822
|
+
<fo:table-row>
|
2823
|
+
<fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black">
|
2824
|
+
<xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation"/>
|
2825
|
+
<xsl:for-each select="ancestor::*[local-name()='table'][1]">
|
2826
|
+
<xsl:call-template name="fn_name_display"/>
|
2827
|
+
</xsl:for-each>
|
2828
|
+
<fo:block text-align="right" font-style="italic">
|
2829
|
+
<xsl:text> </xsl:text>
|
2830
|
+
<fo:retrieve-table-marker retrieve-class-name="table_continued"/>
|
2831
|
+
</fo:block>
|
2832
|
+
</fo:table-cell>
|
2833
|
+
</fo:table-row>
|
2723
2834
|
</xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
|
2724
2835
|
<fo:table-body>
|
2725
2836
|
<xsl:apply-templates/>
|
@@ -2785,6 +2896,17 @@
|
|
2785
2896
|
</xsl:choose>
|
2786
2897
|
</xsl:variable>
|
2787
2898
|
|
2899
|
+
|
2900
|
+
<!-- if there isn't 'thead' and there is a table's title -->
|
2901
|
+
<xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='thead']) and ancestor::*[local-name()='table']/*[local-name()='name']">
|
2902
|
+
<fo:table-header>
|
2903
|
+
<xsl:call-template name="table-header-title">
|
2904
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
2905
|
+
</xsl:call-template>
|
2906
|
+
</fo:table-header>
|
2907
|
+
</xsl:if>
|
2908
|
+
|
2909
|
+
|
2788
2910
|
<xsl:apply-templates select="../*[local-name()='thead']" mode="process">
|
2789
2911
|
<xsl:with-param name="cols-count" select="$cols-count"/>
|
2790
2912
|
</xsl:apply-templates>
|
@@ -2794,6 +2916,30 @@
|
|
2794
2916
|
</xsl:call-template>
|
2795
2917
|
|
2796
2918
|
<fo:table-body>
|
2919
|
+
|
2920
|
+
<xsl:variable name="title_continued">
|
2921
|
+
<xsl:call-template name="getTitle">
|
2922
|
+
<xsl:with-param name="name" select="'title-continued'"/>
|
2923
|
+
</xsl:call-template>
|
2924
|
+
</xsl:variable>
|
2925
|
+
<fo:table-row height="0" keep-with-next.within-page="always">
|
2926
|
+
<fo:table-cell>
|
2927
|
+
<fo:marker marker-class-name="table_continued"/>
|
2928
|
+
<fo:block/>
|
2929
|
+
</fo:table-cell>
|
2930
|
+
</fo:table-row>
|
2931
|
+
<fo:table-row height="0" keep-with-next.within-page="always">
|
2932
|
+
<fo:table-cell>
|
2933
|
+
<fo:marker marker-class-name="table_continued">
|
2934
|
+
<!-- <fo:inline font-style="italic" font-weight="normal"> -->
|
2935
|
+
<xsl:value-of select="$title_continued"/>
|
2936
|
+
<!-- </fo:inline> -->
|
2937
|
+
</fo:marker>
|
2938
|
+
<fo:block/>
|
2939
|
+
</fo:table-cell>
|
2940
|
+
</fo:table-row>
|
2941
|
+
|
2942
|
+
|
2797
2943
|
<xsl:apply-templates/>
|
2798
2944
|
<!-- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/> -->
|
2799
2945
|
|
@@ -2835,6 +2981,8 @@
|
|
2835
2981
|
|
2836
2982
|
</xsl:if>
|
2837
2983
|
|
2984
|
+
|
2985
|
+
|
2838
2986
|
|
2839
2987
|
<xsl:apply-templates/>
|
2840
2988
|
</fo:table-row>
|
@@ -2859,6 +3007,7 @@
|
|
2859
3007
|
|
2860
3008
|
|
2861
3009
|
|
3010
|
+
|
2862
3011
|
<xsl:if test="@colspan">
|
2863
3012
|
<xsl:attribute name="number-columns-spanned">
|
2864
3013
|
<xsl:value-of select="@colspan"/>
|
@@ -2869,10 +3018,22 @@
|
|
2869
3018
|
<xsl:value-of select="@rowspan"/>
|
2870
3019
|
</xsl:attribute>
|
2871
3020
|
</xsl:if>
|
3021
|
+
<xsl:call-template name="display-align"/>
|
2872
3022
|
<fo:block>
|
2873
3023
|
<xsl:apply-templates/>
|
2874
3024
|
</fo:block>
|
2875
3025
|
</fo:table-cell>
|
3026
|
+
</xsl:template><xsl:template name="display-align">
|
3027
|
+
<xsl:if test="@valign">
|
3028
|
+
<xsl:attribute name="display-align">
|
3029
|
+
<xsl:choose>
|
3030
|
+
<xsl:when test="@valign = 'top'">before</xsl:when>
|
3031
|
+
<xsl:when test="@valign = 'middle'">center</xsl:when>
|
3032
|
+
<xsl:when test="@valign = 'bottom'">after</xsl:when>
|
3033
|
+
<xsl:otherwise>before</xsl:otherwise>
|
3034
|
+
</xsl:choose>
|
3035
|
+
</xsl:attribute>
|
3036
|
+
</xsl:if>
|
2876
3037
|
</xsl:template><xsl:template match="*[local-name()='td']">
|
2877
3038
|
<fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
|
2878
3039
|
<xsl:attribute name="text-align">
|
@@ -2898,6 +3059,7 @@
|
|
2898
3059
|
|
2899
3060
|
|
2900
3061
|
|
3062
|
+
|
2901
3063
|
<xsl:if test="@colspan">
|
2902
3064
|
<xsl:attribute name="number-columns-spanned">
|
2903
3065
|
<xsl:value-of select="@colspan"/>
|
@@ -2908,20 +3070,8 @@
|
|
2908
3070
|
<xsl:value-of select="@rowspan"/>
|
2909
3071
|
</xsl:attribute>
|
2910
3072
|
</xsl:if>
|
2911
|
-
<
|
2912
|
-
|
2913
|
-
<xsl:variable name="row_number">
|
2914
|
-
<xsl:number format="1" count="*[local-name() = 'tr'] | *[local-name() = 'th']"/>
|
2915
|
-
</xsl:variable>
|
2916
|
-
<fo:marker marker-class-name="table_continued">
|
2917
|
-
<xsl:if test="$row_number > 1">
|
2918
|
-
<fo:inline>
|
2919
|
-
<xsl:apply-templates select="ancestor::*[local-name() = 'table']/*[local-name() = 'name']" mode="contents"/>
|
2920
|
-
<fo:inline font-style="italic" font-weight="normal">(continued)</fo:inline>
|
2921
|
-
</fo:inline>
|
2922
|
-
</xsl:if>
|
2923
|
-
</fo:marker>
|
2924
|
-
|
3073
|
+
<xsl:call-template name="display-align"/>
|
3074
|
+
<fo:block>
|
2925
3075
|
<xsl:apply-templates/>
|
2926
3076
|
</fo:block>
|
2927
3077
|
</fo:table-cell>
|
@@ -3110,6 +3260,7 @@
|
|
3110
3260
|
|
3111
3261
|
|
3112
3262
|
|
3263
|
+
|
3113
3264
|
<fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
|
3114
3265
|
|
3115
3266
|
<xsl:value-of select="@reference"/>
|
@@ -3120,129 +3271,143 @@
|
|
3120
3271
|
<xsl:apply-templates/>
|
3121
3272
|
</fo:inline>
|
3122
3273
|
</xsl:template><xsl:template match="*[local-name()='dl']">
|
3123
|
-
<
|
3124
|
-
|
3125
|
-
|
3126
|
-
|
3127
|
-
|
3128
|
-
|
3129
|
-
|
3130
|
-
|
3131
|
-
<xsl:choose>
|
3132
|
-
<xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
|
3133
|
-
|
3274
|
+
<fo:block-container margin-left="0mm">
|
3275
|
+
<xsl:if test="parent::*[local-name() = 'note']">
|
3276
|
+
<xsl:attribute name="margin-left">
|
3277
|
+
<xsl:choose>
|
3278
|
+
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
3279
|
+
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
3280
|
+
</xsl:choose>
|
3281
|
+
</xsl:attribute>
|
3134
3282
|
|
3135
|
-
|
3136
|
-
|
3137
|
-
|
3138
|
-
|
3139
|
-
<xsl:variable name="title-where">
|
3140
|
-
<xsl:call-template name="getTitle">
|
3141
|
-
<xsl:with-param name="name" select="'title-where'"/>
|
3142
|
-
</xsl:call-template>
|
3143
|
-
</xsl:variable>
|
3144
|
-
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
3145
|
-
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
3146
|
-
<xsl:text/>
|
3147
|
-
<xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
|
3148
|
-
</fo:block>
|
3283
|
+
</xsl:if>
|
3284
|
+
<fo:block-container margin-left="0mm">
|
3285
|
+
|
3286
|
+
<xsl:variable name="parent" select="local-name(..)"/>
|
3149
3287
|
|
3150
|
-
|
3151
|
-
<xsl:when test="$parent = 'formula'"> <!-- a few components -->
|
3152
|
-
<fo:block margin-bottom="12pt" text-align="left">
|
3153
|
-
|
3154
|
-
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
3288
|
+
<xsl:variable name="key_iso">
|
3155
3289
|
|
3156
|
-
|
3157
|
-
|
3158
|
-
|
3159
|
-
<xsl:variable name="title-where">
|
3160
|
-
<xsl:call-template name="getTitle">
|
3161
|
-
<xsl:with-param name="name" select="'title-where'"/>
|
3162
|
-
</xsl:call-template>
|
3163
|
-
</xsl:variable>
|
3164
|
-
<xsl:value-of select="$title-where"/>
|
3165
|
-
</fo:block>
|
3166
|
-
</xsl:when>
|
3167
|
-
<xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
|
3168
|
-
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
|
3169
|
-
|
3170
|
-
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
3171
|
-
<xsl:attribute name="margin-bottom">0</xsl:attribute>
|
3172
|
-
|
3173
|
-
|
3174
|
-
|
3175
|
-
<xsl:variable name="title-key">
|
3176
|
-
<xsl:call-template name="getTitle">
|
3177
|
-
<xsl:with-param name="name" select="'title-key'"/>
|
3178
|
-
</xsl:call-template>
|
3179
|
-
</xsl:variable>
|
3180
|
-
<xsl:value-of select="$title-key"/>
|
3181
|
-
</fo:block>
|
3182
|
-
</xsl:when>
|
3183
|
-
</xsl:choose>
|
3184
|
-
|
3185
|
-
<!-- a few components -->
|
3186
|
-
<xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
|
3187
|
-
<fo:block>
|
3188
|
-
|
3189
|
-
<xsl:if test="$parent = 'formula'">
|
3190
|
-
<xsl:attribute name="margin-left">4mm</xsl:attribute>
|
3191
|
-
</xsl:if>
|
3192
|
-
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
3193
|
-
|
3194
|
-
|
3195
|
-
|
3290
|
+
<xsl:if test="$parent = 'figure' or $parent = 'formula'">true</xsl:if>
|
3291
|
+
<!-- and (not(../@class) or ../@class !='pseudocode') -->
|
3292
|
+
</xsl:variable>
|
3196
3293
|
|
3197
|
-
<
|
3198
|
-
|
3199
|
-
|
3200
|
-
|
3201
|
-
|
3202
|
-
<fo:table width="95%" table-layout="fixed">
|
3294
|
+
<xsl:choose>
|
3295
|
+
<xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
|
3203
3296
|
|
3204
|
-
|
3205
|
-
<
|
3206
|
-
|
3207
|
-
|
3208
|
-
|
3297
|
+
|
3298
|
+
<fo:block margin-bottom="12pt" text-align="left">
|
3299
|
+
|
3300
|
+
<xsl:attribute name="margin-bottom">0</xsl:attribute>
|
3301
|
+
|
3302
|
+
<xsl:variable name="title-where">
|
3303
|
+
<xsl:call-template name="getTitle">
|
3304
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
3305
|
+
</xsl:call-template>
|
3306
|
+
</xsl:variable>
|
3307
|
+
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
3308
|
+
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
3309
|
+
<xsl:text/>
|
3310
|
+
<xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
|
3311
|
+
</fo:block>
|
3312
|
+
|
3313
|
+
</xsl:when>
|
3314
|
+
<xsl:when test="$parent = 'formula'"> <!-- a few components -->
|
3315
|
+
<fo:block margin-bottom="12pt" text-align="left">
|
3316
|
+
|
3317
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
3318
|
+
|
3319
|
+
|
3320
|
+
|
3321
|
+
|
3322
|
+
<xsl:variable name="title-where">
|
3323
|
+
<xsl:call-template name="getTitle">
|
3324
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
3325
|
+
</xsl:call-template>
|
3326
|
+
</xsl:variable>
|
3327
|
+
<xsl:value-of select="$title-where"/>
|
3328
|
+
</fo:block>
|
3329
|
+
</xsl:when>
|
3330
|
+
<xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
|
3331
|
+
<fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
|
3332
|
+
|
3209
3333
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
3334
|
+
<xsl:attribute name="margin-bottom">0</xsl:attribute>
|
3335
|
+
|
3336
|
+
|
3337
|
+
|
3338
|
+
<xsl:variable name="title-key">
|
3339
|
+
<xsl:call-template name="getTitle">
|
3340
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
3341
|
+
</xsl:call-template>
|
3342
|
+
</xsl:variable>
|
3343
|
+
<xsl:value-of select="$title-key"/>
|
3344
|
+
</fo:block>
|
3345
|
+
</xsl:when>
|
3346
|
+
</xsl:choose>
|
3347
|
+
|
3348
|
+
<!-- a few components -->
|
3349
|
+
<xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
|
3350
|
+
<fo:block>
|
3351
|
+
|
3352
|
+
<xsl:if test="$parent = 'formula'">
|
3353
|
+
<xsl:attribute name="margin-left">4mm</xsl:attribute>
|
3354
|
+
</xsl:if>
|
3355
|
+
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
3356
|
+
|
3357
|
+
|
3358
|
+
|
3359
|
+
|
3360
|
+
<fo:block>
|
3361
|
+
|
3362
|
+
|
3363
|
+
|
3364
|
+
|
3365
|
+
<fo:table width="95%" table-layout="fixed">
|
3210
3366
|
|
3211
|
-
|
3212
|
-
|
3213
|
-
|
3214
|
-
|
3215
|
-
|
3216
|
-
|
3217
|
-
|
3218
|
-
|
3219
|
-
</
|
3220
|
-
|
3221
|
-
|
3222
|
-
|
3223
|
-
|
3224
|
-
|
3225
|
-
|
3226
|
-
|
3227
|
-
|
3228
|
-
|
3229
|
-
|
3230
|
-
|
3231
|
-
|
3232
|
-
|
3233
|
-
|
3234
|
-
|
3235
|
-
|
3236
|
-
|
3237
|
-
|
3238
|
-
|
3239
|
-
|
3240
|
-
|
3241
|
-
|
3242
|
-
|
3243
|
-
|
3244
|
-
|
3245
|
-
|
3367
|
+
<xsl:choose>
|
3368
|
+
<xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
|
3369
|
+
<!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
|
3370
|
+
</xsl:when>
|
3371
|
+
<xsl:when test="normalize-space($key_iso) = 'true'">
|
3372
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
3373
|
+
|
3374
|
+
</xsl:when>
|
3375
|
+
</xsl:choose>
|
3376
|
+
<!-- create virtual html table for dl/[dt and dd] -->
|
3377
|
+
<xsl:variable name="html-table">
|
3378
|
+
<xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
|
3379
|
+
<xsl:element name="{$ns}:table">
|
3380
|
+
<tbody>
|
3381
|
+
<xsl:apply-templates mode="dl"/>
|
3382
|
+
</tbody>
|
3383
|
+
</xsl:element>
|
3384
|
+
</xsl:variable>
|
3385
|
+
<!-- html-table<xsl:copy-of select="$html-table"/> -->
|
3386
|
+
<xsl:variable name="colwidths">
|
3387
|
+
<xsl:call-template name="calculate-column-widths">
|
3388
|
+
<xsl:with-param name="cols-count" select="2"/>
|
3389
|
+
<xsl:with-param name="table" select="$html-table"/>
|
3390
|
+
</xsl:call-template>
|
3391
|
+
</xsl:variable>
|
3392
|
+
<!-- colwidths=<xsl:value-of select="$colwidths"/> -->
|
3393
|
+
<xsl:variable name="maxlength_dt">
|
3394
|
+
<xsl:call-template name="getMaxLength_dt"/>
|
3395
|
+
</xsl:variable>
|
3396
|
+
<xsl:call-template name="setColumnWidth_dl">
|
3397
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
3398
|
+
<xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
|
3399
|
+
</xsl:call-template>
|
3400
|
+
<fo:table-body>
|
3401
|
+
<xsl:apply-templates>
|
3402
|
+
<xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
|
3403
|
+
</xsl:apply-templates>
|
3404
|
+
</fo:table-body>
|
3405
|
+
</fo:table>
|
3406
|
+
</fo:block>
|
3407
|
+
</fo:block>
|
3408
|
+
</xsl:if>
|
3409
|
+
</fo:block-container>
|
3410
|
+
</fo:block-container>
|
3246
3411
|
</xsl:template><xsl:template name="setColumnWidth_dl">
|
3247
3412
|
<xsl:param name="colwidths"/>
|
3248
3413
|
<xsl:param name="maxlength_dt"/>
|
@@ -3339,6 +3504,7 @@
|
|
3339
3504
|
<xsl:param name="key_iso"/>
|
3340
3505
|
|
3341
3506
|
<fo:table-row>
|
3507
|
+
|
3342
3508
|
<fo:table-cell>
|
3343
3509
|
|
3344
3510
|
<fo:block margin-top="6pt">
|
@@ -3366,14 +3532,36 @@
|
|
3366
3532
|
<fo:table-cell>
|
3367
3533
|
<fo:block>
|
3368
3534
|
|
3369
|
-
|
3535
|
+
<!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
|
3536
|
+
<xsl:if test="local-name(*[1]) != 'stem'">
|
3537
|
+
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
|
3538
|
+
</xsl:if>
|
3539
|
+
</xsl:if> -->
|
3370
3540
|
|
3371
3541
|
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
|
3372
3542
|
|
3373
3543
|
</fo:block>
|
3374
3544
|
</fo:table-cell>
|
3375
3545
|
</fo:table-row>
|
3376
|
-
|
3546
|
+
<!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
|
3547
|
+
<xsl:if test="local-name(*[1]) = 'stem'">
|
3548
|
+
<fo:table-row>
|
3549
|
+
<fo:table-cell>
|
3550
|
+
<fo:block margin-top="6pt">
|
3551
|
+
<xsl:if test="normalize-space($key_iso) = 'true'">
|
3552
|
+
<xsl:attribute name="margin-top">0</xsl:attribute>
|
3553
|
+
</xsl:if>
|
3554
|
+
<xsl:text> </xsl:text>
|
3555
|
+
</fo:block>
|
3556
|
+
</fo:table-cell>
|
3557
|
+
<fo:table-cell>
|
3558
|
+
<fo:block>
|
3559
|
+
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
|
3560
|
+
</fo:block>
|
3561
|
+
</fo:table-cell>
|
3562
|
+
</fo:table-row>
|
3563
|
+
</xsl:if>
|
3564
|
+
</xsl:if> -->
|
3377
3565
|
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
|
3378
3566
|
<xsl:apply-templates/>
|
3379
3567
|
</xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
|
@@ -3398,6 +3586,31 @@
|
|
3398
3586
|
</fo:inline>
|
3399
3587
|
</xsl:template><xsl:template match="*[local-name()='tt']">
|
3400
3588
|
<fo:inline xsl:use-attribute-sets="tt-style">
|
3589
|
+
<xsl:variable name="_font-size">
|
3590
|
+
|
3591
|
+
|
3592
|
+
|
3593
|
+
|
3594
|
+
|
3595
|
+
10
|
3596
|
+
|
3597
|
+
|
3598
|
+
|
3599
|
+
|
3600
|
+
|
3601
|
+
|
3602
|
+
|
3603
|
+
|
3604
|
+
</xsl:variable>
|
3605
|
+
<xsl:variable name="font-size" select="normalize-space($_font-size)"/>
|
3606
|
+
<xsl:if test="$font-size != ''">
|
3607
|
+
<xsl:attribute name="font-size">
|
3608
|
+
<xsl:choose>
|
3609
|
+
<xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
|
3610
|
+
<xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
|
3611
|
+
</xsl:choose>
|
3612
|
+
</xsl:attribute>
|
3613
|
+
</xsl:if>
|
3401
3614
|
<xsl:apply-templates/>
|
3402
3615
|
</fo:inline>
|
3403
3616
|
</xsl:template><xsl:template match="*[local-name()='del']">
|
@@ -3724,10 +3937,23 @@
|
|
3724
3937
|
<xsl:value-of select="substring($str, 2)"/>
|
3725
3938
|
</xsl:template><xsl:template match="mathml:math">
|
3726
3939
|
<fo:inline font-family="STIX2Math">
|
3727
|
-
<
|
3728
|
-
<xsl:
|
3729
|
-
</
|
3940
|
+
<xsl:variable name="mathml">
|
3941
|
+
<xsl:apply-templates select="." mode="mathml"/>
|
3942
|
+
</xsl:variable>
|
3943
|
+
<fo:instream-foreign-object fox:alt-text="Math">
|
3944
|
+
<!-- <xsl:copy-of select="."/> -->
|
3945
|
+
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
3946
|
+
</fo:instream-foreign-object>
|
3730
3947
|
</fo:inline>
|
3948
|
+
</xsl:template><xsl:template match="@*|node()" mode="mathml">
|
3949
|
+
<xsl:copy>
|
3950
|
+
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
3951
|
+
</xsl:copy>
|
3952
|
+
</xsl:template><xsl:template match="mathml:mtext" mode="mathml">
|
3953
|
+
<xsl:copy>
|
3954
|
+
<!-- replace start and end spaces to non-break space -->
|
3955
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),'(^ )|( $)',' ')"/>
|
3956
|
+
</xsl:copy>
|
3731
3957
|
</xsl:template><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
|
3732
3958
|
<xsl:variable name="target">
|
3733
3959
|
<xsl:choose>
|
@@ -3808,9 +4034,22 @@
|
|
3808
4034
|
<xsl:apply-templates/>
|
3809
4035
|
</fo:basic-link>
|
3810
4036
|
</xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
|
3811
|
-
<fo:block
|
3812
|
-
<xsl:
|
3813
|
-
|
4037
|
+
<fo:block-container margin-left="0mm">
|
4038
|
+
<xsl:if test="parent::*[local-name() = 'note']">
|
4039
|
+
<xsl:attribute name="margin-left">
|
4040
|
+
<xsl:choose>
|
4041
|
+
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
4042
|
+
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
4043
|
+
</xsl:choose>
|
4044
|
+
</xsl:attribute>
|
4045
|
+
|
4046
|
+
</xsl:if>
|
4047
|
+
<fo:block-container margin-left="0mm">
|
4048
|
+
<fo:block id="{@id}" xsl:use-attribute-sets="formula-style">
|
4049
|
+
<xsl:apply-templates/>
|
4050
|
+
</fo:block>
|
4051
|
+
</fo:block-container>
|
4052
|
+
</fo:block-container>
|
3814
4053
|
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'dt']/*[local-name() = 'stem']">
|
3815
4054
|
<fo:inline>
|
3816
4055
|
<xsl:apply-templates/>
|
@@ -3870,7 +4109,9 @@
|
|
3870
4109
|
</xsl:choose>
|
3871
4110
|
</xsl:template><xsl:template match="*[local-name() = 'termnote']">
|
3872
4111
|
<fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">
|
3873
|
-
<xsl:
|
4112
|
+
<fo:inline xsl:use-attribute-sets="termnote-name-style">
|
4113
|
+
<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
|
4114
|
+
</fo:inline>
|
3874
4115
|
<xsl:apply-templates/>
|
3875
4116
|
</fo:block>
|
3876
4117
|
</xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name'] | *[local-name() = 'termnote']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']" mode="presentation">
|
@@ -3967,12 +4208,101 @@
|
|
3967
4208
|
|
3968
4209
|
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
|
3969
4210
|
</fo:block>
|
3970
|
-
</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">
|
4211
|
+
</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">
|
3971
4212
|
<xsl:apply-templates mode="contents"/>
|
3972
4213
|
<xsl:text> </xsl:text>
|
3973
|
-
</xsl:template><xsl:template match="
|
4214
|
+
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">
|
4215
|
+
<xsl:apply-templates mode="bookmarks"/>
|
4216
|
+
<xsl:text> </xsl:text>
|
4217
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="contents" priority="2">
|
3974
4218
|
<xsl:value-of select="."/>
|
3975
|
-
</xsl:template><xsl:template match="*[local-name() = '
|
4219
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
|
4220
|
+
<xsl:value-of select="."/>
|
4221
|
+
</xsl:template><xsl:template match="node()" mode="contents">
|
4222
|
+
<xsl:apply-templates mode="contents"/>
|
4223
|
+
</xsl:template><xsl:template match="node()" mode="bookmarks">
|
4224
|
+
<xsl:apply-templates mode="bookmarks"/>
|
4225
|
+
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
|
4226
|
+
<xsl:apply-templates select="."/>
|
4227
|
+
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
|
4228
|
+
<xsl:apply-templates mode="bookmarks"/>
|
4229
|
+
</xsl:template><xsl:template name="addBookmarks">
|
4230
|
+
<xsl:param name="contents"/>
|
4231
|
+
<xsl:if test="xalan:nodeset($contents)//item">
|
4232
|
+
<fo:bookmark-tree>
|
4233
|
+
<xsl:choose>
|
4234
|
+
<xsl:when test="xalan:nodeset($contents)/doc">
|
4235
|
+
<xsl:choose>
|
4236
|
+
<xsl:when test="count(xalan:nodeset($contents)/doc) > 1">
|
4237
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
4238
|
+
<fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
|
4239
|
+
<fo:bookmark-title>
|
4240
|
+
<xsl:variable name="bookmark-title_">
|
4241
|
+
<xsl:choose>
|
4242
|
+
<xsl:when test="@lang = 'en'">
|
4243
|
+
|
4244
|
+
|
4245
|
+
</xsl:when>
|
4246
|
+
<xsl:when test="@lang = 'fr'">
|
4247
|
+
|
4248
|
+
|
4249
|
+
</xsl:when>
|
4250
|
+
<xsl:when test="@lang = 'de'">Deutsche</xsl:when>
|
4251
|
+
<xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
|
4252
|
+
</xsl:choose>
|
4253
|
+
</xsl:variable>
|
4254
|
+
<xsl:choose>
|
4255
|
+
<xsl:when test="normalize-space($bookmark-title_) != ''">
|
4256
|
+
<xsl:value-of select="normalize-space($bookmark-title_)"/>
|
4257
|
+
</xsl:when>
|
4258
|
+
<xsl:otherwise>
|
4259
|
+
<xsl:choose>
|
4260
|
+
<xsl:when test="@lang = 'en'">English</xsl:when>
|
4261
|
+
<xsl:when test="@lang = 'fr'">Français</xsl:when>
|
4262
|
+
<xsl:when test="@lang = 'de'">Deutsche</xsl:when>
|
4263
|
+
<xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
|
4264
|
+
</xsl:choose>
|
4265
|
+
</xsl:otherwise>
|
4266
|
+
</xsl:choose>
|
4267
|
+
</fo:bookmark-title>
|
4268
|
+
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
4269
|
+
</fo:bookmark>
|
4270
|
+
|
4271
|
+
</xsl:for-each>
|
4272
|
+
</xsl:when>
|
4273
|
+
<xsl:otherwise>
|
4274
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
4275
|
+
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
4276
|
+
</xsl:for-each>
|
4277
|
+
</xsl:otherwise>
|
4278
|
+
</xsl:choose>
|
4279
|
+
</xsl:when>
|
4280
|
+
<xsl:otherwise>
|
4281
|
+
<xsl:apply-templates select="xalan:nodeset($contents)/contents/item" mode="bookmark"/>
|
4282
|
+
</xsl:otherwise>
|
4283
|
+
</xsl:choose>
|
4284
|
+
|
4285
|
+
|
4286
|
+
|
4287
|
+
|
4288
|
+
|
4289
|
+
|
4290
|
+
|
4291
|
+
|
4292
|
+
</fo:bookmark-tree>
|
4293
|
+
</xsl:if>
|
4294
|
+
</xsl:template><xsl:template match="item" mode="bookmark">
|
4295
|
+
<fo:bookmark internal-destination="{@id}" starting-state="hide">
|
4296
|
+
<fo:bookmark-title>
|
4297
|
+
<xsl:if test="@section != ''">
|
4298
|
+
<xsl:value-of select="@section"/>
|
4299
|
+
<xsl:text> </xsl:text>
|
4300
|
+
</xsl:if>
|
4301
|
+
<xsl:value-of select="normalize-space(title)"/>
|
4302
|
+
</fo:bookmark-title>
|
4303
|
+
<xsl:apply-templates mode="bookmark"/>
|
4304
|
+
</fo:bookmark>
|
4305
|
+
</xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
|
3976
4306
|
<xsl:if test="normalize-space() != ''">
|
3977
4307
|
<fo:block xsl:use-attribute-sets="figure-name-style">
|
3978
4308
|
|
@@ -4030,7 +4360,7 @@
|
|
4030
4360
|
<xsl:apply-templates/>
|
4031
4361
|
</xsl:otherwise>
|
4032
4362
|
</xsl:choose>
|
4033
|
-
</xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
|
4363
|
+
</xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="bookmarks"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
|
4034
4364
|
<xsl:text> </xsl:text>
|
4035
4365
|
</xsl:template><xsl:template match="*[local-name() = 'strong']" mode="contents_item">
|
4036
4366
|
<xsl:copy>
|
@@ -4039,21 +4369,61 @@
|
|
4039
4369
|
</xsl:template><xsl:template match="*[local-name() = 'br']" mode="contents_item">
|
4040
4370
|
<xsl:text> </xsl:text>
|
4041
4371
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
|
4042
|
-
|
4043
|
-
|
4044
|
-
|
4045
|
-
|
4046
|
-
|
4372
|
+
|
4373
|
+
<fo:block-container margin-left="0mm">
|
4374
|
+
<xsl:if test="parent::*[local-name() = 'note']">
|
4375
|
+
<xsl:attribute name="margin-left">
|
4376
|
+
<xsl:choose>
|
4377
|
+
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
4378
|
+
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
4379
|
+
</xsl:choose>
|
4380
|
+
</xsl:attribute>
|
4381
|
+
|
4382
|
+
</xsl:if>
|
4383
|
+
<fo:block-container margin-left="0mm">
|
4384
|
+
|
4385
|
+
<fo:block xsl:use-attribute-sets="sourcecode-style">
|
4386
|
+
<xsl:variable name="_font-size">
|
4387
|
+
|
4388
|
+
|
4389
|
+
|
4390
|
+
|
4391
|
+
|
4392
|
+
9
|
4393
|
+
|
4394
|
+
|
4395
|
+
|
4396
|
+
|
4397
|
+
|
4398
|
+
|
4399
|
+
|
4400
|
+
|
4401
|
+
</xsl:variable>
|
4402
|
+
<xsl:variable name="font-size" select="normalize-space($_font-size)"/>
|
4403
|
+
<xsl:if test="$font-size != ''">
|
4404
|
+
<xsl:attribute name="font-size">
|
4405
|
+
<xsl:choose>
|
4406
|
+
<xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
|
4407
|
+
<xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
|
4408
|
+
</xsl:choose>
|
4409
|
+
</xsl:attribute>
|
4410
|
+
</xsl:if>
|
4411
|
+
<xsl:apply-templates/>
|
4412
|
+
</fo:block>
|
4413
|
+
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
4414
|
+
|
4415
|
+
</fo:block-container>
|
4416
|
+
</fo:block-container>
|
4417
|
+
</xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
4047
4418
|
<xsl:variable name="text">
|
4048
4419
|
<xsl:call-template name="add-zero-spaces-equal"/>
|
4049
4420
|
</xsl:variable>
|
4050
|
-
<xsl:call-template name="add-zero-spaces">
|
4421
|
+
<xsl:call-template name="add-zero-spaces-java">
|
4051
4422
|
<xsl:with-param name="text" select="$text"/>
|
4052
4423
|
</xsl:call-template>
|
4053
4424
|
</xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="presentation">
|
4054
4425
|
<xsl:if test="normalize-space() != ''">
|
4055
|
-
<fo:block xsl:use-attribute-sets="sourcecode-name-style">
|
4056
|
-
|
4426
|
+
<fo:block xsl:use-attribute-sets="sourcecode-name-style">
|
4057
4427
|
<xsl:apply-templates/>
|
4058
4428
|
</fo:block>
|
4059
4429
|
</xsl:if>
|
@@ -4123,22 +4493,30 @@
|
|
4123
4493
|
</fo:block>
|
4124
4494
|
</xsl:template><xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
4125
4495
|
<fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
|
4496
|
+
<xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
4497
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
4498
|
+
</xsl:if>
|
4126
4499
|
<fo:block-container margin-left="0mm" margin-right="0mm">
|
4127
|
-
<fo:table id="{@id}" table-layout="fixed" width="100%" border="
|
4500
|
+
<fo:table id="{@id}" table-layout="fixed" width="100%"> <!-- border="1pt solid black" -->
|
4501
|
+
<xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
4502
|
+
<!-- <xsl:attribute name="border">0.5pt solid black</xsl:attribute> -->
|
4503
|
+
</xsl:if>
|
4128
4504
|
<xsl:variable name="simple-table">
|
4129
4505
|
<xsl:call-template name="getSimpleTable"/>
|
4130
4506
|
</xsl:variable>
|
4131
4507
|
<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
|
4132
4508
|
<xsl:if test="$cols-count = 2 and not(ancestor::*[local-name()='table'])">
|
4133
|
-
<fo:table-column column-width="35mm"/>
|
4134
|
-
<fo:table-column column-width="115mm"/>
|
4509
|
+
<!-- <fo:table-column column-width="35mm"/>
|
4510
|
+
<fo:table-column column-width="115mm"/> -->
|
4511
|
+
<fo:table-column column-width="30%"/>
|
4512
|
+
<fo:table-column column-width="70%"/>
|
4135
4513
|
</xsl:if>
|
4136
4514
|
<xsl:apply-templates mode="requirement"/>
|
4137
4515
|
</fo:table>
|
4138
4516
|
<!-- fn processing -->
|
4139
4517
|
<xsl:if test=".//*[local-name() = 'fn']">
|
4140
4518
|
<xsl:for-each select="*[local-name() = 'tbody']">
|
4141
|
-
<fo:block font-size="90%" border-bottom="
|
4519
|
+
<fo:block font-size="90%" border-bottom="1pt solid black">
|
4142
4520
|
<xsl:call-template name="fn_display"/>
|
4143
4521
|
</fo:block>
|
4144
4522
|
</xsl:for-each>
|
@@ -4154,17 +4532,27 @@
|
|
4154
4532
|
<xsl:apply-templates mode="requirement"/>
|
4155
4533
|
</fo:table-body>
|
4156
4534
|
</xsl:template><xsl:template match="*[local-name()='tr']" mode="requirement">
|
4157
|
-
<fo:table-row>
|
4535
|
+
<fo:table-row height="7mm" border-bottom="0.5pt solid grey">
|
4536
|
+
<xsl:if test="parent::*[local-name()='thead']"> <!-- and not(ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']) -->
|
4537
|
+
<!-- <xsl:attribute name="border">1pt solid black</xsl:attribute> -->
|
4538
|
+
<xsl:attribute name="background-color">rgb(33, 55, 92)</xsl:attribute>
|
4539
|
+
</xsl:if>
|
4540
|
+
<xsl:if test="starts-with(*[local-name()='td'][1], 'Requirement ')">
|
4541
|
+
<xsl:attribute name="background-color">rgb(252, 246, 222)</xsl:attribute>
|
4542
|
+
</xsl:if>
|
4543
|
+
<xsl:if test="starts-with(*[local-name()='td'][1], 'Recommendation ')">
|
4544
|
+
<xsl:attribute name="background-color">rgb(233, 235, 239)</xsl:attribute>
|
4545
|
+
</xsl:if>
|
4158
4546
|
<xsl:apply-templates mode="requirement"/>
|
4159
4547
|
</fo:table-row>
|
4160
4548
|
</xsl:template><xsl:template match="*[local-name()='th']" mode="requirement">
|
4161
|
-
<fo:table-cell text-align="{@align}">
|
4549
|
+
<fo:table-cell text-align="{@align}" display-align="center" padding="1mm" padding-left="2mm"> <!-- border="0.5pt solid black" -->
|
4162
4550
|
<xsl:attribute name="text-align">
|
4163
4551
|
<xsl:choose>
|
4164
4552
|
<xsl:when test="@align">
|
4165
4553
|
<xsl:value-of select="@align"/>
|
4166
4554
|
</xsl:when>
|
4167
|
-
<xsl:otherwise>
|
4555
|
+
<xsl:otherwise>left</xsl:otherwise>
|
4168
4556
|
</xsl:choose>
|
4169
4557
|
</xsl:attribute>
|
4170
4558
|
<xsl:if test="@colspan">
|
@@ -4177,22 +4565,27 @@
|
|
4177
4565
|
<xsl:value-of select="@rowspan"/>
|
4178
4566
|
</xsl:attribute>
|
4179
4567
|
</xsl:if>
|
4568
|
+
<xsl:call-template name="display-align"/>
|
4180
4569
|
|
4181
|
-
<xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
|
4570
|
+
<!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
|
4182
4571
|
<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
|
4183
4572
|
<xsl:attribute name="background-color">rgb(165, 165, 165)</xsl:attribute>
|
4184
4573
|
</xsl:if>
|
4185
4574
|
<xsl:if test="ancestor::*[local-name()='table']/@type = 'recommendtest'">
|
4186
4575
|
<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
|
4187
4576
|
<xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
|
4188
|
-
</xsl:if>
|
4577
|
+
</xsl:if> -->
|
4189
4578
|
|
4190
4579
|
<fo:block>
|
4191
4580
|
<xsl:apply-templates/>
|
4192
4581
|
</fo:block>
|
4193
4582
|
</fo:table-cell>
|
4194
4583
|
</xsl:template><xsl:template match="*[local-name()='td']" mode="requirement">
|
4195
|
-
<fo:table-cell text-align="{@align}">
|
4584
|
+
<fo:table-cell text-align="{@align}" display-align="center" padding="1mm" padding-left="2mm"> <!-- border="0.5pt solid black" -->
|
4585
|
+
<xsl:if test="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
4586
|
+
<xsl:attribute name="padding">0mm</xsl:attribute>
|
4587
|
+
<xsl:attribute name="padding-left">0mm</xsl:attribute>
|
4588
|
+
</xsl:if>
|
4196
4589
|
<xsl:attribute name="text-align">
|
4197
4590
|
<xsl:choose>
|
4198
4591
|
<xsl:when test="@align">
|
@@ -4201,6 +4594,9 @@
|
|
4201
4594
|
<xsl:otherwise>left</xsl:otherwise>
|
4202
4595
|
</xsl:choose>
|
4203
4596
|
</xsl:attribute>
|
4597
|
+
<xsl:if test="following-sibling::*[local-name()='td'] and not(preceding-sibling::*[local-name()='td'])">
|
4598
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
4599
|
+
</xsl:if>
|
4204
4600
|
<xsl:if test="@colspan">
|
4205
4601
|
<xsl:attribute name="number-columns-spanned">
|
4206
4602
|
<xsl:value-of select="@colspan"/>
|
@@ -4211,25 +4607,27 @@
|
|
4211
4607
|
<xsl:value-of select="@rowspan"/>
|
4212
4608
|
</xsl:attribute>
|
4213
4609
|
</xsl:if>
|
4610
|
+
<xsl:call-template name="display-align"/>
|
4214
4611
|
|
4215
|
-
<xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
|
4612
|
+
<!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
|
4216
4613
|
<xsl:attribute name="padding-left">0.5mm</xsl:attribute>
|
4217
|
-
<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
|
4218
|
-
<xsl:if test="parent::*[local-name()='tr']/preceding-sibling::*[local-name()='tr'] and not(*[local-name()='table'])">
|
4614
|
+
<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
|
4615
|
+
<xsl:if test="parent::*[local-name()='tr']/preceding-sibling::*[local-name()='tr'] and not(*[local-name()='table'])">
|
4219
4616
|
<xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
|
4220
4617
|
</xsl:if>
|
4221
|
-
</xsl:if>
|
4618
|
+
</xsl:if> -->
|
4619
|
+
<!-- 2nd line and below -->
|
4222
4620
|
|
4223
4621
|
<fo:block>
|
4224
4622
|
<xsl:apply-templates/>
|
4225
4623
|
</fo:block>
|
4226
4624
|
</fo:table-cell>
|
4227
4625
|
</xsl:template><xsl:template match="*[local-name() = 'p'][@class='RecommendationTitle' or @class = 'RecommendationTestTitle']" priority="2">
|
4228
|
-
<fo:block font-size="11pt" font-weight="bold"
|
4626
|
+
<fo:block font-size="11pt" color="rgb(237, 193, 35)"> <!-- font-weight="bold" margin-bottom="4pt" text-align="center" -->
|
4229
4627
|
<xsl:apply-templates/>
|
4230
4628
|
</fo:block>
|
4231
|
-
</xsl:template><xsl:template match="*[local-name() = '
|
4232
|
-
<fo:block margin-bottom="10pt"
|
4629
|
+
</xsl:template><xsl:template match="*[local-name() = 'p2'][ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']]">
|
4630
|
+
<fo:block> <!-- margin-bottom="10pt" -->
|
4233
4631
|
<xsl:apply-templates/>
|
4234
4632
|
</fo:block>
|
4235
4633
|
</xsl:template><xsl:template match="*[local-name() = 'termexample']">
|
@@ -4251,12 +4649,13 @@
|
|
4251
4649
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
4252
4650
|
|
4253
4651
|
<xsl:variable name="element">
|
4254
|
-
block
|
4652
|
+
block
|
4255
4653
|
|
4654
|
+
<xsl:if test=".//*[local-name() = 'table']">block</xsl:if>
|
4256
4655
|
</xsl:variable>
|
4257
4656
|
|
4258
4657
|
<xsl:choose>
|
4259
|
-
<xsl:when test="normalize-space($element)
|
4658
|
+
<xsl:when test="contains(normalize-space($element), 'block')">
|
4260
4659
|
<fo:block xsl:use-attribute-sets="example-body-style">
|
4261
4660
|
<xsl:apply-templates/>
|
4262
4661
|
</fo:block>
|
@@ -4293,25 +4692,44 @@
|
|
4293
4692
|
</xsl:otherwise>
|
4294
4693
|
</xsl:choose>
|
4295
4694
|
|
4296
|
-
</xsl:template><xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
|
4297
|
-
|
4695
|
+
</xsl:template><xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
|
4696
|
+
|
4697
|
+
<xsl:variable name="element">
|
4698
|
+
block
|
4298
4699
|
|
4299
|
-
|
4300
|
-
|
4700
|
+
</xsl:variable>
|
4701
|
+
<xsl:choose>
|
4702
|
+
<xsl:when test="normalize-space($element) = 'block'">
|
4703
|
+
<fo:block xsl:use-attribute-sets="example-p-style">
|
4704
|
+
|
4705
|
+
<xsl:apply-templates/>
|
4706
|
+
</fo:block>
|
4707
|
+
</xsl:when>
|
4708
|
+
<xsl:otherwise>
|
4709
|
+
<fo:inline xsl:use-attribute-sets="example-p-style">
|
4710
|
+
<xsl:apply-templates/>
|
4711
|
+
</fo:inline>
|
4712
|
+
</xsl:otherwise>
|
4713
|
+
</xsl:choose>
|
4301
4714
|
</xsl:template><xsl:template match="*[local-name() = 'termsource']">
|
4302
4715
|
<fo:block xsl:use-attribute-sets="termsource-style">
|
4303
4716
|
<!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
|
4304
4717
|
<xsl:variable name="termsource_text">
|
4305
4718
|
<xsl:apply-templates/>
|
4306
4719
|
</xsl:variable>
|
4720
|
+
|
4307
4721
|
<xsl:choose>
|
4308
4722
|
<xsl:when test="starts-with(normalize-space($termsource_text), '[')">
|
4309
4723
|
<xsl:apply-templates/>
|
4310
4724
|
</xsl:when>
|
4311
|
-
<xsl:otherwise>
|
4312
|
-
|
4313
|
-
|
4314
|
-
|
4725
|
+
<xsl:otherwise>
|
4726
|
+
|
4727
|
+
<xsl:text>[</xsl:text>
|
4728
|
+
|
4729
|
+
<xsl:apply-templates/>
|
4730
|
+
|
4731
|
+
<xsl:text>]</xsl:text>
|
4732
|
+
|
4315
4733
|
</xsl:otherwise>
|
4316
4734
|
</xsl:choose>
|
4317
4735
|
</fo:block>
|
@@ -4322,10 +4740,13 @@
|
|
4322
4740
|
</xsl:template><xsl:template match="*[local-name() = 'origin']">
|
4323
4741
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
4324
4742
|
|
4325
|
-
<
|
4326
|
-
|
4327
|
-
|
4328
|
-
|
4743
|
+
<fo:inline>
|
4744
|
+
|
4745
|
+
<xsl:call-template name="getTitle">
|
4746
|
+
<xsl:with-param name="name" select="'title-source'"/>
|
4747
|
+
</xsl:call-template>
|
4748
|
+
<xsl:text>: </xsl:text>
|
4749
|
+
</fo:inline>
|
4329
4750
|
|
4330
4751
|
<fo:inline xsl:use-attribute-sets="origin-style">
|
4331
4752
|
<xsl:apply-templates/>
|
@@ -4337,18 +4758,29 @@
|
|
4337
4758
|
<xsl:if test="normalize-space() != ''">
|
4338
4759
|
<xsl:value-of select="."/>
|
4339
4760
|
</xsl:if>
|
4340
|
-
</xsl:template><xsl:template match="*[local-name() = 'quote']">
|
4761
|
+
</xsl:template><xsl:template match="*[local-name() = 'quote']">
|
4762
|
+
<fo:block-container margin-left="0mm">
|
4763
|
+
<xsl:if test="parent::*[local-name() = 'note']">
|
4764
|
+
<xsl:if test="not(ancestor::*[local-name() = 'table'])">
|
4765
|
+
<xsl:attribute name="margin-left">5mm</xsl:attribute>
|
4766
|
+
</xsl:if>
|
4767
|
+
</xsl:if>
|
4768
|
+
|
4769
|
+
<fo:block-container margin-left="0mm">
|
4341
4770
|
|
4342
|
-
|
4343
|
-
|
4344
|
-
|
4345
|
-
|
4346
|
-
|
4347
|
-
|
4348
|
-
|
4349
|
-
|
4350
|
-
|
4351
|
-
|
4771
|
+
<fo:block xsl:use-attribute-sets="quote-style">
|
4772
|
+
<xsl:apply-templates select=".//*[local-name() = 'p']"/>
|
4773
|
+
</fo:block>
|
4774
|
+
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
4775
|
+
<fo:block xsl:use-attribute-sets="quote-source-style">
|
4776
|
+
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
4777
|
+
<xsl:apply-templates select="*[local-name() = 'author']"/>
|
4778
|
+
<xsl:apply-templates select="*[local-name() = 'source']"/>
|
4779
|
+
</fo:block>
|
4780
|
+
</xsl:if>
|
4781
|
+
|
4782
|
+
</fo:block-container>
|
4783
|
+
</fo:block-container>
|
4352
4784
|
</xsl:template><xsl:template match="*[local-name() = 'source']">
|
4353
4785
|
<xsl:if test="../*[local-name() = 'author']">
|
4354
4786
|
<xsl:text>, </xsl:text>
|
@@ -4376,6 +4808,7 @@
|
|
4376
4808
|
<xsl:if test="@type = 'inline'">
|
4377
4809
|
|
4378
4810
|
|
4811
|
+
|
4379
4812
|
</xsl:if>
|
4380
4813
|
|
4381
4814
|
|
@@ -4413,6 +4846,7 @@
|
|
4413
4846
|
|
4414
4847
|
|
4415
4848
|
|
4849
|
+
|
4416
4850
|
</xsl:variable>
|
4417
4851
|
|
4418
4852
|
<xsl:variable name="padding-right">
|
@@ -4532,6 +4966,30 @@
|
|
4532
4966
|
</xsl:template><xsl:template match="*[local-name() = 'name']/text()">
|
4533
4967
|
<!-- 0xA0 to space replacement -->
|
4534
4968
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
4969
|
+
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
4970
|
+
<xsl:choose>
|
4971
|
+
<xsl:when test="parent::*[local-name() = 'note']">
|
4972
|
+
<fo:block-container>
|
4973
|
+
<xsl:attribute name="margin-left">
|
4974
|
+
<xsl:choose>
|
4975
|
+
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
4976
|
+
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
4977
|
+
</xsl:choose>
|
4978
|
+
</xsl:attribute>
|
4979
|
+
|
4980
|
+
<fo:block-container margin-left="0mm">
|
4981
|
+
<fo:block>
|
4982
|
+
<xsl:apply-templates select="." mode="ul_ol"/>
|
4983
|
+
</fo:block>
|
4984
|
+
</fo:block-container>
|
4985
|
+
</fo:block-container>
|
4986
|
+
</xsl:when>
|
4987
|
+
<xsl:otherwise>
|
4988
|
+
<fo:block>
|
4989
|
+
<xsl:apply-templates select="." mode="ul_ol"/>
|
4990
|
+
</fo:block>
|
4991
|
+
</xsl:otherwise>
|
4992
|
+
</xsl:choose>
|
4535
4993
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
4536
4994
|
<!-- <row>
|
4537
4995
|
<date>05-07-2013</date>
|
@@ -4563,6 +5021,65 @@
|
|
4563
5021
|
<fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
|
4564
5022
|
<fo:block><xsl:apply-templates/></fo:block>
|
4565
5023
|
</fo:table-cell>
|
5024
|
+
</xsl:template><xsl:template name="processBibitem">
|
5025
|
+
|
5026
|
+
|
5027
|
+
|
5028
|
+
|
5029
|
+
</xsl:template><xsl:template name="processBibitemDocId">
|
5030
|
+
<xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
|
5031
|
+
<xsl:choose>
|
5032
|
+
<xsl:when test="normalize-space($_doc_ident) != ''">
|
5033
|
+
<xsl:variable name="type" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]/@type"/>
|
5034
|
+
<xsl:if test="$type != '' and not(contains($_doc_ident, $type))">
|
5035
|
+
<xsl:value-of select="$type"/><xsl:text> </xsl:text>
|
5036
|
+
</xsl:if>
|
5037
|
+
<xsl:value-of select="$_doc_ident"/>
|
5038
|
+
</xsl:when>
|
5039
|
+
<xsl:otherwise>
|
5040
|
+
<xsl:variable name="type" select="*[local-name() = 'docidentifier'][not(@type = 'metanorma')]/@type"/>
|
5041
|
+
<xsl:if test="$type != ''">
|
5042
|
+
<xsl:value-of select="$type"/><xsl:text> </xsl:text>
|
5043
|
+
</xsl:if>
|
5044
|
+
<xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma')]"/>
|
5045
|
+
</xsl:otherwise>
|
5046
|
+
</xsl:choose>
|
5047
|
+
</xsl:template><xsl:template name="processPersonalAuthor">
|
5048
|
+
<xsl:choose>
|
5049
|
+
<xsl:when test="*[local-name() = 'name']/*[local-name() = 'completename']">
|
5050
|
+
<author>
|
5051
|
+
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'completename']"/>
|
5052
|
+
</author>
|
5053
|
+
</xsl:when>
|
5054
|
+
<xsl:when test="*[local-name() = 'name']/*[local-name() = 'surname'] and *[local-name() = 'name']/*[local-name() = 'initial']">
|
5055
|
+
<author>
|
5056
|
+
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
|
5057
|
+
<xsl:text> </xsl:text>
|
5058
|
+
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'initial']" mode="strip"/>
|
5059
|
+
</author>
|
5060
|
+
</xsl:when>
|
5061
|
+
<xsl:when test="*[local-name() = 'name']/*[local-name() = 'surname'] and *[local-name() = 'name']/*[local-name() = 'forename']">
|
5062
|
+
<author>
|
5063
|
+
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
|
5064
|
+
<xsl:text> </xsl:text>
|
5065
|
+
<xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'forename']" mode="strip"/>
|
5066
|
+
</author>
|
5067
|
+
</xsl:when>
|
5068
|
+
<xsl:otherwise>
|
5069
|
+
<xsl:apply-templates/>
|
5070
|
+
</xsl:otherwise>
|
5071
|
+
</xsl:choose>
|
5072
|
+
</xsl:template><xsl:template name="renderDate">
|
5073
|
+
<xsl:if test="normalize-space(*[local-name() = 'on']) != ''">
|
5074
|
+
<xsl:value-of select="*[local-name() = 'on']"/>
|
5075
|
+
</xsl:if>
|
5076
|
+
<xsl:if test="normalize-space(*[local-name() = 'from']) != ''">
|
5077
|
+
<xsl:value-of select="concat(*[local-name() = 'from'], '–', *[local-name() = 'to'])"/>
|
5078
|
+
</xsl:if>
|
5079
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/*[local-name() = 'initial']/text()" mode="strip">
|
5080
|
+
<xsl:value-of select="translate(.,'. ','')"/>
|
5081
|
+
</xsl:template><xsl:template match="*[local-name() = 'name']/*[local-name() = 'forename']/text()" mode="strip">
|
5082
|
+
<xsl:value-of select="substring(.,1,1)"/>
|
4566
5083
|
</xsl:template><xsl:template name="convertDate">
|
4567
5084
|
<xsl:param name="date"/>
|
4568
5085
|
<xsl:param name="format" select="'short'"/>
|
@@ -4770,6 +5287,7 @@
|
|
4770
5287
|
|
4771
5288
|
|
4772
5289
|
|
5290
|
+
|
4773
5291
|
</xsl:variable>
|
4774
5292
|
<xsl:if test="$documentNS != $XSLNS">
|
4775
5293
|
<xsl:message>[WARNING]: Document namespace: '<xsl:value-of select="$documentNS"/>' doesn't equal to xslt namespace '<xsl:value-of select="$XSLNS"/>'</xsl:message>
|
@@ -4795,4 +5313,21 @@
|
|
4795
5313
|
</xsl:otherwise>
|
4796
5314
|
</xsl:choose>
|
4797
5315
|
</xsl:attribute>
|
5316
|
+
</xsl:template><xsl:template name="add-letter-spacing">
|
5317
|
+
<xsl:param name="text"/>
|
5318
|
+
<xsl:param name="letter-spacing" select="'0.15'"/>
|
5319
|
+
<xsl:if test="string-length($text) > 0">
|
5320
|
+
<xsl:variable name="char" select="substring($text, 1, 1)"/>
|
5321
|
+
<fo:inline padding-right="{$letter-spacing}mm">
|
5322
|
+
<xsl:if test="$char = '®'">
|
5323
|
+
<xsl:attribute name="font-size">58%</xsl:attribute>
|
5324
|
+
<xsl:attribute name="baseline-shift">30%</xsl:attribute>
|
5325
|
+
</xsl:if>
|
5326
|
+
<xsl:value-of select="$char"/>
|
5327
|
+
</fo:inline>
|
5328
|
+
<xsl:call-template name="add-letter-spacing">
|
5329
|
+
<xsl:with-param name="text" select="substring($text, 2)"/>
|
5330
|
+
<xsl:with-param name="letter-spacing" select="$letter-spacing"/>
|
5331
|
+
</xsl:call-template>
|
5332
|
+
</xsl:if>
|
4798
5333
|
</xsl:template></xsl:stylesheet>
|