metanorma-iso 2.0.0 → 2.0.1

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.
@@ -175,7 +175,7 @@
175
175
 
176
176
  <xsl:template match="/">
177
177
  <xsl:call-template name="namespaceCheck"/>
178
- <fo:root font-family="Cambria, Times New Roman, Cambria Math, Source Han Sans" font-size="11pt" xml:lang="{$lang}"> <!-- -->
178
+ <fo:root xsl:use-attribute-sets="root-style" xml:lang="{$lang}"> <!-- -->
179
179
  <xsl:if test="$lang = 'zh'">
180
180
  <xsl:attribute name="font-family">Source Han Sans, Times New Roman, Cambria Math</xsl:attribute>
181
181
  </xsl:if>
@@ -1341,10 +1341,7 @@
1341
1341
  <!-- ============================= -->
1342
1342
  <!-- CONTENTS -->
1343
1343
  <!-- ============================= -->
1344
- <xsl:template match="node()" mode="contents">
1345
- <xsl:apply-templates mode="contents"/>
1346
- </xsl:template>
1347
-
1344
+
1348
1345
  <!-- element with title -->
1349
1346
  <xsl:template match="*[iso:title]" mode="contents">
1350
1347
  <xsl:variable name="level">
@@ -1368,7 +1365,7 @@
1368
1365
  <xsl:choose>
1369
1366
  <xsl:when test="ancestor-or-self::iso:annex and $level &gt;= 2">false</xsl:when>
1370
1367
  <xsl:when test="$section = '' and $type = 'clause'">false</xsl:when>
1371
- <xsl:when test="$level &lt;= 3">true</xsl:when>
1368
+ <xsl:when test="$level &lt;= $toc_level">true</xsl:when>
1372
1369
  <xsl:otherwise>false</xsl:otherwise>
1373
1370
  </xsl:choose>
1374
1371
  </xsl:variable>
@@ -1627,7 +1624,7 @@
1627
1624
  <!-- ====== -->
1628
1625
 
1629
1626
 
1630
- <xsl:template match="iso:p">
1627
+ <xsl:template match="iso:p" name="paragraph">
1631
1628
  <xsl:param name="inline" select="'false'"/>
1632
1629
  <xsl:variable name="previous-element" select="local-name(preceding-sibling::*[1])"/>
1633
1630
  <xsl:variable name="element-name">
@@ -1738,7 +1735,7 @@
1738
1735
  </xsl:variable>
1739
1736
  <fo:block line-height="1.1" role="H{$levelTerm}">
1740
1737
  <fo:block font-weight="bold" keep-with-next="always">
1741
- <xsl:apply-templates select="ancestor::iso:term[1]/iso:name" mode="presentation"/>
1738
+ <xsl:apply-templates select="ancestor::iso:term[1]/iso:name"/>
1742
1739
  </fo:block>
1743
1740
  <fo:block font-weight="bold" keep-with-next="always">
1744
1741
  <xsl:call-template name="setStyle_preferred"/>
@@ -1748,95 +1745,7 @@
1748
1745
  </xsl:template>
1749
1746
 
1750
1747
 
1751
- <xsl:template match="iso:references[@normative='true']">
1752
- <fo:block id="{@id}">
1753
- <xsl:apply-templates/>
1754
- </fo:block>
1755
- </xsl:template>
1756
-
1757
- <!-- <xsl:template match="iso:references[@id = '_bibliography']"> -->
1758
- <xsl:template match="iso:references[not(@normative='true')]">
1759
- <fo:block break-after="page"/>
1760
- <fo:block id="{@id}">
1761
- <xsl:apply-templates/>
1762
- </fo:block>
1763
- </xsl:template>
1764
-
1765
-
1766
- <xsl:template match="iso:bibitem">
1767
- <fo:block id="{@id}" margin-bottom="6pt">
1768
- <xsl:call-template name="processBibitem"/>
1769
- </fo:block>
1770
- </xsl:template>
1771
-
1772
-
1773
- <xsl:template match="iso:bibitem/iso:note" priority="2">
1774
- <fo:footnote>
1775
- <xsl:variable name="number">
1776
- <xsl:number level="any" count="iso:bibitem/iso:note"/>
1777
- </xsl:variable>
1778
- <fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
1779
- <fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
1780
- <xsl:value-of select="$number"/><xsl:text>)</xsl:text>
1781
- </fo:basic-link>
1782
- </fo:inline>
1783
- <fo:footnote-body>
1784
- <fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
1785
- <fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%" -->
1786
- <xsl:value-of select="$number"/><xsl:text>)</xsl:text>
1787
- </fo:inline>
1788
- <xsl:apply-templates/>
1789
- </fo:block>
1790
- </fo:footnote-body>
1791
- </fo:footnote>
1792
- </xsl:template>
1793
-
1794
- <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
1795
- <!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem"> -->
1796
- <xsl:template match="iso:references[not(@normative='true')]/iso:bibitem">
1797
- <fo:list-block margin-bottom="6pt" provisional-distance-between-starts="12mm">
1798
- <fo:list-item>
1799
- <fo:list-item-label end-indent="label-end()">
1800
- <fo:block>
1801
- <fo:inline id="{@id}">
1802
- <xsl:value-of select="iso:docidentifier[@type = 'metanorma-ordinal']"/>
1803
- <xsl:if test="not(iso:docidentifier[@type = 'metanorma-ordinal'])">
1804
- <xsl:number format="[1]"/>
1805
- </xsl:if>
1806
- </fo:inline>
1807
- </fo:block>
1808
- </fo:list-item-label>
1809
- <fo:list-item-body start-indent="body-start()">
1810
- <fo:block>
1811
- <xsl:call-template name="processBibitem"/>
1812
- </fo:block>
1813
- </fo:list-item-body>
1814
- </fo:list-item>
1815
- </fo:list-block>
1816
- </xsl:template>
1817
-
1818
- <!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> iso:references[not(@normative='true')]/ -->
1819
- <xsl:template match="iso:bibitem/iso:title">
1820
- <fo:inline font-style="italic">
1821
- <xsl:apply-templates/>
1822
- </fo:inline>
1823
- </xsl:template>
1824
-
1825
-
1826
- <xsl:template match="iso:admonition">
1827
- <fo:block margin-bottom="12pt" font-weight="bold"> <!-- text-align="center" -->
1828
- <xsl:variable name="type">
1829
- <xsl:call-template name="getLocalizedString">
1830
- <xsl:with-param name="key">admonition.<xsl:value-of select="@type"/></xsl:with-param>
1831
- </xsl:call-template>
1832
- </xsl:variable>
1833
- <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($type))"/>
1834
- <xsl:text> — </xsl:text>
1835
- <xsl:apply-templates/>
1836
- </fo:block>
1837
- </xsl:template>
1838
1748
 
1839
-
1840
1749
  <xsl:template match="iso:formula/iso:stem">
1841
1750
  <fo:block margin-top="6pt" margin-bottom="12pt">
1842
1751
  <fo:table table-layout="fixed" width="100%">
@@ -1851,7 +1760,7 @@
1851
1760
  </fo:table-cell>
1852
1761
  <fo:table-cell display-align="center">
1853
1762
  <fo:block text-align="right">
1854
- <xsl:apply-templates select="../iso:name" mode="presentation"/>
1763
+ <xsl:apply-templates select="../iso:name" mode="formula_number"/>
1855
1764
  </fo:block>
1856
1765
  </fo:table-cell>
1857
1766
  </fo:table-row>
@@ -2108,22 +2017,18 @@
2108
2017
  </xsl:template>
2109
2018
 
2110
2019
 
2111
- <xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="titles_">
2020
+ <xsl:variable name="titles_">
2112
2021
 
2113
2022
  <title-edition lang="en">
2114
2023
 
2115
- <xsl:text>Edition </xsl:text>
2116
-
2117
-
2024
+ <xsl:text>Edition </xsl:text>
2025
+
2118
2026
  </title-edition>
2119
2027
 
2120
2028
  <title-edition lang="fr">
2121
-
2122
- <xsl:text>Édition </xsl:text>
2123
-
2029
+ <xsl:text>Édition </xsl:text>
2124
2030
  </title-edition>
2125
2031
 
2126
-
2127
2032
  <!-- These titles of Table of contents renders different than determined in localized-strings -->
2128
2033
  <title-toc lang="en">
2129
2034
 
@@ -2131,10 +2036,13 @@
2131
2036
 
2132
2037
  </title-toc>
2133
2038
  <title-toc lang="fr">
2039
+ <xsl:text>Sommaire</xsl:text>
2040
+ </title-toc>
2041
+ <title-toc lang="zh">
2134
2042
 
2043
+ <xsl:text>Contents</xsl:text>
2044
+
2135
2045
  </title-toc>
2136
-
2137
-
2138
2046
 
2139
2047
  <title-descriptors lang="en">Descriptors</title-descriptors>
2140
2048
 
@@ -2154,12 +2062,8 @@
2154
2062
  </title-part>
2155
2063
  <title-part lang="zh">第 # 部分:</title-part>
2156
2064
 
2157
- <title-subpart lang="en">
2158
-
2159
- </title-subpart>
2160
- <title-subpart lang="fr">
2161
-
2162
- </title-subpart>
2065
+ <title-subpart lang="en">Sub-part #</title-subpart>
2066
+ <title-subpart lang="fr">Partie de sub #</title-subpart>
2163
2067
 
2164
2068
  <title-list-tables lang="en">List of Tables</title-list-tables>
2165
2069
 
@@ -2174,7 +2078,7 @@
2174
2078
  <title-continued lang="en">(continued)</title-continued>
2175
2079
  <title-continued lang="fr">(continué)</title-continued>
2176
2080
 
2177
- </xsl:variable><xsl:variable name="bibdata">
2081
+ </xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="bibdata">
2178
2082
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
2179
2083
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
2180
2084
  </xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
@@ -2203,6 +2107,23 @@
2203
2107
  </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="root-style">
2204
2108
 
2205
2109
 
2110
+
2111
+
2112
+
2113
+
2114
+
2115
+
2116
+ <xsl:attribute name="font-family">Cambria, Times New Roman, Cambria Math, Source Han Sans</xsl:attribute>
2117
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
2118
+
2119
+
2120
+
2121
+
2122
+
2123
+
2124
+
2125
+
2126
+
2206
2127
  </xsl:attribute-set><xsl:attribute-set name="link-style">
2207
2128
 
2208
2129
 
@@ -2212,19 +2133,29 @@
2212
2133
 
2213
2134
 
2214
2135
 
2136
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-container-style">
2137
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2138
+
2215
2139
  </xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
2216
2140
  <xsl:attribute name="white-space">pre</xsl:attribute>
2217
2141
  <xsl:attribute name="wrap-option">wrap</xsl:attribute>
2218
2142
  <xsl:attribute name="role">Code</xsl:attribute>
2219
2143
 
2144
+
2145
+
2146
+
2147
+
2148
+
2149
+
2150
+
2220
2151
  <xsl:attribute name="font-family">Courier New</xsl:attribute>
2221
2152
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2222
2153
 
2223
2154
 
2224
2155
 
2156
+
2225
2157
 
2226
2158
 
2227
-
2228
2159
 
2229
2160
 
2230
2161
 
@@ -2344,305 +2275,536 @@
2344
2275
 
2345
2276
  </xsl:attribute-set><xsl:variable name="table-border_">
2346
2277
 
2347
- </xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-name-style">
2348
- <xsl:attribute name="keep-with-next">always</xsl:attribute>
2349
-
2278
+ </xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-container-style">
2279
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2280
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2350
2281
 
2351
2282
 
2352
2283
 
2353
2284
 
2354
2285
 
2355
- <xsl:attribute name="font-size">11pt</xsl:attribute>
2356
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2357
- <xsl:attribute name="text-align">center</xsl:attribute>
2358
- <!-- <xsl:attribute name="margin-top">12pt</xsl:attribute> -->
2359
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2360
-
2361
2286
 
2362
2287
 
2363
2288
 
2364
-
2365
2289
 
2290
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2291
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
2292
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2366
2293
 
2367
2294
 
2368
2295
 
2369
- </xsl:attribute-set><xsl:attribute-set name="table-footer-cell-style">
2370
2296
 
2371
- </xsl:attribute-set><xsl:attribute-set name="appendix-style">
2372
-
2373
- <xsl:attribute name="font-size">12pt</xsl:attribute>
2374
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2375
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
2376
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2377
2297
 
2378
2298
 
2379
2299
 
2380
- </xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
2381
2300
 
2382
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2383
- <xsl:attribute name="margin-top">8pt</xsl:attribute>
2384
- <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2385
2301
 
2386
2302
 
2303
+
2387
2304
 
2388
- </xsl:attribute-set><xsl:attribute-set name="xref-style">
2389
2305
 
2306
+ </xsl:attribute-set><xsl:attribute-set name="table-style">
2307
+ <xsl:attribute name="table-omit-footer-at-break">true</xsl:attribute>
2308
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
2309
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2310
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2390
2311
 
2391
2312
 
2392
- <xsl:attribute name="color">blue</xsl:attribute>
2393
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
2394
2313
 
2395
2314
 
2396
2315
 
2397
- </xsl:attribute-set><xsl:attribute-set name="eref-style">
2398
2316
 
2399
2317
 
2400
2318
 
2401
2319
 
2320
+ <xsl:attribute name="border">1.5pt solid black</xsl:attribute>
2402
2321
 
2403
2322
 
2404
- </xsl:attribute-set><xsl:attribute-set name="note-style">
2405
2323
 
2406
2324
 
2407
2325
 
2408
2326
 
2409
-
2410
2327
 
2411
2328
 
2412
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2413
- <xsl:attribute name="margin-top">8pt</xsl:attribute>
2414
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2415
- <xsl:attribute name="text-align">justify</xsl:attribute>
2416
2329
 
2417
2330
 
2418
2331
 
2419
2332
 
2333
+ </xsl:attribute-set><xsl:attribute-set name="table-name-style">
2334
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
2335
+
2420
2336
 
2421
2337
 
2422
2338
 
2423
2339
 
2424
2340
 
2341
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
2342
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2343
+ <xsl:attribute name="text-align">center</xsl:attribute>
2344
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
2345
+
2425
2346
 
2426
- </xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
2427
2347
 
2428
2348
 
2349
+
2429
2350
 
2430
2351
 
2431
2352
 
2432
2353
 
2354
+ </xsl:attribute-set><xsl:attribute-set name="table-row-style">
2355
+ <xsl:attribute name="min-height">4mm</xsl:attribute>
2433
2356
 
2434
- <xsl:attribute name="padding-right">6mm</xsl:attribute>
2435
2357
 
2436
2358
 
2437
2359
 
2360
+ </xsl:attribute-set><xsl:attribute-set name="table-header-row-style" use-attribute-sets="table-row-style">
2361
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2438
2362
 
2439
2363
 
2364
+ <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
2365
+ <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
2440
2366
 
2441
2367
 
2442
- </xsl:attribute-set><xsl:attribute-set name="table-note-name-style">
2443
2368
 
2444
2369
 
2445
2370
 
2446
2371
 
2447
- </xsl:attribute-set><xsl:attribute-set name="note-p-style">
2372
+
2448
2373
 
2374
+ </xsl:attribute-set><xsl:attribute-set name="table-footer-row-style" use-attribute-sets="table-row-style">
2449
2375
 
2450
2376
 
2451
-
2452
2377
 
2453
-
2454
- <xsl:attribute name="margin-top">8pt</xsl:attribute>
2455
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2378
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
2379
+ <xsl:attribute name="border-left">solid black 1pt</xsl:attribute>
2380
+ <xsl:attribute name="border-right">solid black 1pt</xsl:attribute>
2456
2381
 
2382
+ </xsl:attribute-set><xsl:attribute-set name="table-body-row-style" use-attribute-sets="table-row-style">
2383
+
2384
+ </xsl:attribute-set><xsl:attribute-set name="table-header-cell-style">
2385
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2386
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
2387
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
2388
+ <xsl:attribute name="display-align">center</xsl:attribute>
2457
2389
 
2458
2390
 
2459
2391
 
2392
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
2460
2393
 
2461
2394
 
2462
2395
 
2463
2396
 
2464
- </xsl:attribute-set><xsl:attribute-set name="termnote-style">
2465
2397
 
2466
2398
 
2467
2399
 
2468
2400
 
2469
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2470
- <xsl:attribute name="margin-top">8pt</xsl:attribute>
2471
- <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2472
- <xsl:attribute name="text-align">justify</xsl:attribute>
2473
2401
 
2474
2402
 
2475
2403
 
2404
+ </xsl:attribute-set><xsl:attribute-set name="table-cell-style">
2405
+ <xsl:attribute name="display-align">center</xsl:attribute>
2406
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
2407
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
2476
2408
 
2477
- </xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
2478
2409
 
2479
-
2480
2410
 
2481
2411
 
2482
- </xsl:attribute-set><xsl:attribute-set name="quote-style">
2483
- <xsl:attribute name="role">BlockQuote</xsl:attribute>
2412
+ <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
2484
2413
 
2485
2414
 
2486
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
2487
- <xsl:attribute name="margin-left">12mm</xsl:attribute>
2488
- <xsl:attribute name="margin-right">12mm</xsl:attribute>
2489
2415
 
2490
2416
 
2491
2417
 
2492
2418
 
2493
2419
 
2494
2420
 
2495
- </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
2496
2421
 
2497
2422
 
2498
- <xsl:attribute name="text-align">right</xsl:attribute>
2499
-
2500
-
2501
- </xsl:attribute-set><xsl:attribute-set name="termsource-style">
2423
+ </xsl:attribute-set><xsl:attribute-set name="table-footer-cell-style">
2424
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
2425
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
2426
+ <xsl:attribute name="padding-right">1mm</xsl:attribute>
2427
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
2502
2428
 
2503
2429
 
2504
2430
 
2505
2431
 
2506
2432
 
2507
2433
 
2508
- <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2434
+ <xsl:attribute name="border-top">solid black 0pt</xsl:attribute>
2509
2435
 
2510
2436
 
2511
- </xsl:attribute-set><xsl:attribute-set name="origin-style">
2437
+
2512
2438
 
2513
2439
 
2514
2440
 
2441
+ </xsl:attribute-set><xsl:attribute-set name="table-note-style">
2442
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2443
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2515
2444
 
2516
- </xsl:attribute-set><xsl:attribute-set name="term-style">
2517
2445
 
2518
- <xsl:attribute name="margin-bottom">10pt</xsl:attribute>
2519
2446
 
2520
- </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
2521
2447
 
2448
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
2449
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2522
2450
 
2523
-
2524
2451
 
2525
2452
 
2526
2453
 
2527
-
2528
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2529
- <xsl:attribute name="text-align">center</xsl:attribute>
2530
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
2531
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2532
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
2533
2454
 
2455
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-style">
2456
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2534
2457
 
2535
2458
 
2536
2459
 
2537
2460
 
2461
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
2462
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2538
2463
 
2539
2464
 
2540
2465
 
2466
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-number-style">
2467
+ <xsl:attribute name="font-size">80%</xsl:attribute>
2468
+ <xsl:attribute name="padding-right">5mm</xsl:attribute>
2541
2469
 
2542
-
2543
2470
 
2544
2471
 
2545
2472
 
2546
-
2547
- </xsl:attribute-set><xsl:attribute-set name="formula-style">
2548
2473
 
2549
- </xsl:attribute-set><xsl:attribute-set name="image-style">
2550
- <xsl:attribute name="text-align">center</xsl:attribute>
2474
+ <xsl:attribute name="alignment-baseline">hanging</xsl:attribute>
2551
2475
 
2552
2476
 
2553
2477
 
2554
2478
 
2555
2479
 
2556
2480
 
2557
- </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
2558
2481
 
2559
- </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
2560
2482
 
2483
+ </xsl:attribute-set><xsl:attribute-set name="fn-container-body-style">
2484
+ <xsl:attribute name="text-indent">0</xsl:attribute>
2485
+ <xsl:attribute name="start-indent">0</xsl:attribute>
2561
2486
 
2562
- <xsl:attribute name="width">100%</xsl:attribute>
2563
- <xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
2564
- <xsl:attribute name="scaling">uniform</xsl:attribute>
2565
2487
 
2488
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-body-style">
2566
2489
 
2490
+ </xsl:attribute-set><xsl:attribute-set name="figure-fn-number-style">
2491
+ <xsl:attribute name="font-size">80%</xsl:attribute>
2492
+ <xsl:attribute name="padding-right">5mm</xsl:attribute>
2493
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
2567
2494
 
2568
-
2569
-
2570
- </xsl:attribute-set><xsl:attribute-set name="tt-style">
2495
+ </xsl:attribute-set><xsl:attribute-set name="figure-fn-body-style">
2496
+ <xsl:attribute name="text-align">justify</xsl:attribute>
2497
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2571
2498
 
2499
+ </xsl:attribute-set><xsl:attribute-set name="dt-row-style">
2572
2500
 
2573
- <xsl:attribute name="font-family">Courier New</xsl:attribute>
2574
2501
 
2502
+ </xsl:attribute-set><xsl:attribute-set name="dt-style">
2503
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
2575
2504
 
2576
- </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
2577
- <xsl:attribute name="font-size">11pt</xsl:attribute>
2578
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2579
- <xsl:attribute name="text-align">center</xsl:attribute>
2580
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2581
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
2582
2505
 
2583
- </xsl:attribute-set><xsl:attribute-set name="domain-style">
2584
-
2585
- </xsl:attribute-set><xsl:attribute-set name="admitted-style">
2586
2506
 
2587
2507
 
2588
2508
 
2589
- </xsl:attribute-set><xsl:attribute-set name="deprecates-style">
2590
2509
 
2510
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
2591
2511
 
2592
- </xsl:attribute-set><xsl:attribute-set name="definition-style">
2593
2512
 
2594
2513
 
2595
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2596
2514
 
2597
2515
 
2598
- </xsl:attribute-set><xsl:variable name="color-added-text">
2599
- <xsl:text>rgb(0, 255, 0)</xsl:text>
2600
- </xsl:variable><xsl:attribute-set name="add-style">
2601
- <xsl:attribute name="color">red</xsl:attribute>
2602
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
2603
- <!-- <xsl:attribute name="color">black</xsl:attribute>
2604
- <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
2605
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
2606
- <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
2607
- </xsl:attribute-set><xsl:variable name="color-deleted-text">
2608
- <xsl:text>red</xsl:text>
2609
- </xsl:variable><xsl:attribute-set name="del-style">
2610
- <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
2611
- <xsl:attribute name="text-decoration">line-through</xsl:attribute>
2612
- </xsl:attribute-set><xsl:attribute-set name="mathml-style">
2613
- <xsl:attribute name="font-family">STIX Two Math</xsl:attribute>
2516
+ </xsl:attribute-set><xsl:attribute-set name="appendix-style">
2517
+
2518
+ <xsl:attribute name="font-size">12pt</xsl:attribute>
2519
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2520
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
2521
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2614
2522
 
2615
- <xsl:attribute name="font-family">Cambria Math</xsl:attribute>
2616
2523
 
2617
2524
 
2618
- </xsl:attribute-set><xsl:attribute-set name="list-style">
2525
+ </xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
2619
2526
 
2620
- </xsl:attribute-set><xsl:attribute-set name="toc-style">
2621
- <xsl:attribute name="line-height">135%</xsl:attribute>
2622
- </xsl:attribute-set><xsl:attribute-set name="fn-style">
2623
- <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2624
- </xsl:attribute-set><xsl:attribute-set name="fn-num-style">
2625
- <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2527
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2528
+ <xsl:attribute name="margin-top">8pt</xsl:attribute>
2529
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2626
2530
 
2627
2531
 
2628
2532
 
2533
+ </xsl:attribute-set><xsl:attribute-set name="xref-style">
2629
2534
 
2630
2535
 
2631
2536
 
2537
+ <xsl:attribute name="color">blue</xsl:attribute>
2538
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
2632
2539
 
2633
2540
 
2634
- <xsl:attribute name="font-size">80%</xsl:attribute>
2635
- <xsl:attribute name="vertical-align">super</xsl:attribute>
2636
2541
 
2542
+ </xsl:attribute-set><xsl:attribute-set name="eref-style">
2637
2543
 
2638
2544
 
2639
2545
 
2640
2546
 
2641
2547
 
2642
2548
 
2549
+ </xsl:attribute-set><xsl:attribute-set name="note-style">
2643
2550
 
2644
2551
 
2645
- </xsl:attribute-set><xsl:attribute-set name="fn-body-style">
2552
+
2553
+
2554
+
2555
+
2556
+
2557
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2558
+ <xsl:attribute name="margin-top">8pt</xsl:attribute>
2559
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2560
+ <xsl:attribute name="text-align">justify</xsl:attribute>
2561
+
2562
+
2563
+
2564
+
2565
+
2566
+
2567
+
2568
+
2569
+
2570
+
2571
+ </xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
2572
+
2573
+
2574
+
2575
+
2576
+
2577
+
2578
+
2579
+ <xsl:attribute name="padding-right">6mm</xsl:attribute>
2580
+
2581
+
2582
+
2583
+
2584
+
2585
+
2586
+
2587
+ </xsl:attribute-set><xsl:attribute-set name="table-note-name-style">
2588
+ <xsl:attribute name="padding-right">2mm</xsl:attribute>
2589
+
2590
+
2591
+
2592
+
2593
+ </xsl:attribute-set><xsl:attribute-set name="note-p-style">
2594
+
2595
+
2596
+
2597
+
2598
+
2599
+
2600
+ <xsl:attribute name="margin-top">8pt</xsl:attribute>
2601
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2602
+
2603
+
2604
+
2605
+
2606
+
2607
+
2608
+
2609
+
2610
+ </xsl:attribute-set><xsl:attribute-set name="termnote-style">
2611
+
2612
+
2613
+
2614
+
2615
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2616
+ <xsl:attribute name="margin-top">8pt</xsl:attribute>
2617
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2618
+ <xsl:attribute name="text-align">justify</xsl:attribute>
2619
+
2620
+
2621
+
2622
+
2623
+ </xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
2624
+
2625
+
2626
+
2627
+
2628
+ </xsl:attribute-set><xsl:attribute-set name="quote-style">
2629
+ <xsl:attribute name="role">BlockQuote</xsl:attribute>
2630
+
2631
+
2632
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
2633
+ <xsl:attribute name="margin-left">12mm</xsl:attribute>
2634
+ <xsl:attribute name="margin-right">12mm</xsl:attribute>
2635
+
2636
+
2637
+
2638
+
2639
+
2640
+
2641
+ </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
2642
+
2643
+
2644
+ <xsl:attribute name="text-align">right</xsl:attribute>
2645
+
2646
+
2647
+ </xsl:attribute-set><xsl:attribute-set name="termsource-style">
2648
+
2649
+
2650
+
2651
+
2652
+
2653
+
2654
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
2655
+
2656
+
2657
+ </xsl:attribute-set><xsl:attribute-set name="termsource-text-style">
2658
+
2659
+
2660
+ </xsl:attribute-set><xsl:attribute-set name="origin-style">
2661
+
2662
+
2663
+
2664
+
2665
+ </xsl:attribute-set><xsl:attribute-set name="term-style">
2666
+
2667
+ <xsl:attribute name="margin-bottom">10pt</xsl:attribute>
2668
+
2669
+ </xsl:attribute-set><xsl:attribute-set name="figure-style">
2670
+
2671
+ </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
2672
+
2673
+
2674
+
2675
+
2676
+
2677
+
2678
+
2679
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2680
+ <xsl:attribute name="text-align">center</xsl:attribute>
2681
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
2682
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2683
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
2684
+
2685
+
2686
+
2687
+
2688
+
2689
+
2690
+
2691
+
2692
+
2693
+
2694
+
2695
+
2696
+
2697
+
2698
+ </xsl:attribute-set><xsl:attribute-set name="formula-style">
2699
+
2700
+ </xsl:attribute-set><xsl:attribute-set name="image-style">
2701
+ <xsl:attribute name="text-align">center</xsl:attribute>
2702
+
2703
+
2704
+
2705
+
2706
+
2707
+
2708
+ </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
2709
+
2710
+ </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
2711
+
2712
+
2713
+ <xsl:attribute name="width">100%</xsl:attribute>
2714
+ <xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
2715
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
2716
+
2717
+
2718
+
2719
+
2720
+
2721
+ </xsl:attribute-set><xsl:attribute-set name="tt-style">
2722
+
2723
+
2724
+ <xsl:attribute name="font-family">Courier New</xsl:attribute>
2725
+
2726
+
2727
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
2728
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
2729
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2730
+ <xsl:attribute name="text-align">center</xsl:attribute>
2731
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2732
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
2733
+
2734
+ </xsl:attribute-set><xsl:attribute-set name="domain-style">
2735
+
2736
+ </xsl:attribute-set><xsl:attribute-set name="admitted-style">
2737
+
2738
+
2739
+
2740
+ </xsl:attribute-set><xsl:attribute-set name="deprecates-style">
2741
+
2742
+
2743
+ </xsl:attribute-set><xsl:attribute-set name="definition-style">
2744
+
2745
+
2746
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2747
+
2748
+
2749
+ </xsl:attribute-set><xsl:variable name="color-added-text">
2750
+ <xsl:text>rgb(0, 255, 0)</xsl:text>
2751
+ </xsl:variable><xsl:attribute-set name="add-style">
2752
+ <xsl:attribute name="color">red</xsl:attribute>
2753
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
2754
+ <!-- <xsl:attribute name="color">black</xsl:attribute>
2755
+ <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
2756
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
2757
+ <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
2758
+ </xsl:attribute-set><xsl:variable name="color-deleted-text">
2759
+ <xsl:text>red</xsl:text>
2760
+ </xsl:variable><xsl:attribute-set name="del-style">
2761
+ <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
2762
+ <xsl:attribute name="text-decoration">line-through</xsl:attribute>
2763
+ </xsl:attribute-set><xsl:attribute-set name="mathml-style">
2764
+ <xsl:attribute name="font-family">STIX Two Math</xsl:attribute>
2765
+
2766
+ <xsl:attribute name="font-family">Cambria Math</xsl:attribute>
2767
+
2768
+
2769
+ </xsl:attribute-set><xsl:attribute-set name="list-style">
2770
+
2771
+ </xsl:attribute-set><xsl:attribute-set name="toc-style">
2772
+ <xsl:attribute name="line-height">135%</xsl:attribute>
2773
+ </xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
2774
+ <xsl:attribute name="font-size">80%</xsl:attribute>
2775
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2776
+
2777
+
2778
+
2779
+
2780
+
2781
+
2782
+
2783
+
2784
+ </xsl:attribute-set><xsl:attribute-set name="fn-style">
2785
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2786
+ </xsl:attribute-set><xsl:attribute-set name="fn-num-style">
2787
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2788
+
2789
+
2790
+
2791
+
2792
+
2793
+
2794
+
2795
+
2796
+ <xsl:attribute name="font-size">80%</xsl:attribute>
2797
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
2798
+
2799
+
2800
+
2801
+
2802
+
2803
+
2804
+
2805
+
2806
+
2807
+ </xsl:attribute-set><xsl:attribute-set name="fn-body-style">
2646
2808
  <xsl:attribute name="font-weight">normal</xsl:attribute>
2647
2809
  <xsl:attribute name="font-style">normal</xsl:attribute>
2648
2810
  <xsl:attribute name="text-indent">0</xsl:attribute>
@@ -2655,20 +2817,183 @@
2655
2817
 
2656
2818
 
2657
2819
 
2658
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2659
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2820
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2821
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2822
+
2823
+
2824
+
2825
+
2826
+
2827
+
2828
+
2829
+
2830
+
2831
+
2832
+
2833
+ </xsl:attribute-set><xsl:attribute-set name="fn-body-num-style">
2834
+ <xsl:attribute name="keep-with-next.within-line">always</xsl:attribute>
2835
+
2836
+
2837
+
2838
+
2839
+
2840
+
2841
+
2842
+
2843
+ <xsl:attribute name="padding-right">3mm</xsl:attribute>
2844
+
2845
+
2846
+
2847
+
2848
+
2849
+
2850
+
2851
+
2852
+
2853
+
2854
+ </xsl:attribute-set><xsl:attribute-set name="admonition-style">
2855
+
2856
+
2857
+
2858
+
2859
+
2860
+
2861
+
2862
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2863
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
2864
+
2865
+
2866
+
2867
+
2868
+
2869
+
2870
+
2871
+
2872
+ </xsl:attribute-set><xsl:attribute-set name="admonition-container-style">
2873
+
2874
+
2875
+
2876
+
2877
+
2878
+
2879
+
2880
+
2881
+
2882
+
2883
+ </xsl:attribute-set><xsl:attribute-set name="admonition-name-style">
2884
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
2885
+
2886
+
2887
+
2888
+
2889
+
2890
+
2891
+
2892
+
2893
+
2894
+
2895
+
2896
+
2897
+
2898
+ </xsl:attribute-set><xsl:attribute-set name="admonition-p-style">
2899
+
2900
+
2901
+
2902
+
2903
+
2904
+
2905
+
2906
+
2907
+
2908
+
2909
+
2910
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-style">
2911
+
2912
+
2913
+
2914
+
2915
+
2916
+
2917
+
2918
+
2919
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2920
+
2921
+
2922
+
2923
+
2924
+
2925
+
2926
+
2927
+
2928
+
2929
+
2930
+
2931
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-list-style">
2932
+ <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
2933
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2934
+
2935
+
2936
+
2937
+
2938
+
2939
+
2940
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2941
+
2942
+
2943
+
2944
+
2945
+
2946
+
2947
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-style">
2948
+
2660
2949
 
2661
2950
 
2662
2951
 
2952
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-list-style">
2953
+ <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
2954
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2955
+
2663
2956
 
2664
2957
 
2665
2958
 
2666
2959
 
2667
2960
 
2961
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
2668
2962
 
2669
2963
 
2670
2964
 
2671
- </xsl:attribute-set><xsl:attribute-set name="fn-body-num-style">
2965
+
2966
+
2967
+
2968
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-list-body-style">
2969
+
2970
+
2971
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-list-body-style">
2972
+
2973
+
2974
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-style">
2975
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
2976
+ <xsl:attribute name="font-size">65%</xsl:attribute>
2977
+
2978
+
2979
+
2980
+
2981
+
2982
+
2983
+
2984
+
2985
+ <xsl:attribute name="font-size">8pt</xsl:attribute>
2986
+ <xsl:attribute name="baseline-shift">30%</xsl:attribute>
2987
+
2988
+
2989
+
2990
+
2991
+
2992
+
2993
+
2994
+
2995
+
2996
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-number-style">
2672
2997
  <xsl:attribute name="keep-with-next.within-line">always</xsl:attribute>
2673
2998
 
2674
2999
 
@@ -2678,6 +3003,7 @@
2678
3003
 
2679
3004
 
2680
3005
 
3006
+ <xsl:attribute name="alignment-baseline">hanging</xsl:attribute>
2681
3007
  <xsl:attribute name="padding-right">3mm</xsl:attribute>
2682
3008
 
2683
3009
 
@@ -2688,31 +3014,32 @@
2688
3014
 
2689
3015
 
2690
3016
 
3017
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-body-style">
3018
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
3019
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
3020
+ <xsl:attribute name="start-indent">0pt</xsl:attribute>
3021
+
3022
+
3023
+
3024
+
3025
+
3026
+
3027
+ <xsl:attribute name="margin-bottom">4pt</xsl:attribute>
3028
+
3029
+
3030
+
3031
+
3032
+
3033
+
3034
+ </xsl:attribute-set><xsl:attribute-set name="references-non-normative-style">
3035
+
3036
+
2691
3037
 
2692
- </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="OLD_processPrefaceSectionsDefault_Contents">
2693
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
2694
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
2695
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
2696
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']" mode="contents"/>
2697
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']" mode="contents"/>
2698
- </xsl:template><xsl:template name="processPrefaceSectionsDefault_Contents">
3038
+ </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">
2699
3039
  <xsl:for-each select="/*/*[local-name()='preface']/*">
2700
3040
  <xsl:sort select="@displayorder" data-type="number"/>
2701
3041
  <xsl:apply-templates select="." mode="contents"/>
2702
3042
  </xsl:for-each>
2703
- </xsl:template><xsl:template name="OLD_processMainSectionsDefault_Contents">
2704
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']" mode="contents"/>
2705
-
2706
- <!-- Normative references -->
2707
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]" mode="contents"/>
2708
- <!-- Terms and definitions -->
2709
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='terms'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='terms']] | /*/*[local-name()='sections']/*[local-name()='definitions'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='definitions']]" mode="contents"/>
2710
- <!-- Another main sections -->
2711
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name() != 'terms' and local-name() != 'definitions' and not(@type='scope') and not(local-name() = 'clause' and .//*[local-name()='terms']) and not(local-name() = 'clause' and .//*[local-name()='definitions'])]" mode="contents"/>
2712
- <xsl:apply-templates select="/*/*[local-name()='annex']" mode="contents"/>
2713
- <!-- Bibliography -->
2714
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]" mode="contents"/>
2715
-
2716
3043
  </xsl:template><xsl:template name="processMainSectionsDefault_Contents">
2717
3044
 
2718
3045
  <xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]">
@@ -2729,29 +3056,11 @@
2729
3056
  <xsl:sort select="@displayorder" data-type="number"/>
2730
3057
  <xsl:apply-templates select="." mode="contents"/>
2731
3058
  </xsl:for-each>
2732
- </xsl:template><xsl:template name="OLD_processPrefaceSectionsDefault">
2733
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']"/>
2734
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']"/>
2735
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']"/>
2736
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']"/>
2737
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']"/>
2738
3059
  </xsl:template><xsl:template name="processPrefaceSectionsDefault">
2739
3060
  <xsl:for-each select="/*/*[local-name()='preface']/*">
2740
3061
  <xsl:sort select="@displayorder" data-type="number"/>
2741
3062
  <xsl:apply-templates select="."/>
2742
3063
  </xsl:for-each>
2743
- </xsl:template><xsl:template name="OLD_processMainSectionsDefault">
2744
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']"/>
2745
-
2746
- <!-- Normative references -->
2747
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']"/>
2748
- <!-- Terms and definitions -->
2749
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='terms'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='terms']] | /*/*[local-name()='sections']/*[local-name()='definitions'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='definitions']]"/>
2750
- <!-- Another main sections -->
2751
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name() != 'terms' and local-name() != 'definitions' and not(@type='scope') and not(local-name() = 'clause' and .//*[local-name()='terms']) and not(local-name() = 'clause' and .//*[local-name()='definitions'])]"/>
2752
- <xsl:apply-templates select="/*/*[local-name()='annex']"/>
2753
- <!-- Bibliography -->
2754
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')]"/>
2755
3064
  </xsl:template><xsl:template name="processMainSectionsDefault">
2756
3065
  <xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
2757
3066
  <xsl:sort select="@displayorder" data-type="number"/>
@@ -2788,10 +3097,6 @@
2788
3097
  <xsl:call-template name="getSimpleTable"/>
2789
3098
  </xsl:variable>
2790
3099
 
2791
- <!-- <xsl:if test="$namespace = 'bipm'">
2792
- <fo:block>&#xA0;</fo:block>
2793
- </xsl:if> -->
2794
-
2795
3100
 
2796
3101
  <!-- Display table's name before table as standalone block -->
2797
3102
  <!-- $namespace = 'iso' or -->
@@ -2799,28 +3104,8 @@
2799
3104
 
2800
3105
 
2801
3106
 
2802
-
2803
-
2804
-
2805
3107
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
2806
3108
 
2807
- <!-- <xsl:variable name="cols-count">
2808
- <xsl:choose>
2809
- <xsl:when test="*[local-name()='thead']">
2810
- <xsl:call-template name="calculate-columns-numbers">
2811
- <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
2812
- </xsl:call-template>
2813
- </xsl:when>
2814
- <xsl:otherwise>
2815
- <xsl:call-template name="calculate-columns-numbers">
2816
- <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
2817
- </xsl:call-template>
2818
- </xsl:otherwise>
2819
- </xsl:choose>
2820
- </xsl:variable> -->
2821
- <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
2822
- <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
2823
-
2824
3109
  <xsl:variable name="colwidths">
2825
3110
  <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
2826
3111
  <xsl:call-template name="calculate-column-widths">
@@ -2831,17 +3116,8 @@
2831
3116
  </xsl:variable>
2832
3117
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
2833
3118
 
2834
- <!-- <xsl:variable name="colwidths2">
2835
- <xsl:call-template name="calculate-column-widths">
2836
- <xsl:with-param name="cols-count" select="$cols-count"/>
2837
- </xsl:call-template>
2838
- </xsl:variable> -->
2839
-
2840
- <!-- cols-count=<xsl:copy-of select="$cols-count"/>
2841
- colwidthsNew=<xsl:copy-of select="$colwidths"/>
2842
- colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
2843
3119
 
2844
- <xsl:variable name="margin-left">
3120
+ <xsl:variable name="margin-side">
2845
3121
  <xsl:choose>
2846
3122
  <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
2847
3123
  <xsl:otherwise>0</xsl:otherwise>
@@ -2849,83 +3125,69 @@
2849
3125
  </xsl:variable>
2850
3126
 
2851
3127
 
2852
- <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
2853
-
2854
-
2855
- <xsl:attribute name="font-size">10pt</xsl:attribute>
2856
-
2857
-
2858
-
2859
-
2860
-
2861
-
2862
-
2863
-
3128
+ <fo:block-container xsl:use-attribute-sets="table-container-style">
3129
+
2864
3130
 
3131
+
2865
3132
 
3133
+
2866
3134
 
2867
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
2868
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2869
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
2870
- <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
3135
+
2871
3136
 
2872
3137
 
2873
3138
 
3139
+
2874
3140
 
2875
3141
 
2876
3142
 
2877
3143
 
2878
3144
 
3145
+ <!-- end table block-container attributes -->
2879
3146
 
2880
3147
  <!-- display table's name before table for PAS inside block-container (2-columnn layout) -->
2881
3148
 
2882
3149
 
3150
+ <xsl:variable name="table_width_default">100%</xsl:variable>
2883
3151
  <xsl:variable name="table_width">
2884
3152
  <!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
2885
- 100%
2886
-
2887
-
3153
+ <xsl:value-of select="$table_width_default"/>
2888
3154
  </xsl:variable>
2889
3155
 
3156
+
2890
3157
  <xsl:variable name="table_attributes">
2891
- <attribute name="table-layout">fixed</attribute>
2892
- <attribute name="width"><xsl:value-of select="normalize-space($table_width)"/></attribute>
2893
- <attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
2894
- <attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
2895
-
2896
-
2897
- <attribute name="border">1.5pt solid black</attribute>
2898
- <xsl:if test="*[local-name()='thead']">
2899
- <attribute name="border-top">1pt solid black</attribute>
2900
- </xsl:if>
2901
-
2902
-
2903
-
2904
- <xsl:if test="ancestor::*[local-name() = 'table']">
2905
- <!-- for internal table in table cell -->
2906
- <attribute name="border">0.5pt solid black</attribute>
2907
- </xsl:if>
2908
-
2909
-
2910
-
2911
-
2912
- <attribute name="margin-left">0mm</attribute>
2913
- <attribute name="margin-right">0mm</attribute>
2914
-
2915
-
2916
-
2917
-
2918
-
2919
-
2920
-
2921
-
3158
+
3159
+ <xsl:element name="table_attributes" use-attribute-sets="table-style">
3160
+ <xsl:attribute name="width"><xsl:value-of select="normalize-space($table_width)"/></xsl:attribute>
3161
+
3162
+
3163
+
3164
+
3165
+
3166
+
3167
+
3168
+
3169
+ <xsl:if test="*[local-name()='thead']">
3170
+ <xsl:attribute name="border-top">1pt solid black</xsl:attribute>
3171
+ </xsl:if>
3172
+ <xsl:if test="ancestor::*[local-name() = 'table']">
3173
+ <!-- for internal table in table cell -->
3174
+ <xsl:attribute name="border">0.5pt solid black</xsl:attribute>
3175
+ </xsl:if>
3176
+
3177
+
3178
+
3179
+
3180
+
3181
+
3182
+
3183
+ </xsl:element>
2922
3184
  </xsl:variable>
2923
3185
 
2924
3186
 
2925
- <fo:table id="{@id}" table-omit-footer-at-break="true">
3187
+ <fo:table id="{@id}">
2926
3188
 
2927
- <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
2928
- <xsl:attribute name="{@name}">
3189
+ <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
3190
+ <xsl:attribute name="{local-name()}">
2929
3191
  <xsl:value-of select="."/>
2930
3192
  </xsl:attribute>
2931
3193
  </xsl:for-each>
@@ -2936,7 +3198,6 @@
2936
3198
  </xsl:if>
2937
3199
 
2938
3200
 
2939
-
2940
3201
  <xsl:choose>
2941
3202
  <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
2942
3203
  <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
@@ -2962,7 +3223,7 @@
2962
3223
  <xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
2963
3224
  </xsl:when>
2964
3225
  <xsl:otherwise>
2965
- <xsl:apply-templates/>
3226
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
2966
3227
  </xsl:otherwise>
2967
3228
  </xsl:choose>
2968
3229
 
@@ -2977,25 +3238,6 @@
2977
3238
  </xsl:call-template>
2978
3239
  </xsl:for-each>
2979
3240
 
2980
- <!-- insert footer as table -->
2981
- <!-- <fo:table>
2982
- <xsl:for-each select="xalan::nodeset($table_attributes)/attribute">
2983
- <xsl:attribute name="{@name}">
2984
- <xsl:value-of select="."/>
2985
- </xsl:attribute>
2986
- </xsl:for-each>
2987
-
2988
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
2989
- <xsl:choose>
2990
- <xsl:when test=". = 1 or . = 0">
2991
- <fo:table-column column-width="proportional-column-width(2)"/>
2992
- </xsl:when>
2993
- <xsl:otherwise>
2994
- <fo:table-column column-width="proportional-column-width({.})"/>
2995
- </xsl:otherwise>
2996
- </xsl:choose>
2997
- </xsl:for-each>
2998
- </fo:table>-->
2999
3241
 
3000
3242
 
3001
3243
 
@@ -3056,20 +3298,17 @@
3056
3298
  </xsl:otherwise>
3057
3299
  </xsl:choose>
3058
3300
 
3059
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
3301
+ </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']">
3060
3302
  <xsl:param name="continued"/>
3061
3303
  <xsl:if test="normalize-space() != ''">
3062
3304
  <fo:block xsl:use-attribute-sets="table-name-style">
3063
-
3064
- <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
3065
-
3305
+
3066
3306
 
3067
3307
 
3068
3308
 
3069
3309
 
3070
3310
  <xsl:choose>
3071
3311
  <xsl:when test="$continued = 'true'">
3072
- <!-- <xsl:if test="$namespace = 'bsi'"></xsl:if> -->
3073
3312
 
3074
3313
  <xsl:apply-templates/>
3075
3314
 
@@ -3134,13 +3373,6 @@
3134
3373
  <xsl:for-each select="xalan:nodeset($table)/*/tr">
3135
3374
  <xsl:variable name="td_text">
3136
3375
  <xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
3137
-
3138
- <!-- <xsl:if test="$namespace = 'bipm'">
3139
- <xsl:for-each select="*[local-name()='td'][$curr-col]//*[local-name()='math']">
3140
- <word><xsl:value-of select="normalize-space(.)"/></word>
3141
- </xsl:for-each>
3142
- </xsl:if> -->
3143
-
3144
3376
  </xsl:variable>
3145
3377
  <xsl:variable name="words">
3146
3378
  <xsl:variable name="string_with_added_zerospaces">
@@ -3177,7 +3409,6 @@
3177
3409
  </xsl:otherwise>
3178
3410
  </xsl:choose>
3179
3411
  </xsl:variable>
3180
-
3181
3412
 
3182
3413
  <column>
3183
3414
  <xsl:for-each select="xalan:nodeset($widths)//width">
@@ -3213,7 +3444,6 @@
3213
3444
  <xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
3214
3445
  </xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
3215
3446
  <xsl:param name="cols-count"/>
3216
- <!-- font-weight="bold" -->
3217
3447
  <fo:table-header>
3218
3448
 
3219
3449
  <xsl:call-template name="table-header-title">
@@ -3229,22 +3459,21 @@
3229
3459
  <fo:table-row>
3230
3460
  <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">
3231
3461
 
3232
- <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation">
3462
+ <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']">
3233
3463
  <xsl:with-param name="continued">true</xsl:with-param>
3234
3464
  </xsl:apply-templates>
3235
3465
 
3236
3466
 
3237
3467
  <xsl:for-each select="ancestor::*[local-name()='table'][1]">
3238
- <xsl:call-template name="fn_name_display"/>
3468
+ <xsl:call-template name="table_name_fn_display"/>
3239
3469
  </xsl:for-each>
3240
-
3241
-
3242
-
3470
+
3243
3471
  <fo:block text-align="right" font-style="italic">
3244
3472
  <xsl:text> </xsl:text>
3245
3473
  <fo:retrieve-table-marker retrieve-class-name="table_continued"/>
3246
3474
  </fo:block>
3247
3475
 
3476
+
3248
3477
  </fo:table-cell>
3249
3478
  </fo:table-row>
3250
3479
  </xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
@@ -3260,66 +3489,6 @@
3260
3489
  <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
3261
3490
  </fo:table-footer>
3262
3491
  </xsl:if>
3263
- </xsl:template><xsl:template name="insertTableFooter2">
3264
- <xsl:param name="cols-count"/>
3265
- <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
3266
- <xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
3267
-
3268
- <fo:table-footer>
3269
-
3270
- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
3271
-
3272
- <!-- if there are note(s) or fn(s) then create footer row -->
3273
- <xsl:if test="$isNoteOrFnExist = 'true'">
3274
-
3275
-
3276
-
3277
- <fo:table-row>
3278
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
3279
-
3280
- <xsl:attribute name="border-top">solid black 0pt</xsl:attribute>
3281
-
3282
-
3283
-
3284
- <!-- fn will be processed inside 'note' processing -->
3285
-
3286
-
3287
-
3288
-
3289
-
3290
-
3291
- <!-- except gb -->
3292
-
3293
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3294
-
3295
-
3296
- <!-- show Note under table in preface (ex. abstract) sections -->
3297
- <!-- empty, because notes show at page side in main sections -->
3298
- <!-- <xsl:if test="$namespace = 'bipm'">
3299
- <xsl:choose>
3300
- <xsl:when test="ancestor::*[local-name()='preface']">
3301
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3302
- </xsl:when>
3303
- <xsl:otherwise>
3304
- <fo:block/>
3305
- </xsl:otherwise>
3306
- </xsl:choose>
3307
- </xsl:if> -->
3308
-
3309
-
3310
- <!-- horizontal row separator -->
3311
-
3312
-
3313
- <!-- fn processing -->
3314
- <xsl:call-template name="fn_display"/>
3315
-
3316
- </fo:table-cell>
3317
- </fo:table-row>
3318
-
3319
- </xsl:if>
3320
- </fo:table-footer>
3321
-
3322
- </xsl:if>
3323
3492
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
3324
3493
  <xsl:param name="table_attributes"/>
3325
3494
  <xsl:param name="colwidths"/>
@@ -3345,17 +3514,18 @@
3345
3514
  </xsl:variable>
3346
3515
 
3347
3516
  <fo:table keep-with-previous="always">
3348
- <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
3517
+ <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
3518
+ <xsl:variable name="name" select="local-name()"/>
3349
3519
  <xsl:choose>
3350
- <xsl:when test="@name = 'border-top'">
3351
- <xsl:attribute name="{@name}">0pt solid black</xsl:attribute>
3520
+ <xsl:when test="$name = 'border-top'">
3521
+ <xsl:attribute name="{$name}">0pt solid black</xsl:attribute>
3352
3522
  </xsl:when>
3353
- <xsl:when test="@name = 'border'">
3354
- <xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
3523
+ <xsl:when test="$name = 'border'">
3524
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3355
3525
  <xsl:attribute name="border-top">0pt solid black</xsl:attribute>
3356
3526
  </xsl:when>
3357
3527
  <xsl:otherwise>
3358
- <xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
3528
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
3359
3529
  </xsl:otherwise>
3360
3530
  </xsl:choose>
3361
3531
  </xsl:for-each>
@@ -3384,11 +3554,10 @@
3384
3554
 
3385
3555
  <fo:table-body>
3386
3556
  <fo:table-row>
3387
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
3557
+ <fo:table-cell xsl:use-attribute-sets="table-footer-cell-style" number-columns-spanned="{$cols-count}">
3388
3558
 
3389
3559
 
3390
- <xsl:attribute name="border-top">solid black 0pt</xsl:attribute>
3391
-
3560
+
3392
3561
 
3393
3562
 
3394
3563
  <!-- fn will be processed inside 'note' processing -->
@@ -3398,37 +3567,20 @@
3398
3567
 
3399
3568
 
3400
3569
 
3401
-
3402
-
3403
-
3404
3570
  <!-- for BSI (not PAS) display Notes before footnotes -->
3405
3571
 
3406
3572
 
3407
- <!-- except gb -->
3408
-
3409
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3573
+ <!-- except gb and bsi -->
3410
3574
 
3411
-
3412
- <!-- <xsl:if test="$namespace = 'bipm'">
3413
- <xsl:choose>
3414
- <xsl:when test="ancestor::*[local-name()='preface']">
3415
- show Note under table in preface (ex. abstract) sections
3416
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3417
- </xsl:when>
3418
- <xsl:otherwise>
3419
- empty, because notes show at page side in main sections
3420
- <fo:block/>
3421
- </xsl:otherwise>
3422
- </xsl:choose>
3423
- </xsl:if> -->
3575
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3576
+
3424
3577
 
3425
3578
 
3426
3579
  <!-- horizontal row separator -->
3427
3580
 
3428
3581
 
3429
3582
  <!-- fn processing -->
3430
- <xsl:call-template name="fn_display"/>
3431
-
3583
+ <xsl:call-template name="table_fn_display"/>
3432
3584
 
3433
3585
  <!-- for PAS display Notes after footnotes -->
3434
3586
 
@@ -3515,99 +3667,68 @@
3515
3667
 
3516
3668
 
3517
3669
  <xsl:apply-templates/>
3518
- <!-- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/> -->
3519
-
3670
+
3520
3671
  </fo:table-body>
3521
3672
 
3522
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/text()[1]" priority="2" mode="presentation_name">
3523
- <xsl:choose>
3524
- <xsl:when test="substring-after(., '—') != ''">
3525
- <xsl:text>—</xsl:text><xsl:value-of select="substring-after(., '—')"/>
3526
- </xsl:when>
3527
- <xsl:otherwise>
3528
- <xsl:value-of select="."/>
3529
- </xsl:otherwise>
3530
- </xsl:choose>
3531
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']" mode="presentation_name">
3532
- <xsl:apply-templates mode="presentation_name"/>
3533
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/node()" mode="presentation_name">
3534
- <xsl:apply-templates select="."/>
3535
- </xsl:template><xsl:template match="*[local-name()='tr']">
3536
- <xsl:variable name="parent-name" select="local-name(..)"/>
3537
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3538
- <fo:table-row min-height="4mm">
3539
- <xsl:if test="$parent-name = 'thead'">
3540
- <xsl:attribute name="font-weight">bold</xsl:attribute>
3541
-
3542
-
3543
-
3544
- <xsl:choose>
3545
- <xsl:when test="position() = 1">
3546
- <xsl:attribute name="border-top">solid black 1.5pt</xsl:attribute>
3547
- <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
3548
- </xsl:when>
3549
- <xsl:when test="position() = last()">
3550
- <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
3551
- <xsl:attribute name="border-bottom">solid black 1.5pt</xsl:attribute>
3552
- </xsl:when>
3553
- <xsl:otherwise>
3554
- <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
3555
- <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
3556
- </xsl:otherwise>
3557
- </xsl:choose>
3558
-
3559
-
3560
-
3561
-
3562
-
3563
-
3564
- </xsl:if>
3565
- <xsl:if test="$parent-name = 'tfoot'">
3566
-
3567
-
3568
- <xsl:attribute name="font-size">9pt</xsl:attribute>
3569
- <xsl:attribute name="border-left">solid black 1pt</xsl:attribute>
3570
- <xsl:attribute name="border-right">solid black 1pt</xsl:attribute>
3571
-
3572
-
3573
- </xsl:if>
3574
-
3575
-
3576
-
3577
-
3578
-
3579
-
3580
-
3581
-
3582
-
3583
-
3584
- <!-- <xsl:if test="$namespace = 'bipm'">
3585
- <xsl:attribute name="height">8mm</xsl:attribute>
3586
- </xsl:if> -->
3587
-
3588
- <xsl:apply-templates/>
3589
- </fo:table-row>
3590
- </xsl:template><xsl:template match="*[local-name()='th']">
3591
- <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
3592
- <xsl:attribute name="text-align">
3673
+ </xsl:template><xsl:template match="*[local-name()='thead']/*[local-name()='tr']" priority="2">
3674
+ <fo:table-row xsl:use-attribute-sets="table-header-row-style">
3675
+
3676
+
3677
+
3678
+
3593
3679
  <xsl:choose>
3594
- <xsl:when test="@align">
3595
- <xsl:call-template name="setAlignment"/>
3596
- <!-- <xsl:value-of select="@align"/> -->
3680
+ <xsl:when test="position() = 1">
3681
+ <xsl:attribute name="border-top">solid black 1.5pt</xsl:attribute>
3682
+ <xsl:attribute name="border-bottom">solid black 1pt</xsl:attribute>
3683
+ </xsl:when>
3684
+ <xsl:when test="position() = last()">
3685
+ <xsl:attribute name="border-top">solid black 1pt</xsl:attribute>
3686
+ <xsl:attribute name="border-bottom">solid black 1.5pt</xsl:attribute>
3597
3687
  </xsl:when>
3598
- <xsl:otherwise>center</xsl:otherwise>
3599
3688
  </xsl:choose>
3600
- </xsl:attribute>
3689
+
3690
+
3601
3691
 
3602
3692
 
3603
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
3693
+ <xsl:call-template name="setTableRowAttributes"/>
3694
+
3695
+ <xsl:apply-templates/>
3696
+ </fo:table-row>
3697
+ </xsl:template><xsl:template match="*[local-name()='tfoot']/*[local-name()='tr']" priority="2">
3698
+ <fo:table-row xsl:use-attribute-sets="table-footer-row-style">
3604
3699
 
3700
+ <xsl:call-template name="setTableRowAttributes"/>
3701
+ <xsl:apply-templates/>
3702
+ </fo:table-row>
3703
+ </xsl:template><xsl:template match="*[local-name()='tr']">
3704
+ <fo:table-row xsl:use-attribute-sets="table-body-row-style">
3705
+
3605
3706
 
3707
+
3606
3708
 
3709
+
3710
+ <xsl:call-template name="setTableRowAttributes"/>
3711
+ <xsl:apply-templates/>
3712
+ </fo:table-row>
3713
+ </xsl:template><xsl:template name="setTableRowAttributes">
3714
+
3715
+
3716
+
3717
+
3718
+
3719
+
3720
+
3721
+
3722
+ </xsl:template><xsl:template match="*[local-name()='th']">
3723
+ <fo:table-cell xsl:use-attribute-sets="table-header-cell-style"> <!-- text-align="{@align}" -->
3724
+ <xsl:call-template name="setTextAlignment">
3725
+ <xsl:with-param name="default">center</xsl:with-param>
3726
+ </xsl:call-template>
3607
3727
 
3608
3728
 
3609
3729
 
3610
3730
 
3731
+
3611
3732
 
3612
3733
 
3613
3734
 
@@ -3616,21 +3737,25 @@
3616
3737
  <xsl:if test="$lang = 'ar'">
3617
3738
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
3618
3739
  </xsl:if>
3619
- <xsl:if test="@colspan">
3620
- <xsl:attribute name="number-columns-spanned">
3621
- <xsl:value-of select="@colspan"/>
3622
- </xsl:attribute>
3623
- </xsl:if>
3624
- <xsl:if test="@rowspan">
3625
- <xsl:attribute name="number-rows-spanned">
3626
- <xsl:value-of select="@rowspan"/>
3627
- </xsl:attribute>
3628
- </xsl:if>
3629
- <xsl:call-template name="display-align"/>
3740
+
3741
+ <xsl:call-template name="setTableCellAttributes"/>
3742
+
3630
3743
  <fo:block>
3631
3744
  <xsl:apply-templates/>
3632
3745
  </fo:block>
3633
3746
  </fo:table-cell>
3747
+ </xsl:template><xsl:template name="setTableCellAttributes">
3748
+ <xsl:if test="@colspan">
3749
+ <xsl:attribute name="number-columns-spanned">
3750
+ <xsl:value-of select="@colspan"/>
3751
+ </xsl:attribute>
3752
+ </xsl:if>
3753
+ <xsl:if test="@rowspan">
3754
+ <xsl:attribute name="number-rows-spanned">
3755
+ <xsl:value-of select="@rowspan"/>
3756
+ </xsl:attribute>
3757
+ </xsl:if>
3758
+ <xsl:call-template name="display-align"/>
3634
3759
  </xsl:template><xsl:template name="display-align">
3635
3760
  <xsl:if test="@valign">
3636
3761
  <xsl:attribute name="display-align">
@@ -3643,91 +3768,75 @@
3643
3768
  </xsl:attribute>
3644
3769
  </xsl:if>
3645
3770
  </xsl:template><xsl:template match="*[local-name()='td']">
3646
- <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
3647
- <xsl:attribute name="text-align">
3648
- <xsl:choose>
3649
- <xsl:when test="@align">
3650
- <xsl:call-template name="setAlignment"/>
3651
- <!-- <xsl:value-of select="@align"/> -->
3652
- </xsl:when>
3653
- <xsl:otherwise>left</xsl:otherwise>
3654
- </xsl:choose>
3655
- </xsl:attribute>
3771
+ <fo:table-cell xsl:use-attribute-sets="table-cell-style"> <!-- text-align="{@align}" -->
3772
+ <xsl:call-template name="setTextAlignment">
3773
+ <xsl:with-param name="default">left</xsl:with-param>
3774
+ </xsl:call-template>
3775
+
3656
3776
  <xsl:if test="$lang = 'ar'">
3657
3777
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
3658
3778
  </xsl:if>
3659
- <!-- and ancestor::*[local-name() = 'thead'] -->
3660
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
3661
3779
 
3662
3780
 
3663
3781
 
3782
+ <!-- bsi -->
3664
3783
 
3665
3784
 
3666
- <xsl:if test="ancestor::*[local-name() = 'tfoot']">
3667
- <xsl:attribute name="border">solid black 0</xsl:attribute>
3668
- </xsl:if>
3669
3785
 
3670
3786
 
3671
3787
 
3672
3788
 
3789
+ <xsl:if test="ancestor::*[local-name() = 'tfoot']">
3790
+ <xsl:attribute name="border">solid black 0</xsl:attribute>
3791
+ </xsl:if>
3792
+
3673
3793
 
3674
3794
 
3795
+
3675
3796
 
3676
3797
 
3677
3798
 
3678
3799
 
3679
3800
 
3680
3801
 
3681
- <xsl:if test=".//*[local-name() = 'table']">
3802
+ <xsl:if test=".//*[local-name() = 'table']"> <!-- if there is nested table -->
3682
3803
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
3683
3804
  </xsl:if>
3684
- <xsl:if test="@colspan">
3685
- <xsl:attribute name="number-columns-spanned">
3686
- <xsl:value-of select="@colspan"/>
3687
- </xsl:attribute>
3688
- </xsl:if>
3689
- <xsl:if test="@rowspan">
3690
- <xsl:attribute name="number-rows-spanned">
3691
- <xsl:value-of select="@rowspan"/>
3692
- </xsl:attribute>
3693
- </xsl:if>
3694
- <xsl:call-template name="display-align"/>
3805
+
3806
+ <xsl:call-template name="setTableCellAttributes"/>
3807
+
3695
3808
  <fo:block>
3696
-
3809
+
3810
+
3811
+
3697
3812
  <xsl:apply-templates/>
3698
3813
  </fo:block>
3699
3814
  </fo:table-cell>
3700
3815
  </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']" priority="2"/><xsl:template match="*[local-name()='table']/*[local-name()='note']" mode="process">
3816
+
3817
+ <fo:block xsl:use-attribute-sets="table-note-style">
3818
+
3819
+
3820
+
3821
+
3701
3822
 
3702
-
3703
- <fo:block font-size="10pt" margin-bottom="12pt">
3704
-
3823
+ <!-- Table's note name (NOTE, for example) -->
3824
+ <fo:inline xsl:use-attribute-sets="table-note-name-style">
3705
3825
 
3706
- <xsl:attribute name="font-size">9pt</xsl:attribute>
3707
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3708
3826
 
3709
3827
 
3710
3828
 
3711
3829
 
3712
3830
 
3713
3831
 
3714
-
3715
- <!-- Table's note name (NOTE, for example) -->
3716
-
3717
- <fo:inline padding-right="2mm" xsl:use-attribute-sets="table-note-name-style">
3832
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
3718
3833
 
3719
-
3720
-
3721
-
3722
-
3723
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
3724
-
3725
- </fo:inline>
3726
-
3727
-
3728
-
3729
- <xsl:apply-templates mode="process"/>
3730
- </fo:block>
3834
+ </fo:inline>
3835
+
3836
+
3837
+
3838
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]" mode="process"/>
3839
+ </fo:block>
3731
3840
 
3732
3841
  </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='name']" mode="process"/><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
3733
3842
  <xsl:apply-templates/>
@@ -3809,8 +3918,7 @@
3809
3918
  <xsl:copy-of select="$footnote_inline"/>
3810
3919
  <fo:footnote-body>
3811
3920
 
3812
- <fo:block-container text-indent="0" start-indent="0">
3813
-
3921
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
3814
3922
 
3815
3923
  <fo:block xsl:use-attribute-sets="fn-body-style">
3816
3924
 
@@ -3829,7 +3937,7 @@
3829
3937
  <xsl:copy-of select="$footnote_inline"/>
3830
3938
  </xsl:otherwise>
3831
3939
  </xsl:choose>
3832
- </xsl:template><xsl:template name="fn_display">
3940
+ </xsl:template><xsl:template name="table_fn_display">
3833
3941
  <xsl:variable name="references">
3834
3942
 
3835
3943
  <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
@@ -3840,36 +3948,26 @@
3840
3948
  <xsl:for-each select="xalan:nodeset($references)//fn">
3841
3949
  <xsl:variable name="reference" select="@reference"/>
3842
3950
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
3843
- <fo:block margin-bottom="12pt">
3951
+ <fo:block xsl:use-attribute-sets="table-fn-style">
3844
3952
 
3845
3953
 
3846
3954
 
3847
- <xsl:attribute name="font-size">9pt</xsl:attribute>
3848
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3849
-
3850
-
3851
-
3852
-
3853
-
3854
- <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
3955
+ <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
3855
3956
 
3856
3957
 
3857
- <xsl:attribute name="alignment-baseline">hanging</xsl:attribute>
3858
3958
 
3859
3959
 
3860
3960
 
3961
+ <xsl:value-of select="@reference"/>
3861
3962
 
3862
3963
 
3863
3964
 
3864
3965
 
3865
- <xsl:value-of select="@reference"/>
3866
3966
 
3867
3967
 
3868
3968
 
3869
3969
  </fo:inline>
3870
- <fo:inline>
3871
-
3872
- <!-- <xsl:apply-templates /> -->
3970
+ <fo:inline xsl:use-attribute-sets="table-fn-body-style">
3873
3971
  <xsl:copy-of select="./node()"/>
3874
3972
  </fo:inline>
3875
3973
  </fo:block>
@@ -3881,15 +3979,7 @@
3881
3979
 
3882
3980
  <xsl:apply-templates/>
3883
3981
  </fn>
3884
- </xsl:template><xsl:template name="fn_name_display">
3885
- <!-- <xsl:variable name="references">
3886
- <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
3887
- <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
3888
- <xsl:apply-templates />
3889
- </fn>
3890
- </xsl:for-each>
3891
- </xsl:variable>
3892
- $references=<xsl:copy-of select="$references"/> -->
3982
+ </xsl:template><xsl:template name="table_name_fn_display">
3893
3983
  <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
3894
3984
  <xsl:variable name="reference" select="@reference"/>
3895
3985
  <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
@@ -3898,9 +3988,7 @@
3898
3988
  </fo:block>
3899
3989
  </xsl:for-each>
3900
3990
  </xsl:template><xsl:template name="fn_display_figure">
3901
- <xsl:variable name="key_iso">
3902
- true <!-- and (not(@class) or @class !='pseudocode') -->
3903
- </xsl:variable>
3991
+
3904
3992
  <xsl:variable name="references">
3905
3993
  <xsl:for-each select=".//*[local-name()='fn'][not(parent::*[local-name()='name'])]">
3906
3994
  <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
@@ -3908,50 +3996,52 @@
3908
3996
  </fn>
3909
3997
  </xsl:for-each>
3910
3998
  </xsl:variable>
3999
+
4000
+ <xsl:if test="xalan:nodeset($references)//fn">
3911
4001
 
3912
- <!-- current hierarchy is 'figure' element -->
3913
- <xsl:variable name="following_dl_colwidths">
3914
- <xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
3915
- <xsl:variable name="html-table">
3916
- <xsl:variable name="doc_ns">
4002
+ <xsl:variable name="key_iso">
4003
+ true
4004
+ </xsl:variable>
4005
+
4006
+ <!-- current hierarchy is 'figure' element -->
4007
+ <xsl:variable name="following_dl_colwidths">
4008
+ <xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
4009
+ <xsl:variable name="html-table">
4010
+ <xsl:variable name="doc_ns">
4011
+
4012
+ </xsl:variable>
4013
+ <xsl:variable name="ns">
4014
+ <xsl:choose>
4015
+ <xsl:when test="normalize-space($doc_ns) != ''">
4016
+ <xsl:value-of select="normalize-space($doc_ns)"/>
4017
+ </xsl:when>
4018
+ <xsl:otherwise>
4019
+ <xsl:value-of select="substring-before(name(/*), '-')"/>
4020
+ </xsl:otherwise>
4021
+ </xsl:choose>
4022
+ </xsl:variable>
3917
4023
 
3918
- </xsl:variable>
3919
- <xsl:variable name="ns">
3920
- <xsl:choose>
3921
- <xsl:when test="normalize-space($doc_ns) != ''">
3922
- <xsl:value-of select="normalize-space($doc_ns)"/>
3923
- </xsl:when>
3924
- <xsl:otherwise>
3925
- <xsl:value-of select="substring-before(name(/*), '-')"/>
3926
- </xsl:otherwise>
3927
- </xsl:choose>
3928
- </xsl:variable>
3929
- <!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
3930
- <!-- <xsl:element name="{$ns}:table"> -->
3931
4024
  <xsl:for-each select="*[local-name() = 'dl'][1]">
3932
4025
  <tbody>
3933
4026
  <xsl:apply-templates mode="dl"/>
3934
4027
  </tbody>
3935
4028
  </xsl:for-each>
3936
- <!-- </xsl:element> -->
3937
- </xsl:variable>
3938
-
3939
- <xsl:call-template name="calculate-column-widths">
3940
- <xsl:with-param name="cols-count" select="2"/>
3941
- <xsl:with-param name="table" select="$html-table"/>
3942
- </xsl:call-template>
3943
-
3944
- </xsl:if>
3945
- </xsl:variable>
3946
-
3947
-
3948
- <xsl:variable name="maxlength_dt">
3949
- <xsl:for-each select="*[local-name() = 'dl'][1]">
3950
- <xsl:call-template name="getMaxLength_dt"/>
3951
- </xsl:for-each>
3952
- </xsl:variable>
3953
-
3954
- <xsl:if test="xalan:nodeset($references)//fn">
4029
+ </xsl:variable>
4030
+
4031
+ <xsl:call-template name="calculate-column-widths">
4032
+ <xsl:with-param name="cols-count" select="2"/>
4033
+ <xsl:with-param name="table" select="$html-table"/>
4034
+ </xsl:call-template>
4035
+
4036
+ </xsl:if>
4037
+ </xsl:variable>
4038
+
4039
+ <xsl:variable name="maxlength_dt">
4040
+ <xsl:for-each select="*[local-name() = 'dl'][1]">
4041
+ <xsl:call-template name="getMaxLength_dt"/>
4042
+ </xsl:for-each>
4043
+ </xsl:variable>
4044
+
3955
4045
  <fo:block>
3956
4046
  <fo:table width="95%" table-layout="fixed">
3957
4047
  <xsl:if test="normalize-space($key_iso) = 'true'">
@@ -3978,20 +4068,18 @@
3978
4068
  <fo:table-row>
3979
4069
  <fo:table-cell>
3980
4070
  <fo:block>
3981
- <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
3982
-
4071
+ <fo:inline id="{@id}" xsl:use-attribute-sets="figure-fn-number-style">
3983
4072
  <xsl:value-of select="@reference"/>
3984
4073
  </fo:inline>
3985
4074
  </fo:block>
3986
4075
  </fo:table-cell>
3987
4076
  <fo:table-cell>
3988
- <fo:block text-align="justify" margin-bottom="12pt">
3989
-
4077
+ <fo:block xsl:use-attribute-sets="figure-fn-body-style">
3990
4078
  <xsl:if test="normalize-space($key_iso) = 'true'">
3991
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
4079
+
4080
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
4081
+
3992
4082
  </xsl:if>
3993
-
3994
- <!-- <xsl:apply-templates /> -->
3995
4083
  <xsl:copy-of select="./node()"/>
3996
4084
  </fo:block>
3997
4085
  </fo:table-cell>
@@ -4004,24 +4092,17 @@
4004
4092
  </xsl:if>
4005
4093
 
4006
4094
  </xsl:template><xsl:template match="*[local-name()='fn']">
4007
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
4008
- <fo:inline font-size="80%" keep-with-previous.within-line="always">
4095
+ <fo:inline xsl:use-attribute-sets="fn-reference-style">
4096
+
4009
4097
 
4010
4098
 
4011
4099
 
4012
4100
  <xsl:if test="ancestor::*[local-name()='table']">
4013
4101
  <xsl:attribute name="font-weight">normal</xsl:attribute>
4014
- <!-- <xsl:attribute name="alignment-baseline">hanging</xsl:attribute> -->
4015
4102
  <xsl:attribute name="baseline-shift">15%</xsl:attribute>
4016
4103
  </xsl:if>
4017
4104
 
4018
4105
 
4019
-
4020
-
4021
-
4022
-
4023
-
4024
-
4025
4106
  <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
4026
4107
 
4027
4108
 
@@ -4041,10 +4122,10 @@
4041
4122
  <xsl:variable name="isDeleted" select="@deleted"/>
4042
4123
  <fo:block-container>
4043
4124
 
4044
- <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
4045
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
4046
- </xsl:if>
4047
-
4125
+ <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
4126
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
4127
+ </xsl:if>
4128
+
4048
4129
 
4049
4130
  <xsl:if test="parent::*[local-name() = 'note']">
4050
4131
  <xsl:attribute name="margin-left">
@@ -4061,11 +4142,11 @@
4061
4142
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
4062
4143
  </xsl:call-template>
4063
4144
 
4064
- <fo:block-container>
4065
-
4066
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
4067
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
4145
+ <fo:block-container margin-left="0mm">
4146
+
4068
4147
 
4148
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
4149
+
4069
4150
 
4070
4151
  <xsl:variable name="parent" select="local-name(..)"/>
4071
4152
 
@@ -4078,22 +4159,21 @@
4078
4159
  <xsl:choose>
4079
4160
  <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
4080
4161
 
4081
-
4082
- <fo:block margin-bottom="12pt" text-align="left">
4083
-
4084
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
4085
-
4086
- <xsl:variable name="title-where">
4087
- <xsl:call-template name="getLocalizedString">
4088
- <xsl:with-param name="key">where</xsl:with-param>
4089
- </xsl:call-template>
4090
- </xsl:variable>
4091
- <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
4092
- <xsl:apply-templates select="*[local-name()='dt']/*"/>
4093
- <xsl:text/>
4094
- <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
4095
- </fo:block>
4096
-
4162
+ <fo:block margin-bottom="12pt" text-align="left">
4163
+
4164
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
4165
+
4166
+ <xsl:variable name="title-where">
4167
+ <xsl:call-template name="getLocalizedString">
4168
+ <xsl:with-param name="key">where</xsl:with-param>
4169
+ </xsl:call-template>
4170
+ </xsl:variable>
4171
+ <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
4172
+ <xsl:apply-templates select="*[local-name()='dt']/*"/>
4173
+ <xsl:text/>
4174
+ <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
4175
+ </fo:block>
4176
+
4097
4177
  </xsl:when>
4098
4178
  <xsl:when test="$parent = 'formula'"> <!-- a few components -->
4099
4179
  <fo:block margin-bottom="12pt" text-align="left">
@@ -4150,9 +4230,7 @@
4150
4230
  <fo:table width="95%" table-layout="fixed">
4151
4231
 
4152
4232
  <xsl:choose>
4153
- <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
4154
- <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
4155
- </xsl:when>
4233
+ <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'"/>
4156
4234
  <xsl:when test="normalize-space($key_iso) = 'true'">
4157
4235
  <xsl:attribute name="font-size">10pt</xsl:attribute>
4158
4236
 
@@ -4173,12 +4251,9 @@
4173
4251
  </xsl:otherwise>
4174
4252
  </xsl:choose>
4175
4253
  </xsl:variable>
4176
- <!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
4177
- <!-- <xsl:element name="{$ns}:table"> -->
4178
- <tbody>
4179
- <xsl:apply-templates mode="dl"/>
4180
- </tbody>
4181
- <!-- </xsl:element> -->
4254
+ <tbody>
4255
+ <xsl:apply-templates mode="dl"/>
4256
+ </tbody>
4182
4257
  </xsl:variable>
4183
4258
  <!-- html-table<xsl:copy-of select="$html-table"/> -->
4184
4259
  <xsl:variable name="colwidths">
@@ -4258,8 +4333,6 @@
4258
4333
  </xsl:for-each>
4259
4334
  </xsl:otherwise>
4260
4335
  </xsl:choose>
4261
- <!-- <fo:table-column column-width="15%"/>
4262
- <fo:table-column column-width="85%"/> -->
4263
4336
  </xsl:otherwise>
4264
4337
  </xsl:choose>
4265
4338
  </xsl:template><xsl:template name="getMaxLength_dt">
@@ -4274,12 +4347,6 @@
4274
4347
  </xsl:for-each>
4275
4348
  </xsl:variable>
4276
4349
  <xsl:variable name="maxLength">
4277
- <!-- <xsl:for-each select="*[local-name()='dt']">
4278
- <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
4279
- <xsl:if test="position() = 1">
4280
- <xsl:value-of select="string-length(normalize-space(.))"/>
4281
- </xsl:if>
4282
- </xsl:for-each> -->
4283
4350
  <xsl:for-each select="xalan:nodeset($lengths)/length">
4284
4351
  <xsl:sort select="." data-type="number" order="descending"/>
4285
4352
  <xsl:if test="position() = 1">
@@ -4305,12 +4372,12 @@
4305
4372
  <xsl:if test="normalize-space($key_iso) = 'true'">
4306
4373
  <xsl:attribute name="margin-top">0</xsl:attribute>
4307
4374
  </xsl:if>
4308
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
4375
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
4309
4376
  </fo:block>
4310
4377
  </fo:table-cell>
4311
4378
  <fo:table-cell>
4312
4379
  <fo:block>
4313
- <xsl:apply-templates/>
4380
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4314
4381
  </fo:block>
4315
4382
  </fo:table-cell>
4316
4383
  </fo:table-row>
@@ -4321,78 +4388,37 @@
4321
4388
  </td>
4322
4389
  <td>
4323
4390
 
4324
-
4325
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4326
-
4391
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4392
+
4327
4393
  </td>
4328
4394
  </tr>
4329
4395
 
4330
4396
  </xsl:template><xsl:template match="*[local-name()='dt']">
4331
4397
  <xsl:param name="key_iso"/>
4332
4398
 
4333
- <fo:table-row>
4334
-
4335
-
4399
+ <fo:table-row xsl:use-attribute-sets="dt-row-style">
4336
4400
  <fo:table-cell>
4337
4401
 
4338
- <fo:block margin-top="6pt">
4402
+ <fo:block xsl:use-attribute-sets="dt-style">
4339
4403
  <xsl:copy-of select="@id"/>
4340
4404
 
4341
- <xsl:attribute name="margin-top">0pt</xsl:attribute>
4342
-
4343
-
4344
4405
  <xsl:if test="normalize-space($key_iso) = 'true'">
4345
4406
  <xsl:attribute name="margin-top">0</xsl:attribute>
4346
-
4347
4407
  </xsl:if>
4348
4408
 
4349
4409
 
4350
4410
 
4351
-
4352
-
4353
-
4354
-
4355
4411
  <xsl:apply-templates/>
4356
- <!-- <xsl:if test="$namespace = 'gb'">
4357
- <xsl:if test="ancestor::*[local-name()='formula']">
4358
- <xsl:text>—</xsl:text>
4359
- </xsl:if>
4360
- </xsl:if> -->
4361
4412
  </fo:block>
4362
4413
  </fo:table-cell>
4363
4414
  <fo:table-cell>
4364
4415
  <fo:block>
4365
4416
 
4366
- <!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
4367
- <xsl:if test="local-name(*[1]) != 'stem'">
4368
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4369
- </xsl:if>
4370
- </xsl:if> -->
4371
-
4372
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4373
-
4417
+
4418
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4374
4419
  </fo:block>
4375
4420
  </fo:table-cell>
4376
4421
  </fo:table-row>
4377
- <!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
4378
- <xsl:if test="local-name(*[1]) = 'stem'">
4379
- <fo:table-row>
4380
- <fo:table-cell>
4381
- <fo:block margin-top="6pt">
4382
- <xsl:if test="normalize-space($key_iso) = 'true'">
4383
- <xsl:attribute name="margin-top">0</xsl:attribute>
4384
- </xsl:if>
4385
- <xsl:text>&#xA0;</xsl:text>
4386
- </fo:block>
4387
- </fo:table-cell>
4388
- <fo:table-cell>
4389
- <fo:block>
4390
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
4391
- </fo:block>
4392
- </fo:table-cell>
4393
- </fo:table-row>
4394
- </xsl:if>
4395
- </xsl:if> -->
4396
4422
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
4397
4423
  <xsl:apply-templates/>
4398
4424
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
@@ -4421,6 +4447,7 @@
4421
4447
  </fo:inline>
4422
4448
  </xsl:template><xsl:template match="*[local-name()='tt']">
4423
4449
  <fo:inline xsl:use-attribute-sets="tt-style">
4450
+
4424
4451
  <xsl:variable name="_font-size">
4425
4452
 
4426
4453
 
@@ -4457,15 +4484,21 @@
4457
4484
  <xsl:apply-templates/>
4458
4485
  </fo:inline>
4459
4486
  </xsl:template><xsl:template match="*[local-name()='add']">
4487
+ <xsl:param name="skip">true</xsl:param>
4460
4488
  <xsl:choose>
4461
4489
  <xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
4462
- <fo:inline>
4463
- <xsl:call-template name="insertTag">
4464
- <xsl:with-param name="type" select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end -->
4465
- <xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
4466
- <xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
4467
- </xsl:call-template>
4468
- </fo:inline>
4490
+ <xsl:choose>
4491
+ <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>
4492
+ <xsl:otherwise>
4493
+ <fo:inline>
4494
+ <xsl:call-template name="insertTag">
4495
+ <xsl:with-param name="type" select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end -->
4496
+ <xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
4497
+ <xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
4498
+ </xsl:call-template>
4499
+ </fo:inline>
4500
+ </xsl:otherwise>
4501
+ </xsl:choose>
4469
4502
  </xsl:when>
4470
4503
  <xsl:when test="@amendment">
4471
4504
  <fo:inline>
@@ -4508,8 +4541,6 @@
4508
4541
  <xsl:variable name="add_width" select="string-length($value) * 20"/>
4509
4542
  <xsl:variable name="maxwidth" select="60 + $add_width"/>
4510
4543
  <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
4511
- <!-- <xsl:attribute name="width">7mm</xsl:attribute>
4512
- <xsl:attribute name="content-height">100%</xsl:attribute> -->
4513
4544
  <xsl:attribute name="height">5mm</xsl:attribute>
4514
4545
  <xsl:attribute name="content-width">100%</xsl:attribute>
4515
4546
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
@@ -4727,14 +4758,6 @@
4727
4758
 
4728
4759
  <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
4729
4760
 
4730
- <!-- <xsl:choose>
4731
- <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
4732
-
4733
- </xsl:when>
4734
- <xsl:otherwise>
4735
- <xsl:copy-of select="current()"/>
4736
- </xsl:otherwise>
4737
- </xsl:choose> -->
4738
4761
  </xsl:variable>
4739
4762
  <xsl:copy-of select="$simple-table"/>
4740
4763
  </xsl:template><xsl:template match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
@@ -4853,8 +4876,6 @@
4853
4876
  <xsl:choose>
4854
4877
  <xsl:when test="contains($str2, ' ')">
4855
4878
  <xsl:variable name="substr" select="substring-before($str2, ' ')"/>
4856
- <!-- <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
4857
- <xsl:value-of select="substring($substr, 2)"/> -->
4858
4879
  <xsl:call-template name="capitalize">
4859
4880
  <xsl:with-param name="str" select="$substr"/>
4860
4881
  </xsl:call-template>
@@ -4864,8 +4885,6 @@
4864
4885
  </xsl:call-template>
4865
4886
  </xsl:when>
4866
4887
  <xsl:otherwise>
4867
- <!-- <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
4868
- <xsl:value-of select="substring($str2, 2)"/> -->
4869
4888
  <xsl:call-template name="capitalize">
4870
4889
  <xsl:with-param name="str" select="$str2"/>
4871
4890
  </xsl:call-template>
@@ -4893,6 +4912,7 @@
4893
4912
  <xsl:apply-templates select="." mode="mathml"/>
4894
4913
  </xsl:variable>
4895
4914
  <fo:instream-foreign-object fox:alt-text="Math">
4915
+
4896
4916
 
4897
4917
 
4898
4918
  <xsl:variable name="comment_text_following" select="following-sibling::node()[1][self::comment()]"/>
@@ -4931,7 +4951,7 @@
4931
4951
  <xsl:attribute name="scaling">uniform</xsl:attribute>
4932
4952
  </xsl:if>
4933
4953
 
4934
- <!-- <xsl:copy-of select="."/> -->
4954
+
4935
4955
  <xsl:copy-of select="xalan:nodeset($mathml)"/>
4936
4956
  </fo:instream-foreign-object>
4937
4957
  </fo:inline>
@@ -4990,6 +5010,10 @@
4990
5010
 
4991
5011
 
4992
5012
 
5013
+
5014
+
5015
+
5016
+
4993
5017
  <xsl:choose>
4994
5018
  <xsl:when test="$target_text = ''">
4995
5019
  <xsl:apply-templates/>
@@ -5047,7 +5071,6 @@
5047
5071
  </fo:inline>
5048
5072
  </xsl:template><xsl:template match="*[local-name() = 'xref']">
5049
5073
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
5050
-
5051
5074
  <xsl:apply-templates/>
5052
5075
  </fo:basic-link>
5053
5076
  </xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
@@ -5075,49 +5098,64 @@
5075
5098
  <fo:inline>
5076
5099
  <xsl:apply-templates/>
5077
5100
  </fo:inline>
5078
- </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="presentation">
5101
+ </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="formula_number"> <!-- show by demand -->
5079
5102
  <xsl:if test="normalize-space() != ''">
5080
5103
  <xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
5081
5104
  </xsl:if>
5082
5105
  </xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
5083
5106
 
5084
5107
  <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
5108
+
5085
5109
 
5086
5110
 
5087
5111
 
5088
5112
 
5089
5113
 
5114
+
5115
+
5116
+
5117
+
5118
+
5090
5119
  <fo:block-container margin-left="0mm">
5120
+
5091
5121
 
5092
5122
 
5093
5123
 
5124
+
5094
5125
 
5095
-
5096
-
5097
-
5098
-
5099
- <fo:block>
5100
-
5101
-
5102
-
5103
-
5104
-
5126
+ <fo:block>
5127
+
5128
+
5105
5129
 
5106
- <fo:inline xsl:use-attribute-sets="note-name-style">
5107
5130
 
5108
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
5109
- </fo:inline>
5110
- <xsl:apply-templates/>
5111
- </fo:block>
5112
-
5113
-
5131
+
5132
+
5133
+
5134
+ <fo:inline xsl:use-attribute-sets="note-name-style">
5135
+
5136
+
5137
+
5138
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
5139
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
5140
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
5141
+ <xsl:with-param name="skip">false</xsl:with-param>
5142
+ </xsl:apply-templates>
5143
+ </xsl:if>
5144
+
5145
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
5146
+
5147
+ </fo:inline>
5148
+
5149
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5150
+ </fo:block>
5151
+
5114
5152
  </fo:block-container>
5115
5153
  </fo:block-container>
5116
5154
 
5117
5155
  </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'p']">
5118
5156
  <xsl:variable name="num"><xsl:number/></xsl:variable>
5119
5157
  <xsl:choose>
5120
- <xsl:when test="$num = 1">
5158
+ <xsl:when test="$num = 1"> <!-- display first NOTE's paragraph in the same line with label NOTE -->
5121
5159
  <fo:inline xsl:use-attribute-sets="note-p-style">
5122
5160
  <xsl:apply-templates/>
5123
5161
  </fo:inline>
@@ -5132,12 +5170,16 @@
5132
5170
  <fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">
5133
5171
 
5134
5172
  <fo:inline xsl:use-attribute-sets="termnote-name-style">
5173
+
5174
+
5175
+
5176
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
5135
5177
 
5136
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
5137
5178
  </fo:inline>
5138
- <xsl:apply-templates/>
5179
+
5180
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5139
5181
  </fo:block>
5140
- </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name'] | *[local-name() = 'termnote']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']" mode="presentation">
5182
+ </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']">
5141
5183
  <xsl:param name="sfx"/>
5142
5184
  <xsl:variable name="suffix">
5143
5185
  <xsl:choose>
@@ -5154,7 +5196,7 @@
5154
5196
  <xsl:apply-templates/>
5155
5197
  <xsl:value-of select="$suffix"/>
5156
5198
  </xsl:if>
5157
- </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'name']" mode="presentation">
5199
+ </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'name']">
5158
5200
  <xsl:param name="sfx"/>
5159
5201
  <xsl:variable name="suffix">
5160
5202
  <xsl:choose>
@@ -5181,27 +5223,25 @@
5181
5223
  <xsl:apply-templates/>
5182
5224
  </fo:block>
5183
5225
  </xsl:template><xsl:template match="*[local-name() = 'term']">
5184
- <!-- <xsl:message>'term' <xsl:number/> processing, name=<xsl:value-of select="iso:name"/>, preferred=<xsl:value-of select="iso:preferred"/>...</xsl:message> -->
5185
5226
  <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
5186
5227
 
5187
5228
 
5229
+
5230
+
5188
5231
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'term'])">
5189
5232
 
5190
5233
  <xsl:attribute name="space-before">12pt</xsl:attribute>
5191
5234
 
5192
5235
  </xsl:if>
5193
- <xsl:apply-templates/>
5236
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5194
5237
  </fo:block>
5195
- </xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']" mode="presentation">
5238
+ </xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
5196
5239
  <xsl:if test="normalize-space() != ''">
5197
5240
  <xsl:variable name="level">
5198
5241
  <xsl:call-template name="getLevelTermName"/>
5199
5242
  </xsl:variable>
5200
5243
  <fo:inline role="H{$level}">
5201
5244
  <xsl:apply-templates/>
5202
- <!-- <xsl:if test="$namespace = 'gb' or $namespace = 'ogc'">
5203
- <xsl:text>.</xsl:text>
5204
- </xsl:if> -->
5205
5245
  </fo:inline>
5206
5246
  </xsl:if>
5207
5247
  </xsl:template><xsl:template match="*[local-name() = 'figure']" name="figure">
@@ -5214,9 +5254,10 @@
5214
5254
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
5215
5255
  </xsl:call-template>
5216
5256
 
5217
- <fo:block>
5218
-
5219
- <xsl:apply-templates/>
5257
+
5258
+
5259
+ <fo:block xsl:use-attribute-sets="figure-style">
5260
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5220
5261
  </fo:block>
5221
5262
  <xsl:call-template name="fn_display_figure"/>
5222
5263
  <xsl:for-each select="*[local-name() = 'note']">
@@ -5224,14 +5265,15 @@
5224
5265
  </xsl:for-each>
5225
5266
 
5226
5267
 
5227
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
5268
+ <xsl:apply-templates select="*[local-name() = 'name']"/> <!-- show figure's name AFTER image -->
5269
+
5228
5270
 
5229
5271
  </fo:block-container>
5230
5272
  </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']">
5231
5273
  <fo:block id="{@id}">
5232
- <xsl:apply-templates/>
5274
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5233
5275
  </fo:block>
5234
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
5276
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
5235
5277
  </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']//*[local-name() = 'p']">
5236
5278
  <fo:block xsl:use-attribute-sets="figure-pseudocode-p-style">
5237
5279
  <xsl:apply-templates/>
@@ -5338,9 +5380,7 @@
5338
5380
  <xsl:variable name="bis" select="java:java.io.ByteArrayInputStream.new($fileContent)"/>
5339
5381
  <xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($bis)"/>
5340
5382
  <xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
5341
- <!-- width=<xsl:value-of select="$width"/> -->
5342
5383
  <xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
5343
- <!-- height=<xsl:value-of select="$height"/> -->
5344
5384
  <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
5345
5385
  <image xlink:href="{@src}" height="{$height}" width="{$width}" style="overflow:visible;"/>
5346
5386
  <xsl:call-template name="svg_cross">
@@ -5610,7 +5650,7 @@
5610
5650
  </fo:basic-link>
5611
5651
  </fo:block>
5612
5652
  </fo:block-container>
5613
- </xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
5653
+ </xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
5614
5654
  <xsl:apply-templates mode="contents"/>
5615
5655
  <xsl:text> </xsl:text>
5616
5656
  </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name'] | *[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="bookmarks">
@@ -5763,8 +5803,6 @@
5763
5803
 
5764
5804
 
5765
5805
 
5766
-
5767
-
5768
5806
  </fo:bookmark-tree>
5769
5807
  </xsl:if>
5770
5808
  </xsl:template><xsl:template name="insertFigureBookmarks">
@@ -5835,7 +5873,7 @@
5835
5873
  <xsl:apply-templates mode="bookmark"/>
5836
5874
  </xsl:otherwise>
5837
5875
  </xsl:choose>
5838
- </xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
5876
+ </xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']">
5839
5877
  <xsl:if test="normalize-space() != ''">
5840
5878
  <fo:block xsl:use-attribute-sets="figure-name-style">
5841
5879
 
@@ -5851,12 +5889,6 @@
5851
5889
  <!-- <xsl:text> </xsl:text> -->
5852
5890
  </xsl:template><xsl:template name="getSection">
5853
5891
  <xsl:value-of select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
5854
- <!--
5855
- <xsl:for-each select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/preceding-sibling::node()">
5856
- <xsl:value-of select="."/>
5857
- </xsl:for-each>
5858
- -->
5859
-
5860
5892
  </xsl:template><xsl:template name="getName">
5861
5893
  <xsl:choose>
5862
5894
  <xsl:when test="*[local-name() = 'title']/*[local-name() = 'tab']">
@@ -5925,16 +5957,21 @@
5925
5957
  <xsl:apply-templates mode="contents_item">
5926
5958
  <xsl:with-param name="mode" select="$mode"/>
5927
5959
  </xsl:apply-templates>
5928
- </xsl:template><xsl:template match="*[local-name() = 'add'][starts-with(text(), $ace_tag)]" mode="contents_item">
5960
+ </xsl:template><xsl:template match="*[local-name() = 'add']" mode="contents_item">
5929
5961
  <xsl:param name="mode">bookmarks</xsl:param>
5930
- <xsl:if test="$mode = 'contents'">
5931
- <xsl:copy>
5932
- <xsl:apply-templates mode="contents_item"/>
5933
- </xsl:copy>
5934
- </xsl:if>
5962
+ <xsl:choose>
5963
+ <xsl:when test="starts-with(text(), $ace_tag)">
5964
+ <xsl:if test="$mode = 'contents'">
5965
+ <xsl:copy>
5966
+ <xsl:apply-templates mode="contents_item"/>
5967
+ </xsl:copy>
5968
+ </xsl:if>
5969
+ </xsl:when>
5970
+ <xsl:otherwise><xsl:apply-templates mode="contents_item"/></xsl:otherwise>
5971
+ </xsl:choose>
5935
5972
  </xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
5936
5973
 
5937
- <fo:block-container margin-left="0mm">
5974
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
5938
5975
  <xsl:copy-of select="@id"/>
5939
5976
 
5940
5977
  <xsl:if test="parent::*[local-name() = 'note']">
@@ -5971,6 +6008,7 @@
5971
6008
 
5972
6009
 
5973
6010
  </xsl:variable>
6011
+
5974
6012
  <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
5975
6013
  <xsl:if test="$font-size != ''">
5976
6014
  <xsl:attribute name="font-size">
@@ -5987,11 +6025,11 @@
5987
6025
 
5988
6026
 
5989
6027
 
5990
- <xsl:apply-templates/>
6028
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5991
6029
  </fo:block>
5992
6030
 
5993
6031
 
5994
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
6032
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
5995
6033
 
5996
6034
 
5997
6035
 
@@ -6005,7 +6043,7 @@
6005
6043
  <xsl:call-template name="add-zero-spaces-java">
6006
6044
  <xsl:with-param name="text" select="$text"/>
6007
6045
  </xsl:call-template>
6008
- </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="presentation">
6046
+ </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
6009
6047
  <xsl:if test="normalize-space() != ''">
6010
6048
  <fo:block xsl:use-attribute-sets="sourcecode-name-style">
6011
6049
  <xsl:apply-templates/>
@@ -6013,10 +6051,10 @@
6013
6051
  </xsl:if>
6014
6052
  </xsl:template><xsl:template match="*[local-name() = 'permission']">
6015
6053
  <fo:block id="{@id}" xsl:use-attribute-sets="permission-style">
6016
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
6017
- <xsl:apply-templates/>
6054
+ <xsl:apply-templates select="*[local-name()='name']"/>
6055
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6018
6056
  </fo:block>
6019
- </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']" mode="presentation">
6057
+ </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']">
6020
6058
  <xsl:if test="normalize-space() != ''">
6021
6059
  <fo:block xsl:use-attribute-sets="permission-name-style">
6022
6060
  <xsl:apply-templates/>
@@ -6029,13 +6067,13 @@
6029
6067
  </fo:block>
6030
6068
  </xsl:template><xsl:template match="*[local-name() = 'requirement']">
6031
6069
  <fo:block id="{@id}" xsl:use-attribute-sets="requirement-style">
6032
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
6033
- <xsl:apply-templates select="*[local-name()='label']" mode="presentation"/>
6034
- <xsl:apply-templates select="@obligation" mode="presentation"/>
6035
- <xsl:apply-templates select="*[local-name()='subject']" mode="presentation"/>
6036
- <xsl:apply-templates/>
6070
+ <xsl:apply-templates select="*[local-name()='name']"/>
6071
+ <xsl:apply-templates select="*[local-name()='label']"/>
6072
+ <xsl:apply-templates select="@obligation"/>
6073
+ <xsl:apply-templates select="*[local-name()='subject']"/>
6074
+ <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'label') and not(local-name() = 'subject')]"/>
6037
6075
  </fo:block>
6038
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']" mode="presentation">
6076
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']">
6039
6077
  <xsl:if test="normalize-space() != ''">
6040
6078
  <fo:block xsl:use-attribute-sets="requirement-name-style">
6041
6079
 
@@ -6043,20 +6081,24 @@
6043
6081
 
6044
6082
  </fo:block>
6045
6083
  </xsl:if>
6046
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']" mode="presentation">
6084
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']">
6047
6085
  <fo:block xsl:use-attribute-sets="requirement-label-style">
6048
6086
  <xsl:apply-templates/>
6049
6087
  </fo:block>
6050
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/@obligation" mode="presentation">
6088
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/@obligation">
6051
6089
  <fo:block>
6052
6090
  <fo:inline padding-right="3mm">Obligation</fo:inline><xsl:value-of select="."/>
6053
6091
  </fo:block>
6092
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" priority="2">
6093
+ <fo:block xsl:use-attribute-sets="subject-style">
6094
+ <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
6095
+ </fo:block>
6054
6096
  </xsl:template><xsl:template match="*[local-name() = 'recommendation']">
6055
6097
  <fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
6056
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
6057
- <xsl:apply-templates/>
6098
+ <xsl:apply-templates select="*[local-name()='name']"/>
6099
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6058
6100
  </fo:block>
6059
- </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']" mode="presentation">
6101
+ </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']">
6060
6102
  <xsl:if test="normalize-space() != ''">
6061
6103
  <fo:block xsl:use-attribute-sets="recommendation-name-style">
6062
6104
  <xsl:apply-templates/>
@@ -6067,10 +6109,6 @@
6067
6109
  <fo:block xsl:use-attribute-sets="recommendation-label-style">
6068
6110
  <xsl:apply-templates/>
6069
6111
  </fo:block>
6070
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" priority="2"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" mode="presentation">
6071
- <fo:block xsl:use-attribute-sets="subject-style">
6072
- <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
6073
- </fo:block>
6074
6112
  </xsl:template><xsl:template match="*[local-name() = 'subject']">
6075
6113
  <fo:block xsl:use-attribute-sets="subject-style">
6076
6114
  <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
@@ -6114,8 +6152,6 @@
6114
6152
  </xsl:variable>
6115
6153
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
6116
6154
  <xsl:if test="$cols-count = 2 and not(ancestor::*[local-name()='table'])">
6117
- <!-- <fo:table-column column-width="35mm"/>
6118
- <fo:table-column column-width="115mm"/> -->
6119
6155
  <fo:table-column column-width="30%"/>
6120
6156
  <fo:table-column column-width="70%"/>
6121
6157
  </xsl:if>
@@ -6125,7 +6161,7 @@
6125
6161
  <xsl:if test=".//*[local-name() = 'fn']">
6126
6162
  <xsl:for-each select="*[local-name() = 'tbody']">
6127
6163
  <fo:block font-size="90%" border-bottom="1pt solid black">
6128
- <xsl:call-template name="fn_display"/>
6164
+ <xsl:call-template name="table_fn_display"/>
6129
6165
  </fo:block>
6130
6166
  </xsl:for-each>
6131
6167
  </xsl:if>
@@ -6142,7 +6178,6 @@
6142
6178
  </xsl:template><xsl:template match="*[local-name()='tr']" mode="requirement">
6143
6179
  <fo:table-row height="7mm" border-bottom="0.5pt solid grey">
6144
6180
  <xsl:if test="parent::*[local-name()='thead']"> <!-- and not(ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']) -->
6145
- <!-- <xsl:attribute name="border">1pt solid black</xsl:attribute> -->
6146
6181
  <xsl:attribute name="background-color">rgb(33, 55, 92)</xsl:attribute>
6147
6182
  </xsl:if>
6148
6183
  <xsl:if test="starts-with(*[local-name()='td'][1], 'Requirement ')">
@@ -6155,34 +6190,11 @@
6155
6190
  </fo:table-row>
6156
6191
  </xsl:template><xsl:template match="*[local-name()='th']" mode="requirement">
6157
6192
  <fo:table-cell text-align="{@align}" display-align="center" padding="1mm" padding-left="2mm"> <!-- border="0.5pt solid black" -->
6158
- <xsl:attribute name="text-align">
6159
- <xsl:choose>
6160
- <xsl:when test="@align">
6161
- <xsl:value-of select="@align"/>
6162
- </xsl:when>
6163
- <xsl:otherwise>left</xsl:otherwise>
6164
- </xsl:choose>
6165
- </xsl:attribute>
6166
- <xsl:if test="@colspan">
6167
- <xsl:attribute name="number-columns-spanned">
6168
- <xsl:value-of select="@colspan"/>
6169
- </xsl:attribute>
6170
- </xsl:if>
6171
- <xsl:if test="@rowspan">
6172
- <xsl:attribute name="number-rows-spanned">
6173
- <xsl:value-of select="@rowspan"/>
6174
- </xsl:attribute>
6175
- </xsl:if>
6176
- <xsl:call-template name="display-align"/>
6193
+ <xsl:call-template name="setTextAlignment">
6194
+ <xsl:with-param name="default">left</xsl:with-param>
6195
+ </xsl:call-template>
6177
6196
 
6178
- <!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
6179
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
6180
- <xsl:attribute name="background-color">rgb(165, 165, 165)</xsl:attribute>
6181
- </xsl:if>
6182
- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommendtest'">
6183
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
6184
- <xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
6185
- </xsl:if> -->
6197
+ <xsl:call-template name="setTableCellAttributes"/>
6186
6198
 
6187
6199
  <fo:block>
6188
6200
  <xsl:apply-templates/>
@@ -6194,37 +6206,15 @@
6194
6206
  <xsl:attribute name="padding">0mm</xsl:attribute>
6195
6207
  <xsl:attribute name="padding-left">0mm</xsl:attribute>
6196
6208
  </xsl:if>
6197
- <xsl:attribute name="text-align">
6198
- <xsl:choose>
6199
- <xsl:when test="@align">
6200
- <xsl:value-of select="@align"/>
6201
- </xsl:when>
6202
- <xsl:otherwise>left</xsl:otherwise>
6203
- </xsl:choose>
6204
- </xsl:attribute>
6209
+ <xsl:call-template name="setTextAlignment">
6210
+ <xsl:with-param name="default">left</xsl:with-param>
6211
+ </xsl:call-template>
6212
+
6205
6213
  <xsl:if test="following-sibling::*[local-name()='td'] and not(preceding-sibling::*[local-name()='td'])">
6206
6214
  <xsl:attribute name="font-weight">bold</xsl:attribute>
6207
6215
  </xsl:if>
6208
- <xsl:if test="@colspan">
6209
- <xsl:attribute name="number-columns-spanned">
6210
- <xsl:value-of select="@colspan"/>
6211
- </xsl:attribute>
6212
- </xsl:if>
6213
- <xsl:if test="@rowspan">
6214
- <xsl:attribute name="number-rows-spanned">
6215
- <xsl:value-of select="@rowspan"/>
6216
- </xsl:attribute>
6217
- </xsl:if>
6218
- <xsl:call-template name="display-align"/>
6219
6216
 
6220
- <!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
6221
- <xsl:attribute name="padding-left">0.5mm</xsl:attribute>
6222
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
6223
- <xsl:if test="parent::*[local-name()='tr']/preceding-sibling::*[local-name()='tr'] and not(*[local-name()='table'])">
6224
- <xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
6225
- </xsl:if>
6226
- </xsl:if> -->
6227
- <!-- 2nd line and below -->
6217
+ <xsl:call-template name="setTableCellAttributes"/>
6228
6218
 
6229
6219
  <fo:block>
6230
6220
  <xsl:apply-templates/>
@@ -6236,15 +6226,15 @@
6236
6226
  <xsl:apply-templates/>
6237
6227
  </fo:block>
6238
6228
  </xsl:template><xsl:template match="*[local-name() = 'p2'][ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']]">
6239
- <fo:block> <!-- margin-bottom="10pt" -->
6229
+ <fo:block>
6240
6230
  <xsl:apply-templates/>
6241
6231
  </fo:block>
6242
6232
  </xsl:template><xsl:template match="*[local-name() = 'termexample']">
6243
6233
  <fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
6244
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
6245
- <xsl:apply-templates/>
6234
+ <xsl:apply-templates select="*[local-name()='name']"/>
6235
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6246
6236
  </fo:block>
6247
- </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']" mode="presentation">
6237
+ </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']">
6248
6238
  <xsl:if test="normalize-space() != ''">
6249
6239
  <fo:inline xsl:use-attribute-sets="termexample-name-style">
6250
6240
  <xsl:apply-templates/>
@@ -6270,9 +6260,7 @@
6270
6260
 
6271
6261
  <xsl:variable name="fo_element">
6272
6262
  <xsl:if test=".//*[local-name() = 'table'] or .//*[local-name() = 'dl']">block</xsl:if>
6273
-
6274
6263
  inline
6275
-
6276
6264
  </xsl:variable>
6277
6265
 
6278
6266
  <!-- display 'EXAMPLE' -->
@@ -6350,6 +6338,8 @@
6350
6338
  </xsl:template><xsl:template match="*[local-name() = 'termsource']" name="termsource">
6351
6339
  <fo:block xsl:use-attribute-sets="termsource-style">
6352
6340
 
6341
+
6342
+
6353
6343
  <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
6354
6344
  <xsl:variable name="termsource_text">
6355
6345
  <xsl:apply-templates/>
@@ -6387,9 +6377,7 @@
6387
6377
  <xsl:value-of select="."/>
6388
6378
  </xsl:if>
6389
6379
  </xsl:template><xsl:template match="*[local-name() = 'termsource']/*[local-name() = 'strong'][1][following-sibling::*[1][local-name() = 'origin']]/text()">
6390
- <fo:inline>
6391
-
6392
-
6380
+ <fo:inline xsl:use-attribute-sets="termsource-text-style">
6393
6381
  <xsl:value-of select="."/>
6394
6382
  </fo:inline>
6395
6383
  </xsl:template><xsl:template match="*[local-name() = 'origin']">
@@ -6432,7 +6420,6 @@
6432
6420
  <fo:block-container margin-left="0mm">
6433
6421
 
6434
6422
  <fo:block xsl:use-attribute-sets="quote-style">
6435
- <!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
6436
6423
 
6437
6424
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
6438
6425
  </fo:block>
@@ -6475,15 +6462,13 @@
6475
6462
  </xsl:variable>
6476
6463
 
6477
6464
  <xsl:choose>
6478
- <xsl:when test="normalize-space($bibitemid) != ''">
6465
+ <xsl:when test="normalize-space($bibitemid) != ''"> <!-- if in the bibliography there is the item with @bibitemid (and not hidden), then create link -->
6479
6466
  <fo:inline xsl:use-attribute-sets="eref-style">
6480
6467
  <xsl:if test="@type = 'footnote'">
6481
-
6482
- <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
6483
- <xsl:attribute name="font-size">80%</xsl:attribute>
6484
- <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
6485
- <xsl:attribute name="vertical-align">super</xsl:attribute>
6486
-
6468
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
6469
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
6470
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
6471
+ <xsl:attribute name="font-size">80%</xsl:attribute>
6487
6472
 
6488
6473
  </xsl:if>
6489
6474
 
@@ -6500,7 +6485,6 @@
6500
6485
 
6501
6486
 
6502
6487
 
6503
-
6504
6488
  </xsl:if>
6505
6489
 
6506
6490
 
@@ -6558,8 +6542,6 @@
6558
6542
  </xsl:choose>
6559
6543
  </xsl:variable>
6560
6544
 
6561
- <!-- <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/> -->
6562
-
6563
6545
  <xsl:choose>
6564
6546
  <xsl:when test="$lang = 'zh'">
6565
6547
  <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
@@ -6615,7 +6597,6 @@
6615
6597
  <xsl:apply-templates/>
6616
6598
  </xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]/*[local-name() = 'p'][1]">
6617
6599
  <fo:inline> <xsl:apply-templates/></fo:inline>
6618
- <!-- <fo:block>&#xA0;</fo:block> -->
6619
6600
  <fo:block/>
6620
6601
  </xsl:template><xsl:template match="/*/*[local-name() = 'sections']/*" priority="2">
6621
6602
 
@@ -6656,11 +6637,6 @@
6656
6637
  <xsl:apply-templates/>
6657
6638
  </fo:block>
6658
6639
  </xsl:template><xsl:template match="*[local-name() = 'definitions']">
6659
- <fo:block id="{@id}">
6660
- <xsl:apply-templates/>
6661
- </fo:block>
6662
- </xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@normative='true']">
6663
-
6664
6640
  <fo:block id="{@id}">
6665
6641
  <xsl:apply-templates/>
6666
6642
  </fo:block>
@@ -6928,58 +6904,100 @@
6928
6904
  <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
6929
6905
  <fo:block><xsl:apply-templates/></fo:block>
6930
6906
  </fo:table-cell>
6931
- </xsl:template><xsl:template name="processBibitem">
6907
+ </xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/><xsl:template match="*[local-name() = 'references'][@normative='true']" priority="2">
6932
6908
 
6933
6909
 
6934
6910
 
6911
+ <fo:block id="{@id}">
6912
+ <xsl:apply-templates/>
6913
+ </fo:block>
6914
+ </xsl:template><xsl:template match="*[local-name() = 'references']">
6915
+ <xsl:if test="not(ancestor::*[local-name() = 'annex'])">
6916
+
6917
+ <fo:block break-after="page"/>
6918
+
6919
+ </xsl:if>
6935
6920
 
6921
+ <!-- <xsl:if test="ancestor::*[local-name() = 'annex']">
6922
+ <xsl:if test="$namespace = 'csa' or $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'iso' or $namespace = 'itu'">
6923
+ <fo:block break-after="page"/>
6924
+ </xsl:if>
6925
+ </xsl:if> -->
6936
6926
 
6927
+ <fo:block id="{@id}" xsl:use-attribute-sets="references-non-normative-style">
6928
+ <xsl:apply-templates/>
6929
+ </fo:block>
6937
6930
 
6938
6931
 
6939
6932
 
6940
6933
 
6934
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']">
6935
+ <xsl:call-template name="bibitem"/>
6936
+ </xsl:template><xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
6941
6937
 
6938
+ <fo:block id="{@id}" xsl:use-attribute-sets="bibitem-normative-style">
6939
+ <xsl:call-template name="processBibitem"/>
6940
+ </fo:block>
6941
+
6942
+
6943
+ </xsl:template><xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" priority="2">
6944
+
6945
+ <!-- $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'iso' or $namespace = 'jcgm' or $namespace = 'm3d' or
6946
+ $namespace = 'mpfd' or $namespace = 'ogc' or $namespace = 'ogc-white-paper' -->
6947
+ <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
6948
+ <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
6949
+ <fo:list-item>
6950
+ <fo:list-item-label end-indent="label-end()">
6951
+ <fo:block>
6952
+ <fo:inline>
6953
+
6954
+ <xsl:value-of select="*[local-name()='docidentifier'][@type = 'metanorma-ordinal']"/>
6955
+ <xsl:if test="not(*[local-name()='docidentifier'][@type = 'metanorma-ordinal'])">
6956
+ <xsl:number format="[1]"/>
6957
+ </xsl:if>
6958
+
6959
+ </fo:inline>
6960
+ </fo:block>
6961
+ </fo:list-item-label>
6962
+ <fo:list-item-body start-indent="body-start()">
6963
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style">
6964
+ <xsl:call-template name="processBibitem"/>
6965
+ </fo:block>
6966
+ </fo:list-item-body>
6967
+ </fo:list-item>
6968
+ </fo:list-block>
6969
+
6942
6970
 
6943
-
6971
+ </xsl:template><xsl:template name="processBibitem">
6944
6972
 
6945
6973
 
6946
- <!-- start ISO bibtem processing -->
6947
- <xsl:variable name="docidentifier">
6948
- <xsl:if test="*[local-name() = 'docidentifier']">
6974
+ <!-- start bibitem processing -->
6975
+ <xsl:if test=".//*[local-name() = 'fn']">
6976
+ <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
6977
+ </xsl:if>
6978
+ <xsl:variable name="docidentifier">
6949
6979
  <xsl:choose>
6950
6980
  <xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
6951
- <xsl:otherwise><xsl:value-of select="*[local-name()='docidentifier'][not(@type = 'metanorma-ordinal')]"/></xsl:otherwise>
6981
+ <xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma-ordinal')]"/></xsl:otherwise>
6952
6982
  </xsl:choose>
6953
- </xsl:if>
6954
- </xsl:variable>
6955
- <xsl:value-of select="$docidentifier"/>
6956
- <xsl:apply-templates select="*[local-name() = 'note']"/>
6957
- <xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
6958
- <xsl:choose>
6959
- <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = $lang]">
6960
- <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = $lang]"/>
6961
- </xsl:when>
6962
- <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
6963
- <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
6964
- </xsl:when>
6965
- <xsl:otherwise>
6966
- <xsl:apply-templates select="*[local-name() = 'title']"/>
6967
- </xsl:otherwise>
6968
- </xsl:choose>
6969
- <xsl:apply-templates select="*[local-name() = 'formattedref']"/>
6970
- <!-- end ISO bibitem processing -->
6971
-
6972
-
6973
-
6974
-
6975
-
6976
- <!-- end MPFD bibitem processing -->
6977
-
6978
- <!-- start M3D bibitem processing -->
6979
-
6980
-
6981
-
6982
-
6983
+ </xsl:variable>
6984
+ <fo:inline><xsl:value-of select="$docidentifier"/></fo:inline>
6985
+ <xsl:apply-templates select="*[local-name() = 'note']"/>
6986
+ <xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
6987
+ <xsl:choose>
6988
+ <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = $lang]">
6989
+ <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = $lang]"/>
6990
+ </xsl:when>
6991
+ <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
6992
+ <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
6993
+ </xsl:when>
6994
+ <xsl:otherwise>
6995
+ <xsl:apply-templates select="*[local-name() = 'title']"/>
6996
+ </xsl:otherwise>
6997
+ </xsl:choose>
6998
+ <xsl:apply-templates select="*[local-name() = 'formattedref']"/>
6999
+ <!-- end bibitem processing -->
7000
+
6983
7001
  </xsl:template><xsl:template name="processBibitemDocId">
6984
7002
  <xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'metanorma-ordinal' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
6985
7003
  <xsl:choose>
@@ -7036,6 +7054,52 @@
7036
7054
  <xsl:value-of select="substring(.,1,1)"/>
7037
7055
  </xsl:template><xsl:template match="*[local-name() = 'title']" mode="title">
7038
7056
  <fo:inline><xsl:apply-templates/></fo:inline>
7057
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'title']" priority="2">
7058
+ <!-- <fo:inline><xsl:apply-templates /></fo:inline> -->
7059
+ <fo:inline font-style="italic"> <!-- BIPM BSI CSD CSA GB IEC IHO ISO ITU JCGM -->
7060
+ <xsl:apply-templates/>
7061
+ </fo:inline>
7062
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'note']" priority="2">
7063
+ <fo:footnote>
7064
+ <xsl:variable name="number">
7065
+
7066
+ <xsl:number level="any" count="*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
7067
+
7068
+ </xsl:variable>
7069
+ <fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
7070
+ <fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
7071
+ <xsl:value-of select="$number"/>
7072
+
7073
+ <xsl:text>)</xsl:text>
7074
+
7075
+ </fo:basic-link>
7076
+ </fo:inline>
7077
+ <fo:footnote-body>
7078
+ <fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
7079
+ <fo:inline id="{generate-id()}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
7080
+ <xsl:value-of select="$number"/>
7081
+
7082
+ <xsl:text>)</xsl:text>
7083
+
7084
+ </fo:inline>
7085
+ <xsl:apply-templates/>
7086
+ </fo:block>
7087
+ </fo:footnote-body>
7088
+ </fo:footnote>
7089
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'edition']"> <!-- for iho -->
7090
+ <xsl:text> edition </xsl:text>
7091
+ <xsl:value-of select="."/>
7092
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'uri']"> <!-- for iho -->
7093
+ <xsl:text> (</xsl:text>
7094
+ <fo:inline xsl:use-attribute-sets="link-style">
7095
+ <fo:basic-link external-destination="." fox:alt-text=".">
7096
+ <xsl:value-of select="."/>
7097
+ </fo:basic-link>
7098
+ </fo:inline>
7099
+ <xsl:text>)</xsl:text>
7100
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/><xsl:template match="*[local-name() = 'formattedref']">
7101
+
7102
+ <xsl:apply-templates/>
7039
7103
  </xsl:template><xsl:template match="*[local-name() = 'form']">
7040
7104
  <fo:block>
7041
7105
  <xsl:apply-templates/>
@@ -7108,24 +7172,7 @@
7108
7172
  <xsl:when test="$htmltoclevels != ''"><xsl:value-of select="number($htmltoclevels)"/></xsl:when> <!-- if there is value in xml -->
7109
7173
  <xsl:when test="$toclevels != ''"><xsl:value-of select="number($toclevels)"/></xsl:when> <!-- if there is value in xml -->
7110
7174
  <xsl:otherwise><!-- default value -->
7111
-
7112
-
7113
-
7114
-
7115
-
7116
-
7117
-
7118
-
7119
-
7120
-
7121
-
7122
-
7123
-
7124
-
7125
-
7126
-
7127
-
7128
-
7175
+ 3
7129
7176
  </xsl:otherwise>
7130
7177
  </xsl:choose>
7131
7178
  </xsl:variable><xsl:template match="*[local-name() = 'toc']">
@@ -7223,6 +7270,51 @@
7223
7270
  <xsl:copy-of select="."/>
7224
7271
  </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
7225
7272
  <xsl:call-template name="title"/>
7273
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']">
7274
+
7275
+
7276
+
7277
+
7278
+
7279
+
7280
+ <fo:block xsl:use-attribute-sets="admonition-style">
7281
+
7282
+
7283
+
7284
+
7285
+
7286
+
7287
+ <xsl:call-template name="displayAdmonitionName"/>
7288
+ <xsl:text> — </xsl:text>
7289
+
7290
+
7291
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
7292
+ </fo:block>
7293
+
7294
+ </xsl:template><xsl:template name="displayAdmonitionName">
7295
+
7296
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
7297
+ <xsl:if test="not(*[local-name() = 'name'])">
7298
+ <xsl:apply-templates select="@type"/>
7299
+ </xsl:if>
7300
+
7301
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'name']">
7302
+ <xsl:apply-templates/>
7303
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/@type">
7304
+ <xsl:variable name="admonition_type_">
7305
+ <xsl:call-template name="getLocalizedString">
7306
+ <xsl:with-param name="key">admonition.<xsl:value-of select="."/></xsl:with-param>
7307
+ </xsl:call-template>
7308
+ </xsl:variable>
7309
+ <xsl:variable name="admonition_type" select="normalize-space(java:toUpperCase(java:java.lang.String.new($admonition_type_)))"/>
7310
+ <xsl:value-of select="$admonition_type"/>
7311
+ <xsl:if test="$admonition_type = ''">
7312
+ <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(.))"/>
7313
+ </xsl:if>
7314
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'p']">
7315
+ <!-- processing for admonition/p found in the template for 'p' -->
7316
+ <xsl:call-template name="paragraph"/>
7317
+
7226
7318
  </xsl:template><xsl:template name="convertDate">
7227
7319
  <xsl:param name="date"/>
7228
7320
  <xsl:param name="format" select="'short'"/>
@@ -7231,78 +7323,39 @@
7231
7323
  <xsl:variable name="day" select="substring($date, 9, 2)"/>
7232
7324
  <xsl:variable name="monthStr">
7233
7325
  <xsl:choose>
7234
- <xsl:when test="$month = '01'">January</xsl:when>
7235
- <xsl:when test="$month = '02'">February</xsl:when>
7236
- <xsl:when test="$month = '03'">March</xsl:when>
7237
- <xsl:when test="$month = '04'">April</xsl:when>
7238
- <xsl:when test="$month = '05'">May</xsl:when>
7239
- <xsl:when test="$month = '06'">June</xsl:when>
7240
- <xsl:when test="$month = '07'">July</xsl:when>
7241
- <xsl:when test="$month = '08'">August</xsl:when>
7242
- <xsl:when test="$month = '09'">September</xsl:when>
7243
- <xsl:when test="$month = '10'">October</xsl:when>
7244
- <xsl:when test="$month = '11'">November</xsl:when>
7245
- <xsl:when test="$month = '12'">December</xsl:when>
7246
- </xsl:choose>
7247
- </xsl:variable>
7248
- <xsl:variable name="result">
7249
- <xsl:choose>
7250
- <xsl:when test="$format = 'ddMMyyyy'">
7251
- <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
7252
- <xsl:text> </xsl:text>
7253
- <xsl:value-of select="normalize-space(concat($monthStr, ' ' , $year))"/>
7254
- </xsl:when>
7255
- <xsl:when test="$format = 'ddMM'">
7256
- <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
7257
- <xsl:text> </xsl:text><xsl:value-of select="$monthStr"/>
7258
- </xsl:when>
7259
- <xsl:when test="$format = 'short' or $day = ''">
7260
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
7261
- </xsl:when>
7262
- <xsl:otherwise>
7263
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
7264
- </xsl:otherwise>
7326
+ <xsl:when test="$month = '01'">january</xsl:when>
7327
+ <xsl:when test="$month = '02'">february</xsl:when>
7328
+ <xsl:when test="$month = '03'">march</xsl:when>
7329
+ <xsl:when test="$month = '04'">april</xsl:when>
7330
+ <xsl:when test="$month = '05'">may</xsl:when>
7331
+ <xsl:when test="$month = '06'">june</xsl:when>
7332
+ <xsl:when test="$month = '07'">july</xsl:when>
7333
+ <xsl:when test="$month = '08'">august</xsl:when>
7334
+ <xsl:when test="$month = '09'">september</xsl:when>
7335
+ <xsl:when test="$month = '10'">october</xsl:when>
7336
+ <xsl:when test="$month = '11'">november</xsl:when>
7337
+ <xsl:when test="$month = '12'">december</xsl:when>
7265
7338
  </xsl:choose>
7266
7339
  </xsl:variable>
7267
- <xsl:value-of select="$result"/>
7268
- </xsl:template><xsl:template name="convertDateLocalized">
7269
- <xsl:param name="date"/>
7270
- <xsl:param name="format" select="'short'"/>
7271
- <xsl:variable name="year" select="substring($date, 1, 4)"/>
7272
- <xsl:variable name="month" select="substring($date, 6, 2)"/>
7273
- <xsl:variable name="day" select="substring($date, 9, 2)"/>
7274
- <xsl:variable name="monthStr">
7275
- <xsl:choose>
7276
- <xsl:when test="$month = '01'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_january</xsl:with-param></xsl:call-template></xsl:when>
7277
- <xsl:when test="$month = '02'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_february</xsl:with-param></xsl:call-template></xsl:when>
7278
- <xsl:when test="$month = '03'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_march</xsl:with-param></xsl:call-template></xsl:when>
7279
- <xsl:when test="$month = '04'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_april</xsl:with-param></xsl:call-template></xsl:when>
7280
- <xsl:when test="$month = '05'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_may</xsl:with-param></xsl:call-template></xsl:when>
7281
- <xsl:when test="$month = '06'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_june</xsl:with-param></xsl:call-template></xsl:when>
7282
- <xsl:when test="$month = '07'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_july</xsl:with-param></xsl:call-template></xsl:when>
7283
- <xsl:when test="$month = '08'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_august</xsl:with-param></xsl:call-template></xsl:when>
7284
- <xsl:when test="$month = '09'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_september</xsl:with-param></xsl:call-template></xsl:when>
7285
- <xsl:when test="$month = '10'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_october</xsl:with-param></xsl:call-template></xsl:when>
7286
- <xsl:when test="$month = '11'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_november</xsl:with-param></xsl:call-template></xsl:when>
7287
- <xsl:when test="$month = '12'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_december</xsl:with-param></xsl:call-template></xsl:when>
7288
- </xsl:choose>
7340
+ <xsl:variable name="monthStr_localized">
7341
+ <xsl:if test="normalize-space($monthStr) != ''"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_<xsl:value-of select="$monthStr"/></xsl:with-param></xsl:call-template></xsl:if>
7289
7342
  </xsl:variable>
7290
7343
  <xsl:variable name="result">
7291
7344
  <xsl:choose>
7292
7345
  <xsl:when test="$format = 'ddMMyyyy'">
7293
7346
  <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
7294
7347
  <xsl:text> </xsl:text>
7295
- <xsl:value-of select="normalize-space(concat($monthStr, ' ' , $year))"/>
7348
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ' , $year))"/>
7296
7349
  </xsl:when>
7297
7350
  <xsl:when test="$format = 'ddMM'">
7298
7351
  <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
7299
- <xsl:text> </xsl:text><xsl:value-of select="$monthStr"/>
7352
+ <xsl:text> </xsl:text><xsl:value-of select="$monthStr_localized"/>
7300
7353
  </xsl:when>
7301
7354
  <xsl:when test="$format = 'short' or $day = ''">
7302
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
7355
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ', $year))"/>
7303
7356
  </xsl:when>
7304
7357
  <xsl:otherwise>
7305
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
7358
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ', $day, ', ' , $year))"/>
7306
7359
  </xsl:otherwise>
7307
7360
  </xsl:choose>
7308
7361
  </xsl:variable>
@@ -7355,13 +7408,8 @@
7355
7408
  <xsl:variable name="title">
7356
7409
  <xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
7357
7410
 
7358
- <xsl:value-of select="*[local-name() = 'title'][@language = $lang and @type = 'main']"/>
7359
-
7360
-
7361
-
7362
-
7363
-
7364
-
7411
+ <xsl:value-of select="*[local-name() = 'title'][@language = $lang and @type = 'main']"/>
7412
+
7365
7413
  </xsl:for-each>
7366
7414
  </xsl:variable>
7367
7415
  <xsl:choose>
@@ -7376,21 +7424,18 @@
7376
7424
  <dc:creator>
7377
7425
  <xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
7378
7426
 
7379
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
7380
- <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
7381
- <xsl:if test="position() != last()">; </xsl:if>
7382
- </xsl:for-each>
7383
-
7384
-
7385
-
7427
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
7428
+ <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
7429
+ <xsl:if test="position() != last()">; </xsl:if>
7430
+ </xsl:for-each>
7431
+
7386
7432
  </xsl:for-each>
7387
7433
  </dc:creator>
7388
7434
  <dc:description>
7389
7435
  <xsl:variable name="abstract">
7390
7436
 
7391
- <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
7392
-
7393
-
7437
+ <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
7438
+
7394
7439
  </xsl:variable>
7395
7440
  <xsl:value-of select="normalize-space($abstract)"/>
7396
7441
  </dc:description>
@@ -7410,7 +7455,6 @@
7410
7455
  <xsl:value-of select="../@id"/>
7411
7456
  </xsl:when>
7412
7457
  <xsl:otherwise>
7413
- <!-- <xsl:value-of select="concat(local-name(..), '_', text())"/> -->
7414
7458
  <xsl:value-of select="concat(generate-id(..), '_', text())"/>
7415
7459
  </xsl:otherwise>
7416
7460
  </xsl:choose>
@@ -7436,9 +7480,6 @@
7436
7480
  <xsl:when test="ancestor::*[local-name() = 'preface']">
7437
7481
  <xsl:value-of select="$level_total - 2"/>
7438
7482
  </xsl:when>
7439
- <!-- <xsl:when test="parent::*[local-name() = 'sections']">
7440
- <xsl:value-of select="$level_total - 1"/>
7441
- </xsl:when> -->
7442
7483
  <xsl:when test="ancestor::*[local-name() = 'sections']">
7443
7484
  <xsl:value-of select="$level_total - 1"/>
7444
7485
  </xsl:when>
@@ -7628,7 +7669,6 @@
7628
7669
  <xsl:value-of select="$key_"/>
7629
7670
  </xsl:otherwise>
7630
7671
  </xsl:choose>
7631
-
7632
7672
  </xsl:template><xsl:template name="setTrackChangesStyles">
7633
7673
  <xsl:param name="isAdded"/>
7634
7674
  <xsl:param name="isDeleted"/>
@@ -7651,7 +7691,6 @@
7651
7691
  <xsl:if test="local-name() = 'table'">
7652
7692
  <xsl:attribute name="background-color">rgb(255, 185, 185)</xsl:attribute>
7653
7693
  </xsl:if>
7654
- <!-- <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute> -->
7655
7694
  <xsl:attribute name="padding">2mm</xsl:attribute>
7656
7695
  </xsl:if>
7657
7696
  </xsl:otherwise>
@@ -7671,15 +7710,18 @@
7671
7710
  </xsl:choose>
7672
7711
  </xsl:template><xsl:template name="setTextAlignment">
7673
7712
  <xsl:param name="default">left</xsl:param>
7713
+ <xsl:variable name="align" select="normalize-space(@align)"/>
7674
7714
  <xsl:attribute name="text-align">
7675
7715
  <xsl:choose>
7676
- <xsl:when test="@align and not(@align = 'indent')"><xsl:value-of select="@align"/></xsl:when>
7716
+ <xsl:when test="$lang = 'ar' and $align = 'left'">start</xsl:when>
7717
+ <xsl:when test="$lang = 'ar' and $align = 'right'">end</xsl:when>
7718
+ <xsl:when test="$align != '' and not($align = 'indent')"><xsl:value-of select="$align"/></xsl:when>
7677
7719
  <xsl:when test="ancestor::*[local-name() = 'td']/@align"><xsl:value-of select="ancestor::*[local-name() = 'td']/@align"/></xsl:when>
7678
7720
  <xsl:when test="ancestor::*[local-name() = 'th']/@align"><xsl:value-of select="ancestor::*[local-name() = 'th']/@align"/></xsl:when>
7679
7721
  <xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
7680
7722
  </xsl:choose>
7681
7723
  </xsl:attribute>
7682
- <xsl:if test="@align = 'indent'">
7724
+ <xsl:if test="$align = 'indent'">
7683
7725
  <xsl:attribute name="margin-left">7mm</xsl:attribute>
7684
7726
  </xsl:if>
7685
7727
  </xsl:template><xsl:template name="number-to-words">