metanorma-iso 2.1.4 → 2.1.5
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/iso/html/isodoc-dis.css +1 -10
- data/lib/isodoc/iso/html/isodoc-dis.scss +1 -13
- data/lib/isodoc/iso/html/isodoc.css +4 -11
- data/lib/isodoc/iso/html/isodoc.scss +5 -15
- data/lib/isodoc/iso/i18n-en.yaml +1 -1
- data/lib/isodoc/iso/iso.amendment.xsl +12 -2
- data/lib/isodoc/iso/iso.international-standard.xsl +12 -2
- data/lib/isodoc/iso/presentation_xml_convert.rb +4 -0
- data/lib/isodoc/iso/word_cleanup.rb +40 -6
- data/lib/isodoc/iso/word_dis_cleanup.rb +2 -14
- data/lib/metanorma/iso/isodoc.rng +10 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/spec/isodoc/postproc_spec.rb +2 -62
- data/spec/isodoc/terms_spec.rb +62 -0
- data/spec/isodoc/word_dis_spec.rb +125 -3
- data/spec/metanorma/base_spec.rb +6 -3
- data/spec/metanorma/cleanup_spec.rb +5 -5
- data/spec/metanorma/refs_spec.rb +5 -3
- data/spec/metanorma/section_spec.rb +6 -6
- data/spec/spec_helper.rb +1 -1
- data/spec/vcr_cassettes/withdrawn_iso.yml +34 -34
- metadata +2 -2
@@ -1010,9 +1010,9 @@ RSpec.describe IsoDoc do
|
|
1010
1010
|
Note
|
1011
1011
|
</p>
|
1012
1012
|
</div>
|
1013
|
-
<div style='page-break-after:avoid;'>
|
1013
|
+
<div class="Figureexample" style='page-break-after:avoid;'>
|
1014
1014
|
<a name='D' id='D'/>
|
1015
|
-
<p class='
|
1015
|
+
<p class='Figureexample'>
|
1016
1016
|
<span style='mso-tab-count:1'> </span>
|
1017
1017
|
Example
|
1018
1018
|
</p>
|
@@ -1687,7 +1687,7 @@ RSpec.describe IsoDoc do
|
|
1687
1687
|
<span style='mso-tab-count:1'> </span>
|
1688
1688
|
Example start
|
1689
1689
|
</p>
|
1690
|
-
<p class='Code--'>X</p>
|
1690
|
+
<p class='Code--' style='margin-bottom:12pt;'>X</p>
|
1691
1691
|
<p class='Exampleindentcontinued'>Example continued</p>
|
1692
1692
|
</div>
|
1693
1693
|
<p class='Code-'>X</p>
|
@@ -1943,4 +1943,126 @@ RSpec.describe IsoDoc do
|
|
1943
1943
|
</div>
|
1944
1944
|
OUTPUT
|
1945
1945
|
end
|
1946
|
+
|
1947
|
+
it "deals with Simple Template styles" do
|
1948
|
+
input = <<~INPUT
|
1949
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
1950
|
+
<bibdata>
|
1951
|
+
<status><stage>20</stage></status>
|
1952
|
+
</bibdata>
|
1953
|
+
<sections>
|
1954
|
+
<clause id="A"><title>Clause Title</title>
|
1955
|
+
<ul><li>List</li></ul>
|
1956
|
+
<note id="B"><p>Note</p>
|
1957
|
+
<ul><li>Note List</li></ul>
|
1958
|
+
</note>
|
1959
|
+
<example id="C"><p>Example</p>
|
1960
|
+
<ul><li>Example List</li></ul>
|
1961
|
+
</example>
|
1962
|
+
<figure id="D"><name>Figure Title</name></figure>
|
1963
|
+
<sourcecode id="E">XYZ</sourcecode>
|
1964
|
+
<table id="F"><name>Table</name></table>
|
1965
|
+
</clause>
|
1966
|
+
</sections>
|
1967
|
+
<annex id="G"><title>Annex Title</title>
|
1968
|
+
<table id="H"><name>Annex Table</name></table>
|
1969
|
+
<clause id="I"><title>Annex Clause Title</title>
|
1970
|
+
</clause>
|
1971
|
+
</annex>
|
1972
|
+
<bibliography>
|
1973
|
+
<references id="_normative_references" normative="false" obligation="informative">
|
1974
|
+
<title>Bibliography</title>
|
1975
|
+
<bibitem id="ISO712" type="standard">
|
1976
|
+
<formattedref>ALUFFI, Paolo, ed. (2022). <em><span class="std_class">Facets of Algebraic Geometry: A Collection in Honor of William Fulton's 80th Birthday</span></em>, 1st edition. Cambridge, UK: CUP.</formattedref>
|
1977
|
+
<docidentifier type="ISO">ISO/IEC 712-3:2022</docidentifier>
|
1978
|
+
</bibitem>
|
1979
|
+
</references>
|
1980
|
+
</bibliography>
|
1981
|
+
</iso-standard>
|
1982
|
+
INPUT
|
1983
|
+
word = <<~WORD
|
1984
|
+
<div class='WordSection3'>
|
1985
|
+
<p class='zzSTDTitle1'/>
|
1986
|
+
<div>
|
1987
|
+
<a name='A' id='A'/>
|
1988
|
+
<h1>Clause Title</h1>
|
1989
|
+
<p style='mso-list:l3 level1 lfo1;' class='MsoListParagraphCxSpFirst'>List</p>
|
1990
|
+
<div class='Note'>
|
1991
|
+
<a name='B' id='B'/>
|
1992
|
+
<p class='Note'>
|
1993
|
+
<span class='note_label'/>
|
1994
|
+
<span style='mso-tab-count:1'> </span>
|
1995
|
+
Note
|
1996
|
+
</p>
|
1997
|
+
<p style='font-size:10.0pt;;mso-list:l3 level1 lfo2;' class='MsoListParagraphCxSpFirst'>Note List</p>
|
1998
|
+
</div>
|
1999
|
+
<div class='Example'>
|
2000
|
+
<a name='C' id='C'/>
|
2001
|
+
<p class='Example'>
|
2002
|
+
<span style='mso-tab-count:1'> </span>
|
2003
|
+
Example
|
2004
|
+
</p>
|
2005
|
+
<p style='font-size:10.0pt;;mso-list:l3 level1 lfo3;' class='MsoListParagraphCxSpFirst'>Example List</p>
|
2006
|
+
</div>
|
2007
|
+
<div class='MsoNormal' style='text-align:center;'>
|
2008
|
+
<a name='D' id='D'/>
|
2009
|
+
<p class='FigureTitle' style='text-align:center;'>Figure Title</p>
|
2010
|
+
</div>
|
2011
|
+
<p class='Code'>
|
2012
|
+
<a name='E' id='E'/>
|
2013
|
+
XYZ
|
2014
|
+
</p>
|
2015
|
+
<p class='Tabletitle' style='text-align:center;'>Table</p>
|
2016
|
+
<div align='center' class='table_container'>
|
2017
|
+
<table class='MsoISOTable' style='mso-table-anchor-horizontal:column;mso-table-overlap:never;border-spacing:0;border-width:1px;'>
|
2018
|
+
<a name='F' id='F'/>
|
2019
|
+
</table>
|
2020
|
+
</div>
|
2021
|
+
</div>
|
2022
|
+
<p class='MsoNormal'>
|
2023
|
+
<br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
|
2024
|
+
</p>
|
2025
|
+
<div class='Section3'>
|
2026
|
+
<a name='G' id='G'/>
|
2027
|
+
<p class='ANNEX'>Annex Title</p>
|
2028
|
+
<p class='AnnexTableTitle' style='text-align:center;'>Annex Table</p>
|
2029
|
+
<div align='center' class='table_container'>
|
2030
|
+
<table class='MsoISOTable' style='mso-table-anchor-horizontal:column;mso-table-overlap:never;border-spacing:0;border-width:1px;'>
|
2031
|
+
<a name='H' id='H'/>
|
2032
|
+
</table>
|
2033
|
+
</div>
|
2034
|
+
<div>
|
2035
|
+
<a name='I' id='I'/>
|
2036
|
+
<p class='a2'>Annex Clause Title</p>
|
2037
|
+
</div>
|
2038
|
+
</div>
|
2039
|
+
<p class='MsoNormal'>
|
2040
|
+
<br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
|
2041
|
+
</p>
|
2042
|
+
<div>
|
2043
|
+
<p class='BiblioTitle'>Bibliography</p>
|
2044
|
+
<p class='MsoNormal'>
|
2045
|
+
<a name='ISO712' id='ISO712'/>
|
2046
|
+
[1]
|
2047
|
+
<span style='mso-tab-count:1'> </span>
|
2048
|
+
ISO/IEC 712-3:2022, ALUFFI, Paolo, ed. (2022).
|
2049
|
+
<i>
|
2050
|
+
Facets of Algebraic Geometry: A Collection in Honor of William Fulton's
|
2051
|
+
80th Birthday
|
2052
|
+
</i>
|
2053
|
+
, 1st edition. Cambridge, UK: CUP.
|
2054
|
+
</p>
|
2055
|
+
</div>
|
2056
|
+
</div>
|
2057
|
+
WORD
|
2058
|
+
FileUtils.rm_f "test.doc"
|
2059
|
+
IsoDoc::Iso::WordConvert.new({}).convert("test", input, false)
|
2060
|
+
expect(File.exist?("test.doc")).to be true
|
2061
|
+
output = File.read("test.doc", encoding: "UTF-8")
|
2062
|
+
.sub(/^.*<html/m, "<html")
|
2063
|
+
.sub(/<\/html>.*$/m, "</html>")
|
2064
|
+
expect(strip_guid(xmlpp(Nokogiri::XML(output)
|
2065
|
+
.at("//xmlns:div[@class = 'WordSection3']").to_xml)))
|
2066
|
+
.to be_equivalent_to xmlpp(word)
|
2067
|
+
end
|
1946
2068
|
end
|
data/spec/metanorma/base_spec.rb
CHANGED
@@ -1015,7 +1015,7 @@ RSpec.describe Metanorma::ISO do
|
|
1015
1015
|
<uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:23281:en</uri>
|
1016
1016
|
<uri type='rss'>https://www.iso.org/contents/data/standard/02/32/23281.detail.rss</uri>
|
1017
1017
|
<docidentifier type='ISO' primary="true">ISO 123:2001</docidentifier>
|
1018
|
-
<docidentifier type='URN'>urn:iso:std:iso:123:stage-90.93:ed-3
|
1018
|
+
<docidentifier type='URN'>urn:iso:std:iso:123:stage-90.93:ed-3</docidentifier>
|
1019
1019
|
<docnumber>123</docnumber>
|
1020
1020
|
<date type='published'><on>2001-05</on></date>
|
1021
1021
|
<contributor>
|
@@ -1062,6 +1062,7 @@ RSpec.describe Metanorma::ISO do
|
|
1062
1062
|
<relation type='obsoletes'>
|
1063
1063
|
<bibitem type='standard'>
|
1064
1064
|
<formattedref format='text/plain'>ISO 123:1985</formattedref>
|
1065
|
+
<docidentifier type='ISO' primary='true'>ISO 123:1985</docidentifier>
|
1065
1066
|
</bibitem>
|
1066
1067
|
</relation>
|
1067
1068
|
<place>Geneva</place>
|
@@ -1088,7 +1089,7 @@ RSpec.describe Metanorma::ISO do
|
|
1088
1089
|
<uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:72849:en</uri>
|
1089
1090
|
<uri type='rss'>https://www.iso.org/contents/data/standard/07/28/72849.detail.rss</uri>
|
1090
1091
|
<docidentifier type='ISO' primary="true">ISO 125</docidentifier>
|
1091
|
-
<docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7
|
1092
|
+
<docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7</docidentifier>
|
1092
1093
|
<docnumber>125</docnumber>
|
1093
1094
|
<contributor>
|
1094
1095
|
<role type='publisher'/>
|
@@ -1117,6 +1118,7 @@ RSpec.describe Metanorma::ISO do
|
|
1117
1118
|
<relation type='obsoletes'>
|
1118
1119
|
<bibitem type='standard'>
|
1119
1120
|
<formattedref format='text/plain'>ISO 125:2011</formattedref>
|
1121
|
+
<docidentifier type='ISO' primary='true'>ISO 125:2011</docidentifier>
|
1120
1122
|
</bibitem>
|
1121
1123
|
</relation>
|
1122
1124
|
<relation type='instance'>
|
@@ -1139,7 +1141,7 @@ RSpec.describe Metanorma::ISO do
|
|
1139
1141
|
<uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:72849:en</uri>
|
1140
1142
|
<uri type='rss'>https://www.iso.org/contents/data/standard/07/28/72849.detail.rss</uri>
|
1141
1143
|
<docidentifier type='ISO' primary="true">ISO 125:2020</docidentifier>
|
1142
|
-
<docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7
|
1144
|
+
<docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7</docidentifier>
|
1143
1145
|
<docnumber>125</docnumber>
|
1144
1146
|
<date type='published'>
|
1145
1147
|
<on>2020-02</on>
|
@@ -1192,6 +1194,7 @@ RSpec.describe Metanorma::ISO do
|
|
1192
1194
|
<relation type='obsoletes'>
|
1193
1195
|
<bibitem type='standard'>
|
1194
1196
|
<formattedref format='text/plain'>ISO 125:2011</formattedref>
|
1197
|
+
<docidentifier type='ISO' primary='true'>ISO 125:2011</docidentifier>
|
1195
1198
|
</bibitem>
|
1196
1199
|
</relation>
|
1197
1200
|
<place>Geneva</place>
|
@@ -1240,7 +1240,7 @@ RSpec.describe Metanorma::ISO do
|
|
1240
1240
|
<title>Terms and definitions</title>
|
1241
1241
|
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
1242
1242
|
<p id='_'>
|
1243
|
-
ISO and IEC maintain
|
1243
|
+
ISO and IEC maintain terminology databases for use in standardization
|
1244
1244
|
at the following addresses:
|
1245
1245
|
</p>
|
1246
1246
|
<ul id='_'>
|
@@ -1289,7 +1289,7 @@ RSpec.describe Metanorma::ISO do
|
|
1289
1289
|
<title>Terms and definitions</title>
|
1290
1290
|
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
1291
1291
|
<p id='_'>
|
1292
|
-
ISO and IEC maintain
|
1292
|
+
ISO and IEC maintain terminology databases for use in standardization
|
1293
1293
|
at the following addresses:
|
1294
1294
|
</p>
|
1295
1295
|
<ul id='_'>
|
@@ -1353,7 +1353,7 @@ RSpec.describe Metanorma::ISO do
|
|
1353
1353
|
<title>Terms and definitions</title>
|
1354
1354
|
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
1355
1355
|
<p id='_'>
|
1356
|
-
ISO and IEC maintain
|
1356
|
+
ISO and IEC maintain terminology databases for use in
|
1357
1357
|
standardization at the following addresses:
|
1358
1358
|
</p>
|
1359
1359
|
<ul id='_'>
|
@@ -1420,7 +1420,7 @@ RSpec.describe Metanorma::ISO do
|
|
1420
1420
|
<title>Terms and definitions</title>
|
1421
1421
|
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
1422
1422
|
<p id='_'>
|
1423
|
-
ISO and IEC maintain
|
1423
|
+
ISO and IEC maintain terminology databases for use in
|
1424
1424
|
standardization at the following addresses:
|
1425
1425
|
</p>
|
1426
1426
|
<ul id='_'>
|
@@ -1478,7 +1478,7 @@ RSpec.describe Metanorma::ISO do
|
|
1478
1478
|
<terms id='_' obligation='normative'>
|
1479
1479
|
<title>Terms and definitions</title>
|
1480
1480
|
<p id='_'>
|
1481
|
-
ISO and IEC maintain
|
1481
|
+
ISO and IEC maintain terminology databases for use in standardization
|
1482
1482
|
at the following addresses:
|
1483
1483
|
</p>
|
1484
1484
|
<ul id='_'>
|
data/spec/metanorma/refs_spec.rb
CHANGED
@@ -410,7 +410,7 @@ RSpec.describe Metanorma::ISO do
|
|
410
410
|
<uri type='src'>https://www.iso.org/standard/2405.html</uri>
|
411
411
|
<uri type='rss'>https://www.iso.org/contents/data/standard/00/24/2405.detail.rss</uri>
|
412
412
|
<docidentifier type='ISO' primary='true'>ISO 31-0</docidentifier>
|
413
|
-
<docidentifier type='URN'>urn:iso:std:iso:31:-0:stage-95.99:ed-1
|
413
|
+
<docidentifier type='URN'>urn:iso:std:iso:31:-0:stage-95.99:ed-1</docidentifier>
|
414
414
|
<docnumber>31</docnumber>
|
415
415
|
<contributor>
|
416
416
|
<role type='publisher'/>
|
@@ -447,7 +447,7 @@ RSpec.describe Metanorma::ISO do
|
|
447
447
|
<uri type='src'>https://www.iso.org/standard/2405.html</uri>
|
448
448
|
<uri type='rss'>https://www.iso.org/contents/data/standard/00/24/2405.detail.rss</uri>
|
449
449
|
<docidentifier type='ISO' primary='true'>ISO 31-0:1974</docidentifier>
|
450
|
-
<docidentifier type='URN'>urn:iso:std:iso:31:-0:stage-95.99:ed-1
|
450
|
+
<docidentifier type='URN'>urn:iso:std:iso:31:-0:stage-95.99:ed-1</docidentifier>
|
451
451
|
<docnumber>31</docnumber>
|
452
452
|
<date type='published'>
|
453
453
|
<on>1974-01</on>
|
@@ -494,7 +494,7 @@ RSpec.describe Metanorma::ISO do
|
|
494
494
|
<uri type='src'>https://www.iso.org/standard/76389.html</uri>
|
495
495
|
<uri type='rss'>https://www.iso.org/contents/data/standard/07/63/76389.detail.rss</uri>
|
496
496
|
<docidentifier type='ISO' primary='true'>ISO 683-3:2019</docidentifier>
|
497
|
-
<docidentifier type='URN'>urn:iso:std:iso:683:-3:stage-95.99:ed-3
|
497
|
+
<docidentifier type='URN'>urn:iso:std:iso:683:-3:stage-95.99:ed-3</docidentifier>
|
498
498
|
<docnumber>683</docnumber>
|
499
499
|
<date type='published'>
|
500
500
|
<on>2019-01</on>
|
@@ -551,11 +551,13 @@ RSpec.describe Metanorma::ISO do
|
|
551
551
|
<relation type='obsoletes'>
|
552
552
|
<bibitem type='standard'>
|
553
553
|
<formattedref format='text/plain'>ISO 683-3:2016</formattedref>
|
554
|
+
<docidentifier type='ISO' primary='true'>ISO 683-3:2016</docidentifier>
|
554
555
|
</bibitem>
|
555
556
|
</relation>
|
556
557
|
<relation type='updates'>
|
557
558
|
<bibitem type='standard'>
|
558
559
|
<formattedref format='text/plain'>ISO 683-3:2022</formattedref>
|
560
|
+
<docidentifier type='ISO' primary='true'>ISO 683-3:2022</docidentifier>
|
559
561
|
<date type='circulated'>
|
560
562
|
<on>2022-01-21</on>
|
561
563
|
</date>
|
@@ -81,7 +81,7 @@ RSpec.describe Metanorma::ISO do
|
|
81
81
|
<terms id="_" obligation="normative">
|
82
82
|
<title>Terms and definitions</title>
|
83
83
|
<p id="_">For the purposes of this document, the following terms and definitions apply.</p>
|
84
|
-
<p id="_">ISO and IEC maintain
|
84
|
+
<p id="_">ISO and IEC maintain terminology databases for use in standardization at the following addresses:</p>
|
85
85
|
<ul id="_">
|
86
86
|
<li>
|
87
87
|
<p id="_">ISO Online browsing platform: available at
|
@@ -275,7 +275,7 @@ RSpec.describe Metanorma::ISO do
|
|
275
275
|
given in <eref bibitemid="iso1234"/>
|
276
276
|
and <eref bibitemid="iso5678"/>
|
277
277
|
and the following apply.</p>
|
278
|
-
<p id="_">ISO and IEC maintain
|
278
|
+
<p id="_">ISO and IEC maintain terminology databases for use in
|
279
279
|
standardization at the following addresses:</p>
|
280
280
|
<ul id="_">
|
281
281
|
<li>
|
@@ -321,7 +321,7 @@ RSpec.describe Metanorma::ISO do
|
|
321
321
|
<title>Terms and definitions</title>
|
322
322
|
<p id='_'>No terms and definitions are listed in this document.</p>
|
323
323
|
<p id='_'>
|
324
|
-
ISO and IEC maintain
|
324
|
+
ISO and IEC maintain terminology databases for use in standardization
|
325
325
|
at the following addresses:
|
326
326
|
</p>
|
327
327
|
<ul id='_'>
|
@@ -373,7 +373,7 @@ RSpec.describe Metanorma::ISO do
|
|
373
373
|
and <eref bibitemid="iso5678"/>
|
374
374
|
apply.
|
375
375
|
</p>
|
376
|
-
<p id="_">ISO and IEC maintain
|
376
|
+
<p id="_">ISO and IEC maintain terminology databases for use in standardization at the following addresses:</p>
|
377
377
|
<ul id="_">
|
378
378
|
<li>
|
379
379
|
<p id="_">ISO Online browsing platform: available at
|
@@ -411,7 +411,7 @@ RSpec.describe Metanorma::ISO do
|
|
411
411
|
<title>Terms and definitions</title>
|
412
412
|
<p id='_'>No terms and definitions are listed in this document.</p>
|
413
413
|
<p id='_'>
|
414
|
-
ISO and IEC maintain
|
414
|
+
ISO and IEC maintain terminology databases for use in standardization
|
415
415
|
at the following addresses:
|
416
416
|
</p>
|
417
417
|
<ul id='_'>
|
@@ -461,7 +461,7 @@ RSpec.describe Metanorma::ISO do
|
|
461
461
|
<terms id='_' obligation='normative'>
|
462
462
|
<title>Terms and Definitions</title>
|
463
463
|
<p id='_'>No terms and definitions are listed in this document.</p>
|
464
|
-
<p id='_'>ISO and IEC maintain
|
464
|
+
<p id='_'>ISO and IEC maintain terminology databases for use in standardization
|
465
465
|
at the following addresses:
|
466
466
|
</p>
|
467
467
|
<ul id='_'>
|
data/spec/spec_helper.rb
CHANGED
@@ -225,7 +225,7 @@ HDR
|
|
225
225
|
TERM_BOILERPLATE = <<~TERM.freeze
|
226
226
|
<p id="_">For the purposes of this document,
|
227
227
|
the following terms and definitions apply.</p>
|
228
|
-
<p id="_">ISO and IEC maintain
|
228
|
+
<p id="_">ISO and IEC maintain terminology databases for use in
|
229
229
|
standardization at the following addresses:</p>
|
230
230
|
|
231
231
|
<ul id="_">
|