metanorma-iso 2.2.2 → 2.2.4

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.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/lib/isodoc/iso/html/header-dis.html +111 -29
  3. data/lib/isodoc/iso/html/isodoc-dis.css +65 -64
  4. data/lib/isodoc/iso/html/isodoc-dis.scss +65 -64
  5. data/lib/isodoc/iso/html/style-human.css +7 -2
  6. data/lib/isodoc/iso/html/style-human.scss +0 -1
  7. data/lib/isodoc/iso/html/style-iso.css +7 -2
  8. data/lib/isodoc/iso/html/style-iso.scss +0 -1
  9. data/lib/isodoc/iso/html/wordstyle-dis.css +160 -4
  10. data/lib/isodoc/iso/html/wordstyle-dis.scss +154 -4
  11. data/lib/isodoc/iso/html/wordstyle.css +150 -0
  12. data/lib/isodoc/iso/html/wordstyle.scss +144 -0
  13. data/lib/isodoc/iso/i18n-en.yaml +4 -4
  14. data/lib/isodoc/iso/iso.amendment.xsl +1649 -1199
  15. data/lib/isodoc/iso/iso.international-standard.xsl +1649 -1199
  16. data/lib/isodoc/iso/presentation_bibdata.rb +13 -9
  17. data/lib/isodoc/iso/presentation_xml_convert.rb +5 -3
  18. data/lib/isodoc/iso/word_convert.rb +6 -4
  19. data/lib/isodoc/iso/word_dis_cleanup.rb +30 -8
  20. data/lib/isodoc/iso/word_dis_convert.rb +5 -2
  21. data/lib/metanorma/iso/base.rb +2 -1
  22. data/lib/metanorma/iso/biblio.rng +5 -0
  23. data/lib/metanorma/iso/isodoc.rng +47 -13
  24. data/lib/metanorma/iso/validate.rb +2 -2
  25. data/lib/metanorma/iso/version.rb +1 -1
  26. data/metanorma-iso.gemspec +5 -2
  27. metadata +4 -87
  28. data/.github/workflows/automerge.yml +0 -31
  29. data/.github/workflows/rake.yml +0 -15
  30. data/.github/workflows/release.yml +0 -24
  31. data/.github/workflows/ubuntu.yml +0 -41
  32. data/Rakefile +0 -8
  33. data/bin/rspec +0 -17
  34. data/spec/assets/header.html +0 -7
  35. data/spec/assets/html.css +0 -2
  36. data/spec/assets/htmlcover.html +0 -4
  37. data/spec/assets/htmlintro.html +0 -5
  38. data/spec/assets/i18n.yaml +0 -2
  39. data/spec/assets/iso.adoc +0 -10
  40. data/spec/assets/iso.headless.html +0 -33
  41. data/spec/assets/iso.xml +0 -71
  42. data/spec/assets/rice_image1.png +0 -0
  43. data/spec/assets/scripts.html +0 -3
  44. data/spec/assets/std.css +0 -2
  45. data/spec/assets/word.css +0 -2
  46. data/spec/assets/wordcover.html +0 -3
  47. data/spec/assets/wordintro.html +0 -4
  48. data/spec/examples/103_01_02.html +0 -247
  49. data/spec/examples/english.yaml +0 -69
  50. data/spec/examples/iso_123_.xml +0 -45
  51. data/spec/examples/iso_123_all_parts.xml +0 -45
  52. data/spec/examples/iso_123_no_year_note.xml +0 -46
  53. data/spec/examples/iso_124_.xml +0 -41
  54. data/spec/examples/iso_216_.xml +0 -47
  55. data/spec/examples/iso_iec_12382_.xml +0 -48
  56. data/spec/examples/rice.adoc +0 -714
  57. data/spec/examples/rice.preview.html +0 -1870
  58. data/spec/examples/rice.sh +0 -4
  59. data/spec/examples/rice_img/1000-1_ed2amd3fig1a.png +0 -0
  60. data/spec/examples/rice_img/1000-1_ed2amd3fig1b.png +0 -0
  61. data/spec/examples/rice_img/1000-1_ed2amd3fig2.png +0 -0
  62. data/spec/examples/rice_img/1000-1_ed2amd3fig3.png +0 -0
  63. data/spec/examples/rice_img/1000-1_ed2amd3fig4.png +0 -0
  64. data/spec/examples/rice_img/1000-1_ed2amd3fig5_f.png +0 -0
  65. data/spec/examples/rice_img/1000-1_ed2amd3figA.png +0 -0
  66. data/spec/examples/rice_img/1000-1_ed2amd3figA1.png +0 -0
  67. data/spec/examples/rice_img/1000-1_ed2amd3figA2.png +0 -0
  68. data/spec/examples/rice_img/1000-1_ed2amd3figTab1.png +0 -0
  69. data/spec/examples/rice_img/1000-1_ed2amd3figTab2.png +0 -0
  70. data/spec/examples/rice_img/1001_ed2amd3fig1.png +0 -0
  71. data/spec/examples/rice_img/ISO_1213_1.png +0 -0
  72. data/spec/examples/rice_img/SL1000-1_ed2amd3fig1.png +0 -0
  73. data/spec/examples/rice_img/rice_image1.png +0 -0
  74. data/spec/examples/rice_img/rice_image2.png +0 -0
  75. data/spec/examples/rice_img/rice_image3_1.png +0 -0
  76. data/spec/examples/rice_img/rice_image3_2.png +0 -0
  77. data/spec/examples/rice_img/rice_image3_3.png +0 -0
  78. data/spec/isodoc/amd_spec.rb +0 -986
  79. data/spec/isodoc/blocks_spec.rb +0 -1174
  80. data/spec/isodoc/i18n_spec.rb +0 -1579
  81. data/spec/isodoc/inline_spec.rb +0 -1060
  82. data/spec/isodoc/iso_spec.rb +0 -255
  83. data/spec/isodoc/metadata_spec.rb +0 -701
  84. data/spec/isodoc/postproc_spec.rb +0 -1089
  85. data/spec/isodoc/ref_spec.rb +0 -439
  86. data/spec/isodoc/section_spec.rb +0 -998
  87. data/spec/isodoc/table_spec.rb +0 -420
  88. data/spec/isodoc/terms_spec.rb +0 -314
  89. data/spec/isodoc/word_dis_spec.rb +0 -2064
  90. data/spec/isodoc/xref_spec.rb +0 -1747
  91. data/spec/metanorma/amd_spec.rb +0 -724
  92. data/spec/metanorma/base_spec.rb +0 -1384
  93. data/spec/metanorma/blank_spec.rb +0 -38
  94. data/spec/metanorma/blocks_spec.rb +0 -624
  95. data/spec/metanorma/cleanup_spec.rb +0 -1645
  96. data/spec/metanorma/inline_spec.rb +0 -203
  97. data/spec/metanorma/lists_spec.rb +0 -197
  98. data/spec/metanorma/macros_spec.rb +0 -99
  99. data/spec/metanorma/processor_spec.rb +0 -161
  100. data/spec/metanorma/refs_spec.rb +0 -672
  101. data/spec/metanorma/section_spec.rb +0 -492
  102. data/spec/metanorma/table_spec.rb +0 -329
  103. data/spec/metanorma/validate_spec.rb +0 -2153
  104. data/spec/relaton/render_spec.rb +0 -568
  105. data/spec/requirements/requirement_components_spec.rb +0 -610
  106. data/spec/requirements/requirements_spec.rb +0 -1596
  107. data/spec/requirements/xref_spec.rb +0 -1211
  108. data/spec/spec_helper.rb +0 -313
  109. data/spec/vcr_cassettes/docrels.yml +0 -385
  110. data/spec/vcr_cassettes/withdrawn_iso.yml +0 -295
@@ -1,610 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Metanorma::Requirements::Iso::Modspec do
4
- it "processes requirement components" do
5
- input = <<~INPUT
6
- <ogc-standard xmlns="https://standards.opengeospatial.org/document">
7
- <preface><foreword id="A"><title>Preface</title>
8
- <recommendation model="ogc" id="_">
9
- <identifier>/ogc/recommendation/wfs/2</identifier>
10
- <inherit>/ss/584/2015/level/1</inherit>
11
- <subject>user</subject>
12
- <description><p id="_">I recommend <em>1</em>.</p></description>
13
- <component class="test-purpose" id="A1"><p>TEST PURPOSE</p></component>
14
- <description><p id="_">I recommend <em>2</em>.</p></description>
15
- <component class="guidance" id="A7"><p>GUIDANCE #1</p></component>
16
- <description><p id="_">I recommend <em>2a</em>.</p></description>
17
- <component class="conditions" id="A2"><p>CONDITIONS</p></component>
18
- <description><p id="_">I recommend <em>3</em>.</p></description>
19
- <component class="part" id="A3"><p>FIRST PART</p></component>
20
- <description><p id="_">I recommend <em>4</em>.</p></description>
21
- <component class="part" id="A4"><p>SECOND PART</p></component>
22
- <description><p id="_">I recommend <em>5</em>.</p></description>
23
- <component class="test-method" id="A5"><p>TEST METHOD</p></component>
24
- <description><p id="_">I recommend <em>6</em>.</p></description>
25
- <component class="part" id="A6"><p>THIRD PART</p></component>
26
- <description><p id="_">I recommend <em>7</em>.</p></description>
27
- <component class="guidance" id="A8"><p>GUIDANCE #2</p></component>
28
- <description><p id="_">I recommend <em>7a</em>.</p></description>
29
- <component class="panda GHz express" id="A7"><p>PANDA PART</p></component>
30
- <description><p id="_">I recommend <em>8</em>.</p></description>
31
- </recommendation>
32
- </foreword>
33
- </preface>
34
- </ogc-standard>
35
- INPUT
36
- presxml = <<~OUTPUT
37
- <ogc-standard xmlns='https://standards.opengeospatial.org/document' type='presentation'>
38
- <preface>
39
- <foreword id='A' displayorder='1'>
40
- <title>Preface</title>
41
- <table id='_' class='modspec' type='recommend'>
42
- <name>Table 1 — Recommendation 1</name>
43
- <tbody>
44
- <tr>
45
- <th>Identifier</th>
46
- <td>
47
- <tt>/ogc/recommendation/wfs/2</tt>
48
- </td>
49
- </tr>
50
- <tr>
51
- <th>Subject</th>
52
- <td>user</td>
53
- </tr>
54
- <tr>
55
- <th>Prerequisite</th>
56
- <td>/ss/584/2015/level/1</td>
57
- </tr>
58
- <tr>
59
- <th>Statement</th>
60
- <td>
61
- <p id='_'>
62
- I recommend
63
- <em>1</em>
64
- .
65
- </p>
66
- </td>
67
- </tr>
68
- <tr id='A1'>
69
- <th>Test purpose</th>
70
- <td>
71
- <p>TEST PURPOSE</p>
72
- </td>
73
- </tr>
74
- <tr>
75
- <th>Statements</th>
76
- <td>
77
- <p id='_'>
78
- I recommend
79
- <em>2</em>
80
- .
81
- </p>
82
- <br/>
83
- <p id='_'>
84
- I recommend
85
- <em>2a</em>
86
- .
87
- </p>
88
- </td>
89
- </tr>
90
- <tr id='A2'>
91
- <th>Conditions</th>
92
- <td>
93
- <p>CONDITIONS</p>
94
- </td>
95
- </tr>
96
- <tr>
97
- <th>Statement</th>
98
- <td>
99
- <p id='_'>
100
- I recommend
101
- <em>3</em>
102
- .
103
- </p>
104
- </td>
105
- </tr>
106
- <tr id='A3'>
107
- <th>A</th>
108
- <td>
109
- <p>FIRST PART</p>
110
- </td>
111
- </tr>
112
- <tr>
113
- <th>Statement</th>
114
- <td>
115
- <p id='_'>
116
- I recommend
117
- <em>4</em>
118
- .
119
- </p>
120
- </td>
121
- </tr>
122
- <tr id='A4'>
123
- <th>B</th>
124
- <td>
125
- <p>SECOND PART</p>
126
- </td>
127
- </tr>
128
- <tr>
129
- <th>Statement</th>
130
- <td>
131
- <p id='_'>
132
- I recommend
133
- <em>5</em>
134
- .
135
- </p>
136
- </td>
137
- </tr>
138
- <tr id='A5'>
139
- <th>Test method</th>
140
- <td>
141
- <p>TEST METHOD</p>
142
- </td>
143
- </tr>
144
- <tr>
145
- <th>Statement</th>
146
- <td>
147
- <p id='_'>
148
- I recommend
149
- <em>6</em>
150
- .
151
- </p>
152
- </td>
153
- </tr>
154
- <tr id='A6'>
155
- <th>C</th>
156
- <td>
157
- <p>THIRD PART</p>
158
- </td>
159
- </tr>
160
- <tr>
161
- <th>Statements</th>
162
- <td>
163
- <p id='_'>
164
- I recommend
165
- <em>7</em>
166
- .
167
- </p>
168
- <br/>
169
- <p id='_'>
170
- I recommend
171
- <em>7a</em>
172
- .
173
- </p>
174
- </td>
175
- </tr>
176
- <tr id='A7'>
177
- <th>Panda GHz express</th>
178
- <td>
179
- <p>PANDA PART</p>
180
- </td>
181
- </tr>
182
- <tr>
183
- <th>Statement</th>
184
- <td>
185
- <p id='_'>
186
- I recommend
187
- <em>8</em>
188
- .
189
- </p>
190
- </td>
191
- </tr>
192
- <tr id='A7'>
193
- <th>Guidance</th>
194
- <td>
195
- <p>GUIDANCE #1</p>
196
- <br/>
197
- <p>GUIDANCE #2</p>
198
- </td>
199
- </tr>
200
- </tbody>
201
- </table>
202
- </foreword>
203
- </preface>
204
- </ogc-standard>
205
- OUTPUT
206
-
207
- expect(xmlpp(IsoDoc::Iso::PresentationXMLConvert.new({})
208
- .convert("test", input, true)
209
- .gsub(%r{^.*<body}m, "<body")
210
- .gsub(%r{</body>.*}m, "</body>")))
211
- .to be_equivalent_to xmlpp(presxml)
212
- end
213
-
214
- it "processes requirement components for recommendation classes" do
215
- input = <<~INPUT
216
- <ogc-standard xmlns="https://standards.opengeospatial.org/document">
217
- <preface><foreword id="A"><title>Preface</title>
218
- <recommendation model="ogc" id="_" type="class">
219
- <identifier>/ogc/recommendation/wfs/2</identifier>
220
- <inherit>/ss/584/2015/level/1</inherit>
221
- <subject>user</subject>
222
- <description><p id="_">I recommend <em>1</em>.</p></description>
223
- <component class="test-purpose" id="A1"><p>TEST PURPOSE</p></component>
224
- <description><p id="_">I recommend <em>2</em>.</p></description>
225
- <component class="conditions" id="A2"><p>CONDITIONS</p></component>
226
- <description><p id="_">I recommend <em>3</em>.</p></description>
227
- <component class="part" id="A3"><p>FIRST PART</p></component>
228
- <description><p id="_">I recommend <em>4</em>.</p></description>
229
- <component class="part" id="A4"><p>SECOND PART</p></component>
230
- <description><p id="_">I recommend <em>5</em>.</p></description>
231
- <component class="test-method" id="A5"><p>TEST METHOD</p></component>
232
- <description><p id="_">I recommend <em>6</em>.</p></description>
233
- <component class="part" id="A6"><p>THIRD PART</p></component>
234
- <description><p id="_">I recommend <em>7</em>.</p></description>
235
- <component class="panda GHz express" id="A7"><p>PANDA PART</p></component>
236
- <description><p id="_">I recommend <em>8</em>.</p></description>
237
- </recommendation>
238
- </foreword>
239
- </preface>
240
- </ogc-standard>
241
- INPUT
242
- presxml = <<~OUTPUT
243
- <ogc-standard xmlns='https://standards.opengeospatial.org/document' type='presentation'>
244
- <preface>
245
- <foreword id='A' displayorder='1'>
246
- <title>Preface</title>
247
- <table id='_' class='modspec' type='recommendclass'>
248
- <name>Table 1 — Recommendations class 1</name>
249
- <tbody>
250
- <tr>
251
- <th>Identifier</th>
252
- <td>
253
- <tt>/ogc/recommendation/wfs/2</tt>
254
- </td>
255
- </tr>
256
- <tr>
257
- <th>Target type</th>
258
- <td>user</td>
259
- </tr>
260
- <tr>
261
- <th>Prerequisite</th>
262
- <td>/ss/584/2015/level/1</td>
263
- </tr>
264
- <tr>
265
- <th>Description</th>
266
- <td>
267
- <p id='_'>
268
- I recommend
269
- <em>1</em>
270
- .
271
- </p>
272
- </td>
273
- </tr>
274
- <tr id='A1'>
275
- <th>Test purpose</th>
276
- <td>
277
- <p>TEST PURPOSE</p>
278
- </td>
279
- </tr>
280
- <tr>
281
- <th>Description</th>
282
- <td>
283
- <p id='_'>
284
- I recommend
285
- <em>2</em>
286
- .
287
- </p>
288
- </td>
289
- </tr>
290
- <tr id='A2'>
291
- <th>Conditions</th>
292
- <td>
293
- <p>CONDITIONS</p>
294
- </td>
295
- </tr>
296
- <tr>
297
- <th>Description</th>
298
- <td>
299
- <p id='_'>
300
- I recommend
301
- <em>3</em>
302
- .
303
- </p>
304
- </td>
305
- </tr>
306
- <tr id='A3'>
307
- <th>A</th>
308
- <td>
309
- <p>FIRST PART</p>
310
- </td>
311
- </tr>
312
- <tr>
313
- <th>Description</th>
314
- <td>
315
- <p id='_'>
316
- I recommend
317
- <em>4</em>
318
- .
319
- </p>
320
- </td>
321
- </tr>
322
- <tr id='A4'>
323
- <th>B</th>
324
- <td>
325
- <p>SECOND PART</p>
326
- </td>
327
- </tr>
328
- <tr>
329
- <th>Description</th>
330
- <td>
331
- <p id='_'>
332
- I recommend
333
- <em>5</em>
334
- .
335
- </p>
336
- </td>
337
- </tr>
338
- <tr id='A5'>
339
- <th>Test method</th>
340
- <td>
341
- <p>TEST METHOD</p>
342
- </td>
343
- </tr>
344
- <tr>
345
- <th>Description</th>
346
- <td>
347
- <p id='_'>
348
- I recommend
349
- <em>6</em>
350
- .
351
- </p>
352
- </td>
353
- </tr>
354
- <tr id='A6'>
355
- <th>C</th>
356
- <td>
357
- <p>THIRD PART</p>
358
- </td>
359
- </tr>
360
- <tr>
361
- <th>Description</th>
362
- <td>
363
- <p id='_'>
364
- I recommend
365
- <em>7</em>
366
- .
367
- </p>
368
- </td>
369
- </tr>
370
- <tr id='A7'>
371
- <th>Panda GHz express</th>
372
- <td>
373
- <p>PANDA PART</p>
374
- </td>
375
- </tr>
376
- <tr>
377
- <th>Description</th>
378
- <td>
379
- <p id='_'>
380
- I recommend
381
- <em>8</em>
382
- .
383
- </p>
384
- </td>
385
- </tr>
386
- </tbody>
387
- </table>
388
- </foreword>
389
- </preface>
390
- </ogc-standard>
391
- OUTPUT
392
- expect(xmlpp(IsoDoc::Iso::PresentationXMLConvert.new({})
393
- .convert("test", input, true)
394
- .gsub(%r{^.*<body}m, "<body")
395
- .gsub(%r{</body>.*}m, "</body>")))
396
- .to be_equivalent_to xmlpp(presxml)
397
- end
398
-
399
- it "processes nested requirement steps" do
400
- input = <<~INPUT
401
- <ogc-standard xmlns="https://standards.opengeospatial.org/document">
402
- <preface>
403
- <foreword id="A"><title>Preface</title>
404
- <requirement model="ogc" id='A1'>
405
- <component exclude='false' class='test method type'>
406
- <p id='_'>Manual Inspection</p>
407
- </component>
408
- <component exclude='false' class='test-method'>
409
- <p id='1'>
410
- <component exclude='false' class='step'>
411
- <p id='2'>For each UML class defined or referenced in the Tunnel Package:</p>
412
- <component exclude='false' class='step'>
413
- <p id='3'>
414
- Validate that the Implementation Specification contains a data
415
- element which represents the same concept as that defined for
416
- the UML class.
417
- </p>
418
- </component>
419
- <component exclude='false' class='step'>
420
- <p id='4'>
421
- Validate that the data element has the same relationships with
422
- other elements as those defined for the UML class. Validate that
423
- those relationships have the same source, target, direction,
424
- roles, and multiplicies as those documented in the Conceptual
425
- Model.
426
- </p>
427
- </component>
428
- </component>
429
- </p>
430
- </component>
431
- </requirement>
432
- </foreword></preface>
433
- </ogc-standard>
434
- INPUT
435
- presxml = <<~PRESXML
436
- <ogc-standard xmlns='https://standards.opengeospatial.org/document' type='presentation'>
437
- <preface>
438
- <foreword id='A' displayorder='1'>
439
- <title>Preface</title>
440
- <table id='A1' class='modspec' type='recommend'>
441
- <name>Table 1 — Requirement 1</name>
442
- <tbody>
443
- <tr>
444
- <th>Test method type</th>
445
- <td>
446
- <p id='_'>Manual Inspection</p>
447
- </td>
448
- </tr>
449
- <tr>
450
- <th>Test method</th>
451
- <td>
452
- <p id='1'>
453
- <ol class="steps">
454
- <li>
455
- <p id='2'>For each UML class defined or referenced in the Tunnel Package:</p>
456
- <ol class="steps">
457
- <li>
458
- <p id='3'>
459
- Validate that the Implementation Specification
460
- contains a data element which represents the same
461
- concept as that defined for the UML class.
462
- </p>
463
- </li>
464
- <li>
465
- <p id='4'>
466
- Validate that the data element has the same
467
- relationships with other elements as those defined for
468
- the UML class. Validate that those relationships have
469
- the same source, target, direction, roles, and
470
- multiplicies as those documented in the Conceptual
471
- Model.
472
- </p>
473
- </li>
474
- </ol>
475
- </li>
476
- </ol>
477
- </p>
478
- </td>
479
- </tr>
480
- </tbody>
481
- </table>
482
- </foreword>
483
- </preface>
484
- </ogc-standard>
485
- PRESXML
486
- expect(xmlpp(IsoDoc::Iso::PresentationXMLConvert.new({})
487
- .convert("test", input, true)))
488
- .to be_equivalent_to xmlpp(presxml)
489
- end
490
-
491
- it "processes bidirectional requirement/conformance tests" do
492
- input = <<~INPUT
493
- <ogc-standard xmlns="https://standards.opengeospatial.org/document">
494
- <preface>
495
- <foreword id="A"><title>Preface</title>
496
- <requirement model="ogc" id='A1' type="general">
497
- <title>First</title>
498
- <identifier>/ogc/recommendation/wfs/1</identifier>
499
- </requirement>
500
- <requirement model="ogc" id='A2' type="verification">
501
- <title>Second</title>
502
- <identifier>/ogc/recommendation/wfs/2</identifier>
503
- <classification><tag>target</tag><value>/ogc/recommendation/wfs/1</value></classification>
504
- </requirement>
505
- <requirement model="ogc" id='A3' type="class">
506
- <title>Third</title>
507
- <identifier>/ogc/recommendation/wfs/3</identifier>
508
- </requirement>
509
- <requirement model="ogc" id='A4' type="conformanceclass">
510
- <title>Fourth</title>
511
- <identifier>/ogc/recommendation/wfs/4</identifier>
512
- <classification><tag>target</tag><value>/ogc/recommendation/wfs/3</value></classification>
513
- </requirement>
514
- </foreword></preface>
515
- </ogc-standard>
516
- INPUT
517
- presxml = <<~PRESXML
518
- <ogc-standard xmlns='https://standards.opengeospatial.org/document' type='presentation'>
519
- <preface>
520
- <foreword id='A' displayorder='1'>
521
- <title>Preface</title>
522
- <table id='A1' class='modspec' type='recommend'>
523
- <name>Table 1 — Requirement 1: First</name>
524
- <tbody>
525
- <tr>
526
- <th>Identifier</th>
527
- <td>
528
- <tt>/ogc/recommendation/wfs/1</tt>
529
- </td>
530
- </tr>
531
- <tr>
532
- <th>Conformance test</th>
533
- <td>
534
- <xref target='A2'>
535
- Conformance test 1:
536
- Second
537
- </xref>
538
- </td>
539
- </tr>
540
- </tbody>
541
- </table>
542
- <table id='A2' class='modspec' type='recommendtest'>
543
- <name>Table 2 — Conformance test 1: Second</name>
544
- <tbody>
545
- <tr>
546
- <th>Identifier</th>
547
- <td>
548
- <tt>/ogc/recommendation/wfs/2</tt>
549
- </td>
550
- </tr>
551
- <tr>
552
- <th>Requirement</th>
553
- <td>
554
- <xref target='A1'>
555
- Requirement 1:
556
- First
557
- </xref>
558
- </td>
559
- </tr>
560
- </tbody>
561
- </table>
562
- <table id='A3' class='modspec' type='recommendclass'>
563
- <name>Table 3 — Requirements class 1: Third</name>
564
- <tbody>
565
- <tr>
566
- <th>Identifier</th>
567
- <td>
568
- <tt>/ogc/recommendation/wfs/3</tt>
569
- </td>
570
- </tr>
571
- <tr>
572
- <th>Conformance class</th>
573
- <td>
574
- <xref target='A4'>
575
- Conformance class 1:
576
- Fourth
577
- </xref>
578
- </td>
579
- </tr>
580
- </tbody>
581
- </table>
582
- <table id='A4' class='modspec' type='recommendclass'>
583
- <name>Table 4 — Conformance class 1: Fourth</name>
584
- <tbody>
585
- <tr>
586
- <th>Identifier</th>
587
- <td>
588
- <tt>/ogc/recommendation/wfs/4</tt>
589
- </td>
590
- </tr>
591
- <tr>
592
- <th>Requirements class</th>
593
- <td>
594
- <xref target='A3'>
595
- Requirements class 1:
596
- Third
597
- </xref>
598
- </td>
599
- </tr>
600
- </tbody>
601
- </table>
602
- </foreword>
603
- </preface>
604
- </ogc-standard>
605
- PRESXML
606
- expect(xmlpp(IsoDoc::Iso::PresentationXMLConvert.new({})
607
- .convert("test", input, true)))
608
- .to be_equivalent_to xmlpp(presxml)
609
- end
610
- end