metanorma-iec 2.2.3 → 2.2.4
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa0cb1e4f74a208623ea4afa6ac089d07ef738ab6a5e2b743ba1c9cf874c761f
|
4
|
+
data.tar.gz: 306daf6fb488295282985216c68bd3e27f50c0a9a48d5b44949c9b8a7c793ad2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ff37df74026031b95f8900c82d5ab67ff1e9df40999ddee4f82e35ead8b9f9d4087c67d60db1987889b69e7dce311163fa79b9d0744d8303322e80ea4d50c7e7
|
7
|
+
data.tar.gz: f2969e8aed2645c90fee5e6fafa183ece04729b87827daf62783bc8214a0e37250c0780ad62dd076fa0c19951e1446fd21f770f812d962ea06df42b1962f47db
|
@@ -13,7 +13,7 @@
|
|
13
13
|
<p class="coverpage_docnumber">{{ docnumber }}(E) {{ draftinfo }}</p>
|
14
14
|
{% endif %}
|
15
15
|
|
16
|
-
<p class="coverpage_techcommittee">{{
|
16
|
+
<p class="coverpage_techcommittee">{{ editorialgroup }}</p>
|
17
17
|
|
18
18
|
<p class="coverpage_techcommittee"><a
|
19
19
|
name="CVP_Secretariat_Loca">Secretariat</a>: {{ secretariat }}</p>
|
@@ -126,8 +126,8 @@ module Metanorma
|
|
126
126
|
m = /60050-(\d+)/.match(id) or return
|
127
127
|
xmldoc.xpath("//sections/clause/terms/title").each_with_index do |t, i|
|
128
128
|
num = "%02d" % [i + 1]
|
129
|
-
t.next = "<variant-title type='toc'>"\
|
130
|
-
"#{@i18n.section_iev} #{m[1]}-#{num} – "\
|
129
|
+
t.next = "<variant-title type='toc'>" \
|
130
|
+
"#{@i18n.section_iev} #{m[1]}-#{num} – " \
|
131
131
|
"#{t.children.to_xml}</variant-title>"
|
132
132
|
end
|
133
133
|
end
|
@@ -136,6 +136,29 @@ module Metanorma
|
|
136
136
|
attr_code(keep_attrs(node)
|
137
137
|
.merge(id: ::Metanorma::Utils::anchor_or_uuid(node)))
|
138
138
|
end
|
139
|
+
|
140
|
+
# TODO remove when I adopt pubid-iec
|
141
|
+
#
|
142
|
+
def get_id_prefix(xmldoc)
|
143
|
+
xmldoc.xpath("//bibdata/contributor[role/@type = 'publisher']" \
|
144
|
+
"/organization").each_with_object([]) do |x, prefix|
|
145
|
+
x1 = x.at("abbreviation")&.text || x.at("name")&.text
|
146
|
+
#(x1 == "IEC" and prefix.unshift("IEC")) or prefix << x1
|
147
|
+
prefix << x1
|
148
|
+
end
|
149
|
+
end
|
150
|
+
#
|
151
|
+
def docidentifier_cleanup(xmldoc)
|
152
|
+
prefix = get_id_prefix(xmldoc)
|
153
|
+
id = xmldoc.at("//bibdata/docidentifier[@type = 'ISO']") or return
|
154
|
+
id.content = id_prefix(prefix, id)
|
155
|
+
id = xmldoc.at("//bibdata/ext/structuredidentifier/project-number") and
|
156
|
+
id.content = id_prefix(prefix, id)
|
157
|
+
%w(iso-with-lang iso-reference iso-undated).each do |t|
|
158
|
+
id = xmldoc.at("//bibdata/docidentifier[@type = '#{t}']") and
|
159
|
+
id.content = id_prefix(prefix, id)
|
160
|
+
end
|
161
|
+
end
|
139
162
|
end
|
140
163
|
end
|
141
164
|
end
|
data/lib/metanorma/iec/front.rb
CHANGED
@@ -5,7 +5,7 @@ module Metanorma
|
|
5
5
|
publishers = node.attr("publisher") || "IEC"
|
6
6
|
csv_split(publishers)&.each do |p|
|
7
7
|
xml.contributor do |c|
|
8
|
-
c.role
|
8
|
+
c.role type: "author"
|
9
9
|
c.organization do |a|
|
10
10
|
organization(a, p, false, node, !node.attr("publisher"))
|
11
11
|
end
|
@@ -17,7 +17,7 @@ module Metanorma
|
|
17
17
|
publishers = node.attr("publisher") || "IEC"
|
18
18
|
csv_split(publishers)&.each do |p|
|
19
19
|
xml.contributor do |c|
|
20
|
-
c.role
|
20
|
+
c.role type: "publisher"
|
21
21
|
c.organization do |a|
|
22
22
|
organization(a, p, true, node, !node.attr("publisher"))
|
23
23
|
end
|
@@ -51,6 +51,37 @@ module Metanorma
|
|
51
51
|
xml.docidentifier dn, **attr_code(type: "ISO")
|
52
52
|
end
|
53
53
|
|
54
|
+
def add_id_parts(docnum, part, subpart)
|
55
|
+
docnum += "-#{part}" if part
|
56
|
+
docnum += "-#{subpart}" if subpart
|
57
|
+
docnum
|
58
|
+
end
|
59
|
+
|
60
|
+
def id_stage_prefix(docnum, node)
|
61
|
+
stage = get_stage(node)
|
62
|
+
typeabbr = get_typeabbr(node)&.upcase
|
63
|
+
if stage && (stage.to_i < 60)
|
64
|
+
docnum = unpub_stage_prefix(docnum, stage, typeabbr, node)
|
65
|
+
elsif typeabbr == "DIR " then docnum = "#{typeabbr}#{docnum}"
|
66
|
+
elsif typeabbr && !@amd then docnum = "/#{typeabbr}#{docnum}"
|
67
|
+
end
|
68
|
+
docnum
|
69
|
+
end
|
70
|
+
|
71
|
+
def unpub_stage_prefix(docnum, stage, typeabbr, node)
|
72
|
+
abbr = id_stage_abbr(stage, get_substage(node), node)
|
73
|
+
%w(40 50).include?(stage) && i = node.attr("iteration") and
|
74
|
+
itersuffix = ".#{i}"
|
75
|
+
return docnum if abbr.nil? || abbr.empty? # prefixes added in cleanup
|
76
|
+
|
77
|
+
typeabbr = "" if %w(DTS FDTS).include?(abbr.sub(/\s+$/, ""))
|
78
|
+
return "/#{abbr}#{typeabbr} #{docnum}#{itersuffix}" unless @amd
|
79
|
+
|
80
|
+
a = docnum.split(%r{/})
|
81
|
+
a[-1] = "#{abbr}#{a[-1]}#{itersuffix}"
|
82
|
+
a.join("/")
|
83
|
+
end
|
84
|
+
|
54
85
|
def id_edition_suffix(docnum, node)
|
55
86
|
ed = node.attr("edition") || 1
|
56
87
|
docnum += " ED #{ed}"
|
@@ -151,7 +182,7 @@ module Metanorma
|
|
151
182
|
abbr
|
152
183
|
end
|
153
184
|
|
154
|
-
def stage_abbr(stage, _substage)
|
185
|
+
def stage_abbr(stage, _substage, _doctype)
|
155
186
|
return "PPUB" if stage == "60"
|
156
187
|
|
157
188
|
DOC_STAGE[stage.to_sym] || "??"
|
@@ -191,7 +222,8 @@ module Metanorma
|
|
191
222
|
stage = get_stage(node)
|
192
223
|
substage = get_substage(node)
|
193
224
|
xml.status do |s|
|
194
|
-
s.stage stage,
|
225
|
+
s.stage stage,
|
226
|
+
**attr_code(abbreviation: stage_abbr(stage, substage, nil))
|
195
227
|
subst = status_abbrev1(stage, substage, node.attr("iteration"),
|
196
228
|
doctype(node), node.attr("draft"))
|
197
229
|
s.substage substage, **attr_code(abbreviation: subst)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-iec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-iso
|