metanorma-ieee 1.2.4 → 1.2.6
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/ieee/ieee.amendment.xsl +111 -10
- data/lib/isodoc/ieee/ieee.standard.xsl +111 -10
- data/lib/isodoc/ieee/presentation_ref.rb +3 -1
- data/lib/metanorma/ieee/biblio.rng +24 -8
- data/lib/metanorma/ieee/front.rb +2 -2
- data/lib/metanorma/ieee/isodoc.rng +67 -55
- data/lib/metanorma/ieee/validate.rb +5 -3
- data/lib/metanorma/ieee/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2d51c132909941f89ee23b619d8be7555123ca3c7c75fb051fc6ad2086c2c42
|
4
|
+
data.tar.gz: 6935f9b8388b2157bb0398ca7fa8121b64431f17d0f3b8ff25d90da12e32888b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00ab0f45d0a138d195447e4698d659df23c6b64ec96ed3bbf7df3bb3c31bea845d2d97f71b823cab64fce1474d0842f7b2f8d3f4e047e10ad4ceb2106001b21d
|
7
|
+
data.tar.gz: 96688b9710f549546e10af742140926189283ae159987bd5ad4468422cfbab0970a1ede9c2b583746fc87743f6d1dd7cf3d608041a027ec3b1c7567ea0d01fee
|
@@ -4040,6 +4040,7 @@
|
|
4040
4040
|
<xsl:variable name="zero_width_space"></xsl:variable>
|
4041
4041
|
<xsl:variable name="hair_space"> </xsl:variable>
|
4042
4042
|
<xsl:variable name="en_dash">–</xsl:variable>
|
4043
|
+
<xsl:variable name="em_dash">—</xsl:variable>
|
4043
4044
|
|
4044
4045
|
<xsl:template name="getTitle">
|
4045
4046
|
<xsl:param name="name"/>
|
@@ -4371,6 +4372,10 @@
|
|
4371
4372
|
|
4372
4373
|
</xsl:attribute-set> <!-- example-name-style -->
|
4373
4374
|
|
4375
|
+
<xsl:template name="refine_example-name-style">
|
4376
|
+
|
4377
|
+
</xsl:template>
|
4378
|
+
|
4374
4379
|
<xsl:attribute-set name="example-p-style">
|
4375
4380
|
|
4376
4381
|
</xsl:attribute-set> <!-- example-p-style -->
|
@@ -4391,6 +4396,10 @@
|
|
4391
4396
|
|
4392
4397
|
</xsl:attribute-set> <!-- termexample-name-style -->
|
4393
4398
|
|
4399
|
+
<xsl:template name="refine_termexample-name-style">
|
4400
|
+
|
4401
|
+
</xsl:template>
|
4402
|
+
|
4394
4403
|
<!-- ========================== -->
|
4395
4404
|
<!-- Table styles -->
|
4396
4405
|
<!-- ========================== -->
|
@@ -4606,6 +4615,10 @@
|
|
4606
4615
|
|
4607
4616
|
</xsl:attribute-set> <!-- table-fn-style -->
|
4608
4617
|
|
4618
|
+
<xsl:template name="refine_table-fn-style">
|
4619
|
+
|
4620
|
+
</xsl:template>
|
4621
|
+
|
4609
4622
|
<xsl:attribute-set name="table-fn-number-style">
|
4610
4623
|
<xsl:attribute name="font-size">80%</xsl:attribute>
|
4611
4624
|
<xsl:attribute name="padding-right">5mm</xsl:attribute>
|
@@ -4615,6 +4628,10 @@
|
|
4615
4628
|
|
4616
4629
|
</xsl:attribute-set> <!-- table-fn-number-style -->
|
4617
4630
|
|
4631
|
+
<xsl:template name="refine_table-fn-number-style">
|
4632
|
+
|
4633
|
+
</xsl:template>
|
4634
|
+
|
4618
4635
|
<xsl:attribute-set name="fn-container-body-style">
|
4619
4636
|
<xsl:attribute name="text-indent">0</xsl:attribute>
|
4620
4637
|
<xsl:attribute name="start-indent">0</xsl:attribute>
|
@@ -7016,8 +7033,9 @@
|
|
7016
7033
|
<xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
|
7017
7034
|
|
7018
7035
|
<fo:block xsl:use-attribute-sets="table-fn-style">
|
7019
|
-
|
7036
|
+
<xsl:call-template name="refine_table-fn-style"/>
|
7020
7037
|
<fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
|
7038
|
+
<xsl:call-template name="refine_table-fn-number-style"/>
|
7021
7039
|
|
7022
7040
|
<xsl:value-of select="@reference"/>
|
7023
7041
|
|
@@ -8153,12 +8171,18 @@
|
|
8153
8171
|
</xsl:template>
|
8154
8172
|
|
8155
8173
|
<xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
|
8156
|
-
<xsl:variable name="text" select="normalize-space(.)"/>
|
8157
|
-
<
|
8174
|
+
<!-- <xsl:variable name="text" select="normalize-space(.)"/> --> <!-- https://github.com/metanorma/metanorma-iso/issues/1115 -->
|
8175
|
+
<xsl:variable name="text" select="."/>
|
8176
|
+
<xsl:variable name="ratio_">
|
8177
|
+
0.75
|
8178
|
+
</xsl:variable>
|
8179
|
+
<xsl:variable name="ratio" select="number(normalize-space($ratio_))"/>
|
8180
|
+
<fo:inline font-size="{$ratio * 100}%" role="SKIP">
|
8158
8181
|
<xsl:if test="string-length($text) > 0">
|
8159
8182
|
<xsl:variable name="smallCapsText">
|
8160
8183
|
<xsl:call-template name="recursiveSmallCaps">
|
8161
8184
|
<xsl:with-param name="text" select="$text"/>
|
8185
|
+
<xsl:with-param name="ratio" select="$ratio"/>
|
8162
8186
|
</xsl:call-template>
|
8163
8187
|
</xsl:variable>
|
8164
8188
|
<!-- merge neighboring fo:inline -->
|
@@ -8195,12 +8219,13 @@
|
|
8195
8219
|
|
8196
8220
|
<xsl:template name="recursiveSmallCaps">
|
8197
8221
|
<xsl:param name="text"/>
|
8222
|
+
<xsl:param name="ratio"/>
|
8198
8223
|
<xsl:variable name="char" select="substring($text,1,1)"/>
|
8199
8224
|
<!-- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/> -->
|
8200
8225
|
<xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
|
8201
8226
|
<xsl:choose>
|
8202
8227
|
<xsl:when test="$char=$upperCase">
|
8203
|
-
<fo:inline font-size="{100 div
|
8228
|
+
<fo:inline font-size="{100 div $ratio}%" role="SKIP">
|
8204
8229
|
<xsl:value-of select="$upperCase"/>
|
8205
8230
|
</fo:inline>
|
8206
8231
|
</xsl:when>
|
@@ -8211,6 +8236,7 @@
|
|
8211
8236
|
<xsl:if test="string-length($text) > 1">
|
8212
8237
|
<xsl:call-template name="recursiveSmallCaps">
|
8213
8238
|
<xsl:with-param name="text" select="substring($text,2)"/>
|
8239
|
+
<xsl:with-param name="ratio" select="$ratio"/>
|
8214
8240
|
</xsl:call-template>
|
8215
8241
|
</xsl:if>
|
8216
8242
|
</xsl:template>
|
@@ -8247,6 +8273,9 @@
|
|
8247
8273
|
<xsl:if test="$key = 'font-family' or $key = 'font-size' or $key = 'color'">
|
8248
8274
|
<style name="{$key}"><xsl:value-of select="$value"/></style>
|
8249
8275
|
</xsl:if>
|
8276
|
+
<xsl:if test="$key = 'text-indent'">
|
8277
|
+
<style name="padding-left"><xsl:value-of select="$value"/></style>
|
8278
|
+
</xsl:if>
|
8250
8279
|
</xsl:for-each>
|
8251
8280
|
</xsl:variable>
|
8252
8281
|
<xsl:variable name="styles" select="xalan:nodeset($styles_)"/>
|
@@ -9651,6 +9680,11 @@
|
|
9651
9680
|
</xsl:call-template>
|
9652
9681
|
</xsl:template>
|
9653
9682
|
|
9683
|
+
<!-- command between two xref points to non-standard bibitem -->
|
9684
|
+
<xsl:template match="text()[. = ','][preceding-sibling::node()[1][local-name() = 'sup'][*[local-name() = 'xref'][@type = 'footnote']] and following-sibling::node()[1][local-name() = 'sup'][*[local-name() = 'xref'][@type = 'footnote']]]">
|
9685
|
+
<xsl:value-of select="."/>
|
9686
|
+
</xsl:template>
|
9687
|
+
|
9654
9688
|
<!-- ====== -->
|
9655
9689
|
<!-- formula -->
|
9656
9690
|
<!-- ====== -->
|
@@ -10294,16 +10328,44 @@
|
|
10294
10328
|
</xsl:choose>
|
10295
10329
|
|
10296
10330
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
10297
|
-
<xsl:variable name="
|
10298
|
-
<xsl:variable name="
|
10331
|
+
<xsl:variable name="svg_width_" select="xalan:nodeset($svg_content)/*/@width"/>
|
10332
|
+
<xsl:variable name="svg_width" select="number(translate($svg_width_, 'px', ''))"/>
|
10333
|
+
<xsl:variable name="svg_height_" select="xalan:nodeset($svg_content)/*/@height"/>
|
10334
|
+
<xsl:variable name="svg_height" select="number(translate($svg_height_, 'px', ''))"/>
|
10335
|
+
|
10336
|
+
<!-- Example: -->
|
10299
10337
|
<!-- effective height 297 - 27.4 - 13 = 256.6 -->
|
10300
10338
|
<!-- effective width 210 - 12.5 - 25 = 172.5 -->
|
10301
10339
|
<!-- effective height / width = 1.48, 1.4 - with title -->
|
10302
|
-
|
10340
|
+
|
10341
|
+
<xsl:variable name="scale_x">
|
10342
|
+
<xsl:choose>
|
10343
|
+
<xsl:when test="$svg_width > $width_effective_px">
|
10344
|
+
<xsl:value-of select="$width_effective_px div $svg_width"/>
|
10345
|
+
</xsl:when>
|
10346
|
+
<xsl:otherwise>1</xsl:otherwise>
|
10347
|
+
</xsl:choose>
|
10348
|
+
</xsl:variable>
|
10349
|
+
<xsl:variable name="scale_y">
|
10350
|
+
<xsl:choose>
|
10351
|
+
<xsl:when test="$svg_height * $scale_x > $height_effective_px">
|
10352
|
+
<xsl:value-of select="$height_effective_px div ($svg_height * $scale_x)"/>
|
10353
|
+
</xsl:when>
|
10354
|
+
<xsl:otherwise>1</xsl:otherwise>
|
10355
|
+
</xsl:choose>
|
10356
|
+
</xsl:variable>
|
10357
|
+
|
10358
|
+
<!-- for images with big height -->
|
10359
|
+
<!-- <xsl:if test="$svg_height > ($svg_width * 1.4)">
|
10303
10360
|
<xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
|
10304
10361
|
<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
|
10305
|
-
</xsl:if>
|
10362
|
+
</xsl:if> -->
|
10306
10363
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
10364
|
+
|
10365
|
+
<xsl:if test="$scale_y != 1">
|
10366
|
+
<xsl:attribute name="content-height"><xsl:value-of select="round($scale_x * $scale_y * 100)"/>%</xsl:attribute>
|
10367
|
+
</xsl:if>
|
10368
|
+
|
10307
10369
|
<xsl:copy-of select="$svg_content"/>
|
10308
10370
|
</fo:instream-foreign-object>
|
10309
10371
|
<!-- </fo:block> -->
|
@@ -10328,6 +10390,8 @@
|
|
10328
10390
|
</xsl:attribute>
|
10329
10391
|
</xsl:template>
|
10330
10392
|
|
10393
|
+
<xsl:variable name="regex_starts_with_digit">^[0-9].*</xsl:variable>
|
10394
|
+
|
10331
10395
|
<xsl:template match="*[local-name() = 'svg'][not(@width and @height)]" mode="svg_update">
|
10332
10396
|
<xsl:copy>
|
10333
10397
|
<xsl:apply-templates select="@*" mode="svg_update"/>
|
@@ -10341,8 +10405,13 @@
|
|
10341
10405
|
<xsl:variable name="width" select="normalize-space($viewbox//item[3])"/>
|
10342
10406
|
<xsl:variable name="height" select="normalize-space($viewbox//item[4])"/>
|
10343
10407
|
|
10408
|
+
<xsl:variable name="parent_image_width" select="normalize-space(ancestor::*[1][local-name() = 'image']/@width)"/>
|
10409
|
+
<xsl:variable name="parent_image_height" select="normalize-space(ancestor::*[1][local-name() = 'image']/@height)"/>
|
10410
|
+
|
10344
10411
|
<xsl:attribute name="width">
|
10345
10412
|
<xsl:choose>
|
10413
|
+
<!-- width is non 'auto', 'text-width', 'full-page-width' or 'narrow' -->
|
10414
|
+
<xsl:when test="$parent_image_width != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_width), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_width"/></xsl:when>
|
10346
10415
|
<xsl:when test="$width != ''">
|
10347
10416
|
<xsl:value-of select="round($width)"/>
|
10348
10417
|
</xsl:when>
|
@@ -10351,6 +10420,8 @@
|
|
10351
10420
|
</xsl:attribute>
|
10352
10421
|
<xsl:attribute name="height">
|
10353
10422
|
<xsl:choose>
|
10423
|
+
<!-- height non 'auto', 'text-width', 'full-page-width' or 'narrow' -->
|
10424
|
+
<xsl:when test="$parent_image_height != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_height), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_height"/></xsl:when>
|
10354
10425
|
<xsl:when test="$height != ''">
|
10355
10426
|
<xsl:value-of select="round($height)"/>
|
10356
10427
|
</xsl:when>
|
@@ -10362,6 +10433,28 @@
|
|
10362
10433
|
</xsl:copy>
|
10363
10434
|
</xsl:template>
|
10364
10435
|
|
10436
|
+
<xsl:template match="*[local-name() = 'svg']/@width" mode="svg_update">
|
10437
|
+
<!-- image[@width]/svg -->
|
10438
|
+
<xsl:variable name="parent_image_width" select="normalize-space(ancestor::*[2][local-name() = 'image']/@width)"/>
|
10439
|
+
<xsl:attribute name="width">
|
10440
|
+
<xsl:choose>
|
10441
|
+
<xsl:when test="$parent_image_width != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_width), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_width"/></xsl:when>
|
10442
|
+
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
10443
|
+
</xsl:choose>
|
10444
|
+
</xsl:attribute>
|
10445
|
+
</xsl:template>
|
10446
|
+
|
10447
|
+
<xsl:template match="*[local-name() = 'svg']/@height" mode="svg_update">
|
10448
|
+
<!-- image[@height]/svg -->
|
10449
|
+
<xsl:variable name="parent_image_height" select="normalize-space(ancestor::*[2][local-name() = 'image']/@height)"/>
|
10450
|
+
<xsl:attribute name="height">
|
10451
|
+
<xsl:choose>
|
10452
|
+
<xsl:when test="$parent_image_height != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_height), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_height"/></xsl:when>
|
10453
|
+
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
10454
|
+
</xsl:choose>
|
10455
|
+
</xsl:attribute>
|
10456
|
+
</xsl:template>
|
10457
|
+
|
10365
10458
|
<!-- regex for 'display: inline-block;' -->
|
10366
10459
|
<xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
|
10367
10460
|
<xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
|
@@ -11817,6 +11910,7 @@
|
|
11817
11910
|
<xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']">
|
11818
11911
|
<xsl:if test="normalize-space() != ''">
|
11819
11912
|
<fo:inline xsl:use-attribute-sets="termexample-name-style">
|
11913
|
+
<xsl:call-template name="refine_termexample-name-style"/>
|
11820
11914
|
<xsl:apply-templates/>:
|
11821
11915
|
</fo:inline>
|
11822
11916
|
</xsl:if>
|
@@ -11971,6 +12065,7 @@
|
|
11971
12065
|
</xsl:when>
|
11972
12066
|
<xsl:otherwise>
|
11973
12067
|
<fo:inline xsl:use-attribute-sets="example-name-style">
|
12068
|
+
<xsl:call-template name="refine_example-name-style"/>
|
11974
12069
|
<xsl:apply-templates/>:
|
11975
12070
|
</fo:inline>
|
11976
12071
|
</xsl:otherwise>
|
@@ -12425,7 +12520,9 @@
|
|
12425
12520
|
</xsl:template> <!-- sections_element_style -->
|
12426
12521
|
|
12427
12522
|
<xsl:template match="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*" priority="2"> <!-- /*/*[local-name() = 'preface']/* -->
|
12428
|
-
|
12523
|
+
|
12524
|
+
<fo:block break-after="page"/>
|
12525
|
+
|
12429
12526
|
<fo:block>
|
12430
12527
|
<xsl:call-template name="setId"/>
|
12431
12528
|
<xsl:apply-templates/>
|
@@ -12492,7 +12589,7 @@
|
|
12492
12589
|
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
12493
12590
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
12494
12591
|
</xsl:when>
|
12495
|
-
<xsl:when test="not(
|
12592
|
+
<xsl:when test="not(/*[@id = $id_from]) and not(/*//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
12496
12593
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
12497
12594
|
</xsl:when>
|
12498
12595
|
</xsl:choose>
|
@@ -13173,6 +13270,7 @@
|
|
13173
13270
|
<xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
|
13174
13271
|
|
13175
13272
|
<fo:block id="{@id}" xsl:use-attribute-sets="bibitem-normative-style">
|
13273
|
+
|
13176
13274
|
<xsl:call-template name="processBibitem"/>
|
13177
13275
|
</fo:block>
|
13178
13276
|
|
@@ -13227,6 +13325,7 @@
|
|
13227
13325
|
<xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
|
13228
13326
|
<xsl:otherwise>
|
13229
13327
|
<fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
|
13328
|
+
|
13230
13329
|
<fo:list-item-label end-indent="label-end()">
|
13231
13330
|
<fo:block role="SKIP">
|
13232
13331
|
<fo:inline role="SKIP">
|
@@ -15132,4 +15231,6 @@
|
|
15132
15231
|
</xsl:if>
|
15133
15232
|
</xsl:template>
|
15134
15233
|
|
15234
|
+
<!-- update -->
|
15235
|
+
|
15135
15236
|
</xsl:stylesheet>
|
@@ -4040,6 +4040,7 @@
|
|
4040
4040
|
<xsl:variable name="zero_width_space"></xsl:variable>
|
4041
4041
|
<xsl:variable name="hair_space"> </xsl:variable>
|
4042
4042
|
<xsl:variable name="en_dash">–</xsl:variable>
|
4043
|
+
<xsl:variable name="em_dash">—</xsl:variable>
|
4043
4044
|
|
4044
4045
|
<xsl:template name="getTitle">
|
4045
4046
|
<xsl:param name="name"/>
|
@@ -4371,6 +4372,10 @@
|
|
4371
4372
|
|
4372
4373
|
</xsl:attribute-set> <!-- example-name-style -->
|
4373
4374
|
|
4375
|
+
<xsl:template name="refine_example-name-style">
|
4376
|
+
|
4377
|
+
</xsl:template>
|
4378
|
+
|
4374
4379
|
<xsl:attribute-set name="example-p-style">
|
4375
4380
|
|
4376
4381
|
</xsl:attribute-set> <!-- example-p-style -->
|
@@ -4391,6 +4396,10 @@
|
|
4391
4396
|
|
4392
4397
|
</xsl:attribute-set> <!-- termexample-name-style -->
|
4393
4398
|
|
4399
|
+
<xsl:template name="refine_termexample-name-style">
|
4400
|
+
|
4401
|
+
</xsl:template>
|
4402
|
+
|
4394
4403
|
<!-- ========================== -->
|
4395
4404
|
<!-- Table styles -->
|
4396
4405
|
<!-- ========================== -->
|
@@ -4606,6 +4615,10 @@
|
|
4606
4615
|
|
4607
4616
|
</xsl:attribute-set> <!-- table-fn-style -->
|
4608
4617
|
|
4618
|
+
<xsl:template name="refine_table-fn-style">
|
4619
|
+
|
4620
|
+
</xsl:template>
|
4621
|
+
|
4609
4622
|
<xsl:attribute-set name="table-fn-number-style">
|
4610
4623
|
<xsl:attribute name="font-size">80%</xsl:attribute>
|
4611
4624
|
<xsl:attribute name="padding-right">5mm</xsl:attribute>
|
@@ -4615,6 +4628,10 @@
|
|
4615
4628
|
|
4616
4629
|
</xsl:attribute-set> <!-- table-fn-number-style -->
|
4617
4630
|
|
4631
|
+
<xsl:template name="refine_table-fn-number-style">
|
4632
|
+
|
4633
|
+
</xsl:template>
|
4634
|
+
|
4618
4635
|
<xsl:attribute-set name="fn-container-body-style">
|
4619
4636
|
<xsl:attribute name="text-indent">0</xsl:attribute>
|
4620
4637
|
<xsl:attribute name="start-indent">0</xsl:attribute>
|
@@ -7016,8 +7033,9 @@
|
|
7016
7033
|
<xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
|
7017
7034
|
|
7018
7035
|
<fo:block xsl:use-attribute-sets="table-fn-style">
|
7019
|
-
|
7036
|
+
<xsl:call-template name="refine_table-fn-style"/>
|
7020
7037
|
<fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
|
7038
|
+
<xsl:call-template name="refine_table-fn-number-style"/>
|
7021
7039
|
|
7022
7040
|
<xsl:value-of select="@reference"/>
|
7023
7041
|
|
@@ -8153,12 +8171,18 @@
|
|
8153
8171
|
</xsl:template>
|
8154
8172
|
|
8155
8173
|
<xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
|
8156
|
-
<xsl:variable name="text" select="normalize-space(.)"/>
|
8157
|
-
<
|
8174
|
+
<!-- <xsl:variable name="text" select="normalize-space(.)"/> --> <!-- https://github.com/metanorma/metanorma-iso/issues/1115 -->
|
8175
|
+
<xsl:variable name="text" select="."/>
|
8176
|
+
<xsl:variable name="ratio_">
|
8177
|
+
0.75
|
8178
|
+
</xsl:variable>
|
8179
|
+
<xsl:variable name="ratio" select="number(normalize-space($ratio_))"/>
|
8180
|
+
<fo:inline font-size="{$ratio * 100}%" role="SKIP">
|
8158
8181
|
<xsl:if test="string-length($text) > 0">
|
8159
8182
|
<xsl:variable name="smallCapsText">
|
8160
8183
|
<xsl:call-template name="recursiveSmallCaps">
|
8161
8184
|
<xsl:with-param name="text" select="$text"/>
|
8185
|
+
<xsl:with-param name="ratio" select="$ratio"/>
|
8162
8186
|
</xsl:call-template>
|
8163
8187
|
</xsl:variable>
|
8164
8188
|
<!-- merge neighboring fo:inline -->
|
@@ -8195,12 +8219,13 @@
|
|
8195
8219
|
|
8196
8220
|
<xsl:template name="recursiveSmallCaps">
|
8197
8221
|
<xsl:param name="text"/>
|
8222
|
+
<xsl:param name="ratio"/>
|
8198
8223
|
<xsl:variable name="char" select="substring($text,1,1)"/>
|
8199
8224
|
<!-- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/> -->
|
8200
8225
|
<xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
|
8201
8226
|
<xsl:choose>
|
8202
8227
|
<xsl:when test="$char=$upperCase">
|
8203
|
-
<fo:inline font-size="{100 div
|
8228
|
+
<fo:inline font-size="{100 div $ratio}%" role="SKIP">
|
8204
8229
|
<xsl:value-of select="$upperCase"/>
|
8205
8230
|
</fo:inline>
|
8206
8231
|
</xsl:when>
|
@@ -8211,6 +8236,7 @@
|
|
8211
8236
|
<xsl:if test="string-length($text) > 1">
|
8212
8237
|
<xsl:call-template name="recursiveSmallCaps">
|
8213
8238
|
<xsl:with-param name="text" select="substring($text,2)"/>
|
8239
|
+
<xsl:with-param name="ratio" select="$ratio"/>
|
8214
8240
|
</xsl:call-template>
|
8215
8241
|
</xsl:if>
|
8216
8242
|
</xsl:template>
|
@@ -8247,6 +8273,9 @@
|
|
8247
8273
|
<xsl:if test="$key = 'font-family' or $key = 'font-size' or $key = 'color'">
|
8248
8274
|
<style name="{$key}"><xsl:value-of select="$value"/></style>
|
8249
8275
|
</xsl:if>
|
8276
|
+
<xsl:if test="$key = 'text-indent'">
|
8277
|
+
<style name="padding-left"><xsl:value-of select="$value"/></style>
|
8278
|
+
</xsl:if>
|
8250
8279
|
</xsl:for-each>
|
8251
8280
|
</xsl:variable>
|
8252
8281
|
<xsl:variable name="styles" select="xalan:nodeset($styles_)"/>
|
@@ -9651,6 +9680,11 @@
|
|
9651
9680
|
</xsl:call-template>
|
9652
9681
|
</xsl:template>
|
9653
9682
|
|
9683
|
+
<!-- command between two xref points to non-standard bibitem -->
|
9684
|
+
<xsl:template match="text()[. = ','][preceding-sibling::node()[1][local-name() = 'sup'][*[local-name() = 'xref'][@type = 'footnote']] and following-sibling::node()[1][local-name() = 'sup'][*[local-name() = 'xref'][@type = 'footnote']]]">
|
9685
|
+
<xsl:value-of select="."/>
|
9686
|
+
</xsl:template>
|
9687
|
+
|
9654
9688
|
<!-- ====== -->
|
9655
9689
|
<!-- formula -->
|
9656
9690
|
<!-- ====== -->
|
@@ -10294,16 +10328,44 @@
|
|
10294
10328
|
</xsl:choose>
|
10295
10329
|
|
10296
10330
|
<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
|
10297
|
-
<xsl:variable name="
|
10298
|
-
<xsl:variable name="
|
10331
|
+
<xsl:variable name="svg_width_" select="xalan:nodeset($svg_content)/*/@width"/>
|
10332
|
+
<xsl:variable name="svg_width" select="number(translate($svg_width_, 'px', ''))"/>
|
10333
|
+
<xsl:variable name="svg_height_" select="xalan:nodeset($svg_content)/*/@height"/>
|
10334
|
+
<xsl:variable name="svg_height" select="number(translate($svg_height_, 'px', ''))"/>
|
10335
|
+
|
10336
|
+
<!-- Example: -->
|
10299
10337
|
<!-- effective height 297 - 27.4 - 13 = 256.6 -->
|
10300
10338
|
<!-- effective width 210 - 12.5 - 25 = 172.5 -->
|
10301
10339
|
<!-- effective height / width = 1.48, 1.4 - with title -->
|
10302
|
-
|
10340
|
+
|
10341
|
+
<xsl:variable name="scale_x">
|
10342
|
+
<xsl:choose>
|
10343
|
+
<xsl:when test="$svg_width > $width_effective_px">
|
10344
|
+
<xsl:value-of select="$width_effective_px div $svg_width"/>
|
10345
|
+
</xsl:when>
|
10346
|
+
<xsl:otherwise>1</xsl:otherwise>
|
10347
|
+
</xsl:choose>
|
10348
|
+
</xsl:variable>
|
10349
|
+
<xsl:variable name="scale_y">
|
10350
|
+
<xsl:choose>
|
10351
|
+
<xsl:when test="$svg_height * $scale_x > $height_effective_px">
|
10352
|
+
<xsl:value-of select="$height_effective_px div ($svg_height * $scale_x)"/>
|
10353
|
+
</xsl:when>
|
10354
|
+
<xsl:otherwise>1</xsl:otherwise>
|
10355
|
+
</xsl:choose>
|
10356
|
+
</xsl:variable>
|
10357
|
+
|
10358
|
+
<!-- for images with big height -->
|
10359
|
+
<!-- <xsl:if test="$svg_height > ($svg_width * 1.4)">
|
10303
10360
|
<xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
|
10304
10361
|
<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
|
10305
|
-
</xsl:if>
|
10362
|
+
</xsl:if> -->
|
10306
10363
|
<xsl:attribute name="scaling">uniform</xsl:attribute>
|
10364
|
+
|
10365
|
+
<xsl:if test="$scale_y != 1">
|
10366
|
+
<xsl:attribute name="content-height"><xsl:value-of select="round($scale_x * $scale_y * 100)"/>%</xsl:attribute>
|
10367
|
+
</xsl:if>
|
10368
|
+
|
10307
10369
|
<xsl:copy-of select="$svg_content"/>
|
10308
10370
|
</fo:instream-foreign-object>
|
10309
10371
|
<!-- </fo:block> -->
|
@@ -10328,6 +10390,8 @@
|
|
10328
10390
|
</xsl:attribute>
|
10329
10391
|
</xsl:template>
|
10330
10392
|
|
10393
|
+
<xsl:variable name="regex_starts_with_digit">^[0-9].*</xsl:variable>
|
10394
|
+
|
10331
10395
|
<xsl:template match="*[local-name() = 'svg'][not(@width and @height)]" mode="svg_update">
|
10332
10396
|
<xsl:copy>
|
10333
10397
|
<xsl:apply-templates select="@*" mode="svg_update"/>
|
@@ -10341,8 +10405,13 @@
|
|
10341
10405
|
<xsl:variable name="width" select="normalize-space($viewbox//item[3])"/>
|
10342
10406
|
<xsl:variable name="height" select="normalize-space($viewbox//item[4])"/>
|
10343
10407
|
|
10408
|
+
<xsl:variable name="parent_image_width" select="normalize-space(ancestor::*[1][local-name() = 'image']/@width)"/>
|
10409
|
+
<xsl:variable name="parent_image_height" select="normalize-space(ancestor::*[1][local-name() = 'image']/@height)"/>
|
10410
|
+
|
10344
10411
|
<xsl:attribute name="width">
|
10345
10412
|
<xsl:choose>
|
10413
|
+
<!-- width is non 'auto', 'text-width', 'full-page-width' or 'narrow' -->
|
10414
|
+
<xsl:when test="$parent_image_width != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_width), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_width"/></xsl:when>
|
10346
10415
|
<xsl:when test="$width != ''">
|
10347
10416
|
<xsl:value-of select="round($width)"/>
|
10348
10417
|
</xsl:when>
|
@@ -10351,6 +10420,8 @@
|
|
10351
10420
|
</xsl:attribute>
|
10352
10421
|
<xsl:attribute name="height">
|
10353
10422
|
<xsl:choose>
|
10423
|
+
<!-- height non 'auto', 'text-width', 'full-page-width' or 'narrow' -->
|
10424
|
+
<xsl:when test="$parent_image_height != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_height), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_height"/></xsl:when>
|
10354
10425
|
<xsl:when test="$height != ''">
|
10355
10426
|
<xsl:value-of select="round($height)"/>
|
10356
10427
|
</xsl:when>
|
@@ -10362,6 +10433,28 @@
|
|
10362
10433
|
</xsl:copy>
|
10363
10434
|
</xsl:template>
|
10364
10435
|
|
10436
|
+
<xsl:template match="*[local-name() = 'svg']/@width" mode="svg_update">
|
10437
|
+
<!-- image[@width]/svg -->
|
10438
|
+
<xsl:variable name="parent_image_width" select="normalize-space(ancestor::*[2][local-name() = 'image']/@width)"/>
|
10439
|
+
<xsl:attribute name="width">
|
10440
|
+
<xsl:choose>
|
10441
|
+
<xsl:when test="$parent_image_width != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_width), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_width"/></xsl:when>
|
10442
|
+
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
10443
|
+
</xsl:choose>
|
10444
|
+
</xsl:attribute>
|
10445
|
+
</xsl:template>
|
10446
|
+
|
10447
|
+
<xsl:template match="*[local-name() = 'svg']/@height" mode="svg_update">
|
10448
|
+
<!-- image[@height]/svg -->
|
10449
|
+
<xsl:variable name="parent_image_height" select="normalize-space(ancestor::*[2][local-name() = 'image']/@height)"/>
|
10450
|
+
<xsl:attribute name="height">
|
10451
|
+
<xsl:choose>
|
10452
|
+
<xsl:when test="$parent_image_height != '' and normalize-space(java:matches(java:java.lang.String.new($parent_image_height), $regex_starts_with_digit)) = 'true'"><xsl:value-of select="$parent_image_height"/></xsl:when>
|
10453
|
+
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
10454
|
+
</xsl:choose>
|
10455
|
+
</xsl:attribute>
|
10456
|
+
</xsl:template>
|
10457
|
+
|
10365
10458
|
<!-- regex for 'display: inline-block;' -->
|
10366
10459
|
<xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
|
10367
10460
|
<xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
|
@@ -11817,6 +11910,7 @@
|
|
11817
11910
|
<xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']">
|
11818
11911
|
<xsl:if test="normalize-space() != ''">
|
11819
11912
|
<fo:inline xsl:use-attribute-sets="termexample-name-style">
|
11913
|
+
<xsl:call-template name="refine_termexample-name-style"/>
|
11820
11914
|
<xsl:apply-templates/>:
|
11821
11915
|
</fo:inline>
|
11822
11916
|
</xsl:if>
|
@@ -11971,6 +12065,7 @@
|
|
11971
12065
|
</xsl:when>
|
11972
12066
|
<xsl:otherwise>
|
11973
12067
|
<fo:inline xsl:use-attribute-sets="example-name-style">
|
12068
|
+
<xsl:call-template name="refine_example-name-style"/>
|
11974
12069
|
<xsl:apply-templates/>:
|
11975
12070
|
</fo:inline>
|
11976
12071
|
</xsl:otherwise>
|
@@ -12425,7 +12520,9 @@
|
|
12425
12520
|
</xsl:template> <!-- sections_element_style -->
|
12426
12521
|
|
12427
12522
|
<xsl:template match="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*" priority="2"> <!-- /*/*[local-name() = 'preface']/* -->
|
12428
|
-
|
12523
|
+
|
12524
|
+
<fo:block break-after="page"/>
|
12525
|
+
|
12429
12526
|
<fo:block>
|
12430
12527
|
<xsl:call-template name="setId"/>
|
12431
12528
|
<xsl:apply-templates/>
|
@@ -12492,7 +12589,7 @@
|
|
12492
12589
|
<xsl:when test="ancestor::*[contains(local-name(), '-standard')] and not(ancestor::*[contains(local-name(), '-standard')]//*[@id = $id_from])">
|
12493
12590
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
12494
12591
|
</xsl:when>
|
12495
|
-
<xsl:when test="not(
|
12592
|
+
<xsl:when test="not(/*[@id = $id_from]) and not(/*//*[@id = $id_from]) and not(preceding-sibling::*[@id = $id_from])">
|
12496
12593
|
<fo:block id="{@from}" font-size="1pt"><xsl:value-of select="$hair_space"/></fo:block>
|
12497
12594
|
</xsl:when>
|
12498
12595
|
</xsl:choose>
|
@@ -13173,6 +13270,7 @@
|
|
13173
13270
|
<xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
|
13174
13271
|
|
13175
13272
|
<fo:block id="{@id}" xsl:use-attribute-sets="bibitem-normative-style">
|
13273
|
+
|
13176
13274
|
<xsl:call-template name="processBibitem"/>
|
13177
13275
|
</fo:block>
|
13178
13276
|
|
@@ -13227,6 +13325,7 @@
|
|
13227
13325
|
<xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
|
13228
13326
|
<xsl:otherwise>
|
13229
13327
|
<fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
|
13328
|
+
|
13230
13329
|
<fo:list-item-label end-indent="label-end()">
|
13231
13330
|
<fo:block role="SKIP">
|
13232
13331
|
<fo:inline role="SKIP">
|
@@ -15132,4 +15231,6 @@
|
|
15132
15231
|
</xsl:if>
|
15133
15232
|
</xsl:template>
|
15134
15233
|
|
15234
|
+
<!-- update -->
|
15235
|
+
|
15135
15236
|
</xsl:stylesheet>
|
@@ -15,8 +15,10 @@ module IsoDoc
|
|
15
15
|
def biblio_anchor_linkend(node, bib)
|
16
16
|
if %w(techreport standard).include?(bib[:type])
|
17
17
|
[node["citeas"], bib[:ord]].compact.join(" ")
|
18
|
-
|
18
|
+
elsif bib[:author]
|
19
19
|
"#{bib[:author]} " + node["citeas"]
|
20
|
+
else
|
21
|
+
node["citeas"]
|
20
22
|
end
|
21
23
|
end
|
22
24
|
|
@@ -208,7 +208,9 @@
|
|
208
208
|
</define>
|
209
209
|
<define name="roledescription">
|
210
210
|
<element name="description">
|
211
|
-
<
|
211
|
+
<oneOrMore>
|
212
|
+
<ref name="TextElement"/>
|
213
|
+
</oneOrMore>
|
212
214
|
</element>
|
213
215
|
</define>
|
214
216
|
<define name="person">
|
@@ -333,7 +335,9 @@
|
|
333
335
|
</define>
|
334
336
|
<define name="affiliationdescription">
|
335
337
|
<element name="description">
|
336
|
-
<
|
338
|
+
<oneOrMore>
|
339
|
+
<ref name="TextElement"/>
|
340
|
+
</oneOrMore>
|
337
341
|
</element>
|
338
342
|
</define>
|
339
343
|
<define name="organization">
|
@@ -897,7 +901,9 @@
|
|
897
901
|
</define>
|
898
902
|
<define name="formattedref">
|
899
903
|
<element name="formattedref">
|
900
|
-
<
|
904
|
+
<oneOrMore>
|
905
|
+
<ref name="TextElement"/>
|
906
|
+
</oneOrMore>
|
901
907
|
</element>
|
902
908
|
</define>
|
903
909
|
<define name="license">
|
@@ -942,7 +948,9 @@
|
|
942
948
|
<optional>
|
943
949
|
<attribute name="type"/>
|
944
950
|
</optional>
|
945
|
-
<
|
951
|
+
<zeroOrMore>
|
952
|
+
<ref name="TextElement"/>
|
953
|
+
</zeroOrMore>
|
946
954
|
</define>
|
947
955
|
<!-- TitleType = ( "alternative" | "original" | "unofficial" | "subtitle" | "main" ) -->
|
948
956
|
<define name="TypedUri">
|
@@ -1042,7 +1050,9 @@
|
|
1042
1050
|
<optional>
|
1043
1051
|
<attribute name="script"/>
|
1044
1052
|
</optional>
|
1045
|
-
<
|
1053
|
+
<oneOrMore>
|
1054
|
+
<ref name="TextElement"/>
|
1055
|
+
</oneOrMore>
|
1046
1056
|
</element>
|
1047
1057
|
</define>
|
1048
1058
|
<define name="docnumber">
|
@@ -1267,12 +1277,16 @@
|
|
1267
1277
|
<optional>
|
1268
1278
|
<attribute name="type"/>
|
1269
1279
|
</optional>
|
1270
|
-
<
|
1280
|
+
<oneOrMore>
|
1281
|
+
<ref name="TextElement"/>
|
1282
|
+
</oneOrMore>
|
1271
1283
|
</element>
|
1272
1284
|
</define>
|
1273
1285
|
<define name="bibabstract">
|
1274
1286
|
<element name="abstract">
|
1275
|
-
<
|
1287
|
+
<oneOrMore>
|
1288
|
+
<ref name="TextElement"/>
|
1289
|
+
</oneOrMore>
|
1276
1290
|
</element>
|
1277
1291
|
</define>
|
1278
1292
|
<define name="copyright">
|
@@ -1377,7 +1391,9 @@
|
|
1377
1391
|
</attribute>
|
1378
1392
|
<optional>
|
1379
1393
|
<element name="description">
|
1380
|
-
<
|
1394
|
+
<oneOrMore>
|
1395
|
+
<ref name="TextElement"/>
|
1396
|
+
</oneOrMore>
|
1381
1397
|
</element>
|
1382
1398
|
</optional>
|
1383
1399
|
<element name="bibitem">
|
data/lib/metanorma/ieee/front.rb
CHANGED
@@ -36,7 +36,7 @@ module Metanorma
|
|
36
36
|
|
37
37
|
def metadata_id(node, xml)
|
38
38
|
if id = node.attr("docidentifier")
|
39
|
-
xml.docidentifier id, **attr_code(type: "IEEE")
|
39
|
+
xml.docidentifier id, **attr_code(type: "IEEE", primary: "true")
|
40
40
|
else ieee_id(node, xml)
|
41
41
|
end
|
42
42
|
id = node.attr("stdid-pdf") and
|
@@ -97,7 +97,7 @@ module Metanorma
|
|
97
97
|
|
98
98
|
def ieee_id_out(xml, params)
|
99
99
|
id = pubid_select(params).create(**params)
|
100
|
-
xml.docidentifier id.to_s, type: "IEEE"
|
100
|
+
xml.docidentifier id.to_s, type: "IEEE", primary: "true"
|
101
101
|
end
|
102
102
|
|
103
103
|
def pubid_select(_params)
|
@@ -156,44 +156,7 @@
|
|
156
156
|
</define>
|
157
157
|
<define name="xref">
|
158
158
|
<element name="xref">
|
159
|
-
<
|
160
|
-
<data type="string">
|
161
|
-
<param name="pattern">\i\c*|\c+#\c+</param>
|
162
|
-
</data>
|
163
|
-
</attribute>
|
164
|
-
<optional>
|
165
|
-
<attribute name="to">
|
166
|
-
<data type="string">
|
167
|
-
<param name="pattern">\i\c*|\c+#\c+</param>
|
168
|
-
</data>
|
169
|
-
</attribute>
|
170
|
-
</optional>
|
171
|
-
<optional>
|
172
|
-
<attribute name="type">
|
173
|
-
<ref name="ReferenceFormat"/>
|
174
|
-
</attribute>
|
175
|
-
</optional>
|
176
|
-
<optional>
|
177
|
-
<attribute name="alt"/>
|
178
|
-
</optional>
|
179
|
-
<optional>
|
180
|
-
<attribute name="case">
|
181
|
-
<choice>
|
182
|
-
<value>capital</value>
|
183
|
-
<value>lowercase</value>
|
184
|
-
</choice>
|
185
|
-
</attribute>
|
186
|
-
</optional>
|
187
|
-
<optional>
|
188
|
-
<attribute name="droploc">
|
189
|
-
<data type="boolean"/>
|
190
|
-
</attribute>
|
191
|
-
</optional>
|
192
|
-
<optional>
|
193
|
-
<attribute name="style">
|
194
|
-
<ref name="XrefStyleType"/>
|
195
|
-
</attribute>
|
196
|
-
</optional>
|
159
|
+
<ref name="XrefAttributes"/>
|
197
160
|
<ref name="XrefBody"/>
|
198
161
|
</element>
|
199
162
|
</define>
|
@@ -407,23 +370,7 @@
|
|
407
370
|
</define>
|
408
371
|
<define name="figure">
|
409
372
|
<element name="figure">
|
410
|
-
<
|
411
|
-
<data type="ID"/>
|
412
|
-
</attribute>
|
413
|
-
<optional>
|
414
|
-
<attribute name="unnumbered">
|
415
|
-
<data type="boolean"/>
|
416
|
-
</attribute>
|
417
|
-
</optional>
|
418
|
-
<optional>
|
419
|
-
<attribute name="number"/>
|
420
|
-
</optional>
|
421
|
-
<optional>
|
422
|
-
<attribute name="subsequence"/>
|
423
|
-
</optional>
|
424
|
-
<optional>
|
425
|
-
<attribute name="class"/>
|
426
|
-
</optional>
|
373
|
+
<ref name="FigureAttributes"/>
|
427
374
|
<ref name="BlockAttributes"/>
|
428
375
|
<optional>
|
429
376
|
<ref name="tname"/>
|
@@ -2450,6 +2397,49 @@
|
|
2450
2397
|
</zeroOrMore>
|
2451
2398
|
</element>
|
2452
2399
|
</define>
|
2400
|
+
<define name="XrefAttributes">
|
2401
|
+
<attribute name="target">
|
2402
|
+
<data type="string">
|
2403
|
+
<param name="pattern">\i\c*|\c+#\c+</param>
|
2404
|
+
</data>
|
2405
|
+
</attribute>
|
2406
|
+
<optional>
|
2407
|
+
<attribute name="to">
|
2408
|
+
<data type="string">
|
2409
|
+
<param name="pattern">\i\c*|\c+#\c+</param>
|
2410
|
+
</data>
|
2411
|
+
</attribute>
|
2412
|
+
</optional>
|
2413
|
+
<optional>
|
2414
|
+
<attribute name="type">
|
2415
|
+
<ref name="ReferenceFormat"/>
|
2416
|
+
</attribute>
|
2417
|
+
</optional>
|
2418
|
+
<optional>
|
2419
|
+
<attribute name="alt"/>
|
2420
|
+
</optional>
|
2421
|
+
<optional>
|
2422
|
+
<attribute name="case">
|
2423
|
+
<choice>
|
2424
|
+
<value>capital</value>
|
2425
|
+
<value>lowercase</value>
|
2426
|
+
</choice>
|
2427
|
+
</attribute>
|
2428
|
+
</optional>
|
2429
|
+
<optional>
|
2430
|
+
<attribute name="droploc">
|
2431
|
+
<data type="boolean"/>
|
2432
|
+
</attribute>
|
2433
|
+
</optional>
|
2434
|
+
<optional>
|
2435
|
+
<attribute name="style">
|
2436
|
+
<ref name="XrefStyleType"/>
|
2437
|
+
</attribute>
|
2438
|
+
</optional>
|
2439
|
+
<optional>
|
2440
|
+
<attribute name="label"/>
|
2441
|
+
</optional>
|
2442
|
+
</define>
|
2453
2443
|
<define name="XrefBody">
|
2454
2444
|
<zeroOrMore>
|
2455
2445
|
<ref name="XrefTarget"/>
|
@@ -2528,6 +2518,28 @@
|
|
2528
2518
|
<attribute name="columns"/>
|
2529
2519
|
</optional>
|
2530
2520
|
</define>
|
2521
|
+
<define name="FigureAttributes">
|
2522
|
+
<attribute name="id">
|
2523
|
+
<data type="ID"/>
|
2524
|
+
</attribute>
|
2525
|
+
<optional>
|
2526
|
+
<attribute name="unnumbered">
|
2527
|
+
<data type="boolean"/>
|
2528
|
+
</attribute>
|
2529
|
+
</optional>
|
2530
|
+
<optional>
|
2531
|
+
<attribute name="number"/>
|
2532
|
+
</optional>
|
2533
|
+
<optional>
|
2534
|
+
<attribute name="subsequence"/>
|
2535
|
+
</optional>
|
2536
|
+
<optional>
|
2537
|
+
<attribute name="class"/>
|
2538
|
+
</optional>
|
2539
|
+
<optional>
|
2540
|
+
<attribute name="width"/>
|
2541
|
+
</optional>
|
2542
|
+
</define>
|
2531
2543
|
<start>
|
2532
2544
|
<ref name="standard-document"/>
|
2533
2545
|
</start>
|
@@ -131,7 +131,9 @@ module Metanorma
|
|
131
131
|
xrefs = IsoDoc::IEEE::Xref
|
132
132
|
.new(@lang, @script, klass, IsoDoc::IEEE::I18n.new(@lang, @script),
|
133
133
|
{ hierarchicalassets: @hierarchical_assets })
|
134
|
-
|
134
|
+
# don't process refs without relaton-render init
|
135
|
+
xrefs.parse_inclusions(clauses: true, assets: true)
|
136
|
+
.parse(Nokogiri::XML(xmldoc.to_xml))
|
135
137
|
xrefs
|
136
138
|
end
|
137
139
|
|
@@ -160,8 +162,8 @@ module Metanorma
|
|
160
162
|
# Style manual 17.2
|
161
163
|
def figure_name_style_validate(docxml)
|
162
164
|
docxml.xpath("//figure/name").each do |td|
|
163
|
-
style_regex(/^(?<num>\p{Lower}\s*)/,
|
164
|
-
td, td.text)
|
165
|
+
style_regex(/^(?<num>\p{Lower}\s*)/,
|
166
|
+
"figure heading should be capitalised", td, td.text)
|
165
167
|
end
|
166
168
|
end
|
167
169
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-ieee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-03-
|
11
|
+
date: 2024-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-standoc
|