metanorma-iso 2.2.4 → 2.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +0 -1
- data/lib/isodoc/iso/base_convert.rb +3 -3
- data/lib/isodoc/iso/html/isodoc-dis.css +4 -4
- data/lib/isodoc/iso/html/isodoc-dis.scss +4 -4
- data/lib/isodoc/iso/html/isodoc.css +4 -4
- data/lib/isodoc/iso/html/isodoc.scss +4 -4
- data/lib/isodoc/iso/html_convert.rb +1 -1
- data/lib/isodoc/iso/index.rb +2 -2
- data/lib/isodoc/iso/iso.amendment.xsl +55 -12
- data/lib/isodoc/iso/iso.international-standard.xsl +55 -12
- data/lib/isodoc/iso/isosts_convert.rb +8 -3
- data/lib/isodoc/iso/presentation_xml_convert.rb +5 -5
- data/lib/isodoc/iso/presentation_xref.rb +23 -21
- data/lib/isodoc/iso/word_convert.rb +1 -1
- data/lib/isodoc/iso/word_dis_cleanup.rb +3 -3
- data/lib/isodoc/iso/xref.rb +12 -9
- data/lib/metanorma/iso/basicdoc.rng +3 -0
- data/lib/metanorma/iso/biblio-standoc.rng +1 -1
- data/lib/metanorma/iso/isodoc.rng +1 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/lib/metanorma/requirements/modspec.rb +3 -54
- data/metanorma-iso.gemspec +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 100cc8d4acfdb9e4d94e485f58f09928173b43c096ce7c1fdce04633ee0082a7
|
4
|
+
data.tar.gz: 9c8870908553dd7103dc094e5b0f9ceebb9f43f31d417d4c8d01e5d3884c3e6e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 98580eb700d970913763622d7b5325c58a825a98bbe350b9cac0bdcb1f1d5891eac42d9e473deadbe289f90eb1f189c11684b53e1db48e79f94bc210d0c61171
|
7
|
+
data.tar.gz: 5c52e15664a2b8edb7590f85c73bc7b13d248c70f039970a7426f654be3f0ba8165bcfbed6ab71d46be075c34db8b9213a2508ae8a48f633ccf32eed409f2c5f
|
data/.gitignore
CHANGED
@@ -88,9 +88,9 @@ module IsoDoc
|
|
88
88
|
|
89
89
|
def formula_where(dlist, out)
|
90
90
|
return if dlist.nil?
|
91
|
-
return super unless dlist
|
92
|
-
dlist
|
93
|
-
dlist
|
91
|
+
return super unless dlist.xpath(ns("./dt"))&.size == 1 &&
|
92
|
+
dlist.at(ns("./dd"))&.elements&.size == 1 &&
|
93
|
+
dlist.at(ns("./dd/p"))
|
94
94
|
|
95
95
|
out.span **{ class: "zzMoveToFollowing" } do |s|
|
96
96
|
s << "#{@i18n.where} "
|
@@ -222,7 +222,7 @@ p.AnnexTableTitle, li.AnnexTableTitle, div.AnnexTableTitle {
|
|
222
222
|
line-height: 12.0pt;
|
223
223
|
page-break-before: always;
|
224
224
|
mso-pagination: widow-orphan;
|
225
|
-
page-break-after:
|
225
|
+
/*page-break-after:avoid;*/
|
226
226
|
/* mso-list:l4 level1 lfo15; */
|
227
227
|
tab-stops: list 0cm left 20.15pt;
|
228
228
|
font-size: {{normalfontsize}};
|
@@ -248,7 +248,7 @@ p.AnnexTableTitleCxSpFirst, li.AnnexTableTitleCxSpFirst, div.AnnexTableTitleCxSp
|
|
248
248
|
line-height: 12.0pt;
|
249
249
|
page-break-before: always;
|
250
250
|
mso-pagination: widow-orphan;
|
251
|
-
page-break-after:
|
251
|
+
/*page-break-after:avoid;*/
|
252
252
|
/* mso-list:l4 level1 lfo15; */
|
253
253
|
tab-stops: list 0cm left 20.15pt;
|
254
254
|
font-size: {{normalfontsize}};
|
@@ -274,7 +274,7 @@ p.AnnexTableTitleCxSpMiddle, li.AnnexTableTitleCxSpMiddle, div.AnnexTableTitleCx
|
|
274
274
|
line-height: 12.0pt;
|
275
275
|
page-break-before: always;
|
276
276
|
mso-pagination: widow-orphan;
|
277
|
-
page-break-after:
|
277
|
+
/*page-break-after:avoid;*/
|
278
278
|
/* mso-list:l4 level1 lfo15; */
|
279
279
|
tab-stops: list 0cm left 20.15pt;
|
280
280
|
font-size: {{normalfontsize}};
|
@@ -303,7 +303,7 @@ p.AnnexTableTitleCxSpLast, li.AnnexTableTitleCxSpLast, div.AnnexTableTitleCxSpLa
|
|
303
303
|
line-height: 12.0pt;
|
304
304
|
page-break-before: always;
|
305
305
|
mso-pagination: widow-orphan;
|
306
|
-
page-break-after:
|
306
|
+
/*page-break-after:avoid;*/
|
307
307
|
/* mso-list:l4 level1 lfo15; */
|
308
308
|
tab-stops: list 0cm left 20.15pt;
|
309
309
|
font-size: {{normalfontsize}};
|
@@ -211,7 +211,7 @@ p.AnnexTableTitle, li.AnnexTableTitle, div.AnnexTableTitle
|
|
211
211
|
line-height:12.0pt;
|
212
212
|
page-break-before:always;
|
213
213
|
mso-pagination:widow-orphan;
|
214
|
-
page-break-after:avoid
|
214
|
+
/*page-break-after:avoid;*/
|
215
215
|
/* mso-list:l4 level1 lfo15; */
|
216
216
|
tab-stops:list 0cm left 20.15pt;
|
217
217
|
font-size:$normalfontsize;
|
@@ -236,7 +236,7 @@ p.AnnexTableTitleCxSpFirst, li.AnnexTableTitleCxSpFirst, div.AnnexTableTitleCxSp
|
|
236
236
|
line-height:12.0pt;
|
237
237
|
page-break-before:always;
|
238
238
|
mso-pagination:widow-orphan;
|
239
|
-
page-break-after:avoid
|
239
|
+
/*page-break-after:avoid;*/
|
240
240
|
/* mso-list:l4 level1 lfo15; */
|
241
241
|
tab-stops:list 0cm left 20.15pt;
|
242
242
|
font-size:$normalfontsize;
|
@@ -261,7 +261,7 @@ p.AnnexTableTitleCxSpMiddle, li.AnnexTableTitleCxSpMiddle, div.AnnexTableTitleCx
|
|
261
261
|
line-height:12.0pt;
|
262
262
|
page-break-before:always;
|
263
263
|
mso-pagination:widow-orphan;
|
264
|
-
page-break-after:avoid
|
264
|
+
/*page-break-after:avoid;*/
|
265
265
|
/* mso-list:l4 level1 lfo15; */
|
266
266
|
tab-stops:list 0cm left 20.15pt;
|
267
267
|
font-size:$normalfontsize;
|
@@ -289,7 +289,7 @@ p.AnnexTableTitleCxSpLast, li.AnnexTableTitleCxSpLast, div.AnnexTableTitleCxSpLa
|
|
289
289
|
line-height:12.0pt;
|
290
290
|
page-break-before:always;
|
291
291
|
mso-pagination:widow-orphan;
|
292
|
-
page-break-after:avoid
|
292
|
+
/*page-break-after:avoid;*/
|
293
293
|
/* mso-list:l4 level1 lfo15; */
|
294
294
|
tab-stops:list 0cm left 20.15pt;
|
295
295
|
font-size:$normalfontsize;
|
@@ -219,7 +219,7 @@ p.AnnexTableTitle, li.AnnexTableTitle, div.AnnexTableTitle {
|
|
219
219
|
line-height: 12.0pt;
|
220
220
|
page-break-before: always;
|
221
221
|
mso-pagination: widow-orphan;
|
222
|
-
page-break-after:
|
222
|
+
/*page-break-after:avoid;*/
|
223
223
|
/* mso-list:l4 level1 lfo15; */
|
224
224
|
tab-stops: list 0cm left 20.15pt;
|
225
225
|
font-size: {{normalfontsize}};
|
@@ -245,7 +245,7 @@ p.AnnexTableTitleCxSpFirst, li.AnnexTableTitleCxSpFirst, div.AnnexTableTitleCxSp
|
|
245
245
|
line-height: 12.0pt;
|
246
246
|
page-break-before: always;
|
247
247
|
mso-pagination: widow-orphan;
|
248
|
-
page-break-after:
|
248
|
+
/*page-break-after:avoid;*/
|
249
249
|
/* mso-list:l4 level1 lfo15; */
|
250
250
|
tab-stops: list 0cm left 20.15pt;
|
251
251
|
font-size: {{normalfontsize}};
|
@@ -271,7 +271,7 @@ p.AnnexTableTitleCxSpMiddle, li.AnnexTableTitleCxSpMiddle, div.AnnexTableTitleCx
|
|
271
271
|
line-height: 12.0pt;
|
272
272
|
page-break-before: always;
|
273
273
|
mso-pagination: widow-orphan;
|
274
|
-
page-break-after:
|
274
|
+
/*page-break-after:avoid;*/
|
275
275
|
/* mso-list:l4 level1 lfo15; */
|
276
276
|
tab-stops: list 0cm left 20.15pt;
|
277
277
|
font-size: {{normalfontsize}};
|
@@ -300,7 +300,7 @@ p.AnnexTableTitleCxSpLast, li.AnnexTableTitleCxSpLast, div.AnnexTableTitleCxSpLa
|
|
300
300
|
line-height: 12.0pt;
|
301
301
|
page-break-before: always;
|
302
302
|
mso-pagination: widow-orphan;
|
303
|
-
page-break-after:
|
303
|
+
/*page-break-after:avoid;*/
|
304
304
|
/* mso-list:l4 level1 lfo15; */
|
305
305
|
tab-stops: list 0cm left 20.15pt;
|
306
306
|
font-size: {{normalfontsize}};
|
@@ -209,7 +209,7 @@ p.AnnexTableTitle, li.AnnexTableTitle, div.AnnexTableTitle
|
|
209
209
|
line-height:12.0pt;
|
210
210
|
page-break-before:always;
|
211
211
|
mso-pagination:widow-orphan;
|
212
|
-
page-break-after:avoid
|
212
|
+
/*page-break-after:avoid;*/
|
213
213
|
/* mso-list:l4 level1 lfo15; */
|
214
214
|
tab-stops:list 0cm left 20.15pt;
|
215
215
|
font-size:$normalfontsize;
|
@@ -234,7 +234,7 @@ p.AnnexTableTitleCxSpFirst, li.AnnexTableTitleCxSpFirst, div.AnnexTableTitleCxSp
|
|
234
234
|
line-height:12.0pt;
|
235
235
|
page-break-before:always;
|
236
236
|
mso-pagination:widow-orphan;
|
237
|
-
page-break-after:avoid
|
237
|
+
/*page-break-after:avoid;*/
|
238
238
|
/* mso-list:l4 level1 lfo15; */
|
239
239
|
tab-stops:list 0cm left 20.15pt;
|
240
240
|
font-size:$normalfontsize;
|
@@ -259,7 +259,7 @@ p.AnnexTableTitleCxSpMiddle, li.AnnexTableTitleCxSpMiddle, div.AnnexTableTitleCx
|
|
259
259
|
line-height:12.0pt;
|
260
260
|
page-break-before:always;
|
261
261
|
mso-pagination:widow-orphan;
|
262
|
-
page-break-after:avoid
|
262
|
+
/*page-break-after:avoid;*/
|
263
263
|
/* mso-list:l4 level1 lfo15; */
|
264
264
|
tab-stops:list 0cm left 20.15pt;
|
265
265
|
font-size:$normalfontsize;
|
@@ -287,7 +287,7 @@ p.AnnexTableTitleCxSpLast, li.AnnexTableTitleCxSpLast, div.AnnexTableTitleCxSpLa
|
|
287
287
|
line-height:12.0pt;
|
288
288
|
page-break-before:always;
|
289
289
|
mso-pagination:widow-orphan;
|
290
|
-
page-break-after:avoid
|
290
|
+
/*page-break-after:avoid;*/
|
291
291
|
/* mso-list:l4 level1 lfo15; */
|
292
292
|
tab-stops:list 0cm left 20.15pt;
|
293
293
|
font-size:$normalfontsize;
|
@@ -58,7 +58,7 @@ module IsoDoc
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def html_toc_entry(level, header)
|
61
|
-
content = header.at("./following-sibling::p"\
|
61
|
+
content = header.at("./following-sibling::p" \
|
62
62
|
"[@class = 'variant-title-toc']") || header
|
63
63
|
if level == "h1" &&
|
64
64
|
header.parent.at(".//h2#{toc_exclude_class}")
|
data/lib/isodoc/iso/index.rb
CHANGED
@@ -127,7 +127,7 @@ module IsoDoc
|
|
127
127
|
terms.each_with_object(val) do |t, v|
|
128
128
|
term, term2, term3 = extract_indexterms_init(t)
|
129
129
|
term_hash_init(v, term, term2, term3, label)
|
130
|
-
v[term][term2][term3][label] << t
|
130
|
+
v[term][term2][term3][label] << to_xml(t.at(ns("./target"))&.children)
|
131
131
|
t.remove
|
132
132
|
end
|
133
133
|
end
|
@@ -154,7 +154,7 @@ module IsoDoc
|
|
154
154
|
|
155
155
|
def extract_indexterms_init(term)
|
156
156
|
%w(primary secondary tertiary).each_with_object([]) do |x, m|
|
157
|
-
m << term
|
157
|
+
m << to_xml(term.at(ns("./#{x}"))&.children)
|
158
158
|
end
|
159
159
|
end
|
160
160
|
|
@@ -5011,6 +5011,10 @@
|
|
5011
5011
|
<xsl:variable name="footnote_inline">
|
5012
5012
|
<fo:inline xsl:use-attribute-sets="fn-num-style">
|
5013
5013
|
|
5014
|
+
<xsl:if test="following-sibling::*[1][local-name() = 'fn']">
|
5015
|
+
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
5016
|
+
</xsl:if>
|
5017
|
+
|
5014
5018
|
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
5015
5019
|
<xsl:value-of select="$current_fn_number_text"/>
|
5016
5020
|
</fo:basic-link>
|
@@ -6251,6 +6255,23 @@
|
|
6251
6255
|
<xsl:apply-templates/>
|
6252
6256
|
</xsl:template>
|
6253
6257
|
|
6258
|
+
<!-- Don't break standard's numbers -->
|
6259
|
+
<!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
6260
|
+
<xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
|
6261
|
+
<xsl:choose>
|
6262
|
+
<xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
|
6263
|
+
<xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
|
6264
|
+
<fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
|
6265
|
+
</xsl:when>
|
6266
|
+
<xsl:otherwise>
|
6267
|
+
<xsl:apply-templates/>
|
6268
|
+
</xsl:otherwise>
|
6269
|
+
</xsl:choose>
|
6270
|
+
</xsl:template>
|
6271
|
+
<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">
|
6272
|
+
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
6273
|
+
</xsl:template>
|
6274
|
+
|
6254
6275
|
<!-- ========================= -->
|
6255
6276
|
<!-- END Rich text formatting -->
|
6256
6277
|
<!-- ========================= -->
|
@@ -6646,7 +6667,7 @@
|
|
6646
6667
|
<xsl:choose>
|
6647
6668
|
<xsl:when test="@colspan">
|
6648
6669
|
<xsl:variable name="td">
|
6649
|
-
<xsl:element name="
|
6670
|
+
<xsl:element name="{local-name()}">
|
6650
6671
|
<xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
|
6651
6672
|
<xsl:if test="local-name()='th'">
|
6652
6673
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6661,7 +6682,7 @@
|
|
6661
6682
|
</xsl:call-template>
|
6662
6683
|
</xsl:when>
|
6663
6684
|
<xsl:otherwise>
|
6664
|
-
<xsl:element name="
|
6685
|
+
<xsl:element name="{local-name()}">
|
6665
6686
|
<xsl:apply-templates select="@*" mode="simple-table-colspan"/>
|
6666
6687
|
<xsl:if test="local-name()='th'">
|
6667
6688
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6728,7 +6749,7 @@
|
|
6728
6749
|
<xsl:variable name="currentRow" select="."/>
|
6729
6750
|
|
6730
6751
|
<xsl:variable name="normalizedTDs">
|
6731
|
-
<xsl:for-each select="xalan:nodeset($previousRow)
|
6752
|
+
<xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
|
6732
6753
|
<xsl:choose>
|
6733
6754
|
<xsl:when test="@rowspan > 1">
|
6734
6755
|
<xsl:copy>
|
@@ -6740,7 +6761,7 @@
|
|
6740
6761
|
</xsl:copy>
|
6741
6762
|
</xsl:when>
|
6742
6763
|
<xsl:otherwise>
|
6743
|
-
<xsl:copy-of select="$currentRow
|
6764
|
+
<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)])]"/>
|
6744
6765
|
</xsl:otherwise>
|
6745
6766
|
</xsl:choose>
|
6746
6767
|
</xsl:for-each>
|
@@ -7421,12 +7442,6 @@
|
|
7421
7442
|
|
7422
7443
|
<fo:block-container margin-left="0mm">
|
7423
7444
|
|
7424
|
-
<!-- <xsl:if test="$namespace = 'iho'">
|
7425
|
-
<xsl:if test="ancestor::iho:td">
|
7426
|
-
<xsl:attribute name="font-size">12pt</xsl:attribute>
|
7427
|
-
</xsl:if>
|
7428
|
-
</xsl:if> -->
|
7429
|
-
|
7430
7445
|
<fo:block>
|
7431
7446
|
|
7432
7447
|
<fo:inline xsl:use-attribute-sets="note-name-style">
|
@@ -7936,6 +7951,31 @@
|
|
7936
7951
|
<xsl:apply-templates mode="svg_update"/>
|
7937
7952
|
</xsl:copy>
|
7938
7953
|
</xsl:template>
|
7954
|
+
|
7955
|
+
<!-- regex for 'display: inline-block;' -->
|
7956
|
+
<xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
|
7957
|
+
<xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
|
7958
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
|
7959
|
+
</xsl:template>
|
7960
|
+
|
7961
|
+
<!-- replace
|
7962
|
+
stroke="rgba(r, g, b, alpha)" to
|
7963
|
+
stroke="rgb(r,g,b)" stroke-opacity="alpha", and
|
7964
|
+
fill="rgba(r, g, b, alpha)" to
|
7965
|
+
fill="rgb(r,g,b)" fill-opacity="alpha" -->
|
7966
|
+
<xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
|
7967
|
+
<xsl:variable name="components_">
|
7968
|
+
<xsl:call-template name="split">
|
7969
|
+
<xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
|
7970
|
+
<xsl:with-param name="sep" select="','"/>
|
7971
|
+
</xsl:call-template>
|
7972
|
+
</xsl:variable>
|
7973
|
+
<xsl:variable name="components" select="xalan:nodeset($components_)"/>
|
7974
|
+
<xsl:variable name="att_name" select="local-name()"/>
|
7975
|
+
<xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
|
7976
|
+
<xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
|
7977
|
+
</xsl:template>
|
7978
|
+
|
7939
7979
|
<!-- ============== -->
|
7940
7980
|
<!-- END: svg_update -->
|
7941
7981
|
<!-- ============== -->
|
@@ -10886,7 +10926,9 @@
|
|
10886
10926
|
<!-- Update xml -->
|
10887
10927
|
<!-- ===================================== -->
|
10888
10928
|
<!-- =========================================================================== -->
|
10889
|
-
<!-- STEP1:
|
10929
|
+
<!-- STEP1: -->
|
10930
|
+
<!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
|
10931
|
+
<!-- - Ignore 'span' without style -->
|
10890
10932
|
<!-- =========================================================================== -->
|
10891
10933
|
<xsl:template match="@*|node()" mode="update_xml_step1">
|
10892
10934
|
<xsl:copy>
|
@@ -10969,7 +11011,8 @@
|
|
10969
11011
|
</xsl:copy>
|
10970
11012
|
</xsl:template>
|
10971
11013
|
|
10972
|
-
|
11014
|
+
<!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
11015
|
+
<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">
|
10973
11016
|
<xsl:copy>
|
10974
11017
|
<xsl:copy-of select="@*"/>
|
10975
11018
|
<xsl:apply-templates mode="update_xml_step1"/>
|
@@ -5011,6 +5011,10 @@
|
|
5011
5011
|
<xsl:variable name="footnote_inline">
|
5012
5012
|
<fo:inline xsl:use-attribute-sets="fn-num-style">
|
5013
5013
|
|
5014
|
+
<xsl:if test="following-sibling::*[1][local-name() = 'fn']">
|
5015
|
+
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
5016
|
+
</xsl:if>
|
5017
|
+
|
5014
5018
|
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
5015
5019
|
<xsl:value-of select="$current_fn_number_text"/>
|
5016
5020
|
</fo:basic-link>
|
@@ -6251,6 +6255,23 @@
|
|
6251
6255
|
<xsl:apply-templates/>
|
6252
6256
|
</xsl:template>
|
6253
6257
|
|
6258
|
+
<!-- Don't break standard's numbers -->
|
6259
|
+
<!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
6260
|
+
<xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
|
6261
|
+
<xsl:choose>
|
6262
|
+
<xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
|
6263
|
+
<xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
|
6264
|
+
<fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
|
6265
|
+
</xsl:when>
|
6266
|
+
<xsl:otherwise>
|
6267
|
+
<xsl:apply-templates/>
|
6268
|
+
</xsl:otherwise>
|
6269
|
+
</xsl:choose>
|
6270
|
+
</xsl:template>
|
6271
|
+
<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">
|
6272
|
+
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
6273
|
+
</xsl:template>
|
6274
|
+
|
6254
6275
|
<!-- ========================= -->
|
6255
6276
|
<!-- END Rich text formatting -->
|
6256
6277
|
<!-- ========================= -->
|
@@ -6646,7 +6667,7 @@
|
|
6646
6667
|
<xsl:choose>
|
6647
6668
|
<xsl:when test="@colspan">
|
6648
6669
|
<xsl:variable name="td">
|
6649
|
-
<xsl:element name="
|
6670
|
+
<xsl:element name="{local-name()}">
|
6650
6671
|
<xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
|
6651
6672
|
<xsl:if test="local-name()='th'">
|
6652
6673
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6661,7 +6682,7 @@
|
|
6661
6682
|
</xsl:call-template>
|
6662
6683
|
</xsl:when>
|
6663
6684
|
<xsl:otherwise>
|
6664
|
-
<xsl:element name="
|
6685
|
+
<xsl:element name="{local-name()}">
|
6665
6686
|
<xsl:apply-templates select="@*" mode="simple-table-colspan"/>
|
6666
6687
|
<xsl:if test="local-name()='th'">
|
6667
6688
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6728,7 +6749,7 @@
|
|
6728
6749
|
<xsl:variable name="currentRow" select="."/>
|
6729
6750
|
|
6730
6751
|
<xsl:variable name="normalizedTDs">
|
6731
|
-
<xsl:for-each select="xalan:nodeset($previousRow)
|
6752
|
+
<xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
|
6732
6753
|
<xsl:choose>
|
6733
6754
|
<xsl:when test="@rowspan > 1">
|
6734
6755
|
<xsl:copy>
|
@@ -6740,7 +6761,7 @@
|
|
6740
6761
|
</xsl:copy>
|
6741
6762
|
</xsl:when>
|
6742
6763
|
<xsl:otherwise>
|
6743
|
-
<xsl:copy-of select="$currentRow
|
6764
|
+
<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)])]"/>
|
6744
6765
|
</xsl:otherwise>
|
6745
6766
|
</xsl:choose>
|
6746
6767
|
</xsl:for-each>
|
@@ -7421,12 +7442,6 @@
|
|
7421
7442
|
|
7422
7443
|
<fo:block-container margin-left="0mm">
|
7423
7444
|
|
7424
|
-
<!-- <xsl:if test="$namespace = 'iho'">
|
7425
|
-
<xsl:if test="ancestor::iho:td">
|
7426
|
-
<xsl:attribute name="font-size">12pt</xsl:attribute>
|
7427
|
-
</xsl:if>
|
7428
|
-
</xsl:if> -->
|
7429
|
-
|
7430
7445
|
<fo:block>
|
7431
7446
|
|
7432
7447
|
<fo:inline xsl:use-attribute-sets="note-name-style">
|
@@ -7936,6 +7951,31 @@
|
|
7936
7951
|
<xsl:apply-templates mode="svg_update"/>
|
7937
7952
|
</xsl:copy>
|
7938
7953
|
</xsl:template>
|
7954
|
+
|
7955
|
+
<!-- regex for 'display: inline-block;' -->
|
7956
|
+
<xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
|
7957
|
+
<xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
|
7958
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
|
7959
|
+
</xsl:template>
|
7960
|
+
|
7961
|
+
<!-- replace
|
7962
|
+
stroke="rgba(r, g, b, alpha)" to
|
7963
|
+
stroke="rgb(r,g,b)" stroke-opacity="alpha", and
|
7964
|
+
fill="rgba(r, g, b, alpha)" to
|
7965
|
+
fill="rgb(r,g,b)" fill-opacity="alpha" -->
|
7966
|
+
<xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
|
7967
|
+
<xsl:variable name="components_">
|
7968
|
+
<xsl:call-template name="split">
|
7969
|
+
<xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
|
7970
|
+
<xsl:with-param name="sep" select="','"/>
|
7971
|
+
</xsl:call-template>
|
7972
|
+
</xsl:variable>
|
7973
|
+
<xsl:variable name="components" select="xalan:nodeset($components_)"/>
|
7974
|
+
<xsl:variable name="att_name" select="local-name()"/>
|
7975
|
+
<xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
|
7976
|
+
<xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
|
7977
|
+
</xsl:template>
|
7978
|
+
|
7939
7979
|
<!-- ============== -->
|
7940
7980
|
<!-- END: svg_update -->
|
7941
7981
|
<!-- ============== -->
|
@@ -10886,7 +10926,9 @@
|
|
10886
10926
|
<!-- Update xml -->
|
10887
10927
|
<!-- ===================================== -->
|
10888
10928
|
<!-- =========================================================================== -->
|
10889
|
-
<!-- STEP1:
|
10929
|
+
<!-- STEP1: -->
|
10930
|
+
<!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
|
10931
|
+
<!-- - Ignore 'span' without style -->
|
10890
10932
|
<!-- =========================================================================== -->
|
10891
10933
|
<xsl:template match="@*|node()" mode="update_xml_step1">
|
10892
10934
|
<xsl:copy>
|
@@ -10969,7 +11011,8 @@
|
|
10969
11011
|
</xsl:copy>
|
10970
11012
|
</xsl:template>
|
10971
11013
|
|
10972
|
-
|
11014
|
+
<!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
11015
|
+
<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">
|
10973
11016
|
<xsl:copy>
|
10974
11017
|
<xsl:copy-of select="@*"/>
|
10975
11018
|
<xsl:apply-templates mode="update_xml_step1"/>
|
@@ -13,14 +13,19 @@ module IsoDoc
|
|
13
13
|
@suffix = "isosts.xml"
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
17
|
-
file = File.read(input_fname, encoding: "utf-8") if file.nil?
|
18
|
-
_, fname, dir = convert_init(file, input_fname, debug)
|
16
|
+
def get_input_fname(input_fname)
|
19
17
|
/\.xml$/.match(input_fname) or
|
20
18
|
input_fname = Tempfile.open([fname, ".xml"], encoding: "utf-8") do |f|
|
21
19
|
f.write file
|
22
20
|
f.path
|
23
21
|
end
|
22
|
+
input_fname
|
23
|
+
end
|
24
|
+
|
25
|
+
def convert(input_fname, file = nil, debug = false, output_fname = nil)
|
26
|
+
file = File.read(input_fname, encoding: "utf-8") if file.nil?
|
27
|
+
_, fname, dir = convert_init(file, input_fname, debug)
|
28
|
+
input_fname = get_input_fname(input_fname)
|
24
29
|
FileUtils.rm_rf dir
|
25
30
|
MnConvert.convert(input_fname,
|
26
31
|
{
|
@@ -101,7 +101,7 @@ module IsoDoc
|
|
101
101
|
end
|
102
102
|
|
103
103
|
def concept_term1(node, seen)
|
104
|
-
term = node
|
104
|
+
term = to_xml(node.at(ns("./refterm")))
|
105
105
|
if term && seen[term]
|
106
106
|
concept_render(node, ital: "false", ref: "false",
|
107
107
|
linkref: "true", linkmention: "false")
|
@@ -114,8 +114,8 @@ module IsoDoc
|
|
114
114
|
|
115
115
|
def concept1_ref_content(ref)
|
116
116
|
repl = if ref.name == "termref"
|
117
|
-
@i18n.term_defined_in.sub(/%/, ref
|
118
|
-
else "(#{ref
|
117
|
+
@i18n.term_defined_in.sub(/%/, to_xml(ref))
|
118
|
+
else "(#{to_xml(ref)})"
|
119
119
|
end
|
120
120
|
ref.replace(repl)
|
121
121
|
end
|
@@ -152,7 +152,7 @@ module IsoDoc
|
|
152
152
|
(v = elem.at(ns("./definition/verbal-definition"))) &&
|
153
153
|
v.elements.first.name == "p") or return
|
154
154
|
v.elements.first.children.first.previous =
|
155
|
-
"<#{d.remove.children
|
155
|
+
"<#{to_xml(d.remove.children)}> "
|
156
156
|
end
|
157
157
|
|
158
158
|
def insertall_after_here(node, insert, name)
|
@@ -186,7 +186,7 @@ module IsoDoc
|
|
186
186
|
p = n.next_element
|
187
187
|
return unless p.name == "p"
|
188
188
|
|
189
|
-
p.children.first.previous = admonition_name(n.remove.children
|
189
|
+
p.children.first.previous = admonition_name(to_xml(n.remove.children))
|
190
190
|
end
|
191
191
|
|
192
192
|
def admonition_name(xml)
|
@@ -33,9 +33,10 @@ module IsoDoc
|
|
33
33
|
ret = resolve_eref_connectives(eref_locality_stacks(refs, target,
|
34
34
|
node))
|
35
35
|
node["droploc"] = droploc
|
36
|
-
eref_localities1(target,
|
37
|
-
|
38
|
-
|
36
|
+
eref_localities1({ target: target, number: "pl",
|
37
|
+
type: prefix_clause(target, refs.first.at(ns("./locality"))),
|
38
|
+
from: l10n(ret[1..-1].join),
|
39
|
+
node: node, lang: @lang })
|
39
40
|
end
|
40
41
|
|
41
42
|
def prefix_clause(target, loc)
|
@@ -79,29 +80,30 @@ module IsoDoc
|
|
79
80
|
ret.join
|
80
81
|
end
|
81
82
|
|
82
|
-
def eref_localities1_zh(
|
83
|
-
ret = " 第#{from}" if from
|
84
|
-
ret += "–#{upto}" if upto
|
85
|
-
node["droploc"] != "true" &&
|
86
|
-
|
87
|
-
|
88
|
-
|
83
|
+
def eref_localities1_zh(opt)
|
84
|
+
ret = " 第#{opt[:from]}" if opt[:from]
|
85
|
+
ret += "–#{opt[:upto]}" if opt[:upto]
|
86
|
+
opt[:node]["droploc"] != "true" &&
|
87
|
+
!subclause?(opt[:target], opt[:type], opt[:from]) and
|
88
|
+
ret += eref_locality_populate(opt[:type], opt[:node], "sg")
|
89
|
+
ret += ")" if opt[:type] == "list"
|
90
|
+
locality_span_wrap(ret, opt[:type])
|
89
91
|
end
|
90
92
|
|
91
|
-
def eref_localities1(
|
92
|
-
return nil if type == "anchor"
|
93
|
+
def eref_localities1(opt)
|
94
|
+
return nil if opt[:type] == "anchor"
|
93
95
|
|
94
|
-
type = type.downcase
|
95
|
-
lang == "zh" and
|
96
|
-
return l10n(eref_localities1_zh(target, type, from, upto, node))
|
96
|
+
opt[:type] = opt[:type].downcase
|
97
|
+
opt[:lang] == "zh" and return l10n(eref_localities1_zh(opt))
|
97
98
|
ret = ""
|
98
|
-
node["droploc"] != "true" &&
|
99
|
-
|
100
|
-
|
101
|
-
ret += "
|
102
|
-
ret += "
|
99
|
+
opt[:node]["droploc"] != "true" &&
|
100
|
+
!subclause?(opt[:target], opt[:type], opt[:from]) and
|
101
|
+
ret = eref_locality_populate(opt[:type], opt[:node], opt[:number])
|
102
|
+
ret += " #{opt[:from]}" if opt[:from]
|
103
|
+
ret += "–#{opt[:upto]}" if opt[:upto]
|
104
|
+
ret += ")" if opt[:type] == "list"
|
103
105
|
ret = l10n(ret)
|
104
|
-
locality_span_wrap(ret, type)
|
106
|
+
locality_span_wrap(ret, opt[:type])
|
105
107
|
end
|
106
108
|
|
107
109
|
def prefix_container(container, linkend, node, target)
|
@@ -101,7 +101,7 @@ module IsoDoc
|
|
101
101
|
|
102
102
|
def footnote_reference_format(link)
|
103
103
|
link.children =
|
104
|
-
"<span class='MsoFootnoteReference'>#{link.children
|
104
|
+
"<span class='MsoFootnoteReference'>#{to_xml(link.children)}</span>)"
|
105
105
|
end
|
106
106
|
|
107
107
|
def bibliography_attrs
|
@@ -205,7 +205,7 @@ module IsoDoc
|
|
205
205
|
docxml.xpath("//p[@id = 'boilerplate-address']")&.each do |p|
|
206
206
|
p["class"] = "zzCopyright"
|
207
207
|
p["style"] = "text-indent:20.15pt;"
|
208
|
-
p.replace(p.
|
208
|
+
p.replace(to_xml(p).gsub(%r{<br/>}, "</p>\n<p class='zzCopyright' " \
|
209
209
|
"style='text-indent:20.15pt;'>"))
|
210
210
|
end
|
211
211
|
docxml.xpath("//p[@class = 'zzCopyrightHdr']")&.each do |p|
|
@@ -217,7 +217,7 @@ module IsoDoc
|
|
217
217
|
def copyright_dis(docxml)
|
218
218
|
docxml.xpath("//p[@id = 'boilerplate-address']")&.each do |p|
|
219
219
|
p["class"] = "zzCopyright"
|
220
|
-
p.replace(p.
|
220
|
+
p.replace(to_xml(p).gsub(%r{<br/>}, "</p>\n<p class='zzCopyright'>"))
|
221
221
|
end
|
222
222
|
docxml.xpath("//p[@class = 'zzCopyrightHdr']")&.each do |p|
|
223
223
|
p.remove
|
@@ -235,7 +235,7 @@ module IsoDoc
|
|
235
235
|
if t.at("./p |./div")
|
236
236
|
t.xpath("./p | ./div").each { |p| p["class"] = s }
|
237
237
|
else
|
238
|
-
t.children = "<div class='#{s}'>#{t.children
|
238
|
+
t.children = "<div class='#{s}'>#{to_xml(t.children)}</div>"
|
239
239
|
end
|
240
240
|
end
|
241
241
|
end
|
data/lib/isodoc/iso/xref.rb
CHANGED
@@ -43,7 +43,7 @@ module IsoDoc
|
|
43
43
|
n = Counter.new
|
44
44
|
n = section_names(doc.at(ns("//clause[@type = 'scope']")), n, 1)
|
45
45
|
n = section_names(doc.at(ns(@klass.norm_ref_xpath)), n, 1)
|
46
|
-
doc.xpath(ns("//sections/clause[not(@type = 'scope')] | "\
|
46
|
+
doc.xpath(ns("//sections/clause[not(@type = 'scope')] | " \
|
47
47
|
"//sections/terms | //sections/definitions")).each do |c|
|
48
48
|
n = section_names(c, n, 1)
|
49
49
|
end
|
@@ -169,25 +169,28 @@ module IsoDoc
|
|
169
169
|
|
170
170
|
def modspec_table_xrefs(clause)
|
171
171
|
clause.xpath(ns(".//table[@class = 'modspec']")).noblank.each do |t|
|
172
|
-
(@anchors[t["id"]] && !@anchors[t["id"]][:modspec]) or next
|
173
172
|
n = @anchors[t["id"]][:xref]
|
174
|
-
|
175
|
-
@anchors[t["id"]][:xref] =
|
176
|
-
l10n("#{n}, #{@anchors_previous[t['id']][:xref_bare]}")
|
173
|
+
xref_to_modspec(t["id"], n) or next
|
177
174
|
modspec_table_components_xrefs(t, n)
|
178
175
|
end
|
179
176
|
end
|
180
177
|
|
181
178
|
def modspec_table_components_xrefs(table, table_label)
|
182
179
|
table.xpath(ns(".//tr[@id]")).each do |tr|
|
183
|
-
(
|
184
|
-
@anchors[tr["id"]][:modspec] = true
|
185
|
-
@anchors[tr["id"]][:xref] =
|
186
|
-
l10n("#{table_label}, #{@anchors_previous[tr['id']][:xref]}")
|
180
|
+
xref_to_modspec(tr["id"], table_label) or next
|
187
181
|
@anchors[tr["id"]].delete(:container)
|
188
182
|
end
|
189
183
|
end
|
190
184
|
|
185
|
+
def xref_to_modspec(id, table_label)
|
186
|
+
(@anchors[id] && !@anchors[id][:has_modspec]) or return
|
187
|
+
@anchors[id][:has_modspec] = true
|
188
|
+
x = @anchors_previous[id][:xref_bare] || @anchors_previous[id][:xref]
|
189
|
+
@anchors[id][:xref] = l10n("#{table_label}, #{x}")
|
190
|
+
@anchors[id][:modspec] = @anchors_previous[id][:modspec]
|
191
|
+
true
|
192
|
+
end
|
193
|
+
|
191
194
|
def hierarchical_table_names(clause, _num)
|
192
195
|
super
|
193
196
|
modspec_table_xrefs(clause) if @anchors_previous
|
@@ -3,15 +3,6 @@ module Metanorma
|
|
3
3
|
class Modspec
|
4
4
|
# Don't want to inherit from Metanorma::Requirements::Modspec
|
5
5
|
class Iso < ::Metanorma::Requirements::Modspec
|
6
|
-
def recommendation_label_xref(elem, label, xrefs, _type)
|
7
|
-
id = @reqtlabels[label]
|
8
|
-
number = xrefs.anchor(id, :xref_reqt2reqt, false)
|
9
|
-
number.nil? and return type
|
10
|
-
elem.ancestors("requirement, recommendation, permission").empty? and
|
11
|
-
return number
|
12
|
-
"<xref target='#{id}'>#{number}</xref>"
|
13
|
-
end
|
14
|
-
|
15
6
|
def recommendation_label(elem, type, xrefs)
|
16
7
|
lbl = super
|
17
8
|
title = elem.at(ns("./title"))
|
@@ -55,55 +46,13 @@ module Metanorma
|
|
55
46
|
|
56
47
|
def postprocess_anchor_struct(block, anchor)
|
57
48
|
super
|
58
|
-
anchor[:
|
49
|
+
anchor[:modspec] = anchor[:xref_bare]
|
59
50
|
if l = block.at(ns("./title"))
|
60
|
-
anchor[:
|
61
|
-
l10n("#{anchor[:
|
51
|
+
anchor[:modspec] =
|
52
|
+
l10n("#{anchor[:modspec]}: #{l.children.to_xml.strip}")
|
62
53
|
end
|
63
54
|
anchor
|
64
55
|
end
|
65
|
-
|
66
|
-
def reqt_ids(docxml)
|
67
|
-
docxml.xpath(ns("//requirement | //recommendation | //permission"))
|
68
|
-
.each_with_object({}) do |r, m|
|
69
|
-
id = r.at(ns("./identifier")) or next
|
70
|
-
m[id.text] =
|
71
|
-
{ id: r["id"],
|
72
|
-
lbl: @xrefs.anchor(r["id"], :xref_reqt2reqt, false) }
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
def reqt_links_test1(reqt, acc)
|
77
|
-
return unless %w(conformanceclass
|
78
|
-
verification).include?(reqt["type"])
|
79
|
-
|
80
|
-
subj = reqt_extract_target(reqt)
|
81
|
-
id = reqt.at(ns("./identifier")) or return
|
82
|
-
lbl = @xrefs.anchor(@reqt_ids[id.text.strip][:id], :xref_reqt2reqt,
|
83
|
-
false)
|
84
|
-
return unless subj
|
85
|
-
|
86
|
-
acc[subj.text] = { lbl: lbl, id: reqt["id"] }
|
87
|
-
end
|
88
|
-
|
89
|
-
def reqt_links_class(docxml)
|
90
|
-
docxml.xpath(ns("//requirement | //recommendation | //permission"))
|
91
|
-
.each_with_object({}) do |r, m|
|
92
|
-
next unless %w(class
|
93
|
-
conformanceclass).include?(r["type"])
|
94
|
-
|
95
|
-
id = r.at(ns("./identifier")) or next
|
96
|
-
r.xpath(ns("./requirement | ./recommendation | ./permission"))
|
97
|
-
.each do |r1|
|
98
|
-
id1 = r1.at(ns("./identifier")) or next
|
99
|
-
lbl = @xrefs.anchor(@reqt_ids[id.text.strip][:id],
|
100
|
-
:xref_reqt2reqt, false)
|
101
|
-
next unless lbl
|
102
|
-
|
103
|
-
m[id1.text] = { lbl: lbl, id: r["id"] }
|
104
|
-
end
|
105
|
-
end
|
106
|
-
end
|
107
56
|
end
|
108
57
|
end
|
109
58
|
end
|
data/metanorma-iso.gemspec
CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.test_files = `git ls-files -- {spec}/*`.split("\n")
|
33
33
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
34
34
|
|
35
|
-
spec.add_dependency "metanorma-standoc", "~> 2.
|
35
|
+
spec.add_dependency "metanorma-standoc", "~> 2.3.0"
|
36
36
|
spec.add_dependency "mnconvert", "~> 1.14"
|
37
37
|
spec.add_dependency "pubid-iso"
|
38
38
|
spec.add_dependency "ruby-jing"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-iso
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.0
|
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
|
+
date: 2022-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-standoc
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
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.
|
26
|
+
version: 2.3.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: mnconvert
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -415,7 +415,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
415
415
|
- !ruby/object:Gem::Version
|
416
416
|
version: '0'
|
417
417
|
requirements: []
|
418
|
-
rubygems_version: 3.3.
|
418
|
+
rubygems_version: 3.3.26
|
419
419
|
signing_key:
|
420
420
|
specification_version: 4
|
421
421
|
summary: metanorma-iso lets you write ISO standards in AsciiDoc.
|