metanorma-iec 2.1.13 → 2.2.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 103451df9208dd5c73f9405284df2fd6f2d92a32904b167840e0458b4766f401
4
- data.tar.gz: e2ee999fd2718b01d4362ac00ad1f3428287de9ea28ad320bd67a7f3e6938bb3
3
+ metadata.gz: e9bf31b4b7fc2357793b3c07735cae57e6623b0e8564789123a9ef5f39db2851
4
+ data.tar.gz: 1dd5e2d159a8c2fb54abcb79246f68d703359b2560bd1e048edeb761a34179f3
5
5
  SHA512:
6
- metadata.gz: 7bd2c177ac2a318a847b8ed88703fc9d20d70a597e47d82db7d3fc8c8eb56ef7e3d11b60fc8602af07bdc301990fc20c93fc60d83037806d34a7e1b9493f18e9
7
- data.tar.gz: 6578b3a9bd37d56fdb81ff2e59467fc0ffe451e134366927e3e95f81c3bf043837cce1cfee8e5cd4594bcb3dffd31a5ca46d633c8d6566f97c304ebcd0ba7106
6
+ metadata.gz: f55c6a1aaffbe60e4a9b69b2c2761aabfddf2aa69bab97504fc670fa0d183e3d21ca0f6ae037f5690465ca41352b6befee80422258ea16a3a9a3a12e3fd359a7
7
+ data.tar.gz: 8356d054cd2f97114e1da1fee0b4f3c6f5faca9d7d0377b98eeeae9be9a957b4f908f0eb08f0124ec22fd14fbcabcd76cbeb410ca7ab7c0ab8c800972e3f9ff4
data/.gitignore CHANGED
@@ -5,7 +5,6 @@ coverage/
5
5
 
6
6
  .rubocop-https--*
7
7
 
8
- /Gemfile.devel
9
8
  /Gemfile.lock
10
9
  /spec/assets/iso.doc
11
10
  /spec/assets/iso.html
@@ -2802,6 +2802,12 @@
2802
2802
  <xsl:attribute name="font-weight">bold</xsl:attribute>
2803
2803
  </xsl:attribute-set>
2804
2804
 
2805
+ <xsl:attribute-set name="figure-block-style">
2806
+
2807
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2808
+
2809
+ </xsl:attribute-set>
2810
+
2805
2811
  <xsl:attribute-set name="figure-style">
2806
2812
 
2807
2813
  </xsl:attribute-set>
@@ -2811,7 +2817,7 @@
2811
2817
  <xsl:attribute name="font-weight">bold</xsl:attribute>
2812
2818
  <xsl:attribute name="text-align">center</xsl:attribute>
2813
2819
  <xsl:attribute name="margin-top">12pt</xsl:attribute>
2814
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2820
+ <xsl:attribute name="space-after">12pt</xsl:attribute>
2815
2821
  <xsl:attribute name="keep-with-previous">always</xsl:attribute>
2816
2822
 
2817
2823
  </xsl:attribute-set>
@@ -4232,6 +4238,10 @@
4232
4238
  <xsl:with-param name="continued">true</xsl:with-param>
4233
4239
  </xsl:apply-templates>
4234
4240
 
4241
+ <xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='name'])"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
4242
+ <fo:block/>
4243
+ </xsl:if>
4244
+
4235
4245
  </fo:table-cell>
4236
4246
  </fo:table-row>
4237
4247
  </xsl:template> <!-- table-header-title -->
@@ -4635,7 +4645,26 @@
4635
4645
 
4636
4646
  <xsl:variable name="ref_id" select="concat('footnote_', $lang, '_', $reference, '_', $current_fn_number)"/>
4637
4647
  <xsl:variable name="footnote_inline">
4638
- <fo:inline xsl:use-attribute-sets="fn-num-style">
4648
+ <fo:inline>
4649
+
4650
+ <xsl:variable name="fn_styles">
4651
+ <xsl:choose>
4652
+ <xsl:when test="ancestor::*[local-name() = 'bibitem']">
4653
+ <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style"/>
4654
+ </xsl:when>
4655
+ <xsl:otherwise>
4656
+ <fn_styles xsl:use-attribute-sets="fn-num-style"/>
4657
+ </xsl:otherwise>
4658
+ </xsl:choose>
4659
+ </xsl:variable>
4660
+
4661
+ <xsl:for-each select="xalan:nodeset($fn_styles)/fn_styles/@*">
4662
+ <xsl:copy-of select="."/>
4663
+ </xsl:for-each>
4664
+
4665
+ <xsl:if test="following-sibling::*[1][local-name() = 'fn']">
4666
+ <xsl:attribute name="padding-right">0.5mm</xsl:attribute>
4667
+ </xsl:if>
4639
4668
 
4640
4669
  <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
4641
4670
  <xsl:value-of select="$current_fn_number_text"/>
@@ -4695,7 +4724,10 @@
4695
4724
  </xsl:for-each>
4696
4725
  <xsl:for-each select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='boilerplate']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='preface']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='sections']/* | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='annex'] | ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibliography']/*">
4697
4726
  <xsl:sort select="@displayorder" data-type="number"/>
4698
- <xsl:for-each select=".//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] | .//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
4727
+ <!-- commented:
4728
+ .//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] |
4729
+ because 'fn' there is in biblio-tag -->
4730
+ <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
4699
4731
  <!-- copy unique fn -->
4700
4732
  <fn gen_id="{generate-id(.)}">
4701
4733
  <xsl:copy-of select="@*"/>
@@ -5566,7 +5598,7 @@
5566
5598
 
5567
5599
  10
5568
5600
 
5569
- <!-- 10 -->
5601
+ <!-- inherit -->
5570
5602
 
5571
5603
  </xsl:variable>
5572
5604
  <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
@@ -5807,6 +5839,23 @@
5807
5839
  <xsl:apply-templates/>
5808
5840
  </xsl:template>
5809
5841
 
5842
+ <!-- Don't break standard's numbers -->
5843
+ <!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
5844
+ <xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
5845
+ <xsl:choose>
5846
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
5847
+ <xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
5848
+ <fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
5849
+ </xsl:when>
5850
+ <xsl:otherwise>
5851
+ <xsl:apply-templates/>
5852
+ </xsl:otherwise>
5853
+ </xsl:choose>
5854
+ </xsl:template>
5855
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'table']) and preceding-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear'] and following-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']]" priority="2">
5856
+ <fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
5857
+ </xsl:template>
5858
+
5810
5859
  <!-- ========================= -->
5811
5860
  <!-- END Rich text formatting -->
5812
5861
  <!-- ========================= -->
@@ -6202,7 +6251,7 @@
6202
6251
  <xsl:choose>
6203
6252
  <xsl:when test="@colspan">
6204
6253
  <xsl:variable name="td">
6205
- <xsl:element name="td">
6254
+ <xsl:element name="{local-name()}">
6206
6255
  <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
6207
6256
  <xsl:if test="local-name()='th'">
6208
6257
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -6217,7 +6266,7 @@
6217
6266
  </xsl:call-template>
6218
6267
  </xsl:when>
6219
6268
  <xsl:otherwise>
6220
- <xsl:element name="td">
6269
+ <xsl:element name="{local-name()}">
6221
6270
  <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
6222
6271
  <xsl:if test="local-name()='th'">
6223
6272
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -6284,7 +6333,7 @@
6284
6333
  <xsl:variable name="currentRow" select="."/>
6285
6334
 
6286
6335
  <xsl:variable name="normalizedTDs">
6287
- <xsl:for-each select="xalan:nodeset($previousRow)//td">
6336
+ <xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
6288
6337
  <xsl:choose>
6289
6338
  <xsl:when test="@rowspan &gt; 1">
6290
6339
  <xsl:copy>
@@ -6296,7 +6345,7 @@
6296
6345
  </xsl:copy>
6297
6346
  </xsl:when>
6298
6347
  <xsl:otherwise>
6299
- <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
6348
+ <xsl:copy-of select="$currentRow/*[self::td or self::th][1 + count(current()/preceding-sibling::*[self::td or self::th][not(@rowspan) or (@rowspan = 1)])]"/>
6300
6349
  </xsl:otherwise>
6301
6350
  </xsl:choose>
6302
6351
  </xsl:for-each>
@@ -6517,6 +6566,33 @@
6517
6566
  </xsl:choose>
6518
6567
  </xsl:template>
6519
6568
 
6569
+ <xsl:template name="getLang_fromCurrentNode">
6570
+ <xsl:variable name="language_current" select="normalize-space(.//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
6571
+ <xsl:variable name="language">
6572
+ <xsl:choose>
6573
+ <xsl:when test="$language_current != ''">
6574
+ <xsl:value-of select="$language_current"/>
6575
+ </xsl:when>
6576
+ <xsl:otherwise>
6577
+ <xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
6578
+ <xsl:choose>
6579
+ <xsl:when test="$language_current_2 != ''">
6580
+ <xsl:value-of select="$language_current_2"/>
6581
+ </xsl:when>
6582
+ <xsl:otherwise>
6583
+ <xsl:value-of select=".//*[local-name()='bibdata']//*[local-name()='language']"/>
6584
+ </xsl:otherwise>
6585
+ </xsl:choose>
6586
+ </xsl:otherwise>
6587
+ </xsl:choose>
6588
+ </xsl:variable>
6589
+
6590
+ <xsl:choose>
6591
+ <xsl:when test="$language = 'English'">en</xsl:when>
6592
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
6593
+ </xsl:choose>
6594
+ </xsl:template>
6595
+
6520
6596
  <xsl:template name="capitalizeWords">
6521
6597
  <xsl:param name="str"/>
6522
6598
  <xsl:variable name="str2" select="translate($str, '-', ' ')"/>
@@ -6970,12 +7046,6 @@
6970
7046
 
6971
7047
  <fo:block-container margin-left="0mm">
6972
7048
 
6973
- <!-- <xsl:if test="$namespace = 'iho'">
6974
- <xsl:if test="ancestor::iho:td">
6975
- <xsl:attribute name="font-size">12pt</xsl:attribute>
6976
- </xsl:if>
6977
- </xsl:if> -->
6978
-
6979
7049
  <fo:block>
6980
7050
 
6981
7051
  <fo:inline xsl:use-attribute-sets="note-name-style">
@@ -7143,7 +7213,7 @@
7143
7213
  <xsl:template match="*[local-name() = 'figure']" name="figure">
7144
7214
  <xsl:variable name="isAdded" select="@added"/>
7145
7215
  <xsl:variable name="isDeleted" select="@deleted"/>
7146
- <fo:block-container id="{@id}">
7216
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
7147
7217
 
7148
7218
  <xsl:call-template name="setTrackChangesStyles">
7149
7219
  <xsl:with-param name="isAdded" select="$isAdded"/>
@@ -7479,6 +7549,31 @@
7479
7549
  <xsl:apply-templates mode="svg_update"/>
7480
7550
  </xsl:copy>
7481
7551
  </xsl:template>
7552
+
7553
+ <!-- regex for 'display: inline-block;' -->
7554
+ <xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
7555
+ <xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
7556
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
7557
+ </xsl:template>
7558
+
7559
+ <!-- replace
7560
+ stroke="rgba(r, g, b, alpha)" to
7561
+ stroke="rgb(r,g,b)" stroke-opacity="alpha", and
7562
+ fill="rgba(r, g, b, alpha)" to
7563
+ fill="rgb(r,g,b)" fill-opacity="alpha" -->
7564
+ <xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
7565
+ <xsl:variable name="components_">
7566
+ <xsl:call-template name="split">
7567
+ <xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
7568
+ <xsl:with-param name="sep" select="','"/>
7569
+ </xsl:call-template>
7570
+ </xsl:variable>
7571
+ <xsl:variable name="components" select="xalan:nodeset($components_)"/>
7572
+ <xsl:variable name="att_name" select="local-name()"/>
7573
+ <xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
7574
+ <xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
7575
+ </xsl:template>
7576
+
7482
7577
  <!-- ============== -->
7483
7578
  <!-- END: svg_update -->
7484
7579
  <!-- ============== -->
@@ -8115,7 +8210,13 @@
8115
8210
  </xsl:template>
8116
8211
 
8117
8212
  <xsl:template match="text()" mode="contents_item">
8118
- <xsl:call-template name="keep_together_standard_number"/>
8213
+ <xsl:variable name="text">
8214
+ <!-- to split by '_' and other chars -->
8215
+ <text><xsl:call-template name="add-zero-spaces-java"/></text>
8216
+ </xsl:variable>
8217
+ <xsl:for-each select="xalan:nodeset($text)/text/text()">
8218
+ <xsl:call-template name="keep_together_standard_number"/>
8219
+ </xsl:for-each>
8119
8220
  </xsl:template>
8120
8221
 
8121
8222
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
@@ -8126,36 +8227,54 @@
8126
8227
  <!-- =============== -->
8127
8228
  <!-- sourcecode -->
8128
8229
  <!-- =============== -->
8129
- <xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
8130
8230
 
8131
- <xsl:variable name="sourcecode_attributes">
8132
- <xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
8133
- <xsl:variable name="_font-size">
8231
+ <xsl:variable name="source-highlighter-css_" select="//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'source-highlighter-css']"/>
8232
+ <xsl:variable name="sourcecode_css_" select="java:org.metanorma.fop.Util.parseCSS($source-highlighter-css_)"/>
8233
+ <xsl:variable name="sourcecode_css" select="xalan:nodeset($sourcecode_css_)"/>
8134
8234
 
8135
- 9
8235
+ <xsl:template match="*[local-name() = 'property']" mode="css">
8236
+ <xsl:attribute name="{@name}">
8237
+ <xsl:value-of select="@value"/>
8238
+ </xsl:attribute>
8239
+ </xsl:template>
8136
8240
 
8137
- <!-- 9 -->
8241
+ <xsl:template name="get_sourcecode_attributes">
8242
+ <xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
8243
+ <xsl:variable name="_font-size">
8138
8244
 
8139
- <!-- <xsl:if test="$namespace = 'ieee'">
8140
- <xsl:if test="$current_template = 'standard'">8</xsl:if>
8141
- </xsl:if> -->
8245
+ 9
8142
8246
 
8143
- </xsl:variable>
8247
+ <!-- inherit -->
8144
8248
 
8145
- <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
8146
- <xsl:if test="$font-size != ''">
8147
- <xsl:attribute name="font-size">
8148
- <xsl:choose>
8149
- <xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
8150
- <xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
8151
- <xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
8152
- <xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
8153
- </xsl:choose>
8154
- </xsl:attribute>
8155
- </xsl:if>
8156
- </xsl:element>
8249
+ <!-- <xsl:if test="$namespace = 'ieee'">
8250
+ <xsl:if test="$current_template = 'standard'">8</xsl:if>
8251
+ </xsl:if> -->
8252
+
8253
+ </xsl:variable>
8254
+
8255
+ <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
8256
+ <xsl:if test="$font-size != ''">
8257
+ <xsl:attribute name="font-size">
8258
+ <xsl:choose>
8259
+ <xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
8260
+ <xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
8261
+ <xsl:when test="ancestor::*[local-name()='note']"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
8262
+ <xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
8263
+ </xsl:choose>
8264
+ </xsl:attribute>
8265
+ </xsl:if>
8266
+ <xsl:apply-templates select="$sourcecode_css//class[@name = 'sourcecode']" mode="css"/>
8267
+ </xsl:element>
8268
+ </xsl:template>
8269
+
8270
+ <xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
8271
+
8272
+ <xsl:variable name="sourcecode_attributes">
8273
+ <xsl:call-template name="get_sourcecode_attributes"/>
8157
8274
  </xsl:variable>
8158
8275
 
8276
+ <!-- <xsl:copy-of select="$sourcecode_css"/> -->
8277
+
8159
8278
  <xsl:choose>
8160
8279
  <xsl:when test="$isGenerateTableIF = 'true' and (ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])">
8161
8280
  <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
@@ -8209,9 +8328,10 @@
8209
8328
  </xsl:choose>
8210
8329
  </xsl:template>
8211
8330
 
8212
- <xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
8331
+ <xsl:template match="*[local-name()='sourcecode']/text() | *[local-name()='sourcecode']//*[local-name()='span']/text()" priority="2">
8213
8332
  <xsl:choose>
8214
- <xsl:when test="normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
8333
+ <!-- disabled -->
8334
+ <xsl:when test="1 = 2 and normalize-space($syntax-highlight) = 'true' and normalize-space(../@lang) != ''"> <!-- condition for turn on of highlighting -->
8215
8335
  <xsl:variable name="syntax" select="java:org.metanorma.fop.Util.syntaxHighlight(., ../@lang)"/>
8216
8336
  <xsl:choose>
8217
8337
  <xsl:when test="normalize-space($syntax) != ''"><!-- if there is highlighted result -->
@@ -8226,8 +8346,75 @@
8226
8346
  <xsl:call-template name="add_spaces_to_sourcecode"/>
8227
8347
  </xsl:otherwise>
8228
8348
  </xsl:choose>
8349
+ </xsl:template>
8350
+
8351
+ <!-- add sourcecode highlighting -->
8352
+ <xsl:template match="*[local-name()='sourcecode']//*[local-name()='span'][@class]" priority="2">
8353
+ <xsl:variable name="class" select="@class"/>
8354
+ <xsl:choose>
8355
+ <xsl:when test="$sourcecode_css//class[@name = $class]">
8356
+ <fo:inline>
8357
+ <xsl:apply-templates select="$sourcecode_css//class[@name = $class]" mode="css"/>
8358
+ <xsl:apply-templates/>
8359
+ </fo:inline>
8360
+ </xsl:when>
8361
+ <xsl:otherwise>
8362
+ <xsl:apply-templates/>
8363
+ </xsl:otherwise>
8364
+ </xsl:choose>
8365
+ </xsl:template>
8366
+
8367
+ <!-- outer table with line numbers for sourcecode -->
8368
+ <xsl:template match="*[local-name()='table'][@type = 'sourcecode']" priority="2">
8369
+ <fo:block>
8370
+ <fo:table width="100%" table-layout="fixed">
8371
+ <xsl:copy-of select="@id"/>
8372
+ <fo:table-column column-width="8%"/>
8373
+ <fo:table-column column-width="92%"/>
8374
+ <fo:table-body>
8375
+ <xsl:apply-templates/>
8376
+ </fo:table-body>
8377
+ </fo:table>
8378
+ </fo:block>
8379
+ </xsl:template>
8380
+ <xsl:template match="*[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody']" priority="2">
8381
+ <xsl:apply-templates/>
8382
+ </xsl:template>
8383
+ <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']" priority="2">
8384
+ <fo:table-row>
8385
+ <xsl:apply-templates/>
8386
+ </fo:table-row>
8387
+ </xsl:template>
8388
+ <!-- first td with line numbers -->
8389
+ <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2">
8390
+ <fo:table-cell>
8391
+ <fo:block>
8392
+
8393
+ <!-- set attibutes for line numbers - same as sourcecode -->
8394
+ <xsl:variable name="sourcecode_attributes">
8395
+ <xsl:for-each select="following-sibling::*[local-name() = 'td']/*[local-name() = 'sourcecode']">
8396
+ <xsl:call-template name="get_sourcecode_attributes"/>
8397
+ </xsl:for-each>
8398
+ </xsl:variable>
8399
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*[not(starts-with(local-name(), 'margin-') or starts-with(local-name(), 'space-'))]">
8400
+ <xsl:attribute name="{local-name()}">
8401
+ <xsl:value-of select="."/>
8402
+ </xsl:attribute>
8403
+ </xsl:for-each>
8229
8404
 
8405
+ <xsl:apply-templates/>
8406
+ </fo:block>
8407
+ </fo:table-cell>
8230
8408
  </xsl:template>
8409
+ <!-- second td with sourcecode -->
8410
+ <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2">
8411
+ <fo:table-cell>
8412
+ <fo:block>
8413
+ <xsl:apply-templates/>
8414
+ </fo:block>
8415
+ </fo:table-cell>
8416
+ </xsl:template>
8417
+ <!-- END outer table with line numbers for sourcecode -->
8231
8418
 
8232
8419
  <xsl:template name="add_spaces_to_sourcecode">
8233
8420
  <xsl:variable name="text_step1">
@@ -9920,17 +10107,17 @@
9920
10107
  <fo:block>
9921
10108
  <fo:inline>
9922
10109
 
9923
- <xsl:value-of select="*[local-name()='docidentifier'][@type = 'metanorma-ordinal']"/>
9924
- <xsl:if test="not(*[local-name()='docidentifier'][@type = 'metanorma-ordinal'])">
9925
- <xsl:number format="[1]" count="*[local-name()='bibitem'][not(@hidden = 'true')]"/>
9926
- </xsl:if>
9927
-
10110
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
10111
+ <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
10112
+ </xsl:apply-templates>
9928
10113
  </fo:inline>
9929
10114
  </fo:block>
9930
10115
  </fo:list-item-label>
9931
10116
  <fo:list-item-body start-indent="body-start()">
9932
10117
  <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style">
9933
- <xsl:call-template name="processBibitem"/>
10118
+ <xsl:call-template name="processBibitem">
10119
+ <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
10120
+ </xsl:call-template>
9934
10121
  </fo:block>
9935
10122
  </fo:list-item-body>
9936
10123
  </fo:list-item>
@@ -9939,176 +10126,51 @@
9939
10126
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
9940
10127
 
9941
10128
  <xsl:template name="processBibitem">
10129
+ <xsl:param name="biblio_tag_part">both</xsl:param>
9942
10130
 
9943
10131
  <!-- start bibitem processing -->
9944
10132
  <xsl:if test=".//*[local-name() = 'fn']">
9945
10133
  <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
9946
10134
  </xsl:if>
9947
10135
 
9948
- <!-- display document identifier, not number [1] -->
9949
- <xsl:variable name="docidentifier">
9950
- <xsl:choose>
9951
- <xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
9952
- <xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma-ordinal')]"/></xsl:otherwise>
9953
- </xsl:choose>
9954
- </xsl:variable>
9955
- <xsl:value-of select="$docidentifier"/>
9956
-
9957
- <xsl:apply-templates select="*[local-name() = 'note']"/>
9958
-
9959
- <xsl:if test="normalize-space($docidentifier) != '' and *[local-name() = 'formattedref']">
9960
- <xsl:text>,</xsl:text>
9961
- <xsl:text> </xsl:text>
9962
- </xsl:if>
9963
-
10136
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
10137
+ <xsl:with-param name="biblio_tag_part" select="$biblio_tag_part"/>
10138
+ </xsl:apply-templates>
9964
10139
  <xsl:apply-templates select="*[local-name() = 'formattedref']"/>
9965
10140
  <!-- end bibitem processing -->
9966
10141
 
9967
10142
  </xsl:template> <!-- processBibitem (bibitem) -->
9968
10143
 
9969
- <xsl:template name="processBibitemDocId">
9970
- <xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'metanorma-ordinal' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
9971
- <xsl:choose>
9972
- <xsl:when test="normalize-space($_doc_ident) != ''">
9973
- <!-- <xsl:variable name="type" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]/@type"/>
9974
- <xsl:if test="$type != '' and not(contains($_doc_ident, $type))">
9975
- <xsl:value-of select="$type"/><xsl:text> </xsl:text>
9976
- </xsl:if> -->
9977
- <xsl:value-of select="$_doc_ident"/>
9978
- </xsl:when>
9979
- <xsl:otherwise>
9980
- <!-- <xsl:variable name="type" select="*[local-name() = 'docidentifier'][not(@type = 'metanorma')]/@type"/>
9981
- <xsl:if test="$type != ''">
9982
- <xsl:value-of select="$type"/><xsl:text> </xsl:text>
9983
- </xsl:if> -->
9984
- <xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma') and not(@type = 'metanorma-ordinal')]"/>
9985
- </xsl:otherwise>
9986
- </xsl:choose>
9987
- </xsl:template> <!-- processBibitemDocId -->
10144
+ <xsl:template match="*[local-name() = 'title']" mode="title">
10145
+ <fo:inline><xsl:apply-templates/></fo:inline>
10146
+ </xsl:template>
10147
+
10148
+ <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/>
9988
10149
 
9989
- <xsl:template name="processPersonalAuthor">
10150
+ <xsl:template match="*[local-name() = 'formattedref']">
10151
+ <!-- <xsl:if test="$namespace = 'unece' or $namespace = 'unece-rec'">
10152
+ <xsl:text>, </xsl:text>
10153
+ </xsl:if> -->
10154
+ <xsl:apply-templates/>
10155
+ </xsl:template>
10156
+
10157
+ <xsl:template match="*[local-name() = 'biblio-tag']">
10158
+ <xsl:param name="biblio_tag_part">both</xsl:param>
9990
10159
  <xsl:choose>
9991
- <xsl:when test="*[local-name() = 'name']/*[local-name() = 'completename']">
9992
- <author>
9993
- <xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'completename']"/>
9994
- </author>
9995
- </xsl:when>
9996
- <xsl:when test="*[local-name() = 'name']/*[local-name() = 'surname'] and *[local-name() = 'name']/*[local-name() = 'initial']">
9997
- <author>
9998
- <xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
9999
- <xsl:text> </xsl:text>
10000
- <xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'initial']" mode="strip"/>
10001
- </author>
10160
+ <xsl:when test="$biblio_tag_part = 'first' and *[local-name() = 'tab']">
10161
+ <xsl:apply-templates select="./*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
10002
10162
  </xsl:when>
10003
- <xsl:when test="*[local-name() = 'name']/*[local-name() = 'surname'] and *[local-name() = 'name']/*[local-name() = 'forename']">
10004
- <author>
10005
- <xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'surname']"/>
10006
- <xsl:text> </xsl:text>
10007
- <xsl:apply-templates select="*[local-name() = 'name']/*[local-name() = 'forename']" mode="strip"/>
10008
- </author>
10163
+ <xsl:when test="$biblio_tag_part = 'last'">
10164
+ <xsl:apply-templates select="./*[local-name() = 'tab'][1]/following-sibling::node()"/>
10009
10165
  </xsl:when>
10010
10166
  <xsl:otherwise>
10011
10167
  <xsl:apply-templates/>
10012
10168
  </xsl:otherwise>
10013
10169
  </xsl:choose>
10014
- </xsl:template> <!-- processPersonalAuthor -->
10015
-
10016
- <xsl:template name="renderDate">
10017
- <xsl:if test="normalize-space(*[local-name() = 'on']) != ''">
10018
- <xsl:value-of select="*[local-name() = 'on']"/>
10019
- </xsl:if>
10020
- <xsl:if test="normalize-space(*[local-name() = 'from']) != ''">
10021
- <xsl:value-of select="concat(*[local-name() = 'from'], '–', *[local-name() = 'to'])"/>
10022
- </xsl:if>
10023
- </xsl:template>
10024
-
10025
- <xsl:template match="*[local-name() = 'name']/*[local-name() = 'initial']/text()" mode="strip">
10026
- <xsl:value-of select="translate(.,'. ','')"/>
10027
- </xsl:template>
10028
-
10029
- <xsl:template match="*[local-name() = 'name']/*[local-name() = 'forename']/text()" mode="strip">
10030
- <xsl:value-of select="substring(.,1,1)"/>
10031
10170
  </xsl:template>
10032
10171
 
10033
- <xsl:template match="*[local-name() = 'title']" mode="title">
10034
- <fo:inline><xsl:apply-templates/></fo:inline>
10035
- </xsl:template>
10036
-
10037
- <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'title']" priority="2">
10038
- <!-- <fo:inline><xsl:apply-templates /></fo:inline> -->
10039
- <fo:inline font-style="italic"> <!-- BIPM BSI CSD CSA GB IEC IHO ISO ITU JCGM -->
10040
- <xsl:apply-templates/>
10041
- </fo:inline>
10042
- </xsl:template>
10043
-
10044
- <!-- bibitem/note renders as footnote -->
10045
- <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'note']" priority="2">
10046
-
10047
- <!-- list of footnotes to calculate actual footnotes number -->
10048
- <xsl:variable name="p_fn_">
10049
- <xsl:call-template name="get_fn_list"/>
10050
- </xsl:variable>
10051
- <xsl:variable name="p_fn" select="xalan:nodeset($p_fn_)"/>
10052
- <xsl:variable name="gen_id" select="generate-id(.)"/>
10053
- <xsl:variable name="lang" select="ancestor::*[contains(local-name(), '-standard')]/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
10054
- <!-- fn sequence number in document -->
10055
- <xsl:variable name="current_fn_number">
10056
- <xsl:choose>
10057
- <xsl:when test="@current_fn_number"><xsl:value-of select="@current_fn_number"/></xsl:when> <!-- for BSI -->
10058
- <xsl:otherwise>
10059
- <!-- <xsl:value-of select="count($p_fn//fn[@reference = $reference]/preceding-sibling::fn) + 1" /> -->
10060
- <xsl:value-of select="count($p_fn//fn[@gen_id = $gen_id]/preceding-sibling::fn) + 1"/>
10061
- </xsl:otherwise>
10062
- </xsl:choose>
10063
- </xsl:variable>
10064
- <fo:footnote>
10065
- <xsl:variable name="number">
10066
-
10067
- <xsl:value-of select="$current_fn_number"/>
10068
-
10069
- </xsl:variable>
10070
-
10071
- <xsl:variable name="current_fn_number_text">
10072
- <xsl:value-of select="$number"/>
10073
-
10074
- </xsl:variable>
10075
-
10076
- <fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
10077
- <fo:basic-link internal-destination="{$gen_id}" fox:alt-text="footnote {$number}">
10078
- <xsl:value-of select="$current_fn_number_text"/>
10079
- </fo:basic-link>
10080
- </fo:inline>
10081
- <fo:footnote-body>
10082
- <fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
10083
- <fo:inline id="{$gen_id}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
10084
- <xsl:value-of select="$current_fn_number_text"/>
10085
- </fo:inline>
10086
- <xsl:apply-templates/>
10087
- </fo:block>
10088
- </fo:footnote-body>
10089
- </fo:footnote>
10090
- </xsl:template>
10091
-
10092
- <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'edition']"> <!-- for iho -->
10093
- <xsl:text> edition </xsl:text>
10094
- <xsl:value-of select="."/>
10095
- </xsl:template>
10096
-
10097
- <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'uri']"> <!-- for iho -->
10098
- <xsl:text> (</xsl:text>
10099
- <fo:inline xsl:use-attribute-sets="link-style">
10100
- <fo:basic-link external-destination="." fox:alt-text=".">
10101
- <xsl:value-of select="."/>
10102
- </fo:basic-link>
10103
- </fo:inline>
10104
- <xsl:text>)</xsl:text>
10105
- </xsl:template>
10106
-
10107
- <xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/>
10108
-
10109
- <xsl:template match="*[local-name() = 'formattedref']">
10110
-
10111
- <xsl:apply-templates/>
10172
+ <xsl:template match="*[local-name() = 'biblio-tag']/*[local-name() = 'tab']" priority="2">
10173
+ <xsl:text> </xsl:text>
10112
10174
  </xsl:template>
10113
10175
 
10114
10176
  <!-- ======================= -->
@@ -10440,7 +10502,9 @@
10440
10502
  <!-- Update xml -->
10441
10503
  <!-- ===================================== -->
10442
10504
  <!-- =========================================================================== -->
10443
- <!-- STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
10505
+ <!-- STEP1: -->
10506
+ <!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
10507
+ <!-- - Ignore 'span' without style -->
10444
10508
  <!-- =========================================================================== -->
10445
10509
  <xsl:template match="@*|node()" mode="update_xml_step1">
10446
10510
  <xsl:copy>
@@ -10523,7 +10587,8 @@
10523
10587
  </xsl:copy>
10524
10588
  </xsl:template>
10525
10589
 
10526
- <xsl:template match="*[local-name() = 'span'][@style]" mode="update_xml_step1" priority="2">
10590
+ <!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
10591
+ <xsl:template match="*[local-name() = 'span'][@style or @class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" mode="update_xml_step1" priority="2">
10527
10592
  <xsl:copy>
10528
10593
  <xsl:copy-of select="@*"/>
10529
10594
  <xsl:apply-templates mode="update_xml_step1"/>
@@ -10533,6 +10598,12 @@
10533
10598
  <xsl:template match="*[local-name() = 'span']" mode="update_xml_step1">
10534
10599
  <xsl:apply-templates mode="update_xml_step1"/>
10535
10600
  </xsl:template>
10601
+ <xsl:template match="*[local-name() = 'sourcecode']//*[local-name() = 'span'][@class]" mode="update_xml_step1" priority="2">
10602
+ <xsl:copy>
10603
+ <xsl:copy-of select="@*"/>
10604
+ <xsl:apply-templates mode="update_xml_step1"/>
10605
+ </xsl:copy>
10606
+ </xsl:template>
10536
10607
  <!-- =========================================================================== -->
10537
10608
  <!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
10538
10609
  <!-- =========================================================================== -->
@@ -11013,6 +11084,10 @@
11013
11084
  <xsl:call-template name="getLang"/><xsl:value-of select="//*[local-name() = 'p'][1]/@id"/>
11014
11085
  </xsl:template>
11015
11086
 
11087
+ <xsl:template name="getDocumentId_fromCurrentNode">
11088
+ <xsl:call-template name="getLang_fromCurrentNode"/><xsl:value-of select=".//*[local-name() = 'p'][1]/@id"/>
11089
+ </xsl:template>
11090
+
11016
11091
  <xsl:template name="namespaceCheck">
11017
11092
  <xsl:variable name="documentNS" select="namespace-uri(/*)"/>
11018
11093
  <xsl:variable name="XSLNS">
@@ -26,6 +26,10 @@ module IsoDoc
26
26
  @is_iev = id == "60050"
27
27
  super
28
28
  end
29
+
30
+ def std_docid_semantic(text)
31
+ text
32
+ end
29
33
  end
30
34
  end
31
35
  end
@@ -124,7 +124,7 @@ module IsoDoc
124
124
  p = d.parent
125
125
  designation_annotate(p, d.at(ns("./name")))
126
126
  m << { lang: lg, script: Metanorma::Utils.default_script(lg),
127
- designation: l10n_recursive(p.remove, lg).to_xml.strip }
127
+ designation: to_xml(l10n_recursive(p.remove, lg)).strip }
128
128
  end
129
129
  end
130
130
 
@@ -183,7 +183,7 @@ module IsoDoc
183
183
  ref = node.at(ns("./xref | ./eref | ./termref"))
184
184
  label = @i18n.relatedterms[node["type"]].upcase
185
185
  node.replace(l10n("<p>#{label}: " \
186
- "#{p.children.to_xml} (#{ref.to_xml})</p>"))
186
+ "#{to_xml(p.children)} (#{to_xml(ref)})</p>"))
187
187
  @i18n = @i18n_lg["default"]
188
188
  end
189
189
 
@@ -205,9 +205,9 @@ module IsoDoc
205
205
 
206
206
  def termsource1_iev(elem)
207
207
  while elem&.next_element&.name == "termsource"
208
- elem << "; #{elem.next_element.remove.children.to_xml}"
208
+ elem << "; #{to_xml(elem.next_element.remove.children)}"
209
209
  end
210
- elem.children = l10n("#{@i18n.source}: #{elem.children.to_xml.strip}")
210
+ elem.children = l10n("#{@i18n.source}: #{to_xml(elem.children).strip}")
211
211
  end
212
212
 
213
213
  def termexample(docxml)
@@ -83,7 +83,7 @@ module IsoDoc
83
83
  super
84
84
  end
85
85
 
86
- def make_tr_attr(cell, row, totalrows, header)
86
+ def make_tr_attr(cell, row, totalrows, header, bordered)
87
87
  ret = super
88
88
  css_class =
89
89
  cell.name == "th" || header ? "TABLE-col-heading" : "TABLE-cell"
@@ -91,9 +91,11 @@ module IsoDoc
91
91
  end
92
92
 
93
93
  def tr_parse(node, out, ord, totalrows, header)
94
+ c = node.parent.parent["class"]
95
+ bordered = %w(modspec).include?(c) || !c
94
96
  out.tr do |r|
95
97
  node.elements.each do |td|
96
- attrs = make_tr_attr(td, ord, totalrows - 1, header)
98
+ attrs = make_tr_attr(td, ord, totalrows - 1, header, bordered)
97
99
  attrs[:class] = "TABLE-col-heading" if header
98
100
  r.send td.name, **attr_code(attrs) do |entry|
99
101
  td.children.each { |n| parse(n, entry) }
@@ -683,6 +683,9 @@
683
683
  </define>
684
684
  <define name="underline">
685
685
  <element name="underline">
686
+ <optional>
687
+ <attribute name="style"/>
688
+ </optional>
686
689
  <zeroOrMore>
687
690
  <ref name="PureTextElement"/>
688
691
  </zeroOrMore>
@@ -47,7 +47,7 @@
47
47
  </element>
48
48
  </define>
49
49
  <define name="DocumentType">
50
- <value>document</value>
50
+ <text/>
51
51
  </define>
52
52
  <define name="docsubtype">
53
53
  <element name="subdoctype">
@@ -571,6 +571,11 @@
571
571
  <ref name="MultilingualRenderingType"/>
572
572
  </attribute>
573
573
  </optional>
574
+ <optional>
575
+ <attribute name="linenums">
576
+ <data type="boolean"/>
577
+ </attribute>
578
+ </optional>
574
579
  <optional>
575
580
  <ref name="tname"/>
576
581
  </optional>
@@ -1238,6 +1243,11 @@
1238
1243
  </define>
1239
1244
  <define name="concept">
1240
1245
  <element name="concept">
1246
+ <optional>
1247
+ <attribute name="bold">
1248
+ <data type="boolean"/>
1249
+ </attribute>
1250
+ </optional>
1241
1251
  <optional>
1242
1252
  <attribute name="ital">
1243
1253
  <data type="boolean"/>
@@ -2653,6 +2663,7 @@
2653
2663
  <value>full</value>
2654
2664
  <value>short</value>
2655
2665
  <value>id</value>
2666
+ <text/>
2656
2667
  </choice>
2657
2668
  </define>
2658
2669
  <define name="erefTypeWithConnective">
@@ -1,6 +1,6 @@
1
1
  module Metanorma
2
2
  module Iec
3
- VERSION = "2.1.13".freeze
3
+ VERSION = "2.2.1".freeze
4
4
  end
5
5
  end
6
6
 
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.test_files = `git ls-files -- {spec}/*`.split("\n")
31
31
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
32
32
 
33
- spec.add_dependency "metanorma-iso", "~> 2.2.0"
33
+ spec.add_dependency "metanorma-iso", "~> 2.3.0"
34
34
  spec.add_dependency "ruby-jing"
35
35
 
36
36
  spec.add_development_dependency "debug"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-iec
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.13
4
+ version: 2.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-21 00:00:00.000000000 Z
11
+ date: 2022-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-iso
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.2.0
19
+ version: 2.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 2.2.0
26
+ version: 2.3.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: ruby-jing
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -270,7 +270,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
270
270
  - !ruby/object:Gem::Version
271
271
  version: '0'
272
272
  requirements: []
273
- rubygems_version: 3.3.7
273
+ rubygems_version: 3.3.26
274
274
  signing_key:
275
275
  specification_version: 4
276
276
  summary: metanorma-iec lets you write IEC standards in AsciiDoc.