metanorma-iso 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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">