metanorma-un 0.6.8 → 0.6.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aebf3c6706cfb9ddeb3383122c3024ce95df446858775f8054c293a9906c02cc
4
- data.tar.gz: 0d6826ce4771d8d6b5d235308026177ce41888a8dfc21349bd2b3a0aeb227a7e
3
+ metadata.gz: 81239633565c9e41ab2e2dd7ac8e30b6d17306628a0038c88d400ae4d97a16cd
4
+ data.tar.gz: 5b83a51cdc3f1dc81692e8721e9a3443fb025fb9cd39ea3cd33c8904ab2a2db4
5
5
  SHA512:
6
- metadata.gz: 25c47d32f0deeddaad8160e391f5c421c6cfffc555cbaa0239682c75a3c798ea484e154ffe11d9a5696e32bbc16ab587eaec2b1bfc6ab27af470fae824481f35
7
- data.tar.gz: d5ecc5209fee4731f50317763bff7d327bf794032ae3bef01fdddedc23ab40b6dc20a9ab281d4d86126103578a880ca8b25d8b6c6e869860e950eaa81a6f2295
6
+ metadata.gz: a8b00137085f9cb9b4d4821475b10b36df50d3d90b8e1d1f4bc3dd4d50f346af5f9701b49c8e4f46a7eba212e4965ac7b8ec9b47086e638e7053390dff08c466
7
+ data.tar.gz: 79b6c46e6d568f014e238731e2add2ad696a0a2ae538a9d797a557eb66a7729964e24eb8ddb393da2a4663c73a794f7b795b0930cf7a0abca9ae76c52deaf4fb
data/Gemfile CHANGED
@@ -6,6 +6,6 @@ git_source(:github) { |repo| "https://github.com/#{repo}" }
6
6
 
7
7
  gemspec
8
8
 
9
- if File.exist? 'Gemfile.devel'
10
- eval File.read('Gemfile.devel'), nil, 'Gemfile.devel' # rubocop:disable Security/Eval
9
+ if File.exist? "Gemfile.devel"
10
+ eval File.read("Gemfile.devel"), nil, "Gemfile.devel" # rubocop:disable Security/Eval
11
11
  end
data/Rakefile CHANGED
@@ -1,8 +1,8 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
- require 'isodoc/gem_tasks'
3
+ require "isodoc/gem_tasks"
4
4
 
5
5
  IsoDoc::GemTasks.install
6
6
  RSpec::Core::RakeTask.new(:spec)
7
7
 
8
- task :default => :spec
8
+ task default: :spec
@@ -17,13 +17,14 @@ module Asciidoctor
17
17
 
18
18
  def metadata_committee(node, xml)
19
19
  return unless node.attr("committee")
20
+
20
21
  xml.editorialgroup do |a|
21
22
  a.committee node.attr("committee"),
22
- **attr_code(type: node.attr("committee-type"))
23
+ **attr_code(type: node.attr("committee-type"))
23
24
  i = 2
24
- while node.attr("committee_#{i}") do
25
+ while node.attr("committee_#{i}")
25
26
  a.committee node.attr("committee_#{i}"),
26
- **attr_code(type: node.attr("committee-type_#{i}"))
27
+ **attr_code(type: node.attr("committee-type_#{i}"))
27
28
  i += 1
28
29
  end
29
30
  end
@@ -66,13 +67,13 @@ module Asciidoctor
66
67
  xml.session do |session|
67
68
  session.number node.attr("session") if node.attr("session")
68
69
  session.date node.attr("session-date") if node.attr("session-date")
69
- node&.attr("item-number")&.split(/,[ ]*/)&.each do |i|
70
+ node&.attr("item-number")&.split(/, */)&.each do |i|
70
71
  session.item_number i
71
72
  end
72
- node&.attr("item-name")&.split(/,[ ]*/)&.each do |i|
73
+ node&.attr("item-name")&.split(/, */)&.each do |i|
73
74
  session.item_name i
74
75
  end
75
- node&.attr("subitem-name")&.split(/,[ ]*/)&.each do |i|
76
+ node&.attr("subitem-name")&.split(/, */)&.each do |i|
76
77
  session.subitem_name i
77
78
  end
78
79
  node.attr("collaborator") and
@@ -84,13 +85,13 @@ module Asciidoctor
84
85
  end
85
86
 
86
87
  def metadata_language(node, xml)
87
- languages = node&.attr("language")&.split(/,[ ]*/) ||
88
+ languages = node&.attr("language")&.split(/, */) ||
88
89
  %w(ar ru en fr zh es)
89
90
  languages.each { |l| xml.language l }
90
91
  end
91
92
 
92
93
  def metadata_submission_language(node, xml)
93
- languages = node&.attr("submissionlanguage")&.split(/,[ ]*/) || []
94
+ languages = node&.attr("submissionlanguage")&.split(/, */) || []
94
95
  languages.each { |l| xml.submissionlanguage l }
95
96
  end
96
97
 
@@ -101,7 +102,7 @@ module Asciidoctor
101
102
  metadata_submission_language(node, xml)
102
103
  end
103
104
 
104
- def title_validate(root)
105
+ def title_validate(_root)
105
106
  nil
106
107
  end
107
108
 
@@ -114,12 +115,11 @@ module Asciidoctor
114
115
 
115
116
  def doctype(node)
116
117
  d = super
117
- unless %w{plenary recommendation addendum communication corrigendum
118
- reissue agenda budgetary sec-gen-notes expert-report resolution
119
- plenary-attachment}.include? d
120
- @log.add(
121
- "Document Attributes", nil,
122
- "#{d} is not a legal document type: reverting to 'recommendation'")
118
+ unless %w{plenary recommendation addendum communication corrigendum
119
+ reissue agenda budgetary sec-gen-notes expert-report
120
+ resolution plenary-attachment}.include? d
121
+ @log.add("Document Attributes", nil,
122
+ "#{d} is not a legal document type: reverting to 'recommendation'")
123
123
  d = "recommendation"
124
124
  end
125
125
  d
@@ -128,11 +128,11 @@ module Asciidoctor
128
128
  def outputs(node, ret)
129
129
  File.open(@filename + ".xml", "w:UTF-8") { |f| f.write(ret) }
130
130
  presentation_xml_converter(node).convert(@filename + ".xml")
131
- html_converter(node).convert(@filename + ".presentation.xml",
131
+ html_converter(node).convert(@filename + ".presentation.xml",
132
132
  nil, false, "#{@filename}.html")
133
- doc_converter(node).convert(@filename + ".presentation.xml",
133
+ doc_converter(node).convert(@filename + ".presentation.xml",
134
134
  nil, false, "#{@filename}.doc")
135
- pdf_converter(node)&.convert(@filename + ".presentation.xml",
135
+ pdf_converter(node)&.convert(@filename + ".presentation.xml",
136
136
  nil, false, "#{@filename}.pdf")
137
137
  end
138
138
 
@@ -142,8 +142,8 @@ module Asciidoctor
142
142
  File.join(File.dirname(__FILE__), "un.rng"))
143
143
  end
144
144
 
145
- def style(n, t)
146
- return
145
+ def style(_node, _text)
146
+ nil
147
147
  end
148
148
 
149
149
  def html_extract_attributes(node)
@@ -168,6 +168,7 @@ module Asciidoctor
168
168
 
169
169
  def pdf_converter(node)
170
170
  return nil if node.attr("no-pdf")
171
+
171
172
  IsoDoc::UN::PdfConvert.new(doc_extract_attributes(node))
172
173
  end
173
174
 
@@ -196,25 +197,24 @@ module Asciidoctor
196
197
  xmldoc.xpath("//clause/p | //annex/p").each do |p|
197
198
  cl = Nokogiri::XML::Node.new("clause", xmldoc)
198
199
  cl["id"] = p["id"]
199
- cl["inline-header"]="true"
200
- p["id"] = "_" + UUIDTools::UUID.random_create
200
+ cl["inline-header"] = "true"
201
+ p["id"] = "_#{UUIDTools::UUID.random_create}"
201
202
  p.replace(cl)
202
203
  p.parent = cl
203
- while n = cl.next_element and !%w(p clause).include? n.name
204
+ while (n = cl.next_element) && !%w(p clause).include?(n.name)
204
205
  n.parent = cl
205
206
  end
206
207
  end
207
208
  end
208
209
 
209
210
  def admonition_attrs(node)
210
- attr_code(super.merge("unnumbered": node.option?("unnumbered"),
211
- "subsequence": node.attr("subsequence")))
211
+ attr_code(super.merge(unnumbered: node.option?("unnumbered"),
212
+ subsequence: node.attr("subsequence")))
212
213
  end
213
214
 
214
215
  def sectiontype_streamline(ret)
215
216
  case ret
216
- when "foreword" then "donotrecognise-foreword"
217
- when "introduction" then "donotrecognise-foreword"
217
+ when "foreword", "introduction" then "donotrecognise-foreword"
218
218
  else
219
219
  super
220
220
  end
@@ -32,6 +32,18 @@
32
32
  <ref name="DocumentType"/>
33
33
  </element>
34
34
  </define>
35
+ <define name="section-title">
36
+ <element name="title">
37
+ <zeroOrMore>
38
+ <ref name="TextElement"/>
39
+ </zeroOrMore>
40
+ </element>
41
+ <zeroOrMore>
42
+ <element name="variant-title">
43
+ <ref name="TypedTitleString"/>
44
+ </element>
45
+ </zeroOrMore>
46
+ </define>
35
47
  <define name="hyperlink">
36
48
  <element name="link">
37
49
  <attribute name="target">
@@ -158,15 +170,17 @@
158
170
  <data type="boolean"/>
159
171
  </attribute>
160
172
  </optional>
161
- <attribute name="type">
162
- <choice>
163
- <value>roman</value>
164
- <value>alphabet</value>
165
- <value>arabic</value>
166
- <value>roman_upper</value>
167
- <value>alphabet_upper</value>
168
- </choice>
169
- </attribute>
173
+ <optional>
174
+ <attribute name="type">
175
+ <choice>
176
+ <value>roman</value>
177
+ <value>alphabet</value>
178
+ <value>arabic</value>
179
+ <value>roman_upper</value>
180
+ <value>alphabet_upper</value>
181
+ </choice>
182
+ </attribute>
183
+ </optional>
170
184
  <oneOrMore>
171
185
  <ref name="li"/>
172
186
  </oneOrMore>
@@ -976,6 +990,16 @@
976
990
  <data type="boolean"/>
977
991
  </attribute>
978
992
  </optional>
993
+ <optional>
994
+ <attribute name="linkmention">
995
+ <data type="boolean"/>
996
+ </attribute>
997
+ </optional>
998
+ <optional>
999
+ <attribute name="linkref">
1000
+ <data type="boolean"/>
1001
+ </attribute>
1002
+ </optional>
979
1003
  <optional>
980
1004
  <element name="refterm">
981
1005
  <zeroOrMore>
@@ -1012,6 +1036,7 @@
1012
1036
  <ref name="svgmap"/>
1013
1037
  <ref name="inputform"/>
1014
1038
  <ref name="toc"/>
1039
+ <ref name="passthrough"/>
1015
1040
  </choice>
1016
1041
  </define>
1017
1042
  <define name="toc">
@@ -1019,6 +1044,14 @@
1019
1044
  <ref name="ul"/>
1020
1045
  </element>
1021
1046
  </define>
1047
+ <define name="passthrough">
1048
+ <element name="passthrough">
1049
+ <optional>
1050
+ <attribute name="formats"/>
1051
+ </optional>
1052
+ <text/>
1053
+ </element>
1054
+ </define>
1022
1055
  <define name="inputform">
1023
1056
  <element name="form">
1024
1057
  <attribute name="id">
@@ -1686,7 +1719,9 @@
1686
1719
  <zeroOrMore>
1687
1720
  <ref name="termgrammar"/>
1688
1721
  </zeroOrMore>
1689
- <ref name="definition"/>
1722
+ <oneOrMore>
1723
+ <ref name="termdefinition"/>
1724
+ </oneOrMore>
1690
1725
  <zeroOrMore>
1691
1726
  <ref name="termnote"/>
1692
1727
  </zeroOrMore>
@@ -1749,7 +1784,7 @@
1749
1784
  </oneOrMore>
1750
1785
  </element>
1751
1786
  </define>
1752
- <define name="definition">
1787
+ <define name="termdefinition">
1753
1788
  <element name="definition">
1754
1789
  <oneOrMore>
1755
1790
  <choice>
@@ -1758,6 +1793,9 @@
1758
1793
  <ref name="formula"/>
1759
1794
  </choice>
1760
1795
  </oneOrMore>
1796
+ <zeroOrMore>
1797
+ <ref name="termsource"/>
1798
+ </zeroOrMore>
1761
1799
  </element>
1762
1800
  </define>
1763
1801
  <define name="termnote">
@@ -64,9 +64,9 @@
64
64
  <optional>
65
65
  <ref name="label"/>
66
66
  </optional>
67
- <optional>
67
+ <zeroOrMore>
68
68
  <ref name="subject"/>
69
- </optional>
69
+ </zeroOrMore>
70
70
  <zeroOrMore>
71
71
  <ref name="reqinherit"/>
72
72
  </zeroOrMore>
@@ -80,6 +80,7 @@
80
80
  <ref name="verification"/>
81
81
  <ref name="import"/>
82
82
  <ref name="description"/>
83
+ <ref name="component"/>
83
84
  </choice>
84
85
  </zeroOrMore>
85
86
  <optional>
@@ -105,12 +106,16 @@
105
106
  </define>
106
107
  <define name="subject">
107
108
  <element name="subject">
108
- <text/>
109
+ <oneOrMore>
110
+ <ref name="TextElement"/>
111
+ </oneOrMore>
109
112
  </element>
110
113
  </define>
111
114
  <define name="reqinherit">
112
115
  <element name="inherit">
113
- <text/>
116
+ <oneOrMore>
117
+ <ref name="TextElement"/>
118
+ </oneOrMore>
114
119
  </element>
115
120
  </define>
116
121
  <define name="measurementtarget">
@@ -138,6 +143,12 @@
138
143
  <ref name="RequirementSubpart"/>
139
144
  </element>
140
145
  </define>
146
+ <define name="component">
147
+ <element name="component">
148
+ <attribute name="class"/>
149
+ <ref name="RequirementSubpart"/>
150
+ </element>
151
+ </define>
141
152
  <define name="reqt_references">
142
153
  <element name="references">
143
154
  <oneOrMore>
@@ -13,11 +13,10 @@ module Asciidoctor
13
13
  def stage_validate(xmldoc)
14
14
  stage = xmldoc&.at("//bibdata/status/stage")&.text
15
15
  %w(proposal working-draft committee-draft draft-standard final-draft
16
- published withdrawn).include? stage or
17
- @log.add("Document Attributes", nil,
18
- "#{stage} is not a recognised status")
16
+ published withdrawn).include? stage or
17
+ @log.add("Document Attributes", nil,
18
+ "#{stage} is not a recognised status")
19
19
  end
20
20
  end
21
21
  end
22
22
  end
23
-
@@ -676,6 +676,12 @@ ul > li p:first-child {
676
676
  ul > li:first-child {
677
677
  margin-top: 1em; }
678
678
 
679
+ ul ul > li:first-child {
680
+ margin-top: 0; }
681
+
682
+ ol ul > li:first-child {
683
+ margin-top: 0; }
684
+
679
685
  #toc-list ul {
680
686
  margin-bottom: 0.25em; }
681
687
 
@@ -394,6 +394,13 @@ ul>li:first-child {
394
394
  margin-top: 1em;
395
395
  }
396
396
 
397
+ ul ul > li:first-child {
398
+ margin-top: 0;
399
+ }
400
+ ol ul > li:first-child {
401
+ margin-top: 0;
402
+ }
403
+
397
404
  #toc-list ul {
398
405
  margin-bottom: 0.25em;
399
406
  }
@@ -8,4 +8,3 @@ module IsoDoc
8
8
  end
9
9
  end
10
10
  end
11
-
@@ -11,7 +11,7 @@ module IsoDoc
11
11
  @meta.set(:toc, @toc)
12
12
  end
13
13
 
14
- def xref_init(lang, script, klass, labels, options)
14
+ def xref_init(lang, script, _klass, labels, options)
15
15
  html = HtmlConvert.new(language: lang, script: script)
16
16
  @xrefs = Xref.new(lang, script, html, labels, options)
17
17
  end
@@ -26,4 +26,3 @@ module IsoDoc
26
26
  end
27
27
  end
28
28
  end
29
-