metanorma-iho 0.6.1 → 0.6.4

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.
@@ -780,14 +780,41 @@
780
780
  <xsl:text>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</xsl:text>
781
781
  </xsl:variable>
782
782
 
783
- <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:param name="add_math_as_text">true</xsl:param><xsl:param name="table_if">false</xsl:param><xsl:param name="table_widths"/><xsl:variable name="table_widths_from_if" select="xalan:nodeset($table_widths)"/><xsl:param name="table_if_debug">false</xsl:param><xsl:variable name="isGenerateTableIF_">
783
+ <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:param name="add_math_as_text">true</xsl:param><xsl:param name="table_if">false</xsl:param><xsl:param name="table_widths"/><xsl:variable name="table_widths_from_if" select="xalan:nodeset($table_widths)"/><xsl:variable name="table_widths_from_if_calculated_">
784
+ <xsl:for-each select="$table_widths_from_if//table">
785
+ <xsl:copy>
786
+ <xsl:copy-of select="@*"/>
787
+ <xsl:call-template name="calculate-column-widths-autolayout-algorithm"/>
788
+ </xsl:copy>
789
+ </xsl:for-each>
790
+ </xsl:variable><xsl:variable name="table_widths_from_if_calculated" select="xalan:nodeset($table_widths_from_if_calculated_)"/><xsl:param name="table_if_debug">false</xsl:param><xsl:variable name="isGenerateTableIF_">
784
791
  false
785
792
  </xsl:variable><xsl:variable name="isGenerateTableIF" select="normalize-space($isGenerateTableIF_)"/><xsl:variable name="lang">
786
793
  <xsl:call-template name="getLang"/>
787
- </xsl:variable><xsl:variable name="pageWidth_">
788
- 210
794
+ </xsl:variable><xsl:variable name="papersize" select="java:toLowerCase(java:java.lang.String.new(normalize-space(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'presentation-metadata']/*[local-name() = 'papersize'])))"/><xsl:variable name="papersize_width_">
795
+ <xsl:choose>
796
+ <xsl:when test="$papersize = 'letter'">215.9</xsl:when>
797
+ <xsl:when test="$papersize = 'a4'">210</xsl:when>
798
+ </xsl:choose>
799
+ </xsl:variable><xsl:variable name="papersize_width" select="normalize-space($papersize_width_)"/><xsl:variable name="papersize_height_">
800
+ <xsl:choose>
801
+ <xsl:when test="$papersize = 'letter'">279.4</xsl:when>
802
+ <xsl:when test="$papersize = 'a4'">297</xsl:when>
803
+ </xsl:choose>
804
+ </xsl:variable><xsl:variable name="papersize_height" select="normalize-space($papersize_height_)"/><xsl:variable name="pageWidth_">
805
+ <xsl:choose>
806
+ <xsl:when test="$papersize_width != ''"><xsl:value-of select="$papersize_width"/></xsl:when>
807
+ <xsl:otherwise>
808
+ 210
809
+ </xsl:otherwise>
810
+ </xsl:choose>
789
811
  </xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
790
- 297
812
+ <xsl:choose>
813
+ <xsl:when test="$papersize_height != ''"><xsl:value-of select="$papersize_height"/></xsl:when>
814
+ <xsl:otherwise>
815
+ 297
816
+ </xsl:otherwise>
817
+ </xsl:choose>
791
818
  </xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
792
819
  25.4
793
820
  </xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
@@ -901,7 +928,7 @@
901
928
  <xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
902
929
  </xsl:otherwise>
903
930
  </xsl:choose>
904
- </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">
931
+ </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="font_noto_sans">Noto Sans, Noto Sans HK, Noto Sans JP, Noto Sans KR, Noto Sans SC, Noto Sans TC</xsl:variable><xsl:variable name="font_noto_sans_mono">Noto Sans Mono, Noto Sans Mono CJK HK, Noto Sans Mono CJK JP, Noto Sans Mono CJK KR, Noto Sans Mono CJK SC, Noto Sans Mono CJK TC</xsl:variable><xsl:variable name="font_noto_serif">Noto Serif, Noto Serif HK, Noto Serif JP, Noto Serif KR, Noto Serif SC, Noto Serif TC</xsl:variable><xsl:attribute-set name="root-style">
905
932
 
906
933
 
907
934
 
@@ -909,7 +936,9 @@
909
936
 
910
937
 
911
938
 
912
- <xsl:attribute name="font-family">Arial, Cambria Math</xsl:attribute>
939
+
940
+ <xsl:attribute name="font-family">Arial, Cambria Math, <xsl:value-of select="$font_noto_sans"/></xsl:attribute>
941
+ <xsl:attribute name="font-family-generic">Sans</xsl:attribute>
913
942
  <xsl:attribute name="font-size">12pt</xsl:attribute>
914
943
 
915
944
 
@@ -932,17 +961,60 @@
932
961
  </xsl:variable>
933
962
  <xsl:variable name="additional_fonts" select="normalize-space($additional_fonts_)"/>
934
963
 
964
+ <xsl:variable name="font_family_generic" select="$root-style_/root-style/@font-family-generic"/>
965
+
935
966
  <xsl:for-each select="$root-style_/root-style/@*">
967
+
936
968
  <xsl:choose>
937
- <xsl:when test="local-name() = 'font-family' and $additional_fonts != ''">
969
+ <xsl:when test="local-name() = 'font-family-generic'"><!-- skip, it's using for determine 'sans' or 'serif' --></xsl:when>
970
+ <xsl:when test="local-name() = 'font-family'">
971
+
972
+ <xsl:variable name="font_regional_prefix">
973
+ <xsl:choose>
974
+ <xsl:when test="$font_family_generic = 'Sans'">Noto Sans</xsl:when>
975
+ <xsl:otherwise>Noto Serif</xsl:otherwise>
976
+ </xsl:choose>
977
+ </xsl:variable>
978
+
938
979
  <xsl:attribute name="{local-name()}">
939
- <xsl:value-of select="."/>, <xsl:value-of select="$additional_fonts"/>
980
+
981
+ <xsl:variable name="font_extended">
982
+ <xsl:choose>
983
+ <xsl:when test="$lang = 'zh'"><xsl:value-of select="$font_regional_prefix"/> SC</xsl:when>
984
+ <xsl:when test="$lang = 'hk'"><xsl:value-of select="$font_regional_prefix"/> HK</xsl:when>
985
+ <xsl:when test="$lang = 'jp'"><xsl:value-of select="$font_regional_prefix"/> JP</xsl:when>
986
+ <xsl:when test="$lang = 'kr'"><xsl:value-of select="$font_regional_prefix"/> KR</xsl:when>
987
+ <xsl:when test="$lang = 'sc'"><xsl:value-of select="$font_regional_prefix"/> SC</xsl:when>
988
+ <xsl:when test="$lang = 'tc'"><xsl:value-of select="$font_regional_prefix"/> TC</xsl:when>
989
+ </xsl:choose>
990
+ </xsl:variable>
991
+ <xsl:if test="normalize-space($font_extended) != ''">
992
+ <xsl:value-of select="$font_regional_prefix"/><xsl:text>, </xsl:text>
993
+ <xsl:value-of select="$font_extended"/><xsl:text>, </xsl:text>
994
+ </xsl:if>
995
+
996
+ <xsl:value-of select="."/>
997
+
998
+ <xsl:if test="$additional_fonts != ''">
999
+ <xsl:text>, </xsl:text><xsl:value-of select="$additional_fonts"/>
1000
+ </xsl:if>
940
1001
  </xsl:attribute>
941
1002
  </xsl:when>
942
1003
  <xsl:otherwise>
943
1004
  <xsl:copy-of select="."/>
944
1005
  </xsl:otherwise>
945
1006
  </xsl:choose>
1007
+
1008
+ <!-- <xsl:choose>
1009
+ <xsl:when test="local-name() = 'font-family'">
1010
+ <xsl:attribute name="{local-name()}">
1011
+ <xsl:value-of select="."/>, <xsl:value-of select="$additional_fonts"/>
1012
+ </xsl:attribute>
1013
+ </xsl:when>
1014
+ <xsl:otherwise>
1015
+ <xsl:copy-of select="."/>
1016
+ </xsl:otherwise>
1017
+ </xsl:choose> -->
946
1018
  </xsl:for-each>
947
1019
  </xsl:template><xsl:attribute-set name="copyright-statement-style">
948
1020
 
@@ -1013,7 +1085,8 @@
1013
1085
 
1014
1086
 
1015
1087
 
1016
- <xsl:attribute name="font-family">Fira Code</xsl:attribute>
1088
+
1089
+ <xsl:attribute name="font-family">Fira Code, <xsl:value-of select="$font_noto_sans_mono"/></xsl:attribute>
1017
1090
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1018
1091
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
1019
1092
  <xsl:attribute name="line-height">113%</xsl:attribute>
@@ -1035,7 +1108,10 @@
1035
1108
 
1036
1109
  </xsl:attribute-set><xsl:attribute-set name="requirement-style">
1037
1110
 
1111
+
1038
1112
  </xsl:attribute-set><xsl:attribute-set name="requirement-name-style">
1113
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1114
+
1039
1115
 
1040
1116
  </xsl:attribute-set><xsl:attribute-set name="requirement-label-style">
1041
1117
 
@@ -1059,6 +1135,7 @@
1059
1135
 
1060
1136
 
1061
1137
 
1138
+
1062
1139
  <xsl:attribute name="font-size">10pt</xsl:attribute>
1063
1140
  <xsl:attribute name="margin-top">8pt</xsl:attribute>
1064
1141
  <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
@@ -1073,6 +1150,7 @@
1073
1150
 
1074
1151
 
1075
1152
 
1153
+
1076
1154
  <xsl:attribute name="font-size">11pt</xsl:attribute>
1077
1155
  <xsl:attribute name="margin-top">8pt</xsl:attribute>
1078
1156
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
@@ -1098,6 +1176,7 @@
1098
1176
 
1099
1177
 
1100
1178
 
1179
+
1101
1180
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
1102
1181
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1103
1182
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -1139,10 +1218,12 @@
1139
1218
 
1140
1219
  <xsl:attribute name="padding-right">5mm</xsl:attribute>
1141
1220
 
1221
+
1142
1222
 
1143
1223
 
1144
1224
  </xsl:attribute-set><xsl:variable name="table-border_">
1145
1225
 
1226
+
1146
1227
  </xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-container-style">
1147
1228
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
1148
1229
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
@@ -1154,6 +1235,7 @@
1154
1235
 
1155
1236
 
1156
1237
 
1238
+
1157
1239
  <xsl:attribute name="space-after">18pt</xsl:attribute>
1158
1240
 
1159
1241
 
@@ -1182,6 +1264,7 @@
1182
1264
 
1183
1265
 
1184
1266
 
1267
+
1185
1268
 
1186
1269
 
1187
1270
 
@@ -1202,6 +1285,7 @@
1202
1285
 
1203
1286
 
1204
1287
 
1288
+
1205
1289
 
1206
1290
  <xsl:attribute name="text-align">center</xsl:attribute>
1207
1291
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
@@ -1270,6 +1354,7 @@
1270
1354
 
1271
1355
 
1272
1356
 
1357
+
1273
1358
  <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
1274
1359
 
1275
1360
 
@@ -1291,7 +1376,7 @@
1291
1376
 
1292
1377
 
1293
1378
 
1294
-
1379
+
1295
1380
 
1296
1381
 
1297
1382
 
@@ -1304,6 +1389,7 @@
1304
1389
 
1305
1390
 
1306
1391
 
1392
+
1307
1393
  <xsl:attribute name="font-size">12pt</xsl:attribute>
1308
1394
 
1309
1395
 
@@ -1316,6 +1402,8 @@
1316
1402
 
1317
1403
 
1318
1404
 
1405
+
1406
+
1319
1407
  </xsl:attribute-set><xsl:attribute-set name="table-fn-number-style">
1320
1408
  <xsl:attribute name="font-size">80%</xsl:attribute>
1321
1409
  <xsl:attribute name="padding-right">5mm</xsl:attribute>
@@ -1326,6 +1414,7 @@
1326
1414
 
1327
1415
 
1328
1416
 
1417
+
1329
1418
  <xsl:attribute name="vertical-align">super</xsl:attribute>
1330
1419
 
1331
1420
 
@@ -1360,6 +1449,7 @@
1360
1449
 
1361
1450
 
1362
1451
 
1452
+
1363
1453
  <xsl:attribute name="margin-top">0pt</xsl:attribute>
1364
1454
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1365
1455
 
@@ -1368,6 +1458,26 @@
1368
1458
 
1369
1459
 
1370
1460
 
1461
+ </xsl:attribute-set><xsl:attribute-set name="dl-name-style">
1462
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1463
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1464
+
1465
+
1466
+
1467
+
1468
+
1469
+
1470
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1471
+
1472
+
1473
+
1474
+
1475
+
1476
+
1477
+
1478
+
1479
+
1480
+
1371
1481
  </xsl:attribute-set><xsl:attribute-set name="dd-cell-style">
1372
1482
  <xsl:attribute name="padding-left">2mm</xsl:attribute>
1373
1483
  </xsl:attribute-set><xsl:attribute-set name="appendix-style">
@@ -1400,6 +1510,7 @@
1400
1510
 
1401
1511
 
1402
1512
 
1513
+
1403
1514
 
1404
1515
  <xsl:attribute name="font-size">11pt</xsl:attribute>
1405
1516
  <xsl:attribute name="margin-top">8pt</xsl:attribute>
@@ -1445,7 +1556,8 @@
1445
1556
 
1446
1557
 
1447
1558
 
1448
-
1559
+
1560
+
1449
1561
 
1450
1562
  <xsl:attribute name="margin-top">8pt</xsl:attribute>
1451
1563
  <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
@@ -1461,6 +1573,7 @@
1461
1573
  </xsl:attribute-set><xsl:attribute-set name="termnote-style">
1462
1574
 
1463
1575
 
1576
+
1464
1577
 
1465
1578
 
1466
1579
  <xsl:attribute name="font-size">10pt</xsl:attribute>
@@ -1476,6 +1589,8 @@
1476
1589
 
1477
1590
 
1478
1591
 
1592
+ </xsl:attribute-set><xsl:attribute-set name="termnote-p-style">
1593
+
1479
1594
  </xsl:attribute-set><xsl:attribute-set name="quote-style">
1480
1595
  <xsl:attribute name="margin-left">12mm</xsl:attribute>
1481
1596
  <xsl:attribute name="margin-right">12mm</xsl:attribute>
@@ -1526,6 +1641,7 @@
1526
1641
  </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
1527
1642
 
1528
1643
 
1644
+
1529
1645
 
1530
1646
 
1531
1647
 
@@ -1573,6 +1689,7 @@
1573
1689
 
1574
1690
 
1575
1691
 
1692
+
1576
1693
  </xsl:attribute-set><xsl:attribute-set name="formula-stem-number-style">
1577
1694
  <xsl:attribute name="text-align">right</xsl:attribute>
1578
1695
 
@@ -1591,20 +1708,20 @@
1591
1708
  </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
1592
1709
 
1593
1710
  </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
1711
+ <xsl:attribute name="width">100%</xsl:attribute>
1712
+ <xsl:attribute name="content-height">100%</xsl:attribute>
1713
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
1594
1714
 
1595
1715
 
1596
- <xsl:attribute name="width">100%</xsl:attribute>
1597
1716
  <xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
1598
- <xsl:attribute name="scaling">uniform</xsl:attribute>
1599
1717
 
1600
1718
 
1601
1719
 
1602
-
1603
-
1720
+
1604
1721
  </xsl:attribute-set><xsl:attribute-set name="tt-style">
1605
1722
 
1606
1723
 
1607
- <xsl:attribute name="font-family">Courier New</xsl:attribute>
1724
+ <xsl:attribute name="font-family">Courier New, <xsl:value-of select="$font_noto_sans_mono"/></xsl:attribute>
1608
1725
 
1609
1726
 
1610
1727
  </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
@@ -1674,6 +1791,7 @@
1674
1791
 
1675
1792
 
1676
1793
 
1794
+
1677
1795
  <xsl:attribute name="provisional-distance-between-starts">6mm</xsl:attribute>
1678
1796
 
1679
1797
 
@@ -1687,6 +1805,24 @@
1687
1805
 
1688
1806
 
1689
1807
 
1808
+ </xsl:attribute-set><xsl:attribute-set name="list-name-style">
1809
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1810
+
1811
+
1812
+
1813
+
1814
+
1815
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1816
+
1817
+
1818
+
1819
+
1820
+
1821
+
1822
+
1823
+
1824
+
1825
+
1690
1826
  </xsl:attribute-set><xsl:attribute-set name="list-item-style">
1691
1827
 
1692
1828
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
@@ -1726,6 +1862,7 @@
1726
1862
 
1727
1863
 
1728
1864
 
1865
+
1729
1866
  <xsl:attribute name="font-size">70%</xsl:attribute>
1730
1867
  <xsl:attribute name="vertical-align">super</xsl:attribute>
1731
1868
 
@@ -1750,6 +1887,7 @@
1750
1887
 
1751
1888
 
1752
1889
 
1890
+
1753
1891
  <xsl:attribute name="font-size">10pt</xsl:attribute>
1754
1892
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1755
1893
 
@@ -1773,6 +1911,7 @@
1773
1911
 
1774
1912
 
1775
1913
 
1914
+
1776
1915
  <xsl:attribute name="font-size">60%</xsl:attribute>
1777
1916
  <xsl:attribute name="vertical-align">super</xsl:attribute>
1778
1917
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
@@ -1794,6 +1933,7 @@
1794
1933
 
1795
1934
 
1796
1935
 
1936
+
1797
1937
  <xsl:attribute name="border">0.5pt solid rgb(79, 129, 189)</xsl:attribute>
1798
1938
  <xsl:attribute name="color">rgb(79, 129, 189)</xsl:attribute>
1799
1939
  <xsl:attribute name="margin-left">16mm</xsl:attribute>
@@ -1809,12 +1949,13 @@
1809
1949
 
1810
1950
 
1811
1951
  </xsl:attribute-set><xsl:attribute-set name="admonition-container-style">
1952
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
1953
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
1954
+
1812
1955
 
1813
1956
 
1814
1957
 
1815
1958
 
1816
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
1817
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
1818
1959
  <xsl:attribute name="padding">2mm</xsl:attribute>
1819
1960
  <xsl:attribute name="padding-top">3mm</xsl:attribute>
1820
1961
 
@@ -1850,6 +1991,7 @@
1850
1991
 
1851
1992
 
1852
1993
 
1994
+
1853
1995
  <xsl:attribute name="font-style">italic</xsl:attribute>
1854
1996
 
1855
1997
 
@@ -1885,6 +2027,10 @@
1885
2027
 
1886
2028
 
1887
2029
 
2030
+ <!-- <xsl:if test="$namespace = 'ieee'">
2031
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2032
+ <xsl:attribute name="provisional-distance-between-starts">9.5mm</xsl:attribute>
2033
+ </xsl:if> -->
1888
2034
 
1889
2035
  <xsl:attribute name="line-height">115%</xsl:attribute>
1890
2036
 
@@ -1907,6 +2053,7 @@
1907
2053
 
1908
2054
 
1909
2055
 
2056
+
1910
2057
  <xsl:attribute name="line-height">115%</xsl:attribute>
1911
2058
 
1912
2059
 
@@ -1932,6 +2079,7 @@
1932
2079
 
1933
2080
 
1934
2081
 
2082
+
1935
2083
  <xsl:attribute name="font-size">8pt</xsl:attribute>
1936
2084
  <xsl:attribute name="baseline-shift">30%</xsl:attribute>
1937
2085
 
@@ -1953,6 +2101,7 @@
1953
2101
 
1954
2102
 
1955
2103
 
2104
+
1956
2105
  <xsl:attribute name="alignment-baseline">hanging</xsl:attribute>
1957
2106
  <xsl:attribute name="padding-right">3mm</xsl:attribute>
1958
2107
 
@@ -1974,6 +2123,7 @@
1974
2123
 
1975
2124
 
1976
2125
 
2126
+
1977
2127
  <xsl:attribute name="margin-bottom">4pt</xsl:attribute>
1978
2128
 
1979
2129
 
@@ -2093,13 +2243,13 @@
2093
2243
 
2094
2244
  </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">
2095
2245
  <xsl:variable name="nodes_preface_">
2096
- <xsl:for-each select="/*/*[local-name()='preface']/*">
2246
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
2097
2247
  <node id="{@id}"/>
2098
2248
  </xsl:for-each>
2099
2249
  </xsl:variable>
2100
2250
  <xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
2101
2251
 
2102
- <xsl:for-each select="/*/*[local-name()='preface']/*">
2252
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
2103
2253
  <xsl:sort select="@displayorder" data-type="number"/>
2104
2254
 
2105
2255
  <!-- process Section's title -->
@@ -2165,7 +2315,7 @@
2165
2315
  </xsl:for-each>
2166
2316
  </figures>
2167
2317
  </xsl:template><xsl:template name="processPrefaceSectionsDefault">
2168
- <xsl:for-each select="/*/*[local-name()='preface']/*">
2318
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
2169
2319
  <xsl:sort select="@displayorder" data-type="number"/>
2170
2320
  <xsl:apply-templates select="."/>
2171
2321
  </xsl:for-each>
@@ -2410,6 +2560,8 @@
2410
2560
 
2411
2561
 
2412
2562
 
2563
+
2564
+
2413
2565
 
2414
2566
 
2415
2567
 
@@ -2446,6 +2598,8 @@
2446
2598
 
2447
2599
 
2448
2600
 
2601
+
2602
+
2449
2603
  </xsl:element>
2450
2604
  </xsl:variable>
2451
2605
 
@@ -2591,23 +2745,29 @@
2591
2745
  </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']">
2592
2746
  <xsl:param name="continued"/>
2593
2747
  <xsl:if test="normalize-space() != ''">
2594
- <fo:block xsl:use-attribute-sets="table-name-style">
2595
-
2596
-
2597
-
2598
-
2748
+
2749
+
2599
2750
 
2600
- <xsl:choose>
2601
- <xsl:when test="$continued = 'true'">
2751
+ <fo:block xsl:use-attribute-sets="table-name-style">
2752
+
2602
2753
 
2603
- </xsl:when>
2604
- <xsl:otherwise>
2605
- <xsl:apply-templates/>
2606
- </xsl:otherwise>
2607
- </xsl:choose>
2608
-
2754
+
2755
+
2756
+
2757
+ <xsl:choose>
2758
+ <xsl:when test="$continued = 'true'">
2759
+
2760
+ </xsl:when>
2761
+ <xsl:otherwise>
2762
+ <xsl:apply-templates/>
2763
+ </xsl:otherwise>
2764
+ </xsl:choose>
2765
+
2766
+
2767
+ </fo:block>
2768
+
2609
2769
 
2610
- </fo:block>
2770
+
2611
2771
  </xsl:if>
2612
2772
  </xsl:template><xsl:template name="calculate-columns-numbers">
2613
2773
  <xsl:param name="table-row"/>
@@ -2770,8 +2930,9 @@
2770
2930
  <xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
2771
2931
  </xsl:if>
2772
2932
  </xsl:template><xsl:template name="calculate-column-widths-autolayout-algorithm">
2773
- <xsl:param name="table"/>
2774
- <xsl:param name="if">false</xsl:param> <!-- via intermediate format -->
2933
+ <xsl:param name="parent_table_page-width"/> <!-- for nested tables, in re-calculate step -->
2934
+
2935
+ <!-- via intermediate format -->
2775
2936
 
2776
2937
  <!-- The algorithm uses two passes through the table data and scales linearly with the size of the table -->
2777
2938
 
@@ -2782,9 +2943,8 @@
2782
2943
  <!-- get current table id -->
2783
2944
  <xsl:variable name="table_id" select="@id"/>
2784
2945
  <!-- find table by id in the file 'table_widths' -->
2785
- <xsl:variable name="table-if_" select="$table_widths_from_if//table[@id = $table_id]"/>
2786
- <xsl:variable name="table-if" select="xalan:nodeset($table-if_)"/>
2787
-
2946
+ <!-- <xsl:variable name="table-if_" select="$table_widths_from_if//table[@id = $table_id]"/>
2947
+ <xsl:variable name="table-if" select="xalan:nodeset($table-if_)"/> -->
2788
2948
 
2789
2949
  <!-- table='<xsl:copy-of select="$table"/>' -->
2790
2950
  <!-- table_id='<xsl:value-of select="$table_id"/>\ -->
@@ -2792,24 +2952,13 @@
2792
2952
  <!-- table_widths_from_if='<xsl:copy-of select="$table_widths_from_if"/>' -->
2793
2953
 
2794
2954
  <xsl:variable name="table_with_cell_widths_">
2795
- <xsl:choose>
2796
- <xsl:when test="$if = 'true' and normalize-space($table-if) != ''"> <!-- if we read column's width from IF and there is table in IF -->
2797
-
2798
- <!-- Example: <column>10</column>
2799
- <column>11</column>
2800
- -->
2801
- <xsl:apply-templates select="$table-if" mode="determine_cell_widths-if"/>
2802
- </xsl:when>
2803
- <xsl:otherwise>
2804
- <xsl:apply-templates select="xalan:nodeset($table)" mode="determine_cell_widths"/>
2805
- </xsl:otherwise>
2806
- </xsl:choose>
2955
+ <xsl:apply-templates select="." mode="determine_cell_widths-if"/> <!-- read column's width from IF -->
2807
2956
  </xsl:variable>
2808
2957
  <xsl:variable name="table_with_cell_widths" select="xalan:nodeset($table_with_cell_widths_)"/>
2809
2958
 
2810
- <xsl:if test="$table_if_debug = 'true'">
2959
+ <!-- <xsl:if test="$table_if_debug = 'true'">
2811
2960
  <xsl:copy-of select="$table_with_cell_widths"/>
2812
- </xsl:if>
2961
+ </xsl:if> -->
2813
2962
 
2814
2963
 
2815
2964
  <!-- The minimum and maximum cell widths are then used to determine the corresponding minimum and maximum widths for the columns. -->
@@ -2855,8 +3004,12 @@
2855
3004
 
2856
3005
  <xsl:variable name="page_width">
2857
3006
  <xsl:choose>
2858
- <xsl:when test="$if = 'true'"><xsl:value-of select="$table-if/@page-width"/></xsl:when>
2859
- <xsl:otherwise>75</xsl:otherwise>
3007
+ <xsl:when test="$parent_table_page-width != ''">
3008
+ <xsl:value-of select="$parent_table_page-width"/>
3009
+ </xsl:when>
3010
+ <xsl:otherwise>
3011
+ <xsl:value-of select="@page-width"/>
3012
+ </xsl:otherwise>
2860
3013
  </xsl:choose>
2861
3014
  </xsl:variable>
2862
3015
 
@@ -2864,9 +3017,6 @@
2864
3017
  <table_width>
2865
3018
  <xsl:copy-of select="$table_widths"/>
2866
3019
  </table_width>
2867
- <!-- <debug>$table_widths/@width_min=<xsl:value-of select="$table_widths/table/@width_min"/></debug>
2868
- <debug>$table_widths/@width_max=<xsl:value-of select="$table_widths/table/@width_max"/></debug>
2869
- -->
2870
3020
  <debug>$page_width=<xsl:value-of select="$page_width"/></debug>
2871
3021
  </xsl:if>
2872
3022
 
@@ -2877,11 +3027,11 @@
2877
3027
  <xsl:when test="$table_widths/table/@width_min &gt;= $page_width and 1 = 2"> <!-- this condition isn't working see case 3 below -->
2878
3028
  <!-- call old algorithm -->
2879
3029
  <case1/>
2880
- <xsl:variable name="cols-count" select="count(xalan:nodeset($table)/*/tr[1]/td)"/>
3030
+ <!-- <xsl:variable name="cols-count" select="count(xalan:nodeset($table)/*/tr[1]/td)"/>
2881
3031
  <xsl:call-template name="calculate-column-widths-proportional">
2882
3032
  <xsl:with-param name="cols-count" select="$cols-count"/>
2883
3033
  <xsl:with-param name="table" select="$table"/>
2884
- </xsl:call-template>
3034
+ </xsl:call-template> -->
2885
3035
  </xsl:when>
2886
3036
  <!-- 2. The maximum table width fits within the available space. In this case, set the columns to their maximum widths. -->
2887
3037
  <xsl:when test="$table_widths/table/@width_max &lt;= $page_width">
@@ -2925,95 +3075,49 @@
2925
3075
  <xsl:otherwise><unknown_case/></xsl:otherwise>
2926
3076
  </xsl:choose>
2927
3077
 
3078
+ </xsl:template><xsl:template name="get-calculated-column-widths-autolayout-algorithm">
2928
3079
 
2929
- </xsl:template><xsl:template match="@*|node()" mode="determine_cell_widths">
2930
- <xsl:copy>
2931
- <xsl:apply-templates select="@*|node()" mode="determine_cell_widths"/>
2932
- </xsl:copy>
2933
- </xsl:template><xsl:template match="td | th" mode="determine_cell_widths">
2934
- <xsl:copy>
2935
- <xsl:copy-of select="@*"/>
3080
+ <!-- if nested 'dl' or 'table' -->
3081
+ <xsl:variable name="parent_table_id" select="normalize-space(ancestor::*[local-name() = 'table' or local-name() = 'dl'][1]/@id)"/>
3082
+ <parent_table_id><xsl:value-of select="$parent_table_id"/></parent_table_id>
2936
3083
 
2937
- <!-- The maximum width is given by the widest line. -->
2938
- <xsl:variable name="widths_max">
2939
- <xsl:for-each select=".//*[local-name() = 'p']">
2940
- <xsl:call-template name="add_width"/>
2941
- </xsl:for-each>
2942
- <xsl:if test="not(*[local-name() = 'p'])">
2943
- <xsl:call-template name="add_width"/>
2944
- </xsl:if>
2945
- </xsl:variable>
2946
- <xsl:variable name="width_max">
2947
- <xsl:for-each select="xalan:nodeset($widths_max)//width">
2948
- <xsl:sort select="." data-type="number" order="descending"/>
2949
- <xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
2950
- </xsl:for-each>
2951
- </xsl:variable>
2952
- <xsl:attribute name="width_max">
2953
- <xsl:value-of select="$width_max"/>
2954
- </xsl:attribute>
3084
+ <parent_element><xsl:value-of select="local-name(..)"/></parent_element>
2955
3085
 
2956
- <!-- The minimum width is given by the widest text element (word, image, etc.) -->
2957
- <!-- To do: image width -->
2958
- <xsl:variable name="td_text">
2959
- <xsl:apply-templates select="." mode="td_text"/>
2960
- </xsl:variable>
2961
- <xsl:variable name="words">
2962
- <xsl:variable name="string_with_added_zerospaces">
2963
- <xsl:call-template name="add-zero-spaces-java">
2964
- <xsl:with-param name="text" select="$td_text"/>
2965
- </xsl:call-template>
3086
+ <xsl:variable name="parent_table_page-width_">
3087
+ <xsl:if test="$parent_table_id != ''">
3088
+ <!-- determine column number in the parent table -->
3089
+ <xsl:variable name="parent_table_column_number">
3090
+ <xsl:choose>
3091
+ <xsl:when test="parent::*[local-name() = 'dd']">2</xsl:when>
3092
+ <xsl:otherwise> <!-- parent is table -->
3093
+ <xsl:value-of select="count(ancestor::*[local-name() = 'td'][1]/preceding-sibling::*[local-name() = 'td']) + 1"/>
3094
+ </xsl:otherwise>
3095
+ </xsl:choose>
2966
3096
  </xsl:variable>
2967
- <xsl:call-template name="tokenize">
2968
- <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '​­', ' '))"/> <!-- replace zero-width-space and soft-hyphen to space -->
2969
- </xsl:call-template>
2970
- </xsl:variable>
2971
-
2972
- <xsl:variable name="max_word_length">
2973
- <xsl:call-template name="max_length">
2974
- <xsl:with-param name="words" select="xalan:nodeset($words)"/>
2975
- </xsl:call-template>
2976
- </xsl:variable>
2977
- <xsl:variable name="width_min">
2978
- <xsl:value-of select="$max_word_length"/>
2979
- </xsl:variable>
2980
- <xsl:attribute name="width_min">
2981
- <xsl:value-of select="$width_min"/>
2982
- </xsl:attribute>
2983
- <!-- width_max="1" width_min="1.5"> --> <!-- see 'tokenize' template, multiply 1.5 for all latin capitals -->
2984
- <xsl:if test="$width_min &gt; $width_max">
2985
- <xsl:attribute name="width_max">
2986
- <xsl:value-of select="$width_min"/>
2987
- </xsl:attribute>
2988
- </xsl:if>
2989
- <xsl:if test="$width_min = 0">
2990
- <xsl:attribute name="width_min">1</xsl:attribute>
3097
+ <!-- find table by id in the file 'table_widths' and get all Nth `<column>...</column> -->
3098
+ <xsl:value-of select="$table_widths_from_if_calculated//table[@id = $parent_table_id]/column[number($parent_table_column_number)]"/>
2991
3099
  </xsl:if>
2992
-
2993
- <xsl:apply-templates select="node()" mode="determine_cell_widths"/>
2994
-
2995
- </xsl:copy>
2996
- </xsl:template><xsl:template name="add_width">
2997
- <xsl:variable name="p_text"><xsl:apply-templates select="." mode="td_text"/></xsl:variable>
2998
- <xsl:variable name="p_text_len_" select="string-length(normalize-space($p_text))"/>
2999
-
3000
- <xsl:variable name="p_text_len">
3001
- <xsl:choose>
3002
- <xsl:when test="normalize-space(translate($p_text, concat($upper,'0123456789'), '')) = ''"> <!-- english word in CAPITAL letters -->
3003
- <xsl:value-of select="$p_text_len_ * 1.5"/>
3004
- </xsl:when>
3005
- <xsl:otherwise><xsl:value-of select="$p_text_len_"/></xsl:otherwise>
3006
- </xsl:choose>
3007
3100
  </xsl:variable>
3101
+ <xsl:variable name="parent_table_page-width" select="normalize-space($parent_table_page-width_)"/>
3008
3102
 
3009
- <xsl:variable name="math_addon_text">
3010
- <xsl:for-each select=".//*[local-name() = 'math']">
3011
- <xsl:apply-templates mode="td_text"/>
3012
- </xsl:for-each>
3013
- </xsl:variable>
3014
- <xsl:variable name="math_addon_length" select="string-length(normalize-space($math_addon_text)) * 0.2"/> <!-- plus 20% -->
3103
+ <!-- get current table id -->
3104
+ <xsl:variable name="table_id" select="@id"/>
3105
+
3106
+ <xsl:choose>
3107
+ <xsl:when test="$parent_table_id = '' or $parent_table_page-width = ''">
3108
+ <!-- find table by id in the file 'table_widths' and get all `<column>...</column> -->
3109
+ <xsl:copy-of select="$table_widths_from_if_calculated//table[@id = $table_id]/node()"/>
3110
+ </xsl:when>
3111
+ <xsl:otherwise>
3112
+ <!-- recalculate columns width based on parent table width -->
3113
+ <xsl:for-each select="$table_widths_from_if//table[@id = $table_id]">
3114
+ <xsl:call-template name="calculate-column-widths-autolayout-algorithm">
3115
+ <xsl:with-param name="parent_table_page-width" select="$parent_table_page-width"/> <!-- padding-left = 2mm = 50000-->
3116
+ </xsl:call-template>
3117
+ </xsl:for-each>
3118
+ </xsl:otherwise>
3119
+ </xsl:choose>
3015
3120
 
3016
- <width><xsl:value-of select="$p_text_len + $math_addon_length"/></width>
3017
3121
  </xsl:template><xsl:template match="@*|node()" mode="determine_cell_widths-if">
3018
3122
  <xsl:copy>
3019
3123
  <xsl:apply-templates select="@*|node()" mode="determine_cell_widths-if"/>
@@ -3061,12 +3165,18 @@
3061
3165
  <fo:table-row>
3062
3166
  <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">
3063
3167
 
3064
- <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']">
3065
- <xsl:with-param name="continued">true</xsl:with-param>
3066
- </xsl:apply-templates>
3067
3168
 
3068
3169
 
3069
3170
 
3171
+ <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']">
3172
+ <xsl:with-param name="continued">true</xsl:with-param>
3173
+ </xsl:apply-templates>
3174
+
3175
+
3176
+
3177
+
3178
+
3179
+
3070
3180
  </fo:table-cell>
3071
3181
  </fo:table-row>
3072
3182
  </xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
@@ -3106,77 +3216,91 @@
3106
3216
  </xsl:choose>
3107
3217
  </xsl:variable>
3108
3218
 
3109
- <fo:table keep-with-previous="always">
3110
- <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
3111
- <xsl:variable name="name" select="local-name()"/>
3219
+
3220
+ <xsl:variable name="tableWithNotesAndFootnotes">
3221
+
3222
+ <fo:table keep-with-previous="always">
3223
+ <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
3224
+ <xsl:variable name="name" select="local-name()"/>
3225
+ <xsl:choose>
3226
+ <xsl:when test="$name = 'border-top'">
3227
+ <xsl:attribute name="{$name}">0pt solid black</xsl:attribute>
3228
+ </xsl:when>
3229
+ <xsl:when test="$name = 'border'">
3230
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3231
+ <xsl:attribute name="border-top">0pt solid black</xsl:attribute>
3232
+ </xsl:when>
3233
+ <xsl:otherwise>
3234
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3235
+ </xsl:otherwise>
3236
+ </xsl:choose>
3237
+ </xsl:for-each>
3238
+
3239
+
3240
+
3112
3241
  <xsl:choose>
3113
- <xsl:when test="$name = 'border-top'">
3114
- <xsl:attribute name="{$name}">0pt solid black</xsl:attribute>
3115
- </xsl:when>
3116
- <xsl:when test="$name = 'border'">
3117
- <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3118
- <xsl:attribute name="border-top">0pt solid black</xsl:attribute>
3242
+ <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
3243
+ <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
3244
+ <fo:table-column column-width="{@width}"/>
3245
+ </xsl:for-each>
3119
3246
  </xsl:when>
3120
3247
  <xsl:otherwise>
3121
- <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3248
+ <!-- $colwidths=<xsl:copy-of select="$colwidths"/> -->
3249
+ <xsl:call-template name="insertTableColumnWidth">
3250
+ <xsl:with-param name="colwidths" select="$colwidths"/>
3251
+ </xsl:call-template>
3122
3252
  </xsl:otherwise>
3123
3253
  </xsl:choose>
3124
- </xsl:for-each>
3125
-
3126
-
3127
-
3128
- <xsl:choose>
3129
- <xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
3130
- <xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
3131
- <fo:table-column column-width="{@width}"/>
3132
- </xsl:for-each>
3133
- </xsl:when>
3134
- <xsl:otherwise>
3135
- <!-- $colwidths=<xsl:copy-of select="$colwidths"/> -->
3136
- <xsl:call-template name="insertTableColumnWidth">
3137
- <xsl:with-param name="colwidths" select="$colwidths"/>
3138
- </xsl:call-template>
3139
- </xsl:otherwise>
3140
- </xsl:choose>
3141
-
3142
- <fo:table-body>
3143
- <fo:table-row>
3144
- <fo:table-cell xsl:use-attribute-sets="table-footer-cell-style" number-columns-spanned="{$cols-count}">
3145
-
3146
-
3254
+
3255
+ <fo:table-body>
3256
+ <fo:table-row>
3257
+ <fo:table-cell xsl:use-attribute-sets="table-footer-cell-style" number-columns-spanned="{$cols-count}">
3258
+
3259
+
3147
3260
 
3148
-
3149
-
3150
- <!-- fn will be processed inside 'note' processing -->
3151
-
3152
-
3153
-
3154
-
3155
-
3156
-
3157
- <!-- for BSI (not PAS) display Notes before footnotes -->
3158
-
3159
-
3160
- <!-- except gb and bsi -->
3161
-
3162
- <xsl:apply-templates select="../*[local-name()='note']"/>
3163
3261
 
3164
-
3165
-
3166
- <!-- horizontal row separator -->
3167
-
3168
-
3169
- <!-- fn processing -->
3170
- <xsl:call-template name="table_fn_display"/>
3171
-
3172
- <!-- for PAS display Notes after footnotes -->
3173
-
3174
-
3175
- </fo:table-cell>
3176
- </fo:table-row>
3177
- </fo:table-body>
3178
-
3179
- </fo:table>
3262
+
3263
+ <!-- fn will be processed inside 'note' processing -->
3264
+
3265
+
3266
+
3267
+
3268
+
3269
+
3270
+ <!-- for BSI (not PAS) display Notes before footnotes -->
3271
+
3272
+
3273
+ <!-- except gb and bsi -->
3274
+
3275
+ <xsl:apply-templates select="../*[local-name()='note']"/>
3276
+
3277
+
3278
+
3279
+ <!-- horizontal row separator -->
3280
+
3281
+
3282
+ <!-- fn processing -->
3283
+
3284
+ <xsl:call-template name="table_fn_display"/>
3285
+
3286
+
3287
+
3288
+ <!-- for PAS display Notes after footnotes -->
3289
+
3290
+
3291
+ </fo:table-cell>
3292
+ </fo:table-row>
3293
+ </fo:table-body>
3294
+
3295
+ </fo:table>
3296
+ </xsl:variable>
3297
+
3298
+ <xsl:if test="normalize-space($tableWithNotesAndFootnotes) != ''">
3299
+ <xsl:copy-of select="$tableWithNotesAndFootnotes"/>
3300
+ </xsl:if>
3301
+
3302
+
3303
+
3180
3304
  </xsl:if>
3181
3305
  </xsl:template><xsl:template match="*[local-name()='tbody']">
3182
3306
 
@@ -3265,6 +3389,9 @@
3265
3389
 
3266
3390
 
3267
3391
 
3392
+
3393
+
3394
+
3268
3395
 
3269
3396
 
3270
3397
  <xsl:call-template name="setTableRowAttributes"/>
@@ -3284,6 +3411,8 @@
3284
3411
 
3285
3412
 
3286
3413
 
3414
+
3415
+
3287
3416
  <xsl:call-template name="setTableRowAttributes"/>
3288
3417
  <xsl:apply-templates/>
3289
3418
  </fo:table-row>
@@ -3365,6 +3494,8 @@
3365
3494
 
3366
3495
 
3367
3496
 
3497
+
3498
+
3368
3499
 
3369
3500
 
3370
3501
 
@@ -3436,7 +3567,11 @@
3436
3567
 
3437
3568
  <xsl:variable name="gen_id" select="generate-id(.)"/>
3438
3569
  <xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
3439
- <xsl:variable name="reference" select="@reference"/>
3570
+ <xsl:variable name="reference_">
3571
+ <xsl:value-of select="@reference"/>
3572
+ <xsl:if test="normalize-space(@reference) = ''"><xsl:value-of select="$gen_id"/></xsl:if>
3573
+ </xsl:variable>
3574
+ <xsl:variable name="reference" select="normalize-space($reference_)"/>
3440
3575
  <!-- fn sequence number in document -->
3441
3576
  <xsl:variable name="current_fn_number">
3442
3577
  <xsl:choose>
@@ -3456,6 +3591,7 @@
3456
3591
  <xsl:variable name="footnote_inline">
3457
3592
  <fo:inline xsl:use-attribute-sets="fn-num-style">
3458
3593
 
3594
+
3459
3595
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
3460
3596
  <xsl:value-of select="$current_fn_number_text"/>
3461
3597
  </fo:basic-link>
@@ -3477,8 +3613,12 @@
3477
3613
  <fo:block xsl:use-attribute-sets="fn-body-style">
3478
3614
 
3479
3615
 
3616
+
3480
3617
  <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
3481
3618
 
3619
+
3620
+
3621
+
3482
3622
  <xsl:value-of select="$current_fn_number_text"/>
3483
3623
  </fo:inline>
3484
3624
  <xsl:apply-templates/>
@@ -3511,7 +3651,7 @@
3511
3651
  <xsl:copy-of select="node()"/>
3512
3652
  </fn>
3513
3653
  </xsl:for-each>
3514
- <xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='preface']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='sections']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='annex'] | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*">
3654
+ <xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='boilerplate']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='preface']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='sections']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='annex'] | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*">
3515
3655
  <xsl:sort select="@displayorder" data-type="number"/>
3516
3656
  <xsl:for-each select=".//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] | .//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3517
3657
  <!-- copy unique fn -->
@@ -3793,6 +3933,11 @@
3793
3933
 
3794
3934
  <xsl:attribute name="margin-left">7mm</xsl:attribute>
3795
3935
 
3936
+
3937
+ <xsl:if test="ancestor::*[local-name() = 'dd' or local-name() = 'td']">
3938
+ <xsl:attribute name="margin-top">0</xsl:attribute>
3939
+ </xsl:if>
3940
+
3796
3941
  <fo:block>
3797
3942
 
3798
3943
 
@@ -3800,6 +3945,9 @@
3800
3945
  <xsl:attribute name="margin-left">-3.5mm</xsl:attribute>
3801
3946
 
3802
3947
 
3948
+ <xsl:apply-templates select="*[local-name() = 'name']">
3949
+ <xsl:with-param name="process">true</xsl:with-param>
3950
+ </xsl:apply-templates>
3803
3951
 
3804
3952
  <xsl:if test="$isGenerateTableIF = 'true'">
3805
3953
  <!-- to determine start of table -->
@@ -3822,6 +3970,7 @@
3822
3970
  </xsl:choose>
3823
3971
 
3824
3972
 
3973
+
3825
3974
  <xsl:choose>
3826
3975
  <xsl:when test="$isGenerateTableIF = 'true'">
3827
3976
  <!-- generate IF for table widths -->
@@ -3950,6 +4099,18 @@
3950
4099
  </xsl:if> <!-- END: a few components -->
3951
4100
  </fo:block-container>
3952
4101
  </fo:block-container>
4102
+
4103
+ <xsl:if test="$isGenerateTableIF = 'true'"> <!-- process nested 'dl' -->
4104
+ <xsl:apply-templates select="*[local-name() = 'dd']/*[local-name() = 'dl']"/>
4105
+ </xsl:if>
4106
+
4107
+ </xsl:template><xsl:template match="*[local-name() = 'dl']/*[local-name() = 'name']">
4108
+ <xsl:param name="process">false</xsl:param>
4109
+ <xsl:if test="$process = 'true'">
4110
+ <fo:block xsl:use-attribute-sets="dl-name-style">
4111
+ <xsl:apply-templates/>
4112
+ </fo:block>
4113
+ </xsl:if>
3953
4114
  </xsl:template><xsl:template name="setColumnWidth_dl">
3954
4115
  <xsl:param name="colwidths"/>
3955
4116
  <xsl:param name="maxlength_dt"/>
@@ -3958,6 +4119,11 @@
3958
4119
  <!-- <colwidths><xsl:copy-of select="$colwidths"/></colwidths> -->
3959
4120
 
3960
4121
  <xsl:choose>
4122
+ <xsl:when test="xalan:nodeset($colwidths)/autolayout">
4123
+ <xsl:call-template name="insertTableColumnWidth">
4124
+ <xsl:with-param name="colwidths" select="$colwidths"/>
4125
+ </xsl:call-template>
4126
+ </xsl:when>
3961
4127
  <xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
3962
4128
  <fo:table-column column-width="50%"/>
3963
4129
  <fo:table-column column-width="50%"/>
@@ -4210,12 +4376,24 @@
4210
4376
  </td>
4211
4377
  <td>
4212
4378
 
4213
- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()"/>
4379
+ <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
4380
+
4381
+ <!-- get paragraphs from nested 'dl' -->
4382
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
4383
+
4214
4384
 
4215
4385
  </td>
4216
4386
  </tr>
4217
4387
 
4218
- </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if"/><xsl:template match="*[local-name()='em']">
4388
+ </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if"/><xsl:template match="*[local-name()='dl']" mode="dl_if_nested">
4389
+ <xsl:for-each select="*[local-name() = 'dt']">
4390
+ <p>
4391
+ <xsl:copy-of select="node()"/>
4392
+ <xsl:text> </xsl:text>
4393
+ <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'p']/node()"/>
4394
+ </p>
4395
+ </xsl:for-each>
4396
+ </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if_nested"/><xsl:template match="*[local-name()='em']">
4219
4397
  <fo:inline font-style="italic">
4220
4398
  <xsl:apply-templates/>
4221
4399
  </fo:inline>
@@ -4246,7 +4424,7 @@
4246
4424
 
4247
4425
 
4248
4426
  10
4249
-
4427
+ <!-- 10 -->
4250
4428
 
4251
4429
 
4252
4430
 
@@ -5118,6 +5296,13 @@
5118
5296
  </xsl:variable>
5119
5297
  <fo:inline xsl:use-attribute-sets="link-style">
5120
5298
 
5299
+ <xsl:if test="starts-with(normalize-space(@target), 'mailto:')">
5300
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
5301
+ </xsl:if>
5302
+
5303
+
5304
+
5305
+
5121
5306
 
5122
5307
 
5123
5308
 
@@ -5335,6 +5520,7 @@
5335
5520
 
5336
5521
 
5337
5522
 
5523
+
5338
5524
  <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
5339
5525
  <!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
5340
5526
  <xsl:if test="*[not(local-name()='name')][1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
@@ -5357,6 +5543,7 @@
5357
5543
  <xsl:otherwise>
5358
5544
 
5359
5545
 
5546
+
5360
5547
  </xsl:otherwise>
5361
5548
  </xsl:choose>
5362
5549
  </xsl:variable>
@@ -5374,6 +5561,7 @@
5374
5561
  <xsl:otherwise>
5375
5562
 
5376
5563
 
5564
+
5377
5565
  </xsl:otherwise>
5378
5566
  </xsl:choose>
5379
5567
  </xsl:variable>
@@ -5382,7 +5570,19 @@
5382
5570
  <xsl:value-of select="$suffix"/>
5383
5571
  </xsl:if>
5384
5572
  </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'p']">
5385
- <fo:inline><xsl:apply-templates/></fo:inline>
5573
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
5574
+ <xsl:choose>
5575
+ <xsl:when test="$num = 1"> <!-- first paragraph renders in the same line as titlenote name -->
5576
+ <fo:inline xsl:use-attribute-sets="termnote-p-style">
5577
+ <xsl:apply-templates/>
5578
+ </fo:inline>
5579
+ </xsl:when>
5580
+ <xsl:otherwise>
5581
+ <fo:block xsl:use-attribute-sets="termnote-p-style">
5582
+ <xsl:apply-templates/>
5583
+ </fo:block>
5584
+ </xsl:otherwise>
5585
+ </xsl:choose>
5386
5586
  </xsl:template><xsl:template match="*[local-name() = 'terms']">
5387
5587
  <!-- <xsl:message>'terms' <xsl:number/> processing...</xsl:message> -->
5388
5588
  <fo:block id="{@id}">
@@ -6137,6 +6337,9 @@
6137
6337
  <fo:block xsl:use-attribute-sets="figure-name-style">
6138
6338
 
6139
6339
 
6340
+
6341
+
6342
+
6140
6343
  <xsl:apply-templates/>
6141
6344
  </fo:block>
6142
6345
  </xsl:if>
@@ -6197,9 +6400,9 @@
6197
6400
  <xsl:apply-templates/>
6198
6401
  </xsl:otherwise>
6199
6402
  </xsl:choose>
6200
- </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() = 'xref']" mode="contents">
6403
+ </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() = 'xref'] | *[local-name() = 'eref']" mode="contents">
6201
6404
  <xsl:value-of select="."/>
6202
- </xsl:template><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
6405
+ </xsl:template><xsl:template match="*[local-name() = 'review']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
6203
6406
  <xsl:text> </xsl:text>
6204
6407
  </xsl:template><xsl:template match="*[local-name() = 'strong']" mode="contents_item">
6205
6408
  <xsl:copy>
@@ -6270,9 +6473,12 @@
6270
6473
 
6271
6474
 
6272
6475
  10
6476
+ <!-- 9 -->
6273
6477
 
6274
6478
 
6275
-
6479
+ <!-- <xsl:if test="$namespace = 'ieee'">
6480
+ <xsl:if test="$doctype = 'standard' and $stage = 'published'">8</xsl:if>
6481
+ </xsl:if> -->
6276
6482
 
6277
6483
 
6278
6484
 
@@ -6354,7 +6560,7 @@
6354
6560
  <xsl:for-each select="xalan:nodeset($text_step4)/node()">
6355
6561
  <xsl:choose>
6356
6562
  <xsl:when test="local-name() = 'interspers'"> <!-- word with length more than 30 will be interspersed with zero-width space -->
6357
- <xsl:call-template name="interspers">
6563
+ <xsl:call-template name="interspers-java">
6358
6564
  <xsl:with-param name="str" select="."/>
6359
6565
  </xsl:call-template>
6360
6566
  </xsl:when>
@@ -6404,6 +6610,10 @@
6404
6610
  <xsl:with-param name="char" select="$char"/>
6405
6611
  </xsl:call-template>
6406
6612
  </xsl:if>
6613
+ </xsl:template><xsl:template name="interspers-java">
6614
+ <xsl:param name="str"/>
6615
+ <xsl:param name="char" select="$zero_width_space"/>
6616
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($str),'([^ -.:=_—])',concat('$1', $char))"/> <!-- insert $char after each char excep space, - . : = _ etc. -->
6407
6617
  </xsl:template><xsl:template match="*" mode="syntax_highlight">
6408
6618
  <xsl:apply-templates mode="syntax_highlight"/>
6409
6619
  </xsl:template><xsl:variable name="syntax_highlight_styles_">
@@ -6713,10 +6923,14 @@
6713
6923
  </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'p']">
6714
6924
  <xsl:variable name="element">inline
6715
6925
 
6926
+
6716
6927
  </xsl:variable>
6717
6928
  <xsl:choose>
6718
6929
  <xsl:when test="contains($element, 'block')">
6719
6930
  <fo:block xsl:use-attribute-sets="example-p-style">
6931
+
6932
+
6933
+
6720
6934
  <xsl:apply-templates/>
6721
6935
  </fo:block>
6722
6936
  </xsl:when>
@@ -6824,6 +7038,7 @@
6824
7038
  </xsl:if>
6825
7039
  <fo:block xsl:use-attribute-sets="example-p-style">
6826
7040
 
7041
+
6827
7042
  <xsl:apply-templates/>
6828
7043
  </fo:block>
6829
7044
  </fo:block-container>
@@ -6980,6 +7195,8 @@
6980
7195
 
6981
7196
 
6982
7197
 
7198
+
7199
+
6983
7200
  <fo:basic-link fox:alt-text="{@citeas}">
6984
7201
  <xsl:if test="normalize-space(@citeas) = ''">
6985
7202
  <xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
@@ -7054,6 +7271,7 @@
7054
7271
 
7055
7272
 
7056
7273
 
7274
+
7057
7275
  </xsl:variable>
7058
7276
 
7059
7277
  <xsl:variable name="padding-right">
@@ -7351,6 +7569,11 @@
7351
7569
  </xsl:otherwise>
7352
7570
  </xsl:choose>
7353
7571
  </xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
7572
+
7573
+ <xsl:apply-templates select="*[local-name() = 'name']">
7574
+ <xsl:with-param name="process">true</xsl:with-param>
7575
+ </xsl:apply-templates>
7576
+
7354
7577
  <fo:list-block xsl:use-attribute-sets="list-style">
7355
7578
 
7356
7579
 
@@ -7361,12 +7584,23 @@
7361
7584
 
7362
7585
 
7363
7586
 
7587
+ <xsl:if test="*[local-name() = 'name']">
7588
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
7589
+ </xsl:if>
7590
+
7364
7591
  <xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
7365
7592
  </fo:list-block>
7366
7593
  <!-- <xsl:for-each select="./iho:note">
7367
7594
  <xsl:call-template name="note"/>
7368
7595
  </xsl:for-each> -->
7369
7596
  <xsl:apply-templates select="./*[local-name() = 'note']"/>
7597
+ </xsl:template><xsl:template match="*[local-name() = 'ol' or local-name() = 'ul']/*[local-name() = 'name']">
7598
+ <xsl:param name="process">false</xsl:param>
7599
+ <xsl:if test="$process = 'true'">
7600
+ <fo:block xsl:use-attribute-sets="list-name-style">
7601
+ <xsl:apply-templates/>
7602
+ </fo:block>
7603
+ </xsl:if>
7370
7604
  </xsl:template><xsl:template match="*[local-name()='li']">
7371
7605
  <fo:list-item xsl:use-attribute-sets="list-item-style">
7372
7606
  <xsl:copy-of select="@id"/>
@@ -7378,6 +7612,8 @@
7378
7612
 
7379
7613
 
7380
7614
 
7615
+
7616
+
7381
7617
  <!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
7382
7618
  <xsl:if test="*[1][count(node()[normalize-space() != '']) = 1 and *[local-name() = 'add']]">
7383
7619
  <xsl:call-template name="append_add-style"/>
@@ -7629,15 +7865,16 @@
7629
7865
  </xsl:template><xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
7630
7866
 
7631
7867
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-normative-list-style">
7868
+
7632
7869
  <fo:list-item>
7633
7870
  <fo:list-item-label end-indent="label-end()">
7634
7871
  <fo:block>
7635
7872
  <fo:inline>
7636
7873
 
7637
7874
  <xsl:value-of select="*[local-name() = 'docidentifier'][@type = 'metanorma-ordinal']"/>
7638
- <xsl:if test="not(*[local-name() = 'docidentifier'][@type = 'metanorma-ordinal'])">
7639
- <xsl:number format="[1]"/>
7640
- </xsl:if>
7875
+ <xsl:if test="not(*[local-name() = 'docidentifier'][@type = 'metanorma-ordinal'])">
7876
+ <xsl:number format="[1]" count="*[local-name()='bibitem'][not(@hidden = 'true')]"/>
7877
+ </xsl:if>
7641
7878
 
7642
7879
  </fo:inline>
7643
7880
  </fo:block>
@@ -7651,7 +7888,7 @@
7651
7888
  </fo:list-block>
7652
7889
 
7653
7890
 
7654
- </xsl:template><xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" priority="2">
7891
+ </xsl:template><xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" name="bibitem_non_normative" priority="2">
7655
7892
 
7656
7893
 
7657
7894
  <xsl:call-template name="bibitem"/>
@@ -7661,107 +7898,7 @@
7661
7898
 
7662
7899
 
7663
7900
  <!-- start IHO bibitem processing -->
7664
- <!-- IHO documents:
7665
- "[1] S57 edition 3.1: IHO Transfer Standard for Digital Hydrographic Data, International Hydrographic Organization (www.iho.int)”
7666
- [{number}] {docID} edition {edition}: {title}, {author/organization}
7667
- Non-IHO documents:
7668
- Provide title and publisher -->
7669
- <xsl:choose>
7670
- <xsl:when test="iho:formattedref">
7671
- <xsl:apply-templates select="iho:formattedref"/>
7672
- </xsl:when>
7673
- <xsl:otherwise>
7674
- <xsl:choose>
7675
- <!-- IHO documents -->
7676
- <!-- {docID} edition {edition}: {title}, {author/organization} -->
7677
- <xsl:when test="iho:docidentifier[1]/@type='IHO'">
7678
- <xsl:value-of select="iho:docidentifier[1]"/>
7679
- <xsl:apply-templates select="iho:edition"/>
7680
- <xsl:if test="iho:title or iho:contributor or iho:url">
7681
- <xsl:text>: </xsl:text>
7682
- </xsl:if>
7683
- </xsl:when>
7684
-
7685
- <!-- Non-IHO documents -->
7686
- <!-- title and publisher -->
7687
- <xsl:otherwise>
7688
- <xsl:variable name="docID">
7689
- <xsl:call-template name="processBibitemDocId"/>
7690
- </xsl:variable>
7691
- <xsl:value-of select="normalize-space($docID)"/>
7692
- <xsl:if test="normalize-space($docID) != ''"><xsl:text>: </xsl:text></xsl:if>
7693
- </xsl:otherwise>
7694
- </xsl:choose>
7695
-
7696
- <xsl:choose>
7697
- <xsl:when test="iho:title[@type = 'main' and @language = 'en']">
7698
- <xsl:apply-templates select="iho:title[@type = 'main' and @language = 'en']"/>
7699
- </xsl:when>
7700
- <xsl:otherwise>
7701
- <xsl:apply-templates select="iho:title"/>
7702
- </xsl:otherwise>
7703
- </xsl:choose>
7704
-
7705
- <xsl:if test="iho:title and iho:contributor">
7706
- <xsl:text>, </xsl:text>
7707
- </xsl:if>
7708
-
7709
- <xsl:variable name="authors">
7710
- <xsl:choose>
7711
- <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
7712
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
7713
- <xsl:copy-of select="."/>
7714
- </xsl:for-each>
7715
- </xsl:when>
7716
- <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='editor']">
7717
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='editor']">
7718
- <xsl:copy-of select="."/>
7719
- </xsl:for-each>
7720
- </xsl:when>
7721
- <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='publisher'][*[local-name() = 'organization']]">
7722
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='publisher'][*[local-name() = 'organization']]">
7723
- <xsl:copy>
7724
- <xsl:choose>
7725
- <xsl:when test="position() != 1 and position() != last()">, </xsl:when>
7726
- <xsl:when test="position() != 1 and position() = last()"> and </xsl:when>
7727
- </xsl:choose>
7728
- <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
7729
- </xsl:copy>
7730
- </xsl:for-each>
7731
- </xsl:when>
7732
- </xsl:choose>
7733
- </xsl:variable>
7734
-
7735
- <xsl:for-each select="xalan:nodeset($authors)/*">
7736
- <xsl:choose>
7737
- <xsl:when test="not(*[local-name() = 'role'])"><!-- publisher organisation -->
7738
- <xsl:value-of select="."/>
7739
- </xsl:when>
7740
- <xsl:otherwise> <!-- author, editor -->
7741
- <xsl:choose>
7742
- <xsl:when test="*[local-name() = 'organization']/*[local-name() = 'name']">
7743
- <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
7744
- </xsl:when>
7745
- <xsl:otherwise>
7746
- <xsl:for-each select="*[local-name() = 'person']">
7747
- <xsl:variable name="author">
7748
- <xsl:call-template name="processPersonalAuthor"/>
7749
- </xsl:variable>
7750
- <xsl:value-of select="xalan:nodeset($author)/author"/>
7751
- </xsl:for-each>
7752
- </xsl:otherwise>
7753
- </xsl:choose>
7754
- </xsl:otherwise>
7755
- </xsl:choose>
7756
- <xsl:if test="*[local-name() = 'organization']/*[local-name() = 'name'] and position() != last()">
7757
- <xsl:text>, </xsl:text>
7758
- </xsl:if>
7759
- </xsl:for-each>
7760
-
7761
- <xsl:apply-templates select="*[local-name() = 'uri'][1]"/>
7762
-
7763
- </xsl:otherwise>
7764
- </xsl:choose>
7901
+ <xsl:apply-templates select="iho:formattedref"/>
7765
7902
  <!-- end IHO bibitem processing -->
7766
7903
 
7767
7904
  </xsl:template><xsl:template name="processBibitemDocId">
@@ -8066,12 +8203,16 @@
8066
8203
  <fo:block-container id="{@id}" xsl:use-attribute-sets="admonition-style">
8067
8204
 
8068
8205
 
8206
+
8207
+
8069
8208
 
8070
8209
 
8071
8210
 
8072
8211
  <fo:block-container xsl:use-attribute-sets="admonition-container-style">
8073
8212
 
8074
8213
 
8214
+
8215
+
8075
8216
  <fo:block xsl:use-attribute-sets="admonition-name-style">
8076
8217
  <xsl:call-template name="displayAdmonitionName"/>
8077
8218
  </fo:block>
@@ -8084,25 +8225,32 @@
8084
8225
  </fo:block-container>
8085
8226
 
8086
8227
  </xsl:template><xsl:template name="displayAdmonitionName">
8087
-
8228
+ <xsl:param name="sep"/> <!-- Example: ' - ' -->
8229
+ <!-- <xsl:choose>
8230
+ <xsl:when test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
8231
+ <xsl:choose>
8232
+ <xsl:when test="@type='important'"><xsl:apply-templates select="@type"/></xsl:when>
8233
+ <xsl:otherwise>
8234
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
8235
+ </xsl:otherwise>
8236
+ </xsl:choose>
8237
+ </xsl:when>
8238
+ <xsl:otherwise>
8088
8239
  <xsl:apply-templates select="*[local-name() = 'name']"/>
8089
8240
  <xsl:if test="not(*[local-name() = 'name'])">
8090
8241
  <xsl:apply-templates select="@type"/>
8091
8242
  </xsl:if>
8092
-
8093
- </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'name']">
8094
- <xsl:apply-templates/>
8095
- </xsl:template><xsl:template match="*[local-name() = 'admonition']/@type">
8096
- <xsl:variable name="admonition_type_">
8097
- <xsl:call-template name="getLocalizedString">
8098
- <xsl:with-param name="key">admonition.<xsl:value-of select="."/></xsl:with-param>
8099
- </xsl:call-template>
8243
+ </xsl:otherwise>
8244
+ </xsl:choose> -->
8245
+ <xsl:variable name="name">
8246
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
8100
8247
  </xsl:variable>
8101
- <xsl:variable name="admonition_type" select="normalize-space(java:toUpperCase(java:java.lang.String.new($admonition_type_)))"/>
8102
- <xsl:value-of select="$admonition_type"/>
8103
- <xsl:if test="$admonition_type = ''">
8104
- <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(.))"/>
8248
+ <xsl:copy-of select="$name"/>
8249
+ <xsl:if test="normalize-space($name) != ''">
8250
+ <xsl:value-of select="$sep"/>
8105
8251
  </xsl:if>
8252
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'name']">
8253
+ <xsl:apply-templates/>
8106
8254
  </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'p']">
8107
8255
  <!-- processing for admonition/p found in the template for 'p' -->
8108
8256
  <xsl:call-template name="paragraph"/>
@@ -8268,6 +8416,8 @@
8268
8416
  </xsl:when>
8269
8417
  <xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
8270
8418
  </xsl:choose>
8419
+ </xsl:template><xsl:template match="*[local-name() = 'lang_none']">
8420
+ <fo:inline xml:lang="none"><xsl:value-of select="."/></fo:inline>
8271
8421
  </xsl:template><xsl:template name="printEdition">
8272
8422
  <xsl:variable name="edition_i18n" select="normalize-space((//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']/*[local-name() = 'edition'][normalize-space(@language) != ''])"/>
8273
8423
  <xsl:text> </xsl:text>
@@ -8374,6 +8524,27 @@
8374
8524
  </xsl:when>
8375
8525
  <xsl:otherwise><xsl:value-of select="$monthStr_"/></xsl:otherwise>
8376
8526
  </xsl:choose>
8527
+ </xsl:template><xsl:template name="getMonthLocalizedByNum">
8528
+ <xsl:param name="num"/>
8529
+ <xsl:variable name="monthStr">
8530
+ <xsl:choose>
8531
+ <xsl:when test="$num = '01'">january</xsl:when>
8532
+ <xsl:when test="$num = '02'">february</xsl:when>
8533
+ <xsl:when test="$num = '03'">march</xsl:when>
8534
+ <xsl:when test="$num = '04'">april</xsl:when>
8535
+ <xsl:when test="$num = '05'">may</xsl:when>
8536
+ <xsl:when test="$num = '06'">june</xsl:when>
8537
+ <xsl:when test="$num = '07'">july</xsl:when>
8538
+ <xsl:when test="$num = '08'">august</xsl:when>
8539
+ <xsl:when test="$num = '09'">september</xsl:when>
8540
+ <xsl:when test="$num = '10'">october</xsl:when>
8541
+ <xsl:when test="$num = '11'">november</xsl:when>
8542
+ <xsl:when test="$num = '12'">december</xsl:when>
8543
+ </xsl:choose>
8544
+ </xsl:variable>
8545
+ <xsl:call-template name="getLocalizedString">
8546
+ <xsl:with-param name="key">month_<xsl:value-of select="$monthStr"/></xsl:with-param>
8547
+ </xsl:call-template>
8377
8548
  </xsl:template><xsl:template name="insertKeywords">
8378
8549
  <xsl:param name="sorting" select="'true'"/>
8379
8550
  <xsl:param name="charAtEnd" select="'.'"/>
@@ -8445,7 +8616,7 @@
8445
8616
  <dc:description>
8446
8617
  <xsl:variable name="abstract">
8447
8618
 
8448
- <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
8619
+ <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()[not(ancestor::*[local-name() = 'title'])]"/>
8449
8620
 
8450
8621
  </xsl:variable>
8451
8622
  <xsl:value-of select="normalize-space($abstract)"/>
@@ -8574,6 +8745,7 @@
8574
8745
 
8575
8746
 
8576
8747
 
8748
+
8577
8749
  <xsl:value-of select="document('')//*/namespace::iho"/>
8578
8750
 
8579
8751