metanorma-ieee 1.1.10 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/isodoc/ieee/ieee.amendment.xsl +4 -2
- data/lib/isodoc/ieee/ieee.standard.xsl +4 -2
- data/lib/isodoc/ieee/metadata.rb +1 -2
- data/lib/isodoc/ieee/presentation_ref.rb +9 -3
- data/lib/isodoc/ieee/presentation_terms.rb +3 -5
- data/lib/metanorma/ieee/basicdoc.rng +91 -8
- data/lib/metanorma/ieee/biblio-standoc.rng +44 -1
- data/lib/metanorma/ieee/biblio.rng +11 -0
- data/lib/metanorma/ieee/cleanup_ref.rb +112 -9
- data/lib/metanorma/ieee/ieee-footnotes.yaml +77 -0
- data/lib/metanorma/ieee/isodoc.rng +10 -64
- data/lib/metanorma/ieee/reqt.rng +0 -16
- data/lib/metanorma/ieee/validate.rb +0 -2
- data/lib/metanorma/ieee/version.rb +1 -1
- data/metanorma-ieee.gemspec +1 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4c8b36f29257a62401c8357b433057740ec7d9a1a94bf0f1d44916aaf7bcb2ad
|
4
|
+
data.tar.gz: c1e3293746afb9c5af22399b9cc5c896f92caa2cbca50000802ee401378a3029
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d405aac6ed448e8763c5f0de08b8edefffb6a883f394dffb8d59205085d07a0c4436d8ac13c115d84c3258de97205bf28eb3fd2857b675124d9da1966f2784b7
|
7
|
+
data.tar.gz: c509c9af29dbd57d59189adbd85e636d198c14702dd5cb4f530a6e4af7383066845c04df1b3595a08cc03debdbcf0517acd7b19a62ac37bf6b574a921874461c
|
@@ -12335,14 +12335,16 @@
|
|
12335
12335
|
|
12336
12336
|
<xsl:template match="*[local-name() = 'annex']">
|
12337
12337
|
<fo:block break-after="page"/>
|
12338
|
-
<fo:block
|
12338
|
+
<fo:block>
|
12339
12339
|
|
12340
12340
|
<xsl:call-template name="setBlockSpanAll"/>
|
12341
12341
|
|
12342
12342
|
<xsl:call-template name="refine_annex_style"/>
|
12343
12343
|
|
12344
12344
|
</fo:block>
|
12345
|
-
<
|
12345
|
+
<fo:block id="{@id}">
|
12346
|
+
<xsl:apply-templates/>
|
12347
|
+
</fo:block>
|
12346
12348
|
</xsl:template>
|
12347
12349
|
|
12348
12350
|
<xsl:template name="refine_annex_style">
|
@@ -12335,14 +12335,16 @@
|
|
12335
12335
|
|
12336
12336
|
<xsl:template match="*[local-name() = 'annex']">
|
12337
12337
|
<fo:block break-after="page"/>
|
12338
|
-
<fo:block
|
12338
|
+
<fo:block>
|
12339
12339
|
|
12340
12340
|
<xsl:call-template name="setBlockSpanAll"/>
|
12341
12341
|
|
12342
12342
|
<xsl:call-template name="refine_annex_style"/>
|
12343
12343
|
|
12344
12344
|
</fo:block>
|
12345
|
-
<
|
12345
|
+
<fo:block id="{@id}">
|
12346
|
+
<xsl:apply-templates/>
|
12347
|
+
</fo:block>
|
12346
12348
|
</xsl:template>
|
12347
12349
|
|
12348
12350
|
<xsl:template name="refine_annex_style">
|
data/lib/isodoc/ieee/metadata.rb
CHANGED
@@ -50,10 +50,10 @@ module IsoDoc
|
|
50
50
|
|
51
51
|
def bibrender_relaton(xml, renderings)
|
52
52
|
f = renderings[xml["id"]][:formattedref]
|
53
|
-
|
53
|
+
fn = availability_note(xml)
|
54
|
+
f &&= "<formattedref>#{f}#{fn}</formattedref>"
|
54
55
|
keep = "./docidentifier | ./uri | ./note | ./title | ./biblio-tag"
|
55
|
-
xml.children =
|
56
|
-
"#{f}#{xml.xpath(ns(keep)).to_xml}"
|
56
|
+
xml.children = "#{f}#{xml.xpath(ns(keep)).to_xml}"
|
57
57
|
@author[xml["id"]] = renderings[xml["id"]][:author]
|
58
58
|
end
|
59
59
|
|
@@ -82,6 +82,12 @@ module IsoDoc
|
|
82
82
|
def expand_citeas(text)
|
83
83
|
std_docid_semantic(super)
|
84
84
|
end
|
85
|
+
|
86
|
+
def availability_note(bib)
|
87
|
+
note = bib.at(ns("./note[@type = 'Availability']")) or return ""
|
88
|
+
id = UUIDTools::UUID.random_create.to_s
|
89
|
+
"<fn reference='#{id}'><p>#{note.content}</p></fn>"
|
90
|
+
end
|
85
91
|
end
|
86
92
|
end
|
87
93
|
end
|
@@ -34,8 +34,7 @@ module IsoDoc
|
|
34
34
|
|
35
35
|
def unwrap_definition(docxml)
|
36
36
|
docxml.xpath(ns(".//definition/verbal-definition")).each do |v|
|
37
|
-
|
38
|
-
|
37
|
+
v.elements.all? { |e| %w(termsource p).include?(e.name) } or next
|
39
38
|
p = v.xpath(ns("./p"))
|
40
39
|
v.children =
|
41
40
|
"<p>#{p.map(&:children).map { |x| to_xml(x) }.join("\n")}</p>" \
|
@@ -73,7 +72,7 @@ module IsoDoc
|
|
73
72
|
"./preferred/graphical-symbol/figure/@id | " \
|
74
73
|
"./preferred"))
|
75
74
|
f = term.at(ns("./field-of-application")) || term.at(ns("./domain"))
|
76
|
-
|
75
|
+
@c.decode("#{sort_terms_key1(d)} :: #{sort_terms_key1(f)}")
|
77
76
|
end
|
78
77
|
|
79
78
|
def sort_terms_key1(elem)
|
@@ -190,8 +189,7 @@ module IsoDoc
|
|
190
189
|
end
|
191
190
|
|
192
191
|
def collapse_unwrap_definition(defn)
|
193
|
-
|
194
|
-
|
192
|
+
defn.nil? and return nil
|
195
193
|
s = defn.remove.xpath(ns("./termsource"))
|
196
194
|
p = defn.at(ns("./p"))
|
197
195
|
!s.empty? && p and p << s.map(&:remove).map(&:children)
|
@@ -95,8 +95,89 @@
|
|
95
95
|
<ref name="pagebreak"/>
|
96
96
|
<ref name="hr"/>
|
97
97
|
<ref name="bookmark"/>
|
98
|
+
<ref name="amend"/>
|
98
99
|
</choice>
|
99
100
|
</define>
|
101
|
+
<define name="amend">
|
102
|
+
<element name="amend">
|
103
|
+
<ref name="AmendType"/>
|
104
|
+
</element>
|
105
|
+
</define>
|
106
|
+
<define name="AmendType">
|
107
|
+
<optional>
|
108
|
+
<attribute name="id">
|
109
|
+
<data type="ID"/>
|
110
|
+
</attribute>
|
111
|
+
</optional>
|
112
|
+
<attribute name="change">
|
113
|
+
<choice>
|
114
|
+
<value>add</value>
|
115
|
+
<value>modify</value>
|
116
|
+
<value>delete</value>
|
117
|
+
<value>replace</value>
|
118
|
+
</choice>
|
119
|
+
</attribute>
|
120
|
+
<optional>
|
121
|
+
<attribute name="path"/>
|
122
|
+
</optional>
|
123
|
+
<optional>
|
124
|
+
<attribute name="path_end"/>
|
125
|
+
</optional>
|
126
|
+
<optional>
|
127
|
+
<attribute name="title"/>
|
128
|
+
</optional>
|
129
|
+
<optional>
|
130
|
+
<element name="location">
|
131
|
+
<zeroOrMore>
|
132
|
+
<choice>
|
133
|
+
<ref name="locality"/>
|
134
|
+
<ref name="localityStack"/>
|
135
|
+
</choice>
|
136
|
+
</zeroOrMore>
|
137
|
+
</element>
|
138
|
+
</optional>
|
139
|
+
<optional>
|
140
|
+
<element name="description">
|
141
|
+
<zeroOrMore>
|
142
|
+
<ref name="BasicBlock"/>
|
143
|
+
</zeroOrMore>
|
144
|
+
</element>
|
145
|
+
</optional>
|
146
|
+
<optional>
|
147
|
+
<element name="newcontent">
|
148
|
+
<optional>
|
149
|
+
<attribute name="id">
|
150
|
+
<data type="ID"/>
|
151
|
+
</attribute>
|
152
|
+
</optional>
|
153
|
+
<zeroOrMore>
|
154
|
+
<ref name="BasicBlock"/>
|
155
|
+
</zeroOrMore>
|
156
|
+
</element>
|
157
|
+
</optional>
|
158
|
+
<zeroOrMore>
|
159
|
+
<ref name="classification"/>
|
160
|
+
</zeroOrMore>
|
161
|
+
<zeroOrMore>
|
162
|
+
<ref name="contributor"/>
|
163
|
+
</zeroOrMore>
|
164
|
+
</define>
|
165
|
+
<define name="classification">
|
166
|
+
<element name="classification">
|
167
|
+
<ref name="classification_tag"/>
|
168
|
+
<ref name="classification_value"/>
|
169
|
+
</element>
|
170
|
+
</define>
|
171
|
+
<define name="classification_tag">
|
172
|
+
<element name="tag">
|
173
|
+
<text/>
|
174
|
+
</element>
|
175
|
+
</define>
|
176
|
+
<define name="classification_value">
|
177
|
+
<element name="value">
|
178
|
+
<text/>
|
179
|
+
</element>
|
180
|
+
</define>
|
100
181
|
<define name="paragraph">
|
101
182
|
<element name="p">
|
102
183
|
<ref name="ParagraphType"/>
|
@@ -939,18 +1020,12 @@
|
|
939
1020
|
</optional>
|
940
1021
|
<optional>
|
941
1022
|
<attribute name="width">
|
942
|
-
<
|
943
|
-
<data type="int"/>
|
944
|
-
<value>auto</value>
|
945
|
-
</choice>
|
1023
|
+
<ref name="ImageSize"/>
|
946
1024
|
</attribute>
|
947
1025
|
</optional>
|
948
1026
|
<optional>
|
949
1027
|
<attribute name="height">
|
950
|
-
<
|
951
|
-
<data type="int"/>
|
952
|
-
<value>auto</value>
|
953
|
-
</choice>
|
1028
|
+
<ref name="ImageSize"/>
|
954
1029
|
</attribute>
|
955
1030
|
</optional>
|
956
1031
|
<optional>
|
@@ -965,6 +1040,14 @@
|
|
965
1040
|
</attribute>
|
966
1041
|
</optional>
|
967
1042
|
</define>
|
1043
|
+
<define name="ImageSize">
|
1044
|
+
<choice>
|
1045
|
+
<data type="string">
|
1046
|
+
<param name="pattern">\d+([.]\d+)?(%?)</param>
|
1047
|
+
</data>
|
1048
|
+
<value>auto</value>
|
1049
|
+
</choice>
|
1050
|
+
</define>
|
968
1051
|
<define name="video">
|
969
1052
|
<element name="video">
|
970
1053
|
<attribute name="id">
|
@@ -9,11 +9,42 @@
|
|
9
9
|
-->
|
10
10
|
<include href="biblio.rng">
|
11
11
|
<define name="BibData">
|
12
|
-
<ref name="
|
12
|
+
<ref name="StandardBibliographicItem"/>
|
13
13
|
<optional>
|
14
14
|
<ref name="ext"/>
|
15
15
|
</optional>
|
16
16
|
</define>
|
17
|
+
<define name="docrelation">
|
18
|
+
<element name="relation">
|
19
|
+
<attribute name="type">
|
20
|
+
<ref name="DocRelationType"/>
|
21
|
+
</attribute>
|
22
|
+
<optional>
|
23
|
+
<element name="description">
|
24
|
+
<ref name="FormattedString"/>
|
25
|
+
</element>
|
26
|
+
</optional>
|
27
|
+
<element name="bibitem">
|
28
|
+
<ref name="StandardReducedBibliographicItem"/>
|
29
|
+
</element>
|
30
|
+
<choice>
|
31
|
+
<zeroOrMore>
|
32
|
+
<ref name="locality"/>
|
33
|
+
</zeroOrMore>
|
34
|
+
<zeroOrMore>
|
35
|
+
<ref name="localityStack"/>
|
36
|
+
</zeroOrMore>
|
37
|
+
</choice>
|
38
|
+
<choice>
|
39
|
+
<zeroOrMore>
|
40
|
+
<ref name="sourceLocality"/>
|
41
|
+
</zeroOrMore>
|
42
|
+
<zeroOrMore>
|
43
|
+
<ref name="sourceLocalityStack"/>
|
44
|
+
</zeroOrMore>
|
45
|
+
</choice>
|
46
|
+
</element>
|
47
|
+
</define>
|
17
48
|
</include>
|
18
49
|
<define name="ext">
|
19
50
|
<element name="ext">
|
@@ -161,4 +192,16 @@
|
|
161
192
|
</optional>
|
162
193
|
</element>
|
163
194
|
</define>
|
195
|
+
<define name="StandardBibliographicItem">
|
196
|
+
<ref name="BibliographicItem"/>
|
197
|
+
<zeroOrMore>
|
198
|
+
<ref name="amend"/>
|
199
|
+
</zeroOrMore>
|
200
|
+
</define>
|
201
|
+
<define name="StandardReducedBibliographicItem">
|
202
|
+
<ref name="ReducedBibliographicItem"/>
|
203
|
+
<zeroOrMore>
|
204
|
+
<ref name="amend"/>
|
205
|
+
</zeroOrMore>
|
206
|
+
</define>
|
164
207
|
</grammar>
|
@@ -241,6 +241,9 @@
|
|
241
241
|
</element>
|
242
242
|
</define>
|
243
243
|
<define name="FullNameType">
|
244
|
+
<optional>
|
245
|
+
<ref name="name_abbreviation"/>
|
246
|
+
</optional>
|
244
247
|
<choice>
|
245
248
|
<group>
|
246
249
|
<zeroOrMore>
|
@@ -266,6 +269,11 @@
|
|
266
269
|
<ref name="variantname"/>
|
267
270
|
</zeroOrMore>
|
268
271
|
</define>
|
272
|
+
<define name="name_abbreviation">
|
273
|
+
<element name="abbreviation">
|
274
|
+
<ref name="LocalizedString"/>
|
275
|
+
</element>
|
276
|
+
</define>
|
269
277
|
<define name="prefix">
|
270
278
|
<element name="prefix">
|
271
279
|
<ref name="LocalizedString"/>
|
@@ -870,6 +878,9 @@
|
|
870
878
|
<optional>
|
871
879
|
<ref name="validity"/>
|
872
880
|
</optional>
|
881
|
+
<optional>
|
882
|
+
<ref name="depiction"/>
|
883
|
+
</optional>
|
873
884
|
</define>
|
874
885
|
<define name="btitle">
|
875
886
|
<element name="title">
|
@@ -15,13 +15,11 @@ module Metanorma
|
|
15
15
|
if ref.at("./note[@type = 'boilerplate']")
|
16
16
|
unwrap_boilerplate_clauses(ref, ".")
|
17
17
|
else
|
18
|
-
|
19
|
-
ref.at("./title").next = "<p>#{pref}</p>"
|
18
|
+
ref.at("./title").next = "<p>#{@i18n.biblio_pref}</p>"
|
20
19
|
end
|
21
20
|
end
|
22
21
|
|
23
22
|
def sort_biblio(bib)
|
24
|
-
@c = HTMLEntities.new
|
25
23
|
@i = IsoDoc::IEEE::PresentationXMLConvert
|
26
24
|
.new({ lang: @lang, script: @script, locale: @locale })
|
27
25
|
@i.i18n_init(@lang, @script, @locale)
|
@@ -75,12 +73,13 @@ module Metanorma
|
|
75
73
|
trademark_ieee_erefs(xmldoc)
|
76
74
|
end
|
77
75
|
|
76
|
+
IEEE = "Institute of Electrical and Electronics Engineers".freeze
|
77
|
+
|
78
78
|
# Style manual 12.3.5
|
79
79
|
def trademark_ieee_erefs(xmldoc)
|
80
80
|
ieee = xmldoc.xpath("//references/bibitem")
|
81
81
|
.each_with_object({}) do |b, m|
|
82
|
-
|
83
|
-
n&.text == "Institute of Electrical and Electronics Engineers" and
|
82
|
+
bib_pubs(b).include?(IEEE) and
|
84
83
|
m[b["id"]] = b.at("./docidentifier[@scope = 'trademark']")&.text
|
85
84
|
end
|
86
85
|
trademark_ieee_erefs1(xmldoc, "//preface//eref", ieee)
|
@@ -127,10 +126,114 @@ module Metanorma
|
|
127
126
|
end
|
128
127
|
|
129
128
|
def section_names_refs_cleanup(xml)
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
129
|
+
@doctype == "whitepaper" or return super
|
130
|
+
replace_title(xml, "//bibliography/references", @i18n&.references, true)
|
131
|
+
end
|
132
|
+
|
133
|
+
def bibitem_cleanup(xmldoc)
|
134
|
+
super
|
135
|
+
f = File.join(File.dirname(__FILE__), "ieee-footnotes.yaml")
|
136
|
+
@provenance_notes = YAML.safe_load(File.read(f))
|
137
|
+
withdrawn_note(xmldoc, @provenance_notes)
|
138
|
+
end
|
139
|
+
|
140
|
+
def biblio_reorder(xmldoc)
|
141
|
+
super
|
142
|
+
available_note(xmldoc, @provenance_notes)
|
143
|
+
end
|
144
|
+
|
145
|
+
def bib_pubs(bib)
|
146
|
+
bib.xpath("./contributor[role/@type = 'publisher']/organization/name")
|
147
|
+
.map(&:text)
|
148
|
+
end
|
149
|
+
|
150
|
+
BIBITEM_NO_AVAIL =
|
151
|
+
"//references/bibitem[not(note[@type = 'Availability'])]".freeze
|
152
|
+
|
153
|
+
def withdrawn_note(xmldoc, provenance_notes)
|
154
|
+
xmldoc.xpath(BIBITEM_NO_AVAIL).each do |b|
|
155
|
+
bib_pubs(b).include?(IEEE) or next
|
156
|
+
b.at("./status/stage")&.text == "withdrawn" or next
|
157
|
+
docid = b.at("./docidentifier[@type = 'IEEE'][not(@scope)]")
|
158
|
+
note = provenance_notes["ieee-withdrawn"].sub("%", docid.text)
|
159
|
+
insert_availability_note(b, note)
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
163
|
+
AVAIL_PUBS = {
|
164
|
+
ieee: IEEE,
|
165
|
+
cispr: "International special committee on radio interference",
|
166
|
+
etsi: "European Telecommunications Standards Institute",
|
167
|
+
oasis: "OASIS",
|
168
|
+
"w3c": "World Wide Web Consortium",
|
169
|
+
"3gpp": "3rd Generation Partnership Project",
|
170
|
+
}.freeze
|
171
|
+
|
172
|
+
def available_note(xmldoc, provenance_notes)
|
173
|
+
iso_iec_available_note(xmldoc, provenance_notes["iso-iec"], true, true)
|
174
|
+
iso_iec_available_note(xmldoc, provenance_notes["iso"], true, false)
|
175
|
+
iso_iec_available_note(xmldoc, provenance_notes["iec"], false, true)
|
176
|
+
itu_available_note(xmldoc, provenance_notes["itut"], true)
|
177
|
+
itu_available_note(xmldoc, provenance_notes["itur"], false)
|
178
|
+
nist_available_note(xmldoc, provenance_notes["fips"], true)
|
179
|
+
nist_available_note(xmldoc, provenance_notes["nist"], false)
|
180
|
+
ietf_available_note(xmldoc, provenance_notes["ietf"])
|
181
|
+
AVAIL_PUBS.each do |k, v|
|
182
|
+
sdo_available_note(xmldoc, provenance_notes[k.to_s], v)
|
183
|
+
end
|
184
|
+
end
|
185
|
+
|
186
|
+
def sdo_available_note(xmldoc, note, publisher)
|
187
|
+
ret = xmldoc.xpath(BIBITEM_NO_AVAIL).detect do |b|
|
188
|
+
bib_pubs(b).include?(publisher)
|
189
|
+
end
|
190
|
+
insert_availability_note(ret, note)
|
191
|
+
end
|
192
|
+
|
193
|
+
def iso_iec_available_note(xmldoc, note, iso, iec)
|
194
|
+
ret = xmldoc.xpath(BIBITEM_NO_AVAIL).detect do |b|
|
195
|
+
pubs = bib_pubs(b)
|
196
|
+
has_iec = pubs.include?("International Electrotechnical Commission")
|
197
|
+
has_iso = pubs.include?("International Organization for Standardization")
|
198
|
+
((has_iec && iec) || (!has_iec && !iec)) &&
|
199
|
+
((has_iso && iso) || (!has_iso && !iso))
|
200
|
+
end
|
201
|
+
insert_availability_note(ret, note)
|
202
|
+
end
|
203
|
+
|
204
|
+
def ietf_available_note(xmldoc, note)
|
205
|
+
ret = xmldoc.xpath(BIBITEM_NO_AVAIL).detect do |b|
|
206
|
+
b.at("./docidentifier[@type = 'IETF']")
|
207
|
+
end
|
208
|
+
insert_availability_note(ret, note)
|
209
|
+
end
|
210
|
+
|
211
|
+
def itu_available_note(xmldoc, note, itu_t)
|
212
|
+
ret = xmldoc.xpath(BIBITEM_NO_AVAIL).detect do |b|
|
213
|
+
has_itu_t = /^ITU-T/.match?(b.at("./docidentifier[@type = 'ITU']")&.text)
|
214
|
+
bib_pubs(b).include?("International Telecommunication Union") &&
|
215
|
+
(!has_itu_t && !itu_t) || (has_itu_t && itu_t)
|
216
|
+
end
|
217
|
+
insert_availability_note(ret, note)
|
218
|
+
end
|
219
|
+
|
220
|
+
def nist_available_note(xmldoc, note, fips)
|
221
|
+
ret = xmldoc.xpath(BIBITEM_NO_AVAIL).detect do |b|
|
222
|
+
id = b.at("./docidentifier[@type = 'NIST']")
|
223
|
+
has_fips = /\bFIPS\b/.match?(id&.text)
|
224
|
+
id && ((has_fips && !fips) || (!has_fips && fips))
|
225
|
+
end
|
226
|
+
insert_availability_note(ret, note)
|
227
|
+
end
|
228
|
+
|
229
|
+
def insert_availability_note(bib, msg)
|
230
|
+
bib or return
|
231
|
+
note = %(<note type="Availability"><p>#{msg}</p></note>)
|
232
|
+
if b = bib.at("./language | ./script | ./abstract | ./status")
|
233
|
+
b.previous = note
|
234
|
+
else b = bib.at("./contributor") || bib.at("./date") ||
|
235
|
+
bib.at("./docnumber") || bib.at("./docidentifier") ||
|
236
|
+
bib.at("./title") and b.next = note
|
134
237
|
end
|
135
238
|
end
|
136
239
|
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
---
|
2
|
+
ieee: |
|
3
|
+
IEEE publications are available from The Institute of Electrical and
|
4
|
+
Electronics Engineers (http://standards.ieee.org/).
|
5
|
+
|
6
|
+
iec: |
|
7
|
+
IEC publications are available from the International Electrotechnical
|
8
|
+
Commission (http://www.iec.ch/). IEC publications are also available in
|
9
|
+
the United States from the American National Standards Institute
|
10
|
+
(http://www.ansi.org/).
|
11
|
+
|
12
|
+
cispr: |
|
13
|
+
CISPR documents are available from the International Electrotechnical
|
14
|
+
Commission (http://www.iec.ch/). CISPR documents are also available in
|
15
|
+
the United States from the American National Standards Institute
|
16
|
+
(http://www.ansi.org)
|
17
|
+
|
18
|
+
ietf: |
|
19
|
+
IETF documents (e.g., RFCs) are available from the Internet Engineering Task Force (http://www.ietf.org/).
|
20
|
+
|
21
|
+
iso: |
|
22
|
+
ISO publications are available from the ISO Central Secretariat
|
23
|
+
(http://www.iso.org/). ISO publications are also available in the United
|
24
|
+
States from the American National Standards Institute
|
25
|
+
(http://www.ansi.org/).
|
26
|
+
|
27
|
+
iso-iec: |
|
28
|
+
ISO/IEC documents are available from the International Organization for
|
29
|
+
Standardization (https://www.iso.org/). ISO/IEC publications are also
|
30
|
+
available in the United States from Global Engineering Documents
|
31
|
+
(https://global.ihs.com/). Electronic copies are available in the United
|
32
|
+
States from the American National Standards Institute
|
33
|
+
(https://www.ansi.org/)
|
34
|
+
|
35
|
+
fips: |
|
36
|
+
FIPS publications are available from the National Technical Information
|
37
|
+
Service (NTIS) (http://csrc.nist.gov).
|
38
|
+
|
39
|
+
nist: |
|
40
|
+
NIST publications are available from the National Institute of Standards
|
41
|
+
and Technology (http://www.nist.gov/).
|
42
|
+
|
43
|
+
astm: |
|
44
|
+
ASTM publications are available from the American Society for Testing
|
45
|
+
and Materials (http://www.astm.org/).
|
46
|
+
|
47
|
+
etsi: |
|
48
|
+
ETSI publications are available the European Telecommunications
|
49
|
+
Standards Institute (http://www.etsi.org).
|
50
|
+
|
51
|
+
ansi: |
|
52
|
+
ANSI publications are available from the American National Standards
|
53
|
+
Institute (http://www.ansi.org/).
|
54
|
+
|
55
|
+
itut: |
|
56
|
+
ITU-T publications are available from the International
|
57
|
+
Telecommunications Union (http://www.itu.int/).
|
58
|
+
|
59
|
+
itur: |
|
60
|
+
ITU publications are available from the International Telecommunications
|
61
|
+
Union (http://www.itu.int/).
|
62
|
+
|
63
|
+
w3c: |
|
64
|
+
W3C recommendations are available from the World Wide Web Consortium
|
65
|
+
(https://www.w3.org).
|
66
|
+
|
67
|
+
oasis: |
|
68
|
+
OASIS publications are available from the Organization for the
|
69
|
+
Organization for the Advancement of Structured Information Standards
|
70
|
+
(http://www.oasis-open.org)
|
71
|
+
|
72
|
+
3gpp: |
|
73
|
+
3GPP(TM) documents are available from the 3rd Generation Partnership
|
74
|
+
Project Web site (http://www.3gpp.org).
|
75
|
+
|
76
|
+
ieee-withdrawn: |
|
77
|
+
% has been withdrawn; however, copies can be obtained from Global Engineering, 15 Inverness Way East, Englewood, CO 80112-5704, USA, tel. (303) 792-2181 (http://global.ihs.com/).
|
@@ -17,10 +17,19 @@
|
|
17
17
|
these elements; we just want one namespace for any child grammars
|
18
18
|
of this.
|
19
19
|
-->
|
20
|
-
<!-- VERSION v1.2.
|
20
|
+
<!-- VERSION v1.2.12 -->
|
21
21
|
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
22
22
|
<include href="reqt.rng"/>
|
23
23
|
<include href="basicdoc.rng">
|
24
|
+
<define name="amend">
|
25
|
+
<element name="amend">
|
26
|
+
<ref name="BlockAttributes"/>
|
27
|
+
<ref name="AmendType"/>
|
28
|
+
<zeroOrMore>
|
29
|
+
<ref name="autonumber"/>
|
30
|
+
</zeroOrMore>
|
31
|
+
</element>
|
32
|
+
</define>
|
24
33
|
<define name="admonition">
|
25
34
|
<element name="admonition">
|
26
35
|
<attribute name="type">
|
@@ -2319,69 +2328,6 @@
|
|
2319
2328
|
<ref name="CitationType"/>
|
2320
2329
|
</element>
|
2321
2330
|
</define>
|
2322
|
-
<define name="amend">
|
2323
|
-
<element name="amend">
|
2324
|
-
<optional>
|
2325
|
-
<attribute name="id">
|
2326
|
-
<data type="ID"/>
|
2327
|
-
</attribute>
|
2328
|
-
</optional>
|
2329
|
-
<attribute name="change">
|
2330
|
-
<choice>
|
2331
|
-
<value>add</value>
|
2332
|
-
<value>modify</value>
|
2333
|
-
<value>delete</value>
|
2334
|
-
<value>replace</value>
|
2335
|
-
</choice>
|
2336
|
-
</attribute>
|
2337
|
-
<optional>
|
2338
|
-
<attribute name="path"/>
|
2339
|
-
</optional>
|
2340
|
-
<optional>
|
2341
|
-
<attribute name="path_end"/>
|
2342
|
-
</optional>
|
2343
|
-
<optional>
|
2344
|
-
<attribute name="title"/>
|
2345
|
-
</optional>
|
2346
|
-
<ref name="BlockAttributes"/>
|
2347
|
-
<optional>
|
2348
|
-
<element name="location">
|
2349
|
-
<zeroOrMore>
|
2350
|
-
<ref name="locality"/>
|
2351
|
-
</zeroOrMore>
|
2352
|
-
</element>
|
2353
|
-
</optional>
|
2354
|
-
<zeroOrMore>
|
2355
|
-
<ref name="autonumber"/>
|
2356
|
-
</zeroOrMore>
|
2357
|
-
<optional>
|
2358
|
-
<element name="description">
|
2359
|
-
<zeroOrMore>
|
2360
|
-
<ref name="BasicBlock"/>
|
2361
|
-
</zeroOrMore>
|
2362
|
-
</element>
|
2363
|
-
</optional>
|
2364
|
-
<optional>
|
2365
|
-
<element name="newcontent">
|
2366
|
-
<optional>
|
2367
|
-
<attribute name="id">
|
2368
|
-
<data type="ID"/>
|
2369
|
-
</attribute>
|
2370
|
-
</optional>
|
2371
|
-
<zeroOrMore>
|
2372
|
-
<ref name="BasicBlock"/>
|
2373
|
-
</zeroOrMore>
|
2374
|
-
</element>
|
2375
|
-
</optional>
|
2376
|
-
<optional>
|
2377
|
-
<element name="description">
|
2378
|
-
<zeroOrMore>
|
2379
|
-
<ref name="BasicBlock"/>
|
2380
|
-
</zeroOrMore>
|
2381
|
-
</element>
|
2382
|
-
</optional>
|
2383
|
-
</element>
|
2384
|
-
</define>
|
2385
2331
|
<define name="autonumber">
|
2386
2332
|
<element name="autonumber">
|
2387
2333
|
<attribute name="type">
|
data/lib/metanorma/ieee/reqt.rng
CHANGED
@@ -207,20 +207,4 @@
|
|
207
207
|
<value>permission</value>
|
208
208
|
</choice>
|
209
209
|
</define>
|
210
|
-
<define name="classification">
|
211
|
-
<element name="classification">
|
212
|
-
<ref name="classification_tag"/>
|
213
|
-
<ref name="classification_value"/>
|
214
|
-
</element>
|
215
|
-
</define>
|
216
|
-
<define name="classification_tag">
|
217
|
-
<element name="tag">
|
218
|
-
<text/>
|
219
|
-
</element>
|
220
|
-
</define>
|
221
|
-
<define name="classification_value">
|
222
|
-
<element name="value">
|
223
|
-
<text/>
|
224
|
-
</element>
|
225
|
-
</define>
|
226
210
|
</grammar>
|
@@ -149,7 +149,6 @@ module Metanorma
|
|
149
149
|
(xmldoc.xpath("//figure") - xmldoc.xpath("//table//figure"))
|
150
150
|
.each do |f|
|
151
151
|
(i = f.at("./image") and !i["src"]&.start_with?("data:")) or next
|
152
|
-
|
153
152
|
num = xrefs.anchor(f["id"], :label)
|
154
153
|
base = File.basename(i["src"], ".*")
|
155
154
|
base == "#{pref}_fig#{num}" or
|
@@ -170,7 +169,6 @@ module Metanorma
|
|
170
169
|
xmldoc.xpath("//table[.//figure]").each do |t|
|
171
170
|
xmldoc.xpath(".//figure").each do |f|
|
172
171
|
(i = f.at("./image") and !i["src"]&.start_with?("data:")) or next
|
173
|
-
|
174
172
|
num = tablefigurenumber(t, f, xrefs)
|
175
173
|
base = File.basename(i["src"])
|
176
174
|
base == num or
|
data/metanorma-ieee.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.require_paths = ["lib"]
|
26
26
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
27
27
|
|
28
|
-
spec.add_dependency "metanorma-standoc", "~> 2.
|
28
|
+
spec.add_dependency "metanorma-standoc", "~> 2.8.0"
|
29
29
|
spec.add_dependency "mnconvert", "~> 1.20"
|
30
30
|
#spec.add_dependency "pubid-ieee", "~> 0.1.1"
|
31
31
|
#spec.add_dependency "pubid-iso", "~> 0.5.3"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-ieee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-standoc
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.8.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.8.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: mnconvert
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -289,6 +289,7 @@ files:
|
|
289
289
|
- lib/metanorma/ieee/cleanup_ref.rb
|
290
290
|
- lib/metanorma/ieee/converter.rb
|
291
291
|
- lib/metanorma/ieee/front.rb
|
292
|
+
- lib/metanorma/ieee/ieee-footnotes.yaml
|
292
293
|
- lib/metanorma/ieee/ieee.rng
|
293
294
|
- lib/metanorma/ieee/isodoc.rng
|
294
295
|
- lib/metanorma/ieee/processor.rb
|