metanorma-iso 1.5.1 → 1.5.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ubuntu.yml +1 -1
- data/lib/asciidoctor/iso/base.rb +1 -1
- data/lib/asciidoctor/iso/basicdoc.rng +31 -1
- data/lib/asciidoctor/iso/front.rb +6 -6
- data/lib/asciidoctor/iso/front_id.rb +5 -5
- data/lib/asciidoctor/iso/isodoc.rng +112 -9
- data/lib/asciidoctor/iso/section.rb +0 -7
- data/lib/asciidoctor/iso/validate_section.rb +10 -0
- data/lib/isodoc/iso/html/isodoc.css +16 -4
- data/lib/isodoc/iso/html/isodoc.scss +18 -4
- data/lib/isodoc/iso/html/wordstyle.css +10 -9
- data/lib/isodoc/iso/html/wordstyle.scss +15 -9
- data/lib/isodoc/iso/i18n-en.yaml +0 -1
- data/lib/isodoc/iso/iso.amendment.xsl +761 -259
- data/lib/isodoc/iso/iso.international-standard.xsl +761 -259
- data/lib/isodoc/iso/word_convert.rb +17 -13
- data/lib/isodoc/iso/xref.rb +7 -11
- data/lib/metanorma/iso/processor.rb +4 -1
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +1 -1
- data/spec/asciidoctor-iso/amd_spec.rb +0 -32
- data/spec/asciidoctor-iso/base_spec.rb +3 -11
- data/spec/asciidoctor-iso/cleanup_spec.rb +57 -33
- data/spec/asciidoctor-iso/inline_spec.rb +7 -1
- data/spec/asciidoctor-iso/table_spec.rb +118 -112
- data/spec/asciidoctor-iso/validate_spec.rb +87 -0
- data/spec/isodoc/amd_spec.rb +13 -13
- data/spec/isodoc/iso_spec.rb +3 -3
- data/spec/isodoc/postproc_spec.rb +76 -1
- data/spec/isodoc/ref_spec.rb +1 -1
- data/spec/metanorma/processor_spec.rb +1 -1
- metadata +4 -4
@@ -8,15 +8,19 @@ module IsoDoc
|
|
8
8
|
def initialize(options)
|
9
9
|
@libdir = File.dirname(__FILE__)
|
10
10
|
super
|
11
|
+
@wordToClevels = options[:doctoclevels].to_i
|
12
|
+
@wordToClevels = 3 if @wordToClevels.zero?
|
13
|
+
@htmlToClevels = options[:htmltoclevels].to_i
|
14
|
+
@htmlToClevels = 3 if @htmlToClevels.zero?
|
11
15
|
end
|
12
16
|
|
13
17
|
def default_fonts(options)
|
14
18
|
{
|
15
19
|
bodyfont: (options[:script] == "Hans" ? '"SimSun",serif' :
|
16
20
|
'"Cambria",serif'),
|
17
|
-
|
18
|
-
|
19
|
-
|
21
|
+
headerfont: (options[:script] == "Hans" ? '"SimHei",sans-serif' :
|
22
|
+
'"Cambria",serif'),
|
23
|
+
monospacefont: '"Courier New",monospace',
|
20
24
|
}
|
21
25
|
end
|
22
26
|
|
@@ -24,16 +28,16 @@ module IsoDoc
|
|
24
28
|
{
|
25
29
|
htmlstylesheet: (options[:alt] ? html_doc_path("style-human.scss") :
|
26
30
|
html_doc_path("style-iso.scss")),
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
31
|
+
htmlcoverpage: html_doc_path("html_iso_titlepage.html"),
|
32
|
+
htmlintropage: html_doc_path("html_iso_intro.html"),
|
33
|
+
scripts: html_doc_path("scripts.html"),
|
34
|
+
wordstylesheet: html_doc_path("wordstyle.scss"),
|
35
|
+
standardstylesheet: html_doc_path("isodoc.scss"),
|
36
|
+
header: html_doc_path("header.html"),
|
37
|
+
wordcoverpage: html_doc_path("word_iso_titlepage.html"),
|
38
|
+
wordintropage: html_doc_path("word_iso_intro.html"),
|
39
|
+
ulstyle: "l3",
|
40
|
+
olstyle: "l2",
|
37
41
|
}
|
38
42
|
end
|
39
43
|
|
data/lib/isodoc/iso/xref.rb
CHANGED
@@ -1,20 +1,16 @@
|
|
1
1
|
module IsoDoc
|
2
2
|
module Iso
|
3
3
|
class Xref < IsoDoc::Xref
|
4
|
-
def
|
5
|
-
if @klass.amd(
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
4
|
+
def initial_anchor_names(d)
|
5
|
+
if @klass.amd(d)
|
6
|
+
d.xpath(ns("//preface/*")).each { |c| c.element? and preface_names(c) }
|
7
|
+
sequential_asset_names(d.xpath(ns("//preface/*")))
|
8
|
+
middle_section_asset_names(d)
|
9
|
+
termnote_anchor_names(d)
|
10
|
+
termexample_anchor_names(d)
|
11
11
|
else
|
12
12
|
super
|
13
13
|
end
|
14
|
-
end
|
15
|
-
|
16
|
-
def initial_anchor_names(d)
|
17
|
-
super
|
18
14
|
introduction_names(d.at(ns("//introduction")))
|
19
15
|
end
|
20
16
|
|
@@ -25,7 +25,8 @@ module Metanorma
|
|
25
25
|
html_alt: "alt.html",
|
26
26
|
doc: "doc",
|
27
27
|
pdf: "pdf",
|
28
|
-
sts: "sts.xml"
|
28
|
+
sts: "sts.xml",
|
29
|
+
isosts: "sts.xml"
|
29
30
|
)
|
30
31
|
end
|
31
32
|
|
@@ -50,6 +51,8 @@ module Metanorma
|
|
50
51
|
IsoDoc::Iso::PdfConvert.new(options).convert(inname, isodoc_node, nil, outname)
|
51
52
|
when :sts
|
52
53
|
IsoDoc::Iso::StsConvert.new(options).convert(inname, isodoc_node, nil, outname)
|
54
|
+
when :isosts
|
55
|
+
IsoDoc::Iso::IsoStsConvert.new(options).convert(inname, isodoc_node, nil, outname)
|
53
56
|
when :presentation
|
54
57
|
IsoDoc::Iso::PresentationXMLConvert.new(options).convert(inname, isodoc_node, nil, outname)
|
55
58
|
else
|
data/metanorma-iso.gemspec
CHANGED
@@ -34,7 +34,7 @@ Gem::Specification.new do |spec|
|
|
34
34
|
spec.add_dependency "metanorma-standoc", "~> 1.5.0"
|
35
35
|
spec.add_dependency "tokenizer", "~> 0.3.0"
|
36
36
|
spec.add_dependency "twitter_cldr"
|
37
|
-
spec.add_dependency "mn2sts", "~> 1.
|
37
|
+
spec.add_dependency "mn2sts", "~> 1.5.0"
|
38
38
|
|
39
39
|
spec.add_development_dependency "byebug"
|
40
40
|
spec.add_development_dependency "sassc", "2.4.0"
|
@@ -2,22 +2,6 @@ require "spec_helper"
|
|
2
2
|
require "fileutils"
|
3
3
|
|
4
4
|
RSpec.describe Asciidoctor::ISO do
|
5
|
-
it "validates amendment document against distinct ISO XML schema" do
|
6
|
-
FileUtils.rm_f "test.err"
|
7
|
-
Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)
|
8
|
-
= Document title
|
9
|
-
Author
|
10
|
-
:docfile: test.adoc
|
11
|
-
:nodoc:
|
12
|
-
:no-isobib:
|
13
|
-
:doctype: amendment
|
14
|
-
|
15
|
-
[change=mid-air]
|
16
|
-
== Para
|
17
|
-
INPUT
|
18
|
-
expect(File.read("test.err")).to include 'value of attribute "change" is invalid; must be equal to'
|
19
|
-
end
|
20
|
-
|
21
5
|
it "processes amendment sections" do
|
22
6
|
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
23
7
|
#{AMD_BLANK_HDR}
|
@@ -147,22 +131,6 @@ end
|
|
147
131
|
OUTPUT
|
148
132
|
end
|
149
133
|
|
150
|
-
it "processes section attributes" do
|
151
|
-
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
152
|
-
#{AMD_BLANK_HDR}
|
153
|
-
[change=delete,locality="clause=introduction,paragraph=4-7",inline-header="true"]
|
154
|
-
== Clause 1
|
155
|
-
|
156
|
-
INPUT
|
157
|
-
#{BLANK_HDR.sub(%r{<doctype>article</doctype>}, "<doctype>amendment</doctype>")}
|
158
|
-
<sections><clause id="_" obligation="normative" change="delete" locality="clause=introduction,paragraph=4-7">
|
159
|
-
<title>Clause 1</title>
|
160
|
-
</clause>
|
161
|
-
</sections>
|
162
|
-
</iso-standard>
|
163
|
-
OUTPUT
|
164
|
-
end
|
165
|
-
|
166
134
|
it "processes default metadata, amendment" do
|
167
135
|
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true).sub(%r{<boilerplate>.*</boilerplate>}m, ""))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
168
136
|
= Document title
|
@@ -186,6 +186,7 @@ RSpec.describe Asciidoctor::ISO do
|
|
186
186
|
:language: el
|
187
187
|
:script: Grek
|
188
188
|
:publisher: IEC,IETF,ISO
|
189
|
+
:copyright-holder: ISO,IETF
|
189
190
|
:copyright-year: 2001
|
190
191
|
:doctype: technical-report
|
191
192
|
INPUT
|
@@ -248,8 +249,8 @@ RSpec.describe Asciidoctor::ISO do
|
|
248
249
|
<from>2001</from>
|
249
250
|
<owner>
|
250
251
|
<organization>
|
251
|
-
<name>International
|
252
|
-
<abbreviation>
|
252
|
+
<name>International Organization for Standardization</name>
|
253
|
+
<abbreviation>ISO</abbreviation>
|
253
254
|
</organization>
|
254
255
|
</owner>
|
255
256
|
</copyright>
|
@@ -261,15 +262,6 @@ RSpec.describe Asciidoctor::ISO do
|
|
261
262
|
</organization>
|
262
263
|
</owner>
|
263
264
|
</copyright>
|
264
|
-
<copyright>
|
265
|
-
<from>2001</from>
|
266
|
-
<owner>
|
267
|
-
<organization>
|
268
|
-
<name>International Organization for Standardization</name>
|
269
|
-
<abbreviation>ISO</abbreviation>
|
270
|
-
</organization>
|
271
|
-
</owner>
|
272
|
-
</copyright>
|
273
265
|
<ext>
|
274
266
|
<doctype>technical-report</doctype>
|
275
267
|
<editorialgroup>
|
@@ -32,7 +32,19 @@ RSpec.describe Asciidoctor::ISO do
|
|
32
32
|
<terms id="_" obligation="normative">
|
33
33
|
<title>Terms and definitions</title>
|
34
34
|
#{TERM_BOILERPLATE}
|
35
|
-
<term id="term-t90"><preferred><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><
|
35
|
+
<term id="term-t90"><preferred><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
36
|
+
<mi>t</mi>
|
37
|
+
</mrow>
|
38
|
+
<mrow>
|
39
|
+
<mn>90</mn>
|
40
|
+
</mrow>
|
41
|
+
</msub></math></stem></preferred><admitted><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
42
|
+
<mi>t</mi>
|
43
|
+
</mrow>
|
44
|
+
<mrow>
|
45
|
+
<mn>91</mn>
|
46
|
+
</mrow>
|
47
|
+
</msub></math></stem></admitted>
|
36
48
|
<definition><p id="_">Time</p></definition></term>
|
37
49
|
</terms>
|
38
50
|
</sections>
|
@@ -90,8 +102,20 @@ RSpec.describe Asciidoctor::ISO do
|
|
90
102
|
<terms id="_" obligation="normative">
|
91
103
|
<title>Terms and definitions</title>
|
92
104
|
#{TERM_BOILERPLATE}
|
93
|
-
<term id="term-t90"><preferred><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><
|
94
|
-
|
105
|
+
<term id="term-t90"><preferred><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
106
|
+
<mi>t</mi>
|
107
|
+
</mrow>
|
108
|
+
<mrow>
|
109
|
+
<mn>90</mn>
|
110
|
+
</mrow>
|
111
|
+
</msub></math></stem></preferred><definition><formula id="_">
|
112
|
+
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
113
|
+
<mi>t</mi>
|
114
|
+
</mrow>
|
115
|
+
<mrow>
|
116
|
+
<mi>A</mi>
|
117
|
+
</mrow>
|
118
|
+
</msub></math></stem>
|
95
119
|
</formula><p id="_">This paragraph is extraneous</p></definition>
|
96
120
|
</term>
|
97
121
|
</terms>
|
@@ -401,9 +425,9 @@ RSpec.describe Asciidoctor::ISO do
|
|
401
425
|
<sections><table id="_">
|
402
426
|
<tbody>
|
403
427
|
<tr>
|
404
|
-
<td align="left">a</td>
|
405
|
-
<td align="left">b</td>
|
406
|
-
<td align="left">c</td>
|
428
|
+
<td valign="top" align="left">a</td>
|
429
|
+
<td valign="top" align="left">b</td>
|
430
|
+
<td valign="top" align="left">c</td>
|
407
431
|
</tr>
|
408
432
|
</tbody>
|
409
433
|
<dl id="_">
|
@@ -432,23 +456,23 @@ RSpec.describe Asciidoctor::ISO do
|
|
432
456
|
#{BLANK_HDR}
|
433
457
|
<sections>
|
434
458
|
<table id="_"><thead><tr>
|
435
|
-
<th align="left">a</th>
|
436
|
-
<th align="left">b</th>
|
437
|
-
<th align="left">c</th>
|
459
|
+
<th valign="top" align="left">a</th>
|
460
|
+
<th valign="top" align="left">b</th>
|
461
|
+
<th valign="top" align="left">c</th>
|
438
462
|
</tr><tr>
|
439
|
-
<th align="left">a</th>
|
440
|
-
<th align="left">b</th>
|
441
|
-
<th align="left">c</th>
|
463
|
+
<th valign="top" align="left">a</th>
|
464
|
+
<th valign="top" align="left">b</th>
|
465
|
+
<th valign="top" align="left">c</th>
|
442
466
|
</tr><tr>
|
443
|
-
<th align="left">a</th>
|
444
|
-
<th align="left">b</th>
|
445
|
-
<th align="left">c</th>
|
467
|
+
<th valign="top" align="left">a</th>
|
468
|
+
<th valign="top" align="left">b</th>
|
469
|
+
<th valign="top" align="left">c</th>
|
446
470
|
</tr></thead>
|
447
471
|
<tbody>
|
448
472
|
<tr>
|
449
|
-
<td align="left">a</td>
|
450
|
-
<td align="left">b</td>
|
451
|
-
<td align="left">c</td>
|
473
|
+
<td valign="top" align="left">a</td>
|
474
|
+
<td valign="top" align="left">b</td>
|
475
|
+
<td valign="top" align="left">c</td>
|
452
476
|
</tr>
|
453
477
|
</tbody>
|
454
478
|
</table>
|
@@ -474,26 +498,26 @@ RSpec.describe Asciidoctor::ISO do
|
|
474
498
|
<table id="_">
|
475
499
|
<thead>
|
476
500
|
<tr>
|
477
|
-
<th align="left">a</th>
|
478
|
-
<th align="left">b</th>
|
479
|
-
<th align="left">c</th>
|
501
|
+
<th valign="top" align="left">a</th>
|
502
|
+
<th valign="top" align="left">b</th>
|
503
|
+
<th valign="top" align="left">c</th>
|
480
504
|
</tr>
|
481
505
|
<tr>
|
482
|
-
<th align="left">a</th>
|
483
|
-
<th align="left">b</th>
|
484
|
-
<th align="left">c</th>
|
506
|
+
<th valign="top" align="left">a</th>
|
507
|
+
<th valign="top" align="left">b</th>
|
508
|
+
<th valign="top" align="left">c</th>
|
485
509
|
</tr><tr>
|
486
|
-
<th align="left">a</th>
|
487
|
-
<th align="left">b</th>
|
488
|
-
<th align="left">c</th>
|
510
|
+
<th valign="top" align="left">a</th>
|
511
|
+
<th valign="top" align="left">b</th>
|
512
|
+
<th valign="top" align="left">c</th>
|
489
513
|
</tr></thead>
|
490
514
|
<tbody>
|
491
515
|
|
492
516
|
|
493
517
|
<tr>
|
494
|
-
<td align="left">a</td>
|
495
|
-
<td align="left">b</td>
|
496
|
-
<td align="left">c</td>
|
518
|
+
<td valign="top" align="left">a</td>
|
519
|
+
<td valign="top" align="left">b</td>
|
520
|
+
<td valign="top" align="left">c</td>
|
497
521
|
</tr>
|
498
522
|
</tbody>
|
499
523
|
</table>
|
@@ -517,9 +541,9 @@ RSpec.describe Asciidoctor::ISO do
|
|
517
541
|
<sections><table id="_">
|
518
542
|
<tbody>
|
519
543
|
<tr>
|
520
|
-
<td align="left">a</td>
|
521
|
-
<td align="left">b</td>
|
522
|
-
<td align="left">c</td>
|
544
|
+
<td valign="top" align="left">a</td>
|
545
|
+
<td valign="top" align="left">b</td>
|
546
|
+
<td valign="top" align="left">c</td>
|
523
547
|
</tr>
|
524
548
|
</tbody>
|
525
549
|
<note id="_">
|
@@ -28,7 +28,13 @@ RSpec.describe Asciidoctor::ISO do
|
|
28
28
|
‘single quote’
|
29
29
|
super<sup>script</sup>
|
30
30
|
sub<sub>script</sub>
|
31
|
-
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><
|
31
|
+
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
32
|
+
<mi>a</mi>
|
33
|
+
</mrow>
|
34
|
+
<mrow>
|
35
|
+
<mn>90</mn>
|
36
|
+
</mrow>
|
37
|
+
</msub></math></stem>
|
32
38
|
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub> <mrow> <mrow> <mi mathvariant="bold-italic">F</mi> </mrow> </mrow> <mrow> <mrow> <mi mathvariant="bold-italic">Α</mi> </mrow> </mrow> </msub> </math></stem>
|
33
39
|
<admitted>alt</admitted>
|
34
40
|
<deprecates>deprecated</deprecates>
|
@@ -17,16 +17,16 @@ RSpec.describe Asciidoctor::ISO do
|
|
17
17
|
<name>Table Name</name>
|
18
18
|
<thead>
|
19
19
|
<tr>
|
20
|
-
<th align="left">A</th>
|
21
|
-
<th align="left">B</th>
|
22
|
-
<th align="left">C</th>
|
20
|
+
<th valign="top" align="left">A</th>
|
21
|
+
<th valign="top" align="left">B</th>
|
22
|
+
<th valign="top" align="left">C</th>
|
23
23
|
</tr>
|
24
24
|
</thead>
|
25
25
|
<tbody>
|
26
26
|
<tr>
|
27
|
-
<th align="left">1</th>
|
28
|
-
<td align="left">2</td>
|
29
|
-
<td align="left">3</td>
|
27
|
+
<th valign="top" align="left">1</th>
|
28
|
+
<td valign="top" align="left">2</td>
|
29
|
+
<td valign="top" align="left">3</td>
|
30
30
|
</tr>
|
31
31
|
</tbody>
|
32
32
|
</table>
|
@@ -51,21 +51,21 @@ RSpec.describe Asciidoctor::ISO do
|
|
51
51
|
<table id="_">
|
52
52
|
<name>Table Name</name>
|
53
53
|
<thead><tr>
|
54
|
-
<th align="left">A</th>
|
55
|
-
<th align="left">B</th>
|
56
|
-
<th align="left">C</th>
|
54
|
+
<th valign="top" align="left">A</th>
|
55
|
+
<th valign="top" align="left">B</th>
|
56
|
+
<th valign="top" align="left">C</th>
|
57
57
|
</tr><tr>
|
58
|
-
<th align="left">1</th>
|
59
|
-
<th align="left">2</th>
|
60
|
-
<th align="left">3</th>
|
58
|
+
<th valign="top" align="left">1</th>
|
59
|
+
<th valign="top" align="left">2</th>
|
60
|
+
<th valign="top" align="left">3</th>
|
61
61
|
</tr></thead>
|
62
62
|
<tbody>
|
63
63
|
|
64
64
|
|
65
65
|
<tr>
|
66
|
-
<th align="left">1</th>
|
67
|
-
<td align="left">2</td>
|
68
|
-
<td align="left">3</td>
|
66
|
+
<th valign="top" align="left">1</th>
|
67
|
+
<td valign="top" align="left">2</td>
|
68
|
+
<td valign="top" align="left">3</td>
|
69
69
|
</tr>
|
70
70
|
</tbody>
|
71
71
|
</table>
|
@@ -88,21 +88,21 @@ RSpec.describe Asciidoctor::ISO do
|
|
88
88
|
#{BLANK_HDR}
|
89
89
|
<sections>
|
90
90
|
<table id="_"><thead><tr>
|
91
|
-
<th align="left">A</th>
|
92
|
-
<th align="left">B</th>
|
93
|
-
<th align="left">C</th>
|
91
|
+
<th valign="top" align="left">A</th>
|
92
|
+
<th valign="top" align="left">B</th>
|
93
|
+
<th valign="top" align="left">C</th>
|
94
94
|
</tr><tr>
|
95
|
-
<th align="left">1</th>
|
96
|
-
<th align="left">2</th>
|
97
|
-
<th align="left">3</th>
|
95
|
+
<th valign="top" align="left">1</th>
|
96
|
+
<th valign="top" align="left">2</th>
|
97
|
+
<th valign="top" align="left">3</th>
|
98
98
|
</tr></thead>
|
99
99
|
<tbody>
|
100
100
|
|
101
101
|
|
102
102
|
<tr>
|
103
|
-
<th align="left">1</th>
|
104
|
-
<td align="left">2</td>
|
105
|
-
<td align="left">3</td>
|
103
|
+
<th valign="top" align="left">1</th>
|
104
|
+
<td valign="top" align="left">2</td>
|
105
|
+
<td valign="top" align="left">3</td>
|
106
106
|
</tr>
|
107
107
|
</tbody>
|
108
108
|
</table>
|
@@ -148,152 +148,158 @@ RSpec.describe Asciidoctor::ISO do
|
|
148
148
|
<name>Maximum permissible mass fraction of defects</name>
|
149
149
|
<thead>
|
150
150
|
<tr>
|
151
|
-
<th rowspan="2" align="left">Defect</th>
|
152
|
-
<th colspan="4" align="center">Maximum permissible mass fraction of defects in husked rice<br/>
|
153
|
-
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><
|
151
|
+
<th rowspan="2" valign="top" align="left">Defect</th>
|
152
|
+
<th colspan="4" valign="top" align="center">Maximum permissible mass fraction of defects in husked rice<br/>
|
153
|
+
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><msub><mrow>
|
154
|
+
<mi>w</mi>
|
155
|
+
</mrow>
|
156
|
+
<mrow>
|
157
|
+
<mo>max</mo>
|
158
|
+
</mrow>
|
159
|
+
</msub></math></stem></th>
|
154
160
|
</tr>
|
155
161
|
<tr>
|
156
|
-
<th align="left">in husked rice</th>
|
157
|
-
<th align="center">in milled rice (non-glutinous)</th>
|
158
|
-
<th align="center">in husked parboiled rice</th>
|
159
|
-
<th align="center">in milled parboiled rice</th>
|
162
|
+
<th valign="top" align="left">in husked rice</th>
|
163
|
+
<th valign="top" align="center">in milled rice (non-glutinous)</th>
|
164
|
+
<th valign="top" align="center">in husked parboiled rice</th>
|
165
|
+
<th valign="top" align="center">in milled parboiled rice</th>
|
160
166
|
</tr></thead>
|
161
167
|
<tbody>
|
162
168
|
|
163
169
|
<tr>
|
164
|
-
<td align="left">Extraneous matter: organic<fn reference="a">
|
170
|
+
<td valign="top" align="left">Extraneous matter: organic<fn reference="a">
|
165
171
|
<p id="_">Organic extraneous matter includes foreign seeds, husks, bran, parts of straw, etc.</p>
|
166
172
|
</fn></td>
|
167
|
-
<td align="center">1,0</td>
|
168
|
-
<td align="center">0,5</td>
|
169
|
-
<td align="center">1,0</td>
|
170
|
-
<td align="center">0,5</td>
|
173
|
+
<td valign="top" align="center">1,0</td>
|
174
|
+
<td valign="top" align="center">0,5</td>
|
175
|
+
<td valign="top" align="center">1,0</td>
|
176
|
+
<td valign="top" align="center">0,5</td>
|
171
177
|
</tr>
|
172
178
|
<tr>
|
173
|
-
<td align="left">Extraneous matter: inorganic<fn reference="b">
|
179
|
+
<td valign="top" align="left">Extraneous matter: inorganic<fn reference="b">
|
174
180
|
<p id="_">Inorganic extraneous matter includes stones, sand, dust, etc.</p>
|
175
181
|
</fn></td>
|
176
|
-
<td align="center">0,5</td>
|
177
|
-
<td align="center">0,5</td>
|
178
|
-
<td align="center">0,5</td>
|
179
|
-
<td align="center">0,5</td>
|
182
|
+
<td valign="top" align="center">0,5</td>
|
183
|
+
<td valign="top" align="center">0,5</td>
|
184
|
+
<td valign="top" align="center">0,5</td>
|
185
|
+
<td valign="top" align="center">0,5</td>
|
180
186
|
</tr>
|
181
187
|
<tr>
|
182
|
-
<td align="left">Paddy</td>
|
183
|
-
<td align="center">2,5</td>
|
184
|
-
<td align="center">0,3</td>
|
185
|
-
<td align="center">2,5</td>
|
186
|
-
<td align="center">0,3</td>
|
188
|
+
<td valign="top" align="left">Paddy</td>
|
189
|
+
<td valign="top" align="center">2,5</td>
|
190
|
+
<td valign="top" align="center">0,3</td>
|
191
|
+
<td valign="top" align="center">2,5</td>
|
192
|
+
<td valign="top" align="center">0,3</td>
|
187
193
|
</tr>
|
188
194
|
<tr>
|
189
|
-
<td align="left">Husked rice, non-parboiled</td>
|
190
|
-
<td align="center">Not applicable</td>
|
191
|
-
<td align="center">1,0</td>
|
192
|
-
<td align="center">1,0</td>
|
193
|
-
<td align="center">1,0</td>
|
195
|
+
<td valign="top" align="left">Husked rice, non-parboiled</td>
|
196
|
+
<td valign="top" align="center">Not applicable</td>
|
197
|
+
<td valign="top" align="center">1,0</td>
|
198
|
+
<td valign="top" align="center">1,0</td>
|
199
|
+
<td valign="top" align="center">1,0</td>
|
194
200
|
</tr>
|
195
201
|
<tr>
|
196
|
-
<td align="left">Milled rice, non-parboiled</td>
|
197
|
-
<td align="center">1,0</td>
|
198
|
-
<td align="center">Not applicable</td>
|
199
|
-
<td align="center">1,0</td>
|
200
|
-
<td align="center">1,0</td>
|
202
|
+
<td valign="top" align="left">Milled rice, non-parboiled</td>
|
203
|
+
<td valign="top" align="center">1,0</td>
|
204
|
+
<td valign="top" align="center">Not applicable</td>
|
205
|
+
<td valign="top" align="center">1,0</td>
|
206
|
+
<td valign="top" align="center">1,0</td>
|
201
207
|
</tr>
|
202
208
|
<tr>
|
203
|
-
<td align="left">Husked rice, parboiled</td>
|
204
|
-
<td align="center">1,0</td>
|
205
|
-
<td align="center">1,0</td>
|
206
|
-
<td align="center">Not applicable</td>
|
207
|
-
<td align="center">1,0</td>
|
209
|
+
<td valign="top" align="left">Husked rice, parboiled</td>
|
210
|
+
<td valign="top" align="center">1,0</td>
|
211
|
+
<td valign="top" align="center">1,0</td>
|
212
|
+
<td valign="top" align="center">Not applicable</td>
|
213
|
+
<td valign="top" align="center">1,0</td>
|
208
214
|
</tr>
|
209
215
|
<tr>
|
210
|
-
<td align="left">Milled rice, parboiled</td>
|
211
|
-
<td align="center">1,0</td>
|
212
|
-
<td align="center">1,0</td>
|
213
|
-
<td align="center">1,0</td>
|
214
|
-
<td align="center">Not applicable</td>
|
216
|
+
<td valign="top" align="left">Milled rice, parboiled</td>
|
217
|
+
<td valign="top" align="center">1,0</td>
|
218
|
+
<td valign="top" align="center">1,0</td>
|
219
|
+
<td valign="top" align="center">1,0</td>
|
220
|
+
<td valign="top" align="center">Not applicable</td>
|
215
221
|
</tr>
|
216
222
|
<tr>
|
217
|
-
<td align="left">Chips</td>
|
218
|
-
<td align="center">0,1</td>
|
219
|
-
<td align="center">0,1</td>
|
220
|
-
<td align="center">0,1</td>
|
221
|
-
<td align="center">0,1</td>
|
223
|
+
<td valign="top" align="left">Chips</td>
|
224
|
+
<td valign="top" align="center">0,1</td>
|
225
|
+
<td valign="top" align="center">0,1</td>
|
226
|
+
<td valign="top" align="center">0,1</td>
|
227
|
+
<td valign="top" align="center">0,1</td>
|
222
228
|
</tr>
|
223
229
|
<tr>
|
224
|
-
<td align="left">HDK</td>
|
225
|
-
<td align="center">2,0<fn reference="c">
|
230
|
+
<td valign="top" align="left">HDK</td>
|
231
|
+
<td valign="top" align="center">2,0<fn reference="c">
|
226
232
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
227
233
|
</fn></td>
|
228
|
-
<td align="center">2,0</td>
|
229
|
-
<td align="center">2,0<fn reference="c">
|
234
|
+
<td valign="top" align="center">2,0</td>
|
235
|
+
<td valign="top" align="center">2,0<fn reference="c">
|
230
236
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
231
237
|
</fn></td>
|
232
|
-
<td align="center">2,0</td>
|
238
|
+
<td valign="top" align="center">2,0</td>
|
233
239
|
</tr>
|
234
240
|
<tr>
|
235
|
-
<td align="left">Damaged kernels</td>
|
236
|
-
<td align="center">4,0</td>
|
237
|
-
<td align="center">3,0</td>
|
238
|
-
<td align="center">4,0</td>
|
239
|
-
<td align="center">3,0</td>
|
241
|
+
<td valign="top" align="left">Damaged kernels</td>
|
242
|
+
<td valign="top" align="center">4,0</td>
|
243
|
+
<td valign="top" align="center">3,0</td>
|
244
|
+
<td valign="top" align="center">4,0</td>
|
245
|
+
<td valign="top" align="center">3,0</td>
|
240
246
|
</tr>
|
241
247
|
<tr>
|
242
|
-
<td align="left">Immature and/or malformed kernels</td>
|
243
|
-
<td align="center">8,0</td>
|
244
|
-
<td align="center">2,0</td>
|
245
|
-
<td align="center">8,0</td>
|
246
|
-
<td align="center">2,0</td>
|
248
|
+
<td valign="top" align="left">Immature and/or malformed kernels</td>
|
249
|
+
<td valign="top" align="center">8,0</td>
|
250
|
+
<td valign="top" align="center">2,0</td>
|
251
|
+
<td valign="top" align="center">8,0</td>
|
252
|
+
<td valign="top" align="center">2,0</td>
|
247
253
|
</tr>
|
248
254
|
<tr>
|
249
|
-
<td align="left">Chalky kernels</td>
|
250
|
-
<td align="center">5,0<fn reference="c">
|
255
|
+
<td valign="top" align="left">Chalky kernels</td>
|
256
|
+
<td valign="top" align="center">5,0<fn reference="c">
|
251
257
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
252
258
|
</fn></td>
|
253
|
-
<td align="center">5,0</td>
|
254
|
-
<td align="center">Not applicable</td>
|
255
|
-
<td align="center">Not applicable</td>
|
259
|
+
<td valign="top" align="center">5,0</td>
|
260
|
+
<td valign="top" align="center">Not applicable</td>
|
261
|
+
<td valign="top" align="center">Not applicable</td>
|
256
262
|
</tr>
|
257
263
|
<tr>
|
258
|
-
<td align="left">Red kernels and red-streaked kernels</td>
|
259
|
-
<td align="center">12,0</td>
|
260
|
-
<td align="center">12,0</td>
|
261
|
-
<td align="center">12,0<fn reference="c">
|
264
|
+
<td valign="top" align="left">Red kernels and red-streaked kernels</td>
|
265
|
+
<td valign="top" align="center">12,0</td>
|
266
|
+
<td valign="top" align="center">12,0</td>
|
267
|
+
<td valign="top" align="center">12,0<fn reference="c">
|
262
268
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
263
269
|
</fn></td>
|
264
|
-
<td align="center">12,0</td>
|
270
|
+
<td valign="top" align="center">12,0</td>
|
265
271
|
</tr>
|
266
272
|
<tr>
|
267
|
-
<td align="left">Partly gelatinized kernels</td>
|
268
|
-
<td align="center">Not applicable</td>
|
269
|
-
<td align="center">Not applicable</td>
|
270
|
-
<td align="center">11,0<fn reference="c">
|
273
|
+
<td valign="top" align="left">Partly gelatinized kernels</td>
|
274
|
+
<td valign="top" align="center">Not applicable</td>
|
275
|
+
<td valign="top" align="center">Not applicable</td>
|
276
|
+
<td valign="top" align="center">11,0<fn reference="c">
|
271
277
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
272
278
|
</fn></td>
|
273
|
-
<td align="center">11,0</td>
|
279
|
+
<td valign="top" align="center">11,0</td>
|
274
280
|
</tr>
|
275
281
|
<tr>
|
276
|
-
<td align="left">Pecks</td>
|
277
|
-
<td align="center">Not applicable</td>
|
278
|
-
<td align="center">Not applicable</td>
|
279
|
-
<td align="center">4,0</td>
|
280
|
-
<td align="center">2,0</td>
|
282
|
+
<td valign="top" align="left">Pecks</td>
|
283
|
+
<td valign="top" align="center">Not applicable</td>
|
284
|
+
<td valign="top" align="center">Not applicable</td>
|
285
|
+
<td valign="top" align="center">4,0</td>
|
286
|
+
<td valign="top" align="center">2,0</td>
|
281
287
|
</tr>
|
282
288
|
<tr>
|
283
|
-
<td align="left">Waxy rice</td>
|
284
|
-
<td align="center">1,0<fn reference="c">
|
289
|
+
<td valign="top" align="left">Waxy rice</td>
|
290
|
+
<td valign="top" align="center">1,0<fn reference="c">
|
285
291
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
286
292
|
</fn></td>
|
287
|
-
<td align="center">1,0</td>
|
288
|
-
<td align="center">1,0<fn reference="c">
|
293
|
+
<td valign="top" align="center">1,0</td>
|
294
|
+
<td valign="top" align="center">1,0<fn reference="c">
|
289
295
|
<p id="_">The maximum permissible mass fraction of defects shall be determined with respect to the mass fraction obtained after milling.</p>
|
290
296
|
</fn></td>
|
291
|
-
<td align="center">1,0</td>
|
297
|
+
<td valign="top" align="center">1,0</td>
|
292
298
|
</tr>
|
293
299
|
</tbody>
|
294
300
|
<tfoot>
|
295
301
|
<tr>
|
296
|
-
<td colspan="5" align="left">
|
302
|
+
<td colspan="5" valign="top" align="left">
|
297
303
|
<p id="_">Live insects shall not be present. Dead insects shall be included in extraneous matter.</p>
|
298
304
|
</td>
|
299
305
|
</tr>
|