isodoc 1.2.8 → 1.4.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +15 -1
- data/isodoc.gemspec +1 -1
- data/lib/isodoc-yaml/i18n-en.yaml +55 -0
- data/lib/isodoc-yaml/i18n-fr.yaml +56 -0
- data/lib/isodoc/base_style/blocks.scss +2 -2
- data/lib/isodoc/base_style/typography.scss +1 -1
- data/lib/isodoc/convert.rb +13 -85
- data/lib/isodoc/css.rb +95 -0
- data/lib/isodoc/function/inline_simple.rb +10 -1
- data/lib/isodoc/function/lists.rb +2 -1
- data/lib/isodoc/function/references.rb +7 -12
- data/lib/isodoc/function/section.rb +1 -1
- data/lib/isodoc/function/table.rb +10 -0
- data/lib/isodoc/function/to_word_html.rb +4 -2
- data/lib/isodoc/function/utils.rb +2 -2
- data/lib/isodoc/gem_tasks.rb +4 -0
- data/lib/isodoc/html_function/html.rb +7 -0
- data/lib/isodoc/html_function/mathvariant_to_plain.rb +82 -0
- data/lib/isodoc/html_function/postprocess.rb +43 -22
- data/lib/isodoc/metadata_contributor.rb +4 -3
- data/lib/isodoc/presentation_function/bibdata.rb +3 -3
- data/lib/isodoc/presentation_function/inline.rb +5 -3
- data/lib/isodoc/presentation_function/section.rb +9 -0
- data/lib/isodoc/presentation_xml_convert.rb +2 -0
- data/lib/isodoc/version.rb +1 -1
- data/lib/isodoc/word_convert.rb +0 -20
- data/lib/isodoc/word_function/inline.rb +2 -2
- data/lib/isodoc/word_function/postprocess.rb +38 -80
- data/lib/isodoc/word_function/postprocess_cover.rb +55 -0
- data/lib/isodoc/word_function/table.rb +10 -0
- data/lib/isodoc/xref.rb +1 -0
- data/lib/isodoc/xref/xref_counter.rb +63 -20
- data/lib/isodoc/xref/xref_gen.rb +20 -2
- data/lib/isodoc/xref/xref_sect_gen.rb +34 -27
- data/spec/assets/html.scss +14 -0
- data/spec/isodoc/blocks_spec.rb +26 -73
- data/spec/isodoc/cleanup_spec.rb +0 -1
- data/spec/isodoc/inline_spec.rb +14 -14
- data/spec/isodoc/lists_spec.rb +1 -1
- data/spec/isodoc/metadata_spec.rb +3 -1
- data/spec/isodoc/postproc_spec.rb +473 -11
- data/spec/isodoc/presentation_xml_spec.rb +2 -2
- data/spec/isodoc/ref_spec.rb +323 -5
- data/spec/isodoc/table_spec.rb +28 -0
- data/spec/isodoc/xref_spec.rb +472 -19
- metadata +6 -4
@@ -494,7 +494,7 @@ it "customises localisation of numbers" do
|
|
494
494
|
</bibdata>
|
495
495
|
<preface>
|
496
496
|
<p><stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mn>30000</mn></math></stem>
|
497
|
-
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>P</mi><mfenced open="(" close=")"><mrow><mi>X</mi><mo>≥</mo><msub><mrow><mi>X</mi></mrow><mrow><mo>max</mo></mrow></msub></mrow></mfenced><mo>=</mo><munderover><mrow><mo>∑</mo></mrow><mrow><mrow><mi>j</mi><mo>=</mo><msub><mrow><mi>X</mi></mrow><mrow><mo>max</mo></mrow></msub></mrow></mrow><mrow><mn>1000</mn></mrow></munderover><mfenced open="(" close=")"><mtable><mtr><mtd><mn>1000</mn></mtd></mtr><mtr><mtd><mi>j</mi></mtd></mtr></mtable></mfenced><msup><mrow><mi>p</mi></mrow><mrow><mi>j</mi></mrow></msup><msup><mrow><mfenced open="(" close=")"><mrow><mn>
|
497
|
+
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>P</mi><mfenced open="(" close=")"><mrow><mi>X</mi><mo>≥</mo><msub><mrow><mi>X</mi></mrow><mrow><mo>max</mo></mrow></msub></mrow></mfenced><mo>=</mo><munderover><mrow><mo>∑</mo></mrow><mrow><mrow><mi>j</mi><mo>=</mo><msub><mrow><mi>X</mi></mrow><mrow><mo>max</mo></mrow></msub></mrow></mrow><mrow><mn>1000</mn></mrow></munderover><mfenced open="(" close=")"><mtable><mtr><mtd><mn>1000</mn></mtd></mtr><mtr><mtd><mi>j</mi></mtd></mtr></mtable></mfenced><msup><mrow><mi>p</mi></mrow><mrow><mi>j</mi></mrow></msup><msup><mrow><mfenced open="(" close=")"><mrow><mn>0.0000032</mn><mo>−</mo><mi>p</mi></mrow></mfenced></mrow><mrow><mrow><mn>1.003</mn><mo>−</mo><mi>j</mi></mrow></mrow></msup></math></stem></p>
|
498
498
|
</preface>
|
499
499
|
</iso-standard>
|
500
500
|
INPUT
|
@@ -573,7 +573,7 @@ it "customises localisation of numbers" do
|
|
573
573
|
<mrow>
|
574
574
|
<mfenced open='(' close=')'>
|
575
575
|
<mrow>
|
576
|
-
<mn>
|
576
|
+
<mn>0,0000032</mn>
|
577
577
|
<mo>−</mo>
|
578
578
|
<mi>p</mi>
|
579
579
|
</mrow>
|
data/spec/isodoc/ref_spec.rb
CHANGED
@@ -63,7 +63,7 @@ RSpec.describe IsoDoc do
|
|
63
63
|
</bibitem>
|
64
64
|
<bibitem id="ref1">
|
65
65
|
<formattedref format="application/x-isodoc+xml"><smallcap>Standard No I.C.C 167</smallcap>. <em>Determination of the protein content in cereal and cereal products for food and animal feeding stuffs according to the Dumas combustion method</em> (see <link target="http://www.icc.or.at"/>)</formattedref>
|
66
|
-
<docidentifier type="ICC">167</docidentifier>
|
66
|
+
<docidentifier type="ICC">ICC/167</docidentifier>
|
67
67
|
</bibitem>
|
68
68
|
<note><p>This is an annotation of ISO 20483:2013-2014</p></note>
|
69
69
|
<bibitem id="zip_ffs"><formattedref format="application/x-isodoc+xml">Title 5</formattedref><docidentifier type="metanorma">[5]</docidentifier></bibitem>
|
@@ -136,7 +136,7 @@ RSpec.describe IsoDoc do
|
|
136
136
|
<eref bibitemid='ISBN'>[1]</eref>
|
137
137
|
<eref bibitemid='ISSN'>[2]</eref>
|
138
138
|
<eref bibitemid='ISO16634'>ISO 16634:-- (all parts)</eref>
|
139
|
-
<eref bibitemid='ref1'>ICC
|
139
|
+
<eref bibitemid='ref1'>ICC/167</eref>
|
140
140
|
<eref bibitemid='ref10'>[10]</eref>
|
141
141
|
<eref bibitemid='ref12'>Citn</eref>
|
142
142
|
<eref bibitemid='zip_ffs'>[5]</eref>
|
@@ -213,7 +213,7 @@ RSpec.describe IsoDoc do
|
|
213
213
|
<link target='http://www.icc.or.at'/>
|
214
214
|
)
|
215
215
|
</formattedref>
|
216
|
-
<docidentifier type='ICC'>167</docidentifier>
|
216
|
+
<docidentifier type='ICC'>ICC/167</docidentifier>
|
217
217
|
</bibitem>
|
218
218
|
<note>
|
219
219
|
<name>NOTE</name>
|
@@ -309,7 +309,7 @@ RSpec.describe IsoDoc do
|
|
309
309
|
<a href='#ISBN'>[1]</a>
|
310
310
|
<a href='#ISSN'>[2]</a>
|
311
311
|
<a href='#ISO16634'>ISO 16634:-- (all parts)</a>
|
312
|
-
<a href='#ref1'>ICC
|
312
|
+
<a href='#ref1'>ICC/167</a>
|
313
313
|
<a href='#ref10'>[10]</a>
|
314
314
|
<a href='#ref12'>Citn</a>
|
315
315
|
<a href='#zip_ffs'>[5]</a>
|
@@ -342,7 +342,7 @@ RSpec.describe IsoDoc do
|
|
342
342
|
<i>Cereals and pulses</i>
|
343
343
|
</p>
|
344
344
|
<p id='ref1' class='NormRef'>
|
345
|
-
ICC
|
345
|
+
ICC/167,
|
346
346
|
<span style='font-variant:small-caps;'>Standard No I.C.C 167</span>
|
347
347
|
.
|
348
348
|
<i>
|
@@ -424,4 +424,322 @@ RSpec.describe IsoDoc do
|
|
424
424
|
expect(xmlpp(IsoDoc::HtmlConvert.new({}).convert("test", presxml, true))).to be_equivalent_to xmlpp(html)
|
425
425
|
end
|
426
426
|
|
427
|
+
|
428
|
+
it "processes hidden references sections in Relaton bibliographies" do
|
429
|
+
presxml = <<~PRESXML
|
430
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
|
431
|
+
<bibdata>
|
432
|
+
<language current="true">en</language>
|
433
|
+
</bibdata>
|
434
|
+
<preface>
|
435
|
+
<foreword>
|
436
|
+
<p id='_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f'>
|
437
|
+
<eref bibitemid='ISO712'>[110]</eref>
|
438
|
+
<eref bibitemid='ISBN'>[1]</eref>
|
439
|
+
<eref bibitemid='ISSN'>[2]</eref>
|
440
|
+
<eref bibitemid='ISO16634'>ISO 16634:-- (all parts)</eref>
|
441
|
+
<eref bibitemid='ref1'>ICC/167</eref>
|
442
|
+
<eref bibitemid='ref10'>[10]</eref>
|
443
|
+
<eref bibitemid='ref12'>Citn</eref>
|
444
|
+
<eref bibitemid='zip_ffs'>[5]</eref>
|
445
|
+
</p>
|
446
|
+
</foreword>
|
447
|
+
</preface>
|
448
|
+
<bibliography>
|
449
|
+
<references id='_normative_references' obligation='informative' normative='true' hidden="true">
|
450
|
+
<title depth='1'>1.<tab/>Normative References</title>
|
451
|
+
<p>
|
452
|
+
The following documents are referred to in the text in such a way that
|
453
|
+
some or all of their content constitutes requirements of this document.
|
454
|
+
For dated references, only the edition cited applies. For undated
|
455
|
+
references, the latest edition of the referenced document (including any
|
456
|
+
amendments) applies.
|
457
|
+
</p>
|
458
|
+
<bibitem id='ISO712' type='standard'>
|
459
|
+
<title format='text/plain'>Cereals or cereal products</title>
|
460
|
+
<title type='main' format='text/plain'>Cereals and cereal products</title>
|
461
|
+
<docidentifier type='ISO'>ISO 712</docidentifier>
|
462
|
+
<docidentifier type='metanorma'>[110]</docidentifier>
|
463
|
+
<contributor>
|
464
|
+
<role type='publisher'/>
|
465
|
+
<organization>
|
466
|
+
<name>International Organization for Standardization</name>
|
467
|
+
</organization>
|
468
|
+
</contributor>
|
469
|
+
</bibitem>
|
470
|
+
<bibitem id='ISO16634' type='standard'>
|
471
|
+
<title language='x' format='text/plain'>
|
472
|
+
Cereals, pulses, milled cereal products, xxxx, oilseeds and animal
|
473
|
+
feeding stuffs
|
474
|
+
</title>
|
475
|
+
<title language='en' format='text/plain'>Cereals, pulses, milled cereal products, oilseeds and animal feeding stuffs</title>
|
476
|
+
<docidentifier type='ISO'>ISO 16634:-- (all parts)</docidentifier>
|
477
|
+
<date type='published'>
|
478
|
+
<on>--</on>
|
479
|
+
</date>
|
480
|
+
<contributor>
|
481
|
+
<role type='publisher'/>
|
482
|
+
<organization>
|
483
|
+
<abbreviation>ISO</abbreviation>
|
484
|
+
</organization>
|
485
|
+
</contributor>
|
486
|
+
<note format='text/plain' type='Unpublished-Status' reference='1'>Under preparation. (Stage at the time of publication ISO/DIS 16634)</note>
|
487
|
+
<extent type='part'>
|
488
|
+
<referenceFrom>all</referenceFrom>
|
489
|
+
</extent>
|
490
|
+
</bibitem>
|
491
|
+
<bibitem id='ISO20483' type='standard'>
|
492
|
+
<title format='text/plain'>Cereals and pulses</title>
|
493
|
+
<docidentifier type='ISO'>ISO 20483:2013-2014</docidentifier>
|
494
|
+
<date type='published'>
|
495
|
+
<from>2013</from>
|
496
|
+
<to>2014</to>
|
497
|
+
</date>
|
498
|
+
<contributor>
|
499
|
+
<role type='publisher'/>
|
500
|
+
<organization>
|
501
|
+
<name>International Organization for Standardization</name>
|
502
|
+
</organization>
|
503
|
+
</contributor>
|
504
|
+
</bibitem>
|
505
|
+
<bibitem id='ref1'>
|
506
|
+
<formattedref format='application/x-isodoc+xml'>
|
507
|
+
<smallcap>Standard No I.C.C 167</smallcap>
|
508
|
+
.
|
509
|
+
<em>
|
510
|
+
Determination of the protein content in cereal and cereal products
|
511
|
+
for food and animal feeding stuffs according to the Dumas combustion
|
512
|
+
method
|
513
|
+
</em>
|
514
|
+
(see
|
515
|
+
<link target='http://www.icc.or.at'/>
|
516
|
+
)
|
517
|
+
</formattedref>
|
518
|
+
<docidentifier type='ICC'>ICC/167</docidentifier>
|
519
|
+
</bibitem>
|
520
|
+
<note>
|
521
|
+
<name>NOTE</name>
|
522
|
+
<p>This is an annotation of ISO 20483:2013-2014</p>
|
523
|
+
</note>
|
524
|
+
<bibitem id='zip_ffs'>
|
525
|
+
<formattedref format='application/x-isodoc+xml'>Title 5</formattedref>
|
526
|
+
<docidentifier type='metanorma'>[5]</docidentifier>
|
527
|
+
</bibitem>
|
528
|
+
</references>
|
529
|
+
<references id='_bibliography' obligation='informative' normative='false' hidden="true">
|
530
|
+
<title depth="1">Bibliography</title>
|
531
|
+
<bibitem id='ISBN' type='ISBN'>
|
532
|
+
<title format='text/plain'>Chemicals for analytical laboratory use</title>
|
533
|
+
<docidentifier type='ISBN'>ISBN</docidentifier>
|
534
|
+
<docidentifier type='metanorma'>[1]</docidentifier>
|
535
|
+
<contributor>
|
536
|
+
<role type='publisher'/>
|
537
|
+
<organization>
|
538
|
+
<abbreviation>ISBN</abbreviation>
|
539
|
+
</organization>
|
540
|
+
</contributor>
|
541
|
+
</bibitem>
|
542
|
+
<bibitem id='ISSN' type='ISSN'>
|
543
|
+
<title format='text/plain'>Instruments for analytical laboratory use</title>
|
544
|
+
<docidentifier type='ISSN'>ISSN</docidentifier>
|
545
|
+
<docidentifier type='metanorma'>[2]</docidentifier>
|
546
|
+
<contributor>
|
547
|
+
<role type='publisher'/>
|
548
|
+
<organization>
|
549
|
+
<abbreviation>ISSN</abbreviation>
|
550
|
+
</organization>
|
551
|
+
</contributor>
|
552
|
+
</bibitem>
|
553
|
+
<note>
|
554
|
+
<name>NOTE</name>
|
555
|
+
<p>This is an annotation of document ISSN.</p>
|
556
|
+
</note>
|
557
|
+
<note>
|
558
|
+
<name>NOTE</name>
|
559
|
+
<p>This is another annotation of document ISSN.</p>
|
560
|
+
</note>
|
561
|
+
<bibitem id='ISO3696' type='standard'>
|
562
|
+
<title format='text/plain'>Water for analytical laboratory use</title>
|
563
|
+
<docidentifier type='ISO'>ISO 3696</docidentifier>
|
564
|
+
<contributor>
|
565
|
+
<role type='publisher'/>
|
566
|
+
<organization>
|
567
|
+
<abbreviation>ISO</abbreviation>
|
568
|
+
</organization>
|
569
|
+
</contributor>
|
570
|
+
</bibitem>
|
571
|
+
<bibitem id='ref10'>
|
572
|
+
<formattedref format='application/x-isodoc+xml'>
|
573
|
+
<smallcap>Standard No I.C.C 167</smallcap>
|
574
|
+
.
|
575
|
+
<em>
|
576
|
+
Determination of the protein content in cereal and cereal products
|
577
|
+
for food and animal feeding stuffs according to the Dumas combustion
|
578
|
+
method
|
579
|
+
</em>
|
580
|
+
(see
|
581
|
+
<link target='http://www.icc.or.at'/>
|
582
|
+
)
|
583
|
+
</formattedref>
|
584
|
+
<docidentifier type='metanorma'>[10]</docidentifier>
|
585
|
+
</bibitem>
|
586
|
+
<bibitem id='ref11'>
|
587
|
+
<title>Internet Calendaring and Scheduling Core Object Specification (iCalendar)</title>
|
588
|
+
<docidentifier type='IETF'>RFC 10</docidentifier>
|
589
|
+
</bibitem>
|
590
|
+
<bibitem id='ref12'>
|
591
|
+
<formattedref format='application/x-isodoc+xml'>
|
592
|
+
CitationWorks. 2019.
|
593
|
+
<em>How to cite a reference</em>
|
594
|
+
.
|
595
|
+
</formattedref>
|
596
|
+
<docidentifier type='metanorma'>[Citn]</docidentifier>
|
597
|
+
<docidentifier type='IETF'>RFC 20</docidentifier>
|
598
|
+
</bibitem>
|
599
|
+
</references>
|
600
|
+
</bibliography>
|
601
|
+
</iso-standard>
|
602
|
+
PRESXML
|
603
|
+
|
604
|
+
html = <<~OUTPUT
|
605
|
+
#{HTML_HDR}
|
606
|
+
<br/>
|
607
|
+
<div>
|
608
|
+
<h1 class='ForewordTitle'>Foreword</h1>
|
609
|
+
<p id='_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f'>
|
610
|
+
<a href='#ISO712'>[110]</a>
|
611
|
+
<a href='#ISBN'>[1]</a>
|
612
|
+
<a href='#ISSN'>[2]</a>
|
613
|
+
<a href='#ISO16634'>ISO 16634:-- (all parts)</a>
|
614
|
+
<a href='#ref1'>ICC/167</a>
|
615
|
+
<a href='#ref10'>[10]</a>
|
616
|
+
<a href='#ref12'>Citn</a>
|
617
|
+
<a href='#zip_ffs'>[5]</a>
|
618
|
+
</p>
|
619
|
+
</div>
|
620
|
+
<p class='zzSTDTitle1'/>
|
621
|
+
</div>
|
622
|
+
</body>
|
623
|
+
</html>
|
624
|
+
|
625
|
+
OUTPUT
|
626
|
+
expect(xmlpp(IsoDoc::HtmlConvert.new({}).convert("test", presxml, true))).to be_equivalent_to xmlpp(html)
|
627
|
+
end
|
628
|
+
|
629
|
+
it "processes hidden references sections in Relaton bibliographies" do
|
630
|
+
presxml = <<~PRESXML
|
631
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
|
632
|
+
<bibdata>
|
633
|
+
<language current="true">en</language>
|
634
|
+
</bibdata>
|
635
|
+
<preface>
|
636
|
+
<foreword>
|
637
|
+
<p id='_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f'>
|
638
|
+
<eref bibitemid='ISO712'>[110]</eref>
|
639
|
+
<eref bibitemid='ISBN'>[1]</eref>
|
640
|
+
<eref bibitemid='ISSN'>[2]</eref>
|
641
|
+
<eref bibitemid='ISO16634'>ISO 16634:-- (all parts)</eref>
|
642
|
+
<eref bibitemid='ref1'>ICC/167</eref>
|
643
|
+
<eref bibitemid='ref10'>[10]</eref>
|
644
|
+
<eref bibitemid='ref12'>Citn</eref>
|
645
|
+
<eref bibitemid='zip_ffs'>[5]</eref>
|
646
|
+
</p>
|
647
|
+
</foreword>
|
648
|
+
</preface>
|
649
|
+
<bibliography>
|
650
|
+
<references id='_normative_references' obligation='informative' normative='true'>
|
651
|
+
<title depth='1'>1.<tab/>Normative References</title>
|
652
|
+
<p>
|
653
|
+
The following documents are referred to in the text in such a way that
|
654
|
+
some or all of their content constitutes requirements of this document.
|
655
|
+
For dated references, only the edition cited applies. For undated
|
656
|
+
references, the latest edition of the referenced document (including any
|
657
|
+
amendments) applies.
|
658
|
+
</p>
|
659
|
+
<bibitem id='ISO712' type='standard' hidden="true">
|
660
|
+
<title format='text/plain'>Cereals or cereal products</title>
|
661
|
+
<title type='main' format='text/plain'>Cereals and cereal products</title>
|
662
|
+
<docidentifier type='ISO'>ISO 712</docidentifier>
|
663
|
+
<docidentifier type='metanorma'>[110]</docidentifier>
|
664
|
+
<contributor>
|
665
|
+
<role type='publisher'/>
|
666
|
+
<organization>
|
667
|
+
<name>International Organization for Standardization</name>
|
668
|
+
</organization>
|
669
|
+
</contributor>
|
670
|
+
</bibitem>
|
671
|
+
<bibitem id='ISO16634' type='standard'>
|
672
|
+
<title language='x' format='text/plain'>
|
673
|
+
Cereals, pulses, milled cereal products, xxxx, oilseeds and animal
|
674
|
+
feeding stuffs
|
675
|
+
</title>
|
676
|
+
<title language='en' format='text/plain'>Cereals, pulses, milled cereal products, oilseeds and animal feeding stuffs</title>
|
677
|
+
<docidentifier type='ISO'>ISO 16634:-- (all parts)</docidentifier>
|
678
|
+
<date type='published'>
|
679
|
+
<on>--</on>
|
680
|
+
</date>
|
681
|
+
<contributor>
|
682
|
+
<role type='publisher'/>
|
683
|
+
<organization>
|
684
|
+
<abbreviation>ISO</abbreviation>
|
685
|
+
</organization>
|
686
|
+
</contributor>
|
687
|
+
<note format='text/plain' type='Unpublished-Status' reference='1'>Under preparation. (Stage at the time of publication ISO/DIS 16634)</note>
|
688
|
+
<extent type='part'>
|
689
|
+
<referenceFrom>all</referenceFrom>
|
690
|
+
</extent>
|
691
|
+
</bibitem>
|
692
|
+
</references></bibliography></iso-standard>
|
693
|
+
PRESXML
|
694
|
+
|
695
|
+
html = <<~OUTPUT
|
696
|
+
#{HTML_HDR}
|
697
|
+
<br/>
|
698
|
+
<div>
|
699
|
+
<h1 class='ForewordTitle'>Foreword</h1>
|
700
|
+
<p id='_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f'>
|
701
|
+
<a href='#ISO712'>[110]</a>
|
702
|
+
<a href='#ISBN'>[1]</a>
|
703
|
+
<a href='#ISSN'>[2]</a>
|
704
|
+
<a href='#ISO16634'>ISO 16634:-- (all parts)</a>
|
705
|
+
<a href='#ref1'>ICC/167</a>
|
706
|
+
<a href='#ref10'>[10]</a>
|
707
|
+
<a href='#ref12'>Citn</a>
|
708
|
+
<a href='#zip_ffs'>[5]</a>
|
709
|
+
</p>
|
710
|
+
</div>
|
711
|
+
<p class='zzSTDTitle1'/>
|
712
|
+
<div>
|
713
|
+
<h1>1.  Normative References</h1>
|
714
|
+
<p>
|
715
|
+
The following documents are referred to in the text in such a way
|
716
|
+
that some or all of their content constitutes requirements of this
|
717
|
+
document. For dated references, only the edition cited applies. For
|
718
|
+
undated references, the latest edition of the referenced document
|
719
|
+
(including any amendments) applies.
|
720
|
+
</p>
|
721
|
+
<p id='ISO16634' class='NormRef'>
|
722
|
+
ISO 16634:-- (all parts)
|
723
|
+
<a class='FootnoteRef' href='#fn:1'>
|
724
|
+
<sup>1</sup>
|
725
|
+
</a>
|
726
|
+
,
|
727
|
+
<i>Cereals, pulses, milled cereal products, oilseeds and animal feeding stuffs</i>
|
728
|
+
</p>
|
729
|
+
</div>
|
730
|
+
<aside id='fn:1' class='footnote'>
|
731
|
+
<p>Under preparation. (Stage at the time of publication ISO/DIS 16634)</p>
|
732
|
+
</aside>
|
733
|
+
|
734
|
+
</div>
|
735
|
+
</body>
|
736
|
+
</html>
|
737
|
+
|
738
|
+
OUTPUT
|
739
|
+
expect(xmlpp(IsoDoc::HtmlConvert.new({}).convert("test", presxml, true))).to be_equivalent_to xmlpp(html)
|
740
|
+
end
|
741
|
+
|
742
|
+
|
427
743
|
end
|
744
|
+
|
745
|
+
|
data/spec/isodoc/table_spec.rb
CHANGED
@@ -8,6 +8,13 @@ RSpec.describe IsoDoc do
|
|
8
8
|
<foreword>
|
9
9
|
<table id="tableD-1" alt="tool tip" summary="long desc" width="70%" keep-with-next="true" keep-lines-together="true">
|
10
10
|
<name>Repeatability and reproducibility of <em>husked</em> rice yield<fn reference="1"><p>X</p></fn></name>
|
11
|
+
<colgroup>
|
12
|
+
<col width="30%"/>
|
13
|
+
<col width="20%"/>
|
14
|
+
<col width="20%"/>
|
15
|
+
<col width="20%"/>
|
16
|
+
<col width="10%"/>
|
17
|
+
</colgroup>
|
11
18
|
<thead>
|
12
19
|
<tr>
|
13
20
|
<td rowspan="2" align="left">Description</td>
|
@@ -77,6 +84,13 @@ RSpec.describe IsoDoc do
|
|
77
84
|
<p>X</p>
|
78
85
|
</fn>
|
79
86
|
</name>
|
87
|
+
<colgroup>
|
88
|
+
<col width='30%'/>
|
89
|
+
<col width='20%'/>
|
90
|
+
<col width='20%'/>
|
91
|
+
<col width='20%'/>
|
92
|
+
<col width='10%'/>
|
93
|
+
</colgroup>
|
80
94
|
<thead>
|
81
95
|
<tr>
|
82
96
|
<td rowspan='2' align='left'>Description</td>
|
@@ -165,6 +179,13 @@ html = <<~OUTPUT
|
|
165
179
|
<caption>
|
166
180
|
<span style="display:none">long desc</span>
|
167
181
|
</caption>
|
182
|
+
<colgroup>
|
183
|
+
<col style='width: 30%;'/>
|
184
|
+
<col style='width: 20%;'/>
|
185
|
+
<col style='width: 20%;'/>
|
186
|
+
<col style='width: 20%;'/>
|
187
|
+
<col style='width: 10%;'/>
|
188
|
+
</colgroup>
|
168
189
|
<thead>
|
169
190
|
<tr>
|
170
191
|
<td rowspan="2" style="text-align:left;border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;" scope="col">Description</td>
|
@@ -259,6 +280,13 @@ html = <<~OUTPUT
|
|
259
280
|
</p>
|
260
281
|
<div align='center' class='table_container'>
|
261
282
|
<table id='tableD-1' class='MsoISOTable' style='mso-table-anchor-horizontal:column;mso-table-overlap:never;border-spacing:0;border-width:1px;page-break-after: avoid;page-break-inside: avoid;' title='tool tip' summary='long desc' width='70%'>
|
283
|
+
<colgroup>
|
284
|
+
<col width='30%'/>
|
285
|
+
<col width='20%'/>
|
286
|
+
<col width='20%'/>
|
287
|
+
<col width='20%'/>
|
288
|
+
<col width='10%'/>
|
289
|
+
</colgroup>
|
262
290
|
<thead>
|
263
291
|
<tr>
|
264
292
|
<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.5pt;mso-border-bottom-alt:solid windowtext 1.5pt;'>Description</td>
|
data/spec/isodoc/xref_spec.rb
CHANGED
@@ -2313,7 +2313,7 @@ OUTPUT
|
|
2313
2313
|
<li id="N1"><p>A</p></li>
|
2314
2314
|
</ol>
|
2315
2315
|
<clause id="xyz"><title>Preparatory</title>
|
2316
|
-
<ol id="N02">
|
2316
|
+
<ol id="N02" type="arabic">
|
2317
2317
|
<li id="N2"><p>A</p></li>
|
2318
2318
|
</ol>
|
2319
2319
|
</clause>
|
@@ -2321,17 +2321,17 @@ OUTPUT
|
|
2321
2321
|
</preface>
|
2322
2322
|
<sections>
|
2323
2323
|
<clause id="scope" type="scope"><title>Scope</title>
|
2324
|
-
<ol id="N0">
|
2324
|
+
<ol id="N0" type="roman">
|
2325
2325
|
<li id="N"><p>A</p></li>
|
2326
2326
|
</ol>
|
2327
2327
|
</clause>
|
2328
2328
|
<terms id="terms"/>
|
2329
2329
|
<clause id="widgets"><title>Widgets</title>
|
2330
2330
|
<clause id="widgets1">
|
2331
|
-
<ol id="note1l">
|
2331
|
+
<ol id="note1l" type="alphabet">
|
2332
2332
|
<li id="note1"><p>A</p></li>
|
2333
2333
|
</ol>
|
2334
|
-
<ol id="note2l">
|
2334
|
+
<ol id="note2l" type="roman_upper">
|
2335
2335
|
<li id="note2"><p>A</p></li>
|
2336
2336
|
</ol>
|
2337
2337
|
</clause>
|
@@ -2339,12 +2339,12 @@ OUTPUT
|
|
2339
2339
|
</sections>
|
2340
2340
|
<annex id="annex1">
|
2341
2341
|
<clause id="annex1a">
|
2342
|
-
<ol id="ANl">
|
2342
|
+
<ol id="ANl" type="alphabet_upper">
|
2343
2343
|
<li id="AN"><p>A</p></li>
|
2344
2344
|
</ol>
|
2345
2345
|
</clause>
|
2346
2346
|
<clause id="annex1b">
|
2347
|
-
<ol id="Anote1l">
|
2347
|
+
<ol id="Anote1l" type="roman" start="4">
|
2348
2348
|
<li id="Anote1"><p>A</p></li>
|
2349
2349
|
</ol>
|
2350
2350
|
<ol id="Anote2l">
|
@@ -2360,12 +2360,12 @@ OUTPUT
|
|
2360
2360
|
<foreword>
|
2361
2361
|
<p>
|
2362
2362
|
<xref target='N1'>Introduction, a)</xref>
|
2363
|
-
<xref target='N2'>Preparatory,
|
2364
|
-
<xref target='N'>Clause 1,
|
2363
|
+
<xref target='N2'>Preparatory, 1)</xref>
|
2364
|
+
<xref target='N'>Clause 1, i)</xref>
|
2365
2365
|
<xref target='note1'>Clause 3.1, List 1 a)</xref>
|
2366
|
-
<xref target='note2'>Clause 3.1, List 2
|
2367
|
-
<xref target='AN'>Annex A.1,
|
2368
|
-
<xref target='Anote1'>Annex A.2, List 1
|
2366
|
+
<xref target='note2'>Clause 3.1, List 2 I)</xref>
|
2367
|
+
<xref target='AN'>Annex A.1, A)</xref>
|
2368
|
+
<xref target='Anote1'>Annex A.2, List 1 iv)</xref>
|
2369
2369
|
<xref target='Anote2'>Annex A.2, List 2 a)</xref>
|
2370
2370
|
</p>
|
2371
2371
|
</foreword>
|
@@ -2377,7 +2377,7 @@ OUTPUT
|
|
2377
2377
|
</ol>
|
2378
2378
|
<clause id='xyz'>
|
2379
2379
|
<title depth='2'>Preparatory</title>
|
2380
|
-
<ol id='N02'>
|
2380
|
+
<ol id='N02' type="arabic">
|
2381
2381
|
<li id='N2'>
|
2382
2382
|
<p>A</p>
|
2383
2383
|
</li>
|
@@ -2392,7 +2392,7 @@ OUTPUT
|
|
2392
2392
|
<tab/>
|
2393
2393
|
Scope
|
2394
2394
|
</title>
|
2395
|
-
<ol id='N0'>
|
2395
|
+
<ol id='N0' type="roman">
|
2396
2396
|
<li id='N'>
|
2397
2397
|
<p>A</p>
|
2398
2398
|
</li>
|
@@ -2408,12 +2408,12 @@ OUTPUT
|
|
2408
2408
|
Widgets
|
2409
2409
|
</title>
|
2410
2410
|
<clause id='widgets1'><title>3.1.</title>
|
2411
|
-
<ol id='note1l'>
|
2411
|
+
<ol id='note1l' type="alphabet">
|
2412
2412
|
<li id='note1'>
|
2413
2413
|
<p>A</p>
|
2414
2414
|
</li>
|
2415
2415
|
</ol>
|
2416
|
-
<ol id='note2l'>
|
2416
|
+
<ol id='note2l' type="roman_upper">
|
2417
2417
|
<li id='note2'>
|
2418
2418
|
<p>A</p>
|
2419
2419
|
</li>
|
@@ -2428,14 +2428,14 @@ OUTPUT
|
|
2428
2428
|
(informative)
|
2429
2429
|
</title>
|
2430
2430
|
<clause id='annex1a'><title>A.1.</title>
|
2431
|
-
<ol id='ANl'>
|
2431
|
+
<ol id='ANl' type="alphabet_upper">
|
2432
2432
|
<li id='AN'>
|
2433
2433
|
<p>A</p>
|
2434
2434
|
</li>
|
2435
2435
|
</ol>
|
2436
2436
|
</clause>
|
2437
2437
|
<clause id='annex1b'><title>A.2.</title>
|
2438
|
-
<ol id='Anote1l'>
|
2438
|
+
<ol id='Anote1l' type="roman" start="4">
|
2439
2439
|
<li id='Anote1'>
|
2440
2440
|
<p>A</p>
|
2441
2441
|
</li>
|
@@ -2547,6 +2547,151 @@ OUTPUT
|
|
2547
2547
|
OUTPUT
|
2548
2548
|
end
|
2549
2549
|
|
2550
|
+
it "cross-references bookmarks" do
|
2551
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({}).convert("test", <<~"INPUT", true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
2552
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
2553
|
+
<preface>
|
2554
|
+
<foreword>
|
2555
|
+
<p>
|
2556
|
+
<xref target="N1"/>
|
2557
|
+
<xref target="N2"/>
|
2558
|
+
<xref target="N"/>
|
2559
|
+
<xref target="note1"/>
|
2560
|
+
<xref target="note2"/>
|
2561
|
+
<xref target="AN"/>
|
2562
|
+
<xref target="Anote1"/>
|
2563
|
+
<xref target="Anote2"/>
|
2564
|
+
</p>
|
2565
|
+
</foreword>
|
2566
|
+
<introduction id="intro">
|
2567
|
+
<p id="N01">
|
2568
|
+
<bookmark id="N1"/>
|
2569
|
+
</p>
|
2570
|
+
<clause id="xyz"><title>Preparatory</title>
|
2571
|
+
<p id="N02" type="arabic">
|
2572
|
+
<bookmark id="N2"/>
|
2573
|
+
</p>
|
2574
|
+
</clause>
|
2575
|
+
</introduction>
|
2576
|
+
</preface>
|
2577
|
+
<sections>
|
2578
|
+
<clause id="scope" type="scope"><title>Scope</title>
|
2579
|
+
<p id="N0" type="roman">
|
2580
|
+
<bookmark id="N"/>
|
2581
|
+
</p>
|
2582
|
+
</clause>
|
2583
|
+
<terms id="terms"/>
|
2584
|
+
<clause id="widgets"><title>Widgets</title>
|
2585
|
+
<clause id="widgets1">
|
2586
|
+
<p id="note1l" type="alphabet">
|
2587
|
+
<bookmark id="note1"/>
|
2588
|
+
</p>
|
2589
|
+
<p id="note2l" type="roman_upper">
|
2590
|
+
<bookmark id="note2"/>
|
2591
|
+
</p>
|
2592
|
+
</clause>
|
2593
|
+
</clause>
|
2594
|
+
</sections>
|
2595
|
+
<annex id="annex1">
|
2596
|
+
<clause id="annex1a">
|
2597
|
+
<p id="ANl" type="alphabet_upper">
|
2598
|
+
<bookmark id="AN"/>
|
2599
|
+
</p>
|
2600
|
+
</clause>
|
2601
|
+
<clause id="annex1b">
|
2602
|
+
<p id="Anote1l" type="roman" start="4">
|
2603
|
+
<bookmark id="Anote1"/>
|
2604
|
+
</p>
|
2605
|
+
<p id="Anote2l">
|
2606
|
+
<bookmark id="Anote2"/>
|
2607
|
+
</p>
|
2608
|
+
</clause>
|
2609
|
+
</annex>
|
2610
|
+
</iso-standard>
|
2611
|
+
INPUT
|
2612
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
2613
|
+
<preface>
|
2614
|
+
<foreword>
|
2615
|
+
<p>
|
2616
|
+
<xref target='N1'>Introduction</xref>
|
2617
|
+
<xref target='N2'>Preparatory</xref>
|
2618
|
+
<xref target='N'>Clause 1</xref>
|
2619
|
+
<xref target='note1'>Clause 3.1</xref>
|
2620
|
+
<xref target='note2'>Clause 3.1</xref>
|
2621
|
+
<xref target='AN'>Annex A.1</xref>
|
2622
|
+
<xref target='Anote1'>Annex A.2</xref>
|
2623
|
+
<xref target='Anote2'>Annex A.2</xref>
|
2624
|
+
</p>
|
2625
|
+
</foreword>
|
2626
|
+
<introduction id='intro'>
|
2627
|
+
<p id='N01'>
|
2628
|
+
<bookmark id='N1'/>
|
2629
|
+
</p>
|
2630
|
+
<clause id='xyz'>
|
2631
|
+
<title depth='2'>Preparatory</title>
|
2632
|
+
<p id='N02' type='arabic'>
|
2633
|
+
<bookmark id='N2'/>
|
2634
|
+
</p>
|
2635
|
+
</clause>
|
2636
|
+
</introduction>
|
2637
|
+
</preface>
|
2638
|
+
<sections>
|
2639
|
+
<clause id='scope' type='scope'>
|
2640
|
+
<title depth='1'>
|
2641
|
+
1.
|
2642
|
+
<tab/>
|
2643
|
+
Scope
|
2644
|
+
</title>
|
2645
|
+
<p id='N0' type='roman'>
|
2646
|
+
<bookmark id='N'/>
|
2647
|
+
</p>
|
2648
|
+
</clause>
|
2649
|
+
<terms id='terms'>
|
2650
|
+
<title>2.</title>
|
2651
|
+
</terms>
|
2652
|
+
<clause id='widgets'>
|
2653
|
+
<title depth='1'>
|
2654
|
+
3.
|
2655
|
+
<tab/>
|
2656
|
+
Widgets
|
2657
|
+
</title>
|
2658
|
+
<clause id='widgets1'>
|
2659
|
+
<title>3.1.</title>
|
2660
|
+
<p id='note1l' type='alphabet'>
|
2661
|
+
<bookmark id='note1'/>
|
2662
|
+
</p>
|
2663
|
+
<p id='note2l' type='roman_upper'>
|
2664
|
+
<bookmark id='note2'/>
|
2665
|
+
</p>
|
2666
|
+
</clause>
|
2667
|
+
</clause>
|
2668
|
+
</sections>
|
2669
|
+
<annex id='annex1'>
|
2670
|
+
<title>
|
2671
|
+
<strong>Annex A</strong>
|
2672
|
+
<br/>
|
2673
|
+
(informative)
|
2674
|
+
</title>
|
2675
|
+
<clause id='annex1a'>
|
2676
|
+
<title>A.1.</title>
|
2677
|
+
<p id='ANl' type='alphabet_upper'>
|
2678
|
+
<bookmark id='AN'/>
|
2679
|
+
</p>
|
2680
|
+
</clause>
|
2681
|
+
<clause id='annex1b'>
|
2682
|
+
<title>A.2.</title>
|
2683
|
+
<p id='Anote1l' type='roman' start='4'>
|
2684
|
+
<bookmark id='Anote1'/>
|
2685
|
+
</p>
|
2686
|
+
<p id='Anote2l'>
|
2687
|
+
<bookmark id='Anote2'/>
|
2688
|
+
</p>
|
2689
|
+
</clause>
|
2690
|
+
</annex>
|
2691
|
+
</iso-standard>
|
2692
|
+
OUTPUT
|
2693
|
+
end
|
2694
|
+
|
2550
2695
|
it "realises subsequences" do
|
2551
2696
|
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({}).convert("test", <<~"INPUT", true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
2552
2697
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
@@ -2665,6 +2810,31 @@ INPUT
|
|
2665
2810
|
<xref target="N12"/>
|
2666
2811
|
<xref target="N13"/>
|
2667
2812
|
</p>
|
2813
|
+
<p>
|
2814
|
+
<xref target="S1"/>
|
2815
|
+
<xref target="S2"/>
|
2816
|
+
<xref target="S3"/>
|
2817
|
+
<xref target="S4"/>
|
2818
|
+
<xref target="S12"/>
|
2819
|
+
<xref target="S13"/>
|
2820
|
+
<xref target="S14"/>
|
2821
|
+
<xref target="S15"/>
|
2822
|
+
<xref target="S16"/>
|
2823
|
+
<xref target="S17"/>
|
2824
|
+
<xref target="S18"/>
|
2825
|
+
<xref target="S19"/>
|
2826
|
+
<xref target="S20"/>
|
2827
|
+
<xref target="S21"/>
|
2828
|
+
<xref target="S22"/>
|
2829
|
+
<xref target="S23"/>
|
2830
|
+
<xref target="S24"/>
|
2831
|
+
<xref target="S25"/>
|
2832
|
+
<xref target="S26"/>
|
2833
|
+
<xref target="S27"/>
|
2834
|
+
<xref target="S28"/>
|
2835
|
+
<xref target="S29"/>
|
2836
|
+
<xref target="S30"/>
|
2837
|
+
</p>
|
2668
2838
|
</foreword>
|
2669
2839
|
<introduction id="intro">
|
2670
2840
|
<figure id="N1"> <name>Split-it-right sample divider</name>
|
@@ -2707,6 +2877,83 @@ INPUT
|
|
2707
2877
|
<image src="rice_images/rice_image1.png" id="_8357ede4-6d44-4672-bac4-9a85e82ab7f0" mimetype="image/png"/>
|
2708
2878
|
</figure>
|
2709
2879
|
</introduction>
|
2880
|
+
</preface>
|
2881
|
+
<sections>
|
2882
|
+
<clause id='S1' number='1bis' type='scope' inline-header='false' obligation='normative'>
|
2883
|
+
<title>Scope</title>
|
2884
|
+
<p id='_'>Text</p>
|
2885
|
+
</clause>
|
2886
|
+
<terms id='S3' number='3bis' obligation='normative'>
|
2887
|
+
<title>Terms and definitions</title>
|
2888
|
+
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
2889
|
+
<term id='S4' number='4bis'>
|
2890
|
+
<preferred>Term1</preferred>
|
2891
|
+
</term>
|
2892
|
+
</terms>
|
2893
|
+
<definitions id='S12' number='12bis' type='abbreviated_terms' obligation='normative'>
|
2894
|
+
<title>Abbreviated terms</title>
|
2895
|
+
</definitions>
|
2896
|
+
<clause id='S13' number='13bis' inline-header='false' obligation='normative'>
|
2897
|
+
<title>Clause 4</title>
|
2898
|
+
<clause id='S14' number='14bis' inline-header='false' obligation='normative'>
|
2899
|
+
<title>Introduction</title>
|
2900
|
+
</clause>
|
2901
|
+
<clause id='S15' inline-header='false' obligation='normative'>
|
2902
|
+
<title>Clause A</title>
|
2903
|
+
</clause>
|
2904
|
+
<clause id='S16' inline-header='false' obligation='normative'>
|
2905
|
+
<title>Clause B</title>
|
2906
|
+
</clause>
|
2907
|
+
<clause id='S17' number='0' inline-header='false' obligation='normative'>
|
2908
|
+
<title>Clause C</title>
|
2909
|
+
</clause>
|
2910
|
+
<clause id='S18' inline-header='false' obligation='normative'>
|
2911
|
+
<title>Clause D</title>
|
2912
|
+
</clause>
|
2913
|
+
<clause id='S19' inline-header='false' obligation='normative'>
|
2914
|
+
<title>Clause E</title>
|
2915
|
+
</clause>
|
2916
|
+
<clause id='S20' number='a' inline-header='false' obligation='normative'>
|
2917
|
+
<title>Clause F</title>
|
2918
|
+
</clause>
|
2919
|
+
<clause id='S21' inline-header='false' obligation='normative'>
|
2920
|
+
<title>Clause G</title>
|
2921
|
+
</clause>
|
2922
|
+
<clause id='S22' number='B' inline-header='false' obligation='normative'>
|
2923
|
+
<title>Clause H</title>
|
2924
|
+
</clause>
|
2925
|
+
<clause id='S23' inline-header='false' obligation='normative'>
|
2926
|
+
<title>Clause I</title>
|
2927
|
+
</clause>
|
2928
|
+
</clause>
|
2929
|
+
<clause id='S24' number='16bis' inline-header='false' obligation='normative'>
|
2930
|
+
<title>Terms and Definitions</title>
|
2931
|
+
</clause>
|
2932
|
+
</sections>
|
2933
|
+
<annex id='S25' obligation='normative'>
|
2934
|
+
<title>First Annex</title>
|
2935
|
+
</annex>
|
2936
|
+
<annex id='S26' number='17bis' inline-header='false' obligation='normative'>
|
2937
|
+
<title>Annex</title>
|
2938
|
+
<clause id='S27' number='18bis' inline-header='false' obligation='normative'>
|
2939
|
+
<title>Annex A.1</title>
|
2940
|
+
</clause>
|
2941
|
+
</annex>
|
2942
|
+
<annex id='S28' inline-header='false' obligation='normative'>
|
2943
|
+
<title>Another Annex</title>
|
2944
|
+
</annex>
|
2945
|
+
<bibliography>
|
2946
|
+
<references id='S2' number='2bis' normative='true' obligation='informative'>
|
2947
|
+
<title>Normative references</title>
|
2948
|
+
<p id='_'>There are no normative references in this document.</p>
|
2949
|
+
</references>
|
2950
|
+
<clause id='S29' number='19bis' obligation='informative'>
|
2951
|
+
<title>Bibliography</title>
|
2952
|
+
<references id='S30' number='20bis' normative='false' obligation='informative'>
|
2953
|
+
<title>Bibliography Subsection</title>
|
2954
|
+
</references>
|
2955
|
+
</clause>
|
2956
|
+
</bibliography>
|
2710
2957
|
</iso-standard>
|
2711
2958
|
INPUT
|
2712
2959
|
<?xml version='1.0'?>
|
@@ -2716,7 +2963,7 @@ INPUT
|
|
2716
2963
|
<p>
|
2717
2964
|
<xref target='N1'>Figure 1</xref>
|
2718
2965
|
<xref target='N2'>Figure A</xref>
|
2719
|
-
<xref target='N3'>Figure
|
2966
|
+
<xref target='N3'>Figure B</xref>
|
2720
2967
|
<xref target='N4'>Figure 7</xref>
|
2721
2968
|
<xref target='N5'>Figure 8</xref>
|
2722
2969
|
<xref target='N6'>Figure 9a</xref>
|
@@ -2728,6 +2975,31 @@ INPUT
|
|
2728
2975
|
<xref target='N12'>Figure A.2</xref>
|
2729
2976
|
<xref target='N13'>Figure 100</xref>
|
2730
2977
|
</p>
|
2978
|
+
<p>
|
2979
|
+
<xref target='S1'>Clause 1bis</xref>
|
2980
|
+
<xref target='S2'>Clause 2bis</xref>
|
2981
|
+
<xref target='S3'>Clause 3bis</xref>
|
2982
|
+
<xref target='S4'>Clause 3bis.4bis</xref>
|
2983
|
+
<xref target='S12'>Clause 12bis</xref>
|
2984
|
+
<xref target='S13'>Clause 13bis</xref>
|
2985
|
+
<xref target='S14'>Clause 13bis.14bis</xref>
|
2986
|
+
<xref target='S15'>Clause 13bis.14bit</xref>
|
2987
|
+
<xref target='S16'>Clause 13bis.14biu</xref>
|
2988
|
+
<xref target='S17'>Clause 13bis.0</xref>
|
2989
|
+
<xref target='S18'>Clause 13bis.1</xref>
|
2990
|
+
<xref target='S19'>Clause 13bis.2</xref>
|
2991
|
+
<xref target='S20'>Clause 13bis.a</xref>
|
2992
|
+
<xref target='S21'>Clause 13bis.b</xref>
|
2993
|
+
<xref target='S22'>Clause 13bis.B</xref>
|
2994
|
+
<xref target='S23'>Clause 13bis.C</xref>
|
2995
|
+
<xref target='S24'>Clause 16bis</xref>
|
2996
|
+
<xref target='S25'>Annex A</xref>
|
2997
|
+
<xref target='S26'>Annex 17bis</xref>
|
2998
|
+
<xref target='S27'>Annex 17bis.18bis</xref>
|
2999
|
+
<xref target='S28'>Annex 17bit</xref>
|
3000
|
+
<xref target='S29'>Bibliography</xref>
|
3001
|
+
<xref target='S30'>Bibliography Subsection</xref>
|
3002
|
+
</p>
|
2731
3003
|
</foreword>
|
2732
3004
|
<introduction id='intro'>
|
2733
3005
|
<figure id='N1'>
|
@@ -2739,7 +3011,7 @@ INPUT
|
|
2739
3011
|
<image src='rice_images/rice_image1.png' id='_8357ede4-6d44-4672-bac4-9a85e82ab7f0' mimetype='image/png'/>
|
2740
3012
|
</figure>
|
2741
3013
|
<figure id='N3'>
|
2742
|
-
<name>Figure
|
3014
|
+
<name>Figure B — Split-it-right sample divider</name>
|
2743
3015
|
<image src='rice_images/rice_image1.png' id='_8357ede4-6d44-4672-bac4-9a85e82ab7f0' mimetype='image/png'/>
|
2744
3016
|
</figure>
|
2745
3017
|
<figure id='N4' number='7'>
|
@@ -2785,8 +3057,189 @@ INPUT
|
|
2785
3057
|
|
2786
3058
|
</introduction>
|
2787
3059
|
</preface>
|
3060
|
+
<sections>
|
3061
|
+
<clause id='S1' number='1bis' type='scope' inline-header='false' obligation='normative'>
|
3062
|
+
<title depth='1'>
|
3063
|
+
1bis.
|
3064
|
+
<tab/>
|
3065
|
+
Scope
|
3066
|
+
</title>
|
3067
|
+
<p id='_'>Text</p>
|
3068
|
+
</clause>
|
3069
|
+
<terms id='S3' number='3bis' obligation='normative'>
|
3070
|
+
<title depth='1'>
|
3071
|
+
3bis.
|
3072
|
+
<tab/>
|
3073
|
+
Terms and definitions
|
3074
|
+
</title>
|
3075
|
+
<p id='_'>For the purposes of this document, the following terms and definitions apply.</p>
|
3076
|
+
<term id='S4' number='4bis'>
|
3077
|
+
<name>3bis.4bis.</name>
|
3078
|
+
<preferred>Term1</preferred>
|
3079
|
+
</term>
|
3080
|
+
</terms>
|
3081
|
+
<definitions id='S12' number='12bis' type='abbreviated_terms' obligation='normative'>
|
3082
|
+
<title depth='1'>
|
3083
|
+
12bis.
|
3084
|
+
<tab/>
|
3085
|
+
Abbreviated terms
|
3086
|
+
</title>
|
3087
|
+
</definitions>
|
3088
|
+
<clause id='S13' number='13bis' inline-header='false' obligation='normative'>
|
3089
|
+
<title depth='1'>
|
3090
|
+
13bis.
|
3091
|
+
<tab/>
|
3092
|
+
Clause 4
|
3093
|
+
</title>
|
3094
|
+
<clause id='S14' number='14bis' inline-header='false' obligation='normative'>
|
3095
|
+
<title depth='2'>
|
3096
|
+
13bis.14bis.
|
3097
|
+
<tab/>
|
3098
|
+
Introduction
|
3099
|
+
</title>
|
3100
|
+
</clause>
|
3101
|
+
<clause id='S15' inline-header='false' obligation='normative'>
|
3102
|
+
<title depth='2'>
|
3103
|
+
13bis.14bit.
|
3104
|
+
<tab/>
|
3105
|
+
Clause A
|
3106
|
+
</title>
|
3107
|
+
</clause>
|
3108
|
+
<clause id='S16' inline-header='false' obligation='normative'>
|
3109
|
+
<title depth='2'>
|
3110
|
+
13bis.14biu.
|
3111
|
+
<tab/>
|
3112
|
+
Clause B
|
3113
|
+
</title>
|
3114
|
+
</clause>
|
3115
|
+
<clause id='S17' number='0' inline-header='false' obligation='normative'>
|
3116
|
+
<title depth='2'>
|
3117
|
+
13bis.0.
|
3118
|
+
<tab/>
|
3119
|
+
Clause C
|
3120
|
+
</title>
|
3121
|
+
</clause>
|
3122
|
+
<clause id='S18' inline-header='false' obligation='normative'>
|
3123
|
+
<title depth='2'>
|
3124
|
+
13bis.1.
|
3125
|
+
<tab/>
|
3126
|
+
Clause D
|
3127
|
+
</title>
|
3128
|
+
</clause>
|
3129
|
+
<clause id='S19' inline-header='false' obligation='normative'>
|
3130
|
+
<title depth='2'>
|
3131
|
+
13bis.2.
|
3132
|
+
<tab/>
|
3133
|
+
Clause E
|
3134
|
+
</title>
|
3135
|
+
</clause>
|
3136
|
+
<clause id='S20' number='a' inline-header='false' obligation='normative'>
|
3137
|
+
<title depth='2'>
|
3138
|
+
13bis.a.
|
3139
|
+
<tab/>
|
3140
|
+
Clause F
|
3141
|
+
</title>
|
3142
|
+
</clause>
|
3143
|
+
<clause id='S21' inline-header='false' obligation='normative'>
|
3144
|
+
<title depth='2'>
|
3145
|
+
13bis.b.
|
3146
|
+
<tab/>
|
3147
|
+
Clause G
|
3148
|
+
</title>
|
3149
|
+
</clause>
|
3150
|
+
<clause id='S22' number='B' inline-header='false' obligation='normative'>
|
3151
|
+
<title depth='2'>
|
3152
|
+
13bis.B.
|
3153
|
+
<tab/>
|
3154
|
+
Clause H
|
3155
|
+
</title>
|
3156
|
+
</clause>
|
3157
|
+
<clause id='S23' inline-header='false' obligation='normative'>
|
3158
|
+
<title depth='2'>
|
3159
|
+
13bis.C.
|
3160
|
+
<tab/>
|
3161
|
+
Clause I
|
3162
|
+
</title>
|
3163
|
+
</clause>
|
3164
|
+
</clause>
|
3165
|
+
<clause id='S24' number='16bis' inline-header='false' obligation='normative'>
|
3166
|
+
<title depth='1'>
|
3167
|
+
16bis.
|
3168
|
+
<tab/>
|
3169
|
+
Terms and Definitions
|
3170
|
+
</title>
|
3171
|
+
</clause>
|
3172
|
+
</sections>
|
3173
|
+
<annex id='S25' obligation='normative'>
|
3174
|
+
<title>
|
3175
|
+
<strong>Annex A</strong>
|
3176
|
+
<br/>
|
3177
|
+
(normative)
|
3178
|
+
<br/>
|
3179
|
+
<br/>
|
3180
|
+
<strong>First Annex</strong>
|
3181
|
+
</title>
|
3182
|
+
</annex>
|
3183
|
+
<annex id='S26' number='17bis' inline-header='false' obligation='normative'>
|
3184
|
+
<title>
|
3185
|
+
<strong>Annex 17bis</strong>
|
3186
|
+
<br/>
|
3187
|
+
(normative)
|
3188
|
+
<br/>
|
3189
|
+
<br/>
|
3190
|
+
<strong>Annex</strong>
|
3191
|
+
</title>
|
3192
|
+
<clause id='S27' number='18bis' inline-header='false' obligation='normative'>
|
3193
|
+
<title depth='2'>
|
3194
|
+
17bis.18bis.
|
3195
|
+
<tab/>
|
3196
|
+
Annex A.1
|
3197
|
+
</title>
|
3198
|
+
</clause>
|
3199
|
+
</annex>
|
3200
|
+
<annex id='S28' inline-header='false' obligation='normative'>
|
3201
|
+
<title>
|
3202
|
+
<strong>Annex 17bit</strong>
|
3203
|
+
<br/>
|
3204
|
+
(normative)
|
3205
|
+
<br/>
|
3206
|
+
<br/>
|
3207
|
+
<strong>Another Annex</strong>
|
3208
|
+
</title>
|
3209
|
+
</annex>
|
3210
|
+
<bibliography>
|
3211
|
+
<references id='S2' number='2bis' normative='true' obligation='informative'>
|
3212
|
+
<title depth='1'>
|
3213
|
+
2bis.
|
3214
|
+
<tab/>
|
3215
|
+
Normative references
|
3216
|
+
</title>
|
3217
|
+
<p id='_'>There are no normative references in this document.</p>
|
3218
|
+
</references>
|
3219
|
+
<clause id='S29' number='19bis' obligation='informative'>
|
3220
|
+
<title depth='1'>Bibliography</title>
|
3221
|
+
<references id='S30' number='20bis' normative='false' obligation='informative'>
|
3222
|
+
<title depth='2'>Bibliography Subsection</title>
|
3223
|
+
</references>
|
3224
|
+
</clause>
|
3225
|
+
</bibliography>
|
2788
3226
|
</iso-standard>
|
2789
3227
|
OUTPUT
|
2790
3228
|
end
|
2791
3229
|
|
3230
|
+
it "realises roman counter for xrefs" do
|
3231
|
+
a = IsoDoc::XrefGen::Counter.new(0, numerals: :roman)
|
3232
|
+
a.increment({})
|
3233
|
+
expect(a.print).to eq "I"
|
3234
|
+
a.increment({})
|
3235
|
+
expect(a.print).to eq "II"
|
3236
|
+
a.increment({})
|
3237
|
+
expect(a.print).to eq "III"
|
3238
|
+
a.increment({})
|
3239
|
+
expect(a.print).to eq "IV"
|
3240
|
+
a.increment({})
|
3241
|
+
expect(a.print).to eq "V"
|
3242
|
+
|
3243
|
+
end
|
3244
|
+
|
2792
3245
|
end
|