isodoc 0.9.23 → 0.10.0
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/.travis.yml +4 -2
- data/Gemfile.lock +17 -22
- data/appveyor.yml +7 -2
- data/isodoc.gemspec +3 -3
- data/lib/isodoc/function/blocks.rb +22 -9
- data/lib/isodoc/function/inline.rb +13 -8
- data/lib/isodoc/function/references.rb +1 -1
- data/lib/isodoc/function/section.rb +13 -7
- data/lib/isodoc/function/table.rb +9 -4
- data/lib/isodoc/function/terms.rb +3 -2
- data/lib/isodoc/function/xref_gen.rb +75 -39
- data/lib/isodoc/html_function/html.rb +2 -2
- data/lib/isodoc/metadata.rb +9 -57
- data/lib/isodoc/version.rb +1 -1
- data/lib/isodoc/word_function/body.rb +13 -0
- data/spec/isodoc/blocks_spec.rb +27 -7
- data/spec/isodoc/footnotes_spec.rb +6 -3
- data/spec/isodoc/metadata_spec.rb +16 -19
- data/spec/isodoc/ref_spec.rb +4 -1
- data/spec/isodoc/table_spec.rb +12 -0
- data/spec/isodoc/xref_spec.rb +146 -134
- metadata +7 -7
@@ -93,7 +93,7 @@ module IsoDoc::HtmlFunction
|
|
93
93
|
<<~HEAD.freeze
|
94
94
|
function toclevel() { var i; var text = "";
|
95
95
|
for(i = 1; i <= #{@htmlToClevels}; i++) {
|
96
|
-
if (i > 1) { text += ","; } text += "h" + i + ":not(.TermNum)"; }
|
96
|
+
if (i > 1) { text += ","; } text += "h" + i + ":not(:empty):not(.TermNum)"; }
|
97
97
|
return text;}
|
98
98
|
HEAD
|
99
99
|
end
|
@@ -259,7 +259,7 @@ module IsoDoc::HtmlFunction
|
|
259
259
|
|
260
260
|
def datauri(i)
|
261
261
|
type = i["src"].split(".")[-1]
|
262
|
-
bin = File.
|
262
|
+
bin = IO.binread(File.join(@localdir, i["src"]))
|
263
263
|
data = Base64.strict_encode64(bin)
|
264
264
|
i["src"] = "data:image/#{type};base64,#{data}"
|
265
265
|
end
|
data/lib/isodoc/metadata.rb
CHANGED
@@ -8,15 +8,7 @@ module IsoDoc
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def initialize(lang, script, labels)
|
11
|
-
@metadata = {
|
12
|
-
tc: "XXXX",
|
13
|
-
sc: "XXXX",
|
14
|
-
wg: "XXXX",
|
15
|
-
editorialgroup: [],
|
16
|
-
secretariat: "XXXX",
|
17
|
-
obsoletes: nil,
|
18
|
-
obsoletes_part: nil
|
19
|
-
}
|
11
|
+
@metadata = {}
|
20
12
|
DATETYPES.each { |w| @metadata["#{w}date".to_sym] = "XXX" }
|
21
13
|
@lang = lang
|
22
14
|
@script = script
|
@@ -77,49 +69,9 @@ module IsoDoc
|
|
77
69
|
|
78
70
|
def author(xml, _out)
|
79
71
|
personal_authors(xml)
|
80
|
-
tc(xml)
|
81
|
-
sc(xml)
|
82
|
-
wg(xml)
|
83
|
-
secretariat(xml)
|
84
72
|
agency(xml)
|
85
73
|
end
|
86
74
|
|
87
|
-
def tc(xml)
|
88
|
-
tc_num = xml.at(ns("//bibdata/editorialgroup/technical-committee/@number"))
|
89
|
-
tc_type = xml.at(ns("//bibdata/editorialgroup/technical-committee/@type"))&.
|
90
|
-
text || "TC"
|
91
|
-
if tc_num
|
92
|
-
tcid = "#{tc_type} #{tc_num.text}"
|
93
|
-
set(:tc, tcid)
|
94
|
-
set(:editorialgroup, get[:editorialgroup] << tcid)
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
def sc(xml)
|
99
|
-
sc_num = xml.at(ns("//bibdata/editorialgroup/subcommittee/@number"))
|
100
|
-
sc_type = xml.at(ns("//bibdata/editorialgroup/subcommittee/@type"))&.text || "SC"
|
101
|
-
if sc_num
|
102
|
-
scid = "#{sc_type} #{sc_num.text}"
|
103
|
-
set(:sc, scid)
|
104
|
-
set(:editorialgroup, get[:editorialgroup] << scid)
|
105
|
-
end
|
106
|
-
end
|
107
|
-
|
108
|
-
def wg(xml)
|
109
|
-
wg_num = xml.at(ns("//bibdata/editorialgroup/workgroup/@number"))
|
110
|
-
wg_type = xml.at(ns("//bibdata/editorialgroup/workgroup/@type"))&.text || "WG"
|
111
|
-
if wg_num
|
112
|
-
wgid = "#{wg_type} #{wg_num.text}"
|
113
|
-
set(:wg, wgid)
|
114
|
-
set(:editorialgroup, get[:editorialgroup] << wgid)
|
115
|
-
end
|
116
|
-
end
|
117
|
-
|
118
|
-
def secretariat(xml)
|
119
|
-
sec = xml.at(ns("//bibdata/editorialgroup/secretariat"))
|
120
|
-
set(:secretariat, sec.text) if sec
|
121
|
-
end
|
122
|
-
|
123
75
|
def bibdate(isoxml, _out)
|
124
76
|
isoxml.xpath(ns("//bibdata/date")).each do |d|
|
125
77
|
set("#{d['type']}date".to_sym, Common::date_range(d))
|
@@ -127,13 +79,9 @@ module IsoDoc
|
|
127
79
|
end
|
128
80
|
|
129
81
|
def doctype(isoxml, _out)
|
130
|
-
b = isoxml
|
131
|
-
|
132
|
-
t = b["type"].split(/[- ]/).map{ |w| w.capitalize }.join(" ")
|
82
|
+
b = isoxml&.at(ns("//bibdata/ext/doctype"))&.text || return
|
83
|
+
t = b.split(/[- ]/).map{ |w| w.capitalize }.join(" ")
|
133
84
|
set(:doctype, t)
|
134
|
-
ics = []
|
135
|
-
isoxml.xpath(ns("//bibdata/ics/code")).each { |i| ics << i.text }
|
136
|
-
set(:ics, ics.empty? ? "XXX" : ics.join(", "))
|
137
85
|
end
|
138
86
|
|
139
87
|
def iso?(org)
|
@@ -156,10 +104,14 @@ module IsoDoc
|
|
156
104
|
end
|
157
105
|
|
158
106
|
def docstatus(isoxml, _out)
|
159
|
-
docstatus = isoxml.at(ns("//bibdata/status"))
|
107
|
+
docstatus = isoxml.at(ns("//bibdata/status/stage"))
|
160
108
|
set(:unpublished, true)
|
161
109
|
if docstatus
|
162
|
-
set(:
|
110
|
+
set(:stage, status_print(docstatus.text))
|
111
|
+
i = isoxml&.at(ns("//bibdata/status/substage"))&.text and
|
112
|
+
set(:substage, i)
|
113
|
+
i = isoxml&.at(ns("//bibdata/status/iteration"))&.text and
|
114
|
+
set(:iteration, i)
|
163
115
|
set(:unpublished, unpublished(docstatus.text))
|
164
116
|
end
|
165
117
|
end
|
data/lib/isodoc/version.rb
CHANGED
@@ -1,5 +1,18 @@
|
|
1
1
|
module IsoDoc::WordFunction
|
2
2
|
module Body
|
3
|
+
def anchor_names(docxml)
|
4
|
+
super
|
5
|
+
renumber_footnotes(docxml)
|
6
|
+
end
|
7
|
+
|
8
|
+
# undo merger of seen footnotes
|
9
|
+
def renumber_footnotes(docxml)
|
10
|
+
docxml.xpath(ns("//fn[not(ancestor::table or "\
|
11
|
+
"ancestor::figure)]")).each_with_index do |f, i|
|
12
|
+
f["reference"] = (i + 1).to_s
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
3
16
|
def make_body1(body, _docxml)
|
4
17
|
FileUtils.rm_rf tmpimagedir
|
5
18
|
FileUtils.mkdir tmpimagedir
|
data/spec/isodoc/blocks_spec.rb
CHANGED
@@ -242,6 +242,10 @@ INPUT
|
|
242
242
|
<figure id="figure-B">
|
243
243
|
<pre>A <
|
244
244
|
B</pre>
|
245
|
+
</figure>
|
246
|
+
<figure id="figure-C" unnumbered="true">
|
247
|
+
<pre>A <
|
248
|
+
B</pre>
|
245
249
|
</figure>
|
246
250
|
</foreword></preface>
|
247
251
|
</iso-standard>
|
@@ -264,6 +268,11 @@ B</pre>
|
|
264
268
|
<pre>A <
|
265
269
|
B</pre>
|
266
270
|
<p class="FigureTitle" align="center">Figure 2</p>
|
271
|
+
</div>
|
272
|
+
<div class="figure" id="figure-C">
|
273
|
+
<pre>A <
|
274
|
+
B</pre>
|
275
|
+
<p class="FigureTitle" align="center"/>
|
267
276
|
</div>
|
268
277
|
</div>
|
269
278
|
<p class="zzSTDTitle1"/>
|
@@ -371,6 +380,9 @@ B</pre>
|
|
371
380
|
</example>
|
372
381
|
<example id="samplecode2">
|
373
382
|
<p>Hello</p>
|
383
|
+
</example>
|
384
|
+
<example id="samplecode3" unnumbered="true">
|
385
|
+
<p>Hello</p>
|
374
386
|
</example>
|
375
387
|
</foreword></preface>
|
376
388
|
</iso-standard>
|
@@ -387,6 +399,10 @@ B</pre>
|
|
387
399
|
<p class="example-title">EXAMPLE 2</p>
|
388
400
|
<p>Hello</p>
|
389
401
|
</div>
|
402
|
+
<div id="samplecode3" class="example">
|
403
|
+
<p class="example-title">EXAMPLE</p>
|
404
|
+
<p>Hello</p>
|
405
|
+
</div>
|
390
406
|
</div>
|
391
407
|
<p class="zzSTDTitle1"/>
|
392
408
|
</div>
|
@@ -572,7 +588,7 @@ B</pre>
|
|
572
588
|
expect(IsoDoc::HtmlConvert.new({}).convert("test", <<~"INPUT", true)).to be_equivalent_to <<~"OUTPUT"
|
573
589
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
574
590
|
<preface><foreword>
|
575
|
-
<formula id="_be9158af-7e93-4ee2-90c5-26d31c181934">
|
591
|
+
<formula id="_be9158af-7e93-4ee2-90c5-26d31c181934" unnumbered="true">
|
576
592
|
<stem type="AsciiMath">r = 1 %</stem>
|
577
593
|
<dl id="_e4fe94fe-1cde-49d9-b1ad-743293b7e21d">
|
578
594
|
<dt>
|
@@ -586,6 +602,9 @@ B</pre>
|
|
586
602
|
<p id="_511aaa98-4116-42af-8e5b-c87cdf5bfdc8">[durationUnits] is essentially a duration statement without the "P" prefix. "P" is unnecessary because between "G" and "U" duration is always expressed.</p>
|
587
603
|
</note>
|
588
604
|
</formula>
|
605
|
+
<formula id="_be9158af-7e93-4ee2-90c5-26d31c181935">
|
606
|
+
<stem type="AsciiMath">r = 1 %</stem>
|
607
|
+
</formula>
|
589
608
|
</foreword></preface>
|
590
609
|
</iso-standard>
|
591
610
|
INPUT
|
@@ -593,7 +612,7 @@ B</pre>
|
|
593
612
|
<br/>
|
594
613
|
<div>
|
595
614
|
<h1 class="ForewordTitle">Foreword</h1>
|
596
|
-
<div id="_be9158af-7e93-4ee2-90c5-26d31c181934" class="formula"><p><span class="stem">(#(r = 1 %)#)</span
|
615
|
+
<div id="_be9158af-7e93-4ee2-90c5-26d31c181934" class="formula"><p><span class="stem">(#(r = 1 %)#)</span></p></div><p>where</p><dl id="_e4fe94fe-1cde-49d9-b1ad-743293b7e21d"><dt>
|
597
616
|
<span class="stem">(#(r)#)</span>
|
598
617
|
</dt><dd>
|
599
618
|
<p id="_1b99995d-ff03-40f5-8f2e-ab9665a69b77">is the repeatability limit.</p>
|
@@ -601,8 +620,9 @@ B</pre>
|
|
601
620
|
|
602
621
|
|
603
622
|
<div id="_83083c7a-6c85-43db-a9fa-4d8edd0c9fc0" class="Note"><p><span class="note_label">NOTE</span>  [durationUnits] is essentially a duration statement without the "P" prefix. "P" is unnecessary because between "G" and "U" duration is always expressed.</p></div>
|
604
|
-
</div>
|
605
623
|
|
624
|
+
<div id="_be9158af-7e93-4ee2-90c5-26d31c181935" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (1)</p></div>
|
625
|
+
</div>
|
606
626
|
<p class="zzSTDTitle1"/>
|
607
627
|
</div>
|
608
628
|
</body>
|
@@ -825,7 +845,7 @@ World</p>
|
|
825
845
|
expect(IsoDoc::HtmlConvert.new({}).convert("test", <<~"INPUT", true)).to be_equivalent_to <<~"OUTPUT"
|
826
846
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
827
847
|
<preface><foreword>
|
828
|
-
<requirement id="
|
848
|
+
<requirement id="A" unnumbered="true">
|
829
849
|
<title>A New Requirement</title>
|
830
850
|
<label>/ogc/recommendation/wfs/2</label>
|
831
851
|
<inherit>/ss/584/2015/level/1</inherit>
|
@@ -853,7 +873,7 @@ World</p>
|
|
853
873
|
</description>
|
854
874
|
<measurement-target exclude="false">
|
855
875
|
<p id="_">The measurement target shall be measured as:</p>
|
856
|
-
<formula id="
|
876
|
+
<formula id="B">
|
857
877
|
<stem type="AsciiMath">r/1 = 0</stem>
|
858
878
|
</formula>
|
859
879
|
</measurement-target>
|
@@ -876,7 +896,7 @@ World</p>
|
|
876
896
|
<br/>
|
877
897
|
<div>
|
878
898
|
<h1 class="ForewordTitle">Foreword</h1>
|
879
|
-
<div class="require"><p class="AdmonitionTitle"
|
899
|
+
<div class="require"><p class="AdmonitionTitle"><br/>/ogc/recommendation/wfs/2. A New Requirement</p>
|
880
900
|
|
881
901
|
<div class="requirement-inherit">/ss/584/2015/level/1</div>
|
882
902
|
<div class="requirement-description">
|
@@ -888,7 +908,7 @@ World</p>
|
|
888
908
|
</div>
|
889
909
|
<div class="requirement-measurement-target">
|
890
910
|
<p id="_">The measurement target shall be measured as:</p>
|
891
|
-
<div id="
|
911
|
+
<div id="B" class="formula"><p><span class="stem">(#(r/1 = 0)#)</span>  (1)</p></div>
|
892
912
|
|
893
913
|
|
894
914
|
</div>
|
@@ -70,19 +70,22 @@ RSpec.describe IsoDoc do
|
|
70
70
|
<p><br clear="all" style="mso-special-character:line-break;page-break-before:always"/></p>
|
71
71
|
<div>
|
72
72
|
<h1 class="ForewordTitle">Foreword</h1>
|
73
|
-
<p>A.<a href="#
|
73
|
+
<p>A.<a href="#ftn1" epub:type="footnote"><sup>1</sup></a></p>
|
74
74
|
<p>B.<a href="#ftn2" epub:type="footnote"><sup>2</sup></a></p>
|
75
|
-
<p>C.<a href="#
|
75
|
+
<p>C.<a href="#ftn3" epub:type="footnote"><sup>3</sup></a></p>
|
76
76
|
</div>
|
77
77
|
<p> </p>
|
78
78
|
</div>
|
79
79
|
<p><br clear="all" class="section"/></p>
|
80
80
|
<div class="WordSection3">
|
81
81
|
<p class="zzSTDTitle1"/>
|
82
|
+
<aside id="ftn1">
|
83
|
+
<p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
|
84
|
+
</aside>
|
82
85
|
<aside id="ftn2">
|
83
86
|
<p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
|
84
87
|
</aside>
|
85
|
-
<aside id="
|
88
|
+
<aside id="ftn3">
|
86
89
|
<p id="_1e228e29-baef-4f38-b048-b05a051747e4">Hello! denoted as 15 % (m/m).</p>
|
87
90
|
</aside>
|
88
91
|
</div>
|
@@ -9,7 +9,7 @@ RSpec.describe IsoDoc do
|
|
9
9
|
INPUT
|
10
10
|
expect(Hash[c.info(Nokogiri::XML(<<~"INPUT"), nil).sort]).to be_equivalent_to <<~"OUTPUT"
|
11
11
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
12
|
-
<bibdata type="
|
12
|
+
<bibdata type="standard">
|
13
13
|
<title>The Incredible Mr Ripley</title>
|
14
14
|
<title language="en">Cereals and pulses</title>
|
15
15
|
<uri>URL A</uri>
|
@@ -73,7 +73,11 @@ RSpec.describe IsoDoc do
|
|
73
73
|
</contributor>
|
74
74
|
<language>en</language>
|
75
75
|
<script>Latn</script>
|
76
|
-
<status>
|
76
|
+
<status>
|
77
|
+
<stage>Committee Draft</stage>
|
78
|
+
<substage>Withdrawn</substage>
|
79
|
+
<iteration>2</iteration>
|
80
|
+
</status>
|
77
81
|
<copyright>
|
78
82
|
<from>2016</from>
|
79
83
|
<owner>
|
@@ -82,16 +86,13 @@ RSpec.describe IsoDoc do
|
|
82
86
|
</organization>
|
83
87
|
</owner>
|
84
88
|
</copyright>
|
85
|
-
<
|
86
|
-
|
87
|
-
|
88
|
-
<workgroup number="3">Rice Group</workgroup>
|
89
|
-
<secretariat>GB</secretariat>
|
90
|
-
</editorialgroup>
|
89
|
+
<ext>
|
90
|
+
<doctype>international-standard</doctype>
|
91
|
+
</ext>
|
91
92
|
</bibdata>
|
92
93
|
</iso-standard>
|
93
94
|
INPUT
|
94
|
-
{:accesseddate=>"2012", :activateddate=>"2013", :agency=>"ISO", :authors=>["Barney Rubble", "Fred Flintstone"], :authors_affiliations=>{"Slate Inc., Bedrock"=>["Barney Rubble"], ""=>["Fred Flintstone"]}, :circulateddate=>"2015", :confirmeddate=>"2017", :copieddate=>"2016", :createddate=>"2010–2011", :doc=>"URL E", :docnumber=>"17301-1", :doctitle=>"Cereals and pulses", :doctype=>"International Standard", :docyear=>"2016", :draft=>"0.4", :draftinfo=>" (draft 0.4, 2016-05-01)", :edition=>"2", :
|
95
|
+
{:accesseddate=>"2012", :activateddate=>"2013", :agency=>"ISO", :authors=>["Barney Rubble", "Fred Flintstone"], :authors_affiliations=>{"Slate Inc., Bedrock"=>["Barney Rubble"], ""=>["Fred Flintstone"]}, :circulateddate=>"2015", :confirmeddate=>"2017", :copieddate=>"2016", :createddate=>"2010–2011", :doc=>"URL E", :docnumber=>"17301-1", :doctitle=>"Cereals and pulses", :doctype=>"International Standard", :docyear=>"2016", :draft=>"0.4", :draftinfo=>" (draft 0.4, 2016-05-01)", :edition=>"2", :html=>"URL B", :implementeddate=>"XXX", :issueddate=>"XXX", :iteration=>"2", :obsoleteddate=>"2014", :pdf=>"URL D", :publisheddate=>"2011", :receiveddate=>"XXX", :revdate=>"2016-05-01", :stage=>"Committee draft", :substage=>"Withdrawn", :transmitteddate=>"2020", :unchangeddate=>"2019", :unpublished=>true, :updateddate=>"2018", :url=>"URL A", :xml=>"URL C"}
|
95
96
|
OUTPUT
|
96
97
|
end
|
97
98
|
|
@@ -102,7 +103,7 @@ OUTPUT
|
|
102
103
|
INPUT
|
103
104
|
expect(Hash[c.info(Nokogiri::XML(<<~"INPUT"), nil).sort]).to be_equivalent_to <<~"OUTPUT"
|
104
105
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
105
|
-
<bibdata type="
|
106
|
+
<bibdata type="standard">
|
106
107
|
<title language="fr" format="text/plain">Céréales et légumineuses</ti>
|
107
108
|
<title language="en" format="text/plain">Cereals and pulses</title>
|
108
109
|
<docidentifier>17301-1-3</docidentifier>
|
@@ -127,7 +128,7 @@ OUTPUT
|
|
127
128
|
</contributor>
|
128
129
|
<language>en</language>
|
129
130
|
<script>Latn</script>
|
130
|
-
<status>Published</status>
|
131
|
+
<status><stage>Published</stage></status>
|
131
132
|
<copyright>
|
132
133
|
<from>2016</from>
|
133
134
|
<owner>
|
@@ -143,20 +144,16 @@ OUTPUT
|
|
143
144
|
<relation type="partOf">
|
144
145
|
<docidentifier>IEC 8122</docidentifier>
|
145
146
|
</relation>
|
146
|
-
<
|
147
|
-
|
148
|
-
|
149
|
-
<workgroup number="3" type="GHI">Rice Group</workgroup>
|
150
|
-
</editorialgroup>
|
151
|
-
<ics><code>1.2.3</code></ics>
|
152
|
-
<ics><code>1.2.3</code></ics>
|
147
|
+
<ext>
|
148
|
+
<doctype>international-standard</doctype>
|
149
|
+
</ext>
|
153
150
|
</bibdata><version>
|
154
151
|
<revision-date>2016-05-01</revision-date>
|
155
152
|
<draft>12</draft>
|
156
153
|
</version>
|
157
154
|
</iso-standard>
|
158
155
|
INPUT
|
159
|
-
{:accesseddate=>"XXX", :agency=>"ISO/IEC", :authors=>[], :authors_affiliations=>{}, :circulateddate=>"XXX", :confirmeddate=>"XXX", :copieddate=>"XXX", :createddate=>"XXX", :docnumber=>"17301-1-3", :doctitle=>"Cereals and pulses", :doctype=>"International Standard", :docyear=>"2016", :draft=>"12", :draftinfo=>" (draft 12, 2016-05-01)", :edition=>nil, :
|
156
|
+
{:accesseddate=>"XXX", :agency=>"ISO/IEC", :authors=>[], :authors_affiliations=>{}, :circulateddate=>"XXX", :confirmeddate=>"XXX", :copieddate=>"XXX", :createddate=>"XXX", :docnumber=>"17301-1-3", :doctitle=>"Cereals and pulses", :doctype=>"International Standard", :docyear=>"2016", :draft=>"12", :draftinfo=>" (draft 12, 2016-05-01)", :edition=>nil, :implementeddate=>"XXX", :issueddate=>"XXX", :obsoleteddate=>"XXX", :obsoletes=>"IEC 8121", :obsoletes_part=>"3.1", :partof=>"IEC 8122", :publisheddate=>"XXX", :receiveddate=>"XXX", :revdate=>"2016-05-01", :stage=>"Published", :transmitteddate=>"XXX", :unchangeddate=>"XXX", :unpublished=>false, :updateddate=>"XXX"}
|
160
157
|
OUTPUT
|
161
158
|
end
|
162
159
|
|
data/spec/isodoc/ref_spec.rb
CHANGED
@@ -34,7 +34,10 @@ RSpec.describe IsoDoc do
|
|
34
34
|
</organization>
|
35
35
|
</contributor>
|
36
36
|
<note format="text/plain" reference="1">ISO DATE: Under preparation. (Stage at the time of publication ISO/DIS 16634)</note>
|
37
|
-
<
|
37
|
+
<extent type="part">
|
38
|
+
<referenceFrom>all</referenceFrom>
|
39
|
+
</extent>
|
40
|
+
|
38
41
|
</bibitem>
|
39
42
|
<bibitem id="ISO20483" type="standard">
|
40
43
|
<title format="text/plain">Cereals and pulses</title>
|
data/spec/isodoc/table_spec.rb
CHANGED
@@ -55,6 +55,10 @@ RSpec.describe IsoDoc do
|
|
55
55
|
</dl>
|
56
56
|
<note><p>This is a table about rice</p></note>
|
57
57
|
</table>
|
58
|
+
|
59
|
+
<table id="tableD-2" unnumbered="true">
|
60
|
+
<tbody><tr><td>A</td></tr></tbody>
|
61
|
+
</table>
|
58
62
|
</foreword>
|
59
63
|
</preface>
|
60
64
|
</iso-standard>
|
@@ -114,6 +118,14 @@ RSpec.describe IsoDoc do
|
|
114
118
|
<p><span class="note_label">NOTE</span>  This is a table about rice</p>
|
115
119
|
</div>
|
116
120
|
</table>
|
121
|
+
<p class="TableTitle" align="center"/>
|
122
|
+
<table id="tableD-2" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
|
123
|
+
<tbody>
|
124
|
+
<tr>
|
125
|
+
<td style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">A</td>
|
126
|
+
</tr>
|
127
|
+
</tbody>
|
128
|
+
</table>
|
117
129
|
</div>
|
118
130
|
<p class="zzSTDTitle1"/>
|
119
131
|
</div>
|
data/spec/isodoc/xref_spec.rb
CHANGED
@@ -38,7 +38,7 @@ RSpec.describe IsoDoc do
|
|
38
38
|
</p>
|
39
39
|
</foreword>
|
40
40
|
</preface>
|
41
|
-
</iso-standard
|
41
|
+
</iso-standard>
|
42
42
|
INPUT
|
43
43
|
<div class="WordSection2">
|
44
44
|
<p><br clear="all" style="mso-special-character:line-break;page-break-before:always"/></p>
|
@@ -51,9 +51,21 @@ RSpec.describe IsoDoc do
|
|
51
51
|
OUTPUT
|
52
52
|
end
|
53
53
|
|
54
|
+
it "warns of missing crossreference" do
|
55
|
+
expect { IsoDoc::HtmlConvert.new({}).convert("test", <<~"INPUT", true) }.to output(/No label has been processed for ID N1/).to_stderr
|
56
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
57
|
+
<preface>
|
58
|
+
<foreword>
|
59
|
+
<p>
|
60
|
+
<xref target="N1"/>
|
61
|
+
</preface>
|
62
|
+
</iso-standard>
|
63
|
+
INPUT
|
64
|
+
end
|
65
|
+
|
54
66
|
|
55
67
|
it "cross-references notes" do
|
56
|
-
expect(IsoDoc::HtmlConvert.new({}).convert("test", <<~"INPUT", true)).
|
68
|
+
expect(IsoDoc::HtmlConvert.new({}).convert("test", <<~"INPUT", true)).to be_equivalent_to <<~"OUTPUT"
|
57
69
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
58
70
|
<preface>
|
59
71
|
<foreword>
|
@@ -134,48 +146,48 @@ RSpec.describe IsoDoc do
|
|
134
146
|
</p>
|
135
147
|
</div>
|
136
148
|
<br/>
|
137
|
-
|
149
|
+
<div class="Section3" id="intro">
|
138
150
|
<h1 class="IntroTitle">Introduction</h1>
|
139
151
|
<div id="N1" class="Note">
|
140
152
|
<p><span class="note_label">NOTE</span>  These results are based on a study carried out on three different types of kernel.</p>
|
141
153
|
</div>
|
142
|
-
|
143
|
-
|
144
|
-
|
154
|
+
<div id="xyz"><h2>Preparatory</h2>
|
155
|
+
<div id="N2" class="Note"><p><span class="note_label">NOTE</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
156
|
+
</div>
|
145
157
|
</div>
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
</div>
|
152
|
-
<p>
|
153
|
-
<a href="#N">Note</a>
|
154
|
-
</p>
|
155
|
-
</div>
|
156
|
-
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
158
|
+
<p class="zzSTDTitle1"/>
|
159
|
+
<div id="scope">
|
160
|
+
<h1>1.  Scope</h1>
|
161
|
+
<div id="N" class="Note">
|
162
|
+
<p><span class="note_label">NOTE</span>  These results are based on a study carried out on three different types of kernel.</p>
|
157
163
|
</div>
|
158
|
-
<
|
159
|
-
<
|
160
|
-
|
164
|
+
<p>
|
165
|
+
<a href="#N">Note</a>
|
166
|
+
</p>
|
167
|
+
</div>
|
168
|
+
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
169
|
+
</div>
|
170
|
+
<div id="widgets">
|
171
|
+
<h1>3.  Widgets</h1>
|
172
|
+
<div id="widgets1"><h2>3.1. </h2>
|
161
173
|
<div id="note1" class="Note"><p><span class="note_label">NOTE 1</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
162
174
|
<div id="note2" class="Note"><p><span class="note_label">NOTE 2</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
163
175
|
<p> <a href="#note1">Note 1</a> <a href="#note2">Note 2</a> </p>
|
164
176
|
|
165
177
|
</div>
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
178
|
+
</div>
|
179
|
+
<br/>
|
180
|
+
<div id="annex1" class="Section3">
|
181
|
+
<div id="annex1a"><h2>A.1. </h2>
|
170
182
|
<div id="AN" class="Note"><p><span class="note_label">NOTE</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
171
183
|
</div>
|
172
|
-
|
184
|
+
<div id="annex1b"><h2>A.2. </h2>
|
173
185
|
<div id="Anote1" class="Note"><p><span class="note_label">NOTE 1</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
174
186
|
<div id="Anote2" class="Note"><p><span class="note_label">NOTE 2</span>  These results are based on a study carried out on three different types of kernel.</p></div>
|
175
187
|
</div>
|
176
|
-
</div>
|
177
188
|
</div>
|
178
|
-
</
|
189
|
+
</div>
|
190
|
+
</body>
|
179
191
|
</html>
|
180
192
|
OUTPUT
|
181
193
|
end
|
@@ -202,7 +214,7 @@ RSpec.describe IsoDoc do
|
|
202
214
|
<image src="rice_images/rice_image1.png" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" imagetype="PNG"/>
|
203
215
|
</figure>
|
204
216
|
<clause id="xyz"><title>Preparatory</title>
|
205
|
-
<figure id="N2">
|
217
|
+
<figure id="N2" unnumbered="true">
|
206
218
|
<name>Split-it-right sample divider</name>
|
207
219
|
<image src="rice_images/rice_image1.png" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" imagetype="PNG"/>
|
208
220
|
</figure>
|
@@ -240,7 +252,7 @@ RSpec.describe IsoDoc do
|
|
240
252
|
</figure>
|
241
253
|
</clause>
|
242
254
|
<clause id="annex1b">
|
243
|
-
<figure id="Anote1">
|
255
|
+
<figure id="Anote1" unnumbered="true">
|
244
256
|
<name>Split-it-right sample divider</name>
|
245
257
|
<image src="rice_images/rice_image1.png" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" imagetype="PNG"/>
|
246
258
|
</figure>
|
@@ -258,13 +270,13 @@ RSpec.describe IsoDoc do
|
|
258
270
|
<h1 class="ForewordTitle">Foreword</h1>
|
259
271
|
<p>
|
260
272
|
<a href="#N1">Figure 1</a>
|
261
|
-
<a href="#N2">Figure
|
262
|
-
<a href="#N">Figure
|
263
|
-
<a href="#note1">Figure
|
264
|
-
<a href="#note2">Figure
|
273
|
+
<a href="#N2">Figure (??)</a>
|
274
|
+
<a href="#N">Figure 2</a>
|
275
|
+
<a href="#note1">Figure 3</a>
|
276
|
+
<a href="#note2">Figure 4</a>
|
265
277
|
<a href="#AN">Figure A.1</a>
|
266
|
-
<a href="#Anote1">Figure
|
267
|
-
<a href="#Anote2">Figure A.
|
278
|
+
<a href="#Anote1">Figure (??)</a>
|
279
|
+
<a href="#Anote2">Figure A.2</a>
|
268
280
|
</p>
|
269
281
|
</div>
|
270
282
|
<br/>
|
@@ -278,7 +290,7 @@ RSpec.describe IsoDoc do
|
|
278
290
|
<div id="N2" class="figure">
|
279
291
|
|
280
292
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
281
|
-
<p class="FigureTitle" align="center">
|
293
|
+
<p class="FigureTitle" align="center">Split-it-right sample divider</p></div>
|
282
294
|
</div>
|
283
295
|
</div>
|
284
296
|
<p class="zzSTDTitle1"/>
|
@@ -287,9 +299,9 @@ RSpec.describe IsoDoc do
|
|
287
299
|
<div id="N" class="figure">
|
288
300
|
|
289
301
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
290
|
-
<p class="FigureTitle" align="center">Figure
|
302
|
+
<p class="FigureTitle" align="center">Figure 2 — Split-it-right sample divider</p></div>
|
291
303
|
<p>
|
292
|
-
<a href="#N">Figure
|
304
|
+
<a href="#N">Figure 2</a>
|
293
305
|
</p>
|
294
306
|
</div>
|
295
307
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -300,12 +312,12 @@ RSpec.describe IsoDoc do
|
|
300
312
|
<div id="note1" class="figure">
|
301
313
|
|
302
314
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
303
|
-
<p class="FigureTitle" align="center">Figure
|
315
|
+
<p class="FigureTitle" align="center">Figure 3 — Split-it-right sample divider</p></div>
|
304
316
|
<div id="note2" class="figure">
|
305
317
|
|
306
318
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
307
|
-
<p class="FigureTitle" align="center">Figure
|
308
|
-
<p> <a href="#note1">Figure
|
319
|
+
<p class="FigureTitle" align="center">Figure 4 — Split-it-right sample divider</p></div>
|
320
|
+
<p> <a href="#note1">Figure 3</a> <a href="#note2">Figure 4</a> </p>
|
309
321
|
</div>
|
310
322
|
</div>
|
311
323
|
<br/>
|
@@ -320,11 +332,11 @@ RSpec.describe IsoDoc do
|
|
320
332
|
<div id="Anote1" class="figure">
|
321
333
|
|
322
334
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
323
|
-
<p class="FigureTitle" align="center">
|
335
|
+
<p class="FigureTitle" align="center">Split-it-right sample divider</p></div>
|
324
336
|
<div id="Anote2" class="figure">
|
325
337
|
|
326
338
|
<img src="rice_images/rice_image1.png" height="auto" width="auto"/>
|
327
|
-
<p class="FigureTitle" align="center">Figure A.
|
339
|
+
<p class="FigureTitle" align="center">Figure A.2 — Split-it-right sample divider</p></div>
|
328
340
|
</div>
|
329
341
|
</div>
|
330
342
|
</div>
|
@@ -465,7 +477,7 @@ RSpec.describe IsoDoc do
|
|
465
477
|
<p>Hello</p>
|
466
478
|
</example>
|
467
479
|
<clause id="xyz"><title>Preparatory</title>
|
468
|
-
<example id="N2">
|
480
|
+
<example id="N2" unnumbered="true">
|
469
481
|
<p>Hello</p>
|
470
482
|
</example>
|
471
483
|
</clause>
|
@@ -484,7 +496,7 @@ RSpec.describe IsoDoc do
|
|
484
496
|
<example id="note1">
|
485
497
|
<p>Hello</p>
|
486
498
|
</example>
|
487
|
-
<example id="note2">
|
499
|
+
<example id="note2" unnumbered="true">
|
488
500
|
<p>Hello</p>
|
489
501
|
</example>
|
490
502
|
<p> <xref target="note1"/> <xref target="note2"/> </p>
|
@@ -498,7 +510,7 @@ RSpec.describe IsoDoc do
|
|
498
510
|
</example>
|
499
511
|
</clause>
|
500
512
|
<clause id="annex1b">
|
501
|
-
<example id="Anote1">
|
513
|
+
<example id="Anote1" unnumbered="true">
|
502
514
|
<p>Hello</p>
|
503
515
|
</example>
|
504
516
|
<example id="Anote2">
|
@@ -514,13 +526,13 @@ RSpec.describe IsoDoc do
|
|
514
526
|
<h1 class="ForewordTitle">Foreword</h1>
|
515
527
|
<p>
|
516
528
|
<a href="#N1">Introduction, Example</a>
|
517
|
-
<a href="#N2">Preparatory, Example</a>
|
529
|
+
<a href="#N2">Preparatory, Example (??)</a>
|
518
530
|
<a href="#N">Clause 1, Example</a>
|
519
531
|
<a href="#note1">Clause 3.1, Example 1</a>
|
520
|
-
<a href="#note2">Clause 3.1, Example
|
532
|
+
<a href="#note2">Clause 3.1, Example (??)</a>
|
521
533
|
<a href="#AN">Annex A.1, Example</a>
|
522
|
-
<a href="#Anote1">Annex A.2, Example
|
523
|
-
<a href="#Anote2">Annex A.2, Example
|
534
|
+
<a href="#Anote1">Annex A.2, Example (??)</a>
|
535
|
+
<a href="#Anote2">Annex A.2, Example 1</a>
|
524
536
|
</p>
|
525
537
|
</div>
|
526
538
|
<br/>
|
@@ -553,10 +565,10 @@ RSpec.describe IsoDoc do
|
|
553
565
|
<div id="note1" class="example"><p class="example-title">EXAMPLE 1</p>
|
554
566
|
<p>Hello</p>
|
555
567
|
</div>
|
556
|
-
<div id="note2" class="example"><p class="example-title">EXAMPLE
|
568
|
+
<div id="note2" class="example"><p class="example-title">EXAMPLE</p>
|
557
569
|
<p>Hello</p>
|
558
570
|
</div>
|
559
|
-
<p> <a href="#note1">Example 1</a> <a href="#note2">Example
|
571
|
+
<p> <a href="#note1">Example 1</a> <a href="#note2">Example (??)</a> </p>
|
560
572
|
</div>
|
561
573
|
</div>
|
562
574
|
<br/>
|
@@ -567,10 +579,10 @@ RSpec.describe IsoDoc do
|
|
567
579
|
</div>
|
568
580
|
</div>
|
569
581
|
<div id="annex1b"><h2>A.2. </h2>
|
570
|
-
<div id="Anote1" class="example"><p class="example-title">EXAMPLE
|
582
|
+
<div id="Anote1" class="example"><p class="example-title">EXAMPLE</p>
|
571
583
|
<p>Hello</p>
|
572
584
|
</div>
|
573
|
-
<div id="Anote2" class="example"><p class="example-title">EXAMPLE
|
585
|
+
<div id="Anote2" class="example"><p class="example-title">EXAMPLE 1</p>
|
574
586
|
<p>Hello</p>
|
575
587
|
</div>
|
576
588
|
</div>
|
@@ -602,7 +614,7 @@ RSpec.describe IsoDoc do
|
|
602
614
|
<stem type="AsciiMath">r = 1 %</stem>
|
603
615
|
</formula>
|
604
616
|
<clause id="xyz"><title>Preparatory</title>
|
605
|
-
<formula id="N2">
|
617
|
+
<formula id="N2" unnumbered="true">
|
606
618
|
<stem type="AsciiMath">r = 1 %</stem>
|
607
619
|
</formula>
|
608
620
|
</clause>
|
@@ -635,7 +647,7 @@ RSpec.describe IsoDoc do
|
|
635
647
|
</formula>
|
636
648
|
</clause>
|
637
649
|
<clause id="annex1b">
|
638
|
-
<formula id="Anote1">
|
650
|
+
<formula id="Anote1" unnumbered="true">
|
639
651
|
<stem type="AsciiMath">r = 1 %</stem>
|
640
652
|
</formula>
|
641
653
|
<formula id="Anote2">
|
@@ -651,13 +663,13 @@ RSpec.describe IsoDoc do
|
|
651
663
|
<h1 class="ForewordTitle">Foreword</h1>
|
652
664
|
<p>
|
653
665
|
<a href="#N1">Introduction, Formula (1)</a>
|
654
|
-
<a href="#N2">Preparatory, Formula (
|
655
|
-
<a href="#N">Clause 1, Formula (
|
656
|
-
<a href="#note1">Clause 3.1, Formula (
|
657
|
-
<a href="#note2">Clause 3.1, Formula (
|
666
|
+
<a href="#N2">Preparatory, Formula ((??))</a>
|
667
|
+
<a href="#N">Clause 1, Formula (2)</a>
|
668
|
+
<a href="#note1">Clause 3.1, Formula (3)</a>
|
669
|
+
<a href="#note2">Clause 3.1, Formula (4)</a>
|
658
670
|
<a href="#AN">Annex A.1, Formula (A.1)</a>
|
659
|
-
<a href="#Anote1">Annex A.2, Formula (
|
660
|
-
<a href="#Anote2">Annex A.2, Formula (A.
|
671
|
+
<a href="#Anote1">Annex A.2, Formula ((??))</a>
|
672
|
+
<a href="#Anote2">Annex A.2, Formula (A.2)</a>
|
661
673
|
</p>
|
662
674
|
</div>
|
663
675
|
<br/>
|
@@ -665,15 +677,15 @@ RSpec.describe IsoDoc do
|
|
665
677
|
<h1 class="IntroTitle">Introduction</h1>
|
666
678
|
<div id="N1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (1)</p></div>
|
667
679
|
<div id="xyz"><h2>Preparatory</h2>
|
668
|
-
<div id="N2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span
|
680
|
+
<div id="N2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span></p></div>
|
669
681
|
</div>
|
670
682
|
</div>
|
671
683
|
<p class="zzSTDTitle1"/>
|
672
684
|
<div id="scope">
|
673
685
|
<h1>1.  Scope</h1>
|
674
|
-
<div id="N" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (
|
686
|
+
<div id="N" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (2)</p></div>
|
675
687
|
<p>
|
676
|
-
<a href="#N">Formula (
|
688
|
+
<a href="#N">Formula (2)</a>
|
677
689
|
</p>
|
678
690
|
</div>
|
679
691
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -681,9 +693,9 @@ RSpec.describe IsoDoc do
|
|
681
693
|
<div id="widgets">
|
682
694
|
<h1>3.  Widgets</h1>
|
683
695
|
<div id="widgets1"><h2>3.1. </h2>
|
684
|
-
<div id="note1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (
|
685
|
-
<div id="note2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (
|
686
|
-
<p> <a href="#note1">Formula (
|
696
|
+
<div id="note1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (3)</p></div>
|
697
|
+
<div id="note2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (4)</p></div>
|
698
|
+
<p> <a href="#note1">Formula (3)</a> <a href="#note2">Formula (4)</a> </p>
|
687
699
|
</div>
|
688
700
|
</div>
|
689
701
|
<br/>
|
@@ -692,8 +704,8 @@ RSpec.describe IsoDoc do
|
|
692
704
|
<div id="AN" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (A.1)</p></div>
|
693
705
|
</div>
|
694
706
|
<div id="annex1b"><h2>A.2. </h2>
|
695
|
-
<div id="Anote1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span
|
696
|
-
<div id="Anote2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (A.
|
707
|
+
<div id="Anote1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span></p></div>
|
708
|
+
<div id="Anote2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>  (A.2)</p></div>
|
697
709
|
</div>
|
698
710
|
</div>
|
699
711
|
</div>
|
@@ -723,7 +735,7 @@ RSpec.describe IsoDoc do
|
|
723
735
|
<stem type="AsciiMath">r = 1 %</stem>
|
724
736
|
</requirement>
|
725
737
|
<clause id="xyz"><title>Preparatory</title>
|
726
|
-
<requirement id="N2">
|
738
|
+
<requirement id="N2" unnumbered="true">
|
727
739
|
<stem type="AsciiMath">r = 1 %</stem>
|
728
740
|
</requirement>
|
729
741
|
</clause>
|
@@ -756,7 +768,7 @@ RSpec.describe IsoDoc do
|
|
756
768
|
</requirement>
|
757
769
|
</clause>
|
758
770
|
<clause id="annex1b">
|
759
|
-
<requirement id="Anote1">
|
771
|
+
<requirement id="Anote1" unnumbered="true">
|
760
772
|
<stem type="AsciiMath">r = 1 %</stem>
|
761
773
|
</requirement>
|
762
774
|
<requirement id="Anote2">
|
@@ -772,13 +784,13 @@ RSpec.describe IsoDoc do
|
|
772
784
|
<h1 class="ForewordTitle">Foreword</h1>
|
773
785
|
<p>
|
774
786
|
<a href="#N1">Introduction, Requirement 1</a>
|
775
|
-
<a href="#N2">Preparatory, Requirement
|
776
|
-
<a href="#N">Clause 1, Requirement
|
777
|
-
<a href="#note1">Clause 3.1, Requirement
|
778
|
-
<a href="#note2">Clause 3.1, Requirement
|
787
|
+
<a href="#N2">Preparatory, Requirement (??)</a>
|
788
|
+
<a href="#N">Clause 1, Requirement 2</a>
|
789
|
+
<a href="#note1">Clause 3.1, Requirement 3</a>
|
790
|
+
<a href="#note2">Clause 3.1, Requirement 4</a>
|
779
791
|
<a href="#AN">Annex A.1, Requirement A.1</a>
|
780
|
-
<a href="#Anote1">Annex A.2, Requirement
|
781
|
-
<a href="#Anote2">Annex A.2, Requirement A.
|
792
|
+
<a href="#Anote1">Annex A.2, Requirement (??)</a>
|
793
|
+
<a href="#Anote2">Annex A.2, Requirement A.2</a>
|
782
794
|
</p>
|
783
795
|
</div>
|
784
796
|
<br/>
|
@@ -788,7 +800,7 @@ RSpec.describe IsoDoc do
|
|
788
800
|
<span class="stem">(#(r = 1 %)#)</span>
|
789
801
|
</div>
|
790
802
|
<div id="xyz"><h2>Preparatory</h2>
|
791
|
-
<div class="require"><p class="AdmonitionTitle"
|
803
|
+
<div class="require"><p class="AdmonitionTitle"/>
|
792
804
|
<span class="stem">(#(r = 1 %)#)</span>
|
793
805
|
</div>
|
794
806
|
</div>
|
@@ -796,11 +808,11 @@ RSpec.describe IsoDoc do
|
|
796
808
|
<p class="zzSTDTitle1"/>
|
797
809
|
<div id="scope">
|
798
810
|
<h1>1.  Scope</h1>
|
799
|
-
<div class="require"><p class="AdmonitionTitle">Requirement
|
811
|
+
<div class="require"><p class="AdmonitionTitle">Requirement 2:</p>
|
800
812
|
<span class="stem">(#(r = 1 %)#)</span>
|
801
813
|
</div>
|
802
814
|
<p>
|
803
|
-
<a href="#N">Requirement
|
815
|
+
<a href="#N">Requirement 2</a>
|
804
816
|
</p>
|
805
817
|
</div>
|
806
818
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -808,13 +820,13 @@ RSpec.describe IsoDoc do
|
|
808
820
|
<div id="widgets">
|
809
821
|
<h1>3.  Widgets</h1>
|
810
822
|
<div id="widgets1"><h2>3.1. </h2>
|
811
|
-
<div class="require"><p class="AdmonitionTitle">Requirement
|
823
|
+
<div class="require"><p class="AdmonitionTitle">Requirement 3:</p>
|
812
824
|
<span class="stem">(#(r = 1 %)#)</span>
|
813
825
|
</div>
|
814
|
-
<div class="require"><p class="AdmonitionTitle">Requirement
|
826
|
+
<div class="require"><p class="AdmonitionTitle">Requirement 4:</p>
|
815
827
|
<span class="stem">(#(r = 1 %)#)</span>
|
816
828
|
</div>
|
817
|
-
<p> <a href="#note1">Requirement
|
829
|
+
<p> <a href="#note1">Requirement 3</a> <a href="#note2">Requirement 4</a> </p>
|
818
830
|
</div>
|
819
831
|
</div>
|
820
832
|
<br/>
|
@@ -825,10 +837,10 @@ RSpec.describe IsoDoc do
|
|
825
837
|
</div>
|
826
838
|
</div>
|
827
839
|
<div id="annex1b"><h2>A.2. </h2>
|
828
|
-
<div class="require"><p class="AdmonitionTitle"
|
840
|
+
<div class="require"><p class="AdmonitionTitle"/>
|
829
841
|
<span class="stem">(#(r = 1 %)#)</span>
|
830
842
|
</div>
|
831
|
-
<div class="require"><p class="AdmonitionTitle">Requirement A.
|
843
|
+
<div class="require"><p class="AdmonitionTitle">Requirement A.2:</p>
|
832
844
|
<span class="stem">(#(r = 1 %)#)</span>
|
833
845
|
</div>
|
834
846
|
</div>
|
@@ -860,7 +872,7 @@ OUTPUT
|
|
860
872
|
<stem type="AsciiMath">r = 1 %</stem>
|
861
873
|
</recommendation>
|
862
874
|
<clause id="xyz"><title>Preparatory</title>
|
863
|
-
<recommendation id="N2">
|
875
|
+
<recommendation id="N2" unnumbered="true">
|
864
876
|
<stem type="AsciiMath">r = 1 %</stem>
|
865
877
|
</recommendation>
|
866
878
|
</clause>
|
@@ -893,7 +905,7 @@ OUTPUT
|
|
893
905
|
</recommendation>
|
894
906
|
</clause>
|
895
907
|
<clause id="annex1b">
|
896
|
-
<recommendation id="Anote1">
|
908
|
+
<recommendation id="Anote1" unnumbered="true">
|
897
909
|
<stem type="AsciiMath">r = 1 %</stem>
|
898
910
|
</recommendation>
|
899
911
|
<recommendation id="Anote2">
|
@@ -909,13 +921,13 @@ OUTPUT
|
|
909
921
|
<h1 class="ForewordTitle">Foreword</h1>
|
910
922
|
<p>
|
911
923
|
<a href="#N1">Introduction, Recommendation 1</a>
|
912
|
-
<a href="#N2">Preparatory, Recommendation
|
913
|
-
<a href="#N">Clause 1, Recommendation
|
914
|
-
<a href="#note1">Clause 3.1, Recommendation
|
915
|
-
<a href="#note2">Clause 3.1, Recommendation
|
924
|
+
<a href="#N2">Preparatory, Recommendation (??)</a>
|
925
|
+
<a href="#N">Clause 1, Recommendation 2</a>
|
926
|
+
<a href="#note1">Clause 3.1, Recommendation 3</a>
|
927
|
+
<a href="#note2">Clause 3.1, Recommendation 4</a>
|
916
928
|
<a href="#AN">Annex A.1, Recommendation A.1</a>
|
917
|
-
<a href="#Anote1">Annex A.2, Recommendation
|
918
|
-
<a href="#Anote2">Annex A.2, Recommendation A.
|
929
|
+
<a href="#Anote1">Annex A.2, Recommendation (??)</a>
|
930
|
+
<a href="#Anote2">Annex A.2, Recommendation A.2</a>
|
919
931
|
</p>
|
920
932
|
</div>
|
921
933
|
<br/>
|
@@ -925,7 +937,7 @@ OUTPUT
|
|
925
937
|
<span class="stem">(#(r = 1 %)#)</span>
|
926
938
|
</div>
|
927
939
|
<div id="xyz"><h2>Preparatory</h2>
|
928
|
-
<div class="recommend"><p class="AdmonitionTitle"
|
940
|
+
<div class="recommend"><p class="AdmonitionTitle"/>
|
929
941
|
<span class="stem">(#(r = 1 %)#)</span>
|
930
942
|
</div>
|
931
943
|
</div>
|
@@ -933,11 +945,11 @@ OUTPUT
|
|
933
945
|
<p class="zzSTDTitle1"/>
|
934
946
|
<div id="scope">
|
935
947
|
<h1>1.  Scope</h1>
|
936
|
-
<div class="recommend"><p class="AdmonitionTitle">Recommendation
|
948
|
+
<div class="recommend"><p class="AdmonitionTitle">Recommendation 2:</p>
|
937
949
|
<span class="stem">(#(r = 1 %)#)</span>
|
938
950
|
</div>
|
939
951
|
<p>
|
940
|
-
<a href="#N">Recommendation
|
952
|
+
<a href="#N">Recommendation 2</a>
|
941
953
|
</p>
|
942
954
|
</div>
|
943
955
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -945,13 +957,13 @@ OUTPUT
|
|
945
957
|
<div id="widgets">
|
946
958
|
<h1>3.  Widgets</h1>
|
947
959
|
<div id="widgets1"><h2>3.1. </h2>
|
948
|
-
<div class="recommend"><p class="AdmonitionTitle">Recommendation
|
960
|
+
<div class="recommend"><p class="AdmonitionTitle">Recommendation 3:</p>
|
949
961
|
<span class="stem">(#(r = 1 %)#)</span>
|
950
962
|
</div>
|
951
|
-
<div class="recommend"><p class="AdmonitionTitle">Recommendation
|
963
|
+
<div class="recommend"><p class="AdmonitionTitle">Recommendation 4:</p>
|
952
964
|
<span class="stem">(#(r = 1 %)#)</span>
|
953
965
|
</div>
|
954
|
-
<p> <a href="#note1">Recommendation
|
966
|
+
<p> <a href="#note1">Recommendation 3</a> <a href="#note2">Recommendation 4</a> </p>
|
955
967
|
</div>
|
956
968
|
</div>
|
957
969
|
<br/>
|
@@ -962,10 +974,10 @@ OUTPUT
|
|
962
974
|
</div>
|
963
975
|
</div>
|
964
976
|
<div id="annex1b"><h2>A.2. </h2>
|
965
|
-
<div class="recommend"><p class="AdmonitionTitle"
|
977
|
+
<div class="recommend"><p class="AdmonitionTitle"/>
|
966
978
|
<span class="stem">(#(r = 1 %)#)</span>
|
967
979
|
</div>
|
968
|
-
<div class="recommend"><p class="AdmonitionTitle">Recommendation A.
|
980
|
+
<div class="recommend"><p class="AdmonitionTitle">Recommendation A.2:</p>
|
969
981
|
<span class="stem">(#(r = 1 %)#)</span>
|
970
982
|
</div>
|
971
983
|
</div>
|
@@ -997,7 +1009,7 @@ OUTPUT
|
|
997
1009
|
<stem type="AsciiMath">r = 1 %</stem>
|
998
1010
|
</permission>
|
999
1011
|
<clause id="xyz"><title>Preparatory</title>
|
1000
|
-
<permission id="N2">
|
1012
|
+
<permission id="N2" unnumbered="true">
|
1001
1013
|
<stem type="AsciiMath">r = 1 %</stem>
|
1002
1014
|
</permission>
|
1003
1015
|
</clause>
|
@@ -1030,7 +1042,7 @@ OUTPUT
|
|
1030
1042
|
</permission>
|
1031
1043
|
</clause>
|
1032
1044
|
<clause id="annex1b">
|
1033
|
-
<permission id="Anote1">
|
1045
|
+
<permission id="Anote1" unnumbered="true">
|
1034
1046
|
<stem type="AsciiMath">r = 1 %</stem>
|
1035
1047
|
</permission>
|
1036
1048
|
<permission id="Anote2">
|
@@ -1046,13 +1058,13 @@ OUTPUT
|
|
1046
1058
|
<h1 class="ForewordTitle">Foreword</h1>
|
1047
1059
|
<p>
|
1048
1060
|
<a href="#N1">Introduction, Permission 1</a>
|
1049
|
-
<a href="#N2">Preparatory, Permission
|
1050
|
-
<a href="#N">Clause 1, Permission
|
1051
|
-
<a href="#note1">Clause 3.1, Permission
|
1052
|
-
<a href="#note2">Clause 3.1, Permission
|
1061
|
+
<a href="#N2">Preparatory, Permission (??)</a>
|
1062
|
+
<a href="#N">Clause 1, Permission 2</a>
|
1063
|
+
<a href="#note1">Clause 3.1, Permission 3</a>
|
1064
|
+
<a href="#note2">Clause 3.1, Permission 4</a>
|
1053
1065
|
<a href="#AN">Annex A.1, Permission A.1</a>
|
1054
|
-
<a href="#Anote1">Annex A.2, Permission
|
1055
|
-
<a href="#Anote2">Annex A.2, Permission A.
|
1066
|
+
<a href="#Anote1">Annex A.2, Permission (??)</a>
|
1067
|
+
<a href="#Anote2">Annex A.2, Permission A.2</a>
|
1056
1068
|
</p>
|
1057
1069
|
</div>
|
1058
1070
|
<br/>
|
@@ -1062,7 +1074,7 @@ OUTPUT
|
|
1062
1074
|
<span class="stem">(#(r = 1 %)#)</span>
|
1063
1075
|
</div>
|
1064
1076
|
<div id="xyz"><h2>Preparatory</h2>
|
1065
|
-
<div class="permission"><p class="AdmonitionTitle"
|
1077
|
+
<div class="permission"><p class="AdmonitionTitle"/>
|
1066
1078
|
<span class="stem">(#(r = 1 %)#)</span>
|
1067
1079
|
</div>
|
1068
1080
|
</div>
|
@@ -1070,11 +1082,11 @@ OUTPUT
|
|
1070
1082
|
<p class="zzSTDTitle1"/>
|
1071
1083
|
<div id="scope">
|
1072
1084
|
<h1>1.  Scope</h1>
|
1073
|
-
<div class="permission"><p class="AdmonitionTitle">Permission
|
1085
|
+
<div class="permission"><p class="AdmonitionTitle">Permission 2:</p>
|
1074
1086
|
<span class="stem">(#(r = 1 %)#)</span>
|
1075
1087
|
</div>
|
1076
1088
|
<p>
|
1077
|
-
<a href="#N">Permission
|
1089
|
+
<a href="#N">Permission 2</a>
|
1078
1090
|
</p>
|
1079
1091
|
</div>
|
1080
1092
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -1082,13 +1094,13 @@ OUTPUT
|
|
1082
1094
|
<div id="widgets">
|
1083
1095
|
<h1>3.  Widgets</h1>
|
1084
1096
|
<div id="widgets1"><h2>3.1. </h2>
|
1085
|
-
<div class="permission"><p class="AdmonitionTitle">Permission
|
1097
|
+
<div class="permission"><p class="AdmonitionTitle">Permission 3:</p>
|
1086
1098
|
<span class="stem">(#(r = 1 %)#)</span>
|
1087
1099
|
</div>
|
1088
|
-
<div class="permission"><p class="AdmonitionTitle">Permission
|
1100
|
+
<div class="permission"><p class="AdmonitionTitle">Permission 4:</p>
|
1089
1101
|
<span class="stem">(#(r = 1 %)#)</span>
|
1090
1102
|
</div>
|
1091
|
-
<p> <a href="#note1">Permission
|
1103
|
+
<p> <a href="#note1">Permission 3</a> <a href="#note2">Permission 4</a> </p>
|
1092
1104
|
</div>
|
1093
1105
|
</div>
|
1094
1106
|
<br/>
|
@@ -1099,10 +1111,10 @@ OUTPUT
|
|
1099
1111
|
</div>
|
1100
1112
|
</div>
|
1101
1113
|
<div id="annex1b"><h2>A.2. </h2>
|
1102
|
-
<div class="permission"><p class="AdmonitionTitle"
|
1114
|
+
<div class="permission"><p class="AdmonitionTitle"/>
|
1103
1115
|
<span class="stem">(#(r = 1 %)#)</span>
|
1104
1116
|
</div>
|
1105
|
-
<div class="permission"><p class="AdmonitionTitle">Permission A.
|
1117
|
+
<div class="permission"><p class="AdmonitionTitle">Permission A.2:</p>
|
1106
1118
|
<span class="stem">(#(r = 1 %)#)</span>
|
1107
1119
|
</div>
|
1108
1120
|
</div>
|
@@ -1240,7 +1252,7 @@ OUTPUT
|
|
1240
1252
|
</tbody>
|
1241
1253
|
</table>
|
1242
1254
|
<clause id="xyz"><title>Preparatory</title>
|
1243
|
-
<table id="N2">
|
1255
|
+
<table id="N2" unnumbered="true">
|
1244
1256
|
<name>Repeatability and reproducibility of husked rice yield</name>
|
1245
1257
|
<tbody>
|
1246
1258
|
<tr>
|
@@ -1308,7 +1320,7 @@ OUTPUT
|
|
1308
1320
|
</table>
|
1309
1321
|
</clause>
|
1310
1322
|
<clause id="annex1b">
|
1311
|
-
<table id="Anote1">
|
1323
|
+
<table id="Anote1" unnumbered="true">
|
1312
1324
|
<name>Repeatability and reproducibility of husked rice yield</name>
|
1313
1325
|
<tbody>
|
1314
1326
|
<tr>
|
@@ -1338,13 +1350,13 @@ OUTPUT
|
|
1338
1350
|
<h1 class="ForewordTitle">Foreword</h1>
|
1339
1351
|
<p>
|
1340
1352
|
<a href="#N1">Table 1</a>
|
1341
|
-
<a href="#N2">Table
|
1342
|
-
<a href="#N">Table
|
1343
|
-
<a href="#note1">Table
|
1344
|
-
<a href="#note2">Table
|
1353
|
+
<a href="#N2">Table (??)</a>
|
1354
|
+
<a href="#N">Table 2</a>
|
1355
|
+
<a href="#note1">Table 3</a>
|
1356
|
+
<a href="#note2">Table 4</a>
|
1345
1357
|
<a href="#AN">Table A.1</a>
|
1346
|
-
<a href="#Anote1">Table
|
1347
|
-
<a href="#Anote2">Table A.
|
1358
|
+
<a href="#Anote1">Table (??)</a>
|
1359
|
+
<a href="#Anote2">Table A.2</a>
|
1348
1360
|
</p>
|
1349
1361
|
</div>
|
1350
1362
|
<br/>
|
@@ -1361,14 +1373,14 @@ OUTPUT
|
|
1361
1373
|
</tbody>
|
1362
1374
|
</table>
|
1363
1375
|
<div id="xyz"><h2>Preparatory</h2>
|
1364
|
-
<p class="TableTitle" align="center">
|
1376
|
+
<p class="TableTitle" align="center">Repeatability and reproducibility of husked rice yield</p><table id="N2" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1365
1377
|
</div>
|
1366
1378
|
</div>
|
1367
1379
|
<p class="zzSTDTitle1"/>
|
1368
1380
|
<div id="scope">
|
1369
1381
|
<h1>1.  Scope</h1>
|
1370
1382
|
<p class="TableTitle" align="center">
|
1371
|
-
Table
|
1383
|
+
Table 2 — Repeatability and reproducibility of husked rice yield
|
1372
1384
|
</p>
|
1373
1385
|
<table id="N" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
|
1374
1386
|
<tbody>
|
@@ -1380,7 +1392,7 @@ OUTPUT
|
|
1380
1392
|
</tbody>
|
1381
1393
|
</table>
|
1382
1394
|
<p>
|
1383
|
-
<a href="#N">Table
|
1395
|
+
<a href="#N">Table 2</a>
|
1384
1396
|
</p>
|
1385
1397
|
</div>
|
1386
1398
|
<div id="terms"><h1>2.  Terms and definitions</h1><p>No terms and definitions are listed in this document.</p>
|
@@ -1388,9 +1400,9 @@ OUTPUT
|
|
1388
1400
|
<div id="widgets">
|
1389
1401
|
<h1>3.  Widgets</h1>
|
1390
1402
|
<div id="widgets1"><h2>3.1. </h2>
|
1391
|
-
<p class="TableTitle" align="center">Table
|
1392
|
-
<p class="TableTitle" align="center">Table
|
1393
|
-
<p> <a href="#note1">Table
|
1403
|
+
<p class="TableTitle" align="center">Table 3 — Repeatability and reproducibility of husked rice yield</p><table id="note1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1404
|
+
<p class="TableTitle" align="center">Table 4 — Repeatability and reproducibility of husked rice yield</p><table id="note2" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1405
|
+
<p> <a href="#note1">Table 3</a> <a href="#note2">Table 4</a> </p>
|
1394
1406
|
</div>
|
1395
1407
|
</div>
|
1396
1408
|
<br/>
|
@@ -1399,8 +1411,8 @@ OUTPUT
|
|
1399
1411
|
<p class="TableTitle" align="center">Table A.1 — Repeatability and reproducibility of husked rice yield</p><table id="AN" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1400
1412
|
</div>
|
1401
1413
|
<div id="annex1b"><h2>A.2. </h2>
|
1402
|
-
<p class="TableTitle" align="center">
|
1403
|
-
<p class="TableTitle" align="center">Table A.
|
1414
|
+
<p class="TableTitle" align="center">Repeatability and reproducibility of husked rice yield</p><table id="Anote1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1415
|
+
<p class="TableTitle" align="center">Table A.2 — Repeatability and reproducibility of husked rice yield</p><table id="Anote2" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Number of laboratories retained after eliminating outliers</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">13</td><td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">11</td></tr></tbody></table>
|
1404
1416
|
</div>
|
1405
1417
|
</div>
|
1406
1418
|
</div>
|