metanorma-un 0.6.6 → 0.6.10
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/Gemfile +2 -2
- data/Rakefile +2 -2
- data/lib/asciidoctor/un/converter.rb +27 -27
- data/lib/asciidoctor/un/isodoc.rng +67 -16
- data/lib/asciidoctor/un/reqt.rng +15 -4
- data/lib/asciidoctor/un/validate.rb +3 -4
- data/lib/isodoc/un/i18n.rb +0 -1
- data/lib/isodoc/un/init.rb +1 -2
- data/lib/isodoc/un/un.plenary-attachment.xsl +405 -162
- data/lib/isodoc/un/un.plenary.xsl +405 -162
- data/lib/isodoc/un/un.recommendation.xsl +410 -69
- data/lib/isodoc/un.rb +0 -1
- data/lib/metanorma/un/input.rb +1 -3
- data/lib/metanorma/un/processor.rb +2 -1
- data/lib/metanorma/un/version.rb +1 -1
- data/lib/metanorma/un.rb +2 -4
- metadata +2 -2
@@ -127,7 +127,7 @@
|
|
127
127
|
</fo:block>
|
128
128
|
</fo:block>
|
129
129
|
<fo:block-container absolute-position="fixed" left="50mm" top="30mm" width="139mm" height="40mm" text-align="right" display-align="after">
|
130
|
-
<fo:block font-family="Arial" font-size="24.5pt" font-weight="bold" margin-right="3mm"> <!-- margin-top="19mm" -->
|
130
|
+
<fo:block font-family="Arial" font-size="24.5pt" font-weight="bold" margin-right="3mm" role="H1"> <!-- margin-top="19mm" -->
|
131
131
|
<xsl:if test="string-length($title) > 70">
|
132
132
|
<xsl:attribute name="font-size">22pt</xsl:attribute>
|
133
133
|
</xsl:if>
|
@@ -142,7 +142,7 @@
|
|
142
142
|
<fo:flow flow-name="xsl-region-body" font-family="Arial">
|
143
143
|
<fo:block font-size="14pt" font-weight="bold" text-align="center">United Nations Economic Commission for Europe</fo:block>
|
144
144
|
<fo:block font-size="12pt" font-weight="normal" text-align="center" margin-top="46pt" margin-bottom="128pt" keep-together="always">United Nations Centre for Trade Facilitation and Electronic Business</fo:block>
|
145
|
-
<fo:block font-size="22pt" font-weight="bold" text-align="center">
|
145
|
+
<fo:block font-size="22pt" font-weight="bold" text-align="center" role="H1">
|
146
146
|
<xsl:value-of select="$title"/>
|
147
147
|
<xsl:value-of select="$linebreak"/>
|
148
148
|
<xsl:value-of select="$doctypenumber"/>
|
@@ -200,17 +200,17 @@
|
|
200
200
|
<xsl:with-param name="name" select="'title-toc'"/>
|
201
201
|
</xsl:call-template>
|
202
202
|
</xsl:variable>
|
203
|
-
<fo:block font-size="14pt" margin-top="4pt" margin-bottom="8pt"><xsl:value-of select="$title-toc"/></fo:block>
|
203
|
+
<fo:block font-size="14pt" margin-top="4pt" margin-bottom="8pt" role="H1"><xsl:value-of select="$title-toc"/></fo:block>
|
204
204
|
<xsl:variable name="title-page">
|
205
205
|
<xsl:call-template name="getTitle">
|
206
206
|
<xsl:with-param name="name" select="'title-page'"/>
|
207
207
|
</xsl:call-template>
|
208
208
|
</xsl:variable>
|
209
209
|
<fo:block font-size="9pt" text-align="right" font-style="italic" margin-bottom="6pt"><xsl:value-of select="$title-page"/></fo:block>
|
210
|
-
<fo:block>
|
210
|
+
<fo:block role="TOC">
|
211
211
|
<xsl:for-each select="xalan:nodeset($contents)//item[not (@type = 'annex' or @parent = 'annex') and @display = 'true']">
|
212
212
|
|
213
|
-
<fo:block>
|
213
|
+
<fo:block role="TOCI">
|
214
214
|
|
215
215
|
<fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
|
216
216
|
<xsl:if test="@level = 2 and @section != ''">
|
@@ -249,7 +249,7 @@
|
|
249
249
|
<xsl:if test="xalan:nodeset($contents)//item[@type = 'annex' and @display = 'true']">
|
250
250
|
<fo:block text-align="center" margin-top="12pt" margin-bottom="12pt">ANNEXES</fo:block>
|
251
251
|
<xsl:for-each select="xalan:nodeset($contents)//item[@type = 'annex' and @display = 'true']">
|
252
|
-
<fo:block>
|
252
|
+
<fo:block role="TOCI">
|
253
253
|
<fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
|
254
254
|
<fo:basic-link internal-destination="{@id}" fox:alt-text="{@section}">
|
255
255
|
<xsl:if test="@section != ''">
|
@@ -423,7 +423,10 @@
|
|
423
423
|
|
424
424
|
|
425
425
|
<xsl:template match="un:legal-statement//un:clause/un:title">
|
426
|
-
<
|
426
|
+
<xsl:variable name="level">
|
427
|
+
<xsl:call-template name="getLevel"/>
|
428
|
+
</xsl:variable>
|
429
|
+
<fo:block font-weight="bold" role="H{$level}">
|
427
430
|
<xsl:choose>
|
428
431
|
<xsl:when test="text() = 'Note'">
|
429
432
|
<xsl:attribute name="font-size">14pt</xsl:attribute>
|
@@ -567,7 +570,10 @@
|
|
567
570
|
</xsl:template>
|
568
571
|
|
569
572
|
<xsl:template match="un:title" mode="inline-header">
|
570
|
-
<
|
573
|
+
<xsl:variable name="level">
|
574
|
+
<xsl:call-template name="getLevel"/>
|
575
|
+
</xsl:variable>
|
576
|
+
<fo:inline role="H{$level}">
|
571
577
|
<xsl:apply-templates/>
|
572
578
|
</fo:inline>
|
573
579
|
</xsl:template>
|
@@ -739,8 +745,9 @@
|
|
739
745
|
<xsl:otherwise>12pt</xsl:otherwise>
|
740
746
|
</xsl:choose>
|
741
747
|
</xsl:variable>
|
742
|
-
<fo:block font-size="{$font-size}" font-weight="bold" margin-top="30pt" margin-bottom="16pt" keep-with-next="always">
|
748
|
+
<fo:block font-size="{$font-size}" font-weight="bold" margin-top="30pt" margin-bottom="16pt" keep-with-next="always" role="H{$level}">
|
743
749
|
<xsl:apply-templates/>
|
750
|
+
<xsl:apply-templates select="following-sibling::*[1][local-name() = 'variant-title'][@type = 'sub']" mode="subtitle"/>
|
744
751
|
</fo:block>
|
745
752
|
</xsl:template>
|
746
753
|
|
@@ -758,12 +765,13 @@
|
|
758
765
|
|
759
766
|
<xsl:choose>
|
760
767
|
<xsl:when test="$level = 1">
|
761
|
-
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-top="12pt" margin-bottom="16pt" keep-with-next="always" line-height="18pt">
|
768
|
+
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-top="12pt" margin-bottom="16pt" keep-with-next="always" line-height="18pt" role="H{$level}">
|
762
769
|
<xsl:apply-templates/>
|
770
|
+
<xsl:apply-templates select="following-sibling::*[1][local-name() = 'variant-title'][@type = 'sub']" mode="subtitle"/>
|
763
771
|
</fo:block>
|
764
772
|
</xsl:when>
|
765
773
|
<xsl:when test="$level >= 2">
|
766
|
-
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-bottom="12pt" margin-left="-9.5mm" line-height="108%" keep-with-next="always"> <!-- line-height="14.5pt" text-indent="-9.5mm" -->
|
774
|
+
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-bottom="12pt" margin-left="-9.5mm" line-height="108%" keep-with-next="always" role="H{$level}"> <!-- line-height="14.5pt" text-indent="-9.5mm" -->
|
767
775
|
<xsl:if test="$level = 2">
|
768
776
|
<xsl:attribute name="margin-top">16pt</xsl:attribute>
|
769
777
|
</xsl:if>
|
@@ -796,7 +804,7 @@
|
|
796
804
|
|
797
805
|
<xsl:choose>
|
798
806
|
<xsl:when test="ancestor::un:sections">
|
799
|
-
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-bottom="12pt" margin-left="-9.5mm" line-height="108%" keep-with-next="always"> <!-- line-height="14.5pt" text-indent="-9.5mm" -->
|
807
|
+
<fo:block font-size="{$font-size}" font-weight="bold" space-before="3pt" margin-bottom="12pt" margin-left="-9.5mm" line-height="108%" keep-with-next="always" role="H{$level}"> <!-- line-height="14.5pt" text-indent="-9.5mm" -->
|
800
808
|
<xsl:if test="$level = 1">
|
801
809
|
<!-- <xsl:attribute name="margin-left">-8.5mm</xsl:attribute> -->
|
802
810
|
<xsl:attribute name="margin-top">18pt</xsl:attribute>
|
@@ -813,8 +821,9 @@
|
|
813
821
|
</xsl:when>
|
814
822
|
|
815
823
|
<xsl:otherwise>
|
816
|
-
<fo:block font-size="{$font-size}" font-weight="bold" text-align="left" keep-with-next="always">
|
824
|
+
<fo:block font-size="{$font-size}" font-weight="bold" text-align="left" keep-with-next="always" role="H{$level}">
|
817
825
|
<xsl:apply-templates/>
|
826
|
+
<xsl:apply-templates select="following-sibling::*[1][local-name() = 'variant-title'][@type = 'sub']" mode="subtitle"/>
|
818
827
|
</fo:block>
|
819
828
|
</xsl:otherwise>
|
820
829
|
</xsl:choose>
|
@@ -1017,7 +1026,7 @@
|
|
1017
1026
|
<!-- ============================ -->
|
1018
1027
|
|
1019
1028
|
<xsl:template name="insertHeaderPreface">
|
1020
|
-
<fo:static-content flow-name="header">
|
1029
|
+
<fo:static-content flow-name="header" role="artifact">
|
1021
1030
|
<fo:block-container height="25.5mm" display-align="before" border-bottom="0.5pt solid black">
|
1022
1031
|
<fo:block font-weight="bold" padding-top="20.5mm" text-align="center">
|
1023
1032
|
<!-- <xsl:text>UN/CEFACT </xsl:text> -->
|
@@ -1028,7 +1037,7 @@
|
|
1028
1037
|
</xsl:template>
|
1029
1038
|
|
1030
1039
|
<xsl:template name="insertHeader">
|
1031
|
-
<fo:static-content flow-name="header">
|
1040
|
+
<fo:static-content flow-name="header" role="artifact">
|
1032
1041
|
<fo:block-container height="28.5mm" display-align="before" border-bottom="0.5pt solid black">
|
1033
1042
|
<fo:block font-weight="bold" padding-top="20.5mm" text-align="center">
|
1034
1043
|
<!-- <xsl:text>UN/CEFACT </xsl:text> -->
|
@@ -1039,7 +1048,7 @@
|
|
1039
1048
|
</xsl:template>
|
1040
1049
|
|
1041
1050
|
<xsl:template name="insertFooter">
|
1042
|
-
<fo:static-content flow-name="footer">
|
1051
|
+
<fo:static-content flow-name="footer" role="artifact">
|
1043
1052
|
<fo:block-container height="29mm" display-align="after">
|
1044
1053
|
<fo:block font-size="9pt" font-weight="bold" text-align="center" padding-bottom="24mm"><fo:page-number/></fo:block>
|
1045
1054
|
</fo:block-container>
|
@@ -1227,12 +1236,13 @@
|
|
1227
1236
|
</xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
|
1228
1237
|
<xsl:attribute name="white-space">pre</xsl:attribute>
|
1229
1238
|
<xsl:attribute name="wrap-option">wrap</xsl:attribute>
|
1239
|
+
<xsl:attribute name="role">Code</xsl:attribute>
|
1230
1240
|
|
1231
1241
|
|
1232
1242
|
|
1233
1243
|
|
1234
1244
|
|
1235
|
-
<xsl:attribute name="font-family">Courier</xsl:attribute>
|
1245
|
+
<xsl:attribute name="font-family">Courier New</xsl:attribute>
|
1236
1246
|
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
1237
1247
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
1238
1248
|
|
@@ -1252,8 +1262,13 @@
|
|
1252
1262
|
|
1253
1263
|
</xsl:attribute-set><xsl:attribute-set name="requirement-label-style">
|
1254
1264
|
|
1255
|
-
</xsl:attribute-set><xsl:attribute-set name="
|
1256
|
-
</xsl:attribute-set><xsl:attribute-set name="
|
1265
|
+
</xsl:attribute-set><xsl:attribute-set name="subject-style">
|
1266
|
+
</xsl:attribute-set><xsl:attribute-set name="inherit-style">
|
1267
|
+
</xsl:attribute-set><xsl:attribute-set name="description-style">
|
1268
|
+
</xsl:attribute-set><xsl:attribute-set name="specification-style">
|
1269
|
+
</xsl:attribute-set><xsl:attribute-set name="measurement-target-style">
|
1270
|
+
</xsl:attribute-set><xsl:attribute-set name="verification-style">
|
1271
|
+
</xsl:attribute-set><xsl:attribute-set name="import-style">
|
1257
1272
|
</xsl:attribute-set><xsl:attribute-set name="recommendation-style">
|
1258
1273
|
|
1259
1274
|
|
@@ -1321,6 +1336,7 @@
|
|
1321
1336
|
|
1322
1337
|
|
1323
1338
|
|
1339
|
+
|
1324
1340
|
<xsl:attribute name="font-size">11pt</xsl:attribute>
|
1325
1341
|
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
1326
1342
|
<xsl:attribute name="margin-bottom">12pt</xsl:attribute>
|
@@ -1335,7 +1351,9 @@
|
|
1335
1351
|
|
1336
1352
|
|
1337
1353
|
|
1338
|
-
</xsl:attribute-set><xsl:
|
1354
|
+
</xsl:attribute-set><xsl:variable name="table-border_">
|
1355
|
+
|
1356
|
+
</xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-name-style">
|
1339
1357
|
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
1340
1358
|
|
1341
1359
|
|
@@ -1451,7 +1469,8 @@
|
|
1451
1469
|
|
1452
1470
|
|
1453
1471
|
|
1454
|
-
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
1472
|
+
</xsl:attribute-set><xsl:attribute-set name="quote-style">
|
1473
|
+
<xsl:attribute name="role">BlockQuote</xsl:attribute>
|
1455
1474
|
|
1456
1475
|
|
1457
1476
|
|
@@ -1636,11 +1655,15 @@
|
|
1636
1655
|
<fo:block> </fo:block>
|
1637
1656
|
</xsl:if> -->
|
1638
1657
|
|
1658
|
+
|
1659
|
+
<!-- Display table's name before table as standalone block -->
|
1639
1660
|
<!-- $namespace = 'iso' or -->
|
1640
1661
|
|
1641
1662
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
1642
1663
|
|
1643
|
-
|
1664
|
+
|
1665
|
+
|
1666
|
+
|
1644
1667
|
|
1645
1668
|
<xsl:call-template name="fn_name_display"/>
|
1646
1669
|
|
@@ -1716,6 +1739,12 @@
|
|
1716
1739
|
|
1717
1740
|
|
1718
1741
|
|
1742
|
+
|
1743
|
+
|
1744
|
+
|
1745
|
+
<!-- display table's name before table for PAS inside block-container (2-columnn layout) -->
|
1746
|
+
|
1747
|
+
|
1719
1748
|
<xsl:variable name="table_width">
|
1720
1749
|
<!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
|
1721
1750
|
|
@@ -1739,6 +1768,7 @@
|
|
1739
1768
|
|
1740
1769
|
|
1741
1770
|
|
1771
|
+
|
1742
1772
|
|
1743
1773
|
|
1744
1774
|
<xsl:if test="ancestor::*[local-name()='sections']">
|
@@ -1767,6 +1797,8 @@
|
|
1767
1797
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
1768
1798
|
</xsl:if>
|
1769
1799
|
|
1800
|
+
|
1801
|
+
|
1770
1802
|
<xsl:choose>
|
1771
1803
|
<xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
|
1772
1804
|
<xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
|
@@ -2051,9 +2083,9 @@
|
|
2051
2083
|
<xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation">
|
2052
2084
|
<xsl:with-param name="continued">true</xsl:with-param>
|
2053
2085
|
</xsl:apply-templates>
|
2054
|
-
|
2055
|
-
|
2056
|
-
|
2086
|
+
|
2087
|
+
|
2088
|
+
|
2057
2089
|
|
2058
2090
|
</fo:table-cell>
|
2059
2091
|
</fo:table-row>
|
@@ -2135,7 +2167,11 @@
|
|
2135
2167
|
|
2136
2168
|
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
2137
2169
|
|
2138
|
-
<xsl:
|
2170
|
+
<xsl:variable name="isNoteOrFnExistShowAfterTable">
|
2171
|
+
|
2172
|
+
</xsl:variable>
|
2173
|
+
|
2174
|
+
<xsl:if test="$isNoteOrFnExist = 'true' or normalize-space($isNoteOrFnExistShowAfterTable) = 'true'">
|
2139
2175
|
|
2140
2176
|
<xsl:variable name="cols-count">
|
2141
2177
|
<xsl:choose>
|
@@ -2164,6 +2200,8 @@
|
|
2164
2200
|
</xsl:choose>
|
2165
2201
|
</xsl:for-each>
|
2166
2202
|
|
2203
|
+
|
2204
|
+
|
2167
2205
|
<xsl:choose>
|
2168
2206
|
<xsl:when test="xalan:nodeset($colgroup)//*[local-name()='col']">
|
2169
2207
|
<xsl:for-each select="xalan:nodeset($colgroup)//*[local-name()='col']">
|
@@ -2190,6 +2228,7 @@
|
|
2190
2228
|
|
2191
2229
|
|
2192
2230
|
|
2231
|
+
|
2193
2232
|
<!-- fn will be processed inside 'note' processing -->
|
2194
2233
|
|
2195
2234
|
|
@@ -2198,6 +2237,11 @@
|
|
2198
2237
|
|
2199
2238
|
|
2200
2239
|
|
2240
|
+
|
2241
|
+
|
2242
|
+
<!-- for BSI (not PAS) display Notes before footnotes -->
|
2243
|
+
|
2244
|
+
|
2201
2245
|
<!-- except gb -->
|
2202
2246
|
|
2203
2247
|
<xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
|
@@ -2223,6 +2267,10 @@
|
|
2223
2267
|
<!-- fn processing -->
|
2224
2268
|
<xsl:call-template name="fn_display"/>
|
2225
2269
|
|
2270
|
+
|
2271
|
+
<!-- for PAS display Notes after footnotes -->
|
2272
|
+
|
2273
|
+
|
2226
2274
|
</fo:table-cell>
|
2227
2275
|
</fo:table-row>
|
2228
2276
|
</fo:table-body>
|
@@ -2264,6 +2312,19 @@
|
|
2264
2312
|
|
2265
2313
|
</fo:table-body>
|
2266
2314
|
|
2315
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/text()[1]" priority="2" mode="presentation_name">
|
2316
|
+
<xsl:choose>
|
2317
|
+
<xsl:when test="substring-after(., '—') != ''">
|
2318
|
+
<xsl:text>—</xsl:text><xsl:value-of select="substring-after(., '—')"/>
|
2319
|
+
</xsl:when>
|
2320
|
+
<xsl:otherwise>
|
2321
|
+
<xsl:value-of select="."/>
|
2322
|
+
</xsl:otherwise>
|
2323
|
+
</xsl:choose>
|
2324
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']" mode="presentation_name">
|
2325
|
+
<xsl:apply-templates mode="presentation_name"/>
|
2326
|
+
</xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/node()" mode="presentation_name">
|
2327
|
+
<xsl:apply-templates select="."/>
|
2267
2328
|
</xsl:template><xsl:template match="*[local-name()='tr']">
|
2268
2329
|
<xsl:variable name="parent-name" select="local-name(..)"/>
|
2269
2330
|
<!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
|
@@ -2276,10 +2337,13 @@
|
|
2276
2337
|
|
2277
2338
|
|
2278
2339
|
|
2340
|
+
|
2341
|
+
|
2279
2342
|
</xsl:if>
|
2280
2343
|
<xsl:if test="$parent-name = 'tfoot'">
|
2281
2344
|
|
2282
2345
|
|
2346
|
+
|
2283
2347
|
</xsl:if>
|
2284
2348
|
|
2285
2349
|
|
@@ -2289,6 +2353,8 @@
|
|
2289
2353
|
|
2290
2354
|
|
2291
2355
|
|
2356
|
+
|
2357
|
+
|
2292
2358
|
<!-- <xsl:if test="$namespace = 'bipm'">
|
2293
2359
|
<xsl:attribute name="height">8mm</xsl:attribute>
|
2294
2360
|
</xsl:if> -->
|
@@ -2430,8 +2496,13 @@
|
|
2430
2496
|
|
2431
2497
|
|
2432
2498
|
|
2499
|
+
|
2500
|
+
<!-- Table's note name (NOTE, for example) -->
|
2501
|
+
|
2433
2502
|
<fo:inline padding-right="2mm">
|
2434
2503
|
|
2504
|
+
|
2505
|
+
|
2435
2506
|
|
2436
2507
|
|
2437
2508
|
<xsl:if test="@type = 'source' or @type = 'abbreviation'">
|
@@ -2449,6 +2520,8 @@
|
|
2449
2520
|
|
2450
2521
|
</fo:inline>
|
2451
2522
|
|
2523
|
+
|
2524
|
+
|
2452
2525
|
<xsl:apply-templates mode="process"/>
|
2453
2526
|
</fo:block>
|
2454
2527
|
|
@@ -2456,18 +2529,18 @@
|
|
2456
2529
|
<xsl:apply-templates/>
|
2457
2530
|
</xsl:template><xsl:template name="fn_display">
|
2458
2531
|
<xsl:variable name="references">
|
2532
|
+
|
2459
2533
|
<xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
|
2460
|
-
<
|
2461
|
-
|
2462
|
-
|
2463
|
-
<xsl:apply-templates/>
|
2464
|
-
</fn>
|
2534
|
+
<xsl:call-template name="create_fn"/>
|
2465
2535
|
</xsl:for-each>
|
2466
2536
|
</xsl:variable>
|
2537
|
+
|
2467
2538
|
<xsl:for-each select="xalan:nodeset($references)//fn">
|
2468
2539
|
<xsl:variable name="reference" select="@reference"/>
|
2469
2540
|
<xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
|
2470
2541
|
<fo:block margin-bottom="12pt">
|
2542
|
+
|
2543
|
+
|
2471
2544
|
|
2472
2545
|
|
2473
2546
|
|
@@ -2487,6 +2560,7 @@
|
|
2487
2560
|
<xsl:value-of select="@reference"/>
|
2488
2561
|
|
2489
2562
|
|
2563
|
+
|
2490
2564
|
</fo:inline>
|
2491
2565
|
<fo:inline>
|
2492
2566
|
|
@@ -2496,6 +2570,12 @@
|
|
2496
2570
|
</fo:block>
|
2497
2571
|
</xsl:if>
|
2498
2572
|
</xsl:for-each>
|
2573
|
+
</xsl:template><xsl:template name="create_fn">
|
2574
|
+
<fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
|
2575
|
+
|
2576
|
+
|
2577
|
+
<xsl:apply-templates/>
|
2578
|
+
</fn>
|
2499
2579
|
</xsl:template><xsl:template name="fn_name_display">
|
2500
2580
|
<!-- <xsl:variable name="references">
|
2501
2581
|
<xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
|
@@ -2636,6 +2716,7 @@
|
|
2636
2716
|
|
2637
2717
|
<xsl:value-of select="@reference"/>
|
2638
2718
|
|
2719
|
+
|
2639
2720
|
</fo:basic-link>
|
2640
2721
|
</fo:inline>
|
2641
2722
|
</xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
|
@@ -3474,16 +3555,68 @@
|
|
3474
3555
|
<xsl:with-param name="isDeleted" select="$isDeleted"/>
|
3475
3556
|
</xsl:call-template>
|
3476
3557
|
|
3558
|
+
|
3559
|
+
|
3477
3560
|
<xsl:variable name="mathml">
|
3478
3561
|
<xsl:apply-templates select="." mode="mathml"/>
|
3479
3562
|
</xsl:variable>
|
3480
3563
|
<fo:instream-foreign-object fox:alt-text="Math">
|
3481
3564
|
|
3482
3565
|
|
3566
|
+
<xsl:variable name="comment_text_following" select="following-sibling::node()[1][self::comment()]"/>
|
3567
|
+
<xsl:variable name="comment_text_">
|
3568
|
+
<xsl:choose>
|
3569
|
+
<xsl:when test="normalize-space($comment_text_following) != ''">
|
3570
|
+
<xsl:value-of select="$comment_text_following"/>
|
3571
|
+
</xsl:when>
|
3572
|
+
<xsl:otherwise>
|
3573
|
+
<xsl:value-of select="normalize-space(translate(.,' ',' '))"/>
|
3574
|
+
</xsl:otherwise>
|
3575
|
+
</xsl:choose>
|
3576
|
+
</xsl:variable>
|
3577
|
+
<xsl:variable name="comment_text" select="java:org.metanorma.fop.Util.unescape($comment_text_)"/>
|
3578
|
+
|
3579
|
+
<xsl:if test="normalize-space($comment_text) != ''">
|
3580
|
+
<!-- put Mathin Alternate Text -->
|
3581
|
+
<xsl:attribute name="fox:alt-text">
|
3582
|
+
<xsl:value-of select="java:org.metanorma.fop.Util.unescape($comment_text)"/>
|
3583
|
+
</xsl:attribute>
|
3584
|
+
</xsl:if>
|
3585
|
+
|
3586
|
+
<xsl:variable name="mathml_content">
|
3587
|
+
<xsl:apply-templates select="." mode="mathml_actual_text"/>
|
3588
|
+
</xsl:variable>
|
3589
|
+
<!-- put MathML in Actual Text -->
|
3590
|
+
<xsl:attribute name="fox:actual-text">
|
3591
|
+
<xsl:value-of select="$mathml_content"/>
|
3592
|
+
</xsl:attribute>
|
3593
|
+
|
3594
|
+
|
3483
3595
|
<!-- <xsl:copy-of select="."/> -->
|
3484
3596
|
<xsl:copy-of select="xalan:nodeset($mathml)"/>
|
3485
3597
|
</fo:instream-foreign-object>
|
3486
3598
|
</fo:inline>
|
3599
|
+
</xsl:template><xsl:template match="mathml:*" mode="mathml_actual_text">
|
3600
|
+
<!-- <xsl:text>a+b</xsl:text> -->
|
3601
|
+
<xsl:text><</xsl:text>
|
3602
|
+
<xsl:value-of select="local-name()"/>
|
3603
|
+
<xsl:if test="local-name() = 'math'">
|
3604
|
+
<xsl:text> xmlns="http://www.w3.org/1998/Math/MathML"</xsl:text>
|
3605
|
+
</xsl:if>
|
3606
|
+
<xsl:for-each select="@*">
|
3607
|
+
<xsl:text> </xsl:text>
|
3608
|
+
<xsl:value-of select="local-name()"/>
|
3609
|
+
<xsl:text>="</xsl:text>
|
3610
|
+
<xsl:value-of select="."/>
|
3611
|
+
<xsl:text>"</xsl:text>
|
3612
|
+
</xsl:for-each>
|
3613
|
+
<xsl:text>></xsl:text>
|
3614
|
+
<xsl:apply-templates mode="mathml_actual_text"/>
|
3615
|
+
<xsl:text></</xsl:text>
|
3616
|
+
<xsl:value-of select="local-name()"/>
|
3617
|
+
<xsl:text>></xsl:text>
|
3618
|
+
</xsl:template><xsl:template match="text()" mode="mathml_actual_text">
|
3619
|
+
<xsl:value-of select="normalize-space()"/>
|
3487
3620
|
</xsl:template><xsl:template match="@*|node()" mode="mathml">
|
3488
3621
|
<xsl:copy>
|
3489
3622
|
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
@@ -3493,19 +3626,6 @@
|
|
3493
3626
|
<!-- replace start and end spaces to non-break space -->
|
3494
3627
|
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),'(^ )|( $)',' ')"/>
|
3495
3628
|
</xsl:copy>
|
3496
|
-
</xsl:template><xsl:template match="mathml:mi[. = ',' and not(following-sibling::*[1][local-name() = 'mtext' and text() = ' '])]" mode="mathml">
|
3497
|
-
<xsl:copy>
|
3498
|
-
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
3499
|
-
</xsl:copy>
|
3500
|
-
<xsl:choose>
|
3501
|
-
<!-- if in msub, then don't add space -->
|
3502
|
-
<xsl:when test="ancestor::mathml:mrow[parent::mathml:msub and preceding-sibling::*[1][self::mathml:mrow]]"/>
|
3503
|
-
<!-- if next char in digit, don't add space -->
|
3504
|
-
<xsl:when test="translate(substring(following-sibling::*[1]/text(),1,1),'0123456789','') = ''"/>
|
3505
|
-
<xsl:otherwise>
|
3506
|
-
<mathml:mspace width="0.5ex"/>
|
3507
|
-
</xsl:otherwise>
|
3508
|
-
</xsl:choose>
|
3509
3629
|
</xsl:template><xsl:template match="mathml:math/*[local-name()='unit']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='prefix']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='dimension']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='quantity']" mode="mathml"/><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
|
3510
3630
|
<xsl:variable name="target">
|
3511
3631
|
<xsl:choose>
|
@@ -3558,7 +3678,10 @@
|
|
3558
3678
|
</fo:block>
|
3559
3679
|
<xsl:apply-templates/>
|
3560
3680
|
</xsl:template><xsl:template match="*[local-name()='appendix']/*[local-name()='title']"/><xsl:template match="*[local-name()='appendix']/*[local-name()='title']" mode="process">
|
3561
|
-
<
|
3681
|
+
<xsl:variable name="level">
|
3682
|
+
<xsl:call-template name="getLevel"/>
|
3683
|
+
</xsl:variable>
|
3684
|
+
<fo:inline role="H{$level}"><xsl:apply-templates/></fo:inline>
|
3562
3685
|
</xsl:template><xsl:template match="*[local-name()='appendix']//*[local-name()='example']" priority="2">
|
3563
3686
|
<fo:block id="{@id}" xsl:use-attribute-sets="appendix-example-style">
|
3564
3687
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
@@ -3593,9 +3716,10 @@
|
|
3593
3716
|
|
3594
3717
|
</xsl:variable>
|
3595
3718
|
|
3719
|
+
<xsl:variable name="text"><xsl:apply-templates/></xsl:variable>
|
3596
3720
|
<xsl:choose>
|
3597
|
-
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
3598
|
-
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
3721
|
+
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text>—</xsl:text></xsl:if></xsl:when>
|
3722
|
+
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:if test="normalize-space($text) != ''"><xsl:text> — </xsl:text></xsl:if></xsl:otherwise>
|
3599
3723
|
</xsl:choose>
|
3600
3724
|
<xsl:apply-templates/>
|
3601
3725
|
</xsl:template><xsl:template match="*[local-name() = 'xref']">
|
@@ -3643,6 +3767,7 @@
|
|
3643
3767
|
|
3644
3768
|
|
3645
3769
|
|
3770
|
+
|
3646
3771
|
<fo:block-container margin-left="0mm">
|
3647
3772
|
|
3648
3773
|
|
@@ -3755,7 +3880,10 @@
|
|
3755
3880
|
</fo:block>
|
3756
3881
|
</xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']" mode="presentation">
|
3757
3882
|
<xsl:if test="normalize-space() != ''">
|
3758
|
-
<
|
3883
|
+
<xsl:variable name="level">
|
3884
|
+
<xsl:call-template name="getLevelTermName"/>
|
3885
|
+
</xsl:variable>
|
3886
|
+
<fo:inline role="H{$level}">
|
3759
3887
|
<xsl:apply-templates/>
|
3760
3888
|
<!-- <xsl:if test="$namespace = 'gb' or $namespace = 'ogc'">
|
3761
3889
|
<xsl:text>.</xsl:text>
|
@@ -3833,7 +3961,24 @@
|
|
3833
3961
|
</fo:instream-foreign-object>
|
3834
3962
|
</xsl:when>
|
3835
3963
|
<xsl:otherwise>
|
3836
|
-
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"
|
3964
|
+
<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style">
|
3965
|
+
<xsl:if test="not(@mimetype = 'image/svg+xml') and ../*[local-name() = 'name'] and not(ancestor::*[local-name() = 'table'])">
|
3966
|
+
|
3967
|
+
<xsl:variable name="img_src">
|
3968
|
+
<xsl:choose>
|
3969
|
+
<xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
|
3970
|
+
<xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
|
3971
|
+
</xsl:choose>
|
3972
|
+
</xsl:variable>
|
3973
|
+
|
3974
|
+
<xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $width_effective, $height_effective)"/>
|
3975
|
+
<xsl:if test="number($scale) < 100">
|
3976
|
+
<xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
|
3977
|
+
</xsl:if>
|
3978
|
+
|
3979
|
+
</xsl:if>
|
3980
|
+
|
3981
|
+
</fo:external-graphic>
|
3837
3982
|
</xsl:otherwise>
|
3838
3983
|
</xsl:choose>
|
3839
3984
|
|
@@ -4004,11 +4149,13 @@
|
|
4004
4149
|
<xsl:attribute name="width">100%</xsl:attribute>
|
4005
4150
|
<xsl:attribute name="content-height">100%</xsl:attribute>
|
4006
4151
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
4152
|
+
<xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
|
4153
|
+
<xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
|
4007
4154
|
<!-- effective height 297 - 27.4 - 13 = 256.6 -->
|
4008
4155
|
<!-- effective width 210 - 12.5 - 25 = 172.5 -->
|
4009
4156
|
<!-- effective height / width = 1.48, 1.4 - with title -->
|
4010
|
-
<xsl:if test="
|
4011
|
-
<xsl:variable name="width" select="((
|
4157
|
+
<xsl:if test="$svg_height > ($svg_width * 1.4)"> <!-- for images with big height -->
|
4158
|
+
<xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
|
4012
4159
|
<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
|
4013
4160
|
</xsl:if>
|
4014
4161
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
@@ -4025,6 +4172,23 @@
|
|
4025
4172
|
<xsl:attribute name="href" namespace="http://www.w3.org/1999/xlink">
|
4026
4173
|
<xsl:value-of select="."/>
|
4027
4174
|
</xsl:attribute>
|
4175
|
+
</xsl:template><xsl:template match="*[local-name() = 'svg'][not(@width and @height)]" mode="svg_update">
|
4176
|
+
<xsl:copy>
|
4177
|
+
<xsl:apply-templates select="@*" mode="svg_update"/>
|
4178
|
+
<xsl:variable name="viewbox">
|
4179
|
+
<xsl:call-template name="split">
|
4180
|
+
<xsl:with-param name="pText" select="@viewBox"/>
|
4181
|
+
<xsl:with-param name="sep" select="' '"/>
|
4182
|
+
</xsl:call-template>
|
4183
|
+
</xsl:variable>
|
4184
|
+
<xsl:attribute name="width">
|
4185
|
+
<xsl:value-of select="round(xalan:nodeset($viewbox)//item[3])"/>
|
4186
|
+
</xsl:attribute>
|
4187
|
+
<xsl:attribute name="height">
|
4188
|
+
<xsl:value-of select="round(xalan:nodeset($viewbox)//item[4])"/>
|
4189
|
+
</xsl:attribute>
|
4190
|
+
<xsl:apply-templates mode="svg_update"/>
|
4191
|
+
</xsl:copy>
|
4028
4192
|
</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
|
4029
4193
|
<xsl:variable name="svg_content" select="document(@src)"/>
|
4030
4194
|
<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
|
@@ -4355,6 +4519,7 @@
|
|
4355
4519
|
</xsl:when>
|
4356
4520
|
<xsl:otherwise>
|
4357
4521
|
<xsl:apply-templates/>
|
4522
|
+
<xsl:apply-templates select="following-sibling::*[1][local-name() = 'variant-title'][@type = 'sub']" mode="subtitle"/>
|
4358
4523
|
</xsl:otherwise>
|
4359
4524
|
</xsl:choose>
|
4360
4525
|
</fo:block>
|
@@ -4495,14 +4660,6 @@
|
|
4495
4660
|
<fo:block>
|
4496
4661
|
<fo:inline padding-right="3mm">Obligation</fo:inline><xsl:value-of select="."/>
|
4497
4662
|
</fo:block>
|
4498
|
-
</xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" mode="presentation">
|
4499
|
-
<fo:block xsl:use-attribute-sets="requirement-subject-style">
|
4500
|
-
<xsl:text>Target Type </xsl:text><xsl:apply-templates/>
|
4501
|
-
</fo:block>
|
4502
|
-
</xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'inherit']">
|
4503
|
-
<fo:block xsl:use-attribute-sets="requirement-inherit-style">
|
4504
|
-
<xsl:text>Dependency </xsl:text><xsl:apply-templates/>
|
4505
|
-
</fo:block>
|
4506
4663
|
</xsl:template><xsl:template match="*[local-name() = 'recommendation']">
|
4507
4664
|
<fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
|
4508
4665
|
<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
|
@@ -4519,6 +4676,38 @@
|
|
4519
4676
|
<fo:block xsl:use-attribute-sets="recommendation-label-style">
|
4520
4677
|
<xsl:apply-templates/>
|
4521
4678
|
</fo:block>
|
4679
|
+
</xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" priority="2"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" mode="presentation">
|
4680
|
+
<fo:block xsl:use-attribute-sets="subject-style">
|
4681
|
+
<xsl:text>Target Type </xsl:text><xsl:apply-templates/>
|
4682
|
+
</fo:block>
|
4683
|
+
</xsl:template><xsl:template match="*[local-name() = 'subject']">
|
4684
|
+
<fo:block xsl:use-attribute-sets="subject-style">
|
4685
|
+
<xsl:text>Target Type </xsl:text><xsl:apply-templates/>
|
4686
|
+
</fo:block>
|
4687
|
+
</xsl:template><xsl:template match="*[local-name() = 'inherit'] | *[local-name() = 'component'][@class = 'inherit']">
|
4688
|
+
<fo:block xsl:use-attribute-sets="inherit-style">
|
4689
|
+
<xsl:text>Dependency </xsl:text><xsl:apply-templates/>
|
4690
|
+
</fo:block>
|
4691
|
+
</xsl:template><xsl:template match="*[local-name() = 'description'] | *[local-name() = 'component'][@class = 'description']">
|
4692
|
+
<fo:block xsl:use-attribute-sets="description-style">
|
4693
|
+
<xsl:apply-templates/>
|
4694
|
+
</fo:block>
|
4695
|
+
</xsl:template><xsl:template match="*[local-name() = 'specification'] | *[local-name() = 'component'][@class = 'specification']">
|
4696
|
+
<fo:block xsl:use-attribute-sets="specification-style">
|
4697
|
+
<xsl:apply-templates/>
|
4698
|
+
</fo:block>
|
4699
|
+
</xsl:template><xsl:template match="*[local-name() = 'measurement-target'] | *[local-name() = 'component'][@class = 'measurement-target']">
|
4700
|
+
<fo:block xsl:use-attribute-sets="measurement-target-style">
|
4701
|
+
<xsl:apply-templates/>
|
4702
|
+
</fo:block>
|
4703
|
+
</xsl:template><xsl:template match="*[local-name() = 'verification'] | *[local-name() = 'component'][@class = 'verification']">
|
4704
|
+
<fo:block xsl:use-attribute-sets="verification-style">
|
4705
|
+
<xsl:apply-templates/>
|
4706
|
+
</fo:block>
|
4707
|
+
</xsl:template><xsl:template match="*[local-name() = 'import'] | *[local-name() = 'component'][@class = 'import']">
|
4708
|
+
<fo:block xsl:use-attribute-sets="import-style">
|
4709
|
+
<xsl:apply-templates/>
|
4710
|
+
</fo:block>
|
4522
4711
|
</xsl:template><xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
4523
4712
|
<fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
|
4524
4713
|
<xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
|
@@ -4670,7 +4859,19 @@
|
|
4670
4859
|
</fo:inline>
|
4671
4860
|
</xsl:if>
|
4672
4861
|
</xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'p']">
|
4673
|
-
<
|
4862
|
+
<xsl:variable name="element">inline
|
4863
|
+
|
4864
|
+
</xsl:variable>
|
4865
|
+
<xsl:choose>
|
4866
|
+
<xsl:when test="contains($element, 'block')">
|
4867
|
+
<fo:block xsl:use-attribute-sets="example-p-style">
|
4868
|
+
<xsl:apply-templates/>
|
4869
|
+
</fo:block>
|
4870
|
+
</xsl:when>
|
4871
|
+
<xsl:otherwise>
|
4872
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
4873
|
+
</xsl:otherwise>
|
4874
|
+
</xsl:choose>
|
4674
4875
|
</xsl:template><xsl:template match="*[local-name() = 'example']">
|
4675
4876
|
<fo:block id="{@id}" xsl:use-attribute-sets="example-style">
|
4676
4877
|
|
@@ -4853,9 +5054,10 @@
|
|
4853
5054
|
|
4854
5055
|
|
4855
5056
|
</xsl:if>
|
4856
|
-
|
5057
|
+
|
5058
|
+
|
5059
|
+
|
4857
5060
|
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
4858
|
-
|
4859
5061
|
<xsl:if test="normalize-space(@citeas) = ''">
|
4860
5062
|
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
4861
5063
|
</xsl:if>
|
@@ -4863,6 +5065,7 @@
|
|
4863
5065
|
|
4864
5066
|
|
4865
5067
|
|
5068
|
+
|
4866
5069
|
</xsl:if>
|
4867
5070
|
|
4868
5071
|
<xsl:apply-templates/>
|
@@ -5248,7 +5451,6 @@
|
|
5248
5451
|
</xsl:template><xsl:template name="processBibitem">
|
5249
5452
|
|
5250
5453
|
|
5251
|
-
<!-- end BIPM bibitem processing-->
|
5252
5454
|
|
5253
5455
|
|
5254
5456
|
|
@@ -5378,6 +5580,9 @@
|
|
5378
5580
|
<fo:block-container border="1pt solid black" width="50%">
|
5379
5581
|
<fo:block> </fo:block>
|
5380
5582
|
</fo:block-container>
|
5583
|
+
</xsl:template><xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']"/><xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']" mode="subtitle">
|
5584
|
+
<fo:inline padding-right="5mm"> </fo:inline>
|
5585
|
+
<fo:inline><xsl:apply-templates/></fo:inline>
|
5381
5586
|
</xsl:template><xsl:template name="convertDate">
|
5382
5587
|
<xsl:param name="date"/>
|
5383
5588
|
<xsl:param name="format" select="'short'"/>
|
@@ -5616,6 +5821,26 @@
|
|
5616
5821
|
<xsl:value-of select="$level"/>
|
5617
5822
|
</xsl:otherwise>
|
5618
5823
|
</xsl:choose>
|
5824
|
+
</xsl:template><xsl:template name="getLevelTermName">
|
5825
|
+
<xsl:choose>
|
5826
|
+
<xsl:when test="normalize-space(../@depth) != ''">
|
5827
|
+
<xsl:value-of select="../@depth"/>
|
5828
|
+
</xsl:when>
|
5829
|
+
<xsl:otherwise>
|
5830
|
+
<xsl:variable name="title_level_">
|
5831
|
+
<xsl:for-each select="../preceding-sibling::*[local-name() = 'title'][1]">
|
5832
|
+
<xsl:call-template name="getLevel"/>
|
5833
|
+
</xsl:for-each>
|
5834
|
+
</xsl:variable>
|
5835
|
+
<xsl:variable name="title_level" select="normalize-space($title_level_)"/>
|
5836
|
+
<xsl:choose>
|
5837
|
+
<xsl:when test="$title_level != ''"><xsl:value-of select="$title_level + 1"/></xsl:when>
|
5838
|
+
<xsl:otherwise>
|
5839
|
+
<xsl:call-template name="getLevel"/>
|
5840
|
+
</xsl:otherwise>
|
5841
|
+
</xsl:choose>
|
5842
|
+
</xsl:otherwise>
|
5843
|
+
</xsl:choose>
|
5619
5844
|
</xsl:template><xsl:template name="split">
|
5620
5845
|
<xsl:param name="pText" select="."/>
|
5621
5846
|
<xsl:param name="sep" select="','"/>
|
@@ -5713,20 +5938,40 @@
|
|
5713
5938
|
</xsl:call-template>
|
5714
5939
|
</xsl:if>
|
5715
5940
|
</xsl:template><xsl:template name="getLocalizedString">
|
5716
|
-
<xsl:param name="key"/>
|
5941
|
+
<xsl:param name="key"/>
|
5942
|
+
<xsl:param name="formatted">false</xsl:param>
|
5717
5943
|
|
5718
5944
|
<xsl:variable name="curr_lang">
|
5719
5945
|
<xsl:call-template name="getLang"/>
|
5720
5946
|
</xsl:variable>
|
5721
5947
|
|
5722
|
-
<xsl:variable name="data_value"
|
5948
|
+
<xsl:variable name="data_value">
|
5949
|
+
<xsl:choose>
|
5950
|
+
<xsl:when test="$formatted = 'true'">
|
5951
|
+
<xsl:apply-templates select="xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
5952
|
+
</xsl:when>
|
5953
|
+
<xsl:otherwise>
|
5954
|
+
<xsl:value-of select="normalize-space(xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang])"/>
|
5955
|
+
</xsl:otherwise>
|
5956
|
+
</xsl:choose>
|
5957
|
+
</xsl:variable>
|
5723
5958
|
|
5724
5959
|
<xsl:choose>
|
5725
|
-
<xsl:when test="$data_value != ''">
|
5726
|
-
<xsl:
|
5960
|
+
<xsl:when test="normalize-space($data_value) != ''">
|
5961
|
+
<xsl:choose>
|
5962
|
+
<xsl:when test="$formatted = 'true'"><xsl:copy-of select="$data_value"/></xsl:when>
|
5963
|
+
<xsl:otherwise><xsl:value-of select="$data_value"/></xsl:otherwise>
|
5964
|
+
</xsl:choose>
|
5727
5965
|
</xsl:when>
|
5728
5966
|
<xsl:when test="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]">
|
5729
|
-
<xsl:
|
5967
|
+
<xsl:choose>
|
5968
|
+
<xsl:when test="$formatted = 'true'">
|
5969
|
+
<xsl:apply-templates select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
5970
|
+
</xsl:when>
|
5971
|
+
<xsl:otherwise>
|
5972
|
+
<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
5973
|
+
</xsl:otherwise>
|
5974
|
+
</xsl:choose>
|
5730
5975
|
</xsl:when>
|
5731
5976
|
<xsl:otherwise>
|
5732
5977
|
<xsl:variable name="key_">
|
@@ -5737,7 +5982,7 @@
|
|
5737
5982
|
<xsl:value-of select="$key_"/>
|
5738
5983
|
</xsl:otherwise>
|
5739
5984
|
</xsl:choose>
|
5740
|
-
|
5985
|
+
|
5741
5986
|
</xsl:template><xsl:template name="setTrackChangesStyles">
|
5742
5987
|
<xsl:param name="isAdded"/>
|
5743
5988
|
<xsl:param name="isDeleted"/>
|
@@ -5788,4 +6033,100 @@
|
|
5788
6033
|
<xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
|
5789
6034
|
</xsl:choose>
|
5790
6035
|
</xsl:attribute>
|
6036
|
+
</xsl:template><xsl:template name="number-to-words">
|
6037
|
+
<xsl:param name="number"/>
|
6038
|
+
<xsl:param name="first"/>
|
6039
|
+
<xsl:if test="$number != ''">
|
6040
|
+
<xsl:variable name="words">
|
6041
|
+
<words>
|
6042
|
+
<word cardinal="1">One-</word>
|
6043
|
+
<word ordinal="1">First </word>
|
6044
|
+
<word cardinal="2">Two-</word>
|
6045
|
+
<word ordinal="2">Second </word>
|
6046
|
+
<word cardinal="3">Three-</word>
|
6047
|
+
<word ordinal="3">Third </word>
|
6048
|
+
<word cardinal="4">Four-</word>
|
6049
|
+
<word ordinal="4">Fourth </word>
|
6050
|
+
<word cardinal="5">Five-</word>
|
6051
|
+
<word ordinal="5">Fifth </word>
|
6052
|
+
<word cardinal="6">Six-</word>
|
6053
|
+
<word ordinal="6">Sixth </word>
|
6054
|
+
<word cardinal="7">Seven-</word>
|
6055
|
+
<word ordinal="7">Seventh </word>
|
6056
|
+
<word cardinal="8">Eight-</word>
|
6057
|
+
<word ordinal="8">Eighth </word>
|
6058
|
+
<word cardinal="9">Nine-</word>
|
6059
|
+
<word ordinal="9">Ninth </word>
|
6060
|
+
<word ordinal="10">Tenth </word>
|
6061
|
+
<word ordinal="11">Eleventh </word>
|
6062
|
+
<word ordinal="12">Twelfth </word>
|
6063
|
+
<word ordinal="13">Thirteenth </word>
|
6064
|
+
<word ordinal="14">Fourteenth </word>
|
6065
|
+
<word ordinal="15">Fifteenth </word>
|
6066
|
+
<word ordinal="16">Sixteenth </word>
|
6067
|
+
<word ordinal="17">Seventeenth </word>
|
6068
|
+
<word ordinal="18">Eighteenth </word>
|
6069
|
+
<word ordinal="19">Nineteenth </word>
|
6070
|
+
<word cardinal="20">Twenty-</word>
|
6071
|
+
<word ordinal="20">Twentieth </word>
|
6072
|
+
<word cardinal="30">Thirty-</word>
|
6073
|
+
<word ordinal="30">Thirtieth </word>
|
6074
|
+
<word cardinal="40">Forty-</word>
|
6075
|
+
<word ordinal="40">Fortieth </word>
|
6076
|
+
<word cardinal="50">Fifty-</word>
|
6077
|
+
<word ordinal="50">Fiftieth </word>
|
6078
|
+
<word cardinal="60">Sixty-</word>
|
6079
|
+
<word ordinal="60">Sixtieth </word>
|
6080
|
+
<word cardinal="70">Seventy-</word>
|
6081
|
+
<word ordinal="70">Seventieth </word>
|
6082
|
+
<word cardinal="80">Eighty-</word>
|
6083
|
+
<word ordinal="80">Eightieth </word>
|
6084
|
+
<word cardinal="90">Ninety-</word>
|
6085
|
+
<word ordinal="90">Ninetieth </word>
|
6086
|
+
<word cardinal="100">Hundred-</word>
|
6087
|
+
<word ordinal="100">Hundredth </word>
|
6088
|
+
</words>
|
6089
|
+
</xsl:variable>
|
6090
|
+
|
6091
|
+
<xsl:variable name="ordinal" select="xalan:nodeset($words)//word[@ordinal = $number]/text()"/>
|
6092
|
+
|
6093
|
+
<xsl:variable name="value">
|
6094
|
+
<xsl:choose>
|
6095
|
+
<xsl:when test="$ordinal != ''">
|
6096
|
+
<xsl:value-of select="$ordinal"/>
|
6097
|
+
</xsl:when>
|
6098
|
+
<xsl:otherwise>
|
6099
|
+
<xsl:choose>
|
6100
|
+
<xsl:when test="$number < 100">
|
6101
|
+
<xsl:variable name="decade" select="concat(substring($number,1,1), '0')"/>
|
6102
|
+
<xsl:variable name="digit" select="substring($number,2)"/>
|
6103
|
+
<xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $decade]/text()"/>
|
6104
|
+
<xsl:value-of select="xalan:nodeset($words)//word[@ordinal = $digit]/text()"/>
|
6105
|
+
</xsl:when>
|
6106
|
+
<xsl:otherwise>
|
6107
|
+
<!-- more 100 -->
|
6108
|
+
<xsl:variable name="hundred" select="substring($number,1,1)"/>
|
6109
|
+
<xsl:variable name="digits" select="number(substring($number,2))"/>
|
6110
|
+
<xsl:value-of select="xalan:nodeset($words)//word[@cardinal = $hundred]/text()"/>
|
6111
|
+
<xsl:value-of select="xalan:nodeset($words)//word[@cardinal = '100']/text()"/>
|
6112
|
+
<xsl:call-template name="number-to-words">
|
6113
|
+
<xsl:with-param name="number" select="$digits"/>
|
6114
|
+
</xsl:call-template>
|
6115
|
+
</xsl:otherwise>
|
6116
|
+
</xsl:choose>
|
6117
|
+
</xsl:otherwise>
|
6118
|
+
</xsl:choose>
|
6119
|
+
</xsl:variable>
|
6120
|
+
<xsl:choose>
|
6121
|
+
<xsl:when test="$first = 'true'">
|
6122
|
+
<xsl:variable name="value_lc" select="java:toLowerCase(java:java.lang.String.new($value))"/>
|
6123
|
+
<xsl:call-template name="capitalize">
|
6124
|
+
<xsl:with-param name="str" select="$value_lc"/>
|
6125
|
+
</xsl:call-template>
|
6126
|
+
</xsl:when>
|
6127
|
+
<xsl:otherwise>
|
6128
|
+
<xsl:value-of select="$value"/>
|
6129
|
+
</xsl:otherwise>
|
6130
|
+
</xsl:choose>
|
6131
|
+
</xsl:if>
|
5791
6132
|
</xsl:template></xsl:stylesheet>
|