metanorma-iso 1.10.4 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +3 -33
  3. data/.github/workflows/ubuntu.yml +1 -1
  4. data/.gitignore +26 -0
  5. data/Makefile +1 -1
  6. data/lib/asciidoctor/iso/base.rb +2 -69
  7. data/lib/asciidoctor/iso/cleanup.rb +2 -175
  8. data/lib/asciidoctor/iso/converter.rb +2 -17
  9. data/lib/asciidoctor/iso/deprecated.rb +5 -0
  10. data/lib/asciidoctor/iso/front.rb +2 -156
  11. data/lib/asciidoctor/iso/front_id.rb +2 -221
  12. data/lib/asciidoctor/iso/section.rb +2 -48
  13. data/lib/asciidoctor/iso/validate.rb +2 -171
  14. data/lib/asciidoctor/iso/validate_image.rb +2 -96
  15. data/lib/asciidoctor/iso/validate_requirements.rb +2 -110
  16. data/lib/asciidoctor/iso/validate_section.rb +2 -246
  17. data/lib/asciidoctor/iso/validate_style.rb +2 -169
  18. data/lib/asciidoctor/iso/validate_title.rb +2 -104
  19. data/lib/isodoc/iso/base_convert.rb +14 -31
  20. data/lib/isodoc/iso/html/style-human.css +37 -22
  21. data/lib/isodoc/iso/html/style-human.scss +17 -10
  22. data/lib/isodoc/iso/html/style-iso.css +34 -20
  23. data/lib/isodoc/iso/html/style-iso.scss +13 -7
  24. data/lib/isodoc/iso/html/wordstyle.css +10 -8
  25. data/lib/isodoc/iso/html/wordstyle.scss +10 -8
  26. data/lib/isodoc/iso/html_convert.rb +6 -4
  27. data/lib/isodoc/iso/index.rb +53 -45
  28. data/lib/isodoc/iso/iso.amendment.xsl +1328 -1225
  29. data/lib/isodoc/iso/iso.international-standard.xsl +1328 -1225
  30. data/lib/isodoc/iso/metadata.rb +27 -22
  31. data/lib/isodoc/iso/presentation_xml_convert.rb +41 -16
  32. data/lib/isodoc/iso/sts_convert.rb +2 -4
  33. data/lib/isodoc/iso/word_convert.rb +2 -0
  34. data/lib/metanorma/iso/base.rb +70 -0
  35. data/lib/{asciidoctor → metanorma}/iso/basicdoc.rng +0 -0
  36. data/lib/{asciidoctor → metanorma}/iso/biblio.rng +0 -0
  37. data/lib/{asciidoctor → metanorma}/iso/boilerplate-fr.xml +0 -0
  38. data/lib/{asciidoctor → metanorma}/iso/boilerplate.xml +0 -0
  39. data/lib/metanorma/iso/cleanup.rb +176 -0
  40. data/lib/metanorma/iso/converter.rb +18 -0
  41. data/lib/metanorma/iso/front.rb +170 -0
  42. data/lib/metanorma/iso/front_id.rb +225 -0
  43. data/lib/{asciidoctor → metanorma}/iso/isodoc.rng +35 -2
  44. data/lib/{asciidoctor → metanorma}/iso/isostandard-amd.rng +0 -0
  45. data/lib/{asciidoctor → metanorma}/iso/isostandard.rnc +0 -0
  46. data/lib/{asciidoctor → metanorma}/iso/isostandard.rng +0 -0
  47. data/lib/{asciidoctor → metanorma}/iso/reqt.rng +0 -0
  48. data/lib/metanorma/iso/section.rb +49 -0
  49. data/lib/metanorma/iso/validate.rb +172 -0
  50. data/lib/metanorma/iso/validate_image.rb +97 -0
  51. data/lib/metanorma/iso/validate_requirements.rb +111 -0
  52. data/lib/metanorma/iso/validate_section.rb +247 -0
  53. data/lib/metanorma/iso/validate_style.rb +170 -0
  54. data/lib/metanorma/iso/validate_title.rb +105 -0
  55. data/lib/metanorma/iso/version.rb +1 -1
  56. data/lib/metanorma-iso.rb +1 -1
  57. data/metanorma-iso.gemspec +2 -2
  58. data/spec/isodoc/amd_spec.rb +261 -250
  59. data/spec/isodoc/inline_spec.rb +238 -212
  60. data/spec/isodoc/iso_spec.rb +3 -1
  61. data/spec/isodoc/ref_spec.rb +4 -2
  62. data/spec/isodoc/section_spec.rb +1 -1
  63. data/spec/isodoc/terms_spec.rb +4 -4
  64. data/spec/{asciidoctor → metanorma}/amd_spec.rb +1 -1
  65. data/spec/metanorma/base_spec.rb +1185 -0
  66. data/spec/{asciidoctor → metanorma}/blank_spec.rb +1 -1
  67. data/spec/{asciidoctor → metanorma}/blocks_spec.rb +1 -1
  68. data/spec/{asciidoctor → metanorma}/cleanup_spec.rb +1 -1
  69. data/spec/{asciidoctor → metanorma}/inline_spec.rb +1 -1
  70. data/spec/{asciidoctor → metanorma}/lists_spec.rb +1 -1
  71. data/spec/metanorma/processor_spec.rb +1 -1
  72. data/spec/{asciidoctor → metanorma}/refs_spec.rb +1 -1
  73. data/spec/{asciidoctor → metanorma}/section_spec.rb +1 -1
  74. data/spec/{asciidoctor → metanorma}/table_spec.rb +1 -1
  75. data/spec/{asciidoctor → metanorma}/validate_spec.rb +1 -1
  76. data/spec/spec_helper.rb +1 -1
  77. data/spec/vcr_cassettes/docrels.yml +34 -424
  78. metadata +39 -26
  79. data/spec/asciidoctor/base_spec.rb +0 -1333
@@ -1,1333 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Asciidoctor::ISO do
4
- it "has a version number" do
5
- expect(Metanorma::ISO::VERSION).not_to be nil
6
- end
7
-
8
- it "processes default metadata" do
9
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
10
- = Document title
11
- Author
12
- :docfile: test.adoc
13
- :nodoc:
14
- :novalid:
15
- :no-isobib:
16
- :docnumber: 1000
17
- :partnumber: 1
18
- :edition: 2
19
- :revdate: 2000-01-01
20
- :draft: 0.3.4
21
- :technical-committee: TC
22
- :technical-committee-number: 1
23
- :technical-committee-type: A
24
- :subcommittee: SC
25
- :subcommittee-number: 2
26
- :subcommittee-type: B
27
- :workgroup: WG
28
- :workgroup-number: 3
29
- :workgroup-type: C
30
- :technical-committee_2: TC1
31
- :technical-committee-number_2: 11
32
- :technical-committee-type_2: A1
33
- :subcommittee_2: SC1
34
- :subcommittee-number_2: 21
35
- :subcommittee-type_2: B1
36
- :workgroup_2: WG1
37
- :workgroup-number_2: 31
38
- :workgroup-type_2: C1
39
- :secretariat: SECRETARIAT
40
- :docstage: 20
41
- :docsubstage: 20
42
- :iteration: 3
43
- :language: en
44
- :title-intro-en: Introduction
45
- :title-main-en: Main Title -- Title
46
- :title-part-en: Title Part
47
- :title-intro-fr: Introduction Française
48
- :title-main-fr: Titre Principal
49
- :title-part-fr: Part du Titre
50
- :library-ics: 1,2,3
51
- :copyright-year: 2000
52
- :horizontal: true
53
- INPUT
54
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
55
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
56
- <?xml version="1.0" encoding="UTF-8"?>
57
- <iso-standard type="semantic" version="#{Metanorma::ISO::VERSION}" xmlns="https://www.metanorma.org/ns/iso">
58
- <bibdata type="standard">
59
- <title format="text/plain" language="en" type="main">Introduction — Main Title — Title — Title Part</title>
60
- <title format="text/plain" language="en" type="title-intro">Introduction</title>
61
- <title format="text/plain" language="en" type="title-main">Main Title — Title</title>
62
- <title format="text/plain" language="en" type="title-part">Title Part</title>
63
- <title format="text/plain" language="fr" type="main">Introduction Française — Titre Principal — Part du Titre</title>
64
- <title format="text/plain" language="fr" type="title-intro">Introduction Française</title>
65
- <title format="text/plain" language="fr" type="title-main">Titre Principal</title>
66
- <title format="text/plain" language="fr" type="title-part">Part du Titre</title>
67
- <docidentifier type="ISO">ISO/PreWD3 1000-1</docidentifier>
68
- <docidentifier type="iso-with-lang">ISO/PreWD3 1000-1(E)</docidentifier>
69
- <docidentifier type="iso-reference">ISO/PreWD3 1000-1:2000(E)</docidentifier>
70
- <docnumber>1000</docnumber>
71
- <contributor>
72
- <role type="author"/>
73
- <organization>
74
- <name>International Organization for Standardization</name>
75
- <abbreviation>ISO</abbreviation>
76
- </organization>
77
- </contributor>
78
- <contributor>
79
- <role type="publisher"/>
80
- <organization>
81
- <name>International Organization for Standardization</name>
82
- <abbreviation>ISO</abbreviation>
83
- </organization>
84
- </contributor>
85
- <edition>2</edition>
86
- <version>
87
- <revision-date>2000-01-01</revision-date>
88
- <draft>0.3.4</draft>
89
- </version>
90
- <language>en</language>
91
- <script>Latn</script>
92
- <status>
93
- <stage abbreviation="WD">20</stage>
94
- <substage>20</substage>
95
- <iteration>3</iteration>
96
- </status>
97
- <copyright>
98
- <from>2000</from>
99
- <owner>
100
- <organization>
101
- <name>International Organization for Standardization</name>
102
- <abbreviation>ISO</abbreviation>
103
- </organization>
104
- </owner>
105
- </copyright>
106
- <ext>
107
- <doctype>article</doctype>
108
- <horizontal>true</horizontal>
109
- <editorialgroup>
110
- <technical-committee number="1" type="A">TC</technical-committee>
111
- <technical-committee number="11" type="A1">TC1</technical-committee>
112
- <subcommittee number="2" type="B">SC</subcommittee>
113
- <subcommittee number="21" type="B1">SC1</subcommittee>
114
- <workgroup number="3" type="C">WG</workgroup>
115
- <workgroup number="31" type="C1">WG1</workgroup>
116
- <secretariat>SECRETARIAT</secretariat>
117
- </editorialgroup>
118
- <ics>
119
- <code>1</code>
120
- </ics>
121
- <ics>
122
- <code>2</code>
123
- </ics>
124
- <ics>
125
- <code>3</code>
126
- </ics>
127
- <structuredidentifier>
128
- <project-number part="1">ISO 1000</project-number>
129
- </structuredidentifier>
130
- <stagename>Third working draft</stagename>
131
- </ext>
132
- </bibdata>
133
- <sections/>
134
- </iso-standard>
135
- OUTPUT
136
- end
137
-
138
- it "processes complex metadata" do
139
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
140
- = Document title
141
- Author
142
- :docfile: test.adoc
143
- :nodoc:
144
- :novalid:
145
- :no-isobib:
146
- :docnumber: 1000
147
- :partnumber: 1-1
148
- :tc-docnumber: 2000, 2003
149
- :language: el
150
- :script: Grek
151
- :publisher: IEC;IETF;ISO
152
- :copyright-holder: ISO;IETF
153
- :copyright-year: 2001
154
- :doctype: technical-report
155
- :pub-address: 1 Infinity Loop + \
156
- California
157
- :pub-phone: 3333333
158
- :pub-fax: 4444444
159
- :pub-email: x@example.com
160
- :pub-uri: http://www.example.com
161
- :docstage:
162
- :docsubstage:
163
- INPUT
164
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
165
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
166
- <?xml version="1.0" encoding="UTF-8"?>
167
- <iso-standard type="semantic" version="#{Metanorma::ISO::VERSION}" xmlns="https://www.metanorma.org/ns/iso">
168
- <bibdata type="standard">
169
- <docidentifier type="ISO">ISO/IEC/IETF/TR 1000-1-1:2001</docidentifier>
170
- <docidentifier type="iso-with-lang">ISO/IEC/IETF/TR 1000-1-1:2001(X)</docidentifier>
171
- <docidentifier type="iso-reference">ISO/IEC/IETF/TR 1000-1-1:2001(X)</docidentifier>
172
- <docidentifier type="iso-tc">2000</docidentifier>
173
- <docidentifier type="iso-tc">2003</docidentifier>
174
- <docnumber>1000</docnumber>
175
- <contributor>
176
- <role type="author"/>
177
- <organization>
178
- <name>International Electrotechnical Commission</name>
179
- <abbreviation>IEC</abbreviation>
180
- </organization>
181
- </contributor>
182
- <contributor>
183
- <role type="author"/>
184
- <organization>
185
- <name>IETF</name>
186
- </organization>
187
- </contributor>
188
- <contributor>
189
- <role type="author"/>
190
- <organization>
191
- <name>International Organization for Standardization</name>
192
- <abbreviation>ISO</abbreviation>
193
- </organization>
194
- </contributor>
195
- <contributor>
196
- <role type="publisher"/>
197
- <organization>
198
- <name>International Electrotechnical Commission</name>
199
- <abbreviation>IEC</abbreviation>
200
- <address>
201
- <formattedAddress>1 Infinity Loop + California</formattedAddress>
202
- </address>
203
- <phone>3333333</phone>
204
- <phone type='fax'>4444444</phone>
205
- <email>x@example.com</email>
206
- <uri>http://www.example.com</uri>
207
- </organization>
208
- </contributor>
209
- <contributor>
210
- <role type="publisher"/>
211
- <organization>
212
- <name>IETF</name>
213
- <address>
214
- <formattedAddress>1 Infinity Loop + California</formattedAddress>
215
- </address>
216
- <phone>3333333</phone>
217
- <phone type='fax'>4444444</phone>
218
- <email>x@example.com</email>
219
- <uri>http://www.example.com</uri>
220
- </organization>
221
- </contributor>
222
- <contributor>
223
- <role type="publisher"/>
224
- <organization>
225
- <name>International Organization for Standardization</name>
226
- <abbreviation>ISO</abbreviation>
227
- <address>
228
- <formattedAddress>1 Infinity Loop + California</formattedAddress>
229
- </address>
230
- <phone>3333333</phone>
231
- <phone type='fax'>4444444</phone>
232
- <email>x@example.com</email>
233
- <uri>http://www.example.com</uri>
234
- </organization>
235
- </contributor>
236
- <language>el</language>
237
- <script>Grek</script>
238
- <status>
239
- <stage abbreviation="IS">60</stage>
240
- <substage>60</substage>
241
- </status>
242
- <copyright>
243
- <from>2001</from>
244
- <owner>
245
- <organization>
246
- <name>International Organization for Standardization</name>
247
- <abbreviation>ISO</abbreviation>
248
- <address>
249
- <formattedAddress>1 Infinity Loop + California</formattedAddress>
250
- </address>
251
- <phone>3333333</phone>
252
- <phone type='fax'>4444444</phone>
253
- <email>x@example.com</email>
254
- <uri>http://www.example.com</uri>
255
- </organization>
256
- </owner>
257
- </copyright>
258
- <copyright>
259
- <from>2001</from>
260
- <owner>
261
- <organization>
262
- <name>IETF</name>
263
- <address>
264
- <formattedAddress>1 Infinity Loop + California</formattedAddress>
265
- </address>
266
- <phone>3333333</phone>
267
- <phone type='fax'>4444444</phone>
268
- <email>x@example.com</email>
269
- <uri>http://www.example.com</uri>
270
- </organization>
271
- </owner>
272
- </copyright>
273
- <ext>
274
- <doctype>technical-report</doctype>
275
- <editorialgroup>
276
- <technical-committee/>
277
- <subcommittee/>
278
- <workgroup/>
279
- </editorialgroup>
280
- <structuredidentifier>
281
- <project-number part="1" subpart="1">ISO/IEC/IETF 1000</project-number>
282
- </structuredidentifier>
283
- <stagename>International standard</stagename>
284
- </ext>
285
- </bibdata>
286
- <sections/>
287
- </iso-standard>
288
- OUTPUT
289
- end
290
-
291
- it "processes subdivisions" do
292
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
293
- = Document title
294
- Author
295
- :docfile: test.adoc
296
- :nodoc:
297
- :novalid:
298
- :revdate: 2000-01
299
- :published-date: 1000-01
300
- :docnumber: 1000
301
- :partnumber: 1-1
302
- :tc-docnumber: 2000
303
- :language: el
304
- :script: Grek
305
- :subdivision: Subdivision
306
- :subdivision-abbr: SD
307
- :doctype: This is a DocType
308
- :pub-address: 1 Infinity Loop + \\
309
- California
310
- :pub-phone: 3333333
311
- :pub-fax: 4444444
312
- :pub-email: x@example.com
313
- :pub-uri: http://www.example.com
314
- INPUT
315
- expect(xmlpp(strip_guid(output
316
- .sub(%r{<boilerplate>.*</boilerplate>}m, ""))))
317
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
318
- <iso-standard xmlns="https://www.metanorma.org/ns/iso" type="semantic" version="#{Metanorma::ISO::VERSION}">
319
- <bibdata type='standard'>
320
- <docidentifier type='ISO'>SD 1000-1-1</docidentifier>
321
- <docidentifier type='iso-with-lang'>SD 1000-1-1(X)</docidentifier>
322
- <docidentifier type='iso-reference'>SD 1000-1-1(X)</docidentifier>
323
- <docidentifier type='iso-tc'>2000</docidentifier>
324
- <docnumber>1000</docnumber>
325
- <date type='published'>
326
- <on>1000-01</on>
327
- </date>
328
- <contributor>
329
- <role type='author'/>
330
- <organization>
331
- <name>International Organization for Standardization</name>
332
- <subdivision>Subdivision</subdivision>
333
- <abbreviation>SD</abbreviation>
334
- </organization>
335
- </contributor>
336
- <contributor>
337
- <role type='publisher'/>
338
- <organization>
339
- <name>International Organization for Standardization</name>
340
- <subdivision>Subdivision</subdivision>
341
- <abbreviation>SD</abbreviation>
342
- <address>
343
- <formattedAddress>1 Infinity Loop <br/>California</formattedAddress>
344
- </address>
345
- <phone>3333333</phone>
346
- <phone type='fax'>4444444</phone>
347
- <email>x@example.com</email>
348
- <uri>http://www.example.com</uri>
349
- </organization>
350
- </contributor>
351
- <version>
352
- <revision-date>2000-01</revision-date>
353
- </version>
354
- <language>el</language>
355
- <script>Grek</script>
356
- <status>
357
- <stage abbreviation='IS'>60</stage>
358
- <substage>60</substage>
359
- </status>
360
- <copyright>
361
- <from>#{Time.now.year}</from>
362
- <owner>
363
- <organization>
364
- <name>International Organization for Standardization</name>
365
- <subdivision>Subdivision</subdivision>
366
- <abbreviation>SD</abbreviation>
367
- <address>
368
- <formattedAddress>1 Infinity Loop
369
- <br/>
370
- California</formattedAddress>
371
- </address>
372
- <phone>3333333</phone>
373
- <phone type="fax">4444444</phone>
374
- <email>x@example.com</email>
375
- <uri>http://www.example.com</uri>
376
- </organization>
377
- </owner>
378
- </copyright>
379
- <ext>
380
- <doctype>this-is-a-doctype</doctype>
381
- <editorialgroup>
382
- <technical-committee/>
383
- <subcommittee/>
384
- <workgroup/>
385
- </editorialgroup>
386
- <structuredidentifier>
387
- <project-number part="1" subpart="1">SD 1000</project-number>
388
- </structuredidentifier>
389
- <stagename>International standard</stagename>
390
- </ext>
391
- </bibdata>
392
- <sections> </sections>
393
- </iso-standard>
394
- OUTPUT
395
- end
396
-
397
- it "defaults substage, defines iteration on stage 50" do
398
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
399
- = Document title
400
- Author
401
- :docfile: test.adoc
402
- :nodoc:
403
- :novalid:
404
- :no-isobib:
405
- :docnumber: 1000
406
- :docstage: 50
407
- :language: fr
408
- :doctype: international-standard
409
- :iteration: 2
410
- INPUT
411
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
412
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
413
- <iso-standard type="semantic" version="#{Metanorma::ISO::VERSION}" xmlns="https://www.metanorma.org/ns/iso">
414
- <bibdata type="standard">
415
- <docidentifier type='ISO'>ISO/FDIS 1000.2</docidentifier>
416
- <docidentifier type='iso-with-lang'>ISO/FDIS 1000.2(F)</docidentifier>
417
- <docidentifier type='iso-reference'>ISO/FDIS 1000.2(F)</docidentifier>
418
- <docnumber>1000</docnumber>
419
- <contributor>
420
- <role type="author"/>
421
- <organization>
422
- <name>International Organization for Standardization</name>
423
- <abbreviation>ISO</abbreviation>
424
- </organization>
425
- </contributor>
426
- <contributor>
427
- <role type="publisher"/>
428
- <organization>
429
- <name>International Organization for Standardization</name>
430
- <abbreviation>ISO</abbreviation>
431
- </organization>
432
- </contributor>
433
- <language>fr</language>
434
- <script>Latn</script>
435
- <status>
436
- <stage abbreviation="FDIS">50</stage>
437
- <substage>00</substage>
438
- <iteration>2</iteration>
439
- </status>
440
- <copyright>
441
- <from>#{Date.today.year}</from>
442
- <owner>
443
- <organization>
444
- <name>International Organization for Standardization</name>
445
- <abbreviation>ISO</abbreviation>
446
- </organization>
447
- </owner>
448
- </copyright>
449
- <ext>
450
- <doctype>international-standard</doctype>
451
- <editorialgroup>
452
- <technical-committee/>
453
- <subcommittee/>
454
- <workgroup/>
455
- </editorialgroup>
456
- <structuredidentifier>
457
- <project-number>ISO 1000</project-number>
458
- </structuredidentifier>
459
- <stagename>Final draft</stagename>
460
- </ext>
461
- </bibdata>
462
- <sections/>
463
- </iso-standard>
464
- OUTPUT
465
- end
466
-
467
- it "defaults substage for stage 60" do
468
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
469
- = Document title
470
- Author
471
- :docfile: test.adoc
472
- :nodoc:
473
- :novalid:
474
- :no-isobib:
475
- :docnumber: 1000
476
- :docstage: 60
477
- INPUT
478
-
479
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
480
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
481
- <iso-standard xmlns="https://www.metanorma.org/ns/iso" type="semantic" version="#{Metanorma::ISO::VERSION}">
482
- <bibdata type="standard">
483
- <docidentifier type="ISO">ISO 1000</docidentifier>
484
- <docidentifier type='iso-with-lang'>ISO 1000(E)</docidentifier>
485
- <docidentifier type='iso-reference'>ISO 1000(E)</docidentifier>
486
- <docnumber>1000</docnumber>
487
- <contributor>
488
- <role type="author"/>
489
- <organization>
490
- <name>International Organization for Standardization</name>
491
- <abbreviation>ISO</abbreviation>
492
- </organization>
493
- </contributor>
494
- <contributor>
495
- <role type="publisher"/>
496
- <organization>
497
- <name>International Organization for Standardization</name>
498
- <abbreviation>ISO</abbreviation>
499
- </organization>
500
- </contributor>
501
-
502
- <language>en</language>
503
- <script>Latn</script>
504
- <status>
505
- <stage abbreviation="IS">60</stage>
506
- <substage>60</substage>
507
- </status>
508
- <copyright>
509
- <from>#{Date.today.year}</from>
510
- <owner>
511
- <organization>
512
- <name>International Organization for Standardization</name>
513
- <abbreviation>ISO</abbreviation>
514
- </organization>
515
- </owner>
516
- </copyright>
517
- <ext>
518
- <doctype>article</doctype>
519
- <editorialgroup>
520
- <technical-committee/>
521
- <subcommittee/>
522
- <workgroup/>
523
- </editorialgroup>
524
- <structuredidentifier>
525
- <project-number>ISO 1000</project-number>
526
- </structuredidentifier>
527
- <stagename>International standard</stagename>
528
- </ext>
529
- </bibdata>
530
- <sections/>
531
- </iso-standard>
532
- OUTPUT
533
- end
534
-
535
- it "populates metadata for PRF" do
536
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
537
- = Document title
538
- Author
539
- :docfile: test.adoc
540
- :nodoc:
541
- :novalid:
542
- :no-isobib:
543
- :docnumber: 1000
544
- :docstage: 60
545
- :docsubstage: 00
546
- INPUT
547
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
548
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
549
- <iso-standard xmlns="https://www.metanorma.org/ns/iso" type="semantic" version="#{Metanorma::ISO::VERSION}">
550
- <bibdata type="standard">
551
- <docidentifier type="ISO">ISO 1000</docidentifier>
552
- <docidentifier type='iso-with-lang'>ISO 1000(E)</docidentifier>
553
- <docidentifier type='iso-reference'>ISO 1000(E)</docidentifier>
554
- <docnumber>1000</docnumber>
555
- <contributor>
556
- <role type="author"/>
557
- <organization>
558
- <name>International Organization for Standardization</name>
559
- <abbreviation>ISO</abbreviation>
560
- </organization>
561
- </contributor>
562
- <contributor>
563
- <role type="publisher"/>
564
- <organization>
565
- <name>International Organization for Standardization</name>
566
- <abbreviation>ISO</abbreviation>
567
- </organization>
568
- </contributor>
569
-
570
- <language>en</language>
571
- <script>Latn</script>
572
- <status>
573
- <stage abbreviation="PRF">60</stage>
574
- <substage>00</substage>
575
- </status>
576
- <copyright>
577
- <from>#{Date.today.year}</from>
578
- <owner>
579
- <organization>
580
- <name>International Organization for Standardization</name>
581
- <abbreviation>ISO</abbreviation>
582
- </organization>
583
- </owner>
584
- </copyright>
585
- <ext>
586
- <doctype>article</doctype>
587
- <editorialgroup>
588
- <technical-committee/>
589
- <subcommittee/>
590
- <workgroup/>
591
- </editorialgroup>
592
- <structuredidentifier>
593
- <project-number>ISO 1000</project-number>
594
- </structuredidentifier>
595
- <stagename>Proof</stagename>
596
- </ext>
597
- </bibdata>
598
- <sections/>
599
- </iso-standard>
600
- OUTPUT
601
- end
602
-
603
- it "defaults metadata for DIR" do
604
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
605
- = Document title
606
- Author
607
- :docfile: test.adoc
608
- :nodoc:
609
- :novalid:
610
- :no-isobib:
611
- :docnumber: 1000
612
- :doctype: directive
613
- INPUT
614
-
615
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
616
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
617
- <iso-standard xmlns="https://www.metanorma.org/ns/iso" type="semantic" version="#{Metanorma::ISO::VERSION}">
618
- <bibdata type='standard'>
619
- <docidentifier type='ISO'>ISO DIR 1000</docidentifier>
620
- <docidentifier type='iso-with-lang'>ISO DIR 1000(E)</docidentifier>
621
- <docidentifier type='iso-reference'>ISO DIR 1000(E)</docidentifier>
622
- <docnumber>1000</docnumber>
623
- <contributor>
624
- <role type='author'/>
625
- <organization>
626
- <name>International Organization for Standardization</name>
627
- <abbreviation>ISO</abbreviation>
628
- </organization>
629
- </contributor>
630
- <contributor>
631
- <role type='publisher'/>
632
- <organization>
633
- <name>International Organization for Standardization</name>
634
- <abbreviation>ISO</abbreviation>
635
- </organization>
636
- </contributor>
637
- <language>en</language>
638
- <script>Latn</script>
639
- <status>
640
- <stage abbreviation='IS'>60</stage>
641
- <substage>60</substage>
642
- </status>
643
- <copyright>
644
- <from>2021</from>
645
- <owner>
646
- <organization>
647
- <name>International Organization for Standardization</name>
648
- <abbreviation>ISO</abbreviation>
649
- </organization>
650
- </owner>
651
- </copyright>
652
- <ext>
653
- <doctype>directive</doctype>
654
- <editorialgroup>
655
- <technical-committee/>
656
- <subcommittee/>
657
- <workgroup/>
658
- </editorialgroup>
659
- <structuredidentifier>
660
- <project-number>ISO 1000</project-number>
661
- </structuredidentifier>
662
- <stagename>International standard</stagename>
663
- </ext>
664
- </bibdata>
665
- <sections> </sections>
666
- </iso-standard>
667
- OUTPUT
668
- end
669
-
670
- it "processes document relations" do
671
- VCR.use_cassette "docrels" do
672
- output = Asciidoctor.convert(<<~"INPUT", *OPTIONS)
673
- = Document title
674
- Author
675
- :docfile: test.adoc
676
- :nodoc:
677
- :novalid:
678
- :amends: ISO 123;ISO 124
679
- :obsoletes: ISO 125;ISO 126
680
- INPUT
681
- expect(xmlpp(output.sub(%r{<boilerplate>.*</boilerplate>}m, "")))
682
- .to be_equivalent_to xmlpp(<<~"OUTPUT")
683
- <iso-standard xmlns="https://www.metanorma.org/ns/iso" type="semantic" version="#{Metanorma::ISO::VERSION}">
684
- <bibdata type='standard'>
685
- <contributor>
686
- <role type='author'/>
687
- <organization>
688
- <name>International Organization for Standardization</name>
689
- <abbreviation>ISO</abbreviation>
690
- </organization>
691
- </contributor>
692
- <contributor>
693
- <role type='publisher'/>
694
- <organization>
695
- <name>International Organization for Standardization</name>
696
- <abbreviation>ISO</abbreviation>
697
- </organization>
698
- </contributor>
699
- <language>en</language>
700
- <script>Latn</script>
701
- <status>
702
- <stage abbreviation='IS'>60</stage>
703
- <substage>60</substage>
704
- </status>
705
- <copyright>
706
- <from>2021</from>
707
- <owner>
708
- <organization>
709
- <name>International Organization for Standardization</name>
710
- <abbreviation>ISO</abbreviation>
711
- </organization>
712
- </owner>
713
- </copyright>
714
- <relation type='obsoletes'>
715
- <bibitem type='standard'>
716
- <fetched/>
717
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Natural rubber latex concentrate</title>
718
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of alkalinity</title>
719
- <title type='main' format='text/plain' language='en' script='Latn'>
720
- Natural rubber latex concentrate&#8201;&#8212;&#8201;Determination of
721
- alkalinity
722
- </title>
723
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex concentr&#233; de caoutchouc naturel</title>
724
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination de l&#8217;alcalinit&#233;</title>
725
- <title type='main' format='text/plain' language='fr' script='Latn'>
726
- Latex concentr&#233; de caoutchouc
727
- naturel&#8201;&#8212;&#8201;D&#233;termination de
728
- l&#8217;alcalinit&#233;
729
- </title>
730
- <uri type='src'>https://www.iso.org/standard/72849.html</uri>
731
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:72849:en</uri>
732
- <uri type='rss'>https://www.iso.org/contents/data/standard/07/28/72849.detail.rss</uri>
733
- <docidentifier type='ISO'>ISO 125</docidentifier>
734
- <docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7:en,fr</docidentifier>
735
- <docnumber>125</docnumber>
736
- <contributor>
737
- <role type='publisher'/>
738
- <organization>
739
- <name>International Organization for Standardization</name>
740
- <abbreviation>ISO</abbreviation>
741
- <uri>www.iso.org</uri>
742
- </organization>
743
- </contributor>
744
- <edition>7</edition>
745
- <language>en</language>
746
- <language>fr</language>
747
- <script>Latn</script>
748
- <status>
749
- <stage>60</stage>
750
- <substage>60</substage>
751
- </status>
752
- <copyright>
753
- <from>2020</from>
754
- <owner>
755
- <organization>
756
- <name>ISO</name>
757
- </organization>
758
- </owner>
759
- </copyright>
760
- <relation type='obsoletes'>
761
- <bibitem type='standard'>
762
- <formattedref format='text/plain'>ISO 125:2011</formattedref>
763
- </bibitem>
764
- </relation>
765
- <relation type='instance'>
766
- <bibitem type='standard'>
767
- <fetched/>
768
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Natural rubber latex concentrate</title>
769
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of alkalinity</title>
770
- <title type='main' format='text/plain' language='en' script='Latn'>
771
- Natural rubber latex concentrate&#8201;&#8212;&#8201;Determination
772
- of alkalinity
773
- </title>
774
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex concentr&#233; de caoutchouc naturel</title>
775
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination de l&#8217;alcalinit&#233;</title>
776
- <title type='main' format='text/plain' language='fr' script='Latn'>
777
- Latex concentr&#233; de caoutchouc
778
- naturel&#8201;&#8212;&#8201;D&#233;termination de
779
- l&#8217;alcalinit&#233;
780
- </title>
781
- <uri type='src'>https://www.iso.org/standard/72849.html</uri>
782
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:72849:en</uri>
783
- <uri type='rss'>https://www.iso.org/contents/data/standard/07/28/72849.detail.rss</uri>
784
- <docidentifier type='ISO'>ISO 125:2020</docidentifier>
785
- <docidentifier type='URN'>urn:iso:std:iso:125:stage-60.60:ed-7:en,fr</docidentifier>
786
- <docnumber>125</docnumber>
787
- <date type='published'>
788
- <on>2020-02</on>
789
- </date>
790
- <contributor>
791
- <role type='publisher'/>
792
- <organization>
793
- <name>International Organization for Standardization</name>
794
- <abbreviation>ISO</abbreviation>
795
- <uri>www.iso.org</uri>
796
- </organization>
797
- </contributor>
798
- <edition>7</edition>
799
- <language>en</language>
800
- <language>fr</language>
801
- <script>Latn</script>
802
- <abstract format='text/plain' language='en' script='Latn'>
803
- This document specifies a method for the determination of the
804
- alkalinity of natural rubber latex concentrate. The method is not
805
- necessarily suitable for latices from natural sources other than
806
- Hevea brasiliensis or for synthetic rubber latices, compounded
807
- latex, vulcanized latex or artificial dispersions of rubber. NOTE
808
- A method for the determination of the alkalinity of
809
- polychloroprene latex is specified in ISO 13773.
810
- </abstract>
811
- <abstract format='text/plain' language='fr' script='Latn'>
812
- Le pr&#233;sent document sp&#233;cifie une m&#233;thode de
813
- d&#233;termination de l&#8217;alcalinit&#233; du latex
814
- concentr&#233; de caoutchouc naturel. La m&#233;thode ne convient
815
- pas n&#233;cessairement aux latex d&#8217;origine naturelle autres
816
- que l&#8217;Hevea brasiliensis ou aux latex de caoutchouc de
817
- synth&#232;se, aux latex formul&#233;s, aux latex vulcanis&#233;s
818
- ou aux dispersions artificielles de caoutchouc. NOTE Une
819
- m&#233;thode de d&#233;termination de l&#8217;alcalinit&#233; du
820
- latex de polychloropr&#232;ne est sp&#233;cifi&#233;e dans
821
- l&#8217;ISO 13773.
822
- </abstract>
823
- <status>
824
- <stage>60</stage>
825
- <substage>60</substage>
826
- </status>
827
- <copyright>
828
- <from>2020</from>
829
- <owner>
830
- <organization>
831
- <name>ISO</name>
832
- </organization>
833
- </owner>
834
- </copyright>
835
- <relation type='obsoletes'>
836
- <bibitem type='standard'>
837
- <formattedref format='text/plain'>ISO 125:2011</formattedref>
838
- </bibitem>
839
- </relation>
840
- <place>Geneva</place>
841
- </bibitem>
842
- </relation>
843
- <place>Geneva</place>
844
- </bibitem>
845
- </relation>
846
- <relation type='obsoletes'>
847
- <bibitem type='standard'>
848
- <fetched/>
849
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Natural rubber latex concentrate</title>
850
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of dry rubber content</title>
851
- <title type='main' format='text/plain' language='en' script='Latn'>
852
- Natural rubber latex concentrate&#8201;&#8212;&#8201;Determination of
853
- dry rubber content
854
- </title>
855
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc naturel concentr&#233;</title>
856
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination de la teneur en caoutchouc sec</title>
857
- <title type='main' format='text/plain' language='fr' script='Latn'>
858
- Latex de caoutchouc naturel
859
- concentr&#233;&#8201;&#8212;&#8201;D&#233;termination de la teneur en
860
- caoutchouc sec
861
- </title>
862
- <uri type='src'>https://www.iso.org/standard/35176.html</uri>
863
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:35176:en</uri>
864
- <uri type='rss'>https://www.iso.org/contents/data/standard/03/51/35176.detail.rss</uri>
865
- <docidentifier type='ISO'>ISO 126</docidentifier>
866
- <docidentifier type='URN'>urn:iso:std:iso:126:stage-90.93:ed-5:en,fr</docidentifier>
867
- <docnumber>126</docnumber>
868
- <contributor>
869
- <role type='publisher'/>
870
- <organization>
871
- <name>International Organization for Standardization</name>
872
- <abbreviation>ISO</abbreviation>
873
- <uri>www.iso.org</uri>
874
- </organization>
875
- </contributor>
876
- <edition>5</edition>
877
- <language>en</language>
878
- <language>fr</language>
879
- <script>Latn</script>
880
- <status>
881
- <stage>90</stage>
882
- <substage>93</substage>
883
- </status>
884
- <copyright>
885
- <from>2005</from>
886
- <owner>
887
- <organization>
888
- <name>ISO</name>
889
- </organization>
890
- </owner>
891
- </copyright>
892
- <relation type='obsoletes'>
893
- <bibitem type='standard'>
894
- <formattedref format='text/plain'>ISO 126:1995</formattedref>
895
- </bibitem>
896
- </relation>
897
- <relation type='instance'>
898
- <bibitem type='standard'>
899
- <fetched/>
900
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Natural rubber latex concentrate</title>
901
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of dry rubber content</title>
902
- <title type='main' format='text/plain' language='en' script='Latn'>
903
- Natural rubber latex concentrate&#8201;&#8212;&#8201;Determination
904
- of dry rubber content
905
- </title>
906
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc naturel concentr&#233;</title>
907
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination de la teneur en caoutchouc sec</title>
908
- <title type='main' format='text/plain' language='fr' script='Latn'>
909
- Latex de caoutchouc naturel
910
- concentr&#233;&#8201;&#8212;&#8201;D&#233;termination de la teneur
911
- en caoutchouc sec
912
- </title>
913
- <uri type='src'>https://www.iso.org/standard/35176.html</uri>
914
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:35176:en</uri>
915
- <uri type='rss'>https://www.iso.org/contents/data/standard/03/51/35176.detail.rss</uri>
916
- <docidentifier type='ISO'>ISO 126:2005</docidentifier>
917
- <docidentifier type='URN'>urn:iso:std:iso:126:stage-90.93:ed-5:en,fr</docidentifier>
918
- <docnumber>126</docnumber>
919
- <date type='published'>
920
- <on>2005-04</on>
921
- </date>
922
- <contributor>
923
- <role type='publisher'/>
924
- <organization>
925
- <name>International Organization for Standardization</name>
926
- <abbreviation>ISO</abbreviation>
927
- <uri>www.iso.org</uri>
928
- </organization>
929
- </contributor>
930
- <edition>5</edition>
931
- <language>en</language>
932
- <language>fr</language>
933
- <script>Latn</script>
934
- <abstract format='text/plain' language='en' script='Latn'>
935
- ISO 126:2005 specifies a method for the determination of the dry
936
- rubber content of natural rubber latex concentrate. The method is
937
- not necessarily suitable for latices preserved with potassium
938
- hydroxide, latices from natural sources other than Hevea
939
- brasiliensis, or for compounded latex, vulcanized latex or
940
- artificial dispersions of rubber and it is not applicable to
941
- synthetic rubber latices.
942
- </abstract>
943
- <abstract format='text/plain' language='fr' script='Latn'>
944
- L&#8217;ISO 126:2005 sp&#233;cifie une m&#233;thode de
945
- d&#233;termination de la teneur en caoutchouc sec du latex de
946
- caoutchouc naturel concentr&#233;. La m&#233;thode ne convient pas
947
- n&#233;cessairement pour les latex conserv&#233;s dans de
948
- l&#8217;hydroxyde de potassium, pour les latex d&#8217;origine
949
- naturelle autres que celui de l&#8217;Hevea brasiliensis ou pour
950
- des m&#233;langes de latex, pour les latex vulcanis&#233;s ou les
951
- dispersions artificielles de caoutchouc, et elle n&#8217;est pas
952
- applicable aux latex d&#8217;&#233;lastom&#232;res.
953
- </abstract>
954
- <status>
955
- <stage>90</stage>
956
- <substage>93</substage>
957
- </status>
958
- <copyright>
959
- <from>2005</from>
960
- <owner>
961
- <organization>
962
- <name>ISO</name>
963
- </organization>
964
- </owner>
965
- </copyright>
966
- <relation type='obsoletes'>
967
- <bibitem type='standard'>
968
- <formattedref format='text/plain'>ISO 126:1995</formattedref>
969
- </bibitem>
970
- </relation>
971
- <place>Geneva</place>
972
- </bibitem>
973
- </relation>
974
- <place>Geneva</place>
975
- </bibitem>
976
- </relation>
977
- <relation type='updates'>
978
- <description>amends</description>
979
- <bibitem type='standard'>
980
- <fetched/>
981
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Rubber latex</title>
982
- <title type='title-main' format='text/plain' language='en' script='Latn'>Sampling</title>
983
- <title type='main' format='text/plain' language='en' script='Latn'>Rubber latex&#8201;&#8212;&#8201;Sampling</title>
984
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc</title>
985
- <title type='title-main' format='text/plain' language='fr' script='Latn'>&#201;chantillonnage</title>
986
- <title type='main' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc&#8201;&#8212;&#8201;&#201;chantillonnage</title>
987
- <uri type='src'>https://www.iso.org/standard/23281.html</uri>
988
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:23281:en</uri>
989
- <uri type='rss'>https://www.iso.org/contents/data/standard/02/32/23281.detail.rss</uri>
990
- <docidentifier type='ISO'>ISO 123</docidentifier>
991
- <docidentifier type='URN'>urn:iso:std:iso:123:stage-90.93:ed-3:en,fr</docidentifier>
992
- <docnumber>123</docnumber>
993
- <contributor>
994
- <role type='publisher'/>
995
- <organization>
996
- <name>International Organization for Standardization</name>
997
- <abbreviation>ISO</abbreviation>
998
- <uri>www.iso.org</uri>
999
- </organization>
1000
- </contributor>
1001
- <edition>3</edition>
1002
- <language>en</language>
1003
- <language>fr</language>
1004
- <script>Latn</script>
1005
- <status>
1006
- <stage>90</stage>
1007
- <substage>93</substage>
1008
- </status>
1009
- <copyright>
1010
- <from>2001</from>
1011
- <owner>
1012
- <organization>
1013
- <name>ISO</name>
1014
- </organization>
1015
- </owner>
1016
- </copyright>
1017
- <relation type='obsoletes'>
1018
- <bibitem type='standard'>
1019
- <formattedref format='text/plain'>ISO 123:1985</formattedref>
1020
- </bibitem>
1021
- </relation>
1022
- <relation type='instance'>
1023
- <bibitem type='standard'>
1024
- <fetched/>
1025
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Rubber latex</title>
1026
- <title type='title-main' format='text/plain' language='en' script='Latn'>Sampling</title>
1027
- <title type='main' format='text/plain' language='en' script='Latn'>Rubber latex&#8201;&#8212;&#8201;Sampling</title>
1028
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc</title>
1029
- <title type='title-main' format='text/plain' language='fr' script='Latn'>&#201;chantillonnage</title>
1030
- <title type='main' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc&#8201;&#8212;&#8201;&#201;chantillonnage</title>
1031
- <uri type='src'>https://www.iso.org/standard/23281.html</uri>
1032
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:23281:en</uri>
1033
- <uri type='rss'>https://www.iso.org/contents/data/standard/02/32/23281.detail.rss</uri>
1034
- <docidentifier type='ISO'>ISO 123:2001</docidentifier>
1035
- <docidentifier type='URN'>urn:iso:std:iso:123:stage-90.93:ed-3:en,fr</docidentifier>
1036
- <docnumber>123</docnumber>
1037
- <date type='published'>
1038
- <on>2001-05</on>
1039
- </date>
1040
- <contributor>
1041
- <role type='publisher'/>
1042
- <organization>
1043
- <name>International Organization for Standardization</name>
1044
- <abbreviation>ISO</abbreviation>
1045
- <uri>www.iso.org</uri>
1046
- </organization>
1047
- </contributor>
1048
- <edition>3</edition>
1049
- <language>en</language>
1050
- <language>fr</language>
1051
- <script>Latn</script>
1052
- <abstract format='text/plain' language='en' script='Latn'>
1053
- This International Standard specifies procedures for sampling
1054
- natural rubber latex concentrate and for sampling synthetic rubber
1055
- latices and artificial latices. It is also suitable for sampling
1056
- rubber latex contained in drums, tank cars or tanks. The
1057
- procedures may also be used for sampling plastics dispersions.
1058
- </abstract>
1059
- <abstract format='text/plain' language='fr' script='Latn'>
1060
- La pr&#233;sente Norme internationale sp&#233;cifie des
1061
- m&#233;thodes d&#8217;&#233;chantillonnage pour des
1062
- concentr&#233;s de latex de caoutchouc naturel et pour
1063
- &#233;chantillonner des latex de caoutchouc synth&#233;tique et
1064
- des latex artificiels. Elle s&#8217;applique &#233;galement &#224;
1065
- l&#8217;&#233;chantillonnage de latex de caoutchouc contenus dans
1066
- des f&#251;ts, citernes routi&#232;res ou de stockage. Le mode
1067
- op&#233;ratoire peut aussi &#234;tre utilis&#233; pour
1068
- l&#8217;&#233;chantillonnage de dispersions de plastiques.
1069
- </abstract>
1070
- <status>
1071
- <stage>90</stage>
1072
- <substage>93</substage>
1073
- </status>
1074
- <copyright>
1075
- <from>2001</from>
1076
- <owner>
1077
- <organization>
1078
- <name>ISO</name>
1079
- </organization>
1080
- </owner>
1081
- </copyright>
1082
- <relation type='obsoletes'>
1083
- <bibitem type='standard'>
1084
- <formattedref format='text/plain'>ISO 123:1985</formattedref>
1085
- </bibitem>
1086
- </relation>
1087
- <place>Geneva</place>
1088
- </bibitem>
1089
- </relation>
1090
- <place>Geneva</place>
1091
- </bibitem>
1092
- </relation>
1093
- <relation type='updates'>
1094
- <description>amends</description>
1095
- <bibitem type='standard'>
1096
- <fetched/>
1097
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Latex, rubber</title>
1098
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of total solids content</title>
1099
- <title type='main' format='text/plain' language='en' script='Latn'>Latex, rubber&#8201;&#8212;&#8201;Determination of total solids content</title>
1100
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc</title>
1101
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination des mati&#232;res solides totales</title>
1102
- <title type='main' format='text/plain' language='fr' script='Latn'>
1103
- Latex de caoutchouc&#8201;&#8212;&#8201;D&#233;termination des
1104
- mati&#232;res solides totales
1105
- </title>
1106
- <uri type='src'>https://www.iso.org/standard/61884.html</uri>
1107
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:61884:en</uri>
1108
- <uri type='rss'>https://www.iso.org/contents/data/standard/06/18/61884.detail.rss</uri>
1109
- <docidentifier type='ISO'>ISO 124</docidentifier>
1110
- <docidentifier type='URN'>urn:iso:std:iso:124:stage-90.93:ed-7:en,fr</docidentifier>
1111
- <docnumber>124</docnumber>
1112
- <contributor>
1113
- <role type='publisher'/>
1114
- <organization>
1115
- <name>International Organization for Standardization</name>
1116
- <abbreviation>ISO</abbreviation>
1117
- <uri>www.iso.org</uri>
1118
- </organization>
1119
- </contributor>
1120
- <edition>7</edition>
1121
- <language>en</language>
1122
- <language>fr</language>
1123
- <script>Latn</script>
1124
- <status>
1125
- <stage>90</stage>
1126
- <substage>93</substage>
1127
- </status>
1128
- <copyright>
1129
- <from>2014</from>
1130
- <owner>
1131
- <organization>
1132
- <name>ISO</name>
1133
- </organization>
1134
- </owner>
1135
- </copyright>
1136
- <relation type='obsoletes'>
1137
- <bibitem type='standard'>
1138
- <formattedref format='text/plain'>ISO 124:2011</formattedref>
1139
- </bibitem>
1140
- </relation>
1141
- <relation type='instance'>
1142
- <bibitem type='standard'>
1143
- <fetched/>
1144
- <title type='title-intro' format='text/plain' language='en' script='Latn'>Latex, rubber</title>
1145
- <title type='title-main' format='text/plain' language='en' script='Latn'>Determination of total solids content</title>
1146
- <title type='main' format='text/plain' language='en' script='Latn'>Latex, rubber&#8201;&#8212;&#8201;Determination of total solids content</title>
1147
- <title type='title-intro' format='text/plain' language='fr' script='Latn'>Latex de caoutchouc</title>
1148
- <title type='title-main' format='text/plain' language='fr' script='Latn'>D&#233;termination des mati&#232;res solides totales</title>
1149
- <title type='main' format='text/plain' language='fr' script='Latn'>
1150
- Latex de caoutchouc&#8201;&#8212;&#8201;D&#233;termination des
1151
- mati&#232;res solides totales
1152
- </title>
1153
- <uri type='src'>https://www.iso.org/standard/61884.html</uri>
1154
- <uri type='obp'>https://www.iso.org/obp/ui/#!iso:std:61884:en</uri>
1155
- <uri type='rss'>https://www.iso.org/contents/data/standard/06/18/61884.detail.rss</uri>
1156
- <docidentifier type='ISO'>ISO 124:2014</docidentifier>
1157
- <docidentifier type='URN'>urn:iso:std:iso:124:stage-90.93:ed-7:en,fr</docidentifier>
1158
- <docnumber>124</docnumber>
1159
- <date type='published'>
1160
- <on>2014-03</on>
1161
- </date>
1162
- <contributor>
1163
- <role type='publisher'/>
1164
- <organization>
1165
- <name>International Organization for Standardization</name>
1166
- <abbreviation>ISO</abbreviation>
1167
- <uri>www.iso.org</uri>
1168
- </organization>
1169
- </contributor>
1170
- <edition>7</edition>
1171
- <language>en</language>
1172
- <language>fr</language>
1173
- <script>Latn</script>
1174
- <abstract format='text/plain' language='en' script='Latn'>
1175
- ISO 124:2014 specifies methods for the determination of the total
1176
- solids content of natural rubber field and concentrated latices
1177
- and synthetic rubber latex. These methods are not necessarily
1178
- suitable for latex from natural sources other than the Hevea
1179
- brasiliensis, for vulcanized latex, for compounded latex, or for
1180
- artificial dispersions of rubber.
1181
- </abstract>
1182
- <abstract format='text/plain' language='fr' script='Latn'>
1183
- L&#8217;ISO 124:2014 sp&#233;cifie des m&#233;thodes pour la
1184
- d&#233;termination des mati&#232;res solides totales dans le latex
1185
- de plantation, le latex de concentr&#233; de caoutchouc naturel et
1186
- le latex de caoutchouc synth&#233;tique. Ces m&#233;thodes ne
1187
- conviennent pas n&#233;cessairement au latex d&#8217;origine
1188
- naturelle autre que celui de l&#8217;Hevea brasiliensis, au latex
1189
- vulcanis&#233;, aux m&#233;langes de latex, ou aux dispersions
1190
- artificielles de caoutchouc.
1191
- </abstract>
1192
- <status>
1193
- <stage>90</stage>
1194
- <substage>93</substage>
1195
- </status>
1196
- <copyright>
1197
- <from>2014</from>
1198
- <owner>
1199
- <organization>
1200
- <name>ISO</name>
1201
- </organization>
1202
- </owner>
1203
- </copyright>
1204
- <relation type='obsoletes'>
1205
- <bibitem type='standard'>
1206
- <formattedref format='text/plain'>ISO 124:2011</formattedref>
1207
- </bibitem>
1208
- </relation>
1209
- <place>Geneva</place>
1210
- </bibitem>
1211
- </relation>
1212
- <place>Geneva</place>
1213
- </bibitem>
1214
- </relation>
1215
- <ext>
1216
- <doctype>article</doctype>
1217
- <editorialgroup>
1218
- <technical-committee/>
1219
- <subcommittee/>
1220
- <workgroup/>
1221
- </editorialgroup>
1222
- <stagename>International standard</stagename>
1223
- </ext>
1224
- </bibdata>
1225
- <sections> </sections>
1226
- </iso-standard>
1227
- OUTPUT
1228
- end
1229
- end
1230
-
1231
- it "reads scripts into blank HTML document" do
1232
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1233
- = Document title
1234
- Author
1235
- :docfile: test.adoc
1236
- :novalid:
1237
- :no-isobib:
1238
- :no-pdf:
1239
- INPUT
1240
- html = File.read("test.html", encoding: "utf-8")
1241
- expect(html).to match(%r{<script>})
1242
- end
1243
-
1244
- it "uses default fonts" do
1245
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1246
- = Document title
1247
- Author
1248
- :docfile: test.adoc
1249
- :novalid:
1250
- :no-isobib:
1251
- :no-pdf:
1252
- INPUT
1253
- html = File.read("test.html", encoding: "utf-8")
1254
- expect(html)
1255
- .to match(%r[\bpre[^{]+\{[^{]+font-family: "Courier New", monospace;]m)
1256
- expect(html)
1257
- .to match(%r[blockquote[^{]+\{[^{]+font-family: "Cambria", serif;]m)
1258
- expect(html)
1259
- .to match(%r[\.h2Annex[^{]+\{[^{]+font-family: "Cambria", serif;]m)
1260
- end
1261
-
1262
- it "uses default fonts for alt doc" do
1263
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1264
- = Document title
1265
- Author
1266
- :docfile: test.adoc
1267
- :novalid:
1268
- :no-isobib:
1269
- :no-pdf:
1270
- INPUT
1271
- html = File.read("test_alt.html", encoding: "utf-8")
1272
- expect(html)
1273
- .to match(%r[\bpre[^{]+\{[^{]+font-family: "Space Mono", monospace;]m)
1274
- expect(html)
1275
- .to match(%r[blockquote[^{]+\{[^{]+font-family: "Lato", sans-serif;]m)
1276
- expect(html)
1277
- .to match(%r[\.h2Annex[^{]+\{[^{]+font-family: "Lato", sans-serif;]m)
1278
- end
1279
-
1280
- it "uses Chinese fonts" do
1281
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1282
- = Document title
1283
- Author
1284
- :docfile: test.adoc
1285
- :novalid:
1286
- :no-isobib:
1287
- :script: Hans
1288
- :no-pdf:
1289
- INPUT
1290
- html = File.read("test.html", encoding: "utf-8")
1291
- expect(html)
1292
- .to match(%r[\bpre[^{]+\{[^{]+font-family: "Courier New", monospace;]m)
1293
- expect(html)
1294
- .to match(%r[blockquote[^{]+\{[^{]+font-family: "Source Han Sans", serif;]m)
1295
- expect(html)
1296
- .to match(%r[\.h2Annex[^{]+\{[^{]+font-family: "Source Han Sans", sans-serif;]m)
1297
- end
1298
-
1299
- it "uses specified fonts" do
1300
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1301
- = Document title
1302
- Author
1303
- :docfile: test.adoc
1304
- :novalid:
1305
- :no-isobib:
1306
- :script: Hans
1307
- :body-font: Zapf Chancery
1308
- :header-font: Comic Sans
1309
- :monospace-font: Andale Mono
1310
- :no-pdf:
1311
- INPUT
1312
- html = File.read("test.html", encoding: "utf-8")
1313
- expect(html).to match(%r[\bpre[^{]+\{[^{]+font-family: Andale Mono;]m)
1314
- expect(html)
1315
- .to match(%r[blockquote[^{]+\{[^{]+font-family: Zapf Chancery;]m)
1316
- expect(html).to match(%r[\.h2Annex[^{]+\{[^{]+font-family: Comic Sans;]m)
1317
- end
1318
-
1319
- it "strips MS-specific CSS" do
1320
- Asciidoctor.convert(<<~"INPUT", *OPTIONS)
1321
- = Document title
1322
- Author
1323
- :docfile: test.adoc
1324
- :novalid:
1325
- :no-isobib:
1326
- :no-pdf:
1327
- INPUT
1328
- word = File.read("test.doc", encoding: "utf-8")
1329
- html = File.read("test.html", encoding: "utf-8")
1330
- expect(word).to match(%r[mso-style-name: "Intro Title";]m)
1331
- expect(html).not_to match(%r[mso-style-name: "Intro Title";]m)
1332
- end
1333
- end