asciidoctor-iso 0.8.1 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/Gemfile.lock +18 -13
  4. data/README.adoc +28 -8
  5. data/asciidoctor-iso.gemspec +3 -2
  6. data/lib/asciidoctor-iso.rb +4 -0
  7. data/lib/asciidoctor/iso/base.rb +4 -17
  8. data/lib/asciidoctor/iso/cleanup.rb +16 -1
  9. data/lib/asciidoctor/iso/cleanup_ref.rb +2 -2
  10. data/lib/asciidoctor/iso/front.rb +5 -1
  11. data/lib/asciidoctor/iso/isostandard.rng +17 -1
  12. data/lib/asciidoctor/iso/ref.rb +122 -52
  13. data/lib/asciidoctor/iso/section.rb +8 -2
  14. data/lib/asciidoctor/iso/version.rb +1 -1
  15. data/lib/metanorma/iso.rb +7 -0
  16. data/lib/metanorma/iso/processor.rb +38 -0
  17. data/spec/asciidoctor-iso/base_spec.rb +37 -8
  18. data/spec/asciidoctor-iso/blocks_spec.rb +2 -2
  19. data/spec/asciidoctor-iso/cleanup_spec.rb +71 -203
  20. data/spec/asciidoctor-iso/isobib_cache_spec.rb +164 -0
  21. data/spec/asciidoctor-iso/refs_spec.rb +263 -183
  22. data/spec/asciidoctor-iso/validate_spec.rb +30 -28
  23. data/spec/examples/iso_123_.xml +3 -3
  24. data/spec/examples/iso_123_all_parts.xml +3 -3
  25. data/spec/examples/iso_123_no_year_note.xml +3 -3
  26. data/spec/examples/iso_124_.xml +3 -3
  27. data/spec/spec_helper.rb +42 -1
  28. metadata +23 -17
  29. data/lib/asciidoctor/iso/html/header.html +0 -184
  30. data/lib/asciidoctor/iso/html/html_iso_intro.html +0 -34
  31. data/lib/asciidoctor/iso/html/html_iso_titlepage.html +0 -32
  32. data/lib/asciidoctor/iso/html/htmlstyle.scss +0 -46
  33. data/lib/asciidoctor/iso/html/isodoc.scss +0 -679
  34. data/lib/asciidoctor/iso/html/scripts.html +0 -174
  35. data/lib/asciidoctor/iso/html/style-human.scss +0 -1277
  36. data/lib/asciidoctor/iso/html/style-iso.scss +0 -1257
  37. data/lib/asciidoctor/iso/html/word_iso_intro.html +0 -72
  38. data/lib/asciidoctor/iso/html/word_iso_titlepage.html +0 -58
  39. data/lib/asciidoctor/iso/html/wordstyle.scss +0 -1135
@@ -37,7 +37,11 @@ module Asciidoctor
37
37
  when "scope" then scope_parse(a, xml, node)
38
38
  when "normative references" then norm_ref_parse(a, xml, node)
39
39
  when "terms and definitions",
40
- "terms, definitions, symbols and abbreviated terms"
40
+ "terms, definitions, symbols and abbreviated terms",
41
+ "terms, definitions, symbols and abbreviations",
42
+ "terms, definitions and symbols",
43
+ "terms, definitions and abbreviations",
44
+ "terms, definitions and abbreviated terms"
41
45
  @term_def = true
42
46
  term_def_parse(a, xml, node, true)
43
47
  @term_def = false
@@ -47,6 +51,8 @@ module Asciidoctor
47
51
  else
48
52
  if @term_def then term_def_subclause_parse(a, xml, node)
49
53
  elsif @biblio then bibliography_parse(a, xml, node)
54
+ elsif node.attr("style") == "bibliography" && node.level == 1
55
+ bibliography_parse(a, xml, node)
50
56
  elsif node.attr("style") == "appendix" && node.level == 1
51
57
  annex_parse(a, xml, node)
52
58
  elsif node.option? "appendix"
@@ -105,7 +111,7 @@ module Asciidoctor
105
111
  xml_section.title { |t| t << title }
106
112
  xml_section << node.content
107
113
  end
108
- @biblio = true
114
+ @biblio = false
109
115
  end
110
116
 
111
117
  def symbols_parse(attrs, xml, node)
@@ -1,5 +1,5 @@
1
1
  module Asciidoctor
2
2
  module ISO
3
- VERSION = "0.8.1".freeze
3
+ VERSION = "0.9.0".freeze
4
4
  end
5
5
  end
@@ -0,0 +1,7 @@
1
+ require_relative "./iso/processor"
2
+
3
+ module Metanorma
4
+ module Iso
5
+
6
+ end
7
+ end
@@ -0,0 +1,38 @@
1
+ require "metanorma/processor"
2
+
3
+ module Metanorma
4
+ module Iso
5
+ class Processor < Metanorma::Processor
6
+
7
+ def initialize
8
+ @short = :iso
9
+ @input_format = :asciidoc
10
+ @asciidoctor_backend = :iso
11
+ end
12
+
13
+ def output_formats
14
+ {
15
+ html: "html",
16
+ html_alt: "alt.html",
17
+ doc: "doc"
18
+ }
19
+ end
20
+
21
+ def input_to_isodoc(file)
22
+ Metanorma::Input::Asciidoc.new.process(file, @asciidoctor_backend)
23
+ end
24
+
25
+ def output(isodoc_node, outname, format, options={})
26
+ case format
27
+ when :html
28
+ IsoDoc::Iso::HtmlConvert.new(options).convert(outname, isodoc_node)
29
+ when :html_alt
30
+ IsoDoc::Iso::HtmlConvert.new(options.merge(alt: true)).convert(outname, isodoc_node)
31
+ when :doc
32
+ IsoDoc::Iso::WordConvert.new(options).convert(outname, isodoc_node)
33
+ end
34
+ end
35
+
36
+ end
37
+ end
38
+ end
@@ -88,7 +88,7 @@ RSpec.describe Asciidoctor::ISO do
88
88
  <title-part language="fr" format="text/plain">Part du Titre</title-part>
89
89
  </title>
90
90
  <docidentifier>
91
- <project-number part="1">1000</project-number>
91
+ <project-number part="1">ISO 1000</project-number>
92
92
  </docidentifier>
93
93
  <contributor>
94
94
  <role type="author"/>
@@ -126,9 +126,15 @@ RSpec.describe Asciidoctor::ISO do
126
126
  <workgroup number="3" type="C">WG</workgroup>
127
127
  <secretariat>SECRETARIAT</secretariat>
128
128
  </editorialgroup>
129
- <ics>1</ics>
130
- <ics>2</ics>
131
- <ics>3</ics>
129
+ <ics>
130
+ <code>1</code>
131
+ </ics>
132
+ <ics>
133
+ <code>2</code>
134
+ </ics>
135
+ <ics>
136
+ <code>3</code>
137
+ </ics>
132
138
  </bibdata><version>
133
139
  <edition>2</edition>
134
140
  <revision-date>2000-01-01</revision-date>
@@ -152,7 +158,7 @@ RSpec.describe Asciidoctor::ISO do
152
158
  :tc-docnumber: 2000
153
159
  :language: el
154
160
  :script: Grek
155
- :publisher: IEC,IETF
161
+ :publisher: IEC,IETF,ISO
156
162
  INPUT
157
163
  <?xml version="1.0" encoding="UTF-8"?>
158
164
  <iso-standard xmlns="http://riboseinc.com/isoxml">
@@ -164,7 +170,7 @@ RSpec.describe Asciidoctor::ISO do
164
170
 
165
171
  </title>
166
172
  <docidentifier>
167
- <project-number part="1" subpart="1">1000</project-number>
173
+ <project-number part="1" subpart="1">ISO/IEC/IETF 1000</project-number>
168
174
  <tc-document-number>2000</tc-document-number>
169
175
  </docidentifier>
170
176
  <contributor>
@@ -180,6 +186,13 @@ RSpec.describe Asciidoctor::ISO do
180
186
  <name>IETF</name>
181
187
  </organization>
182
188
  </contributor>
189
+ <contributor>
190
+ <role type="author"/>
191
+ <organization>
192
+ <name>International Organization for Standardization</name>
193
+ <abbreviation>ISO</abbreviation>
194
+ </organization>
195
+ </contributor>
183
196
  <contributor>
184
197
  <role type="publisher"/>
185
198
  <organization>
@@ -193,6 +206,13 @@ RSpec.describe Asciidoctor::ISO do
193
206
  <name>IETF</name>
194
207
  </organization>
195
208
  </contributor>
209
+ <contributor>
210
+ <role type="publisher"/>
211
+ <organization>
212
+ <name>International Organization for Standardization</name>
213
+ <abbreviation>ISO</abbreviation>
214
+ </organization>
215
+ </contributor>
196
216
  <language>el</language>
197
217
  <script>Grek</script>
198
218
  <status>
@@ -203,8 +223,8 @@ RSpec.describe Asciidoctor::ISO do
203
223
  <from>2018</from>
204
224
  <owner>
205
225
  <organization>
206
- <name>International Electrotechnical Commission</name>
207
- <abbreviation>IEC</abbreviation>
226
+ <name>International Electrotechnical Commission</name>
227
+ <abbreviation>IEC</abbreviation>
208
228
  </organization>
209
229
  </owner>
210
230
  </copyright>
@@ -216,6 +236,15 @@ RSpec.describe Asciidoctor::ISO do
216
236
  </organization>
217
237
  </owner>
218
238
  </copyright>
239
+ <copyright>
240
+ <from>2018</from>
241
+ <owner>
242
+ <organization>
243
+ <name>International Organization for Standardization</name>
244
+ <abbreviation>ISO</abbreviation>
245
+ </organization>
246
+ </owner>
247
+ </copyright>
219
248
  <editorialgroup>
220
249
  <technical-committee/>
221
250
  <subcommittee/>
@@ -401,7 +401,7 @@ RSpec.describe Asciidoctor::ISO do
401
401
  === Term1
402
402
 
403
403
  [.source]
404
- <<ISO2191,section 1>>
404
+ <<ISO2191,section=1>>
405
405
  INPUT
406
406
  #{BLANK_HDR}
407
407
  <sections>
@@ -427,7 +427,7 @@ RSpec.describe Asciidoctor::ISO do
427
427
  === Term1
428
428
 
429
429
  [.source]
430
- <<ISO2191,section 1>>, with adjustments
430
+ <<ISO2191,section=1>>, with adjustments
431
431
  INPUT
432
432
  #{BLANK_HDR}
433
433
  <sections>
@@ -170,7 +170,6 @@ r = 1 %</stem>
170
170
  end
171
171
 
172
172
  it "converts xrefs to references into erefs" do
173
- stub_fetch_ref
174
173
  expect(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to <<~"OUTPUT"
175
174
  #{ASCIIDOC_BLANK_HDR}
176
175
  <<iso216>>
@@ -183,58 +182,25 @@ r = 1 %</stem>
183
182
  <preface><foreword obligation="informative">
184
183
  <title>Foreword</title>
185
184
  <p id="_">
186
- <eref type="inline" bibitemid="iso216" citeas="ISO 216: 2007"/>
185
+ <eref type="inline" bibitemid="iso216" citeas="ISO 216: 2001"/>
187
186
  </p>
188
187
  </foreword></preface><sections>
189
188
  </sections><bibliography><references id="_" obligation="informative">
190
189
  <title>Normative References</title>
191
- <bibitem type="international-standard" id="ISO216">
192
- <title format="text/plain" language="en" script="Latn">Writing paper and certain classes of printed matter -- Trimmed sizes -- A and B series, and indication of machine direction</title>
193
- <title format="text/plain" language="fr" script="Latn">Papiers à écrire et certaines catégories d'imprimés -- Formats finis -- Séries A et B, et indication du sens machine</title>
194
- <source type="src">https://www.iso.org/standard/36631.html</source>
195
- <source type="obp">https://www.iso.org/obp/ui/#!iso:std:36631:en</source>
196
- <source type="rss">https://www.iso.org/contents/data/standard/03/66/36631.detail.rss</source>
197
- <docidentifier>ISO 216</docidentifier>
198
- <date type="published">
199
- <on>2007</on>
200
- </date>
201
- <contributor>
202
- <role type="publisher"/>
203
- <organization>
204
- <name>International Organization for Standardization</name>
205
- <abbreviation>ISO</abbreviation>
206
- <uri>www.iso.org</uri>
207
- </organization>
208
- </contributor>
209
- <edition>2</edition>
210
- <language>en</language>
211
- <language>fr</language>
212
- <script>Latn</script>
213
- <abstract format="plain" language="en" script="Latn">ISO 216:2007 specifies the trimmed sizes of writing paper and certain classes of printed matter.It applies to trimmed sizes of paper for administrative, commercial and technical use, and also to certain classes of printed matter, such as forms, catalogues, etc.It does not necessarily apply to newspapers, published books, posters or other special items which may be the subject of separate International Standards.ISO 216:2007 also specifies the method for the indication of the machine direction for trimmed sheets.</abstract>
214
- <abstract format="plain" language="fr" script="Latn">L'ISO 216:2007 spécifie les formats finis des papiers à écrire et de certaines catégories d'imprimés.Elle s'applique aux formats finis de papier pour usages administratif, commercial et technique ainsi qu'à certaines catégories d'imprimés, tels que formulaires, catalogues, etc.Elle ne s'applique pas nécessairement au papier journal, à l'édition, aux affiches publicitaires ou aux usages particuliers qui pourront faire l'objet d'autres Normes internationales.L'ISO 216:2007 spécifie également la méthode permettant d'indiquer le sens machine des formats finis.</abstract>
215
- <status>Published</status>
216
- <copyright>
217
- <from>2007</from>
218
- <owner>
219
- <organization>
220
- <name>ISO</name>
221
- <abbreviation/>
222
- </organization>
223
- </owner>
224
- </copyright>
225
- <relation type="obsoletes">
226
- <bibitem>
227
- <formattedref>ISO 216:1975</formattedref>
228
- <docidentifier>ISO 216:1975</docidentifier>
229
- </bibitem>
230
- </relation>
231
- <relation type="updates">
232
- <bibitem>
233
- <formattedref>ISO 216:2007</formattedref>
234
- <docidentifier>ISO 216:2007</docidentifier>
235
- </bibitem>
236
- </relation>
237
- </bibitem>
190
+ <bibitem id="iso216" type="standard">
191
+ <title format="text/plain">Reference</title>
192
+ <docidentifier>ISO 216</docidentifier>
193
+ <date type="published">
194
+ <on>2001</on>
195
+ </date>
196
+ <contributor>
197
+ <role type="publisher"/>
198
+ <organization>
199
+ <name>International Organization for Standardization</name>
200
+ <abbreviation>ISO</abbreviation>
201
+ </organization>
202
+ </contributor>
203
+ </bibitem>
238
204
  </references>
239
205
  </bibliography
240
206
  </iso-standard>
@@ -242,10 +208,9 @@ r = 1 %</stem>
242
208
  end
243
209
 
244
210
  it "extracts localities from erefs" do
245
- stub_fetch_ref
246
211
  expect(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to <<~"OUTPUT"
247
212
  #{ASCIIDOC_BLANK_HDR}
248
- <<iso216,whole,clause 3,example 9-11,locality:prelude 33,locality:entirety:the reference>>
213
+ <<iso216,whole,clause=3,example=9-11,locality:prelude=33,locality:entirety:the reference>>
249
214
 
250
215
  [bibliography]
251
216
  == Normative References
@@ -255,58 +220,22 @@ r = 1 %</stem>
255
220
  <preface><foreword obligation="informative">
256
221
  <title>Foreword</title>
257
222
  <p id="_">
258
- <eref type="inline" bibitemid="iso216" citeas="ISO 216: 2007"><locality type="whole"/><locality type="clause"><referenceFrom>3</referenceFrom></locality><locality type="example"><referenceFrom>9</referenceFrom><referenceTo>11</referenceTo></locality><locality type="locality:prelude"><referenceFrom>33</referenceFrom></locality><locality type="locality:entirety"/>the reference</eref>
223
+ <eref type="inline" bibitemid="iso216" citeas="ISO 216"><locality type="whole"/><locality type="clause"><referenceFrom>3</referenceFrom></locality><locality type="example"><referenceFrom>9</referenceFrom><referenceTo>11</referenceTo></locality><locality type="locality:prelude"><referenceFrom>33</referenceFrom></locality><locality type="locality:entirety"/>the reference</eref>
259
224
  </p>
260
225
  </foreword></preface><sections>
261
226
  </sections><bibliography><references id="_" obligation="informative">
262
227
  <title>Normative References</title>
263
- <bibitem type="international-standard" id="ISO216">
264
- <title format="text/plain" language="en" script="Latn">Writing paper and certain classes of printed matter -- Trimmed sizes -- A and B series, and indication of machine direction</title>
265
- <title format="text/plain" language="fr" script="Latn">Papiers à écrire et certaines catégories d'imprimés -- Formats finis -- Séries A et B, et indication du sens machine</title>
266
- <source type="src">https://www.iso.org/standard/36631.html</source>
267
- <source type="obp">https://www.iso.org/obp/ui/#!iso:std:36631:en</source>
268
- <source type="rss">https://www.iso.org/contents/data/standard/03/66/36631.detail.rss</source>
269
- <docidentifier>ISO 216</docidentifier>
270
- <date type="published">
271
- <on>2007</on>
272
- </date>
273
- <contributor>
274
- <role type="publisher"/>
275
- <organization>
276
- <name>International Organization for Standardization</name>
277
- <abbreviation>ISO</abbreviation>
278
- <uri>www.iso.org</uri>
279
- </organization>
280
- </contributor>
281
- <edition>2</edition>
282
- <language>en</language>
283
- <language>fr</language>
284
- <script>Latn</script>
285
- <abstract format="plain" language="en" script="Latn">ISO 216:2007 specifies the trimmed sizes of writing paper and certain classes of printed matter.It applies to trimmed sizes of paper for administrative, commercial and technical use, and also to certain classes of printed matter, such as forms, catalogues, etc.It does not necessarily apply to newspapers, published books, posters or other special items which may be the subject of separate International Standards.ISO 216:2007 also specifies the method for the indication of the machine direction for trimmed sheets.</abstract>
286
- <abstract format="plain" language="fr" script="Latn">L'ISO 216:2007 spécifie les formats finis des papiers à écrire et de certaines catégories d'imprimés.Elle s'applique aux formats finis de papier pour usages administratif, commercial et technique ainsi qu'à certaines catégories d'imprimés, tels que formulaires, catalogues, etc.Elle ne s'applique pas nécessairement au papier journal, à l'édition, aux affiches publicitaires ou aux usages particuliers qui pourront faire l'objet d'autres Normes internationales.L'ISO 216:2007 spécifie également la méthode permettant d'indiquer le sens machine des formats finis.</abstract>
287
- <status>Published</status>
288
- <copyright>
289
- <from>2007</from>
290
- <owner>
291
- <organization>
292
- <name>ISO</name>
293
- <abbreviation/>
294
- </organization>
295
- </owner>
296
- </copyright>
297
- <relation type="obsoletes">
298
- <bibitem>
299
- <formattedref>ISO 216:1975</formattedref>
300
- <docidentifier>ISO 216:1975</docidentifier>
301
- </bibitem>
302
- </relation>
303
- <relation type="updates">
304
- <bibitem>
305
- <formattedref>ISO 216:2007</formattedref>
306
- <docidentifier>ISO 216:2007</docidentifier>
307
- </bibitem>
308
- </relation>
309
- </bibitem>
228
+ <bibitem id="iso216" type="standard">
229
+ <title format="text/plain">Reference</title>
230
+ <docidentifier>ISO 216</docidentifier>
231
+ <contributor>
232
+ <role type="publisher"/>
233
+ <organization>
234
+ <name>International Organization for Standardization</name>
235
+ <abbreviation>ISO</abbreviation>
236
+ </organization>
237
+ </contributor>
238
+ </bibitem>
310
239
  </references>
311
240
  </bibliography>
312
241
  </iso-standard>
@@ -328,17 +257,23 @@ r = 1 %</stem>
328
257
  <foreword obligation="informative">
329
258
  <title>Foreword</title>
330
259
  <p id="_">
331
- <eref type="inline" bibitemid="iso216" citeas=""/>
260
+ <eref type="inline" bibitemid="iso216" citeas="ISO 216"/>
332
261
  </p>
333
262
  </foreword></preface><sections>
334
- <clause id="_" inline-header="false" obligation="normative">
335
- <title>Clause</title>
336
- <ul id="_">
337
- <li>
338
- <ref id="iso216">[ISO 216]</ref><p id="_">, <em>Reference</em></p>
339
- </li>
340
- </ul>
341
- </clause></sections>
263
+ </sections><bibliography><references id="_" obligation="informative">
264
+ <title>Bibliography</title>
265
+ <bibitem id="iso216" type="standard">
266
+ <title format="text/plain">Reference</title>
267
+ <docidentifier>ISO 216</docidentifier>
268
+ <contributor>
269
+ <role type="publisher"/>
270
+ <organization>
271
+ <name>International Organization for Standardization</name>
272
+ <abbreviation>ISO</abbreviation>
273
+ </organization>
274
+ </contributor>
275
+ </bibitem>
276
+ </references></bibliography>
342
277
  </iso-standard>
343
278
  OUTPUT
344
279
  end
@@ -351,7 +286,7 @@ r = 1 %</stem>
351
286
  === Term1
352
287
 
353
288
  [.source]
354
- <<ISO2191,section 1>>
289
+ <<ISO2191,section=1>>
355
290
  INPUT
356
291
  #{BLANK_HDR}
357
292
  <sections>
@@ -370,7 +305,6 @@ r = 1 %</stem>
370
305
  end
371
306
 
372
307
  it "removes extraneous material from Normative References" do
373
- stub_fetch_ref
374
308
  expect(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to <<~"OUTPUT"
375
309
  #{ASCIIDOC_BLANK_HDR}
376
310
  [bibliography]
@@ -383,53 +317,18 @@ r = 1 %</stem>
383
317
  #{BLANK_HDR}
384
318
  <sections></sections>
385
319
  <bibliography><references id="_" obligation="informative"><title>Normative References</title>
386
- <bibitem type="international-standard" id="ISO216">
387
- <title format="text/plain" language="en" script="Latn">Writing paper and certain classes of printed matter -- Trimmed sizes -- A and B series, and indication of machine direction</title>
388
- <title format="text/plain" language="fr" script="Latn">Papiers à écrire et certaines catégories d'imprimés -- Formats finis -- Séries A et B, et indication du sens machine</title>
389
- <source type="src">https://www.iso.org/standard/36631.html</source>
390
- <source type="obp">https://www.iso.org/obp/ui/#!iso:std:36631:en</source>
391
- <source type="rss">https://www.iso.org/contents/data/standard/03/66/36631.detail.rss</source>
392
- <docidentifier>ISO 216</docidentifier>
393
- <date type="published">
394
- <on>2007</on>
395
- </date>
396
- <contributor>
397
- <role type="publisher"/>
398
- <organization>
399
- <name>International Organization for Standardization</name>
400
- <abbreviation>ISO</abbreviation>
401
- <uri>www.iso.org</uri>
402
- </organization>
403
- </contributor>
404
- <edition>2</edition>
405
- <language>en</language>
406
- <language>fr</language>
407
- <script>Latn</script>
408
- <abstract format="plain" language="en" script="Latn">ISO 216:2007 specifies the trimmed sizes of writing paper and certain classes of printed matter.It applies to trimmed sizes of paper for administrative, commercial and technical use, and also to certain classes of printed matter, such as forms, catalogues, etc.It does not necessarily apply to newspapers, published books, posters or other special items which may be the subject of separate International Standards.ISO 216:2007 also specifies the method for the indication of the machine direction for trimmed sheets.</abstract>
409
- <abstract format="plain" language="fr" script="Latn">L'ISO 216:2007 spécifie les formats finis des papiers à écrire et de certaines catégories d'imprimés.Elle s'applique aux formats finis de papier pour usages administratif, commercial et technique ainsi qu'à certaines catégories d'imprimés, tels que formulaires, catalogues, etc.Elle ne s'applique pas nécessairement au papier journal, à l'édition, aux affiches publicitaires ou aux usages particuliers qui pourront faire l'objet d'autres Normes internationales.L'ISO 216:2007 spécifie également la méthode permettant d'indiquer le sens machine des formats finis.</abstract>
410
- <status>Published</status>
411
- <copyright>
412
- <from>2007</from>
413
- <owner>
414
- <organization>
415
- <name>ISO</name>
416
- <abbreviation/>
417
- </organization>
418
- </owner>
419
- </copyright>
420
- <relation type="obsoletes">
421
- <bibitem>
422
- <formattedref>ISO 216:1975</formattedref>
423
- <docidentifier>ISO 216:1975</docidentifier>
424
- </bibitem>
425
- </relation>
426
- <relation type="updates">
427
- <bibitem>
428
- <formattedref>ISO 216:2007</formattedref>
429
- <docidentifier>ISO 216:2007</docidentifier>
430
- </bibitem>
431
- </relation>
432
- </bibitem></references>
320
+ <bibitem id="iso216" type="standard">
321
+ <title format="text/plain">Reference</title>
322
+ <docidentifier>ISO 216</docidentifier>
323
+ <contributor>
324
+ <role type="publisher"/>
325
+ <organization>
326
+ <name>International Organization for Standardization</name>
327
+ <abbreviation>ISO</abbreviation>
328
+ </organization>
329
+ </contributor>
330
+ </bibitem>
331
+ </references>
433
332
  </bibliography>
434
333
  </iso-standard>
435
334
  OUTPUT
@@ -726,8 +625,6 @@ r = 1 %</stem>
726
625
  end
727
626
 
728
627
  it "numbers bibliographic notes and footnotes sequentially" do
729
- stub_fetch_ref(no_year: true, note: "The standard is in press")
730
-
731
628
  expect(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to <<~"OUTPUT"
732
629
  #{ASCIIDOC_BLANK_HDR}
733
630
  footnote:[Footnote]
@@ -757,50 +654,21 @@ r = 1 %</stem>
757
654
  </p>
758
655
  </clause></sections><bibliography><references id="_" obligation="informative">
759
656
  <title>Normative References</title>
760
- <bibitem type="international-standard" id="ISO123">
761
- <title format="text/plain" language="en" script="Latn">Rubber latex -- Sampling -- </title>
762
- <title format="text/plain" language="fr" script="Latn">Latex de caoutchouc -- Échantillonnage -- </title>
763
- <source type="src">https://www.iso.org/standard/23281.html</source>
764
- <source type="obp">https://www.iso.org/obp/ui/#!iso:std:23281:en</source>
765
- <source type="rss">https://www.iso.org/contents/data/standard/02/32/23281.detail.rss</source>
766
- <docidentifier>ISO 123</docidentifier>
767
- <date type="published"><on>--</on></date>
768
- <contributor>
769
- <role type="publisher"/>
770
- <organization>
771
- <name>International Organization for Standardization</name>
772
- <abbreviation>ISO</abbreviation>
773
- <uri>www.iso.org</uri>
774
- </organization>
775
- </contributor>
776
- <edition>3</edition>
777
- <language>en</language>
778
- <language>fr</language>
779
- <script>Latn</script>
780
- <status>Published</status>
781
- <copyright>
782
- <from>2001</from>
783
- <owner>
784
- <organization>
785
- <name>ISO</name>
786
- <abbreviation/>
787
- </organization>
788
- </owner>
789
- </copyright>
790
- <relation type="obsoletes">
791
- <bibitem>
792
- <formattedref>ISO 123:1985</formattedref>
793
- <docidentifier>ISO 123:1985</docidentifier>
794
- </bibitem>
795
- </relation>
796
- <relation type="updates">
797
- <bibitem>
798
- <formattedref>ISO 123:2001</formattedref>
799
- <docidentifier>ISO 123:2001</docidentifier>
800
- </bibitem>
801
- </relation>
802
- <note format="text/plain" reference="2">ISO DATE: The standard is in press</note>
803
- </bibitem>
657
+ <bibitem id="iso123" type="standard">
658
+ <title format="text/plain">Standard</title>
659
+ <docidentifier>ISO 123</docidentifier>
660
+ <date type="published">
661
+ <on>--</on>
662
+ </date>
663
+ <contributor>
664
+ <role type="publisher"/>
665
+ <organization>
666
+ <name>International Organization for Standardization</name>
667
+ <abbreviation>ISO</abbreviation>
668
+ </organization>
669
+ </contributor>
670
+ <note format="text/plain" reference="2">ISO DATE: The standard is in press</note>
671
+ </bibitem>
804
672
  </references>
805
673
  </bibliography>
806
674
  </iso-standard>