metanorma-un 0.5.6 → 0.5.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +29 -8
- data/README.adoc +2 -4
- data/lib/asciidoctor/un/basicdoc.rng +50 -3
- data/lib/asciidoctor/un/isodoc.rng +61 -3
- data/lib/isodoc/un/base_convert.rb +1 -1
- data/lib/isodoc/un/html/htmlstyle.css +3 -3
- data/lib/isodoc/un/html/htmlstyle.scss +2 -2
- data/lib/isodoc/un/html/unece.css +19 -20
- data/lib/isodoc/un/html/unece.scss +19 -20
- data/lib/isodoc/un/html/wordstyle.css +17 -17
- data/lib/isodoc/un/html/wordstyle.scss +17 -17
- data/lib/isodoc/un/html_convert.rb +3 -1
- data/lib/isodoc/un/i18n-en.yaml +1 -0
- data/lib/isodoc/un/un.plenary-attachment.xsl +312 -61
- data/lib/isodoc/un/un.plenary.xsl +312 -61
- data/lib/isodoc/un/un.recommendation.xsl +280 -62
- data/lib/isodoc/un/word_convert.rb +5 -1
- data/lib/isodoc/un/xref.rb +8 -6
- data/lib/metanorma/un/processor.rb +11 -8
- data/lib/metanorma/un/version.rb +1 -1
- data/metanorma-unece.gemspec +2 -2
- metadata +6 -6
@@ -37,7 +37,7 @@
|
|
37
37
|
|
38
38
|
<xsl:template match="/">
|
39
39
|
<xsl:call-template name="namespaceCheck"/>
|
40
|
-
<fo:root font-family="Times New Roman, STIX Two Math,
|
40
|
+
<fo:root font-family="Times New Roman, STIX Two Math, Source Han Sans" font-size="10pt" xml:lang="{$lang}">
|
41
41
|
<fo:layout-master-set>
|
42
42
|
<!-- Cover page -->
|
43
43
|
<fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
@@ -162,7 +162,40 @@
|
|
162
162
|
<fo:block margin-left="-20mm">
|
163
163
|
<fo:block font-size="17pt" margin-bottom="16pt">
|
164
164
|
<xsl:value-of select="$title"/>
|
165
|
+
|
166
|
+
<xsl:for-each select="/un:un-standard/un:bibdata/un:note[@type = 'title-footnote']">
|
167
|
+
<xsl:variable name="number" select="position()"/>
|
168
|
+
<fo:inline font-size="14pt" baseline-shift="15%" font-weight="normal">
|
169
|
+
<xsl:if test="$number = 1">
|
170
|
+
<xsl:text> </xsl:text>
|
171
|
+
</xsl:if>
|
172
|
+
<fo:basic-link internal-destination="title-footnote_{$number}" fox:alt-text="title footnote">
|
173
|
+
<xsl:call-template name="repeat">
|
174
|
+
<xsl:with-param name="char" select="'*'"/>
|
175
|
+
<xsl:with-param name="count" select="$number"/>
|
176
|
+
</xsl:call-template>
|
177
|
+
</fo:basic-link>
|
178
|
+
<xsl:if test="position() != last()"><fo:inline baseline-shift="20%">,</fo:inline></xsl:if>
|
179
|
+
</fo:inline>
|
180
|
+
</xsl:for-each>
|
181
|
+
|
182
|
+
<xsl:for-each select="/un:un-standard/un:bibdata/un:note[@type = 'title-footnote']">
|
183
|
+
<xsl:variable name="number" select="position()"/>
|
184
|
+
<fo:block id="title-footnote_{$number}" font-size="14pt" font-weight="normal">
|
185
|
+
<xsl:if test="$number = 1">
|
186
|
+
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
187
|
+
</xsl:if>
|
188
|
+
<xsl:call-template name="repeat">
|
189
|
+
<xsl:with-param name="char" select="'*'"/>
|
190
|
+
<xsl:with-param name="count" select="$number"/>
|
191
|
+
</xsl:call-template>
|
192
|
+
<xsl:text> </xsl:text>
|
193
|
+
<xsl:apply-templates/>
|
194
|
+
</fo:block>
|
195
|
+
</xsl:for-each>
|
196
|
+
|
165
197
|
</fo:block>
|
198
|
+
|
166
199
|
<fo:block font-size="14pt" margin-bottom="16pt">
|
167
200
|
<xsl:value-of select="/un:un-standard/un:bibdata/un:title[@language = 'en' and @type = 'subtitle']"/>
|
168
201
|
</fo:block>
|
@@ -583,7 +616,7 @@
|
|
583
616
|
<xsl:when test="ancestor::*[un:annex]">
|
584
617
|
<xsl:choose>
|
585
618
|
<xsl:when test="$level = 1">
|
586
|
-
<xsl:number format="a)"/>
|
619
|
+
<xsl:number format="a)" lang="en"/>
|
587
620
|
</xsl:when>
|
588
621
|
<xsl:when test="$level = 2">
|
589
622
|
<xsl:number format="i)"/>
|
@@ -1214,13 +1247,22 @@
|
|
1214
1247
|
<title-part lang="en">
|
1215
1248
|
|
1216
1249
|
|
1250
|
+
|
1217
1251
|
</title-part>
|
1218
1252
|
<title-part lang="fr">
|
1219
1253
|
|
1220
1254
|
|
1255
|
+
|
1221
1256
|
</title-part>
|
1222
1257
|
<title-part lang="zh">第 # 部分:</title-part>
|
1223
1258
|
|
1259
|
+
<title-subpart lang="en">
|
1260
|
+
|
1261
|
+
</title-subpart>
|
1262
|
+
<title-subpart lang="fr">
|
1263
|
+
|
1264
|
+
</title-subpart>
|
1265
|
+
|
1224
1266
|
<title-modified lang="en">modified</title-modified>
|
1225
1267
|
<title-modified lang="fr">modifiée</title-modified>
|
1226
1268
|
|
@@ -1518,6 +1560,7 @@
|
|
1518
1560
|
|
1519
1561
|
</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
|
1520
1562
|
|
1563
|
+
|
1521
1564
|
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
1522
1565
|
|
1523
1566
|
|
@@ -1542,6 +1585,7 @@
|
|
1542
1585
|
</xsl:attribute-set><xsl:attribute-set name="term-style">
|
1543
1586
|
|
1544
1587
|
</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
|
1588
|
+
|
1545
1589
|
|
1546
1590
|
|
1547
1591
|
|
@@ -1663,7 +1707,9 @@
|
|
1663
1707
|
|
1664
1708
|
|
1665
1709
|
|
1666
|
-
|
1710
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
1711
|
+
<fo:block> </fo:block>
|
1712
|
+
</xsl:if> -->
|
1667
1713
|
|
1668
1714
|
<!-- $namespace = 'iso' or -->
|
1669
1715
|
|
@@ -1697,10 +1743,12 @@
|
|
1697
1743
|
|
1698
1744
|
|
1699
1745
|
<xsl:variable name="colwidths">
|
1700
|
-
<xsl:
|
1701
|
-
<xsl:
|
1702
|
-
|
1703
|
-
|
1746
|
+
<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
|
1747
|
+
<xsl:call-template name="calculate-column-widths">
|
1748
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
1749
|
+
<xsl:with-param name="table" select="$simple-table"/>
|
1750
|
+
</xsl:call-template>
|
1751
|
+
</xsl:if>
|
1704
1752
|
</xsl:variable>
|
1705
1753
|
<!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
|
1706
1754
|
|
@@ -1742,7 +1790,12 @@
|
|
1742
1790
|
|
1743
1791
|
<xsl:variable name="table_attributes">
|
1744
1792
|
<attribute name="table-layout">fixed</attribute>
|
1745
|
-
<attribute name="width">
|
1793
|
+
<attribute name="width">
|
1794
|
+
<xsl:choose>
|
1795
|
+
<xsl:when test="@width"><xsl:value-of select="@width"/></xsl:when>
|
1796
|
+
<xsl:otherwise>100%</xsl:otherwise>
|
1797
|
+
</xsl:choose>
|
1798
|
+
</attribute>
|
1746
1799
|
<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
|
1747
1800
|
<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
|
1748
1801
|
|
@@ -1773,16 +1826,25 @@
|
|
1773
1826
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
1774
1827
|
</xsl:if>
|
1775
1828
|
|
1776
|
-
<xsl:
|
1777
|
-
<xsl:
|
1778
|
-
<xsl:
|
1779
|
-
<fo:table-column column-width="
|
1780
|
-
</xsl:
|
1781
|
-
|
1782
|
-
|
1783
|
-
|
1784
|
-
|
1785
|
-
|
1829
|
+
<xsl:choose>
|
1830
|
+
<xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
|
1831
|
+
<xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
|
1832
|
+
<fo:table-column column-width="{@width}"/>
|
1833
|
+
</xsl:for-each>
|
1834
|
+
</xsl:when>
|
1835
|
+
<xsl:otherwise>
|
1836
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
1837
|
+
<xsl:choose>
|
1838
|
+
<xsl:when test=". = 1 or . = 0">
|
1839
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
1840
|
+
</xsl:when>
|
1841
|
+
<xsl:otherwise>
|
1842
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
1843
|
+
</xsl:otherwise>
|
1844
|
+
</xsl:choose>
|
1845
|
+
</xsl:for-each>
|
1846
|
+
</xsl:otherwise>
|
1847
|
+
</xsl:choose>
|
1786
1848
|
|
1787
1849
|
<xsl:choose>
|
1788
1850
|
<xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
|
@@ -1795,10 +1857,12 @@
|
|
1795
1857
|
|
1796
1858
|
</fo:table>
|
1797
1859
|
|
1860
|
+
<xsl:variable name="colgroup" select="*[local-name()='colgroup']"/>
|
1798
1861
|
<xsl:for-each select="*[local-name()='tbody']"><!-- select context to tbody -->
|
1799
1862
|
<xsl:call-template name="insertTableFooterInSeparateTable">
|
1800
1863
|
<xsl:with-param name="table_attributes" select="$table_attributes"/>
|
1801
1864
|
<xsl:with-param name="colwidths" select="$colwidths"/>
|
1865
|
+
<xsl:with-param name="colgroup" select="$colgroup"/>
|
1802
1866
|
</xsl:call-template>
|
1803
1867
|
</xsl:for-each>
|
1804
1868
|
|
@@ -1831,6 +1895,7 @@
|
|
1831
1895
|
<xsl:if test="normalize-space() != ''">
|
1832
1896
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
1833
1897
|
|
1898
|
+
|
1834
1899
|
<xsl:apply-templates/>
|
1835
1900
|
</fo:block>
|
1836
1901
|
</xsl:if>
|
@@ -2051,12 +2116,22 @@
|
|
2051
2116
|
</xsl:template><xsl:template name="insertTableFooterInSeparateTable">
|
2052
2117
|
<xsl:param name="table_attributes"/>
|
2053
2118
|
<xsl:param name="colwidths"/>
|
2119
|
+
<xsl:param name="colgroup"/>
|
2054
2120
|
|
2055
2121
|
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
2056
2122
|
|
2057
2123
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
2058
2124
|
|
2059
|
-
<xsl:variable name="cols-count"
|
2125
|
+
<xsl:variable name="cols-count">
|
2126
|
+
<xsl:choose>
|
2127
|
+
<xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
|
2128
|
+
<xsl:value-of select="count(xalan:nodeset($colgroup)//*[local-name()='col'])"/>
|
2129
|
+
</xsl:when>
|
2130
|
+
<xsl:otherwise>
|
2131
|
+
<xsl:value-of select="count(xalan:nodeset($colwidths)//column)"/>
|
2132
|
+
</xsl:otherwise>
|
2133
|
+
</xsl:choose>
|
2134
|
+
</xsl:variable>
|
2060
2135
|
|
2061
2136
|
<fo:table keep-with-previous="always">
|
2062
2137
|
<xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
|
@@ -2074,16 +2149,25 @@
|
|
2074
2149
|
</xsl:choose>
|
2075
2150
|
</xsl:for-each>
|
2076
2151
|
|
2077
|
-
<xsl:
|
2078
|
-
<xsl:
|
2079
|
-
<xsl:
|
2080
|
-
<fo:table-column column-width="
|
2081
|
-
</xsl:
|
2082
|
-
|
2083
|
-
|
2084
|
-
|
2085
|
-
|
2086
|
-
|
2152
|
+
<xsl:choose>
|
2153
|
+
<xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
|
2154
|
+
<xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
|
2155
|
+
<fo:table-column column-width="{@width}"/>
|
2156
|
+
</xsl:for-each>
|
2157
|
+
</xsl:when>
|
2158
|
+
<xsl:otherwise>
|
2159
|
+
<xsl:for-each select="xalan:nodeset($colwidths)//column">
|
2160
|
+
<xsl:choose>
|
2161
|
+
<xsl:when test=". = 1 or . = 0">
|
2162
|
+
<fo:table-column column-width="proportional-column-width(2)"/>
|
2163
|
+
</xsl:when>
|
2164
|
+
<xsl:otherwise>
|
2165
|
+
<fo:table-column column-width="proportional-column-width({.})"/>
|
2166
|
+
</xsl:otherwise>
|
2167
|
+
</xsl:choose>
|
2168
|
+
</xsl:for-each>
|
2169
|
+
</xsl:otherwise>
|
2170
|
+
</xsl:choose>
|
2087
2171
|
|
2088
2172
|
<fo:table-body>
|
2089
2173
|
<fo:table-row>
|
@@ -2188,6 +2272,7 @@
|
|
2188
2272
|
</xsl:if>
|
2189
2273
|
|
2190
2274
|
|
2275
|
+
|
2191
2276
|
<!-- <xsl:if test="$namespace = 'bipm'">
|
2192
2277
|
<xsl:attribute name="height">8mm</xsl:attribute>
|
2193
2278
|
</xsl:if> -->
|
@@ -2291,7 +2376,8 @@
|
|
2291
2376
|
</xsl:attribute>
|
2292
2377
|
</xsl:if>
|
2293
2378
|
<xsl:call-template name="display-align"/>
|
2294
|
-
<fo:block>
|
2379
|
+
<fo:block>
|
2380
|
+
|
2295
2381
|
<xsl:apply-templates/>
|
2296
2382
|
</fo:block>
|
2297
2383
|
</fo:table-cell>
|
@@ -2513,7 +2599,13 @@
|
|
2513
2599
|
<xsl:apply-templates/>
|
2514
2600
|
</fo:inline>
|
2515
2601
|
</xsl:template><xsl:template match="*[local-name()='dl']">
|
2516
|
-
<fo:block-container
|
2602
|
+
<fo:block-container>
|
2603
|
+
|
2604
|
+
<xsl:if test="not(ancestor::*[local-name() = 'quote'])">
|
2605
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2606
|
+
</xsl:if>
|
2607
|
+
|
2608
|
+
|
2517
2609
|
<xsl:if test="parent::*[local-name() = 'note']">
|
2518
2610
|
<xsl:attribute name="margin-left">
|
2519
2611
|
<xsl:choose>
|
@@ -2523,8 +2615,12 @@
|
|
2523
2615
|
</xsl:attribute>
|
2524
2616
|
|
2525
2617
|
</xsl:if>
|
2526
|
-
<fo:block-container
|
2527
|
-
|
2618
|
+
<fo:block-container>
|
2619
|
+
|
2620
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
2621
|
+
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
2622
|
+
|
2623
|
+
|
2528
2624
|
<xsl:variable name="parent" select="local-name(..)"/>
|
2529
2625
|
|
2530
2626
|
<xsl:variable name="key_iso">
|
@@ -2538,9 +2634,12 @@
|
|
2538
2634
|
<fo:block margin-bottom="12pt" text-align="left">
|
2539
2635
|
|
2540
2636
|
<xsl:variable name="title-where">
|
2541
|
-
|
2542
|
-
|
2543
|
-
|
2637
|
+
|
2638
|
+
|
2639
|
+
<xsl:call-template name="getTitle">
|
2640
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2641
|
+
</xsl:call-template>
|
2642
|
+
|
2544
2643
|
</xsl:variable>
|
2545
2644
|
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
2546
2645
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
@@ -2556,9 +2655,12 @@
|
|
2556
2655
|
|
2557
2656
|
|
2558
2657
|
<xsl:variable name="title-where">
|
2559
|
-
|
2560
|
-
|
2561
|
-
|
2658
|
+
|
2659
|
+
|
2660
|
+
<xsl:call-template name="getTitle">
|
2661
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
2662
|
+
</xsl:call-template>
|
2663
|
+
|
2562
2664
|
</xsl:variable>
|
2563
2665
|
<xsl:value-of select="$title-where"/>
|
2564
2666
|
</fo:block>
|
@@ -2569,9 +2671,12 @@
|
|
2569
2671
|
|
2570
2672
|
|
2571
2673
|
<xsl:variable name="title-key">
|
2572
|
-
|
2573
|
-
|
2574
|
-
|
2674
|
+
|
2675
|
+
|
2676
|
+
<xsl:call-template name="getTitle">
|
2677
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
2678
|
+
</xsl:call-template>
|
2679
|
+
|
2575
2680
|
</xsl:variable>
|
2576
2681
|
<xsl:value-of select="$title-key"/>
|
2577
2682
|
</fo:block>
|
@@ -2697,12 +2802,32 @@
|
|
2697
2802
|
</xsl:otherwise>
|
2698
2803
|
</xsl:choose>
|
2699
2804
|
</xsl:template><xsl:template name="getMaxLength_dt">
|
2700
|
-
<xsl:
|
2701
|
-
<xsl:
|
2702
|
-
|
2703
|
-
<xsl:
|
2704
|
-
|
2705
|
-
|
2805
|
+
<xsl:variable name="lengths">
|
2806
|
+
<xsl:for-each select="*[local-name()='dt']">
|
2807
|
+
<xsl:variable name="maintext_length" select="string-length(normalize-space(.))"/>
|
2808
|
+
<xsl:variable name="attributes">
|
2809
|
+
<xsl:for-each select=".//@open"><xsl:value-of select="."/></xsl:for-each>
|
2810
|
+
<xsl:for-each select=".//@close"><xsl:value-of select="."/></xsl:for-each>
|
2811
|
+
</xsl:variable>
|
2812
|
+
<length><xsl:value-of select="string-length(normalize-space(.)) + string-length($attributes)"/></length>
|
2813
|
+
</xsl:for-each>
|
2814
|
+
</xsl:variable>
|
2815
|
+
<xsl:variable name="maxLength">
|
2816
|
+
<!-- <xsl:for-each select="*[local-name()='dt']">
|
2817
|
+
<xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
|
2818
|
+
<xsl:if test="position() = 1">
|
2819
|
+
<xsl:value-of select="string-length(normalize-space(.))"/>
|
2820
|
+
</xsl:if>
|
2821
|
+
</xsl:for-each> -->
|
2822
|
+
<xsl:for-each select="xalan:nodeset($lengths)/length">
|
2823
|
+
<xsl:sort select="." data-type="number" order="descending"/>
|
2824
|
+
<xsl:if test="position() = 1">
|
2825
|
+
<xsl:value-of select="."/>
|
2826
|
+
</xsl:if>
|
2827
|
+
</xsl:for-each>
|
2828
|
+
</xsl:variable>
|
2829
|
+
<!-- <xsl:message>DEBUG:<xsl:value-of select="$maxLength"/></xsl:message> -->
|
2830
|
+
<xsl:value-of select="$maxLength"/>
|
2706
2831
|
</xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']" priority="2">
|
2707
2832
|
<xsl:param name="key_iso"/>
|
2708
2833
|
|
@@ -2814,6 +2939,7 @@
|
|
2814
2939
|
</fo:inline>
|
2815
2940
|
</xsl:template><xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
|
2816
2941
|
<fo:inline font-weight="bold">
|
2942
|
+
|
2817
2943
|
<xsl:apply-templates/>
|
2818
2944
|
</fo:inline>
|
2819
2945
|
</xsl:template><xsl:template match="*[local-name()='sup']">
|
@@ -2853,6 +2979,10 @@
|
|
2853
2979
|
</xsl:if>
|
2854
2980
|
<xsl:apply-templates/>
|
2855
2981
|
</fo:inline>
|
2982
|
+
</xsl:template><xsl:template match="*[local-name()='underline']">
|
2983
|
+
<fo:inline text-decoration="underline">
|
2984
|
+
<xsl:apply-templates/>
|
2985
|
+
</fo:inline>
|
2856
2986
|
</xsl:template><xsl:template match="*[local-name()='del']">
|
2857
2987
|
<fo:inline font-size="10pt" color="red" text-decoration="line-through">
|
2858
2988
|
<xsl:apply-templates/>
|
@@ -3142,7 +3272,18 @@
|
|
3142
3272
|
<xsl:with-param name="previousRow" select="$newRow"/>
|
3143
3273
|
</xsl:apply-templates>
|
3144
3274
|
</xsl:template><xsl:template name="getLang">
|
3145
|
-
<xsl:variable name="
|
3275
|
+
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
3276
|
+
<xsl:variable name="language">
|
3277
|
+
<xsl:choose>
|
3278
|
+
<xsl:when test="$language_current != ''">
|
3279
|
+
<xsl:value-of select="$language_current"/>
|
3280
|
+
</xsl:when>
|
3281
|
+
<xsl:otherwise>
|
3282
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
3283
|
+
</xsl:otherwise>
|
3284
|
+
</xsl:choose>
|
3285
|
+
</xsl:variable>
|
3286
|
+
|
3146
3287
|
<xsl:choose>
|
3147
3288
|
<xsl:when test="$language = 'English'">en</xsl:when>
|
3148
3289
|
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
@@ -3177,6 +3318,7 @@
|
|
3177
3318
|
<xsl:value-of select="substring($str, 2)"/>
|
3178
3319
|
</xsl:template><xsl:template match="mathml:math">
|
3179
3320
|
<fo:inline font-family="STIX Two Math"> <!-- -->
|
3321
|
+
|
3180
3322
|
<xsl:variable name="mathml">
|
3181
3323
|
<xsl:apply-templates select="." mode="mathml"/>
|
3182
3324
|
</xsl:variable>
|
@@ -3206,6 +3348,7 @@
|
|
3206
3348
|
</xsl:choose>
|
3207
3349
|
</xsl:variable>
|
3208
3350
|
<fo:inline xsl:use-attribute-sets="link-style">
|
3351
|
+
|
3209
3352
|
<xsl:choose>
|
3210
3353
|
<xsl:when test="$target = ''">
|
3211
3354
|
<xsl:apply-templates/>
|
@@ -3259,10 +3402,14 @@
|
|
3259
3402
|
</fo:inline>
|
3260
3403
|
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
3261
3404
|
<xsl:variable name="title-modified">
|
3262
|
-
|
3263
|
-
|
3264
|
-
|
3405
|
+
|
3406
|
+
|
3407
|
+
<xsl:call-template name="getTitle">
|
3408
|
+
<xsl:with-param name="name" select="'title-modified'"/>
|
3409
|
+
</xsl:call-template>
|
3410
|
+
|
3265
3411
|
</xsl:variable>
|
3412
|
+
|
3266
3413
|
<xsl:choose>
|
3267
3414
|
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
3268
3415
|
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
@@ -3426,7 +3573,8 @@
|
|
3426
3573
|
</fo:inline>
|
3427
3574
|
</xsl:if>
|
3428
3575
|
</xsl:template><xsl:template match="*[local-name() = 'figure']">
|
3429
|
-
<fo:block-container id="{@id}">
|
3576
|
+
<fo:block-container id="{@id}">
|
3577
|
+
|
3430
3578
|
<fo:block>
|
3431
3579
|
<xsl:apply-templates/>
|
3432
3580
|
</fo:block>
|
@@ -3477,7 +3625,7 @@
|
|
3477
3625
|
<xsl:apply-templates mode="bookmarks"/>
|
3478
3626
|
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
|
3479
3627
|
<xsl:apply-templates select="."/>
|
3480
|
-
</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
|
3628
|
+
</xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" mode="contents" priority="3"/><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
|
3481
3629
|
<xsl:apply-templates mode="bookmarks"/>
|
3482
3630
|
</xsl:template><xsl:template name="addBookmarks">
|
3483
3631
|
<xsl:param name="contents"/>
|
@@ -3493,6 +3641,8 @@
|
|
3493
3641
|
<xsl:variable name="bookmark-title_">
|
3494
3642
|
<xsl:call-template name="getLangVersion">
|
3495
3643
|
<xsl:with-param name="lang" select="@lang"/>
|
3644
|
+
<xsl:with-param name="doctype" select="@doctype"/>
|
3645
|
+
<xsl:with-param name="title" select="@title-part"/>
|
3496
3646
|
</xsl:call-template>
|
3497
3647
|
</xsl:variable>
|
3498
3648
|
<xsl:choose>
|
@@ -3510,13 +3660,34 @@
|
|
3510
3660
|
</xsl:choose>
|
3511
3661
|
</fo:bookmark-title>
|
3512
3662
|
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
3663
|
+
|
3664
|
+
<xsl:call-template name="insertFigureBookmarks">
|
3665
|
+
<xsl:with-param name="contents" select="contents"/>
|
3666
|
+
</xsl:call-template>
|
3667
|
+
|
3668
|
+
<xsl:call-template name="insertTableBookmarks">
|
3669
|
+
<xsl:with-param name="contents" select="contents"/>
|
3670
|
+
<xsl:with-param name="lang" select="@lang"/>
|
3671
|
+
</xsl:call-template>
|
3672
|
+
|
3513
3673
|
</fo:bookmark>
|
3514
3674
|
|
3515
3675
|
</xsl:for-each>
|
3516
3676
|
</xsl:when>
|
3517
3677
|
<xsl:otherwise>
|
3518
3678
|
<xsl:for-each select="xalan:nodeset($contents)/doc">
|
3679
|
+
|
3519
3680
|
<xsl:apply-templates select="contents/item" mode="bookmark"/>
|
3681
|
+
|
3682
|
+
<xsl:call-template name="insertFigureBookmarks">
|
3683
|
+
<xsl:with-param name="contents" select="contents"/>
|
3684
|
+
</xsl:call-template>
|
3685
|
+
|
3686
|
+
<xsl:call-template name="insertTableBookmarks">
|
3687
|
+
<xsl:with-param name="contents" select="contents"/>
|
3688
|
+
<xsl:with-param name="lang" select="@lang"/>
|
3689
|
+
</xsl:call-template>
|
3690
|
+
|
3520
3691
|
</xsl:for-each>
|
3521
3692
|
</xsl:otherwise>
|
3522
3693
|
</xsl:choose>
|
@@ -3535,8 +3706,44 @@
|
|
3535
3706
|
|
3536
3707
|
</fo:bookmark-tree>
|
3537
3708
|
</xsl:if>
|
3709
|
+
</xsl:template><xsl:template name="insertFigureBookmarks">
|
3710
|
+
<xsl:param name="contents"/>
|
3711
|
+
<xsl:if test="xalan:nodeset($contents)/figure">
|
3712
|
+
<fo:bookmark internal-destination="{xalan:nodeset($contents)/figure[1]/@id}" starting-state="hide">
|
3713
|
+
<fo:bookmark-title>Figures</fo:bookmark-title>
|
3714
|
+
<xsl:for-each select="xalan:nodeset($contents)/figure">
|
3715
|
+
<fo:bookmark internal-destination="{@id}">
|
3716
|
+
<fo:bookmark-title>
|
3717
|
+
<xsl:value-of select="normalize-space(title)"/>
|
3718
|
+
</fo:bookmark-title>
|
3719
|
+
</fo:bookmark>
|
3720
|
+
</xsl:for-each>
|
3721
|
+
</fo:bookmark>
|
3722
|
+
</xsl:if>
|
3723
|
+
</xsl:template><xsl:template name="insertTableBookmarks">
|
3724
|
+
<xsl:param name="contents"/>
|
3725
|
+
<xsl:param name="lang"/>
|
3726
|
+
<xsl:if test="xalan:nodeset($contents)/table">
|
3727
|
+
<fo:bookmark internal-destination="{xalan:nodeset($contents)/table[1]/@id}" starting-state="hide">
|
3728
|
+
<fo:bookmark-title>
|
3729
|
+
<xsl:choose>
|
3730
|
+
<xsl:when test="$lang = 'fr'">Tableaux</xsl:when>
|
3731
|
+
<xsl:otherwise>Tables</xsl:otherwise>
|
3732
|
+
</xsl:choose>
|
3733
|
+
</fo:bookmark-title>
|
3734
|
+
<xsl:for-each select="xalan:nodeset($contents)/table">
|
3735
|
+
<fo:bookmark internal-destination="{@id}">
|
3736
|
+
<fo:bookmark-title>
|
3737
|
+
<xsl:value-of select="normalize-space(title)"/>
|
3738
|
+
</fo:bookmark-title>
|
3739
|
+
</fo:bookmark>
|
3740
|
+
</xsl:for-each>
|
3741
|
+
</fo:bookmark>
|
3742
|
+
</xsl:if>
|
3538
3743
|
</xsl:template><xsl:template name="getLangVersion">
|
3539
3744
|
<xsl:param name="lang"/>
|
3745
|
+
<xsl:param name="doctype" select="''"/>
|
3746
|
+
<xsl:param name="title" select="''"/>
|
3540
3747
|
<xsl:choose>
|
3541
3748
|
<xsl:when test="$lang = 'en'">
|
3542
3749
|
|
@@ -4024,7 +4231,8 @@
|
|
4024
4231
|
<fo:block-container margin-left="0mm">
|
4025
4232
|
|
4026
4233
|
<fo:block xsl:use-attribute-sets="quote-style">
|
4027
|
-
<xsl:apply-templates select=".//*[local-name() = 'p']"/>
|
4234
|
+
<!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
|
4235
|
+
<xsl:apply-templates select="./*[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
|
4028
4236
|
</fo:block>
|
4029
4237
|
<xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
|
4030
4238
|
<fo:block xsl:use-attribute-sets="quote-source-style">
|
@@ -4150,9 +4358,12 @@
|
|
4150
4358
|
</fo:block>
|
4151
4359
|
</xsl:template><xsl:template match="*[local-name() = 'deprecates']">
|
4152
4360
|
<xsl:variable name="title-deprecated">
|
4153
|
-
|
4154
|
-
|
4155
|
-
|
4361
|
+
|
4362
|
+
|
4363
|
+
<xsl:call-template name="getTitle">
|
4364
|
+
<xsl:with-param name="name" select="'title-deprecated'"/>
|
4365
|
+
</xsl:call-template>
|
4366
|
+
|
4156
4367
|
</xsl:variable>
|
4157
4368
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
4158
4369
|
<xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/>
|
@@ -4206,7 +4417,7 @@
|
|
4206
4417
|
<fo:block id="{@id}">
|
4207
4418
|
<xsl:apply-templates/>
|
4208
4419
|
</fo:block>
|
4209
|
-
</xsl:template><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@normative='true']">
|
4420
|
+
</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']">
|
4210
4421
|
|
4211
4422
|
<fo:block id="{@id}">
|
4212
4423
|
<xsl:apply-templates/>
|
@@ -4268,7 +4479,8 @@
|
|
4268
4479
|
<fo:table-column column-width="107mm"/>
|
4269
4480
|
<fo:table-column column-width="15mm"/>
|
4270
4481
|
<fo:table-body>
|
4271
|
-
<fo:table-row
|
4482
|
+
<fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
|
4483
|
+
|
4272
4484
|
<fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
|
4273
4485
|
<fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
|
4274
4486
|
<fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
|
@@ -4286,6 +4498,10 @@
|
|
4286
4498
|
<fo:block><xsl:apply-templates/></fo:block>
|
4287
4499
|
</fo:table-cell>
|
4288
4500
|
</xsl:template><xsl:template name="processBibitem">
|
4501
|
+
|
4502
|
+
|
4503
|
+
<!-- end BIPM bibitem processing-->
|
4504
|
+
|
4289
4505
|
|
4290
4506
|
|
4291
4507
|
|
@@ -4344,6 +4560,8 @@
|
|
4344
4560
|
<xsl:value-of select="translate(.,'. ','')"/>
|
4345
4561
|
</xsl:template><xsl:template match="*[local-name() = 'name']/*[local-name() = 'forename']/text()" mode="strip">
|
4346
4562
|
<xsl:value-of select="substring(.,1,1)"/>
|
4563
|
+
</xsl:template><xsl:template match="*[local-name() = 'title']" mode="title">
|
4564
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
4347
4565
|
</xsl:template><xsl:template name="convertDate">
|
4348
4566
|
<xsl:param name="date"/>
|
4349
4567
|
<xsl:param name="format" select="'short'"/>
|
@@ -4523,13 +4741,22 @@
|
|
4523
4741
|
</xsl:template><xsl:template name="split">
|
4524
4742
|
<xsl:param name="pText" select="."/>
|
4525
4743
|
<xsl:param name="sep" select="','"/>
|
4744
|
+
<xsl:param name="normalize-space" select="'true'"/>
|
4526
4745
|
<xsl:if test="string-length($pText) >0">
|
4527
4746
|
<item>
|
4528
|
-
<xsl:
|
4747
|
+
<xsl:choose>
|
4748
|
+
<xsl:when test="$normalize-space = 'true'">
|
4749
|
+
<xsl:value-of select="normalize-space(substring-before(concat($pText, $sep), $sep))"/>
|
4750
|
+
</xsl:when>
|
4751
|
+
<xsl:otherwise>
|
4752
|
+
<xsl:value-of select="substring-before(concat($pText, $sep), $sep)"/>
|
4753
|
+
</xsl:otherwise>
|
4754
|
+
</xsl:choose>
|
4529
4755
|
</item>
|
4530
4756
|
<xsl:call-template name="split">
|
4531
4757
|
<xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
|
4532
4758
|
<xsl:with-param name="sep" select="$sep"/>
|
4759
|
+
<xsl:with-param name="normalize-space" select="$normalize-space"/>
|
4533
4760
|
</xsl:call-template>
|
4534
4761
|
</xsl:if>
|
4535
4762
|
</xsl:template><xsl:template name="getDocumentId">
|
@@ -4595,4 +4822,28 @@
|
|
4595
4822
|
<xsl:with-param name="letter-spacing" select="$letter-spacing"/>
|
4596
4823
|
</xsl:call-template>
|
4597
4824
|
</xsl:if>
|
4825
|
+
</xsl:template><xsl:template name="repeat">
|
4826
|
+
<xsl:param name="char" select="'*'"/>
|
4827
|
+
<xsl:param name="count"/>
|
4828
|
+
<xsl:if test="$count > 0">
|
4829
|
+
<xsl:value-of select="$char"/>
|
4830
|
+
<xsl:call-template name="repeat">
|
4831
|
+
<xsl:with-param name="char" select="$char"/>
|
4832
|
+
<xsl:with-param name="count" select="$count - 1"/>
|
4833
|
+
</xsl:call-template>
|
4834
|
+
</xsl:if>
|
4835
|
+
</xsl:template><xsl:template name="getLocalizedString">
|
4836
|
+
<xsl:param name="key"/>
|
4837
|
+
|
4838
|
+
<xsl:variable name="curr_lang">
|
4839
|
+
<xsl:call-template name="getLang"/>
|
4840
|
+
</xsl:variable>
|
4841
|
+
|
4842
|
+
<xsl:choose>
|
4843
|
+
<xsl:when test="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]">
|
4844
|
+
<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
4845
|
+
</xsl:when>
|
4846
|
+
<xsl:otherwise><xsl:value-of select="$key"/></xsl:otherwise>
|
4847
|
+
</xsl:choose>
|
4848
|
+
|
4598
4849
|
</xsl:template></xsl:stylesheet>
|