isodoc 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1da91b764e9a65a186bbc41b0d5fe260d77d15219b5d09cc4b4795653eded399
4
- data.tar.gz: 475fb17801429b31abb5a12a1605b6ba01961c1e3d51d4502d6813691797025d
3
+ metadata.gz: 964f8f6c290c6f45bc7c21a4359426f86fe3237eeb993ec6a4145f323d21603d
4
+ data.tar.gz: 0bdf3ebd2dbb22e66a8eb5025916485da601d20c671eb36a825085318f4f0b97
5
5
  SHA512:
6
- metadata.gz: 967d2118b8144444fb35aa87cf6663a79a97ec7f958d2fc8e25ee87b66a10150d32a7d588e285917a791fa8f91e1f25af612fd5bf06c65014d2bc801ac47d96c
7
- data.tar.gz: d9bf4df272be714d6a877a9a5c203146a82657c1fc3f22260fca295b394db118dd0e3c215b9cd138b46890b69331d94d202ecb16ee29e1f6b28f848c085f2e85
6
+ metadata.gz: b5140c733c1d356934a84f645d3f44407208c20162ab5c71c62ed93adc5311f9364a051f460c1bef88896c195955b1b5a4d56fe8d5129a38343902365bf7961b
7
+ data.tar.gz: 4ea58c0144a66ef9a473f95711f67a35317f070140e20d564577d8c4c5ade4d421445cce46e1009b47d8d842647e6220762af670fb25c3838161b3defb0e8d51
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- isodoc (1.0.4)
4
+ isodoc (1.0.5)
5
5
  asciimath
6
6
  html2doc (~> 0.8.11)
7
7
  htmlentities (~> 4.3.4)
@@ -10,7 +10,7 @@ PATH
10
10
  nokogiri (>= 1.10.4)
11
11
  rake (~> 12.0)
12
12
  roman-numerals
13
- sassc (~> 2)
13
+ sassc (~> 2.2.1)
14
14
  thread_safe
15
15
  uuidtools
16
16
 
@@ -42,7 +42,7 @@ GEM
42
42
  guard (~> 2.1)
43
43
  guard-compat (~> 1.1)
44
44
  rspec (>= 2.99.0, < 4.0)
45
- html2doc (0.8.13)
45
+ html2doc (0.8.14)
46
46
  asciimath (~> 1.0.7)
47
47
  htmlentities (~> 4.3.4)
48
48
  image_size
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
36
36
  spec.add_dependency "html2doc", "~> 0.8.11"
37
37
  spec.add_dependency "liquid"
38
38
  spec.add_dependency "roman-numerals"
39
- spec.add_dependency "sassc", "~> 2"
39
+ spec.add_dependency "sassc", "~> 2.2.1"
40
40
  spec.add_dependency "metanorma", "~> 0.3.0"
41
41
  spec.add_dependency "rake", "~> 12.0"
42
42
 
@@ -271,6 +271,7 @@ module IsoDoc::Function
271
271
  attrs = { src: node["src"],
272
272
  height: node["height"] || "auto",
273
273
  width: node["width"] || "auto",
274
+ title: node["title"],
274
275
  alt: node["alt"] }
275
276
  out.img **attr_code(attrs)
276
277
  image_title_parse(out, caption)
@@ -69,7 +69,7 @@ module IsoDoc::Function
69
69
 
70
70
  def omit_docid_prefix(prefix)
71
71
  return true if prefix.nil? || prefix.empty?
72
- return ["ISO", "IEC", "metanorma"].include? prefix
72
+ return %w(ISO IEC ITU metanorma).include? prefix
73
73
  end
74
74
 
75
75
  def date_note_process(b, ref)
@@ -4,14 +4,17 @@ module IsoDoc::Function
4
4
  "."
5
5
  end
6
6
 
7
+ def clausedelimspace(out)
8
+ insert_tab(out, 1)
9
+ end
10
+
7
11
  def inline_header_title(out, node, c1)
8
12
  title = c1&.content || ""
9
13
  out.span **{ class: "zzMoveToFollowing" } do |s|
10
14
  s.b do |b|
11
- #if get_anchors[node['id']][:label] && !@suppressheadingnumbers
12
15
  if anchor(node['id'], :label, false) && !@suppressheadingnumbers
13
- #b << "#{get_anchors[node['id']][:label]}#{clausedelim} "
14
- b << "#{anchor(node['id'], :label)}#{clausedelim} "
16
+ b << "#{anchor(node['id'], :label)}#{clausedelim}"
17
+ clausedelimspace(out)
15
18
  end
16
19
  b << "#{title} "
17
20
  end
@@ -22,11 +25,10 @@ module IsoDoc::Function
22
25
  if node["inline-header"] == "true"
23
26
  inline_header_title(out, node, c1)
24
27
  else
25
- #div.send "h#{get_anchors[node['id']][:level]}" do |h|
26
28
  div.send "h#{anchor(node['id'], :level) || '1'}" do |h|
27
- #lbl = get_anchors[node['id']][:label]
28
29
  lbl = anchor(node['id'], :label, false)
29
- h << "#{lbl}#{clausedelim} " if lbl && !@suppressheadingnumbers
30
+ h << "#{lbl}#{clausedelim}" if lbl && !@suppressheadingnumbers
31
+ clausedelimspace(out) if lbl && !@suppressheadingnumbers
30
32
  c1&.children&.each { |c2| parse(c2, h) }
31
33
  end
32
34
  end
@@ -60,7 +62,6 @@ module IsoDoc::Function
60
62
  def clause(isoxml, out)
61
63
  isoxml.xpath(ns(self.class::MIDDLE_CLAUSE)).each do |c|
62
64
  out.div **attr_code(id: c["id"]) do |s|
63
- #clause_name(get_anchors[c['id']][:label],
64
65
  clause_name(anchor(c['id'], :label),
65
66
  c&.at(ns("./title"))&.content, s, nil)
66
67
  c.elements.reject { |c1| c1.name == "title" }.each do |c1|
@@ -72,7 +73,6 @@ module IsoDoc::Function
72
73
 
73
74
  def annex_name(annex, name, div)
74
75
  div.h1 **{ class: "Annex" } do |t|
75
- #t << "#{get_anchors[annex['id']][:label]}<br/><br/>"
76
76
  t << "#{anchor(annex['id'], :label)}<br/><br/>"
77
77
  t.b do |b|
78
78
  name&.children&.each { |c2| parse(c2, b) }
@@ -68,7 +68,7 @@ module IsoDoc::HtmlFunction
68
68
  asciimath2jax: { delimiters: [['OPEN', 'CLOSE']] }
69
69
  });
70
70
  </script>
71
- <script src="#{MATHJAX_ADDR}?config=AM_HTMLorMML" async="async"></script>
71
+ <script src="#{MATHJAX_ADDR}?config=MML_HTMLorMML-full" async="async"></script>
72
72
  MATHJAX
73
73
 
74
74
  def mathjax(open, close)
@@ -1,3 +1,3 @@
1
1
  module IsoDoc
2
- VERSION = "1.0.4".freeze
2
+ VERSION = "1.0.5".freeze
3
3
  end
@@ -214,6 +214,7 @@ module IsoDoc::WordFunction
214
214
  attrs = { src: imgsrc(node["src"]),
215
215
  height: node["height"],
216
216
  alt: node["alt"],
217
+ title: node["title"],
217
218
  width: node["width"] }
218
219
  if node["height"] == "auto" || node["width"] == "auto"
219
220
  attrs[:height] = nil
@@ -17,7 +17,6 @@ xmlns:m="http://schemas.microsoft.com/office/2004/12/omml">
17
17
 
18
18
  def to_word_xhtml_fragment(xml)
19
19
  doc = ::Nokogiri::XML.parse(WORD_NOKOHEAD)
20
- #fragment = doc.fragment(xml)
21
20
  fragment = ::Nokogiri::XML::DocumentFragment.new(doc, xml, doc.root)
22
21
  fragment
23
22
  end
@@ -61,9 +60,20 @@ xmlns:m="http://schemas.microsoft.com/office/2004/12/omml">
61
60
  word_admonition_images(docxml)
62
61
  word_list_continuations(docxml)
63
62
  word_example_cleanup(docxml)
63
+ word_image_caption(docxml)
64
64
  docxml
65
65
  end
66
66
 
67
+ def word_image_caption(docxml)
68
+ docxml.xpath("//p[@class = 'FigureTitle']").each do |t|
69
+ if t.previous_element.name == "img"
70
+ img = t.previous_element
71
+ t.previous_element.swap("<p>#{img.to_xml}</p>")
72
+ end
73
+ t.previous_element["style"] = t["style"].sub(/;?$/, ";page-break-after:avoid;")
74
+ end
75
+ end
76
+
67
77
  def word_list_continuations(docxml)
68
78
  list_add(docxml.xpath("//ul[not(ancestor::ul) and not(ancestor::ol)]"), 1)
69
79
  list_add(docxml.xpath("//ol[not(ancestor::ul) and not(ancestor::ol)]"), 1)
@@ -92,6 +102,11 @@ xmlns:m="http://schemas.microsoft.com/office/2004/12/omml">
92
102
  next unless t&.next_element&.name == "table"
93
103
  t.add_next_sibling(EMPTY_PARA)
94
104
  end
105
+ docxml.xpath("//p[@class = 'TableTitle']").each do |t|
106
+ next unless t.children.empty?
107
+ t["style"] = t["style"].sub(/;?$/, ";font-size:0pt;")
108
+ t.children = "&nbsp;"
109
+ end
95
110
  end
96
111
 
97
112
  def word_annex_cleanup(docxml)
@@ -228,7 +228,7 @@ INPUT
228
228
  <preface><foreword>
229
229
  <figure id="figureA-1">
230
230
  <name>Split-it-right <em>sample</em> divider</name>
231
- <image src="rice_images/rice_image1.png" height="20" width="30" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png" alt="alttext"/>
231
+ <image src="rice_images/rice_image1.png" height="20" width="30" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png" alt="alttext" title="titletxt"/>
232
232
  <image src="rice_images/rice_image1.png" height="20" width="auto" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f1" mimetype="image/png"/>
233
233
  <image src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" height="20" width="auto" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f2" mimetype="image/png"/>
234
234
  <fn reference="a">
@@ -256,7 +256,7 @@ B</pre>
256
256
  <h1 class="ForewordTitle">Foreword</h1>
257
257
  <div id="figureA-1" class="figure">
258
258
 
259
- <img src="rice_images/rice_image1.png" height="20" width="30" alt="alttext"/>
259
+ <img src="rice_images/rice_image1.png" height="20" width="30" alt="alttext" title="titletxt"/>
260
260
  <img src="rice_images/rice_image1.png" height="20" width="auto"/>
261
261
  <img src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" height="20" width="auto"/>
262
262
  <a href="#_" class="TableFootnoteRef">a</a><aside class="footnote"><div id="fn:_"><a id="_" class="TableFootnoteRef">a&#160; </a>
@@ -288,7 +288,7 @@ B</pre>
288
288
  <preface><foreword>
289
289
  <figure id="figureA-1">
290
290
  <name>Split-it-right sample divider</name>
291
- <image src="rice_images/rice_image1.png" height="20" width="30" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png"/>
291
+ <image src="rice_images/rice_image1.png" height="20" width="30" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png" alt="alttext" title="titletext"/>
292
292
  <image src="rice_images/rice_image1.png" height="20" width="auto" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png"/>
293
293
  <image src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" height="20" width="auto" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png"/>
294
294
  <fn reference="a">
@@ -319,7 +319,7 @@ B</pre>
319
319
  <h1 class="ForewordTitle">Foreword</h1>
320
320
  <div id="figureA-1" class="figure">
321
321
 
322
- <img src="rice_images/rice_image1.png" height="20" width="30"/>
322
+ <img src="rice_images/rice_image1.png" height="20" width="30" alt="alttext" title="titletext"/>
323
323
  <img src="rice_images/rice_image1.png"/>
324
324
  <img src="test_images/_.gif"/>
325
325
  <a href="#_" class="TableFootnoteRef">a</a><aside><div id="ftn_"><a id="_" class="TableFootnoteRef">a<span style="mso-tab-count:1">&#160; </span></a>
@@ -143,7 +143,7 @@ RSpec.describe IsoDoc do
143
143
  asciimath2jax: { delimiters: [['(#(', ')#)']] }
144
144
  });
145
145
  </script>
146
- <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=AM_HTMLorMML" async="async"></script>
146
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=MML_HTMLorMML-full" async="async"></script>
147
147
  <script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script></body>
148
148
  OUTPUT
149
149
  end
@@ -89,11 +89,11 @@ RSpec.describe IsoDoc do
89
89
  </div>
90
90
  <div id="H"><h1>3.&#160; Terms, definitions, symbols and abbreviated terms</h1>
91
91
  <div id="I">
92
- <h2>3.1. Normal Terms</h2>
92
+ <h2>3.1.&#160; Normal Terms</h2>
93
93
  <p class="TermNum" id="J">3.1.1.</p>
94
94
  <p class="Terms" style="text-align:left;">Term2</p>
95
95
 
96
- </div><div id="K"><h2>3.2. Symbols and abbreviated terms</h2>
96
+ </div><div id="K"><h2>3.2.&#160; Symbols and abbreviated terms</h2>
97
97
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
98
98
  </div></div>
99
99
  <div id="L" class="Symbols">
@@ -108,19 +108,19 @@ RSpec.describe IsoDoc do
108
108
  <div id="M">
109
109
  <h1>5.&#160; Clause 4</h1>
110
110
  <div id="N">
111
- <h2>5.1. Introduction</h2>
111
+ <h2>5.1.&#160; Introduction</h2>
112
112
  </div>
113
113
  <div id="O">
114
- <h2>5.2. Clause 4.2</h2>
114
+ <h2>5.2.&#160; Clause 4.2</h2>
115
115
  </div>
116
116
  </div>
117
117
  <br/>
118
118
  <div id="P" class="Section3">
119
119
  <h1 class="Annex"><b>Annex A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
120
120
  <div id="Q">
121
- <h2>A.1. Annex A.1</h2>
121
+ <h2>A.1.&#160; Annex A.1</h2>
122
122
  <div id="Q1">
123
- <h3>A.1.1. Annex A.1a</h3>
123
+ <h3>A.1.1.&#160; Annex A.1a</h3>
124
124
  </div>
125
125
  </div>
126
126
  </div>
@@ -225,11 +225,11 @@ RSpec.describe IsoDoc do
225
225
  </div>
226
226
  <div id="H"><h1>3.&#160; Terms, definitions, symbols and abbreviated terms</h1>
227
227
  <div id="I">
228
- <h2>3.1. Normal Terms</h2>
228
+ <h2>3.1.&#160; Normal Terms</h2>
229
229
  <p class="TermNum" id="J">3.1.1.</p>
230
230
  <p class="Terms" style="text-align:left;">Term2</p>
231
231
 
232
- </div><div id="K"><h2>3.2. Symbols and abbreviated terms</h2>
232
+ </div><div id="K"><h2>3.2.&#160; Symbols and abbreviated terms</h2>
233
233
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
234
234
  </div></div>
235
235
  <div id="L" class="Symbols">
@@ -244,19 +244,19 @@ RSpec.describe IsoDoc do
244
244
  <div id="M">
245
245
  <h1>5.&#160; Clause 4</h1>
246
246
  <div id="N">
247
- <h2>5.1. Introduction</h2>
247
+ <h2>5.1.&#160; Introduction</h2>
248
248
  </div>
249
249
  <div id="O">
250
- <h2>5.2. Clause 4.2</h2>
250
+ <h2>5.2.&#160; Clause 4.2</h2>
251
251
  </div>
252
252
  </div>
253
253
  <br/>
254
254
  <div id="P" class="Section3">
255
255
  <h1 class="Annex"><b>Annex A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
256
256
  <div id="Q">
257
- <h2>A.1. Annex A.1</h2>
257
+ <h2>A.1.&#160; Annex A.1</h2>
258
258
  <div id="Q1">
259
- <h3>A.1.1. Annex A.1a</h3>
259
+ <h3>A.1.1.&#160; Annex A.1a</h3>
260
260
  </div>
261
261
  </div>
262
262
  </div>
@@ -361,11 +361,11 @@ RSpec.describe IsoDoc do
361
361
  </div>
362
362
  <div id="H"><h1>3.&#160; Terms, d&#233;finitions, symboles et termes abr&#233;g&#233;s</h1>
363
363
  <div id="I">
364
- <h2>3.1. Normal Terms</h2>
364
+ <h2>3.1.&#160; Normal Terms</h2>
365
365
  <p class="TermNum" id="J">3.1.1.</p>
366
366
  <p class="Terms" style="text-align:left;">Term2</p>
367
367
 
368
- </div><div id="K"><h2>3.2. Symboles et termes abr&#233;g&#233;s</h2>
368
+ </div><div id="K"><h2>3.2.&#160; Symboles et termes abr&#233;g&#233;s</h2>
369
369
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
370
370
  </div></div>
371
371
  <div id="L" class="Symbols">
@@ -380,19 +380,19 @@ RSpec.describe IsoDoc do
380
380
  <div id="M">
381
381
  <h1>5.&#160; Clause 4</h1>
382
382
  <div id="N">
383
- <h2>5.1. Introduction</h2>
383
+ <h2>5.1.&#160; Introduction</h2>
384
384
  </div>
385
385
  <div id="O">
386
- <h2>5.2. Clause 4.2</h2>
386
+ <h2>5.2.&#160; Clause 4.2</h2>
387
387
  </div>
388
388
  </div>
389
389
  <br/>
390
390
  <div id="P" class="Section3">
391
391
  <h1 class="Annex"><b>Annexe A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
392
392
  <div id="Q">
393
- <h2>A.1. Annex A.1</h2>
393
+ <h2>A.1.&#160; Annex A.1</h2>
394
394
  <div id="Q1">
395
- <h3>A.1.1. Annex A.1a</h3>
395
+ <h3>A.1.1.&#160; Annex A.1a</h3>
396
396
  </div>
397
397
  </div>
398
398
  </div>
@@ -511,11 +511,11 @@ RSpec.describe IsoDoc do
511
511
  </div>
512
512
  <div id="H"><h1>3.&#160; &#26415;&#35821;&#12289;&#23450;&#20041;&#12289;&#31526;&#21495;&#12289;&#20195;&#21495;&#21644;&#32553;&#30053;&#35821;</h1>
513
513
  <div id="I">
514
- <h2>3.1. Normal Terms</h2>
514
+ <h2>3.1.&#160; Normal Terms</h2>
515
515
  <p class="TermNum" id="J">3.1.1.</p>
516
516
  <p class="Terms" style="text-align:left;">Term2</p>
517
517
 
518
- </div><div id="K"><h2>3.2. &#31526;&#21495;&#12289;&#20195;&#21495;&#21644;&#32553;&#30053;&#35821;</h2>
518
+ </div><div id="K"><h2>3.2.&#160; &#31526;&#21495;&#12289;&#20195;&#21495;&#21644;&#32553;&#30053;&#35821;</h2>
519
519
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
520
520
  </div></div>
521
521
  <div id="L" class="Symbols">
@@ -530,19 +530,19 @@ RSpec.describe IsoDoc do
530
530
  <div id="M">
531
531
  <h1>5.&#160; Clause 4</h1>
532
532
  <div id="N">
533
- <h2>5.1. Introduction</h2>
533
+ <h2>5.1.&#160; Introduction</h2>
534
534
  </div>
535
535
  <div id="O">
536
- <h2>5.2. Clause 4.2</h2>
536
+ <h2>5.2.&#160; Clause 4.2</h2>
537
537
  </div>
538
538
  </div>
539
539
  <br/>
540
540
  <div id="P" class="Section3">
541
541
  <h1 class="Annex">&#38468;&#20214;A<br/>&#65288;&#35268;&#33539;&#24615;&#38468;&#24405;&#65289;<br/><br/><b>Annex</b></h1>
542
542
  <div id="Q">
543
- <h2>A.1. Annex A.1</h2>
543
+ <h2>A.1.&#160; Annex A.1</h2>
544
544
  <div id="Q1">
545
- <h3>A.1.1. Annex A.1a</h3>
545
+ <h3>A.1.1.&#160; Annex A.1a</h3>
546
546
  </div>
547
547
  </div>
548
548
  </div>
@@ -524,10 +524,10 @@ TOCLEVEL
524
524
  </a>
525
525
  <div id="N">
526
526
 
527
- <h2>1.1. Introduction to this<a rel="footnote" href="#fn:2" epub:type="footnote" id="fnref:2"><sup>2</sup></a></h2>
527
+ <h2>1.1.&#160; Introduction to this<a rel="footnote" href="#fn:2" epub:type="footnote" id="fnref:2"><sup>2</sup></a></h2>
528
528
  </div>
529
529
  <div id="O">
530
- <h2>1.2. Clause 4.2</h2>
530
+ <h2>1.2.&#160; Clause 4.2</h2>
531
531
  <p>A<a rel="footnote" href="#fn:2" epub:type="footnote"><sup>2</sup></a></p>
532
532
  </div>
533
533
  </div>
@@ -891,5 +891,93 @@ TOCLEVEL
891
891
  OUTPUT
892
892
  end
893
893
 
894
+ it "deals with image captions (Word)" do
895
+ FileUtils.rm_f "test.doc"
896
+ FileUtils.rm_f "test.html"
897
+ IsoDoc::WordConvert.new({wordstylesheet: "spec/assets/word.css", htmlstylesheet: "spec/assets/html.css"}).convert("test", <<~"INPUT", false)
898
+ <iso-standard xmlns="http://riboseinc.com/isoxml">
899
+ <preface><foreword>
900
+ <figure id="fig1">
901
+ <name>Typical arrangement of the far-field scan set-up</name>
902
+ <image src="spec/assets/rice_image1.png" id="_" mimetype="image/png"/>
903
+ </figure>
904
+ </foreword></preface>
905
+ </iso-standard>
906
+ INPUT
907
+ word = File.read("test.doc").sub(/^.*<div class="WordSection2">/m, '<div class="WordSection2">').
908
+ sub(%r{<p class="MsoNormal">\s*<br clear="all" class="section"/>\s*</p>\s*<div class="WordSection3">.*$}m, "").
909
+ sub(/src="[^"]+"/, 'src="_"')
910
+ expect(word).to be_equivalent_to <<~"OUTPUT"
911
+ <div class="WordSection2">
912
+ <p class="MsoNormal">
913
+ <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
914
+ </p>
915
+ <div>
916
+ <h1 class="ForewordTitle">Foreword</h1>
917
+ <div class="figure"><a name="fig1" id="fig1"></a>
918
+
919
+ <p style="text-align:center;page-break-after:avoid;" class="MsoNormal"><img src="_" width="400" height="337"/></p>
920
+ <p class="FigureTitle" style="text-align:center;">Figure 1&#xA0;&#x2014; Typical arrangement of the far-field scan set-up</p></div>
921
+ </div>
922
+ <p class="MsoNormal">&#xA0;</p>
923
+ </div>
924
+ OUTPUT
925
+
926
+ end
927
+
928
+ it "deals with empty table titles (Word)" do
929
+ FileUtils.rm_f "test.doc"
930
+ FileUtils.rm_f "test.html"
931
+ IsoDoc::WordConvert.new({wordstylesheet: "spec/assets/word.css", htmlstylesheet: "spec/assets/html.css"}).convert("test", <<~"INPUT", false)
932
+ <iso-standard xmlns="http://riboseinc.com/isoxml">
933
+ <preface><foreword>
934
+ <table id="_fe12b8f8-6858-4cd6-af7d-d4b6f3ebd1a7" unnumbered="true"><thead><tr>
935
+ <td rowspan="2" align="left">
936
+ <p id="_c47d9b39-adb2-431d-9320-78cb148fdb56">Output wavelength <stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mrow><mo>(</mo><mi>μ</mi><mi>m</mi><mo>)</mo></mrow></math></stem></p>
937
+ </td>
938
+ <th colspan="3" align="left">Predictive wavelengths</th>
939
+ </tr>
940
+ </thead>
941
+ </table>
942
+ </preface>
943
+ </iso-standard>
944
+ INPUT
945
+ word = File.read("test.doc").sub(/^.*<div class="WordSection2">/m, '<div class="WordSection2">').
946
+ sub(%r{<p class="MsoNormal">\s*<br clear="all" class="section"/>\s*</p>\s*<div class="WordSection3">.*$}m, "").
947
+ sub(/src="[^"]+"/, 'src="_"')
948
+ expect(word).to be_equivalent_to <<~"OUTPUT"
949
+ <div class="WordSection2">
950
+ <p class="MsoNormal">
951
+ <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
952
+ </p>
953
+ <div>
954
+ <h1 class="ForewordTitle">Foreword</h1>
955
+ <p class="TableTitle" style="text-align:center;font-size:0pt;">&#xA0;</p>
956
+ <div align="center">
957
+ <table class="MsoISOTable" style="mso-table-lspace:15.0cm;margin-left:423.0pt;mso-table-rspace:15.0cm;margin-right:423.0pt;mso-table-bspace:14.2pt;mso-table-anchor-vertical:paragraph;mso-table-anchor-horizontal:column;mso-table-overlap:never;border-spacing:0;border-width:1px;"><a name="_fe12b8f8-6858-4cd6-af7d-d4b6f3ebd1a7" id="_fe12b8f8-6858-4cd6-af7d-d4b6f3ebd1a7"></a>
958
+ <thead>
959
+ <tr>
960
+ <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;mso-border-top-alt:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;mso-border-bottom-alt:solid windowtext 1.0pt;">
961
+ <p class="MsoNormal"><a name="_c47d9b39-adb2-431d-9320-78cb148fdb56" id="_c47d9b39-adb2-431d-9320-78cb148fdb56"></a>Output wavelength <span class="stem"><m:oMath>
962
+
963
+ <m:r><m:t>(&#x3BC;m)</m:t></m:r>
964
+
965
+
966
+
967
+
968
+ </m:oMath>
969
+ </span></p>
970
+ </td>
971
+ <th colspan="3" align="left" style="font-weight:bold;border-top:solid windowtext 1.5pt;mso-border-top-alt:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;mso-border-bottom-alt:solid windowtext 1.5pt;">Predictive wavelengths</th>
972
+ </tr>
973
+ </thead>
974
+ </table>
975
+ </div>
976
+ </div>
977
+ <p class="MsoNormal">&#xA0;</p>
978
+ </div>
979
+ OUTPUT
980
+ end
981
+
894
982
 
895
983
  end
@@ -125,11 +125,11 @@ RSpec.describe IsoDoc do
125
125
  </div>
126
126
  <div id="H"><h1>3.&#160; Terms, definitions, symbols and abbreviated terms</h1>
127
127
  <div id="I">
128
- <h2>3.1. Normal Terms</h2>
128
+ <h2>3.1.&#160; Normal Terms</h2>
129
129
  <p class="TermNum" id="J">3.1.1.</p>
130
130
  <p class="Terms" style="text-align:left;">Term2</p>
131
131
 
132
- </div><div id="K"><h2>3.2. Definitions</h2>
132
+ </div><div id="K"><h2>3.2.&#160; Definitions</h2>
133
133
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
134
134
  </div></div>
135
135
  <div id="L" class="Symbols">
@@ -144,24 +144,24 @@ RSpec.describe IsoDoc do
144
144
  <div id="M">
145
145
  <h1>5.&#160; Clause 4</h1>
146
146
  <div id="N">
147
- <h2>5.1. Introduction</h2>
147
+ <h2>5.1.&#160; Introduction</h2>
148
148
  </div>
149
149
  <div id="O">
150
- <h2>5.2. Clause 4.2</h2>
150
+ <h2>5.2.&#160; Clause 4.2</h2>
151
151
  </div>
152
152
  <div id="O1">
153
- <h2>5.3. </h2>
153
+ <h2>5.3.&#160; </h2>
154
154
  </div>
155
155
  </div>
156
156
  <br/>
157
157
  <div id="P" class="Section3">
158
158
  <h1 class="Annex"><b>Annex A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
159
159
  <div id="Q">
160
- <h2>A.1. Annex A.1</h2>
160
+ <h2>A.1.&#160; Annex A.1</h2>
161
161
  <div id="Q1">
162
- <h3>A.1.1. Annex A.1a</h3>
162
+ <h3>A.1.1.&#160; Annex A.1a</h3>
163
163
  </div>
164
- <div><h3>A.1.2. Annex Bibliography</h3></div>
164
+ <div><h3>A.1.2.&#160; Annex Bibliography</h3></div>
165
165
  </div>
166
166
 
167
167
  </div>
@@ -284,11 +284,11 @@ OUTPUT
284
284
  </div>
285
285
  <div id="H"><h1>3.<span style="mso-tab-count:1">&#160; </span>Terms, definitions, symbols and abbreviated terms</h1>
286
286
  <div id="I">
287
- <h2>3.1. Normal Terms</h2>
287
+ <h2>3.1.<span style="mso-tab-count:1">&#160; </span>Normal Terms</h2>
288
288
  <p class="TermNum" id="J">3.1.1.</p>
289
289
  <p class="Terms" style="text-align:left;">Term2</p>
290
290
 
291
- </div><div id="K"><h2>3.2. Symbols and abbreviated terms</h2>
291
+ </div><div id="K"><h2>3.2.<span style="mso-tab-count:1">&#160; </span>Symbols and abbreviated terms</h2>
292
292
  <table class="dl"><tr><td valign="top" align="left"><p align="left" style="margin-left:0pt;text-align:left;">Symbol</p></td><td valign="top">Definition</td></tr></table>
293
293
  </div></div>
294
294
  <div id="L" class="Symbols">
@@ -305,22 +305,22 @@ OUTPUT
305
305
  <div id="M">
306
306
  <h1>5.<span style="mso-tab-count:1">&#160; </span>Clause 4</h1>
307
307
  <div id="N">
308
- <h2>5.1. Introduction</h2>
308
+ <h2>5.1.<span style="mso-tab-count:1">&#160; </span>Introduction</h2>
309
309
  </div>
310
310
  <div id="O">
311
- <h2>5.2. Clause 4.2</h2>
311
+ <h2>5.2.<span style="mso-tab-count:1">&#160; </span>Clause 4.2</h2>
312
312
  </div>
313
313
  <div id="O1">
314
- <h2>5.3. </h2>
314
+ <h2>5.3.<span style="mso-tab-count:1">&#160; </span></h2>
315
315
  </div>
316
316
  </div>
317
317
  <p><br clear="all" style="mso-special-character:line-break;page-break-before:always"/></p>
318
318
  <div id="P" class="Section3">
319
319
  <h1 class="Annex"><b>Annex A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
320
320
  <div id="Q">
321
- <h2>A.1. Annex A.1</h2>
321
+ <h2>A.1.<span style="mso-tab-count:1">&#160; </span>Annex A.1</h2>
322
322
  <div id="Q1">
323
- <h3>A.1.1. Annex A.1a</h3>
323
+ <h3>A.1.1.<span style="mso-tab-count:1">&#160; </span>Annex A.1a</h3>
324
324
  </div>
325
325
  </div>
326
326
  </div>
@@ -519,10 +519,10 @@ OUTPUT
519
519
  <div id="M">
520
520
  <h1>1.&#160; Clause 4</h1>
521
521
  <div id="N">
522
- <h2>1.1. Introduction</h2>
522
+ <h2>1.1.&#160; Introduction</h2>
523
523
  </div>
524
524
  <div id="O">
525
- <span class="zzMoveToFollowing"><b>1.2. Clause 4.2 </b></span>
525
+ <span class="zzMoveToFollowing"><b>1.2.&#160; Clause 4.2 </b></span>
526
526
  </div>
527
527
  </div>
528
528
  </div>
@@ -594,9 +594,9 @@ OUTPUT
594
594
  <p class="zzSTDTitle1"/>
595
595
  <div id="M1">
596
596
  <h1>1.&#160; </h1>
597
- <div id="N1"><h2>1.1. </h2>
597
+ <div id="N1"><h2>1.1.&#160;</h2>
598
598
  </div>
599
- <div id="O1"><span class="zzMoveToFollowing"><b>1.2. </b></span>
599
+ <div id="O1"><span class="zzMoveToFollowing"><b>1.2.&#160; </b></span>
600
600
  </div>
601
601
  </div>
602
602
  </div>
@@ -169,7 +169,7 @@ RSpec.describe IsoDoc do
169
169
  </div>
170
170
  <div id="widgets">
171
171
  <h1>3.&#160; Widgets</h1>
172
- <div id="widgets1"><h2>3.1. </h2>
172
+ <div id="widgets1"><h2>3.1.&#160;</h2>
173
173
  <div id="note1" class="Note"><p><span class="note_label">NOTE 1</span>&#160; These results are based on a study carried out on three different types of kernel.</p></div>
174
174
  <div id="note2" class="Note"><p><span class="note_label">NOTE 2</span>&#160; These results are based on a study carried out on three different types of kernel.</p></div>
175
175
  <p> <a href="#note1">Note 1</a> <a href="#note2">Note 2</a> </p>
@@ -178,10 +178,10 @@ RSpec.describe IsoDoc do
178
178
  </div>
179
179
  <br/>
180
180
  <div id="annex1" class="Section3">
181
- <div id="annex1a"><h2>A.1. </h2>
181
+ <div id="annex1a"><h2>A.1.&#160;</h2>
182
182
  <div id="AN" class="Note"><p><span class="note_label">NOTE</span>&#160; These results are based on a study carried out on three different types of kernel.</p></div>
183
183
  </div>
184
- <div id="annex1b"><h2>A.2. </h2>
184
+ <div id="annex1b"><h2>A.2.&#160;</h2>
185
185
  <div id="Anote1" class="Note"><p><span class="note_label">NOTE 1</span>&#160; These results are based on a study carried out on three different types of kernel.</p></div>
186
186
  <div id="Anote2" class="Note"><p><span class="note_label">NOTE 2</span>&#160; These results are based on a study carried out on three different types of kernel.</p></div>
187
187
  </div>
@@ -308,7 +308,7 @@ RSpec.describe IsoDoc do
308
308
  </div>
309
309
  <div id="widgets">
310
310
  <h1>3.&#160; Widgets</h1>
311
- <div id="widgets1"><h2>3.1. </h2>
311
+ <div id="widgets1"><h2>3.1.&#160;</h2>
312
312
  <div id="note1" class="figure">
313
313
 
314
314
  <img src="rice_images/rice_image1.png" height="auto" width="auto"/>
@@ -322,13 +322,13 @@ RSpec.describe IsoDoc do
322
322
  </div>
323
323
  <br/>
324
324
  <div id="annex1" class="Section3">
325
- <div id="annex1a"><h2>A.1. </h2>
325
+ <div id="annex1a"><h2>A.1.&#160;</h2>
326
326
  <div id="AN" class="figure">
327
327
 
328
328
  <img src="rice_images/rice_image1.png" height="auto" width="auto"/>
329
329
  <p class="FigureTitle" style="text-align:center;">Figure A.1&#160;&#8212; Split-it-right sample divider</p></div>
330
330
  </div>
331
- <div id="annex1b"><h2>A.2. </h2>
331
+ <div id="annex1b"><h2>A.2.&#160;</h2>
332
332
  <div id="Anote1" class="figure">
333
333
 
334
334
  <img src="rice_images/rice_image1.png" height="auto" width="auto"/>
@@ -419,7 +419,7 @@ RSpec.describe IsoDoc do
419
419
  </div>
420
420
  <div id="widgets">
421
421
  <h1>3.&#160; Widgets</h1>
422
- <div id="widgets1"><h2>3.1. </h2>
422
+ <div id="widgets1"><h2>3.1.&#160;</h2>
423
423
  <div id="N" class="figure">
424
424
  <div id="note1" class="figure">
425
425
 
@@ -435,9 +435,9 @@ RSpec.describe IsoDoc do
435
435
  </div>
436
436
  <br/>
437
437
  <div id="annex1" class="Section3">
438
- <div id="annex1a"><h2>A.1. </h2>
438
+ <div id="annex1a"><h2>A.1.&#160;</h2>
439
439
  </div>
440
- <div id="annex1b"><h2>A.2. </h2>
440
+ <div id="annex1b"><h2>A.2.&#160;</h2>
441
441
  <div id="AN" class="figure">
442
442
  <div id="Anote1" class="figure">
443
443
 
@@ -561,7 +561,7 @@ RSpec.describe IsoDoc do
561
561
  </div>
562
562
  <div id="widgets">
563
563
  <h1>3.&#160; Widgets</h1>
564
- <div id="widgets1"><h2>3.1. </h2>
564
+ <div id="widgets1"><h2>3.1.&#160;</h2>
565
565
  <div id="note1" class="example"><p class="example-title">EXAMPLE 1</p>
566
566
  <p>Hello</p>
567
567
  </div>
@@ -573,12 +573,12 @@ RSpec.describe IsoDoc do
573
573
  </div>
574
574
  <br/>
575
575
  <div id="annex1" class="Section3">
576
- <div id="annex1a"><h2>A.1. </h2>
576
+ <div id="annex1a"><h2>A.1.&#160;</h2>
577
577
  <div id="AN" class="example"><p class="example-title">EXAMPLE</p>
578
578
  <p>Hello</p>
579
579
  </div>
580
580
  </div>
581
- <div id="annex1b"><h2>A.2. </h2>
581
+ <div id="annex1b"><h2>A.2.&#160;</h2>
582
582
  <div id="Anote1" class="example"><p class="example-title">EXAMPLE</p>
583
583
  <p>Hello</p>
584
584
  </div>
@@ -692,7 +692,7 @@ RSpec.describe IsoDoc do
692
692
  </div>
693
693
  <div id="widgets">
694
694
  <h1>3.&#160; Widgets</h1>
695
- <div id="widgets1"><h2>3.1. </h2>
695
+ <div id="widgets1"><h2>3.1.&#160;</h2>
696
696
  <div id="note1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>&#160; (3)</p></div>
697
697
  <div id="note2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>&#160; (4)</p></div>
698
698
  <p> <a href="#note1">Formula (3)</a> <a href="#note2">Formula (4)</a> </p>
@@ -700,10 +700,10 @@ RSpec.describe IsoDoc do
700
700
  </div>
701
701
  <br/>
702
702
  <div id="annex1" class="Section3">
703
- <div id="annex1a"><h2>A.1. </h2>
703
+ <div id="annex1a"><h2>A.1.&#160;</h2>
704
704
  <div id="AN" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>&#160; (A.1)</p></div>
705
705
  </div>
706
- <div id="annex1b"><h2>A.2. </h2>
706
+ <div id="annex1b"><h2>A.2.&#160;</h2>
707
707
  <div id="Anote1" class="formula"><p><span class="stem">(#(r = 1 %)#)</span></p></div>
708
708
  <div id="Anote2" class="formula"><p><span class="stem">(#(r = 1 %)#)</span>&#160; (A.2)</p></div>
709
709
  </div>
@@ -819,7 +819,7 @@ RSpec.describe IsoDoc do
819
819
  </div>
820
820
  <div id="widgets">
821
821
  <h1>3.&#160; Widgets</h1>
822
- <div id="widgets1"><h2>3.1. </h2>
822
+ <div id="widgets1"><h2>3.1.&#160;</h2>
823
823
  <div class="require"><p class="AdmonitionTitle">Requirement 3:</p>
824
824
  <span class="stem">(#(r = 1 %)#)</span>
825
825
  </div>
@@ -831,12 +831,12 @@ RSpec.describe IsoDoc do
831
831
  </div>
832
832
  <br/>
833
833
  <div id="annex1" class="Section3">
834
- <div id="annex1a"><h2>A.1. </h2>
834
+ <div id="annex1a"><h2>A.1.&#160;</h2>
835
835
  <div class="require"><p class="AdmonitionTitle">Requirement A.1:</p>
836
836
  <span class="stem">(#(r = 1 %)#)</span>
837
837
  </div>
838
838
  </div>
839
- <div id="annex1b"><h2>A.2. </h2>
839
+ <div id="annex1b"><h2>A.2.&#160;</h2>
840
840
  <div class="require"><p class="AdmonitionTitle">Requirement:</p>
841
841
  <span class="stem">(#(r = 1 %)#)</span>
842
842
  </div>
@@ -956,7 +956,7 @@ OUTPUT
956
956
  </div>
957
957
  <div id="widgets">
958
958
  <h1>3.&#160; Widgets</h1>
959
- <div id="widgets1"><h2>3.1. </h2>
959
+ <div id="widgets1"><h2>3.1.&#160;</h2>
960
960
  <div class="recommend"><p class="AdmonitionTitle">Recommendation 3:</p>
961
961
  <span class="stem">(#(r = 1 %)#)</span>
962
962
  </div>
@@ -968,12 +968,12 @@ OUTPUT
968
968
  </div>
969
969
  <br/>
970
970
  <div id="annex1" class="Section3">
971
- <div id="annex1a"><h2>A.1. </h2>
971
+ <div id="annex1a"><h2>A.1.&#160;</h2>
972
972
  <div class="recommend"><p class="AdmonitionTitle">Recommendation A.1:</p>
973
973
  <span class="stem">(#(r = 1 %)#)</span>
974
974
  </div>
975
975
  </div>
976
- <div id="annex1b"><h2>A.2. </h2>
976
+ <div id="annex1b"><h2>A.2.&#160;</h2>
977
977
  <div class="recommend"><p class="AdmonitionTitle">Recommendation:</p>
978
978
  <span class="stem">(#(r = 1 %)#)</span>
979
979
  </div>
@@ -1093,7 +1093,7 @@ OUTPUT
1093
1093
  </div>
1094
1094
  <div id="widgets">
1095
1095
  <h1>3.&#160; Widgets</h1>
1096
- <div id="widgets1"><h2>3.1. </h2>
1096
+ <div id="widgets1"><h2>3.1.&#160;</h2>
1097
1097
  <div class="permission"><p class="AdmonitionTitle">Permission 3:</p>
1098
1098
  <span class="stem">(#(r = 1 %)#)</span>
1099
1099
  </div>
@@ -1105,12 +1105,12 @@ OUTPUT
1105
1105
  </div>
1106
1106
  <br/>
1107
1107
  <div id="annex1" class="Section3">
1108
- <div id="annex1a"><h2>A.1. </h2>
1108
+ <div id="annex1a"><h2>A.1.&#160;</h2>
1109
1109
  <div class="permission"><p class="AdmonitionTitle">Permission A.1:</p>
1110
1110
  <span class="stem">(#(r = 1 %)#)</span>
1111
1111
  </div>
1112
1112
  </div>
1113
- <div id="annex1b"><h2>A.2. </h2>
1113
+ <div id="annex1b"><h2>A.2.&#160;</h2>
1114
1114
  <div class="permission"><p class="AdmonitionTitle">Permission:</p>
1115
1115
  <span class="stem">(#(r = 1 %)#)</span>
1116
1116
  </div>
@@ -1399,7 +1399,7 @@ OUTPUT
1399
1399
  </div>
1400
1400
  <div id="widgets">
1401
1401
  <h1>3.&#160; Widgets</h1>
1402
- <div id="widgets1"><h2>3.1. </h2>
1402
+ <div id="widgets1"><h2>3.1.&#160;</h2>
1403
1403
  <p class="TableTitle" style="text-align:center;">Table 3&#160;&#8212; Repeatability and reproducibility of husked rice yield</p><table id="note1" class="MsoISOTable" style="border-width:1px;border-spacing:0;"><tbody><tr><td style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">Number of laboratories retained after eliminating outliers</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">13</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">11</td></tr></tbody></table>
1404
1404
  <p class="TableTitle" style="text-align:center;">Table 4&#160;&#8212; Repeatability and reproducibility of husked rice yield</p><table id="note2" class="MsoISOTable" style="border-width:1px;border-spacing:0;"><tbody><tr><td style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">Number of laboratories retained after eliminating outliers</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">13</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">11</td></tr></tbody></table>
1405
1405
  <p> <a href="#note1">Table 3</a> <a href="#note2">Table 4</a> </p>
@@ -1407,10 +1407,10 @@ OUTPUT
1407
1407
  </div>
1408
1408
  <br/>
1409
1409
  <div id="annex1" class="Section3">
1410
- <div id="annex1a"><h2>A.1. </h2>
1410
+ <div id="annex1a"><h2>A.1.&#160;</h2>
1411
1411
  <p class="TableTitle" style="text-align:center;">Table A.1&#160;&#8212; Repeatability and reproducibility of husked rice yield</p><table id="AN" class="MsoISOTable" style="border-width:1px;border-spacing:0;"><tbody><tr><td style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">Number of laboratories retained after eliminating outliers</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">13</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">11</td></tr></tbody></table>
1412
1412
  </div>
1413
- <div id="annex1b"><h2>A.2. </h2>
1413
+ <div id="annex1b"><h2>A.2.&#160;</h2>
1414
1414
  <p class="TableTitle" style="text-align:center;">Repeatability and reproducibility of husked rice yield</p><table id="Anote1" class="MsoISOTable" style="border-width:1px;border-spacing:0;"><tbody><tr><td style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">Number of laboratories retained after eliminating outliers</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">13</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">11</td></tr></tbody></table>
1415
1415
  <p class="TableTitle" style="text-align:center;">Table A.2&#160;&#8212; Repeatability and reproducibility of husked rice yield</p><table id="Anote2" class="MsoISOTable" style="border-width:1px;border-spacing:0;"><tbody><tr><td style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">Number of laboratories retained after eliminating outliers</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">13</td><td style="text-align:center;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;padding:0;">11</td></tr></tbody></table>
1416
1416
  </div>
@@ -1598,11 +1598,11 @@ OUTPUT
1598
1598
  </div>
1599
1599
  <div id="H"><h1>3.&#160; Terms, definitions, symbols and abbreviated terms</h1>
1600
1600
  <div id="I">
1601
- <h2>3.1. Normal Terms</h2>
1601
+ <h2>3.1.&#160; Normal Terms</h2>
1602
1602
  <p class="TermNum" id="J">3.1.1.</p>
1603
1603
  <p class="Terms" style="text-align:left;">Term2</p>
1604
1604
 
1605
- </div><div id="K"><h2>3.2. Symbols and abbreviated terms</h2>
1605
+ </div><div id="K"><h2>3.2.&#160; Symbols and abbreviated terms</h2>
1606
1606
  <dl><dt><p>Symbol</p></dt><dd>Definition</dd></dl>
1607
1607
  </div></div>
1608
1608
  <div id="L" class="Symbols">
@@ -1617,19 +1617,19 @@ OUTPUT
1617
1617
  <div id="M">
1618
1618
  <h1>5.&#160; Clause 4</h1>
1619
1619
  <div id="N">
1620
- <h2>5.1. Introduction</h2>
1620
+ <h2>5.1.&#160; Introduction</h2>
1621
1621
  </div>
1622
1622
  <div id="O">
1623
- <h2>5.2. Clause 4.2</h2>
1623
+ <h2>5.2.&#160; Clause 4.2</h2>
1624
1624
  </div>
1625
1625
  </div>
1626
1626
  <br/>
1627
1627
  <div id="P" class="Section3">
1628
1628
  <h1 class="Annex"><b>Annex A</b><br/>(normative)<br/><br/><b>Annex</b></h1>
1629
1629
  <div id="Q">
1630
- <h2>A.1. Annex A.1</h2>
1630
+ <h2>A.1.&#160; Annex A.1</h2>
1631
1631
  <div id="Q1">
1632
- <h3>A.1.1. Annex A.1a</h3>
1632
+ <h3>A.1.1.&#160; Annex A.1a</h3>
1633
1633
  </div>
1634
1634
  </div>
1635
1635
  </div>
@@ -1746,7 +1746,7 @@ OUTPUT
1746
1746
  </div>
1747
1747
  <div id="widgets">
1748
1748
  <h1>3.&#160; Widgets</h1>
1749
- <div id="widgets1"><h2>3.1. </h2>
1749
+ <div id="widgets1"><h2>3.1.&#160;</h2>
1750
1750
  <ol type="a" id="note1">
1751
1751
  <p id="_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f">These results are based on a study carried out on three different types of kernel.</p>
1752
1752
  </ol>
@@ -1757,12 +1757,12 @@ OUTPUT
1757
1757
  </div>
1758
1758
  <br/>
1759
1759
  <div id="annex1" class="Section3">
1760
- <div id="annex1a"><h2>A.1. </h2>
1760
+ <div id="annex1a"><h2>A.1.&#160;</h2>
1761
1761
  <ol type="a" id="AN">
1762
1762
  <p id="_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f">These results are based on a study carried out on three different types of kernel.</p>
1763
1763
  </ol>
1764
1764
  </div>
1765
- <div id="annex1b"><h2>A.2. </h2>
1765
+ <div id="annex1b"><h2>A.2.&#160;</h2>
1766
1766
  <ol type="a" id="Anote1">
1767
1767
  <p id="_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f">These results are based on a study carried out on three different types of kernel.</p>
1768
1768
  </ol>
@@ -1877,7 +1877,7 @@ OUTPUT
1877
1877
  </div>
1878
1878
  <div id="widgets">
1879
1879
  <h1>3.&#160; Widgets</h1>
1880
- <div id="widgets1"><h2>3.1. </h2>
1880
+ <div id="widgets1"><h2>3.1.&#160;</h2>
1881
1881
  <ol type="a" id="note1l">
1882
1882
  <li id="note1"><p>A</p></li>
1883
1883
  </ol>
@@ -1888,12 +1888,12 @@ OUTPUT
1888
1888
  </div>
1889
1889
  <br/>
1890
1890
  <div id="annex1" class="Section3">
1891
- <div id="annex1a"><h2>A.1. </h2>
1891
+ <div id="annex1a"><h2>A.1.&#160;</h2>
1892
1892
  <ol type="a" id="ANl">
1893
1893
  <li id="AN"><p>A</p></li>
1894
1894
  </ol>
1895
1895
  </div>
1896
- <div id="annex1b"><h2>A.2. </h2>
1896
+ <div id="annex1b"><h2>A.2.&#160;</h2>
1897
1897
  <ol type="a" id="Anote1l">
1898
1898
  <li id="Anote1"><p>A</p></li>
1899
1899
  </ol>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: isodoc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-10 00:00:00.000000000 Z
11
+ date: 2019-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciimath
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '2'
131
+ version: 2.2.1
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '2'
138
+ version: 2.2.1
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: metanorma
141
141
  requirement: !ruby/object:Gem::Requirement