isodoc 1.7.6.1 → 1.8.2
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 +2 -2
- data/lib/isodoc/class_utils.rb +24 -1
- data/lib/isodoc/convert.rb +9 -0
- data/lib/isodoc/function/cleanup.rb +4 -0
- data/lib/isodoc/function/inline.rb +3 -5
- data/lib/isodoc/html_function/html.rb +1 -0
- data/lib/isodoc/html_function/postprocess.rb +4 -6
- data/lib/isodoc/metadata_date.rb +13 -11
- data/lib/isodoc/presentation_function/bibdata.rb +2 -2
- data/lib/isodoc/presentation_function/block.rb +0 -36
- data/lib/isodoc/presentation_function/inline.rb +14 -11
- data/lib/isodoc/presentation_function/terms.rb +223 -0
- data/lib/isodoc/presentation_xml_convert.rb +11 -4
- data/lib/isodoc/version.rb +1 -1
- data/lib/isodoc/word_function/body.rb +24 -14
- data/lib/isodoc/word_function/comments.rb +0 -4
- data/lib/isodoc/word_function/postprocess.rb +184 -176
- data/lib/isodoc/xref/xref_gen.rb +18 -22
- data/lib/isodoc/xref/xref_gen_seq.rb +10 -16
- data/lib/isodoc/xref/xref_sect_gen.rb +134 -129
- data/lib/isodoc/xslfo_convert.rb +11 -7
- data/lib/isodoc-yaml/i18n-ar.yaml +25 -0
- data/lib/isodoc-yaml/i18n-de.yaml +23 -0
- data/lib/isodoc-yaml/i18n-en.yaml +23 -0
- data/lib/isodoc-yaml/i18n-es.yaml +23 -0
- data/lib/isodoc-yaml/i18n-fr.yaml +23 -0
- data/lib/isodoc-yaml/i18n-ru.yaml +24 -1
- data/lib/isodoc-yaml/i18n-zh-Hans.yaml +24 -0
- data/lib/metanorma/output/xslfo.rb +4 -11
- data/spec/assets/i18n.yaml +3 -1
- data/spec/isodoc/blocks_spec.rb +14 -8
- data/spec/isodoc/i18n_spec.rb +23 -18
- data/spec/isodoc/inline_spec.rb +193 -9
- data/spec/isodoc/lists_spec.rb +344 -222
- data/spec/isodoc/section_spec.rb +23 -22
- data/spec/isodoc/table_spec.rb +71 -73
- data/spec/isodoc/terms_spec.rb +498 -124
- data/spec/isodoc/xref_numbering_spec.rb +347 -0
- data/spec/isodoc/xref_spec.rb +274 -353
- data/spec/isodoc/xslfo_convert_spec.rb +34 -9
- metadata +12 -11
- data/lib/isodoc/presentation_function/concept.rb +0 -68
data/spec/isodoc/terms_spec.rb
CHANGED
@@ -7,9 +7,18 @@ RSpec.describe IsoDoc do
|
|
7
7
|
<sections>
|
8
8
|
<terms id="_terms_and_definitions" obligation="normative"><title>Terms and Definitions</title>
|
9
9
|
<p>For the purposes of this document, the following terms and definitions apply.</p>
|
10
|
-
<term id="paddy1"><preferred>paddy</
|
10
|
+
<term id="paddy1"><preferred><expression><name>paddy</name></expression>
|
11
|
+
<field-of-application>in agriculture</field-of-application>
|
12
|
+
<usage-info>dated</usage-info>
|
13
|
+
<termsource status="modified">
|
14
|
+
<origin bibitemid="ISO7301" type="inline" citeas="ISO 7301:2011"><locality type="clause"><referenceFrom>3.1</referenceFrom></locality></origin>
|
15
|
+
<modification>
|
16
|
+
<p id="_e73a417d-ad39-417d-a4c8-20e4e2529489">The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here</p>
|
17
|
+
</modification>
|
18
|
+
</termsource>
|
19
|
+
</preferred>
|
11
20
|
<domain>rice</domain>
|
12
|
-
<definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></definition>
|
21
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
13
22
|
<termexample id="_bd57bbf1-f948-4bae-b0ce-73c00431f892" keep-with-next="true" keep-lines-together="true">
|
14
23
|
<p id="_65c9a509-9a89-4b54-a890-274126aeb55c">Foreign seeds, husks, bran, sand, dust.</p>
|
15
24
|
<ul>
|
@@ -21,12 +30,6 @@ RSpec.describe IsoDoc do
|
|
21
30
|
<li>A</li>
|
22
31
|
</ul>
|
23
32
|
</termexample>
|
24
|
-
<termsource status="modified">
|
25
|
-
<origin bibitemid="ISO7301" type="inline" citeas="ISO 7301:2011"><locality type="clause"><referenceFrom>3.1</referenceFrom></locality></origin>
|
26
|
-
<modification>
|
27
|
-
<p id="_e73a417d-ad39-417d-a4c8-20e4e2529489">The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here</p>
|
28
|
-
</modification>
|
29
|
-
</termsource>
|
30
33
|
<termsource status='identical'>
|
31
34
|
<origin citeas=''>
|
32
35
|
<termref base='IEV' target='xyz'>t1</termref>
|
@@ -41,10 +44,13 @@ RSpec.describe IsoDoc do
|
|
41
44
|
</modification>
|
42
45
|
</termsource>
|
43
46
|
</term>
|
44
|
-
<term id="paddy"><preferred>paddy</preferred
|
45
|
-
<admitted>
|
46
|
-
<
|
47
|
-
|
47
|
+
<term id="paddy"><preferred><expression><name>paddy</name></expression></preferred>
|
48
|
+
<admitted><letter-symbol><name>paddy rice</name></letter-symbol>
|
49
|
+
<field-of-application>in agriculture</field-of-application>
|
50
|
+
</admitted>
|
51
|
+
<admitted><expression><name>rough rice</name></expression></admitted>
|
52
|
+
<deprecates><expression><name>cargo rice</name></expression></deprecates>
|
53
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
48
54
|
<termexample id="_bd57bbf1-f948-4bae-b0ce-73c00431f893">
|
49
55
|
<ul>
|
50
56
|
<li>A</li>
|
@@ -67,112 +73,106 @@ RSpec.describe IsoDoc do
|
|
67
73
|
INPUT
|
68
74
|
|
69
75
|
presxml = <<~"PRESXML"
|
70
|
-
|
71
|
-
<
|
72
|
-
<
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
<
|
87
|
-
<
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
</
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
</
|
107
|
-
</
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
<
|
119
|
-
|
120
|
-
</
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
<name>
|
133
|
-
|
134
|
-
|
135
|
-
</
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
<ul>
|
147
|
-
<li>A</li>
|
148
|
-
</ul>
|
149
|
-
<p id='_19830f33-e46c-42cc-94ca-a5ef101132d5'>
|
150
|
-
The starch of waxy rice consists almost entirely of amylopectin. The
|
151
|
-
kernels have a tendency to stick together after cooking.
|
152
|
-
</p>
|
153
|
-
</termnote>
|
154
|
-
<termsource status='identical'>
|
155
|
-
<origin bibitemid='ISO7301' type='inline' droploc='true' citeas='ISO 7301:2011'><locality type='clause'>
|
156
|
-
<referenceFrom>3.1</referenceFrom>
|
157
|
-
</locality>ISO 7301:2011, 3.1</origin>
|
158
|
-
<origin bibitemid='ISO7301' type='inline' case='lowercase' citeas='ISO 7301:2011'><locality type='clause'>
|
76
|
+
<?xml version='1.0'?>
|
77
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
|
78
|
+
<sections>
|
79
|
+
<terms id='_terms_and_definitions' obligation='normative' displayorder="1">
|
80
|
+
<title depth='1'>1.<tab/>Terms and Definitions</title>
|
81
|
+
<p>For the purposes of this document, the following terms and definitions apply.</p>
|
82
|
+
<term id='paddy1'><name>1.1.</name>
|
83
|
+
<preferred><strong>paddy</strong>, <in agriculture, dated></preferred>
|
84
|
+
<termsource status='modified'>
|
85
|
+
<origin bibitemid='ISO7301' type='inline' citeas='ISO 7301:2011'><locality type='clause'>
|
86
|
+
<referenceFrom>3.1</referenceFrom>
|
87
|
+
</locality>ISO 7301:2011, Clause 3.1</origin>
|
88
|
+
<modification>
|
89
|
+
<p id='_e73a417d-ad39-417d-a4c8-20e4e2529489'>The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here</p>
|
90
|
+
</modification>
|
91
|
+
</termsource>
|
92
|
+
<domain>rice</domain>
|
93
|
+
<definition>
|
94
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747f'>rice retaining its husk after threshing</p>
|
95
|
+
</definition>
|
96
|
+
<termexample id='_bd57bbf1-f948-4bae-b0ce-73c00431f892' keep-with-next='true' keep-lines-together='true'>
|
97
|
+
<name>EXAMPLE 1</name>
|
98
|
+
<p id='_65c9a509-9a89-4b54-a890-274126aeb55c'>Foreign seeds, husks, bran, sand, dust.</p>
|
99
|
+
<ul>
|
100
|
+
<li>A</li>
|
101
|
+
</ul>
|
102
|
+
</termexample>
|
103
|
+
<termexample id='_bd57bbf1-f948-4bae-b0ce-73c00431f894'>
|
104
|
+
<name>EXAMPLE 2</name>
|
105
|
+
<ul>
|
106
|
+
<li>A</li>
|
107
|
+
</ul>
|
108
|
+
</termexample>
|
109
|
+
<termsource status='identical'>
|
110
|
+
<origin citeas=''>
|
111
|
+
<termref base='IEV' target='xyz'>t1</termref>
|
112
|
+
</origin>
|
113
|
+
</termsource>
|
114
|
+
<termsource status='modified'>
|
115
|
+
<origin citeas=''>
|
116
|
+
<termref base='IEV' target='xyz'/>
|
117
|
+
</origin>
|
118
|
+
<modification>
|
119
|
+
<p id='_'>with adjustments</p>
|
120
|
+
</modification>
|
121
|
+
</termsource>
|
122
|
+
</term>
|
123
|
+
<term id='paddy'><name>1.2.</name>
|
124
|
+
<preferred><strong>paddy</strong></preferred>
|
125
|
+
<admitted>paddy rice, <in agriculture></admitted>
|
126
|
+
<admitted>rough rice</admitted>
|
127
|
+
<deprecates>cargo rice</deprecates>
|
128
|
+
<definition>
|
129
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747f'>rice retaining its husk after threshing</p>
|
130
|
+
</definition>
|
131
|
+
<termexample id='_bd57bbf1-f948-4bae-b0ce-73c00431f893'>
|
132
|
+
<name>EXAMPLE</name>
|
133
|
+
<ul>
|
134
|
+
<li>A</li>
|
135
|
+
</ul>
|
136
|
+
</termexample>
|
137
|
+
<termnote id='_671a1994-4783-40d0-bc81-987d06ffb74e' keep-with-next='true' keep-lines-together='true'>
|
138
|
+
<name>Note 1 to entry</name>
|
139
|
+
<p id='_19830f33-e46c-42cc-94ca-a5ef101132d5'>The starch of waxy rice consists almost entirely of amylopectin. The
|
140
|
+
kernels have a tendency to stick together after cooking.</p>
|
141
|
+
</termnote>
|
142
|
+
<termnote id='_671a1994-4783-40d0-bc81-987d06ffb74f'>
|
143
|
+
<name>Note 2 to entry</name>
|
144
|
+
<ul>
|
145
|
+
<li>A</li>
|
146
|
+
</ul>
|
147
|
+
<p id='_19830f33-e46c-42cc-94ca-a5ef101132d5'>The starch of waxy rice consists almost entirely of amylopectin. The
|
148
|
+
kernels have a tendency to stick together after cooking.</p>
|
149
|
+
</termnote>
|
150
|
+
<termsource status='identical'>
|
151
|
+
<origin bibitemid='ISO7301' type='inline' droploc='true' citeas='ISO 7301:2011'><locality type='clause'>
|
159
152
|
<referenceFrom>3.1</referenceFrom>
|
160
|
-
</locality>ISO 7301:2011,
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
153
|
+
</locality>ISO 7301:2011, 3.1</origin>
|
154
|
+
<origin bibitemid='ISO7301' type='inline' case='lowercase' citeas='ISO 7301:2011'><locality type='clause'>
|
155
|
+
<referenceFrom>3.1</referenceFrom>
|
156
|
+
</locality>ISO 7301:2011, clause 3.1</origin>
|
157
|
+
</termsource>
|
158
|
+
</term>
|
159
|
+
</terms>
|
160
|
+
</sections>
|
161
|
+
</iso-standard>
|
166
162
|
PRESXML
|
167
163
|
|
168
164
|
html = <<~"OUTPUT"
|
169
165
|
#{HTML_HDR}
|
170
166
|
<p class="zzSTDTitle1"/>
|
171
167
|
<div id="_terms_and_definitions">
|
172
|
-
<h1>
|
168
|
+
<h1>1.  Terms and Definitions</h1>
|
173
169
|
<p>For the purposes of this document,
|
174
170
|
the following terms and definitions apply.</p>
|
175
|
-
<p class="TermNum" id="paddy1">1.1.</p><p class="Terms" style="text-align:left;">paddy</p>
|
171
|
+
<p class="TermNum" id="paddy1">1.1.</p><p class="Terms" style="text-align:left;"><b>paddy</b>, <in agriculture, dated></p>
|
172
|
+
<p>[TERMREF]
|
173
|
+
<a href="#ISO7301">ISO 7301:2011, Clause 3.1</a>
|
174
|
+
[MODIFICATION]The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here
|
175
|
+
[/TERMREF]</p>
|
176
176
|
<p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f"><rice> rice retaining its husk after threshing</p>
|
177
177
|
<div id="_bd57bbf1-f948-4bae-b0ce-73c00431f892" class="example" style='page-break-after: avoid;page-break-inside: avoid;'><p class="example-title">EXAMPLE 1</p>
|
178
178
|
<p id="_65c9a509-9a89-4b54-a890-274126aeb55c">Foreign seeds, husks, bran, sand, dust.</p>
|
@@ -185,13 +185,10 @@ RSpec.describe IsoDoc do
|
|
185
185
|
<li>A</li>
|
186
186
|
</ul>
|
187
187
|
</div>
|
188
|
-
<p>[TERMREF]
|
189
|
-
<a href="#ISO7301">ISO 7301:2011, Clause 3.1</a>
|
190
|
-
[MODIFICATION] The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here
|
191
|
-
[/TERMREF]</p>
|
192
188
|
<p>[TERMREF] t1 [/TERMREF]</p>
|
193
189
|
<p>[TERMREF] Termbase IEV, term ID xyz [MODIFICATION]with adjustments [/TERMREF]</p>
|
194
|
-
<p class="TermNum" id="paddy">1.2.</p
|
190
|
+
<p class="TermNum" id="paddy">1.2.</p>
|
191
|
+
<p class="Terms" style="text-align:left;"><b>paddy</b></p><p class="AltTerms" style="text-align:left;">paddy rice, <in agriculture></p>
|
195
192
|
<p class="AltTerms" style="text-align:left;">rough rice</p>
|
196
193
|
<p class="DeprecatedTerms" style="text-align:left;">DEPRECATED: cargo rice</p>
|
197
194
|
<p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p>
|
@@ -216,7 +213,11 @@ RSpec.describe IsoDoc do
|
|
216
213
|
<p class="zzSTDTitle1"/>
|
217
214
|
<div id="_terms_and_definitions"><h1>1.<span style="mso-tab-count:1">  </span>Terms and Definitions</h1><p>For the purposes of this document,
|
218
215
|
the following terms and definitions apply.</p>
|
219
|
-
<p class="TermNum" id="paddy1">1.1.</p><p class="Terms" style="text-align:left;">paddy</p>
|
216
|
+
<p class="TermNum" id="paddy1">1.1.</p><p class="Terms" style="text-align:left;"><b>paddy</b>, <in agriculture, dated></p>
|
217
|
+
<p>[TERMREF]
|
218
|
+
<a href="#ISO7301">ISO 7301:2011, Clause 3.1</a>
|
219
|
+
[MODIFICATION]The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here
|
220
|
+
[/TERMREF]</p>
|
220
221
|
<p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f"><rice> rice retaining its husk after threshing</p>
|
221
222
|
<div id="_bd57bbf1-f948-4bae-b0ce-73c00431f892" class="example" style='page-break-after: avoid;page-break-inside: avoid;'><p class="example-title">EXAMPLE 1</p>
|
222
223
|
<p id="_65c9a509-9a89-4b54-a890-274126aeb55c">Foreign seeds, husks, bran, sand, dust.</p>
|
@@ -229,13 +230,10 @@ RSpec.describe IsoDoc do
|
|
229
230
|
<li>A</li>
|
230
231
|
</ul>
|
231
232
|
</div>
|
232
|
-
<p>[TERMREF]
|
233
|
-
<a href="#ISO7301">ISO 7301:2011, Clause 3.1</a>
|
234
|
-
[MODIFICATION] The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here
|
235
|
-
[/TERMREF]</p>
|
236
233
|
<p>[TERMREF] t1 [/TERMREF]</p>
|
237
234
|
<p>[TERMREF] Termbase IEV, term ID xyz [MODIFICATION]with adjustments [/TERMREF]</p>
|
238
|
-
<p class="TermNum" id="paddy">1.2.</p><p class="Terms" style="text-align:left;"
|
235
|
+
<p class="TermNum" id="paddy">1.2.</p><p class="Terms" style="text-align:left;"><b>paddy</b></p>
|
236
|
+
<p class="AltTerms" style="text-align:left;">paddy rice, <in agriculture></p>
|
239
237
|
<p class="AltTerms" style="text-align:left;">rough rice</p>
|
240
238
|
<p class="DeprecatedTerms" style="text-align:left;">DEPRECATED: cargo rice</p>
|
241
239
|
<p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p>
|
@@ -268,16 +266,17 @@ RSpec.describe IsoDoc do
|
|
268
266
|
<sections>
|
269
267
|
<terms id="_terms_and_definitions" obligation="normative"><title>Terms and Definitions</title>
|
270
268
|
<p>For the purposes of this document, the following terms and definitions apply.</p>
|
271
|
-
<term id="paddy1"><preferred>paddy</preferred>
|
269
|
+
<term id="paddy1"><preferred><expression><name>paddy</name></expression></preferred>
|
272
270
|
<domain>rice</domain>
|
273
|
-
<definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></definition>
|
274
|
-
<definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747e">rice retaining its husk after threshing, mark 2</p>
|
271
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
272
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747e">rice retaining its husk after threshing, mark 2</p>
|
275
273
|
<termsource status="modified">
|
276
274
|
<origin bibitemid="ISO7301" type="inline" citeas="ISO 7301:2011"><locality type="clause"><referenceFrom>3.1</referenceFrom></locality></origin>
|
277
275
|
<modification>
|
278
276
|
<p id="_e73a417d-ad39-417d-a4c8-20e4e2529489">The term "cargo rice" is shown as deprecated, and Note 1 to entry is not included here</p>
|
279
277
|
</modification>
|
280
278
|
</termsource>
|
279
|
+
</verbal-definition>
|
281
280
|
</definition>
|
282
281
|
<termexample id="_bd57bbf1-f948-4bae-b0ce-73c00431f892" keep-with-next="true" keep-lines-together="true">
|
283
282
|
<p id="_65c9a509-9a89-4b54-a890-274126aeb55c">Foreign seeds, husks, bran, sand, dust.</p>
|
@@ -317,7 +316,7 @@ RSpec.describe IsoDoc do
|
|
317
316
|
<p>For the purposes of this document, the following terms and definitions apply.</p>
|
318
317
|
<term id='paddy1'>
|
319
318
|
<name>1.1.</name>
|
320
|
-
<preferred>paddy</preferred>
|
319
|
+
<preferred><strong>paddy</strong></preferred>
|
321
320
|
<domain>rice</domain>
|
322
321
|
<definition>
|
323
322
|
<ol>
|
@@ -377,4 +376,379 @@ RSpec.describe IsoDoc do
|
|
377
376
|
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
378
377
|
.convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
|
379
378
|
end
|
379
|
+
|
380
|
+
it "processes IsoXML term with multiple preferred terms" do
|
381
|
+
input = <<~"INPUT"
|
382
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
383
|
+
<sections>
|
384
|
+
<terms id="_terms_and_definitions" obligation="normative"><title>Terms and Definitions</title>
|
385
|
+
<term id="paddy1">
|
386
|
+
<preferred><expression><name>paddy</name></expression></preferred>
|
387
|
+
<preferred><expression><name>muddy rice</name></expression></preferred>
|
388
|
+
<domain>rice</domain>
|
389
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
390
|
+
</term>
|
391
|
+
<term id="paddy2">
|
392
|
+
<preferred><expression><name language="eng">paddy</name></expression></preferred>
|
393
|
+
<preferred><expression><name language="eng">muddy rice</name></expression></preferred>
|
394
|
+
<domain>rice</domain>
|
395
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747a">rice retaining its husk after threshing</p></verbal-definition></definition>
|
396
|
+
</term>
|
397
|
+
<term id="paddy3">
|
398
|
+
<preferred geographic-area="US"><expression><name>paddy</name></expression></preferred>
|
399
|
+
<preferred><expression><name>muddy rice</name></expression></preferred>
|
400
|
+
<domain>rice</domain>
|
401
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747b">rice retaining its husk after threshing</p></verbal-definition></definition>
|
402
|
+
</term>
|
403
|
+
<term id="paddy4">
|
404
|
+
<preferred><expression language="eng"><name>paddy</name></expression></preferred>
|
405
|
+
<preferred><expression language="fra"><name>muddy rice</name></expression></preferred>
|
406
|
+
<domain>rice</domain>
|
407
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747c">rice retaining its husk after threshing</p></verbal-definition></definition>
|
408
|
+
</term>
|
409
|
+
</terms>
|
410
|
+
</sections>
|
411
|
+
</iso-standard>
|
412
|
+
INPUT
|
413
|
+
presxml = <<~PRESXML
|
414
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
415
|
+
<sections>
|
416
|
+
<terms id='_terms_and_definitions' obligation='normative' displayorder='1'>
|
417
|
+
<title depth='1'>
|
418
|
+
1.
|
419
|
+
<tab/>
|
420
|
+
Terms and Definitions
|
421
|
+
</title>
|
422
|
+
<term id='paddy1'>
|
423
|
+
<name>1.1.</name>
|
424
|
+
<preferred><strong>paddy; muddy rice</strong></preferred>
|
425
|
+
<domain>rice</domain>
|
426
|
+
<definition>
|
427
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747f'>rice retaining its husk after threshing</p>
|
428
|
+
</definition>
|
429
|
+
</term>
|
430
|
+
<term id='paddy2'>
|
431
|
+
<name>1.2.</name>
|
432
|
+
<preferred>
|
433
|
+
<strong>paddy; muddy rice</strong>
|
434
|
+
</preferred>
|
435
|
+
<domain>rice</domain>
|
436
|
+
<definition>
|
437
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747a'>rice retaining its husk after threshing</p>
|
438
|
+
</definition>
|
439
|
+
</term>
|
440
|
+
<term id='paddy3'>
|
441
|
+
<name>1.3.</name>
|
442
|
+
<preferred geographic-area="US">
|
443
|
+
<strong>paddy</strong>, US
|
444
|
+
</preferred>
|
445
|
+
<preferred>
|
446
|
+
<strong>muddy rice</strong>
|
447
|
+
</preferred>
|
448
|
+
<domain>rice</domain>
|
449
|
+
<definition>
|
450
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747b'>rice retaining its husk after threshing</p>
|
451
|
+
</definition>
|
452
|
+
</term>
|
453
|
+
<term id='paddy4'>
|
454
|
+
<name>1.4.</name>
|
455
|
+
<preferred>
|
456
|
+
<strong>paddy</strong>, eng
|
457
|
+
</preferred>
|
458
|
+
<preferred>
|
459
|
+
<strong>muddy rice</strong>, fra
|
460
|
+
</preferred>
|
461
|
+
<domain>rice</domain>
|
462
|
+
<definition>
|
463
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747c'>rice retaining its husk after threshing</p>
|
464
|
+
</definition>
|
465
|
+
</term>
|
466
|
+
</terms>
|
467
|
+
</sections>
|
468
|
+
</iso-standard>
|
469
|
+
PRESXML
|
470
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
471
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
|
472
|
+
end
|
473
|
+
|
474
|
+
it "processes IsoXML term with grammatical information" do
|
475
|
+
input = <<~"INPUT"
|
476
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
477
|
+
<sections>
|
478
|
+
<terms id="_terms_and_definitions" obligation="normative"><title>Terms and Definitions</title>
|
479
|
+
<term id="paddy1">
|
480
|
+
<preferred geographic-area="US"><expression language="en" script="Latn"><name>paddy</name>
|
481
|
+
<pronunciation>pædiː</pronunciation>
|
482
|
+
<grammar>
|
483
|
+
<gender>masculine</gender>
|
484
|
+
<gender>feminine</gender>
|
485
|
+
<number>singular</number>
|
486
|
+
<isPreposition>false</isPreposition>
|
487
|
+
<isNoun>true</isNoun>
|
488
|
+
<grammar-value>irregular declension</grammar-value>
|
489
|
+
</grammar>
|
490
|
+
</expression></preferred>
|
491
|
+
<preferred><expression><name>muddy rice</name>
|
492
|
+
<grammar>
|
493
|
+
<gender>neuter</gender>
|
494
|
+
<isNoun>true</isNoun>
|
495
|
+
<grammar-value>irregular declension</grammar-value>
|
496
|
+
</grammar>
|
497
|
+
</expression></preferred>
|
498
|
+
<domain>rice</domain>
|
499
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
500
|
+
</term>
|
501
|
+
</terms>
|
502
|
+
</sections>
|
503
|
+
</iso-standard>
|
504
|
+
INPUT
|
505
|
+
presxml = <<~PRESXML
|
506
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
507
|
+
<sections>
|
508
|
+
<terms id='_terms_and_definitions' obligation='normative' displayorder='1'>
|
509
|
+
<title depth='1'>
|
510
|
+
1.
|
511
|
+
<tab/>
|
512
|
+
Terms and Definitions
|
513
|
+
</title>
|
514
|
+
<term id='paddy1'>
|
515
|
+
<name>1.1.</name>
|
516
|
+
<preferred geographic-area='US'><strong>paddy</strong>, m, f, sg, noun, en Latn US, /pædiː/</preferred>
|
517
|
+
<preferred><strong>muddy rice</strong>, n, noun</preferred>
|
518
|
+
<domain>rice</domain>
|
519
|
+
<definition>
|
520
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747f'>rice retaining its husk after threshing</p>
|
521
|
+
</definition>
|
522
|
+
</term>
|
523
|
+
</terms>
|
524
|
+
</sections>
|
525
|
+
</iso-standard>
|
526
|
+
PRESXML
|
527
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
528
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
|
529
|
+
end
|
530
|
+
|
531
|
+
it "processes IsoXML term with empty or graphical designations" do
|
532
|
+
input = <<~"INPUT"
|
533
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
534
|
+
<sections>
|
535
|
+
<terms id="_terms_and_definitions" obligation="normative"><title>Terms and Definitions</title>
|
536
|
+
<term id="paddy1">
|
537
|
+
<preferred><expression><name/></expression></preferred>
|
538
|
+
<preferred isInternational='true'><graphical-symbol><figure id='_'><pre id='_'><LITERAL> FIGURATIVE</pre></figure>
|
539
|
+
</graphical-symbol>
|
540
|
+
</preferred>
|
541
|
+
<domain>rice</domain>
|
542
|
+
<definition><verbal-definition><p id="_eb29b35e-123e-4d1c-b50b-2714d41e747f">rice retaining its husk after threshing</p></verbal-definition></definition>
|
543
|
+
</term>
|
544
|
+
</terms>
|
545
|
+
</sections>
|
546
|
+
</iso-standard>
|
547
|
+
INPUT
|
548
|
+
presxml = <<~PRESXML
|
549
|
+
<?xml version='1.0'?>
|
550
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
551
|
+
<sections>
|
552
|
+
<terms id='_terms_and_definitions' obligation='normative' displayorder='1'>
|
553
|
+
<title depth='1'>1.<tab/>Terms and Definitions</title>
|
554
|
+
<term id='paddy1'>
|
555
|
+
<name>1.1.</name>
|
556
|
+
<preferred><strong/></preferred>
|
557
|
+
<preferred isInternational='true'><figure id='_'>
|
558
|
+
<name>Figure 1</name>
|
559
|
+
<pre id='_'><LITERAL> FIGURATIVE</pre>
|
560
|
+
</figure>
|
561
|
+
</preferred>
|
562
|
+
<domain>rice</domain>
|
563
|
+
<definition>
|
564
|
+
<p id='_eb29b35e-123e-4d1c-b50b-2714d41e747f'>rice retaining its husk after threshing</p>
|
565
|
+
</definition>
|
566
|
+
</term>
|
567
|
+
</terms>
|
568
|
+
</sections>
|
569
|
+
</iso-standard>
|
570
|
+
PRESXML
|
571
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
572
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
|
573
|
+
end
|
574
|
+
|
575
|
+
it "processes IsoXML term with nonverbal definitions" do
|
576
|
+
input = <<~"INPUT"
|
577
|
+
<iso-standard xmlns="http://riboseinc.com/isoxml">
|
578
|
+
<sections>
|
579
|
+
<terms id='A' obligation='normative'>
|
580
|
+
<title>Terms and definitions</title>
|
581
|
+
<p id='B'>For the purposes of this document, the following terms and definitions apply.</p>
|
582
|
+
<term id='term-term'>
|
583
|
+
<preferred>
|
584
|
+
<expression>
|
585
|
+
<name>Term</name>
|
586
|
+
</expression>
|
587
|
+
</preferred>
|
588
|
+
<definition>
|
589
|
+
<verbal-definition>
|
590
|
+
<p id='C'>Definition</p>
|
591
|
+
<termsource status='identical' type='authoritative'>
|
592
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
593
|
+
<localityStack>
|
594
|
+
<locality type='section'>
|
595
|
+
<referenceFrom>1</referenceFrom>
|
596
|
+
</locality>
|
597
|
+
</localityStack>
|
598
|
+
</origin>
|
599
|
+
</termsource>
|
600
|
+
</verbal-definition>
|
601
|
+
<non-verbal-representation>
|
602
|
+
<table id='D'>
|
603
|
+
<thead>
|
604
|
+
<tr>
|
605
|
+
<th valign='top' align='left'>A</th>
|
606
|
+
<th valign='top' align='left'>B</th>
|
607
|
+
</tr>
|
608
|
+
</thead>
|
609
|
+
<tbody>
|
610
|
+
<tr>
|
611
|
+
<td valign='top' align='left'>C</td>
|
612
|
+
<td valign='top' align='left'>D</td>
|
613
|
+
</tr>
|
614
|
+
</tbody>
|
615
|
+
</table>
|
616
|
+
</non-verbal-representation>
|
617
|
+
</definition>
|
618
|
+
<termsource status='identical' type='authoritative'>
|
619
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
620
|
+
<localityStack>
|
621
|
+
<locality type='section'>
|
622
|
+
<referenceFrom>2</referenceFrom>
|
623
|
+
</locality>
|
624
|
+
</localityStack>
|
625
|
+
</origin>
|
626
|
+
</termsource>
|
627
|
+
</term>
|
628
|
+
<term id='term-term-2'>
|
629
|
+
<preferred>
|
630
|
+
<expression>
|
631
|
+
<name>Term 2</name>
|
632
|
+
</expression>
|
633
|
+
</preferred>
|
634
|
+
<definition>
|
635
|
+
<non-verbal-representation>
|
636
|
+
<figure id='E'>
|
637
|
+
<pre id='F'>Literal</pre>
|
638
|
+
</figure>
|
639
|
+
<formula id='G'>
|
640
|
+
<stem type='MathML'>
|
641
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
642
|
+
<mi>x</mi>
|
643
|
+
<mo>=</mo>
|
644
|
+
<mi>y</mi>
|
645
|
+
</math>
|
646
|
+
</stem>
|
647
|
+
</formula>
|
648
|
+
<termsource status='identical' type='authoritative'>
|
649
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
650
|
+
<localityStack>
|
651
|
+
<locality type='section'>
|
652
|
+
<referenceFrom>3</referenceFrom>
|
653
|
+
</locality>
|
654
|
+
</localityStack>
|
655
|
+
</origin>
|
656
|
+
</termsource>
|
657
|
+
</non-verbal-representation>
|
658
|
+
</definition>
|
659
|
+
</term>
|
660
|
+
</terms>
|
661
|
+
</sections>
|
662
|
+
</iso-standard>
|
663
|
+
INPUT
|
664
|
+
presxml = <<~PRESXML
|
665
|
+
<iso-standard xmlns='http://riboseinc.com/isoxml' type='presentation'>
|
666
|
+
<sections>
|
667
|
+
<terms id='A' obligation='normative' displayorder='1'>
|
668
|
+
<title depth='1'>
|
669
|
+
1.
|
670
|
+
<tab/>
|
671
|
+
Terms and definitions
|
672
|
+
</title>
|
673
|
+
<p id='B'>For the purposes of this document, the following terms and definitions apply.</p>
|
674
|
+
<term id='term-term'>
|
675
|
+
<name>1.1.</name>
|
676
|
+
<preferred><strong>Term</strong></preferred>
|
677
|
+
<definition>
|
678
|
+
<p id='C'>Definition</p>
|
679
|
+
<termsource status='identical' type='authoritative'>
|
680
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
681
|
+
<localityStack>
|
682
|
+
<locality type='section'>
|
683
|
+
<referenceFrom>1</referenceFrom>
|
684
|
+
</locality>
|
685
|
+
</localityStack>
|
686
|
+
, Section 1
|
687
|
+
</origin>
|
688
|
+
</termsource>
|
689
|
+
<table id='D'>
|
690
|
+
<name>Table 1</name>
|
691
|
+
<thead>
|
692
|
+
<tr>
|
693
|
+
<th valign='top' align='left'>A</th>
|
694
|
+
<th valign='top' align='left'>B</th>
|
695
|
+
</tr>
|
696
|
+
</thead>
|
697
|
+
<tbody>
|
698
|
+
<tr>
|
699
|
+
<td valign='top' align='left'>C</td>
|
700
|
+
<td valign='top' align='left'>D</td>
|
701
|
+
</tr>
|
702
|
+
</tbody>
|
703
|
+
</table>
|
704
|
+
</definition>
|
705
|
+
<termsource status='identical' type='authoritative'>
|
706
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
707
|
+
<localityStack>
|
708
|
+
<locality type='section'>
|
709
|
+
<referenceFrom>2</referenceFrom>
|
710
|
+
</locality>
|
711
|
+
</localityStack>
|
712
|
+
, Section 2
|
713
|
+
</origin>
|
714
|
+
</termsource>
|
715
|
+
</term>
|
716
|
+
<term id='term-term-2'>
|
717
|
+
<name>1.2.</name>
|
718
|
+
<preferred><strong>Term 2</strong></preferred>
|
719
|
+
<definition>
|
720
|
+
<figure id='E'>
|
721
|
+
<name>Figure 1</name>
|
722
|
+
<pre id='F'>Literal</pre>
|
723
|
+
</figure>
|
724
|
+
<formula id='G'>
|
725
|
+
<name>1</name>
|
726
|
+
<stem type='MathML'>
|
727
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
728
|
+
<mi>x</mi>
|
729
|
+
<mo>=</mo>
|
730
|
+
<mi>y</mi>
|
731
|
+
</math>
|
732
|
+
<!-- x = y -->
|
733
|
+
</stem>
|
734
|
+
</formula>
|
735
|
+
<termsource status='identical' type='authoritative'>
|
736
|
+
<origin bibitemid='ISO2191' type='inline' citeas=''>
|
737
|
+
<localityStack>
|
738
|
+
<locality type='section'>
|
739
|
+
<referenceFrom>3</referenceFrom>
|
740
|
+
</locality>
|
741
|
+
</localityStack>
|
742
|
+
, Section 3
|
743
|
+
</origin>
|
744
|
+
</termsource>
|
745
|
+
</definition>
|
746
|
+
</term>
|
747
|
+
</terms>
|
748
|
+
</sections>
|
749
|
+
</iso-standard>
|
750
|
+
PRESXML
|
751
|
+
expect(xmlpp(IsoDoc::PresentationXMLConvert.new({})
|
752
|
+
.convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
|
753
|
+
end
|
380
754
|
end
|