metanorma-un 0.8.2 → 0.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/isodoc/un/html/unece.css +1 -2
- data/lib/isodoc/un/html/unece.scss +0 -1
- data/lib/isodoc/un/un.plenary-attachment.xsl +623 -231
- data/lib/isodoc/un/un.plenary.xsl +623 -231
- data/lib/isodoc/un/un.recommendation.xsl +612 -178
- data/lib/metanorma/un/basicdoc.rng +5 -3
- data/lib/metanorma/un/biblio.rng +5 -3
- data/lib/metanorma/un/version.rb +1 -1
- metadata +2 -2
@@ -2,11 +2,7 @@
|
|
2
2
|
|
3
3
|
<xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
|
4
4
|
|
5
|
-
|
6
|
-
<xsl:param name="external_index"/><!-- path to index xml, generated on 1st pass, based on FOP Intermediate Format -->
|
7
|
-
<xsl:variable name="images" select="document($svg_images)"/>
|
8
|
-
<xsl:param name="basepath"/>
|
9
|
-
|
5
|
+
|
10
6
|
<xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
|
11
7
|
|
12
8
|
|
@@ -14,11 +10,6 @@
|
|
14
10
|
|
15
11
|
|
16
12
|
<xsl:variable name="debug">false</xsl:variable>
|
17
|
-
|
18
|
-
<xsl:variable name="marginLeftRight1" select="40"/>
|
19
|
-
<xsl:variable name="marginLeftRight2" select="40"/>
|
20
|
-
<xsl:variable name="marginTop" select="30"/>
|
21
|
-
<xsl:variable name="marginBottom" select="34"/>
|
22
13
|
|
23
14
|
<xsl:variable name="contents">
|
24
15
|
<contents>
|
@@ -28,10 +19,7 @@
|
|
28
19
|
</contents>
|
29
20
|
</xsl:variable>
|
30
21
|
|
31
|
-
|
32
|
-
<xsl:call-template name="getLang"/>
|
33
|
-
</xsl:variable>
|
34
|
-
|
22
|
+
|
35
23
|
<xsl:variable name="title" select="/un:un-standard/un:bibdata/un:title[@language = 'en' and @type = 'main']"/>
|
36
24
|
|
37
25
|
<xsl:variable name="doctype" select="/un:un-standard/un:bibdata/un:ext/un:doctype"/>
|
@@ -594,64 +582,7 @@
|
|
594
582
|
<xsl:apply-templates/>
|
595
583
|
</fo:block>
|
596
584
|
</xsl:template>
|
597
|
-
|
598
|
-
<xsl:template match="un:ul | un:ol" mode="ul_ol">
|
599
|
-
<fo:list-block provisional-distance-between-starts="3mm" margin-left="7mm" text-indent="0mm">
|
600
|
-
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
601
|
-
</fo:list-block>
|
602
|
-
<xsl:apply-templates select="./un:note"/>
|
603
|
-
</xsl:template>
|
604
|
-
|
605
|
-
|
606
|
-
<xsl:template match="un:li">
|
607
|
-
<xsl:variable name="level">
|
608
|
-
<xsl:call-template name="getLevel"/>
|
609
|
-
</xsl:variable>
|
610
|
-
<fo:list-item>
|
611
|
-
<fo:list-item-label end-indent="label-end()">
|
612
|
-
<fo:block>
|
613
|
-
<xsl:choose>
|
614
|
-
<xsl:when test="local-name(..) = 'ul'">
|
615
|
-
<xsl:call-template name="setULLabel"/>
|
616
|
-
</xsl:when>
|
617
|
-
<xsl:otherwise> <!-- for ordered lists -->
|
618
|
-
<xsl:choose>
|
619
|
-
<xsl:when test="../@type = 'arabic'">
|
620
|
-
<xsl:number format="a)" lang="en"/>
|
621
|
-
</xsl:when>
|
622
|
-
<xsl:when test="../@type = 'alphabet'">
|
623
|
-
<xsl:number format="1)"/>
|
624
|
-
</xsl:when>
|
625
|
-
<xsl:when test="ancestor::*[un:annex]">
|
626
|
-
<xsl:choose>
|
627
|
-
<xsl:when test="$level = 1">
|
628
|
-
<xsl:number format="a)" lang="en"/>
|
629
|
-
</xsl:when>
|
630
|
-
<xsl:when test="$level = 2">
|
631
|
-
<xsl:number format="i)"/>
|
632
|
-
</xsl:when>
|
633
|
-
<xsl:otherwise>
|
634
|
-
<xsl:number format="1.)"/>
|
635
|
-
</xsl:otherwise>
|
636
|
-
</xsl:choose>
|
637
|
-
</xsl:when>
|
638
|
-
<xsl:otherwise>
|
639
|
-
<xsl:number format="1."/>
|
640
|
-
</xsl:otherwise>
|
641
|
-
</xsl:choose>
|
642
|
-
</xsl:otherwise>
|
643
|
-
</xsl:choose>
|
644
|
-
</fo:block>
|
645
|
-
</fo:list-item-label>
|
646
|
-
<fo:list-item-body start-indent="body-start()">
|
647
|
-
<fo:block>
|
648
|
-
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
649
|
-
<xsl:apply-templates select="./un:note"/>
|
650
|
-
</fo:block>
|
651
|
-
</fo:list-item-body>
|
652
|
-
</fo:list-item>
|
653
|
-
</xsl:template>
|
654
|
-
|
585
|
+
|
655
586
|
<xsl:template match="un:li//un:p">
|
656
587
|
<fo:block text-align="justify" margin-bottom="6pt">
|
657
588
|
<xsl:apply-templates/>
|
@@ -873,50 +804,6 @@
|
|
873
804
|
|
874
805
|
|
875
806
|
|
876
|
-
<xsl:template match="un:formula" name="formula-un" priority="2">
|
877
|
-
|
878
|
-
<fo:block-container margin-left="0mm">
|
879
|
-
<xsl:if test="parent::*[local-name() = 'note']">
|
880
|
-
<xsl:attribute name="margin-left">
|
881
|
-
<xsl:choose>
|
882
|
-
<xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
|
883
|
-
<xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
|
884
|
-
</xsl:choose>
|
885
|
-
</xsl:attribute>
|
886
|
-
</xsl:if>
|
887
|
-
<fo:block-container margin-left="0mm">
|
888
|
-
|
889
|
-
<fo:block id="{@id}" margin-top="6pt">
|
890
|
-
<fo:table table-layout="fixed" width="100%">
|
891
|
-
<fo:table-column column-width="95%"/>
|
892
|
-
<fo:table-column column-width="5%"/>
|
893
|
-
<fo:table-body>
|
894
|
-
<fo:table-row>
|
895
|
-
<fo:table-cell>
|
896
|
-
<fo:block text-align="center">
|
897
|
-
<xsl:if test="ancestor::un:annex">
|
898
|
-
<xsl:attribute name="text-align">left</xsl:attribute>
|
899
|
-
<xsl:attribute name="margin-left">7mm</xsl:attribute>
|
900
|
-
</xsl:if>
|
901
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
902
|
-
</fo:block>
|
903
|
-
</fo:table-cell>
|
904
|
-
<fo:table-cell> <!-- display-align="center" -->
|
905
|
-
<fo:block text-align="right">
|
906
|
-
<xsl:apply-templates select="un:name"/>
|
907
|
-
</fo:block>
|
908
|
-
</fo:table-cell>
|
909
|
-
</fo:table-row>
|
910
|
-
</fo:table-body>
|
911
|
-
</fo:table>
|
912
|
-
</fo:block>
|
913
|
-
|
914
|
-
</fo:block-container>
|
915
|
-
</fo:block-container>
|
916
|
-
</xsl:template>
|
917
|
-
|
918
|
-
|
919
|
-
|
920
807
|
<!-- ============================ -->
|
921
808
|
<!-- ============================ -->
|
922
809
|
|
@@ -963,11 +850,21 @@
|
|
963
850
|
<xsl:text>iVBORw0KGgoAAAANSUhEUgAAAUgAAAEfCAYAAAAjn198AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA8BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4M0JCQjMxNzJBNjcxMUVBQjQ3MkM1NDNGQjcxMjlFQyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4M0JCQjMxNjJBNjcxMUVBQjQ3MkM1NDNGQjcxMjlFQyIgeG1wOkNyZWF0b3JUb29sPSJBY3JvYmF0IFBERk1ha2VyIDE4IGZvciBXb3JkIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6OTM1MzU0ZmUtYzRmYS00Y2I4LTlkOGMtYjk0M2E4OTk2YzhiIiBzdFJlZjpkb2N1bWVudElEPSJ1dWlkOjhlMzkwMGEzLTMwZWUtNGRlNy04NDc0LTlhZTA5ZTFjZjhmMiIvPiA8ZGM6Y3JlYXRvcj4gPHJkZjpTZXE+IDxyZGY6bGk+U3RlcGhl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</xsl:text>
|
964
851
|
</xsl:variable>
|
965
852
|
|
966
|
-
<xsl:variable name="
|
853
|
+
<xsl:param name="svg_images"/><xsl:variable name="images" select="document($svg_images)"/><xsl:param name="basepath"/><xsl:param name="external_index"/><xsl:param name="syntax-highlight">false</xsl:param><xsl:variable name="lang">
|
854
|
+
<xsl:call-template name="getLang"/>
|
855
|
+
</xsl:variable><xsl:variable name="pageWidth_">
|
967
856
|
210
|
968
857
|
</xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
|
969
858
|
297
|
970
|
-
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="
|
859
|
+
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
|
860
|
+
40
|
861
|
+
</xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
|
862
|
+
40
|
863
|
+
</xsl:variable><xsl:variable name="marginLeftRight2" select="normalize-space($marginLeftRight2_)"/><xsl:variable name="marginTop_">
|
864
|
+
30
|
865
|
+
</xsl:variable><xsl:variable name="marginTop" select="normalize-space($marginTop_)"/><xsl:variable name="marginBottom_">
|
866
|
+
34
|
867
|
+
</xsl:variable><xsl:variable name="marginBottom" select="normalize-space($marginBottom_)"/><xsl:variable name="titles_">
|
971
868
|
|
972
869
|
<title-edition lang="en">
|
973
870
|
|
@@ -1029,7 +926,7 @@
|
|
1029
926
|
</xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="bibdata">
|
1030
927
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
|
1031
928
|
<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
|
1032
|
-
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
|
929
|
+
</xsl:variable><xsl:variable name="linebreak">
</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:variable name="non_breaking_hyphen">‑</xsl:variable><xsl:variable name="thin_space"> </xsl:variable><xsl:variable name="zero_width_space"></xsl:variable><xsl:variable name="en_dash">–</xsl:variable><xsl:template name="getTitle">
|
1033
930
|
<xsl:param name="name"/>
|
1034
931
|
<xsl:param name="lang"/>
|
1035
932
|
<xsl:variable name="lang_">
|
@@ -1052,7 +949,7 @@
|
|
1052
949
|
<xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
|
1053
950
|
</xsl:otherwise>
|
1054
951
|
</xsl:choose>
|
1055
|
-
</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:
|
952
|
+
</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:attribute-set name="root-style">
|
1056
953
|
|
1057
954
|
|
1058
955
|
|
@@ -1207,7 +1104,7 @@
|
|
1207
1104
|
|
1208
1105
|
|
1209
1106
|
</xsl:attribute-set><xsl:attribute-set name="example-name-style">
|
1210
|
-
|
1107
|
+
|
1211
1108
|
|
1212
1109
|
|
1213
1110
|
|
@@ -1221,6 +1118,7 @@
|
|
1221
1118
|
|
1222
1119
|
|
1223
1120
|
|
1121
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1224
1122
|
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
1225
1123
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1226
1124
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
@@ -1578,7 +1476,8 @@
|
|
1578
1476
|
|
1579
1477
|
|
1580
1478
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
1581
|
-
<xsl:attribute name="
|
1479
|
+
<xsl:attribute name="margin-left">12mm</xsl:attribute>
|
1480
|
+
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
1582
1481
|
|
1583
1482
|
|
1584
1483
|
|
@@ -1587,9 +1486,9 @@
|
|
1587
1486
|
|
1588
1487
|
|
1589
1488
|
</xsl:attribute-set><xsl:attribute-set name="quote-source-style">
|
1489
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
1590
1490
|
|
1591
1491
|
|
1592
|
-
|
1593
1492
|
</xsl:attribute-set><xsl:attribute-set name="termsource-style">
|
1594
1493
|
|
1595
1494
|
|
@@ -1608,6 +1507,9 @@
|
|
1608
1507
|
|
1609
1508
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
1610
1509
|
|
1510
|
+
</xsl:attribute-set><xsl:attribute-set name="term-name-style">
|
1511
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1512
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1611
1513
|
</xsl:attribute-set><xsl:attribute-set name="figure-style">
|
1612
1514
|
|
1613
1515
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
@@ -1638,6 +1540,33 @@
|
|
1638
1540
|
|
1639
1541
|
|
1640
1542
|
</xsl:attribute-set><xsl:attribute-set name="formula-style">
|
1543
|
+
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
1544
|
+
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1545
|
+
|
1546
|
+
|
1547
|
+
|
1548
|
+
|
1549
|
+
|
1550
|
+
|
1551
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-block-style">
|
1552
|
+
<xsl:attribute name="text-align">center</xsl:attribute>
|
1553
|
+
|
1554
|
+
|
1555
|
+
|
1556
|
+
|
1557
|
+
|
1558
|
+
|
1559
|
+
|
1560
|
+
|
1561
|
+
|
1562
|
+
|
1563
|
+
|
1564
|
+
</xsl:attribute-set><xsl:attribute-set name="formula-stem-number-style">
|
1565
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
1566
|
+
|
1567
|
+
|
1568
|
+
|
1569
|
+
|
1641
1570
|
|
1642
1571
|
</xsl:attribute-set><xsl:attribute-set name="image-style">
|
1643
1572
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
@@ -1674,6 +1603,18 @@
|
|
1674
1603
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
1675
1604
|
<xsl:attribute name="keep-with-previous">always</xsl:attribute>
|
1676
1605
|
|
1606
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-block-style">
|
1607
|
+
|
1608
|
+
|
1609
|
+
|
1610
|
+
|
1611
|
+
|
1612
|
+
|
1613
|
+
</xsl:attribute-set><xsl:attribute-set name="preferred-term-style">
|
1614
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1615
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1616
|
+
|
1617
|
+
|
1677
1618
|
</xsl:attribute-set><xsl:attribute-set name="domain-style">
|
1678
1619
|
|
1679
1620
|
</xsl:attribute-set><xsl:attribute-set name="admitted-style">
|
@@ -1707,6 +1648,37 @@
|
|
1707
1648
|
|
1708
1649
|
</xsl:attribute-set><xsl:attribute-set name="list-style">
|
1709
1650
|
|
1651
|
+
|
1652
|
+
|
1653
|
+
|
1654
|
+
|
1655
|
+
|
1656
|
+
|
1657
|
+
|
1658
|
+
|
1659
|
+
|
1660
|
+
|
1661
|
+
|
1662
|
+
|
1663
|
+
|
1664
|
+
|
1665
|
+
|
1666
|
+
|
1667
|
+
<xsl:attribute name="provisional-distance-between-starts">3mm</xsl:attribute>
|
1668
|
+
<xsl:attribute name="margin-left">7mm</xsl:attribute>
|
1669
|
+
<xsl:attribute name="text-indent">0mm</xsl:attribute>
|
1670
|
+
|
1671
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-style">
|
1672
|
+
|
1673
|
+
|
1674
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-label-style">
|
1675
|
+
|
1676
|
+
|
1677
|
+
|
1678
|
+
</xsl:attribute-set><xsl:attribute-set name="list-item-body-style">
|
1679
|
+
|
1680
|
+
|
1681
|
+
|
1710
1682
|
</xsl:attribute-set><xsl:attribute-set name="toc-style">
|
1711
1683
|
<xsl:attribute name="line-height">135%</xsl:attribute>
|
1712
1684
|
</xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
|
@@ -1991,6 +1963,111 @@
|
|
1991
1963
|
|
1992
1964
|
|
1993
1965
|
|
1966
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-doctag">
|
1967
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1968
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-keyword">
|
1969
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1970
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-keyword">
|
1971
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1972
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-tag">
|
1973
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1974
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-template-variable">
|
1975
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1976
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-type">
|
1977
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1978
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable_and_language_">
|
1979
|
+
<xsl:attribute name="color">#d73a49</xsl:attribute>
|
1980
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title">
|
1981
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1982
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class_">
|
1983
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1984
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_class__and_inherited__">
|
1985
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1986
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-title_and_function_">
|
1987
|
+
<xsl:attribute name="color">#6f42c1</xsl:attribute>
|
1988
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attr">
|
1989
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1990
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-attribute">
|
1991
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1992
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-literal">
|
1993
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1994
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta">
|
1995
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1996
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-number">
|
1997
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
1998
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-operator">
|
1999
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2000
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-variable">
|
2001
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2002
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-attr">
|
2003
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2004
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-class">
|
2005
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2006
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-id">
|
2007
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2008
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-regexp">
|
2009
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2010
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-string">
|
2011
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2012
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-meta_hljs-string">
|
2013
|
+
<xsl:attribute name="color">#032f62</xsl:attribute>
|
2014
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-built_in">
|
2015
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
2016
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-symbol">
|
2017
|
+
<xsl:attribute name="color">#e36209</xsl:attribute>
|
2018
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-comment">
|
2019
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2020
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-code">
|
2021
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2022
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-formula">
|
2023
|
+
<xsl:attribute name="color">#6a737d</xsl:attribute>
|
2024
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-name">
|
2025
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2026
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-quote">
|
2027
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2028
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-tag">
|
2029
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2030
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-selector-pseudo">
|
2031
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2032
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-subst">
|
2033
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2034
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-section">
|
2035
|
+
<xsl:attribute name="color">#005cc5</xsl:attribute>
|
2036
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2037
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-bullet">
|
2038
|
+
<xsl:attribute name="color">#735c0f</xsl:attribute>
|
2039
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-emphasis">
|
2040
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2041
|
+
<xsl:attribute name="font-style">italic</xsl:attribute>
|
2042
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-strong">
|
2043
|
+
<xsl:attribute name="color">#24292e</xsl:attribute>
|
2044
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2045
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-addition">
|
2046
|
+
<xsl:attribute name="color">#22863a</xsl:attribute>
|
2047
|
+
<xsl:attribute name="background-color">#f0fff4</xsl:attribute>
|
2048
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-deletion">
|
2049
|
+
<xsl:attribute name="color">#b31d28</xsl:attribute>
|
2050
|
+
<xsl:attribute name="background-color">#ffeef0</xsl:attribute>
|
2051
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-char_and_escape_">
|
2052
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-link">
|
2053
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-params">
|
2054
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-property">
|
2055
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-punctuation">
|
2056
|
+
</xsl:attribute-set><xsl:attribute-set name="hljs-tag">
|
2057
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-title-style">
|
2058
|
+
<xsl:attribute name="role">H1</xsl:attribute>
|
2059
|
+
|
2060
|
+
|
2061
|
+
|
2062
|
+
|
2063
|
+
|
2064
|
+
</xsl:attribute-set><xsl:attribute-set name="indexsect-clause-title-style">
|
2065
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2066
|
+
|
2067
|
+
|
2068
|
+
|
2069
|
+
|
2070
|
+
|
1994
2071
|
</xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:variable name="ace_tag">ace-tag_</xsl:variable><xsl:template name="processPrefaceSectionsDefault_Contents">
|
1995
2072
|
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
1996
2073
|
<xsl:sort select="@displayorder" data-type="number"/>
|
@@ -2077,9 +2154,12 @@
|
|
2077
2154
|
|
2078
2155
|
|
2079
2156
|
</xsl:template><xsl:template match="*[local-name()='legal-statement']//*[local-name()='p']">
|
2157
|
+
<xsl:param name="margin"/>
|
2080
2158
|
|
2081
2159
|
<!-- process in the template 'paragraph' -->
|
2082
|
-
<xsl:call-template name="paragraph"
|
2160
|
+
<xsl:call-template name="paragraph">
|
2161
|
+
<xsl:with-param name="margin" select="$margin"/>
|
2162
|
+
</xsl:call-template>
|
2083
2163
|
|
2084
2164
|
</xsl:template><xsl:template match="*[local-name()='feedback-statement']">
|
2085
2165
|
<fo:block xsl:use-attribute-sets="feedback-statement-style">
|
@@ -2091,9 +2171,12 @@
|
|
2091
2171
|
<xsl:call-template name="title"/>
|
2092
2172
|
|
2093
2173
|
</xsl:template><xsl:template match="*[local-name()='feedback-statement']//*[local-name()='p']">
|
2174
|
+
<xsl:param name="margin"/>
|
2094
2175
|
|
2095
2176
|
<!-- process in the template 'paragraph' -->
|
2096
|
-
<xsl:call-template name="paragraph"
|
2177
|
+
<xsl:call-template name="paragraph">
|
2178
|
+
<xsl:with-param name="margin" select="$margin"/>
|
2179
|
+
</xsl:call-template>
|
2097
2180
|
|
2098
2181
|
</xsl:template><xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
|
2099
2182
|
<!-- <xsl:call-template name="add-zero-spaces"/> -->
|
@@ -2450,8 +2533,7 @@
|
|
2450
2533
|
</xsl:call-template>
|
2451
2534
|
</xsl:if>
|
2452
2535
|
</xsl:template><xsl:template match="text()" mode="td_text">
|
2453
|
-
<xsl:
|
2454
|
-
<xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
|
2536
|
+
<xsl:value-of select="translate(., $zero_width_space, ' ')"/><xsl:text> </xsl:text>
|
2455
2537
|
</xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
|
2456
2538
|
<xsl:value-of select="*[local-name()='origin']/@citeas"/>
|
2457
2539
|
</xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
|
@@ -3445,20 +3527,44 @@
|
|
3445
3527
|
<fo:inline text-decoration="underline">
|
3446
3528
|
<xsl:apply-templates/>
|
3447
3529
|
</fo:inline>
|
3448
|
-
</xsl:template><xsl:template match="*[local-name()='add']">
|
3530
|
+
</xsl:template><xsl:template match="*[local-name()='add']" name="tag_add">
|
3449
3531
|
<xsl:param name="skip">true</xsl:param>
|
3532
|
+
<xsl:param name="block">false</xsl:param>
|
3533
|
+
<xsl:param name="type"/>
|
3534
|
+
<xsl:param name="text-align"/>
|
3450
3535
|
<xsl:choose>
|
3451
3536
|
<xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
|
3452
3537
|
<xsl:choose>
|
3453
|
-
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab'])) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
3538
|
+
<xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab']) or local-name(..) = 'formattedref' and not(preceding-sibling::node())) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
|
3454
3539
|
<xsl:otherwise>
|
3455
|
-
<
|
3540
|
+
<xsl:variable name="tag">
|
3456
3541
|
<xsl:call-template name="insertTag">
|
3457
|
-
<xsl:with-param name="type"
|
3542
|
+
<xsl:with-param name="type">
|
3543
|
+
<xsl:choose>
|
3544
|
+
<xsl:when test="$type = ''"><xsl:value-of select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end --></xsl:when>
|
3545
|
+
<xsl:otherwise><xsl:value-of select="$type"/></xsl:otherwise>
|
3546
|
+
</xsl:choose>
|
3547
|
+
</xsl:with-param>
|
3458
3548
|
<xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
|
3459
3549
|
<xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
|
3460
3550
|
</xsl:call-template>
|
3461
|
-
</
|
3551
|
+
</xsl:variable>
|
3552
|
+
<xsl:choose>
|
3553
|
+
<xsl:when test="$block = 'false'">
|
3554
|
+
<fo:inline>
|
3555
|
+
<xsl:copy-of select="$tag"/>
|
3556
|
+
</fo:inline>
|
3557
|
+
</xsl:when>
|
3558
|
+
<xsl:otherwise>
|
3559
|
+
<fo:block> <!-- for around figures -->
|
3560
|
+
<xsl:if test="$text-align != ''">
|
3561
|
+
<xsl:attribute name="text-align"><xsl:value-of select="$text-align"/></xsl:attribute>
|
3562
|
+
</xsl:if>
|
3563
|
+
<xsl:copy-of select="$tag"/>
|
3564
|
+
</fo:block>
|
3565
|
+
</xsl:otherwise>
|
3566
|
+
</xsl:choose>
|
3567
|
+
|
3462
3568
|
</xsl:otherwise>
|
3463
3569
|
</xsl:choose>
|
3464
3570
|
</xsl:when>
|
@@ -3817,17 +3923,21 @@
|
|
3817
3923
|
</xsl:apply-templates>
|
3818
3924
|
</xsl:template><xsl:template name="getLang">
|
3819
3925
|
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3820
|
-
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3821
3926
|
<xsl:variable name="language">
|
3822
3927
|
<xsl:choose>
|
3823
3928
|
<xsl:when test="$language_current != ''">
|
3824
3929
|
<xsl:value-of select="$language_current"/>
|
3825
3930
|
</xsl:when>
|
3826
|
-
<xsl:when test="$language_current_2 != ''">
|
3827
|
-
<xsl:value-of select="$language_current_2"/>
|
3828
|
-
</xsl:when>
|
3829
3931
|
<xsl:otherwise>
|
3830
|
-
<xsl:
|
3932
|
+
<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3933
|
+
<xsl:choose>
|
3934
|
+
<xsl:when test="$language_current_2 != ''">
|
3935
|
+
<xsl:value-of select="$language_current_2"/>
|
3936
|
+
</xsl:when>
|
3937
|
+
<xsl:otherwise>
|
3938
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
3939
|
+
</xsl:otherwise>
|
3940
|
+
</xsl:choose>
|
3831
3941
|
</xsl:otherwise>
|
3832
3942
|
</xsl:choose>
|
3833
3943
|
</xsl:variable>
|
@@ -4044,8 +4154,8 @@
|
|
4044
4154
|
|
4045
4155
|
</xsl:if>
|
4046
4156
|
<fo:block-container margin-left="0mm">
|
4047
|
-
<fo:block id="{@id}"
|
4048
|
-
<xsl:apply-templates/>
|
4157
|
+
<fo:block id="{@id}">
|
4158
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
|
4049
4159
|
</fo:block>
|
4050
4160
|
</fo:block-container>
|
4051
4161
|
</fo:block-container>
|
@@ -4057,10 +4167,48 @@
|
|
4057
4167
|
<fo:inline>
|
4058
4168
|
<xsl:apply-templates/>
|
4059
4169
|
</fo:inline>
|
4060
|
-
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"
|
4170
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"> <!-- show in 'stem' template -->
|
4061
4171
|
<xsl:if test="normalize-space() != ''">
|
4062
4172
|
<xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
|
4063
4173
|
</xsl:if>
|
4174
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][*[local-name() = 'name']]/*[local-name() = 'stem']">
|
4175
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
4176
|
+
|
4177
|
+
|
4178
|
+
|
4179
|
+
<fo:table table-layout="fixed" width="100%">
|
4180
|
+
<fo:table-column column-width="95%"/>
|
4181
|
+
<fo:table-column column-width="5%"/>
|
4182
|
+
<fo:table-body>
|
4183
|
+
<fo:table-row>
|
4184
|
+
<fo:table-cell display-align="center">
|
4185
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
4186
|
+
|
4187
|
+
|
4188
|
+
<xsl:if test="ancestor::*[local-name() ='annex']">
|
4189
|
+
<xsl:attribute name="text-align">left</xsl:attribute>
|
4190
|
+
<xsl:attribute name="margin-left">7mm</xsl:attribute>
|
4191
|
+
</xsl:if>
|
4192
|
+
|
4193
|
+
|
4194
|
+
<xsl:apply-templates/>
|
4195
|
+
</fo:block>
|
4196
|
+
</fo:table-cell>
|
4197
|
+
<fo:table-cell display-align="center">
|
4198
|
+
<fo:block xsl:use-attribute-sets="formula-stem-number-style">
|
4199
|
+
<xsl:apply-templates select="../*[local-name() = 'name']"/>
|
4200
|
+
</fo:block>
|
4201
|
+
</fo:table-cell>
|
4202
|
+
</fo:table-row>
|
4203
|
+
</fo:table-body>
|
4204
|
+
</fo:table>
|
4205
|
+
</fo:block>
|
4206
|
+
</xsl:template><xsl:template match="*[local-name() = 'formula'][not(*[local-name() = 'name'])]/*[local-name() = 'stem']">
|
4207
|
+
<fo:block xsl:use-attribute-sets="formula-style">
|
4208
|
+
<fo:block xsl:use-attribute-sets="formula-stem-block-style">
|
4209
|
+
<xsl:apply-templates/>
|
4210
|
+
</fo:block>
|
4211
|
+
</fo:block>
|
4064
4212
|
</xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
|
4065
4213
|
|
4066
4214
|
<fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
|
@@ -5028,12 +5176,140 @@
|
|
5028
5176
|
</fo:block-container>
|
5029
5177
|
</fo:block-container>
|
5030
5178
|
</xsl:template><xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
|
5031
|
-
<xsl:
|
5179
|
+
<xsl:choose>
|
5180
|
+
<xsl:when test="normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
|
5181
|
+
<xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
|
5182
|
+
<xsl:choose>
|
5183
|
+
<xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
|
5184
|
+
<xsl:apply-templates select="xalan:nodeset($syntax)" mode="syntax_highlight"/> <!-- process span tags -->
|
5185
|
+
</xsl:when>
|
5186
|
+
<xsl:otherwise> <!-- if case of non-succesfull syntax highlight (for instance, unknown lang), process without highlighting -->
|
5187
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5188
|
+
</xsl:otherwise>
|
5189
|
+
</xsl:choose>
|
5190
|
+
</xsl:when>
|
5191
|
+
<xsl:otherwise>
|
5192
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5193
|
+
</xsl:otherwise>
|
5194
|
+
</xsl:choose>
|
5195
|
+
|
5196
|
+
</xsl:template><xsl:template name="add_spaces_to_sourcecode">
|
5197
|
+
<xsl:variable name="text_step1">
|
5032
5198
|
<xsl:call-template name="add-zero-spaces-equal"/>
|
5033
5199
|
</xsl:variable>
|
5034
|
-
<xsl:
|
5035
|
-
<xsl:
|
5036
|
-
|
5200
|
+
<xsl:variable name="text_step2">
|
5201
|
+
<xsl:call-template name="add-zero-spaces-java">
|
5202
|
+
<xsl:with-param name="text" select="$text_step1"/>
|
5203
|
+
</xsl:call-template>
|
5204
|
+
</xsl:variable>
|
5205
|
+
<xsl:value-of select="$text_step2"/>
|
5206
|
+
</xsl:template><xsl:template match="*" mode="syntax_highlight">
|
5207
|
+
<xsl:apply-templates mode="syntax_highlight"/>
|
5208
|
+
</xsl:template><xsl:variable name="syntax_highlight_styles_">
|
5209
|
+
<style class="hljs-addition" xsl:use-attribute-sets="hljs-addition"/>
|
5210
|
+
<style class="hljs-attr" xsl:use-attribute-sets="hljs-attr"/>
|
5211
|
+
<style class="hljs-attribute" xsl:use-attribute-sets="hljs-attribute"/>
|
5212
|
+
<style class="hljs-built_in" xsl:use-attribute-sets="hljs-built_in"/>
|
5213
|
+
<style class="hljs-bullet" xsl:use-attribute-sets="hljs-bullet"/>
|
5214
|
+
<style class="hljs-char_and_escape_" xsl:use-attribute-sets="hljs-char_and_escape_"/>
|
5215
|
+
<style class="hljs-code" xsl:use-attribute-sets="hljs-code"/>
|
5216
|
+
<style class="hljs-comment" xsl:use-attribute-sets="hljs-comment"/>
|
5217
|
+
<style class="hljs-deletion" xsl:use-attribute-sets="hljs-deletion"/>
|
5218
|
+
<style class="hljs-doctag" xsl:use-attribute-sets="hljs-doctag"/>
|
5219
|
+
<style class="hljs-emphasis" xsl:use-attribute-sets="hljs-emphasis"/>
|
5220
|
+
<style class="hljs-formula" xsl:use-attribute-sets="hljs-formula"/>
|
5221
|
+
<style class="hljs-keyword" xsl:use-attribute-sets="hljs-keyword"/>
|
5222
|
+
<style class="hljs-link" xsl:use-attribute-sets="hljs-link"/>
|
5223
|
+
<style class="hljs-literal" xsl:use-attribute-sets="hljs-literal"/>
|
5224
|
+
<style class="hljs-meta" xsl:use-attribute-sets="hljs-meta"/>
|
5225
|
+
<style class="hljs-meta_hljs-string" xsl:use-attribute-sets="hljs-meta_hljs-string"/>
|
5226
|
+
<style class="hljs-meta_hljs-keyword" xsl:use-attribute-sets="hljs-meta_hljs-keyword"/>
|
5227
|
+
<style class="hljs-name" xsl:use-attribute-sets="hljs-name"/>
|
5228
|
+
<style class="hljs-number" xsl:use-attribute-sets="hljs-number"/>
|
5229
|
+
<style class="hljs-operator" xsl:use-attribute-sets="hljs-operator"/>
|
5230
|
+
<style class="hljs-params" xsl:use-attribute-sets="hljs-params"/>
|
5231
|
+
<style class="hljs-property" xsl:use-attribute-sets="hljs-property"/>
|
5232
|
+
<style class="hljs-punctuation" xsl:use-attribute-sets="hljs-punctuation"/>
|
5233
|
+
<style class="hljs-quote" xsl:use-attribute-sets="hljs-quote"/>
|
5234
|
+
<style class="hljs-regexp" xsl:use-attribute-sets="hljs-regexp"/>
|
5235
|
+
<style class="hljs-section" xsl:use-attribute-sets="hljs-section"/>
|
5236
|
+
<style class="hljs-selector-attr" xsl:use-attribute-sets="hljs-selector-attr"/>
|
5237
|
+
<style class="hljs-selector-class" xsl:use-attribute-sets="hljs-selector-class"/>
|
5238
|
+
<style class="hljs-selector-id" xsl:use-attribute-sets="hljs-selector-id"/>
|
5239
|
+
<style class="hljs-selector-pseudo" xsl:use-attribute-sets="hljs-selector-pseudo"/>
|
5240
|
+
<style class="hljs-selector-tag" xsl:use-attribute-sets="hljs-selector-tag"/>
|
5241
|
+
<style class="hljs-string" xsl:use-attribute-sets="hljs-string"/>
|
5242
|
+
<style class="hljs-strong" xsl:use-attribute-sets="hljs-strong"/>
|
5243
|
+
<style class="hljs-subst" xsl:use-attribute-sets="hljs-subst"/>
|
5244
|
+
<style class="hljs-symbol" xsl:use-attribute-sets="hljs-symbol"/>
|
5245
|
+
<style class="hljs-tag" xsl:use-attribute-sets="hljs-tag"/>
|
5246
|
+
<!-- <style class="hljs-tag_hljs-attr" xsl:use-attribute-sets="hljs-tag_hljs-attr"></style> -->
|
5247
|
+
<!-- <style class="hljs-tag_hljs-name" xsl:use-attribute-sets="hljs-tag_hljs-name"></style> -->
|
5248
|
+
<style class="hljs-template-tag" xsl:use-attribute-sets="hljs-template-tag"/>
|
5249
|
+
<style class="hljs-template-variable" xsl:use-attribute-sets="hljs-template-variable"/>
|
5250
|
+
<style class="hljs-title" xsl:use-attribute-sets="hljs-title"/>
|
5251
|
+
<style class="hljs-title_and_class_" xsl:use-attribute-sets="hljs-title_and_class_"/>
|
5252
|
+
<style class="hljs-title_and_class__and_inherited__" xsl:use-attribute-sets="hljs-title_and_class__and_inherited__"/>
|
5253
|
+
<style class="hljs-title_and_function_" xsl:use-attribute-sets="hljs-title_and_function_"/>
|
5254
|
+
<style class="hljs-type" xsl:use-attribute-sets="hljs-type"/>
|
5255
|
+
<style class="hljs-variable" xsl:use-attribute-sets="hljs-variable"/>
|
5256
|
+
<style class="hljs-variable_and_language_" xsl:use-attribute-sets="hljs-variable_and_language_"/>
|
5257
|
+
</xsl:variable><xsl:variable name="syntax_highlight_styles" select="xalan:nodeset($syntax_highlight_styles_)"/><xsl:template match="span" mode="syntax_highlight" priority="2">
|
5258
|
+
<!-- <fo:inline color="green" font-style="italic"><xsl:apply-templates mode="syntax_highlight"/></fo:inline> -->
|
5259
|
+
<fo:inline>
|
5260
|
+
<xsl:variable name="classes_">
|
5261
|
+
<xsl:call-template name="split">
|
5262
|
+
<xsl:with-param name="pText" select="@class"/>
|
5263
|
+
<xsl:with-param name="sep" select="' '"/>
|
5264
|
+
</xsl:call-template>
|
5265
|
+
<!-- a few classes together (_and_ suffix) -->
|
5266
|
+
<xsl:if test="contains(@class, 'hljs-char') and contains(@class, 'escape_')">
|
5267
|
+
<item>hljs-char_and_escape_</item>
|
5268
|
+
</xsl:if>
|
5269
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_')">
|
5270
|
+
<item>hljs-title_and_class_</item>
|
5271
|
+
</xsl:if>
|
5272
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'class_') and contains(@class, 'inherited__')">
|
5273
|
+
<item>hljs-title_and_class__and_inherited__</item>
|
5274
|
+
</xsl:if>
|
5275
|
+
<xsl:if test="contains(@class, 'hljs-title') and contains(@class, 'function_')">
|
5276
|
+
<item>hljs-title_and_function_</item>
|
5277
|
+
</xsl:if>
|
5278
|
+
<xsl:if test="contains(@class, 'hljs-variable') and contains(@class, 'language_')">
|
5279
|
+
<item>hljs-variable_and_language_</item>
|
5280
|
+
</xsl:if>
|
5281
|
+
<!-- with parent classes (_ suffix) -->
|
5282
|
+
<xsl:if test="contains(@class, 'hljs-keyword') and contains(ancestor::*/@class, 'hljs-meta')">
|
5283
|
+
<item>hljs-meta_hljs-keyword</item>
|
5284
|
+
</xsl:if>
|
5285
|
+
<xsl:if test="contains(@class, 'hljs-string') and contains(ancestor::*/@class, 'hljs-meta')">
|
5286
|
+
<item>hljs-meta_hljs-string</item>
|
5287
|
+
</xsl:if>
|
5288
|
+
</xsl:variable>
|
5289
|
+
<xsl:variable name="classes" select="xalan:nodeset($classes_)"/>
|
5290
|
+
|
5291
|
+
<xsl:for-each select="$classes/item">
|
5292
|
+
<xsl:variable name="class_name" select="."/>
|
5293
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
5294
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
5295
|
+
</xsl:for-each>
|
5296
|
+
</xsl:for-each>
|
5297
|
+
|
5298
|
+
<!-- <xsl:variable name="class_name">
|
5299
|
+
<xsl:choose>
|
5300
|
+
<xsl:when test="@class = 'hljs-attr' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-attr</xsl:when>
|
5301
|
+
<xsl:when test="@class = 'hljs-name' and ancestor::*/@class = 'hljs-tag'">hljs-tag_hljs-name</xsl:when>
|
5302
|
+
<xsl:when test="@class = 'hljs-string' and ancestor::*/@class = 'hljs-meta'">hljs-meta_hljs-string</xsl:when>
|
5303
|
+
<xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
|
5304
|
+
</xsl:choose>
|
5305
|
+
</xsl:variable>
|
5306
|
+
<xsl:for-each select="$syntax_highlight_styles/style[@class = $class_name]/@*[not(local-name() = 'class')]">
|
5307
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
5308
|
+
</xsl:for-each> -->
|
5309
|
+
|
5310
|
+
<xsl:apply-templates mode="syntax_highlight"/></fo:inline>
|
5311
|
+
</xsl:template><xsl:template match="text()" mode="syntax_highlight" priority="2">
|
5312
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5037
5313
|
</xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
|
5038
5314
|
<xsl:if test="normalize-space() != ''">
|
5039
5315
|
<fo:block xsl:use-attribute-sets="sourcecode-name-style">
|
@@ -5408,11 +5684,14 @@
|
|
5408
5684
|
|
5409
5685
|
|
5410
5686
|
<fo:block-container margin-left="0mm">
|
5411
|
-
|
5412
|
-
<fo:block xsl:use-attribute-sets="quote-style">
|
5687
|
+
<fo:block-container xsl:use-attribute-sets="quote-style">
|
5413
5688
|
|
5414
|
-
<
|
5415
|
-
|
5689
|
+
<fo:block-container margin-left="0mm" margin-right="0mm">
|
5690
|
+
<fo:block role="BlockQuote">
|
5691
|
+
<xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
|
5692
|
+
</fo:block>
|
5693
|
+
</fo:block-container>
|
5694
|
+
</fo:block-container>
|
5416
5695
|
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
5417
5696
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
5418
5697
|
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
@@ -5557,6 +5836,31 @@
|
|
5557
5836
|
<xsl:with-param name="count" select="$count - 1"/>
|
5558
5837
|
</xsl:call-template>
|
5559
5838
|
</xsl:if>
|
5839
|
+
</xsl:template><xsl:template match="*[local-name() = 'preferred']">
|
5840
|
+
<xsl:variable name="level">
|
5841
|
+
<xsl:call-template name="getLevel"/>
|
5842
|
+
</xsl:variable>
|
5843
|
+
<xsl:variable name="font-size">
|
5844
|
+
inherit
|
5845
|
+
</xsl:variable>
|
5846
|
+
<xsl:variable name="levelTerm">
|
5847
|
+
<xsl:call-template name="getLevelTermName"/>
|
5848
|
+
</xsl:variable>
|
5849
|
+
<fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
|
5850
|
+
|
5851
|
+
|
5852
|
+
|
5853
|
+
<xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
|
5854
|
+
<fo:block xsl:use-attribute-sets="term-name-style">
|
5855
|
+
<xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
|
5856
|
+
</fo:block>
|
5857
|
+
</xsl:if>
|
5858
|
+
|
5859
|
+
<fo:block xsl:use-attribute-sets="preferred-term-style">
|
5860
|
+
<xsl:call-template name="setStyle_preferred"/>
|
5861
|
+
<xsl:apply-templates/>
|
5862
|
+
</fo:block>
|
5863
|
+
</fo:block>
|
5560
5864
|
</xsl:template><xsl:template match="*[local-name() = 'domain']">
|
5561
5865
|
<fo:inline xsl:use-attribute-sets="domain-style"><<xsl:apply-templates/>></fo:inline>
|
5562
5866
|
<xsl:text> </xsl:text>
|
@@ -5652,24 +5956,8 @@
|
|
5652
5956
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
|
5653
5957
|
</xsl:template><xsl:variable name="ul_labels_">
|
5654
5958
|
|
5655
|
-
|
5656
|
-
|
5657
|
-
|
5658
|
-
|
5659
|
-
|
5660
|
-
|
5661
|
-
|
5662
|
-
|
5663
|
-
|
5664
|
-
|
5665
|
-
|
5666
|
-
|
5667
|
-
|
5668
|
-
|
5669
|
-
|
5670
|
-
|
5671
|
-
<label>•</label>
|
5672
|
-
|
5959
|
+
<label>•</label>
|
5960
|
+
|
5673
5961
|
</xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
|
5674
5962
|
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
5675
5963
|
<xsl:variable name="list_level">
|
@@ -5695,6 +5983,91 @@
|
|
5695
5983
|
</xsl:template><xsl:template match="label" mode="ul_labels">
|
5696
5984
|
<xsl:copy-of select="@*[not(local-name() = 'level')]"/>
|
5697
5985
|
<xsl:value-of select="."/>
|
5986
|
+
</xsl:template><xsl:template name="getListItemFormat">
|
5987
|
+
<!-- Example: for BSI <?list-type loweralpha?> -->
|
5988
|
+
<xsl:variable name="processing_instruction_type" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-type'))"/>
|
5989
|
+
<xsl:choose>
|
5990
|
+
<xsl:when test="local-name(..) = 'ul'">
|
5991
|
+
<xsl:choose>
|
5992
|
+
<xsl:when test="normalize-space($processing_instruction_type) = 'simple'"/>
|
5993
|
+
<xsl:otherwise><xsl:call-template name="setULLabel"/></xsl:otherwise>
|
5994
|
+
</xsl:choose>
|
5995
|
+
</xsl:when>
|
5996
|
+
<xsl:otherwise> <!-- for ordered lists 'ol' -->
|
5997
|
+
|
5998
|
+
<!-- Example: for BSI <?list-start 2?> -->
|
5999
|
+
<xsl:variable name="processing_instruction_start" select="normalize-space(../preceding-sibling::*[1]/processing-instruction('list-start'))"/>
|
6000
|
+
|
6001
|
+
<xsl:variable name="start_value">
|
6002
|
+
<xsl:choose>
|
6003
|
+
<xsl:when test="normalize-space($processing_instruction_start) != ''">
|
6004
|
+
<xsl:value-of select="number($processing_instruction_start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6005
|
+
</xsl:when>
|
6006
|
+
<xsl:when test="normalize-space(../@start) != ''">
|
6007
|
+
<xsl:value-of select="number(../@start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
6008
|
+
</xsl:when>
|
6009
|
+
<xsl:otherwise>0</xsl:otherwise>
|
6010
|
+
</xsl:choose>
|
6011
|
+
</xsl:variable>
|
6012
|
+
|
6013
|
+
<xsl:variable name="curr_value"><xsl:number/></xsl:variable>
|
6014
|
+
|
6015
|
+
<xsl:variable name="type">
|
6016
|
+
<xsl:choose>
|
6017
|
+
<xsl:when test="normalize-space($processing_instruction_type) != ''"><xsl:value-of select="$processing_instruction_type"/></xsl:when>
|
6018
|
+
<xsl:when test="normalize-space(../@type) != ''"><xsl:value-of select="../@type"/></xsl:when>
|
6019
|
+
|
6020
|
+
<xsl:otherwise> <!-- if no @type or @class = 'steps' -->
|
6021
|
+
|
6022
|
+
<xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
6023
|
+
<xsl:variable name="list_level">
|
6024
|
+
<xsl:choose>
|
6025
|
+
<xsl:when test="$list_level_ <= 5"><xsl:value-of select="$list_level_"/></xsl:when>
|
6026
|
+
<xsl:otherwise><xsl:value-of select="$list_level_ mod 5"/></xsl:otherwise>
|
6027
|
+
</xsl:choose>
|
6028
|
+
</xsl:variable>
|
6029
|
+
|
6030
|
+
<xsl:choose>
|
6031
|
+
<xsl:when test="$list_level mod 5 = 0">roman_upper</xsl:when> <!-- level 5 -->
|
6032
|
+
<xsl:when test="$list_level mod 4 = 0">alphabet_upper</xsl:when> <!-- level 4 -->
|
6033
|
+
<xsl:when test="$list_level mod 3 = 0">roman</xsl:when> <!-- level 3 -->
|
6034
|
+
<xsl:when test="$list_level mod 2 = 0 and ancestor::*/@class = 'steps'">alphabet</xsl:when> <!-- level 2 and @class = 'steps'-->
|
6035
|
+
<xsl:when test="$list_level mod 2 = 0">arabic</xsl:when> <!-- level 2 -->
|
6036
|
+
<xsl:otherwise> <!-- level 1 -->
|
6037
|
+
<xsl:choose>
|
6038
|
+
<xsl:when test="ancestor::*/@class = 'steps'">arabic</xsl:when>
|
6039
|
+
<xsl:otherwise>alphabet</xsl:otherwise>
|
6040
|
+
</xsl:choose>
|
6041
|
+
</xsl:otherwise>
|
6042
|
+
</xsl:choose>
|
6043
|
+
|
6044
|
+
</xsl:otherwise>
|
6045
|
+
</xsl:choose>
|
6046
|
+
</xsl:variable>
|
6047
|
+
|
6048
|
+
<xsl:variable name="format">
|
6049
|
+
<xsl:choose>
|
6050
|
+
<xsl:when test="$type = 'arabic'">
|
6051
|
+
1)
|
6052
|
+
</xsl:when>
|
6053
|
+
<xsl:when test="$type = 'alphabet'">
|
6054
|
+
a)
|
6055
|
+
</xsl:when>
|
6056
|
+
<xsl:when test="$type = 'alphabet_upper'">
|
6057
|
+
A.
|
6058
|
+
</xsl:when>
|
6059
|
+
<xsl:when test="$type = 'roman'">
|
6060
|
+
i)
|
6061
|
+
</xsl:when>
|
6062
|
+
<xsl:when test="$type = 'roman_upper'">I.</xsl:when>
|
6063
|
+
<xsl:otherwise>1.</xsl:otherwise> <!-- for any case, if $type has non-determined value, not using -->
|
6064
|
+
</xsl:choose>
|
6065
|
+
</xsl:variable>
|
6066
|
+
|
6067
|
+
<xsl:number value="$start_value + $curr_value" format="{normalize-space($format)}" lang="en"/>
|
6068
|
+
|
6069
|
+
</xsl:otherwise>
|
6070
|
+
</xsl:choose>
|
5698
6071
|
</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
|
5699
6072
|
<xsl:choose>
|
5700
6073
|
<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
|
@@ -5710,18 +6083,66 @@
|
|
5710
6083
|
|
5711
6084
|
<fo:block-container margin-left="0mm">
|
5712
6085
|
<fo:block>
|
5713
|
-
<xsl:apply-templates select="." mode="
|
6086
|
+
<xsl:apply-templates select="." mode="list"/>
|
5714
6087
|
</fo:block>
|
5715
6088
|
</fo:block-container>
|
5716
6089
|
</fo:block-container>
|
5717
6090
|
</xsl:when>
|
5718
6091
|
<xsl:otherwise>
|
5719
6092
|
<fo:block>
|
5720
|
-
<xsl:apply-templates select="." mode="
|
6093
|
+
<xsl:apply-templates select="." mode="list"/>
|
5721
6094
|
</fo:block>
|
5722
6095
|
</xsl:otherwise>
|
5723
6096
|
</xsl:choose>
|
5724
|
-
</xsl:template><xsl:
|
6097
|
+
</xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
|
6098
|
+
<fo:list-block xsl:use-attribute-sets="list-style">
|
6099
|
+
|
6100
|
+
|
6101
|
+
|
6102
|
+
|
6103
|
+
|
6104
|
+
|
6105
|
+
|
6106
|
+
|
6107
|
+
|
6108
|
+
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
6109
|
+
</fo:list-block>
|
6110
|
+
<!-- <xsl:for-each select="./iho:note">
|
6111
|
+
<xsl:call-template name="note"/>
|
6112
|
+
</xsl:for-each> -->
|
6113
|
+
<xsl:apply-templates select="./*[local-name() = 'note']"/>
|
6114
|
+
</xsl:template><xsl:template match="*[local-name()='li']">
|
6115
|
+
<fo:list-item xsl:use-attribute-sets="list-item-style">
|
6116
|
+
<xsl:copy-of select="@id"/>
|
6117
|
+
|
6118
|
+
|
6119
|
+
|
6120
|
+
<fo:list-item-label end-indent="label-end()">
|
6121
|
+
<fo:block xsl:use-attribute-sets="list-item-label-style">
|
6122
|
+
|
6123
|
+
|
6124
|
+
|
6125
|
+
<xsl:call-template name="getListItemFormat"/>
|
6126
|
+
</fo:block>
|
6127
|
+
</fo:list-item-label>
|
6128
|
+
<fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
|
6129
|
+
<fo:block>
|
6130
|
+
|
6131
|
+
|
6132
|
+
|
6133
|
+
|
6134
|
+
|
6135
|
+
<xsl:apply-templates/>
|
6136
|
+
|
6137
|
+
<!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
|
6138
|
+
|
6139
|
+
<xsl:for-each select="./bsi:note">
|
6140
|
+
<xsl:call-template name="note"/>
|
6141
|
+
</xsl:for-each> -->
|
6142
|
+
</fo:block>
|
6143
|
+
</fo:list-item-body>
|
6144
|
+
</fo:list-item>
|
6145
|
+
</xsl:template><xsl:variable name="index" select="document($external_index)"/><xsl:variable name="bookmark_in_fn">
|
5725
6146
|
<xsl:for-each select="//*[local-name() = 'bookmark'][ancestor::*[local-name() = 'fn']]">
|
5726
6147
|
<bookmark><xsl:value-of select="@id"/></bookmark>
|
5727
6148
|
</xsl:for-each>
|
@@ -5743,7 +6164,7 @@
|
|
5743
6164
|
<!-- split <xref target="bm1" to="End" pagenumber="true"> to two xref:
|
5744
6165
|
<xref target="bm1" pagenumber="true"> and <xref target="End" pagenumber="true"> -->
|
5745
6166
|
<xsl:if test="@to">
|
5746
|
-
<xsl:value-of select="$
|
6167
|
+
<xsl:value-of select="$en_dash"/>
|
5747
6168
|
<xsl:copy>
|
5748
6169
|
<xsl:copy-of select="@*"/>
|
5749
6170
|
<xsl:attribute name="target"><xsl:value-of select="@to"/></xsl:attribute>
|
@@ -5768,7 +6189,7 @@
|
|
5768
6189
|
<xsl:param name="target"/>
|
5769
6190
|
<!-- <node></node> -->
|
5770
6191
|
<xsl:choose>
|
5771
|
-
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $
|
6192
|
+
<xsl:when test="self::text() and (normalize-space(.) = ',' or normalize-space(.) = $en_dash) and $remove = 'true'">
|
5772
6193
|
<!-- skip text (i.e. remove it) and process next element -->
|
5773
6194
|
<!-- [removed_<xsl:value-of select="."/>] -->
|
5774
6195
|
<xsl:apply-templates select="following-sibling::node()[1]" mode="process_li_element">
|
@@ -5852,12 +6273,22 @@
|
|
5852
6273
|
</xsl:variable>
|
5853
6274
|
<xsl:variable name="xref_number"><xsl:number count="*[local-name() = 'xref']"/></xsl:variable>
|
5854
6275
|
<xsl:value-of select="concat($docid, '_', $item_number, '_', $xref_number)"/> <!-- $level, '_', -->
|
6276
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'title']" priority="4">
|
6277
|
+
<fo:block xsl:use-attribute-sets="indexsect-title-style">
|
6278
|
+
<!-- Index -->
|
6279
|
+
<xsl:apply-templates/>
|
6280
|
+
</fo:block>
|
6281
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']/*[local-name() = 'title']" priority="4">
|
6282
|
+
<!-- Letter A, B, C, ... -->
|
6283
|
+
<fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
|
6284
|
+
<xsl:apply-templates/>
|
6285
|
+
</fo:block>
|
5855
6286
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']/*[local-name() = 'clause']" priority="4">
|
5856
6287
|
<xsl:apply-templates/>
|
5857
6288
|
<fo:block>
|
5858
|
-
|
5859
|
-
|
5860
|
-
|
6289
|
+
<xsl:if test="following-sibling::*[local-name() = 'clause']">
|
6290
|
+
<fo:block> </fo:block>
|
6291
|
+
</xsl:if>
|
5861
6292
|
</fo:block>
|
5862
6293
|
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'ul']" priority="4">
|
5863
6294
|
<xsl:apply-templates/>
|
@@ -5867,6 +6298,9 @@
|
|
5867
6298
|
|
5868
6299
|
<xsl:apply-templates/>
|
5869
6300
|
</fo:block>
|
6301
|
+
</xsl:template><xsl:template match="*[local-name() = 'indexsect']//*[local-name() = 'li']/text()">
|
6302
|
+
<!-- to split by '_' and other chars -->
|
6303
|
+
<xsl:call-template name="add-zero-spaces-java"/>
|
5870
6304
|
</xsl:template><xsl:template match="*[local-name() = 'bookmark']" name="bookmark">
|
5871
6305
|
<fo:inline id="{@id}" font-size="1pt"/>
|
5872
6306
|
</xsl:template><xsl:template match="*[local-name() = 'errata']">
|
@@ -6169,7 +6603,7 @@
|
|
6169
6603
|
</fo:table-body>
|
6170
6604
|
</fo:table>
|
6171
6605
|
</fo:block>
|
6172
|
-
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']">
|
6606
|
+
</xsl:template><xsl:template match="*[local-name() = 'toc']//*[local-name() = 'li']" priority="2">
|
6173
6607
|
<fo:table-row min-height="5mm">
|
6174
6608
|
<xsl:apply-templates/>
|
6175
6609
|
</fo:table-row>
|
@@ -6407,9 +6841,6 @@
|
|
6407
6841
|
<xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
|
6408
6842
|
</xsl:choose>
|
6409
6843
|
</xsl:template><xsl:template name="addPDFUAmeta">
|
6410
|
-
<xsl:variable name="lang">
|
6411
|
-
<xsl:call-template name="getLang"/>
|
6412
|
-
</xsl:variable>
|
6413
6844
|
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
|
6414
6845
|
<pdf:dictionary type="normal" key="ViewerPreferences">
|
6415
6846
|
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
|
@@ -6637,10 +7068,12 @@
|
|
6637
7068
|
<xsl:param name="key"/>
|
6638
7069
|
<xsl:param name="formatted">false</xsl:param>
|
6639
7070
|
<xsl:param name="lang"/>
|
7071
|
+
<xsl:param name="returnEmptyIfNotFound">false</xsl:param>
|
6640
7072
|
|
6641
7073
|
<xsl:variable name="curr_lang">
|
6642
7074
|
<xsl:choose>
|
6643
7075
|
<xsl:when test="$lang != ''"><xsl:value-of select="$lang"/></xsl:when>
|
7076
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
6644
7077
|
<xsl:otherwise>
|
6645
7078
|
<xsl:call-template name="getLang"/>
|
6646
7079
|
</xsl:otherwise>
|
@@ -6675,6 +7108,7 @@
|
|
6675
7108
|
</xsl:otherwise>
|
6676
7109
|
</xsl:choose>
|
6677
7110
|
</xsl:when>
|
7111
|
+
<xsl:when test="$returnEmptyIfNotFound = 'true'"/>
|
6678
7112
|
<xsl:otherwise>
|
6679
7113
|
<xsl:variable name="key_">
|
6680
7114
|
<xsl:call-template name="capitalize">
|