metanorma-iec 2.2.7 → 2.2.9
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/lib/isodoc/iec/base_convert.rb +14 -20
- data/lib/isodoc/iec/html/html_iec_intro.html +0 -1
- data/lib/isodoc/iec/html/word_iec_intro.html +0 -3
- data/lib/isodoc/iec/iec.international-standard.xsl +542 -194
- data/lib/isodoc/iec/presentation_xml_convert.rb +59 -11
- data/lib/isodoc/iec/word_convert.rb +21 -17
- data/lib/metanorma/iec/iec.rng +6 -9
- data/lib/metanorma/iec/isodoc.rng +41 -14
- data/lib/metanorma/iec/isostandard.rng +5 -8
- data/lib/metanorma/iec/version.rb +1 -1
- data/metanorma-iec.gemspec +1 -1
- metadata +4 -4
|
@@ -452,10 +452,10 @@
|
|
|
452
452
|
</fo:block>
|
|
453
453
|
<fo:block-container margin-left="1.5mm">
|
|
454
454
|
<fo:block-container margin-left="0mm">
|
|
455
|
-
<fo:block-container border="0.5pt solid black" font-size="10pt" margin-top="8mm" font-weight="bold" padding-left="1.5mm" padding-top="0.5mm" width="102%" height="11mm" display-align="center">
|
|
456
|
-
<fo:block margin-left="
|
|
455
|
+
<fo:block-container border="0.5pt solid black" font-size="10pt" margin-top="8mm" font-weight="bold" padding-left="1.5mm" padding-top="0.5mm" width="102%" height="11mm" display-align="center" id="__internal_layout__warning_block">
|
|
456
|
+
<fo:block margin-left="1mm">Warning! Make sure that you obtained this publication from an authorized distributor.</fo:block>
|
|
457
457
|
<xsl:if test="//iec:iec-standard/iec:bibdata/iec:title[@language = 'fr']">
|
|
458
|
-
<fo:block margin-left="
|
|
458
|
+
<fo:block margin-left="1mm" margin-top="3pt">Attention! Veuillez vous assurer que vous avez obtenu cette publication via un distributeur agréé.</fo:block>
|
|
459
459
|
</xsl:if>
|
|
460
460
|
</fo:block-container>
|
|
461
461
|
</fo:block-container>
|
|
@@ -869,9 +869,9 @@
|
|
|
869
869
|
|
|
870
870
|
<xsl:for-each select="xalan:nodeset($current_document)">
|
|
871
871
|
|
|
872
|
-
<xsl:variable name="docid">
|
|
872
|
+
<!-- <xsl:variable name="docid">
|
|
873
873
|
<xsl:call-template name="getDocumentId"/>
|
|
874
|
-
</xsl:variable>
|
|
874
|
+
</xsl:variable> -->
|
|
875
875
|
|
|
876
876
|
<fo:page-sequence master-reference="document" format="1" force-page-count="no-force"> <!-- initial-page-number="2" -->
|
|
877
877
|
|
|
@@ -883,17 +883,22 @@
|
|
|
883
883
|
</xsl:if>
|
|
884
884
|
|
|
885
885
|
<xsl:call-template name="insertHeaderFooter"/>
|
|
886
|
-
|
|
886
|
+
<fo:flow flow-name="xsl-region-body">
|
|
887
|
+
|
|
888
|
+
<xsl:call-template name="processPrefaceSectionsDefault"/>
|
|
887
889
|
|
|
890
|
+
<!--
|
|
888
891
|
<xsl:call-template name="insertTOCpages">
|
|
889
892
|
<xsl:with-param name="contents" select="$contents/doc[@id = $docid]"/>
|
|
890
893
|
</xsl:call-template>
|
|
891
|
-
|
|
894
|
+
|
|
892
895
|
<xsl:call-template name="insertPrefacepages">
|
|
893
896
|
<xsl:with-param name="lang" select="$lang"/>
|
|
894
897
|
</xsl:call-template>
|
|
898
|
+
-->
|
|
895
899
|
|
|
896
|
-
|
|
900
|
+
<fo:block/> <!-- for prevent empty preface -->
|
|
901
|
+
</fo:flow>
|
|
897
902
|
</fo:page-sequence>
|
|
898
903
|
|
|
899
904
|
<xsl:call-template name="insertBodypages">
|
|
@@ -1191,7 +1196,7 @@
|
|
|
1191
1196
|
|
|
1192
1197
|
<xsl:template name="insertTOCpages">
|
|
1193
1198
|
<xsl:param name="contents"/>
|
|
1194
|
-
<fo:block-container>
|
|
1199
|
+
<!-- <fo:block-container>
|
|
1195
1200
|
<fo:block role="TOC">
|
|
1196
1201
|
<fo:block font-size="12pt" text-align="center" margin-bottom="22pt" role="H1">
|
|
1197
1202
|
<xsl:variable name="title-toc">
|
|
@@ -1202,90 +1207,90 @@
|
|
|
1202
1207
|
<xsl:call-template name="addLetterSpacing">
|
|
1203
1208
|
<xsl:with-param name="text" select="java:toUpperCase(java:java.lang.String.new($title-toc))"/>
|
|
1204
1209
|
</xsl:call-template>
|
|
1205
|
-
</fo:block>
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
</xsl:if>
|
|
1214
|
-
<xsl:if test="@level = 2">
|
|
1215
|
-
<xsl:attribute name="margin-bottom">3pt</xsl:attribute>
|
|
1216
|
-
</xsl:if>
|
|
1217
|
-
<xsl:if test="@level >= 3">
|
|
1218
|
-
<xsl:attribute name="margin-bottom">2pt</xsl:attribute>
|
|
1219
|
-
</xsl:if>
|
|
1220
|
-
<xsl:if test="@type = 'indexsect'">
|
|
1221
|
-
<xsl:attribute name="space-before">16pt</xsl:attribute>
|
|
1222
|
-
</xsl:if>
|
|
1223
|
-
<xsl:if test="@type = 'references'">
|
|
1224
|
-
<xsl:attribute name="space-before">5pt</xsl:attribute>
|
|
1225
|
-
</xsl:if>
|
|
1226
|
-
|
|
1227
|
-
<fo:list-block>
|
|
1228
|
-
<xsl:attribute name="margin-left">
|
|
1229
|
-
<xsl:choose>
|
|
1230
|
-
<xsl:when test="title/@variant-title = 'true'">0mm</xsl:when>
|
|
1231
|
-
<xsl:when test="@level = 2">8mm</xsl:when>
|
|
1232
|
-
<xsl:when test="@level >= 3"><xsl:value-of select="(@level - 2) * 23"/>mm</xsl:when>
|
|
1233
|
-
<xsl:otherwise>0mm</xsl:otherwise>
|
|
1234
|
-
</xsl:choose>
|
|
1235
|
-
</xsl:attribute>
|
|
1236
|
-
<xsl:attribute name="provisional-distance-between-starts">
|
|
1237
|
-
<xsl:choose>
|
|
1238
|
-
<xsl:when test="@section = ''">0mm</xsl:when>
|
|
1239
|
-
<xsl:when test="@level = 1">8mm</xsl:when>
|
|
1240
|
-
<xsl:when test="@level = 2">15mm</xsl:when>
|
|
1241
|
-
<xsl:when test="@level >= 3"><xsl:value-of select="(@level - 2) * 19"/>mm</xsl:when>
|
|
1242
|
-
<xsl:otherwise>0mm</xsl:otherwise>
|
|
1243
|
-
</xsl:choose>
|
|
1244
|
-
</xsl:attribute>
|
|
1245
|
-
<fo:list-item>
|
|
1246
|
-
<fo:list-item-label end-indent="label-end()">
|
|
1247
|
-
<fo:block>
|
|
1248
|
-
<xsl:value-of select="@section"/>
|
|
1249
|
-
</fo:block>
|
|
1250
|
-
</fo:list-item-label>
|
|
1251
|
-
<fo:list-item-body start-indent="body-start()">
|
|
1252
|
-
<fo:block text-align-last="justify">
|
|
1253
|
-
<fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
|
|
1254
|
-
<xsl:variable name="title">
|
|
1255
|
-
<xsl:apply-templates select="title"/>
|
|
1256
|
-
</xsl:variable>
|
|
1257
|
-
<xsl:call-template name="addLetterSpacing">
|
|
1258
|
-
<xsl:with-param name="text" select="$title"/>
|
|
1259
|
-
</xsl:call-template>
|
|
1260
|
-
<xsl:text> </xsl:text>
|
|
1261
|
-
<fo:inline keep-together.within-line="always">
|
|
1262
|
-
<fo:leader leader-pattern="dots"/>
|
|
1263
|
-
<fo:inline><fo:page-number-citation ref-id="{@id}"/></fo:inline>
|
|
1264
|
-
</fo:inline>
|
|
1265
|
-
</fo:basic-link>
|
|
1266
|
-
</fo:block>
|
|
1267
|
-
</fo:list-item-body>
|
|
1268
|
-
</fo:list-item>
|
|
1269
|
-
</fo:list-block>
|
|
1270
|
-
</fo:block>
|
|
1271
|
-
</xsl:for-each>
|
|
1272
|
-
|
|
1273
|
-
<xsl:if test="$contents//figures/figure">
|
|
1274
|
-
<fo:block margin-bottom="5pt"> </fo:block>
|
|
1275
|
-
<xsl:for-each select="$contents//figures/figure">
|
|
1276
|
-
<xsl:call-template name="insertListOf_Item"/>
|
|
1277
|
-
</xsl:for-each>
|
|
1210
|
+
</fo:block> -->
|
|
1211
|
+
|
|
1212
|
+
<xsl:for-each select="xalan:nodeset($contents)//item[@display = 'true']"><!-- [@display = 'true']
|
|
1213
|
+
[@level <= 3]
|
|
1214
|
+
[not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
|
|
1215
|
+
<fo:block text-align-last="justify" role="TOCI">
|
|
1216
|
+
<xsl:if test="@level = 1">
|
|
1217
|
+
<xsl:attribute name="margin-bottom">5pt</xsl:attribute>
|
|
1278
1218
|
</xsl:if>
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1219
|
+
<xsl:if test="@level = 2">
|
|
1220
|
+
<xsl:attribute name="margin-bottom">3pt</xsl:attribute>
|
|
1221
|
+
</xsl:if>
|
|
1222
|
+
<xsl:if test="@level >= 3">
|
|
1223
|
+
<xsl:attribute name="margin-bottom">2pt</xsl:attribute>
|
|
1224
|
+
</xsl:if>
|
|
1225
|
+
<xsl:if test="@type = 'indexsect'">
|
|
1226
|
+
<xsl:attribute name="space-before">16pt</xsl:attribute>
|
|
1227
|
+
</xsl:if>
|
|
1228
|
+
<xsl:if test="@type = 'references'">
|
|
1229
|
+
<xsl:attribute name="space-before">5pt</xsl:attribute>
|
|
1285
1230
|
</xsl:if>
|
|
1286
1231
|
|
|
1232
|
+
<fo:list-block>
|
|
1233
|
+
<xsl:attribute name="margin-left">
|
|
1234
|
+
<xsl:choose>
|
|
1235
|
+
<xsl:when test="title/@variant-title = 'true'">0mm</xsl:when>
|
|
1236
|
+
<xsl:when test="@level = 2">8mm</xsl:when>
|
|
1237
|
+
<xsl:when test="@level >= 3"><xsl:value-of select="(@level - 2) * 23"/>mm</xsl:when>
|
|
1238
|
+
<xsl:otherwise>0mm</xsl:otherwise>
|
|
1239
|
+
</xsl:choose>
|
|
1240
|
+
</xsl:attribute>
|
|
1241
|
+
<xsl:attribute name="provisional-distance-between-starts">
|
|
1242
|
+
<xsl:choose>
|
|
1243
|
+
<xsl:when test="@section = ''">0mm</xsl:when>
|
|
1244
|
+
<xsl:when test="@level = 1">8mm</xsl:when>
|
|
1245
|
+
<xsl:when test="@level = 2">15mm</xsl:when>
|
|
1246
|
+
<xsl:when test="@level >= 3"><xsl:value-of select="(@level - 2) * 19"/>mm</xsl:when>
|
|
1247
|
+
<xsl:otherwise>0mm</xsl:otherwise>
|
|
1248
|
+
</xsl:choose>
|
|
1249
|
+
</xsl:attribute>
|
|
1250
|
+
<fo:list-item>
|
|
1251
|
+
<fo:list-item-label end-indent="label-end()">
|
|
1252
|
+
<fo:block>
|
|
1253
|
+
<xsl:value-of select="@section"/>
|
|
1254
|
+
</fo:block>
|
|
1255
|
+
</fo:list-item-label>
|
|
1256
|
+
<fo:list-item-body start-indent="body-start()">
|
|
1257
|
+
<fo:block text-align-last="justify">
|
|
1258
|
+
<fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
|
|
1259
|
+
<xsl:variable name="title">
|
|
1260
|
+
<xsl:apply-templates select="title"/>
|
|
1261
|
+
</xsl:variable>
|
|
1262
|
+
<xsl:call-template name="addLetterSpacing">
|
|
1263
|
+
<xsl:with-param name="text" select="$title"/>
|
|
1264
|
+
</xsl:call-template>
|
|
1265
|
+
<xsl:text> </xsl:text>
|
|
1266
|
+
<fo:inline keep-together.within-line="always">
|
|
1267
|
+
<fo:leader leader-pattern="dots"/>
|
|
1268
|
+
<fo:inline><fo:page-number-citation ref-id="{@id}"/></fo:inline>
|
|
1269
|
+
</fo:inline>
|
|
1270
|
+
</fo:basic-link>
|
|
1271
|
+
</fo:block>
|
|
1272
|
+
</fo:list-item-body>
|
|
1273
|
+
</fo:list-item>
|
|
1274
|
+
</fo:list-block>
|
|
1287
1275
|
</fo:block>
|
|
1288
|
-
</
|
|
1276
|
+
</xsl:for-each>
|
|
1277
|
+
|
|
1278
|
+
<xsl:if test="$contents//figures/figure">
|
|
1279
|
+
<fo:block margin-bottom="5pt"> </fo:block>
|
|
1280
|
+
<xsl:for-each select="$contents//figures/figure">
|
|
1281
|
+
<xsl:call-template name="insertListOf_Item"/>
|
|
1282
|
+
</xsl:for-each>
|
|
1283
|
+
</xsl:if>
|
|
1284
|
+
|
|
1285
|
+
<xsl:if test="$contents//tables/table">
|
|
1286
|
+
<fo:block margin-bottom="5pt"> </fo:block>
|
|
1287
|
+
<xsl:for-each select="$contents//tables/table">
|
|
1288
|
+
<xsl:call-template name="insertListOf_Item"/>
|
|
1289
|
+
</xsl:for-each>
|
|
1290
|
+
</xsl:if>
|
|
1291
|
+
|
|
1292
|
+
<!-- </fo:block>
|
|
1293
|
+
</fo:block-container> -->
|
|
1289
1294
|
</xsl:template>
|
|
1290
1295
|
|
|
1291
1296
|
<xsl:template name="insertListOf_Item">
|
|
@@ -1300,6 +1305,49 @@
|
|
|
1300
1305
|
</fo:block>
|
|
1301
1306
|
</xsl:template>
|
|
1302
1307
|
|
|
1308
|
+
<xsl:template match="iec:preface/iec:clause[@type = 'toc']" priority="3">
|
|
1309
|
+
<fo:block-container>
|
|
1310
|
+
<fo:block role="TOC">
|
|
1311
|
+
<xsl:apply-templates/>
|
|
1312
|
+
|
|
1313
|
+
<xsl:if test="count(*) = 1 and *[local-name() = 'title']"> <!-- if there isn't user ToC -->
|
|
1314
|
+
<xsl:variable name="docid">
|
|
1315
|
+
<xsl:call-template name="getDocumentId"/>
|
|
1316
|
+
</xsl:variable>
|
|
1317
|
+
<xsl:call-template name="insertTOCpages">
|
|
1318
|
+
<xsl:with-param name="contents" select="$contents/doc[@id = $docid]"/>
|
|
1319
|
+
</xsl:call-template>
|
|
1320
|
+
</xsl:if>
|
|
1321
|
+
</fo:block>
|
|
1322
|
+
</fo:block-container>
|
|
1323
|
+
</xsl:template>
|
|
1324
|
+
|
|
1325
|
+
<xsl:template match="iec:preface/iec:clause[@type = 'toc']/iec:title" priority="3">
|
|
1326
|
+
<fo:block font-size="12pt" text-align="center" margin-bottom="22pt" role="H1">
|
|
1327
|
+
<xsl:call-template name="addLetterSpacing">
|
|
1328
|
+
<xsl:with-param name="text" select="java:toUpperCase(java:java.lang.String.new(.))"/>
|
|
1329
|
+
</xsl:call-template>
|
|
1330
|
+
</fo:block>
|
|
1331
|
+
</xsl:template>
|
|
1332
|
+
|
|
1333
|
+
<xsl:template match="iec:preface/iec:pagebreak" priority="3">
|
|
1334
|
+
<fo:block break-after="page"/>
|
|
1335
|
+
</xsl:template>
|
|
1336
|
+
|
|
1337
|
+
<xsl:template match="*[local-name() = 'preface' or local-name() = 'sections']/iec:p[starts-with(@class, 'zzSTDTitle')]" priority="3">
|
|
1338
|
+
<fo:block-container font-size="12pt" text-align="center">
|
|
1339
|
+
<xsl:if test="following-sibling::*[1][not(self::iec:p[starts-with(@class, 'zzSTDTitle')])]">
|
|
1340
|
+
<xsl:attribute name="margin-bottom">18pt</xsl:attribute>
|
|
1341
|
+
</xsl:if>
|
|
1342
|
+
<fo:block>
|
|
1343
|
+
<xsl:if test="iec:strong"> <!-- title -->
|
|
1344
|
+
<xsl:attribute name="role">H1</xsl:attribute>
|
|
1345
|
+
</xsl:if>
|
|
1346
|
+
<xsl:apply-templates/>
|
|
1347
|
+
</fo:block>
|
|
1348
|
+
</fo:block-container>
|
|
1349
|
+
</xsl:template>
|
|
1350
|
+
|
|
1303
1351
|
<xsl:template name="insertPrefacepages">
|
|
1304
1352
|
<xsl:param name="lang" select="$lang"/>
|
|
1305
1353
|
<fo:block break-after="page"/>
|
|
@@ -1622,14 +1670,21 @@
|
|
|
1622
1670
|
<xsl:with-param name="text" select="iec:title"/>
|
|
1623
1671
|
</xsl:call-template>
|
|
1624
1672
|
</fo:block>
|
|
1625
|
-
|
|
1673
|
+
<!-- margin-left="6.3mm" -->
|
|
1674
|
+
<!-- <fo:block font-size="8.2pt" text-align="justify">
|
|
1626
1675
|
<xsl:apply-templates select="/iec:iec-standard/iec:boilerplate/iec:legal-statement/*"/>
|
|
1627
|
-
</fo:block>
|
|
1676
|
+
</fo:block> -->
|
|
1628
1677
|
<fo:block>
|
|
1629
1678
|
<xsl:apply-templates select="*[not(local-name() = 'title')]"/>
|
|
1630
1679
|
</fo:block>
|
|
1631
1680
|
</xsl:template>
|
|
1632
1681
|
|
|
1682
|
+
<xsl:template match="iec:clause[@type = 'boilerplate_legal']" priority="3">
|
|
1683
|
+
<fo:block font-size="8.2pt" text-align="justify">
|
|
1684
|
+
<xsl:apply-templates/>
|
|
1685
|
+
</fo:block>
|
|
1686
|
+
</xsl:template>
|
|
1687
|
+
|
|
1633
1688
|
<xsl:template match="iec:annex//iec:clause" priority="2">
|
|
1634
1689
|
<fo:block id="{@id}" margin-top="5pt" margin-bottom="10pt" text-align="justify">
|
|
1635
1690
|
<xsl:apply-templates/>
|
|
@@ -1806,7 +1861,7 @@
|
|
|
1806
1861
|
<xsl:if test="ancestor::iec:ul">
|
|
1807
1862
|
<xsl:attribute name="margin-bottom">3pt</xsl:attribute>
|
|
1808
1863
|
</xsl:if>
|
|
1809
|
-
<xsl:if test="ancestor::iec:legal-statement">
|
|
1864
|
+
<xsl:if test="ancestor::iec:legal-statement or ancestor::iec:clause[@type = 'boilerplate_legal']">
|
|
1810
1865
|
<xsl:attribute name="margin-bottom">5pt</xsl:attribute>
|
|
1811
1866
|
</xsl:if>
|
|
1812
1867
|
<xsl:apply-templates/>
|
|
@@ -1844,14 +1899,18 @@
|
|
|
1844
1899
|
</xsl:template>
|
|
1845
1900
|
|
|
1846
1901
|
<xsl:template match="iec:xref[@pagenumber = 'true']" priority="2">
|
|
1847
|
-
<
|
|
1848
|
-
<
|
|
1849
|
-
<
|
|
1850
|
-
<
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1902
|
+
<xsl:call-template name="insert_basic_link">
|
|
1903
|
+
<xsl:with-param name="element">
|
|
1904
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
|
1905
|
+
<fo:inline>
|
|
1906
|
+
<xsl:if test="@id">
|
|
1907
|
+
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
|
|
1908
|
+
</xsl:if>
|
|
1909
|
+
<fo:page-number-citation ref-id="{@target}"/>
|
|
1910
|
+
</fo:inline>
|
|
1911
|
+
</fo:basic-link>
|
|
1912
|
+
</xsl:with-param>
|
|
1913
|
+
</xsl:call-template>
|
|
1855
1914
|
</xsl:template>
|
|
1856
1915
|
|
|
1857
1916
|
<!-- =================== -->
|
|
@@ -2589,7 +2648,8 @@
|
|
|
2589
2648
|
|
|
2590
2649
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
|
2591
2650
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
|
2592
|
-
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
|
2651
|
+
<!-- <xsl:attribute name="margin-bottom">6pt</xsl:attribute> -->
|
|
2652
|
+
<xsl:attribute name="margin-bottom">-12pt</xsl:attribute>
|
|
2593
2653
|
<xsl:attribute name="space-before">12pt</xsl:attribute>
|
|
2594
2654
|
|
|
2595
2655
|
</xsl:attribute-set> <!-- table-name-style -->
|
|
@@ -2712,11 +2772,17 @@
|
|
|
2712
2772
|
<!-- ========================== -->
|
|
2713
2773
|
<!-- Definition's list styles -->
|
|
2714
2774
|
<!-- ========================== -->
|
|
2775
|
+
|
|
2776
|
+
<xsl:attribute-set name="dl-block-style">
|
|
2777
|
+
|
|
2778
|
+
</xsl:attribute-set>
|
|
2779
|
+
|
|
2715
2780
|
<xsl:attribute-set name="dt-row-style">
|
|
2716
2781
|
|
|
2717
2782
|
</xsl:attribute-set>
|
|
2718
2783
|
|
|
2719
2784
|
<xsl:attribute-set name="dt-cell-style">
|
|
2785
|
+
|
|
2720
2786
|
</xsl:attribute-set>
|
|
2721
2787
|
|
|
2722
2788
|
<xsl:attribute-set name="dt-block-style">
|
|
@@ -2734,6 +2800,7 @@
|
|
|
2734
2800
|
|
|
2735
2801
|
<xsl:attribute-set name="dd-cell-style">
|
|
2736
2802
|
<xsl:attribute name="padding-left">2mm</xsl:attribute>
|
|
2803
|
+
|
|
2737
2804
|
</xsl:attribute-set>
|
|
2738
2805
|
|
|
2739
2806
|
<!-- ========================== -->
|
|
@@ -2756,6 +2823,7 @@
|
|
|
2756
2823
|
</xsl:attribute-set>
|
|
2757
2824
|
|
|
2758
2825
|
<xsl:attribute-set name="xref-style">
|
|
2826
|
+
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
|
2759
2827
|
|
|
2760
2828
|
</xsl:attribute-set>
|
|
2761
2829
|
|
|
@@ -2870,6 +2938,14 @@
|
|
|
2870
2938
|
|
|
2871
2939
|
</xsl:attribute-set>
|
|
2872
2940
|
|
|
2941
|
+
<xsl:attribute-set name="figure-source-style">
|
|
2942
|
+
|
|
2943
|
+
<xsl:attribute name="font-size">6pt</xsl:attribute>
|
|
2944
|
+
<xsl:attribute name="font-style">italic</xsl:attribute>
|
|
2945
|
+
<xsl:attribute name="text-align">right</xsl:attribute>
|
|
2946
|
+
|
|
2947
|
+
</xsl:attribute-set>
|
|
2948
|
+
|
|
2873
2949
|
<!-- Formula's styles -->
|
|
2874
2950
|
<xsl:attribute-set name="formula-style">
|
|
2875
2951
|
<xsl:attribute name="margin-top">6pt</xsl:attribute>
|
|
@@ -3419,7 +3495,7 @@
|
|
|
3419
3495
|
|
|
3420
3496
|
<xsl:template name="processTables_Contents">
|
|
3421
3497
|
<tables>
|
|
3422
|
-
<xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
|
3498
|
+
<xsl:for-each select="//*[local-name() = 'table'][not(ancestor::*[local-name() = 'metanorma-extension'])][@id and *[local-name() = 'name'] and normalize-space(@id) != '']">
|
|
3423
3499
|
<table id="{@id}" alt-text="{*[local-name() = 'name']}">
|
|
3424
3500
|
<xsl:copy-of select="*[local-name() = 'name']"/>
|
|
3425
3501
|
</table>
|
|
@@ -3778,7 +3854,7 @@
|
|
|
3778
3854
|
</xsl:attribute>
|
|
3779
3855
|
</xsl:for-each>
|
|
3780
3856
|
|
|
3781
|
-
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name']"/>
|
|
3857
|
+
<xsl:variable name="isNoteOrFnExist" select="./*[local-name()='note'] or .//*[local-name()='fn'][local-name(..) != 'name'] or ./*[local-name()='source']"/>
|
|
3782
3858
|
<xsl:if test="$isNoteOrFnExist = 'true'">
|
|
3783
3859
|
<xsl:attribute name="border-bottom">0pt solid black</xsl:attribute> <!-- set 0pt border, because there is a separete table below for footer -->
|
|
3784
3860
|
</xsl:if>
|
|
@@ -3822,7 +3898,7 @@
|
|
|
3822
3898
|
<xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
|
|
3823
3899
|
</xsl:when>
|
|
3824
3900
|
<xsl:otherwise>
|
|
3825
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note and dl which render separaterely -->
|
|
3901
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note') and not(local-name() = 'dl') and not(local-name() = 'source') and not(local-name() = 'thead') and not(local-name() = 'tfoot')]"/> <!-- process all table' elements, except name, header, footer, note, source and dl which render separaterely -->
|
|
3826
3902
|
</xsl:otherwise>
|
|
3827
3903
|
</xsl:choose>
|
|
3828
3904
|
|
|
@@ -3917,6 +3993,11 @@
|
|
|
3917
3993
|
|
|
3918
3994
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
|
3919
3995
|
|
|
3996
|
+
<xsl:if test="$continued = 'true'">
|
|
3997
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
|
3998
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
|
3999
|
+
</xsl:if>
|
|
4000
|
+
|
|
3920
4001
|
<xsl:choose>
|
|
3921
4002
|
<xsl:when test="$continued = 'true'">
|
|
3922
4003
|
|
|
@@ -3926,11 +4007,26 @@
|
|
|
3926
4007
|
</xsl:otherwise>
|
|
3927
4008
|
</xsl:choose>
|
|
3928
4009
|
|
|
4010
|
+
<xsl:if test="$continued = 'true'">
|
|
4011
|
+
<fo:inline font-weight="bold" font-style="normal">
|
|
4012
|
+
<fo:retrieve-table-marker retrieve-class-name="table_number"/>
|
|
4013
|
+
</fo:inline>
|
|
4014
|
+
<fo:inline font-weight="normal" font-style="italic">
|
|
4015
|
+
<xsl:text> </xsl:text>
|
|
4016
|
+
<fo:retrieve-table-marker retrieve-class-name="table_continued"/>
|
|
4017
|
+
</fo:inline>
|
|
4018
|
+
</xsl:if>
|
|
4019
|
+
|
|
3929
4020
|
</fo:block>
|
|
3930
4021
|
|
|
3931
4022
|
</xsl:if>
|
|
3932
4023
|
</xsl:template> <!-- table/name -->
|
|
3933
4024
|
|
|
4025
|
+
<!-- SOURCE: ... -->
|
|
4026
|
+
<xsl:template match="*[local-name()='table']/*[local-name() = 'source']" priority="2">
|
|
4027
|
+
<xsl:call-template name="termsource"/>
|
|
4028
|
+
</xsl:template>
|
|
4029
|
+
|
|
3934
4030
|
<xsl:template name="calculate-columns-numbers">
|
|
3935
4031
|
<xsl:param name="table-row"/>
|
|
3936
4032
|
<xsl:variable name="columns-count" select="count($table-row/*)"/>
|
|
@@ -4283,17 +4379,26 @@
|
|
|
4283
4379
|
<xsl:param name="cols-count"/>
|
|
4284
4380
|
<fo:table-header>
|
|
4285
4381
|
|
|
4382
|
+
<xsl:call-template name="table-header-title">
|
|
4383
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
|
4384
|
+
</xsl:call-template>
|
|
4385
|
+
|
|
4286
4386
|
<xsl:apply-templates/>
|
|
4287
4387
|
</fo:table-header>
|
|
4288
4388
|
</xsl:template> <!-- thead -->
|
|
4289
4389
|
|
|
4290
|
-
<!-- template is using for iso, jcgm, bsi only -->
|
|
4390
|
+
<!-- template is using for iec, iso, jcgm, bsi only -->
|
|
4291
4391
|
<xsl:template name="table-header-title">
|
|
4292
4392
|
<xsl:param name="cols-count"/>
|
|
4293
4393
|
<!-- row for title -->
|
|
4294
4394
|
<fo:table-row>
|
|
4295
4395
|
<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">
|
|
4296
4396
|
|
|
4397
|
+
<xsl:attribute name="border-left">1pt solid white</xsl:attribute>
|
|
4398
|
+
<xsl:attribute name="border-right">1pt solid white</xsl:attribute>
|
|
4399
|
+
<xsl:attribute name="border-top">1pt solid white</xsl:attribute>
|
|
4400
|
+
<xsl:attribute name="border-bottom">none</xsl:attribute>
|
|
4401
|
+
|
|
4297
4402
|
<xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']">
|
|
4298
4403
|
<xsl:with-param name="continued">true</xsl:with-param>
|
|
4299
4404
|
</xsl:apply-templates>
|
|
@@ -4330,7 +4435,7 @@
|
|
|
4330
4435
|
<xsl:param name="colwidths"/>
|
|
4331
4436
|
<xsl:param name="colgroup"/>
|
|
4332
4437
|
|
|
4333
|
-
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
|
|
4438
|
+
<xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ../*[local-name()='dl'] or ..//*[local-name()='fn'][local-name(..) != 'name'] or ../*[local-name()='source']"/>
|
|
4334
4439
|
|
|
4335
4440
|
<xsl:variable name="isNoteOrFnExistShowAfterTable">
|
|
4336
4441
|
|
|
@@ -4404,6 +4509,7 @@
|
|
|
4404
4509
|
|
|
4405
4510
|
<xsl:apply-templates select="../*[local-name()='dl']"/>
|
|
4406
4511
|
<xsl:apply-templates select="../*[local-name()='note']"/>
|
|
4512
|
+
<xsl:apply-templates select="../*[local-name()='source']"/>
|
|
4407
4513
|
|
|
4408
4514
|
<xsl:variable name="isDisplayRowSeparator">
|
|
4409
4515
|
true
|
|
@@ -4459,6 +4565,15 @@
|
|
|
4459
4565
|
</xsl:choose>
|
|
4460
4566
|
</xsl:variable>
|
|
4461
4567
|
|
|
4568
|
+
<!-- if there isn't 'thead' and there is a table's title -->
|
|
4569
|
+
<xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='thead']) and ancestor::*[local-name()='table']/*[local-name()='name']">
|
|
4570
|
+
<fo:table-header>
|
|
4571
|
+
<xsl:call-template name="table-header-title">
|
|
4572
|
+
<xsl:with-param name="cols-count" select="$cols-count"/>
|
|
4573
|
+
</xsl:call-template>
|
|
4574
|
+
</fo:table-header>
|
|
4575
|
+
</xsl:if>
|
|
4576
|
+
|
|
4462
4577
|
<xsl:apply-templates select="../*[local-name()='thead']">
|
|
4463
4578
|
<xsl:with-param name="cols-count" select="$cols-count"/>
|
|
4464
4579
|
</xsl:apply-templates>
|
|
@@ -4469,6 +4584,41 @@
|
|
|
4469
4584
|
|
|
4470
4585
|
<fo:table-body>
|
|
4471
4586
|
|
|
4587
|
+
<xsl:variable name="title_continued_">
|
|
4588
|
+
<xsl:call-template name="getTitle">
|
|
4589
|
+
<xsl:with-param name="name" select="'title-continued'"/>
|
|
4590
|
+
</xsl:call-template>
|
|
4591
|
+
</xsl:variable>
|
|
4592
|
+
|
|
4593
|
+
<xsl:variable name="title_continued">
|
|
4594
|
+
<xsl:value-of select="$title_continued_"/>
|
|
4595
|
+
|
|
4596
|
+
</xsl:variable>
|
|
4597
|
+
|
|
4598
|
+
<xsl:variable name="title_start" select="ancestor::*[local-name()='table'][1]/*[local-name()='name']/node()[1][self::text()]"/>
|
|
4599
|
+
<xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
|
|
4600
|
+
|
|
4601
|
+
<fo:table-row height="0" keep-with-next.within-page="always">
|
|
4602
|
+
<fo:table-cell>
|
|
4603
|
+
|
|
4604
|
+
<fo:marker marker-class-name="table_number"/>
|
|
4605
|
+
<fo:marker marker-class-name="table_continued"/>
|
|
4606
|
+
|
|
4607
|
+
<fo:block/>
|
|
4608
|
+
</fo:table-cell>
|
|
4609
|
+
</fo:table-row>
|
|
4610
|
+
<fo:table-row height="0" keep-with-next.within-page="always">
|
|
4611
|
+
<fo:table-cell>
|
|
4612
|
+
|
|
4613
|
+
<fo:marker marker-class-name="table_number"><xsl:value-of select="normalize-space(translate($table_number, ' ', ' '))"/></fo:marker>
|
|
4614
|
+
|
|
4615
|
+
<fo:marker marker-class-name="table_continued">
|
|
4616
|
+
<xsl:value-of select="$title_continued"/>
|
|
4617
|
+
</fo:marker>
|
|
4618
|
+
<fo:block/>
|
|
4619
|
+
</fo:table-cell>
|
|
4620
|
+
</fo:table-row>
|
|
4621
|
+
|
|
4472
4622
|
<xsl:apply-templates/>
|
|
4473
4623
|
|
|
4474
4624
|
</fo:table-body>
|
|
@@ -4772,9 +4922,13 @@
|
|
|
4772
4922
|
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
|
4773
4923
|
</xsl:if>
|
|
4774
4924
|
|
|
4775
|
-
<
|
|
4776
|
-
<xsl:
|
|
4777
|
-
|
|
4925
|
+
<xsl:call-template name="insert_basic_link">
|
|
4926
|
+
<xsl:with-param name="element">
|
|
4927
|
+
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
|
4928
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
|
4929
|
+
</fo:basic-link>
|
|
4930
|
+
</xsl:with-param>
|
|
4931
|
+
</xsl:call-template>
|
|
4778
4932
|
</fo:inline>
|
|
4779
4933
|
</xsl:variable>
|
|
4780
4934
|
|
|
@@ -5051,7 +5205,7 @@
|
|
|
5051
5205
|
<xsl:variable name="isAdded" select="@added"/>
|
|
5052
5206
|
<xsl:variable name="isDeleted" select="@deleted"/>
|
|
5053
5207
|
<!-- <dl><xsl:copy-of select="."/></dl> -->
|
|
5054
|
-
<fo:block-container>
|
|
5208
|
+
<fo:block-container xsl:use-attribute-sets="dl-block-style">
|
|
5055
5209
|
|
|
5056
5210
|
<xsl:call-template name="setBlockSpanAll"/>
|
|
5057
5211
|
|
|
@@ -5059,6 +5213,18 @@
|
|
|
5059
5213
|
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
|
5060
5214
|
</xsl:if>
|
|
5061
5215
|
|
|
5216
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']">
|
|
5217
|
+
<!-- set font-size as sourcecode font-size -->
|
|
5218
|
+
<xsl:variable name="sourcecode_attributes">
|
|
5219
|
+
<xsl:call-template name="get_sourcecode_attributes"/>
|
|
5220
|
+
</xsl:variable>
|
|
5221
|
+
<xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@font-size">
|
|
5222
|
+
<xsl:attribute name="{local-name()}">
|
|
5223
|
+
<xsl:value-of select="."/>
|
|
5224
|
+
</xsl:attribute>
|
|
5225
|
+
</xsl:for-each>
|
|
5226
|
+
</xsl:if>
|
|
5227
|
+
|
|
5062
5228
|
<xsl:if test="parent::*[local-name() = 'note']">
|
|
5063
5229
|
<xsl:attribute name="margin-left">
|
|
5064
5230
|
<xsl:choose>
|
|
@@ -5108,7 +5274,7 @@
|
|
|
5108
5274
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
|
5109
5275
|
|
|
5110
5276
|
<xsl:text> </xsl:text>
|
|
5111
|
-
<xsl:apply-templates select="*[local-name()='dd']
|
|
5277
|
+
<xsl:apply-templates select="*[local-name()='dd']/node()" mode="inline"/>
|
|
5112
5278
|
</fo:block>
|
|
5113
5279
|
|
|
5114
5280
|
</xsl:when> <!-- END: only one component -->
|
|
@@ -5506,6 +5672,7 @@
|
|
|
5506
5672
|
<xsl:param name="split_keep-within-line"/>
|
|
5507
5673
|
|
|
5508
5674
|
<fo:table-row xsl:use-attribute-sets="dt-row-style">
|
|
5675
|
+
|
|
5509
5676
|
<xsl:call-template name="insert_dt_cell">
|
|
5510
5677
|
<xsl:with-param name="key_iso" select="$key_iso"/>
|
|
5511
5678
|
<xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
|
|
@@ -5527,6 +5694,7 @@
|
|
|
5527
5694
|
<!-- border is mandatory, to calculate real width -->
|
|
5528
5695
|
<xsl:attribute name="border">0.1pt solid black</xsl:attribute>
|
|
5529
5696
|
<xsl:attribute name="text-align">left</xsl:attribute>
|
|
5697
|
+
|
|
5530
5698
|
</xsl:if>
|
|
5531
5699
|
|
|
5532
5700
|
<fo:block xsl:use-attribute-sets="dt-block-style">
|
|
@@ -5600,8 +5768,18 @@
|
|
|
5600
5768
|
</xsl:if>
|
|
5601
5769
|
</xsl:template>
|
|
5602
5770
|
|
|
5603
|
-
<xsl:template match="*[local-name()='dd']/*
|
|
5604
|
-
<
|
|
5771
|
+
<xsl:template match="*[local-name()='dd']/*" mode="inline">
|
|
5772
|
+
<xsl:variable name="is_inline_element_after_where">
|
|
5773
|
+
<xsl:if test="(local-name() = 'p') and not(preceding-sibling::node()[normalize-space() != ''])">true</xsl:if>
|
|
5774
|
+
</xsl:variable>
|
|
5775
|
+
<xsl:choose>
|
|
5776
|
+
<xsl:when test="$is_inline_element_after_where = 'true'">
|
|
5777
|
+
<fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
|
|
5778
|
+
</xsl:when>
|
|
5779
|
+
<xsl:otherwise>
|
|
5780
|
+
<xsl:apply-templates select="."/>
|
|
5781
|
+
</xsl:otherwise>
|
|
5782
|
+
</xsl:choose>
|
|
5605
5783
|
</xsl:template>
|
|
5606
5784
|
|
|
5607
5785
|
<!-- virtual html table for dl/[dt and dd] for IF (Intermediate Format) -->
|
|
@@ -6042,6 +6220,7 @@
|
|
|
6042
6220
|
<fo:inline>
|
|
6043
6221
|
<xsl:for-each select="$styles/style">
|
|
6044
6222
|
<xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
|
|
6223
|
+
|
|
6045
6224
|
</xsl:for-each>
|
|
6046
6225
|
<xsl:apply-templates/>
|
|
6047
6226
|
</fo:inline>
|
|
@@ -7101,6 +7280,79 @@
|
|
|
7101
7280
|
<xsl:value-of select="."/><xsl:value-of select="$zero_width_space"/>
|
|
7102
7281
|
</xsl:template>
|
|
7103
7282
|
|
|
7283
|
+
<!-- special case for:
|
|
7284
|
+
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
|
7285
|
+
<mstyle displaystyle="true">
|
|
7286
|
+
<msup>
|
|
7287
|
+
<mi color="#00000000">C</mi>
|
|
7288
|
+
<mtext>R</mtext>
|
|
7289
|
+
</msup>
|
|
7290
|
+
<msubsup>
|
|
7291
|
+
<mtext>C</mtext>
|
|
7292
|
+
<mi>n</mi>
|
|
7293
|
+
<mi>k</mi>
|
|
7294
|
+
</msubsup>
|
|
7295
|
+
</mstyle>
|
|
7296
|
+
</math>
|
|
7297
|
+
-->
|
|
7298
|
+
<xsl:template match="mathml:msup/mathml:mi[. = '' or . = ''][not(preceding-sibling::*)][following-sibling::mathml:mtext]" mode="mathml">
|
|
7299
|
+
<xsl:copy>
|
|
7300
|
+
<xsl:copy-of select="@*"/>
|
|
7301
|
+
<xsl:variable name="next_mtext" select="ancestor::mathml:msup/following-sibling::*[1][self::mathml:msubsup or self::mathml:msub or self::mathml:msup]/mathml:mtext"/>
|
|
7302
|
+
<xsl:if test="string-length($next_mtext) != ''">
|
|
7303
|
+
<xsl:attribute name="color">#00000000</xsl:attribute>
|
|
7304
|
+
</xsl:if>
|
|
7305
|
+
<xsl:apply-templates/>
|
|
7306
|
+
<xsl:value-of select="$next_mtext"/>
|
|
7307
|
+
</xsl:copy>
|
|
7308
|
+
</xsl:template>
|
|
7309
|
+
|
|
7310
|
+
<!-- special case for:
|
|
7311
|
+
<msup>
|
|
7312
|
+
<mtext/>
|
|
7313
|
+
<mn>1</mn>
|
|
7314
|
+
</msup>
|
|
7315
|
+
convert to (add mspace after mtext and enclose them into mrow):
|
|
7316
|
+
<msup>
|
|
7317
|
+
<mrow>
|
|
7318
|
+
<mtext/>
|
|
7319
|
+
<mspace height="1.47ex"/>
|
|
7320
|
+
</mrow>
|
|
7321
|
+
<mn>1</mn>
|
|
7322
|
+
</msup>
|
|
7323
|
+
-->
|
|
7324
|
+
<xsl:template match="mathml:msup/mathml:mtext[not(preceding-sibling::*)]" mode="mathml">
|
|
7325
|
+
<mathml:mrow>
|
|
7326
|
+
<xsl:copy-of select="."/>
|
|
7327
|
+
<mathml:mspace height="1.47ex"/>
|
|
7328
|
+
</mathml:mrow>
|
|
7329
|
+
</xsl:template>
|
|
7330
|
+
|
|
7331
|
+
<!-- add space around vertical line -->
|
|
7332
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '|']" mode="mathml">
|
|
7333
|
+
<xsl:copy>
|
|
7334
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
|
7335
|
+
<xsl:if test="not(@lspace)">
|
|
7336
|
+
<xsl:attribute name="lspace">0.4em</xsl:attribute>
|
|
7337
|
+
</xsl:if>
|
|
7338
|
+
<xsl:if test="not(@rspace)">
|
|
7339
|
+
<xsl:attribute name="rspace">0.4em</xsl:attribute>
|
|
7340
|
+
</xsl:if>
|
|
7341
|
+
<xsl:apply-templates mode="mathml"/>
|
|
7342
|
+
</xsl:copy>
|
|
7343
|
+
</xsl:template>
|
|
7344
|
+
|
|
7345
|
+
<!-- decrease fontsize for 'Circled Times' char -->
|
|
7346
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '⊗']" mode="mathml">
|
|
7347
|
+
<xsl:copy>
|
|
7348
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
|
7349
|
+
<xsl:if test="not(@fontsize)">
|
|
7350
|
+
<xsl:attribute name="fontsize">55%</xsl:attribute>
|
|
7351
|
+
</xsl:if>
|
|
7352
|
+
<xsl:apply-templates mode="mathml"/>
|
|
7353
|
+
</xsl:copy>
|
|
7354
|
+
</xsl:template>
|
|
7355
|
+
|
|
7104
7356
|
<!-- Examples:
|
|
7105
7357
|
<stem type="AsciiMath">x = 1</stem>
|
|
7106
7358
|
<stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
|
|
@@ -7162,19 +7414,23 @@
|
|
|
7162
7414
|
<xsl:apply-templates/>
|
|
7163
7415
|
</xsl:when>
|
|
7164
7416
|
<xsl:otherwise>
|
|
7165
|
-
<
|
|
7166
|
-
<xsl:
|
|
7167
|
-
<
|
|
7168
|
-
<xsl:
|
|
7169
|
-
<xsl:
|
|
7170
|
-
|
|
7171
|
-
|
|
7172
|
-
|
|
7173
|
-
|
|
7174
|
-
|
|
7175
|
-
|
|
7176
|
-
|
|
7177
|
-
|
|
7417
|
+
<xsl:call-template name="insert_basic_link">
|
|
7418
|
+
<xsl:with-param name="element">
|
|
7419
|
+
<fo:basic-link external-destination="{$target}" fox:alt-text="{$target}">
|
|
7420
|
+
<xsl:choose>
|
|
7421
|
+
<xsl:when test="normalize-space(.) = ''">
|
|
7422
|
+
<xsl:call-template name="add-zero-spaces-link-java">
|
|
7423
|
+
<xsl:with-param name="text" select="$target_text"/>
|
|
7424
|
+
</xsl:call-template>
|
|
7425
|
+
</xsl:when>
|
|
7426
|
+
<xsl:otherwise>
|
|
7427
|
+
<!-- output text from <link>text</link> -->
|
|
7428
|
+
<xsl:apply-templates/>
|
|
7429
|
+
</xsl:otherwise>
|
|
7430
|
+
</xsl:choose>
|
|
7431
|
+
</fo:basic-link>
|
|
7432
|
+
</xsl:with-param>
|
|
7433
|
+
</xsl:call-template>
|
|
7178
7434
|
</xsl:otherwise>
|
|
7179
7435
|
</xsl:choose>
|
|
7180
7436
|
</fo:inline>
|
|
@@ -7237,12 +7493,16 @@
|
|
|
7237
7493
|
</xsl:template>
|
|
7238
7494
|
|
|
7239
7495
|
<xsl:template match="*[local-name() = 'xref']">
|
|
7240
|
-
<
|
|
7241
|
-
<xsl:
|
|
7242
|
-
<
|
|
7243
|
-
|
|
7244
|
-
|
|
7245
|
-
|
|
7496
|
+
<xsl:call-template name="insert_basic_link">
|
|
7497
|
+
<xsl:with-param name="element">
|
|
7498
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
|
7499
|
+
<xsl:if test="parent::*[local-name() = 'add']">
|
|
7500
|
+
<xsl:call-template name="append_add-style"/>
|
|
7501
|
+
</xsl:if>
|
|
7502
|
+
<xsl:apply-templates/>
|
|
7503
|
+
</fo:basic-link>
|
|
7504
|
+
</xsl:with-param>
|
|
7505
|
+
</xsl:call-template>
|
|
7246
7506
|
</xsl:template>
|
|
7247
7507
|
|
|
7248
7508
|
<!-- ====== -->
|
|
@@ -7545,6 +7805,15 @@
|
|
|
7545
7805
|
</fo:block>
|
|
7546
7806
|
</xsl:template>
|
|
7547
7807
|
|
|
7808
|
+
<!-- SOURCE: ... -->
|
|
7809
|
+
<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'source']" priority="2">
|
|
7810
|
+
|
|
7811
|
+
<fo:block xsl:use-attribute-sets="figure-source-style">
|
|
7812
|
+
<xsl:apply-templates/>
|
|
7813
|
+
</fo:block>
|
|
7814
|
+
|
|
7815
|
+
</xsl:template>
|
|
7816
|
+
|
|
7548
7817
|
<xsl:template match="*[local-name() = 'image']">
|
|
7549
7818
|
<xsl:variable name="isAdded" select="../@added"/>
|
|
7550
7819
|
<xsl:variable name="isDeleted" select="../@deleted"/>
|
|
@@ -7618,7 +7887,7 @@
|
|
|
7618
7887
|
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
|
7619
7888
|
</xsl:when>
|
|
7620
7889
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
|
7621
|
-
<xsl:value-of select="concat('url(file
|
|
7890
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
|
7622
7891
|
</xsl:when>
|
|
7623
7892
|
<xsl:otherwise>
|
|
7624
7893
|
<xsl:value-of select="@src"/>
|
|
@@ -7640,7 +7909,7 @@
|
|
|
7640
7909
|
</xsl:when>
|
|
7641
7910
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
|
7642
7911
|
<xsl:variable name="src">
|
|
7643
|
-
<xsl:value-of select="concat('url(file
|
|
7912
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
|
7644
7913
|
</xsl:variable>
|
|
7645
7914
|
<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
|
|
7646
7915
|
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
|
|
@@ -8026,15 +8295,19 @@
|
|
|
8026
8295
|
<xsl:param name="dest"/>
|
|
8027
8296
|
<fo:block-container position="absolute" left="{$left}px" top="{$top}px" width="{$width}px" height="{$height}px">
|
|
8028
8297
|
<fo:block font-size="1pt">
|
|
8029
|
-
<
|
|
8030
|
-
<
|
|
8031
|
-
<fo:
|
|
8032
|
-
|
|
8033
|
-
<
|
|
8034
|
-
|
|
8035
|
-
|
|
8036
|
-
|
|
8037
|
-
|
|
8298
|
+
<xsl:call-template name="insert_basic_link">
|
|
8299
|
+
<xsl:with-param name="element">
|
|
8300
|
+
<fo:basic-link internal-destination="{$dest}" fox:alt-text="svg link">
|
|
8301
|
+
<fo:inline-container inline-progression-dimension="100%">
|
|
8302
|
+
<fo:block-container height="{$height - 1}px" width="100%">
|
|
8303
|
+
<!-- DEBUG <xsl:if test="local-name()='polygon'">
|
|
8304
|
+
<xsl:attribute name="background-color">magenta</xsl:attribute>
|
|
8305
|
+
</xsl:if> -->
|
|
8306
|
+
<fo:block> </fo:block></fo:block-container>
|
|
8307
|
+
</fo:inline-container>
|
|
8308
|
+
</fo:basic-link>
|
|
8309
|
+
</xsl:with-param>
|
|
8310
|
+
</xsl:call-template>
|
|
8038
8311
|
</fo:block>
|
|
8039
8312
|
</fo:block-container>
|
|
8040
8313
|
</xsl:template>
|
|
@@ -8687,9 +8960,11 @@
|
|
|
8687
8960
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
|
8688
8961
|
</xsl:if>
|
|
8689
8962
|
|
|
8690
|
-
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
|
8963
|
+
<xsl:apply-templates select="node()[not(local-name() = 'name' or local-name() = 'dl')]"/>
|
|
8691
8964
|
</fo:block>
|
|
8692
8965
|
|
|
8966
|
+
<xsl:apply-templates select="*[local-name() = 'dl']"/> <!-- Key table -->
|
|
8967
|
+
|
|
8693
8968
|
<xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
|
|
8694
8969
|
|
|
8695
8970
|
</fo:block-container>
|
|
@@ -8721,11 +8996,22 @@
|
|
|
8721
8996
|
<!-- add sourcecode highlighting -->
|
|
8722
8997
|
<xsl:template match="*[local-name()='sourcecode']//*[local-name()='span'][@class]" priority="2">
|
|
8723
8998
|
<xsl:variable name="class" select="@class"/>
|
|
8999
|
+
|
|
9000
|
+
<!-- Example: <1> -->
|
|
9001
|
+
<xsl:variable name="is_callout">
|
|
9002
|
+
<xsl:if test="parent::*[local-name() = 'dt']">
|
|
9003
|
+
<xsl:variable name="dt_id" select="../@id"/>
|
|
9004
|
+
<xsl:if test="ancestor::*[local-name() = 'sourcecode']//*[local-name() = 'callout'][@target = $dt_id]">true</xsl:if>
|
|
9005
|
+
</xsl:if>
|
|
9006
|
+
</xsl:variable>
|
|
9007
|
+
|
|
8724
9008
|
<xsl:choose>
|
|
8725
9009
|
<xsl:when test="$sourcecode_css//class[@name = $class]">
|
|
8726
9010
|
<fo:inline>
|
|
8727
9011
|
<xsl:apply-templates select="$sourcecode_css//class[@name = $class]" mode="css"/>
|
|
9012
|
+
<xsl:if test="$is_callout = 'true'"><</xsl:if>
|
|
8728
9013
|
<xsl:apply-templates/>
|
|
9014
|
+
<xsl:if test="$is_callout = 'true'">></xsl:if>
|
|
8729
9015
|
</fo:inline>
|
|
8730
9016
|
</xsl:when>
|
|
8731
9017
|
<xsl:otherwise>
|
|
@@ -9149,6 +9435,10 @@
|
|
|
9149
9435
|
</fo:block>
|
|
9150
9436
|
</xsl:template>
|
|
9151
9437
|
|
|
9438
|
+
<xsl:template match="*[local-name() = 'div']">
|
|
9439
|
+
<fo:block><xsl:apply-templates/></fo:block>
|
|
9440
|
+
</xsl:template>
|
|
9441
|
+
|
|
9152
9442
|
<xsl:template match="*[local-name() = 'inherit'] | *[local-name() = 'component'][@class = 'inherit'] | *[local-name() = 'div'][@type = 'requirement-inherit'] | *[local-name() = 'div'][@type = 'recommendation-inherit'] | *[local-name() = 'div'][@type = 'permission-inherit']">
|
|
9153
9443
|
<fo:block xsl:use-attribute-sets="inherit-style">
|
|
9154
9444
|
<xsl:text>Dependency </xsl:text><xsl:apply-templates/>
|
|
@@ -9580,14 +9870,18 @@
|
|
|
9580
9870
|
</xsl:template>
|
|
9581
9871
|
|
|
9582
9872
|
<xsl:template match="*[local-name() = 'origin']">
|
|
9583
|
-
<
|
|
9584
|
-
<xsl:
|
|
9585
|
-
<
|
|
9586
|
-
|
|
9587
|
-
|
|
9588
|
-
|
|
9589
|
-
|
|
9590
|
-
|
|
9873
|
+
<xsl:call-template name="insert_basic_link">
|
|
9874
|
+
<xsl:with-param name="element">
|
|
9875
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
|
9876
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
|
9877
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
|
9878
|
+
</xsl:if>
|
|
9879
|
+
<fo:inline xsl:use-attribute-sets="origin-style">
|
|
9880
|
+
<xsl:apply-templates/>
|
|
9881
|
+
</fo:inline>
|
|
9882
|
+
</fo:basic-link>
|
|
9883
|
+
</xsl:with-param>
|
|
9884
|
+
</xsl:call-template>
|
|
9591
9885
|
</xsl:template>
|
|
9592
9886
|
|
|
9593
9887
|
<!-- not using, see https://github.com/glossarist/iev-document/issues/23 -->
|
|
@@ -9661,9 +9955,13 @@
|
|
|
9661
9955
|
<xsl:if test="../*[local-name() = 'author']">
|
|
9662
9956
|
<xsl:text>, </xsl:text>
|
|
9663
9957
|
</xsl:if>
|
|
9664
|
-
<
|
|
9665
|
-
<xsl:
|
|
9666
|
-
|
|
9958
|
+
<xsl:call-template name="insert_basic_link">
|
|
9959
|
+
<xsl:with-param name="element">
|
|
9960
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
|
9961
|
+
<xsl:apply-templates/>
|
|
9962
|
+
</fo:basic-link>
|
|
9963
|
+
</xsl:with-param>
|
|
9964
|
+
</xsl:call-template>
|
|
9667
9965
|
</xsl:template>
|
|
9668
9966
|
|
|
9669
9967
|
<xsl:template match="*[local-name() = 'author']">
|
|
@@ -9712,25 +10010,29 @@
|
|
|
9712
10010
|
<xsl:variable name="citeas" select="java:replaceAll(java:java.lang.String.new(@citeas),'^\[?(.+?)\]?$','$1')"/> <!-- remove leading and trailing brackets -->
|
|
9713
10011
|
<xsl:variable name="text" select="normalize-space()"/>
|
|
9714
10012
|
|
|
9715
|
-
<
|
|
9716
|
-
<xsl:
|
|
9717
|
-
<
|
|
9718
|
-
|
|
9719
|
-
|
|
10013
|
+
<xsl:call-template name="insert_basic_link">
|
|
10014
|
+
<xsl:with-param name="element">
|
|
10015
|
+
<fo:basic-link fox:alt-text="{@citeas}">
|
|
10016
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
|
10017
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
|
10018
|
+
</xsl:if>
|
|
10019
|
+
<xsl:if test="@type = 'inline'">
|
|
9720
10020
|
|
|
9721
|
-
|
|
10021
|
+
</xsl:if>
|
|
9722
10022
|
|
|
9723
|
-
|
|
9724
|
-
|
|
9725
|
-
|
|
9726
|
-
|
|
9727
|
-
|
|
9728
|
-
|
|
9729
|
-
|
|
9730
|
-
|
|
10023
|
+
<xsl:choose>
|
|
10024
|
+
<xsl:when test="$external-destination != ''"> <!-- external hyperlink -->
|
|
10025
|
+
<xsl:attribute name="external-destination"><xsl:value-of select="$external-destination"/></xsl:attribute>
|
|
10026
|
+
</xsl:when>
|
|
10027
|
+
<xsl:otherwise>
|
|
10028
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
|
10029
|
+
</xsl:otherwise>
|
|
10030
|
+
</xsl:choose>
|
|
9731
10031
|
|
|
9732
|
-
|
|
9733
|
-
|
|
10032
|
+
<xsl:apply-templates/>
|
|
10033
|
+
</fo:basic-link>
|
|
10034
|
+
</xsl:with-param>
|
|
10035
|
+
</xsl:call-template>
|
|
9734
10036
|
|
|
9735
10037
|
</fo:inline>
|
|
9736
10038
|
</xsl:when>
|
|
@@ -9852,13 +10154,8 @@
|
|
|
9852
10154
|
</xsl:template>
|
|
9853
10155
|
|
|
9854
10156
|
<xsl:template match="*[local-name() = 'deprecates']">
|
|
9855
|
-
<xsl:variable name="title-deprecated">
|
|
9856
|
-
<xsl:call-template name="getLocalizedString">
|
|
9857
|
-
<xsl:with-param name="key">deprecated</xsl:with-param>
|
|
9858
|
-
</xsl:call-template>
|
|
9859
|
-
</xsl:variable>
|
|
9860
10157
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
|
9861
|
-
<xsl:
|
|
10158
|
+
<xsl:apply-templates/>
|
|
9862
10159
|
</fo:block>
|
|
9863
10160
|
</xsl:template>
|
|
9864
10161
|
|
|
@@ -9978,7 +10275,10 @@
|
|
|
9978
10275
|
<xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/>
|
|
9979
10276
|
|
|
9980
10277
|
<xsl:template name="setULLabel">
|
|
9981
|
-
<xsl:variable name="
|
|
10278
|
+
<xsl:variable name="list_level__">
|
|
10279
|
+
<xsl:value-of select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
|
10280
|
+
</xsl:variable>
|
|
10281
|
+
<xsl:variable name="list_level_" select="number($list_level__)"/>
|
|
9982
10282
|
<xsl:variable name="list_level">
|
|
9983
10283
|
<xsl:choose>
|
|
9984
10284
|
<xsl:when test="$list_level_ <= 3"><xsl:value-of select="$list_level_"/></xsl:when>
|
|
@@ -10111,9 +10411,11 @@
|
|
|
10111
10411
|
</fo:block-container>
|
|
10112
10412
|
</xsl:when>
|
|
10113
10413
|
<xsl:otherwise>
|
|
10114
|
-
|
|
10115
|
-
|
|
10116
|
-
|
|
10414
|
+
|
|
10415
|
+
<fo:block>
|
|
10416
|
+
<xsl:apply-templates select="." mode="list"/>
|
|
10417
|
+
</fo:block>
|
|
10418
|
+
|
|
10117
10419
|
</xsl:otherwise>
|
|
10118
10420
|
</xsl:choose>
|
|
10119
10421
|
</xsl:template>
|
|
@@ -10129,7 +10431,7 @@
|
|
|
10129
10431
|
<xsl:variable name="provisional_distance_between_starts_">
|
|
10130
10432
|
<attributes xsl:use-attribute-sets="list-style">
|
|
10131
10433
|
|
|
10132
|
-
<xsl:if test="ancestor::iec:legal-statement">
|
|
10434
|
+
<xsl:if test="ancestor::iec:legal-statement or ancestor::iec:clause[@type = 'boilerplate_legal']">
|
|
10133
10435
|
<xsl:attribute name="provisional-distance-between-starts">5mm</xsl:attribute>
|
|
10134
10436
|
</xsl:if>
|
|
10135
10437
|
|
|
@@ -10810,24 +11112,32 @@
|
|
|
10810
11112
|
<xsl:for-each select="*[local-name() = 'tab']">
|
|
10811
11113
|
<xsl:variable name="current_id" select="generate-id()"/>
|
|
10812
11114
|
<fo:table-cell>
|
|
10813
|
-
<fo:block>
|
|
10814
|
-
<
|
|
10815
|
-
<xsl:
|
|
10816
|
-
<
|
|
10817
|
-
<xsl:
|
|
10818
|
-
|
|
10819
|
-
|
|
10820
|
-
|
|
10821
|
-
|
|
11115
|
+
<fo:block line-height-shift-adjustment="disregard-shifts">
|
|
11116
|
+
<xsl:call-template name="insert_basic_link">
|
|
11117
|
+
<xsl:with-param name="element">
|
|
11118
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
|
11119
|
+
<xsl:for-each select="following-sibling::node()[not(self::*[local-name() = 'tab']) and preceding-sibling::*[local-name() = 'tab'][1][generate-id() = $current_id]]">
|
|
11120
|
+
<xsl:choose>
|
|
11121
|
+
<xsl:when test="self::text()"><xsl:value-of select="."/></xsl:when>
|
|
11122
|
+
<xsl:otherwise><xsl:apply-templates select="."/></xsl:otherwise>
|
|
11123
|
+
</xsl:choose>
|
|
11124
|
+
</xsl:for-each>
|
|
11125
|
+
</fo:basic-link>
|
|
11126
|
+
</xsl:with-param>
|
|
11127
|
+
</xsl:call-template>
|
|
10822
11128
|
</fo:block>
|
|
10823
11129
|
</fo:table-cell>
|
|
10824
11130
|
</xsl:for-each>
|
|
10825
11131
|
<!-- last column - for page numbers -->
|
|
10826
11132
|
<fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
|
|
10827
11133
|
<fo:block>
|
|
10828
|
-
<
|
|
10829
|
-
<
|
|
10830
|
-
|
|
11134
|
+
<xsl:call-template name="insert_basic_link">
|
|
11135
|
+
<xsl:with-param name="element">
|
|
11136
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
|
11137
|
+
<fo:page-number-citation ref-id="{$target}"/>
|
|
11138
|
+
</fo:basic-link>
|
|
11139
|
+
</xsl:with-param>
|
|
11140
|
+
</xsl:call-template>
|
|
10831
11141
|
</fo:block>
|
|
10832
11142
|
</fo:table-cell>
|
|
10833
11143
|
</xsl:template>
|
|
@@ -10869,6 +11179,27 @@
|
|
|
10869
11179
|
<!-- End Table of Contents (ToC) processing -->
|
|
10870
11180
|
<!-- =================== -->
|
|
10871
11181
|
|
|
11182
|
+
<!-- insert fo:basic-link, if external-destination or internal-destination is non-empty, otherwise insert fo:inline -->
|
|
11183
|
+
<xsl:template name="insert_basic_link">
|
|
11184
|
+
<xsl:param name="element"/>
|
|
11185
|
+
<xsl:variable name="element_node" select="xalan:nodeset($element)"/>
|
|
11186
|
+
<xsl:variable name="external-destination" select="normalize-space(count($element_node/fo:basic-link/@external-destination[. != '']) = 1)"/>
|
|
11187
|
+
<xsl:variable name="internal-destination" select="normalize-space(count($element_node/fo:basic-link/@internal-destination[. != '']) = 1)"/>
|
|
11188
|
+
<xsl:choose>
|
|
11189
|
+
<xsl:when test="$external-destination = 'true' or $internal-destination = 'true'">
|
|
11190
|
+
<xsl:copy-of select="$element_node"/>
|
|
11191
|
+
</xsl:when>
|
|
11192
|
+
<xsl:otherwise>
|
|
11193
|
+
<fo:inline>
|
|
11194
|
+
<xsl:for-each select="$element_node/fo:basic-link/@*[local-name() != 'external-destination' and local-name() != 'internal-destination' and local-name() != 'alt-text']">
|
|
11195
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
|
11196
|
+
</xsl:for-each>
|
|
11197
|
+
<xsl:copy-of select="$element_node/fo:basic-link/node()"/>
|
|
11198
|
+
</fo:inline>
|
|
11199
|
+
</xsl:otherwise>
|
|
11200
|
+
</xsl:choose>
|
|
11201
|
+
</xsl:template>
|
|
11202
|
+
|
|
10872
11203
|
<xsl:template match="*[local-name() = 'variant-title']"/> <!-- [@type = 'sub'] -->
|
|
10873
11204
|
<xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']" mode="subtitle">
|
|
10874
11205
|
<fo:inline padding-right="5mm"> </fo:inline>
|
|
@@ -11090,6 +11421,23 @@
|
|
|
11090
11421
|
<xsl:template match="*[local-name() = 'stem'] | *[local-name() = 'image']" mode="update_xml_step1">
|
|
11091
11422
|
<xsl:copy-of select="."/>
|
|
11092
11423
|
</xsl:template>
|
|
11424
|
+
|
|
11425
|
+
<!-- add @id, redundant for table auto-layout algorithm -->
|
|
11426
|
+
<xsl:template match="*[local-name() = 'dl' or local-name() = 'table'][not(@id)]" mode="update_xml_step1">
|
|
11427
|
+
<xsl:copy>
|
|
11428
|
+
<xsl:copy-of select="@*"/>
|
|
11429
|
+
<xsl:call-template name="add_id"/>
|
|
11430
|
+
<xsl:apply-templates mode="update_xml_step1"/>
|
|
11431
|
+
</xsl:copy>
|
|
11432
|
+
</xsl:template>
|
|
11433
|
+
|
|
11434
|
+
<xsl:template name="add_id">
|
|
11435
|
+
<xsl:if test="not(@id)">
|
|
11436
|
+
<!-- add @id - first element with @id plus '_element_name' -->
|
|
11437
|
+
<xsl:attribute name="id"><xsl:value-of select="(.//*[@id])[1]/@id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
|
|
11438
|
+
</xsl:if>
|
|
11439
|
+
</xsl:template>
|
|
11440
|
+
|
|
11093
11441
|
<!-- =========================================================================== -->
|
|
11094
11442
|
<!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
|
|
11095
11443
|
<!-- =========================================================================== -->
|