isodoc 1.7.7 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/isodoc.gemspec +1 -1
- data/lib/isodoc/function/cleanup.rb +4 -0
- data/lib/isodoc/presentation_function/block.rb +0 -36
- data/lib/isodoc/presentation_function/inline.rb +2 -3
- data/lib/isodoc/presentation_function/terms.rb +179 -0
- data/lib/isodoc/presentation_xml_convert.rb +11 -4
- data/lib/isodoc/version.rb +1 -1
- data/lib/isodoc/word_function/postprocess.rb +184 -176
- data/lib/isodoc/xslfo_convert.rb +9 -6
- data/lib/isodoc-yaml/i18n-ar.yaml +22 -0
- data/lib/isodoc-yaml/i18n-de.yaml +20 -0
- data/lib/isodoc-yaml/i18n-en.yaml +20 -0
- data/lib/isodoc-yaml/i18n-es.yaml +20 -0
- data/lib/isodoc-yaml/i18n-fr.yaml +20 -0
- data/lib/isodoc-yaml/i18n-ru.yaml +21 -1
- data/lib/isodoc-yaml/i18n-zh-Hans.yaml +21 -0
- data/lib/metanorma/output/xslfo.rb +4 -11
- data/spec/isodoc/i18n_spec.rb +5 -5
- data/spec/isodoc/inline_spec.rb +78 -0
- data/spec/isodoc/section_spec.rb +11 -10
- data/spec/isodoc/terms_spec.rb +354 -34
- data/spec/isodoc/xref_spec.rb +4 -4
- data/spec/isodoc/xslfo_convert_spec.rb +20 -7
- metadata +6 -6
- data/lib/isodoc/presentation_function/concept.rb +0 -68
data/spec/isodoc/i18n_spec.rb
CHANGED
@@ -24,7 +24,7 @@ RSpec.describe IsoDoc do
|
|
24
24
|
<clause id="H" obligation="normative"><title>Terms, definitions, symbols and abbreviated terms</title><terms id="I" obligation="normative">
|
25
25
|
<title>Normal Terms</title>
|
26
26
|
<term id="J">
|
27
|
-
<preferred>Term2</preferred>
|
27
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
28
28
|
</term>
|
29
29
|
</terms>
|
30
30
|
<definitions id="K">
|
@@ -233,7 +233,7 @@ RSpec.describe IsoDoc do
|
|
233
233
|
<clause id="H" obligation="normative"><title>Terms, definitions, symbols and abbreviated terms</title><terms id="I" obligation="normative">
|
234
234
|
<title>Normal Terms</title>
|
235
235
|
<term id="J">
|
236
|
-
<preferred>Term2</preferred>
|
236
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
237
237
|
</term>
|
238
238
|
</terms>
|
239
239
|
<definitions id="K">
|
@@ -361,7 +361,7 @@ RSpec.describe IsoDoc do
|
|
361
361
|
<clause id="H" obligation="normative"><title>Terms, definitions, symbols and abbreviated terms</title><terms id="I" obligation="normative">
|
362
362
|
<title>Normal Terms</title>
|
363
363
|
<term id="J">
|
364
|
-
<preferred>Term2</preferred>
|
364
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
365
365
|
</term>
|
366
366
|
</terms>
|
367
367
|
<definitions id="K">
|
@@ -570,7 +570,7 @@ RSpec.describe IsoDoc do
|
|
570
570
|
<clause id="H" obligation="normative"><title>Terms, definitions, symbols and abbreviated terms</title><terms id="I" obligation="normative">
|
571
571
|
<title>Normal Terms</title>
|
572
572
|
<term id="J">
|
573
|
-
<preferred>Term2</preferred>
|
573
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
574
574
|
</term>
|
575
575
|
</terms>
|
576
576
|
<definitions id="K">
|
@@ -812,7 +812,7 @@ RSpec.describe IsoDoc do
|
|
812
812
|
<clause id="H" obligation="normative"><title>Terms, definitions, symbols and abbreviated terms</title><terms id="I" obligation="normative">
|
813
813
|
<title>Normal Terms</title>
|
814
814
|
<term id="J">
|
815
|
-
<preferred>Term2</preferred>
|
815
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
816
816
|
</term>
|
817
817
|
</terms>
|
818
818
|
<definitions id="K">
|
data/spec/isodoc/inline_spec.rb
CHANGED
@@ -625,6 +625,84 @@ RSpec.describe IsoDoc do
|
|
625
625
|
.convert("test", presxml, true))).to be_equivalent_to xmlpp(output)
|
626
626
|
end
|
627
627
|
|
628
|
+
it "processes related terms" do
|
629
|
+
input = <<~INPUT
|
630
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
631
|
+
<sections>
|
632
|
+
<terms id='A' obligation='normative'>
|
633
|
+
<title>Terms and definitions</title>
|
634
|
+
<term id='second'>
|
635
|
+
<preferred>
|
636
|
+
<expression>
|
637
|
+
<name>Second Term</name>
|
638
|
+
</expression>
|
639
|
+
</preferred>
|
640
|
+
<usageinfo>
|
641
|
+
<p id='B'>Usage Info 1.</p>
|
642
|
+
</usageinfo>
|
643
|
+
<definition><verbaldefinition>Definition 1</verbaldefinition></definition>
|
644
|
+
</term>
|
645
|
+
<term id="C">
|
646
|
+
<preferred language='fr' script='Latn' type='prefix'>
|
647
|
+
<expression>
|
648
|
+
<name>First Designation</name>
|
649
|
+
</expression></preferred>
|
650
|
+
<related type='contrast'>
|
651
|
+
<preferred>
|
652
|
+
<expression>
|
653
|
+
<name>Fifth Designation</name>
|
654
|
+
<grammar>
|
655
|
+
<gender>neuter</gender>
|
656
|
+
</grammar>
|
657
|
+
</expression>
|
658
|
+
</preferred>
|
659
|
+
<xref target='second'/>
|
660
|
+
</related>
|
661
|
+
<definition><verbaldefinition>Definition 2</verbaldefinition></definition>
|
662
|
+
</term>
|
663
|
+
</terms>
|
664
|
+
</sections>
|
665
|
+
</iso-standard>
|
666
|
+
INPUT
|
667
|
+
output = <<~OUTPUT
|
668
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
669
|
+
<sections>
|
670
|
+
<terms id='A' obligation='normative' displayorder='1'>
|
671
|
+
<title depth='1'>
|
672
|
+
1.
|
673
|
+
<tab/>
|
674
|
+
Terms and definitions
|
675
|
+
</title>
|
676
|
+
<term id='second'>
|
677
|
+
<name>1.1.</name>
|
678
|
+
<preferred>Second Term</preferred>
|
679
|
+
<usageinfo>
|
680
|
+
<p id='B'>Usage Info 1.</p>
|
681
|
+
</usageinfo>
|
682
|
+
<definition>Definition 1</definition>
|
683
|
+
</term>
|
684
|
+
<term id='C'>
|
685
|
+
<name>1.2.</name>
|
686
|
+
<preferred language='fr' script='Latn' type='prefix'>First Designation</preferred>
|
687
|
+
<p>
|
688
|
+
<strong>CONTRAST:</strong>
|
689
|
+
<em>
|
690
|
+
<preferred>Fifth Designation neut</preferred>
|
691
|
+
</em>
|
692
|
+
(
|
693
|
+
<xref target='second'>Clause 1.1</xref>
|
694
|
+
)
|
695
|
+
</p>
|
696
|
+
<definition>Definition 2</definition>
|
697
|
+
</term>
|
698
|
+
</terms>
|
699
|
+
</sections>
|
700
|
+
</iso-standard>
|
701
|
+
OUTPUT
|
702
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
703
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(output)
|
704
|
+
end
|
705
|
+
|
628
706
|
it "processes embedded inline formatting" do
|
629
707
|
input = <<~INPUT
|
630
708
|
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
data/spec/isodoc/section_spec.rb
CHANGED
@@ -209,7 +209,7 @@ RSpec.describe IsoDoc do
|
|
209
209
|
<clause id="H" obligation="normative"><title>Terms, Definitions, Symbols and Abbreviated Terms</title><terms id="I" obligation="normative">
|
210
210
|
<title>Normal Terms</title>
|
211
211
|
<term id="J">
|
212
|
-
<preferred>Term2</preferred>
|
212
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
213
213
|
</term>
|
214
214
|
</terms>
|
215
215
|
<definitions id="K">
|
@@ -745,7 +745,7 @@ RSpec.describe IsoDoc do
|
|
745
745
|
<title>Normal Terms</title>
|
746
746
|
<variant-title type="sub">Variant 1</variant-title>
|
747
747
|
<term id="J">
|
748
|
-
<preferred>Term2</preferred>
|
748
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
749
749
|
</term>
|
750
750
|
</terms>
|
751
751
|
<definitions id="K">
|
@@ -1361,7 +1361,7 @@ RSpec.describe IsoDoc do
|
|
1361
1361
|
<clause id="H" obligation="normative"><title>Terms, Definitions, Symbols and Abbreviated Terms</title><terms id="I" obligation="normative">
|
1362
1362
|
<title>Normal Terms</title>
|
1363
1363
|
<term id="J">
|
1364
|
-
<preferred>Term2</preferred>
|
1364
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
1365
1365
|
</term>
|
1366
1366
|
</terms>
|
1367
1367
|
<definitions id="K">
|
@@ -1515,8 +1515,9 @@ RSpec.describe IsoDoc do
|
|
1515
1515
|
</preface>
|
1516
1516
|
</iso-standard>
|
1517
1517
|
OUTPUT
|
1518
|
-
expect(xmlpp(IsoDoc::PresentationXMLConvert
|
1519
|
-
.
|
1518
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert
|
1519
|
+
.new({ suppressheadingnumbers: true })
|
1520
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(output)
|
1520
1521
|
end
|
1521
1522
|
|
1522
1523
|
it "processes simple terms & definitions" do
|
@@ -1525,7 +1526,7 @@ RSpec.describe IsoDoc do
|
|
1525
1526
|
<sections>
|
1526
1527
|
<terms id="H" obligation="normative"><title>Terms, Definitions, Symbols and Abbreviated Terms</title>
|
1527
1528
|
<term id="J">
|
1528
|
-
<preferred>Term2</preferred>
|
1529
|
+
<preferred><expression><name>Term2</name></expression></preferred>
|
1529
1530
|
</term>
|
1530
1531
|
</terms>
|
1531
1532
|
</sections>
|
@@ -1786,7 +1787,7 @@ RSpec.describe IsoDoc do
|
|
1786
1787
|
<title>Glossary</title>
|
1787
1788
|
<terms id='PP1' obligation='normative'>
|
1788
1789
|
<term id='term-glossary'>
|
1789
|
-
<preferred>Glossary</preferred>
|
1790
|
+
<preferred><expression><name>Glossary</name></expression></preferred>
|
1790
1791
|
</term>
|
1791
1792
|
</terms>
|
1792
1793
|
</annex>
|
@@ -1795,13 +1796,13 @@ RSpec.describe IsoDoc do
|
|
1795
1796
|
<terms id='QQ1' obligation='normative'>
|
1796
1797
|
<title>Term Collection</title>
|
1797
1798
|
<term id='term-term-1'>
|
1798
|
-
<preferred>Term</preferred>
|
1799
|
+
<preferred><expression><name>Term</name></expression></preferred>
|
1799
1800
|
</term>
|
1800
1801
|
</terms>
|
1801
1802
|
<terms id='QQ2' obligation='normative'>
|
1802
1803
|
<title>Term Collection 2</title>
|
1803
1804
|
<term id='term-term-2'>
|
1804
|
-
<preferred>Term</preferred>
|
1805
|
+
<preferred><expression><name>Term</name></expression></preferred>
|
1805
1806
|
</term>
|
1806
1807
|
</terms>
|
1807
1808
|
</annex>
|
@@ -1810,7 +1811,7 @@ RSpec.describe IsoDoc do
|
|
1810
1811
|
<terms id='RR1' obligation='normative'>
|
1811
1812
|
<title>Term Collection</title>
|
1812
1813
|
<term id='term-term-3'>
|
1813
|
-
<preferred>Term</preferred>
|
1814
|
+
<preferred><expression><name>Term</name></expression></preferred>
|
1814
1815
|
</term>
|
1815
1816
|
</terms>
|
1816
1817
|
<references id='RR2' obligation='normative'>
|