metanorma-bipm 1.0.6 → 1.0.7
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 +4 -4
- data/.gitignore +1 -0
- data/.rubocop.yml +14 -0
- data/lib/asciidoctor/bipm/biblio.rng +4 -6
- data/lib/isodoc/bipm/bipm.brochure.xsl +214 -25
- data/lib/isodoc/bipm/bipm.guide.xsl +214 -25
- data/lib/isodoc/bipm/bipm.mise-en-pratique.xsl +214 -25
- data/lib/isodoc/bipm/bipm.rapport.xsl +214 -25
- data/lib/isodoc/bipm/index.rb +2 -1
- data/lib/isodoc/bipm/jcgm.standard.xsl +2 -2
- data/lib/isodoc/bipm/presentation_xml_convert.rb +26 -10
- data/lib/isodoc/bipm/xref.rb +44 -18
- data/lib/metanorma/bipm/version.rb +1 -1
- data/metanorma-bipm.gemspec +1 -1
- metadata +6 -4
data/lib/isodoc/bipm/xref.rb
CHANGED
@@ -9,7 +9,8 @@ module IsoDoc
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def clause_names(docxml, sect_num)
|
12
|
-
if docxml&.at(ns("//bibdata/ext/editorialgroup/committee/@acronym"))&.
|
12
|
+
if docxml&.at(ns("//bibdata/ext/editorialgroup/committee/@acronym"))&.
|
13
|
+
value == "JCGM"
|
13
14
|
clause_names_jcgm(docxml, sect_num)
|
14
15
|
else
|
15
16
|
clause_names_bipm(docxml, sect_num)
|
@@ -17,8 +18,8 @@ module IsoDoc
|
|
17
18
|
end
|
18
19
|
|
19
20
|
def clause_names_jcgm(docxml, sect_num)
|
20
|
-
docxml.xpath(ns("//clause[parent::sections][not(@type = 'scope')]
|
21
|
-
|
21
|
+
docxml.xpath(ns("//clause[parent::sections][not(@type = 'scope')]"\
|
22
|
+
"[not(descendant::terms)]")).each_with_index do |c, i|
|
22
23
|
section_names(c, sect_num, 1)
|
23
24
|
end
|
24
25
|
end
|
@@ -50,8 +51,9 @@ module IsoDoc
|
|
50
51
|
def section_names(clause, num, lvl)
|
51
52
|
return num if clause.nil?
|
52
53
|
num.increment(clause)
|
53
|
-
@anchors[clause["id"]] =
|
54
|
-
|
54
|
+
@anchors[clause["id"]] =
|
55
|
+
{ label: num.print, xref: l10n("#{@labels["clause"]} #{num.print}"),
|
56
|
+
level: lvl, type: "clause" }
|
55
57
|
i = Counter.new
|
56
58
|
clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
|
57
59
|
i.increment(c)
|
@@ -66,7 +68,8 @@ module IsoDoc
|
|
66
68
|
def unnumbered_section_names(clause, lvl)
|
67
69
|
return if clause.nil?
|
68
70
|
lbl = clause&.at(ns("./title"))&.text || "[#{clause["id"]}]"
|
69
|
-
@anchors[clause["id"]] = { label: lbl, xref: l10n(%{"#{lbl}"}),
|
71
|
+
@anchors[clause["id"]] = { label: lbl, xref: l10n(%{"#{lbl}"}),
|
72
|
+
level: lvl, type: "clause" }
|
70
73
|
clause.xpath(ns(SUBCLAUSES)).each_with_index do |c, i|
|
71
74
|
unnumbered_section_names1(c, lvl + 1)
|
72
75
|
end
|
@@ -74,7 +77,8 @@ module IsoDoc
|
|
74
77
|
|
75
78
|
def section_names1(clause, num, level)
|
76
79
|
@anchors[clause["id"]] =
|
77
|
-
{ label: num, level: level,
|
80
|
+
{ label: num, level: level,
|
81
|
+
xref: l10n("#{@labels["subclause"]} #{num}"),
|
78
82
|
type: "clause" }
|
79
83
|
i = Counter.new
|
80
84
|
clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
|
@@ -99,14 +103,17 @@ module IsoDoc
|
|
99
103
|
super
|
100
104
|
@annexlbl = docxml.at(ns("//bibdata/ext/structuredidentifier/appendix")) ?
|
101
105
|
@labels["appendix"] : @labels["annex"]
|
102
|
-
docxml.xpath(ns("//annex[not(@unnumbered = 'true')]")).
|
103
|
-
|
106
|
+
docxml.xpath(ns("//annex[not(@unnumbered = 'true')]")).
|
107
|
+
each_with_index { |c, i| annex_names(c, (i+1).to_s) }
|
108
|
+
docxml.xpath(ns("//annex[@unnumbered = 'true']")).
|
109
|
+
each { |c| unnumbered_annex_names(c) }
|
104
110
|
docxml.xpath(ns("//indexsect")).each { |b| preface_names(b) }
|
105
111
|
end
|
106
112
|
|
107
113
|
def annex_names(clause, num)
|
108
|
-
@anchors[clause["id"]] =
|
109
|
-
|
114
|
+
@anchors[clause["id"]] =
|
115
|
+
{ label: annex_name_lbl(clause, num), type: "clause", value: num.to_s,
|
116
|
+
xref: l10n("#{@annexlbl} #{num}"), level: 1 }
|
110
117
|
if a = single_annex_special_section(clause)
|
111
118
|
annex_names1(a, "#{num}", 1)
|
112
119
|
else
|
@@ -115,43 +122,62 @@ module IsoDoc
|
|
115
122
|
i.increment(c)
|
116
123
|
annex_names1(c, "#{num}.#{i.print}", 2)
|
117
124
|
end
|
118
|
-
clause.xpath(ns(UNNUMBERED_SUBCLAUSES)).
|
125
|
+
clause.xpath(ns(UNNUMBERED_SUBCLAUSES)).
|
126
|
+
each { |c| unnumbered_annex_names1(c, 2) }
|
119
127
|
end
|
120
128
|
hierarchical_asset_names(clause, num)
|
121
129
|
end
|
122
130
|
|
123
131
|
def unnumbered_annex_names(clause)
|
124
132
|
lbl = clause&.at(ns("./title"))&.text || "[#{clause["id"]}]"
|
125
|
-
@anchors[clause["id"]] =
|
133
|
+
@anchors[clause["id"]] =
|
134
|
+
{ label: lbl, type: "clause", value: "",
|
135
|
+
xref: l10n(%{"#{lbl}"}), level: 1 }
|
126
136
|
if a = single_annex_special_section(clause)
|
127
137
|
annex_names1(a, "#{num}", 1)
|
128
138
|
else
|
129
|
-
clause.xpath(ns(SUBCLAUSES)).
|
139
|
+
clause.xpath(ns(SUBCLAUSES)).
|
140
|
+
each { |c| unnumbered_annex_names1(c, 2) }
|
130
141
|
end
|
131
142
|
hierarchical_asset_names(clause, lbl)
|
132
143
|
end
|
133
144
|
|
134
145
|
def annex_names1(clause, num, level)
|
135
|
-
@anchors[clause["id"]] =
|
136
|
-
|
146
|
+
@anchors[clause["id"]] =
|
147
|
+
{ label: num, xref: l10n("#{@annexlbl} #{num}"),
|
148
|
+
level: level, type: "clause" }
|
137
149
|
i = Counter.new
|
138
150
|
clause.xpath(ns(NUMBERED_SUBCLAUSES)).each do |c|
|
139
151
|
i.increment(c)
|
140
152
|
annex_names1(c, "#{num}.#{i.print}", level + 1)
|
141
153
|
end
|
142
|
-
clause.xpath(ns(UNNUMBERED_SUBCLAUSES)).
|
154
|
+
clause.xpath(ns(UNNUMBERED_SUBCLAUSES)).
|
155
|
+
each { |c| unnumbered_annex_names1(c, level + 1) }
|
143
156
|
end
|
144
157
|
|
145
158
|
def unnumbered_annex_names1(clause, level)
|
146
159
|
lbl = clause&.at(ns("./title"))&.text || "[#{clause["id"]}]"
|
147
160
|
@anchors[clause["id"]] = { label: lbl, xref: l10n(%{"#{lbl}"}),
|
148
161
|
level: level, type: "clause" }
|
149
|
-
clause.xpath(ns(SUBCLAUSES)).
|
162
|
+
clause.xpath(ns(SUBCLAUSES)).
|
163
|
+
each { |c| unnumbered_annex_names1(c, level + 1) }
|
150
164
|
end
|
151
165
|
|
152
166
|
def annex_name_lbl(clause, num)
|
153
167
|
l10n("<strong>#{@annexlbl} #{num}</strong>")
|
154
168
|
end
|
169
|
+
|
170
|
+
def sequential_formula_names(clause)
|
171
|
+
c = Counter.new
|
172
|
+
clause.xpath(ns(".//formula")).each do |t|
|
173
|
+
next if t["id"].nil? || t["id"].empty?
|
174
|
+
@anchors[t["id"]] =
|
175
|
+
anchor_struct(c.increment(t).print, nil,
|
176
|
+
t["inequality"] ? @labels["inequality"] : @labels["formula"],
|
177
|
+
"formula", t["unnumbered"])
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
155
181
|
end
|
156
182
|
end
|
157
183
|
end
|
data/metanorma-bipm.gemspec
CHANGED
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.add_development_dependency "guard-rspec", "~> 4.7"
|
36
36
|
spec.add_development_dependency "rake", "~> 13.0"
|
37
37
|
spec.add_development_dependency "rspec", "~> 3.6"
|
38
|
-
spec.add_development_dependency "rubocop", "~>
|
38
|
+
spec.add_development_dependency "rubocop", "~> 1.5.2"
|
39
39
|
spec.add_development_dependency "simplecov", "~> 0.15"
|
40
40
|
spec.add_development_dependency "timecop", "~> 0.9"
|
41
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-bipm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-03-
|
11
|
+
date: 2021-03-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-generic
|
@@ -128,14 +128,14 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 1.5.2
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
138
|
+
version: 1.5.2
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: simplecov
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -175,6 +175,8 @@ extensions: []
|
|
175
175
|
extra_rdoc_files: []
|
176
176
|
files:
|
177
177
|
- ".github/workflows/rake.yml"
|
178
|
+
- ".gitignore"
|
179
|
+
- ".rubocop.yml"
|
178
180
|
- CODE_OF_CONDUCT.md
|
179
181
|
- Gemfile
|
180
182
|
- LICENSE
|