metanorma-nist 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c33703816b129a163ed528ae9f88590992ed9af79ec108551e2ee830b88182a9
4
- data.tar.gz: 3c56c38e0c20b61fe99743d29cf537f886082f4310c2e4941ad53912d7495b24
3
+ metadata.gz: 60f08c6613780e3f28e0a30e97558f614ee950036e0bb08c27e8c7537eac7a12
4
+ data.tar.gz: a9211b80a708af85e81670d41142be5c1c91257726ba6981af1b5ddbff61bd5c
5
5
  SHA512:
6
- metadata.gz: b2d94690c495ca2172d024ea3f9200dd879170f1f880b6840ab9195dea195da63fc515fbb8395877725ba839249186d7b43979d75afc7345ecc456fcb68ee47b
7
- data.tar.gz: b858e830d7ac872bd5cbbf3aff5aa8ecfbd8d5fa37fbd95d2a979fce4c8eafcf8352eb2c4f9e52b3026930e99e2b775480eebfff3b2b947b37943f97825df2fa
6
+ metadata.gz: a64343cb90f467279fa9907d4dd621b1463ad295df7ffd9c0dd71968a4442f18ea1dd77ee2a9adaff775a6922cadcc270a73580d676791cfc32e6d8b78fd2f3c
7
+ data.tar.gz: 6ccc7daaa4b771614234baa28de2891063c750310283f7df32c33037bc37728810b93d09cdfa30ef1ae4b45762a91c1d253ae88e67c7010f70853f16093d60c1
data/README.adoc CHANGED
@@ -130,7 +130,8 @@ introduced with `=`, is used.
130
130
 
131
131
  `:technical-committee:`:: The name of the relevant committee producing the document.
132
132
 
133
- `:published-date:`:: The publication date for the document.
133
+ `:published-date:`:: The publication date for the document. Only applies to public documents;
134
+ drafts instead have a `:circulated-date:` attribute.
134
135
 
135
136
  `:uri:`:: The URI to which this standard is published.
136
137
 
@@ -139,7 +140,7 @@ the prefix, e.g. "NIST SP", is supplied by the `:series:` attribute. The NIST id
139
140
  docnumber-edition (if edition is present)
140
141
 
141
142
  `:docidentifier:`:: The document identifier for the document. Normally this should not be supplied,
142
- as the document identifier is composed from the document series, document number,
143
+ as the document identifier is composed from the document series, document number, document volume,
143
144
  and edition/revision (e.g. _NIST SP 800 Revision 1_).
144
145
  If the `:docidentifier:` value is provided, it will override this composed value.
145
146
 
@@ -153,11 +154,20 @@ this attribute will be displayed as part of the heading, prefixed with "Revision
153
154
  * `draft-wip`
154
155
  * `draft-prelim`
155
156
  * `draft-public`
156
- * `draft-withdrawn`
157
- * `draft-retire`
158
157
  * `final` (default: document is published)
159
158
  * `final-review`
160
- * `final-withdrawn`
159
+ --
160
+
161
+ `:substage:`:: Document substage. Indicates active status of draft or publication.
162
+ If a draft or publication is inactive, that is reflected in the coverpage. The
163
+ permitted types are:
164
+ +
165
+ --
166
+ * `active` (default)
167
+ * `retired` (applies only to drafts, when they are abandoned). The `:abandoned-date:` must
168
+ be provided, to indicate when the draft was abandoned.
169
+ * `withdrawn` (applies to drafts, when when they are superseded by the next draft stage,
170
+ and to published documents when they are superseded or no longer valid.
161
171
  --
162
172
 
163
173
  `:fullname{_i}:`, `:affiliation{_i}:`, `:address{_i}`::
@@ -188,14 +198,51 @@ The organizational address of a person who is a contributor to the document.
188
198
 
189
199
  `:obsoleted-date:`::
190
200
  The date at which a document is considered no longer valid (withdrawn). If a document
191
- is not currently withdrawn (as indicated through `:status: draft-withdrawn`, `status: final-withdrawn`),
201
+ is not currently withdrawn (as indicated through `:substage: withdrawn`),
192
202
  but will be in the future, that is still indicated in the rendering of the document.
193
203
 
204
+ `:confirmed-date:`::
205
+ The date at which a document has been reviewed according to the NIST ERB 5-year review process,
206
+ and has been confirmed to be relevant and valid to date. If this attribute is present,
207
+ the date is included in the cover page.
208
+
209
+ `:updated-date:`::
210
+ The date at which a document has been updated without being considered a distinct new publication.
211
+ Used to indicate the date of errata releases.
212
+
213
+ `:circulated-date:`::
214
+ The date at which a draft is circulated. Displayed on the cover page of drafts.
215
+ MANDATORY FOR DRAFTS.
216
+
194
217
  === NIST-specific attributes
195
218
 
196
219
  The following document attributes are specific to this document class:
197
220
 
221
+ `:nist-division:`:: Name of NIST division responsible for document. Added to authority
222
+ statement as document contact, and to coverage of withdrawn published document.
223
+ Default value is "Computer Security Division, Information Technology Laboratory".
224
+
225
+ `:nist-division-address`:: Address of NIST division responsible for document.
226
+ Added to authority statement as document contact. Use line breaks (in Asciidoctor:
227
+ ` + \`) if necessary. Default value is
228
+ "100 Bureau Drive (Mail Stop 8930) Gaithersburg, MD 20899-8930"
229
+
230
+ `:revision:`:: The document revision; e.g. `1` (Revision 1).
231
+
232
+ `:volume:`::
233
+ The number of the volume of a standard. Is ignored if a precomposed
234
+ document identifier (`:docidentifier:`) is supplied.
235
+ Is prefixed with "Volume" or "Vol." in display.
236
+
237
+ `:title-main:`:: The title of the document.
198
238
  `:title-sub:`:: The subtitle of the document.
239
+
240
+ `:title-main-short:`:: Shortened form of the title of the document. For use in Word header.
241
+ If not provided, `:title-main:` is used.
242
+
243
+ `:title-sub-short:`:: Shortened form of The subtitle of the document. For use in Word header.
244
+ If not provided, `:title-sub:` is used.
245
+
199
246
  `:title-document-class:`:: The title of the document class that the document belongs to;
200
247
  e.g. "Computer Security" for SP 800.
201
248
 
@@ -244,13 +291,6 @@ Can be a number, or text (e.g. "initial", "final").
244
291
  * csrc-building-block
245
292
  --
246
293
 
247
- `:subseries:`:: The secondary publication series that the document belongs to. Legal values are:
248
- +
249
- --
250
- * computer-security (for NIST SP)
251
- * information-security (for NIST SP)
252
- --
253
-
254
294
  `:comment-from:`:: The beginning of the period during which comments may be submitted to the NIST
255
295
  document draft. ISO-8601 date.
256
296
 
@@ -277,7 +317,8 @@ Format is document identifier, e.g. _SP 800-53A Rev. 1_
277
317
  `:obsoleted-by:`::
278
318
  One or more corresponding NIST document that this NIST document standard is obsoleted by; requires that
279
319
  this document is withdrawn, and no longer in effect. Comma delimited.
280
- Format is document identifier, e.g. _SP 800-53A Rev. 1_
320
+ Format is document identifier, e.g. _SP 800-53A Rev. 1_.
321
+ Is the relation between a withdrawn draft, and the next draft in the approval process.
281
322
 
282
323
  `:supersedes:`::
283
324
  One or more NIST document that this NIST document standard supersedes; the superseded
@@ -288,13 +329,71 @@ Format is document identifier, e.g. _SP 800-53A Rev. 1_
288
329
  One or more corresponding NIST document that this NIST document standard is superseded by;
289
330
  this document may still remain in effect. Comma delimited.
290
331
  Format is document identifier, e.g. _SP 800-53A Rev. 1_
332
+ Is *not* the relation between a withdrawn draft, and the next draft in the approval process
333
+ (since the earlier draft is automatically no longer in effect).
334
+
335
+ `:superseded-date:`::
336
+ The date at which both this document and the document superseding it come into effect,
337
+ as a transition period before this document is withdrawn. May be identical to `:obsoleted-date:`,
338
+ in which case there is no such transition period. Is indicated in withdrawn publication
339
+ cover page; if not provided, the value of `:obsoleted-date:` is given.
291
340
 
292
341
  `:abandoned-date:`::
293
342
  The date at which work on a document is abandoned. At that date, the document is considered
294
- retired (`status: draft-retired`). In NIST, only drafts may be retired. If the document
295
- is not currently retired (as indicated through `:status: draft-retired`),
343
+ retired (`substage: retired`). In NIST, only drafts may be retired. If the document
344
+ is not currently retired (as indicated through `:substage: retired`),
296
345
  but will be in the future, that is still indicated in the rendering of the document.
297
346
 
347
+ `:sponsor:`::
348
+ The name of the organization that has sponsored the document, if applicable.
349
+
350
+ `:sponsor-logo:`::
351
+ The logo of the sponsoring organization, if applicable.
352
+
353
+ `:superseding-status`: Document status/stage of the superseding document, if this document is
354
+ superseded or withdrawn. Used for withdrawn drafts. Used for withdrawn published documents,
355
+ if an entry for the superseding document is not available on the CSRC website (where it can be
356
+ retrieved through the `:obsoleted-by:` document attribute.)
357
+ `:superseding-iteration:`:: The iteration of the stage of the superseding document,
358
+ in case there have been multiple drafts. Can be a number, or text (e.g. "initial", "final").
359
+ Used for withdrawn drafts.
360
+ `:superseding-title:`:: The title of the draft document superseding this document.
361
+ If not supplied, the current title is assumed to have been retained. Used for withdrawn drafts.
362
+ Used for withdrawn published documents,
363
+ if an entry for the superseding document is not available on the CSRC website (where it can be
364
+ retrieved through the `:obsoleted-by:` document attribute.)
365
+ `:superseding-subtitle:`:: The subtitle of the draft document superseding this document.
366
+ If not supplied, the current subtitle is assumed to have been retained. Used for withdrawn drafts.
367
+ Used for withdrawn published documents,
368
+ if an entry for the superseding document is not available on the CSRC website (where it can be
369
+ retrieved through the `:obsoleted-by:` document attribute.)
370
+ `:superseding-circulated-date:`::
371
+ The date at which the draft document superseding this document is circulated. Used for withdrawn drafts.
372
+ `:superseding-published-date:`::
373
+ The date at which the document superseding this document is published.
374
+ Used for withdrawn published documents,
375
+ if an entry for the superseding document is not available on the CSRC website (where it can be
376
+ retrieved through the `:obsoleted-by:` document attribute.)
377
+ `:superseding-doi:`::
378
+ The DOI of the document superseding this document. Used for withdrawn drafts.
379
+ Used for withdrawn published documents,
380
+ if an entry for the superseding document is not available on the CSRC website (where it can be
381
+ retrieved through the `:obsoleted-by:` document attribute.)
382
+ `:superseding-url:`::
383
+ The URL of the document superseding this document. Used for withdrawn drafts.
384
+ Used for withdrawn published documents,
385
+ if an entry for the superseding document is not available on the CSRC website (where it can be
386
+ retrieved through the `:obsoleted-by:` document attribute.)
387
+ `:superseding-authors:`::
388
+ The authors of the superseding document. Comma-delimited. Used for withdrawn published documents,
389
+ if an entry for the superseding document is not available on the CSRC website (where it can be
390
+ retrieved through the `:obsoleted-by:` document attribute.)
391
+
392
+ `:bib-additional-note:`:: Additional note (optional), used on coverpage of withdrawn and retired drafts, and as
393
+ "Related Information" on coverpage of withdrawn published documents.
394
+ `:bib-withdrawal-note:`:: Withdrawal note, used on coverpage of withdrawn published documents.
395
+ `:bib-withdrawal-announcement-link:`:: Hyperlink to announcement of withdrawal, used on coverpage of withdrawn published documents.
396
+
298
397
  == Asciidoctor features specific to NIST
299
398
 
300
399
  The https://github.com/metanorma/metanorma-standoc[metanorma-standoc]
@@ -407,8 +506,16 @@ of Standards and Technology (NIST) promotes the U.S. economy and public welfare.
407
506
 
408
507
  === Executive Summary
409
508
 
410
- This is any section that appears in the preface with the title Executive Summary.
411
- It is rendered after all other preface sections.
509
+ This is any section that appears with the style attribute `[executive-summary]`.
510
+ It is rendered after all other preface sections:
511
+
512
+ [source,asciidoctor]
513
+ ----
514
+ [executive-summary]
515
+ == Executive Summary
516
+
517
+ This is an executive summary
518
+ ----
412
519
 
413
520
  === Terms and definitions
414
521
 
@@ -493,6 +600,44 @@ Glossaries are given as definition lists with style attribute `glossary`:
493
600
  stem:[A= {x_1, x_2, ..., x_k}]:: The alphabet, i.e., the set of all possible symbols that a (digitized) noise source produces.
494
601
  ----
495
602
 
603
+ === Document status
604
+
605
+ The following table illustrates how transitions between stages of NIST documents are indicated
606
+ using `:status:`, `:substage:`, `:iteration:`, and `:confirmed-date`.
607
+
608
+ |===
609
+ | ISO stage | NIST | 93 Repeat current phase | 98 Abandon | 99 Proceed
610
+
611
+ | 00 Preliminary | `:status: draft-internal` | | (stop work) | `:status: draft-wip`, `:status: draft-public`, or `:status: final` (amend)
612
+ | 10 Proposal | `:status: draft-wip` | | `:status: draft-wip`, `:substage: retired` | `:status: draft-wip`, `:substage: withdrawn`
613
+ | 20 Preparatory | `status: draft-prelim` | | `status: draft-prelim`, `substage: retired` | `status: draft-prelim`, `substage: withdrawn`
614
+ | 40 Enquiry | `status: draft-public` | `status: draft-public`, `:iteration: 2`, `:iteration: 3` ... `:iteration: final` | `:status: draft-public`, `:substage: retired` | `:status: draft-public`, `:substage: withdrawn`
615
+ | 50 Approval | (NIST ERB review) | | `:status: draft-public`, `:substage: retired` | `:status: final`
616
+ | 60 Publication | `:status: final`
617
+ | 90 Review | `:status: final-review` | `:status: final`, `:confirmed-date: XXXX-XX-XX` | `:status: final`, `:substage: withdrawn` | `:status: draft-internal` (revise or amend)
618
+ | 95 Withdrawal | `:status: final`, `:substage: withdrawn` | | |
619
+ |===
620
+
621
+ In the following, parentheses indicate optional attributes.
622
+
623
+ * For retired drafts, the following attributes must be provided: `:circulated-date:`,
624
+ `:abandoned-date:`, (`:bib-additional-note:`)
625
+ * For withdrawn drafts, the following attributes must be provided: `:circulated-date:`, `:obsoleted-date:`,
626
+ `:superseding-status:`, (`:superseding-iteration:`), (`:superseding-title:`),
627
+ (`:superseding-subtitle:`), `:superseding-circulated-date:`, (`:superseding-doi:`),
628
+ (`:superseding-url:`), (`:bib-additional-note:`)
629
+ * For withdrawn published documents, the following attributes must be provided: `:published-date:`, `:obsoleted-date:` (when
630
+ the current document is no longer in effect), `:superseded-date:` (when the transition period started, during which both
631
+ documents were in effect, if applicable; if not, this has the same value as `:obsoleted-date:`), `:revdate:` (for
632
+ when the withdrawal notice was added to the document), (`:bib-additional-note:`)
633
+ ("Related Information" in the withdrawn document coverpage), `:obsoleted-by:` (giving the superseding document identifier),
634
+ `:nist-division:`, (`:bib-withdrawal-note:`), (`:bib-withdrawal-announcement-link:`). If the details
635
+ of the superseding document are not available to be retrieved from the CSRC website), the following attributes must
636
+ be provided: `:superseding-title:`, (`:superseding-subtitle:`), `:superseding-published-date:`, `:superseding-status:`,
637
+ `:superseding-doi:`, `:superseding-url:`.
638
+
639
+
640
+
496
641
  ////
497
642
 
498
643
  == Examples
@@ -810,6 +810,9 @@
810
810
  </define>
811
811
  <define name="biblionote">
812
812
  <element name="note">
813
+ <optional>
814
+ <attribute name="type"/>
815
+ </optional>
813
816
  <ref name="FormattedString"/>
814
817
  </element>
815
818
  </define>
@@ -1,17 +1,65 @@
1
1
  module Asciidoctor
2
2
  module NIST
3
3
  class Converter < Standoc::Converter
4
+ SERIES = {
5
+ "nist-ams": "NIST Advanced Manufacturing Series",
6
+ "building-science": "NIST Building Science Series",
7
+ "nist-fips": "NIST Federal Information Processing Standards",
8
+ "nist-gcr": "NIST Grant/Contract Reports",
9
+ "nist-hb": "NIST Handbook",
10
+ "itl-bulletin": "ITL Bulletin",
11
+ "jpcrd": "Journal of Physical and Chemical Reference Data",
12
+ "nist-jres": "NIST Journal of Research",
13
+ "letter-circular": "NIST Letter Circular",
14
+ "nist-monograph": "NIST Monograph",
15
+ "nist-ncstar": "NIST National Construction Safety Team Act Reports",
16
+ "nist-nsrds": "NIST National Standard Reference Data Series",
17
+ "nistir": "NIST Interagency/Internal Report",
18
+ "product-standards": "NIST Product Standards",
19
+ "nist-sp": "NIST Special Publication",
20
+ "nist-tn": "NIST Technical Note",
21
+ "other": "NIST Other",
22
+ "csrc-white-paper": "CSRC White Paper",
23
+ "csrc-book": "CSRC Book",
24
+ "csrc-use-case": "CSRC Use Case",
25
+ "csrc-building-block": "CSRC Building Block",
26
+ }.freeze
27
+
28
+ SERIES_ABBR = {
29
+ "nist-ams": "NIST AMS",
30
+ "building-science": "NIST Building Science Series",
31
+ "nist-fips": "NIST FIPS",
32
+ "nist-gcr": "NISTGCR",
33
+ "nist-hb": "NIST HB",
34
+ "itl-bulletin": "ITL Bulletin",
35
+ "jpcrd": "JPCRD",
36
+ "nist-jres": "NIST JRES",
37
+ "letter-circular": "NIST Letter Circular",
38
+ "nist-monograph": "NIST MN",
39
+ "nist-ncstar": "NIST NCSTAR",
40
+ "nist-nsrds": "NIST NSRDS",
41
+ "nistir": "NISTIR",
42
+ "product-standards": "NIST Product Standards",
43
+ "nist-sp": "NIST SP",
44
+ "nist-tn": "NIST TN",
45
+ "other": "NIST Other",
46
+ "csrc-white-paper": "CSRC White Paper",
47
+ "csrc-book": "CSRC Book",
48
+ "csrc-use-case": "CSRC Use Case",
49
+ "csrc-building-block": "CSRC Building Block",
50
+ }.freeze
51
+
4
52
  CALL_FOR_PATENT_CLAIMS = <<~END.freeze
5
53
  <clause><title>Call for Patent Claims</title>
6
54
  <p>This public review includes a call for information on essential patent claims (claims whose use would be required for compliance with the guidance or requirements in this Information Technology Laboratory (ITL) draft publication). Such guidance and/or requirements may be directly stated in this ITL Publication or by reference to another publication. This call also includes disclosure, where known, of the existence of pending U.S. or foreign patent applications relating to this ITL draft publication and of any relevant unexpired U.S. or foreign patents.</p>
7
55
 
8
56
  <p>ITL may require from the patent holder, or a party authorized to make assurances on its behalf, in written or electronic form, either:</p>
9
57
 
10
- <ol><li><p>assurance in the form of a general disclaimer to the effect that such party does not hold and does not currently intend holding any essential patent claim(s); or</p></li>
58
+ <ol type="arabic"><li><p>assurance in the form of a general disclaimer to the effect that such party does not hold and does not currently intend holding any essential patent claim(s); or</p></li>
11
59
 
12
60
  <li><p>assurance that a license to such essential patent claim(s) will be made available to applicants desiring to utilize the license for the purpose of complying with the guidance or requirements in this ITL draft publication either:</p>
13
61
 
14
- <ol><li><p>under reasonable terms and conditions that are demonstrably free of any unfair discrimination; or</p></li>
62
+ <ol type="roman"><li><p>under reasonable terms and conditions that are demonstrably free of any unfair discrimination; or</p></li>
15
63
 
16
64
  <li><p>without compensation and under reasonable terms and conditions that are demonstrably free of any unfair discrimination.</p></li></ol>
17
65
  </li></ol>
@@ -49,9 +97,11 @@ module Asciidoctor
49
97
  conv = IsoDoc::NIST::HtmlConvert.new({})
50
98
  conv.metadata_init("en", "Latn", {})
51
99
  conv.info(x, nil)
100
+ conv.labels = {nist_division: @nistdivision,
101
+ nist_division_address: @nistdivisionaddress}
52
102
  file = @boilerplateauthority ? "#{@localdir}/#{@boilerplateauthority}" :
53
103
  File.join(File.dirname(__FILE__),"nist_intro.xml")
54
- conv.populate_template((File.read(file, encoding: "UTF-8")), nil)
104
+ conv.populate_template((File.read(file, encoding: "UTF-8")), nil)
55
105
  end
56
106
  end
57
107
  end
@@ -40,6 +40,12 @@ module Asciidoctor
40
40
  c.name = "executivesummary" if title == "executive summary"
41
41
  preface.add_child c.remove
42
42
  end
43
+ x.xpath("//clause[@executivesummary]").each do |c|
44
+ c.delete("executivesummary")
45
+ title = c&.at("./title")&.text.downcase
46
+ c.name = "executivesummary"
47
+ preface.add_child c.remove
48
+ end
43
49
  end
44
50
 
45
51
  def move_authority_into_preface(x, preface)
@@ -52,8 +58,8 @@ module Asciidoctor
52
58
  end
53
59
 
54
60
  def move_sections_into_preface(x, preface)
55
- abstract = x.at("//abstract") and preface.add_child abstract.remove
56
61
  move_authority_into_preface(x, preface)
62
+ abstract = x.at("//abstract") and preface.add_child abstract.remove
57
63
  foreword = x.at("//foreword") and preface.add_child foreword.remove
58
64
  intro = x.at("//introduction") and preface.add_child intro.remove
59
65
  move_clauses_into_preface(x, preface)
@@ -87,6 +93,40 @@ module Asciidoctor
87
93
  summ = x.at("//executivesummary") and preface.add_child summ.remove
88
94
  #end
89
95
  end
96
+
97
+
98
+ # handle NIST references separately
99
+ # doc identifier format, NIST: NIST SP 800-87-1 {Vol./Volume 8}|
100
+ # {Rev./Revision 8}|(Month YYYY)
101
+ def reference_names(docxml)
102
+ super
103
+ ret = get_all_nist_refs(docxml)
104
+ tallies = ret.inject(Hash.new(0)) do |memo, (k, v)|
105
+ memo[v[:trunc]] += 1
106
+ memo
107
+ end
108
+ ret.each do |k, v|
109
+ tallies[v[:trunc]] == 1 and @anchors[k][:xref] = v[:trunc]
110
+ @anchors[k][:xref].sub!(/^NIST /, "")
111
+ end
112
+ end
113
+
114
+ def truncate_nist_ref(text)
115
+ #text.sub(/\s\((January|February|March|April|May|June|July|August|
116
+ # September|October|November|December)\s\d\d\d\d\).*$/x, "")
117
+ text
118
+ end
119
+
120
+ def get_all_nist_refs(docxml)
121
+ ret = {}
122
+ docxml.xpath("//bibitem[not(ancestor::bibitem)]").each do |ref|
123
+ #next unless ref.at("./docidentifier[@type = 'NIST']")
124
+ ret[ref["id"]] = {}
125
+ ret[ref["id"]][:xref] = ref&.at("./docidentifier[not(@type = 'DOI')]")&.text or next
126
+ ret[ref["id"]][:trunc] = truncate_nist_ref(ret[ref["id"]][:xref])
127
+ end
128
+ ret
129
+ end
90
130
  end
91
131
  end
92
132
  end
@@ -121,6 +121,10 @@ module Asciidoctor
121
121
  @patentcontact = node.attr("patent-contact")
122
122
  @biblioasappendix = node.attr("biblio-as-appendix")
123
123
  @boilerplateauthority = node.attr("boilerplate-authority")
124
+ @nistdivision = node.attr("nist-division") ||
125
+ "Computer Security Division, Information Technology Laboratory"
126
+ @nistdivisionaddress = node.attr("nist-division-address") ||
127
+ "100 Bureau Drive (Mail Stop 8930) Gaithersburg, MD 20899-8930"
124
128
  super
125
129
  end
126
130
 
@@ -142,6 +146,7 @@ module Asciidoctor
142
146
 
143
147
  def clause_parse(attrs, xml, node)
144
148
  attrs[:preface] = true if node.attr("style") == "preface"
149
+ attrs[:executivesummary] = true if node.attr("style") == "executive-summary"
145
150
  super
146
151
  end
147
152
 
@@ -228,12 +233,6 @@ module Asciidoctor
228
233
  end
229
234
  end
230
235
 
231
- def sections_order_cleanup(x)
232
- s = x.at("//sections")
233
- make_preface(x, s)
234
- x.xpath("//sections/annex").reverse_each { |r| s.next = r.remove }
235
- end
236
-
237
236
  def html_converter(node)
238
237
  IsoDoc::NIST::HtmlConvert.new(html_extract_attributes(node))
239
238
  end