metanorma-ietf 3.5.4 → 3.5.6
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/lib/isodoc/ietf/blocks.rb +1 -1
- data/lib/isodoc/ietf/inline.rb +18 -14
- data/lib/isodoc/ietf/rfc_convert.rb +1 -1
- data/lib/isodoc/ietf/terms.rb +1 -1
- data/lib/metanorma/ietf/basicdoc.rng +9 -5
- data/lib/metanorma/ietf/blocks.rb +30 -28
- data/lib/metanorma/ietf/cleanup.rb +5 -6
- data/lib/metanorma/ietf/converter.rb +10 -5
- data/lib/metanorma/ietf/ietf.rng +21 -38
- data/lib/metanorma/ietf/isodoc.rng +147 -5
- data/lib/metanorma/ietf/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e07594b16cbe927db096ae4447a980048b87a44bea7f4494d60bdcc7ecbb03f1
|
4
|
+
data.tar.gz: 40215cb69b6f6a02867defc5e18da7fec36f46e309153c8c27306c739a510cd4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3cde0c691cb4846d23ea5f16072cddf5646769d9265519cb4b166cdd1efb236fa74ebe1d086ced11b48dbeb3cb81c3ee5b3975d7bfa3dfbb0d50e8005ecdde7c
|
7
|
+
data.tar.gz: e28e52df00de22b405e65b4d1f1832380faf21416a11360c5a3dfa44171c203fe01aae08607f7deaf8ba059c7dd2cb6763985ef3bde657f0b914a1fd891920f1
|
data/lib/isodoc/ietf/blocks.rb
CHANGED
data/lib/isodoc/ietf/inline.rb
CHANGED
@@ -3,54 +3,54 @@ module IsoDoc
|
|
3
3
|
class RfcConvert < ::IsoDoc::Convert
|
4
4
|
def em_parse(node, out)
|
5
5
|
out.em do |e|
|
6
|
-
node
|
6
|
+
children_parse(node, e)
|
7
7
|
end
|
8
8
|
end
|
9
9
|
|
10
10
|
def sup_parse(node, out)
|
11
11
|
out.sup do |e|
|
12
|
-
node
|
12
|
+
children_parse(node, e)
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
16
|
def sub_parse(node, out)
|
17
17
|
out.sub do |e|
|
18
|
-
node
|
18
|
+
children_parse(node, e)
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
def tt_parse(node, out)
|
23
23
|
out.tt do |e|
|
24
|
-
node
|
24
|
+
children_parse(node, e)
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
28
|
def strong_parse(node, out)
|
29
29
|
out.strong do |e|
|
30
|
-
node
|
30
|
+
children_parse(node, e)
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
34
|
def bcp14_parse(node, out)
|
35
35
|
out.bcp14 do |e|
|
36
|
-
node
|
36
|
+
children_parse(node, e)
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
40
|
def display_text_parse(node, out)
|
41
|
-
node
|
41
|
+
children_parse(node, out)
|
42
42
|
end
|
43
43
|
|
44
44
|
def strike_parse(node, out)
|
45
|
-
node
|
45
|
+
children_parse(node, out)
|
46
46
|
end
|
47
47
|
|
48
48
|
def smallcap_parse(node, out)
|
49
|
-
node
|
49
|
+
children_parse(node, out)
|
50
50
|
end
|
51
51
|
|
52
52
|
def keyword_parse(node, out)
|
53
|
-
node
|
53
|
+
children_parse(node, out)
|
54
54
|
end
|
55
55
|
|
56
56
|
def text_parse(node, out)
|
@@ -65,8 +65,8 @@ module IsoDoc
|
|
65
65
|
when "MathML"
|
66
66
|
a = node.at(ns("./asciimath"))&.remove
|
67
67
|
a&.children&.text ||
|
68
|
-
|
69
|
-
|
68
|
+
Plurimath::Math
|
69
|
+
.parse(node.children.to_xml, "mathml").to_asciimath
|
70
70
|
else HTMLEntities.new.encode(node.text)
|
71
71
|
end
|
72
72
|
out << "#{@openmathdelim} #{stem} #{@closemathdelim}"
|
@@ -85,7 +85,7 @@ module IsoDoc
|
|
85
85
|
def semx_link_parse(node, out)
|
86
86
|
out.eref **attr_code(target: node["target"],
|
87
87
|
brackets: node["style"]) do |l|
|
88
|
-
node
|
88
|
+
children_parse(node, l)
|
89
89
|
end
|
90
90
|
end
|
91
91
|
|
@@ -183,7 +183,11 @@ module IsoDoc
|
|
183
183
|
end
|
184
184
|
|
185
185
|
def span_parse(node, out)
|
186
|
-
|
186
|
+
if node["class"] == "bcp14"
|
187
|
+
bcp14_parse(node, out)
|
188
|
+
else
|
189
|
+
children_parse(node, out)
|
190
|
+
end
|
187
191
|
end
|
188
192
|
end
|
189
193
|
end
|
@@ -67,7 +67,7 @@ module IsoDoc
|
|
67
67
|
|
68
68
|
def error_parse(node, out)
|
69
69
|
case node.name
|
70
|
-
when "bcp14" then bcp14_parse(node, out)
|
70
|
+
when "bcp14" then bcp14_parse(node, out) # legacy
|
71
71
|
when "concept" then concept_parse(node, out)
|
72
72
|
when "display-text" then display_text_parse(node, out)
|
73
73
|
when "verbal-definition", "non-verbal-representation",
|
data/lib/isodoc/ietf/terms.rb
CHANGED
@@ -127,7 +127,7 @@ module IsoDoc
|
|
127
127
|
origin = elem.at(ns("./origin"))
|
128
128
|
s = termsource_status(elem["status"]) and origin.next = l10n(", #{s}")
|
129
129
|
termsource_add_modification_text(elem.at(ns("./modification")))
|
130
|
-
while elem&.next_element&.name == "
|
130
|
+
while elem&.next_element&.name == "source"
|
131
131
|
elem << "; #{to_xml(elem.next_element.remove.children)}"
|
132
132
|
end
|
133
133
|
end
|
@@ -267,6 +267,10 @@ in a document (e.g. sourcecode annotations)</a:documentation>
|
|
267
267
|
<value>justified</value>
|
268
268
|
</choice>
|
269
269
|
</define>
|
270
|
+
<define name="IdRefType">
|
271
|
+
<a:documentation>Type of cross-references to elements. In BasicDoc, these always point to id { xsd:ID } </a:documentation>
|
272
|
+
<data type="IDREF"/>
|
273
|
+
</define>
|
270
274
|
<define name="RequiredId">
|
271
275
|
<a:documentation>Mandatory anchor of element, to be used for cross-references within the document</a:documentation>
|
272
276
|
<attribute name="id">
|
@@ -409,13 +413,13 @@ in a document (e.g. sourcecode annotations)</a:documentation>
|
|
409
413
|
<attribute name="from">
|
410
414
|
<a:documentation>Identifier for the start of the text or point in the text to which the comment applies.
|
411
415
|
If not provided, the comment applies in the vicinity of the place it has been inserted into the text</a:documentation>
|
412
|
-
<
|
416
|
+
<ref name="IdRefType"/>
|
413
417
|
</attribute>
|
414
418
|
</optional>
|
415
419
|
<optional>
|
416
420
|
<attribute name="to">
|
417
421
|
<a:documentation>Identifier for the end of the text to which the comment applies</a:documentation>
|
418
|
-
<
|
422
|
+
<ref name="IdRefType"/>
|
419
423
|
</attribute>
|
420
424
|
</optional>
|
421
425
|
</define>
|
@@ -1504,7 +1508,7 @@ Restricted recursively to contain only other such inline elements with no identi
|
|
1504
1508
|
<attribute name="to">
|
1505
1509
|
<a:documentation>A reference to an anchor element (typically a bookmark),
|
1506
1510
|
to indicate that the index range covers a range of locations between the current index element and the `to` anchor</a:documentation>
|
1507
|
-
<
|
1511
|
+
<ref name="IdRefType"/>
|
1508
1512
|
</attribute>
|
1509
1513
|
</optional>
|
1510
1514
|
<ref name="index-primary">
|
@@ -1662,7 +1666,7 @@ which can be bookmarks as well as block or section references</a:documentation>
|
|
1662
1666
|
<define name="XrefAttributes">
|
1663
1667
|
<attribute name="target">
|
1664
1668
|
<a:documentation>The identifier of a section, block or inlined element being referenced</a:documentation>
|
1665
|
-
<
|
1669
|
+
<ref name="IdRefType"/>
|
1666
1670
|
</attribute>
|
1667
1671
|
<optional>
|
1668
1672
|
<attribute name="type">
|
@@ -1723,7 +1727,7 @@ The target of a footnote is the location it is embedded in within the text</a:do
|
|
1723
1727
|
<attribute name="target">
|
1724
1728
|
<a:documentation>The target of the callout is understood to be the location of the callout within the source code;
|
1725
1729
|
the extent of the target is not expressed overtly</a:documentation>
|
1726
|
-
<
|
1730
|
+
<ref name="IdRefType"/>
|
1727
1731
|
</attribute>
|
1728
1732
|
<text>
|
1729
1733
|
<a:documentation>The label of the callout, used to identify its target within the source code</a:documentation>
|
@@ -2,36 +2,40 @@ module Metanorma
|
|
2
2
|
module Ietf
|
3
3
|
class Converter < ::Metanorma::Standoc::Converter
|
4
4
|
def para_attrs(node)
|
5
|
-
attr_code(
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
5
|
+
attr_code(id_attr(node).merge(
|
6
|
+
"keep-with-next": node.attr("keepWithNext") ||
|
7
|
+
node.attr("keep-with-next"),
|
8
|
+
"keep-with-previous": node.attr("keepWithPrevious") ||
|
9
|
+
node.attr("keep-with-previous"),
|
10
|
+
indent: node.attr("indent"),
|
11
|
+
))
|
11
12
|
end
|
12
13
|
|
13
14
|
def ul_attrs(node)
|
14
|
-
attr_code(
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
attr_code(id_attr(node).merge(
|
16
|
+
nobullet: node.attr("nobullet") || node.attr("empty"),
|
17
|
+
indent: node.attr("indent"),
|
18
|
+
bare: node.attr("bare"),
|
19
|
+
spacing: node.attr("spacing"),
|
20
|
+
))
|
19
21
|
end
|
20
22
|
|
21
23
|
def ol_attrs(node)
|
22
|
-
attr_code(
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
24
|
+
attr_code(id_attr(node).merge(
|
25
|
+
type: node.attr("format") || olist_style(node.style),
|
26
|
+
group: node.attr("group"),
|
27
|
+
spacing: node.attr("spacing"),
|
28
|
+
indent: node.attr("indent"),
|
29
|
+
start: node.attr("start"),
|
30
|
+
))
|
28
31
|
end
|
29
32
|
|
30
33
|
def dl_attrs(node)
|
31
|
-
attr_code(
|
32
|
-
|
33
|
-
|
34
|
-
|
34
|
+
attr_code(id_attr(node).merge(
|
35
|
+
newline: node.attr("newline"),
|
36
|
+
indent: node.attr("indent"),
|
37
|
+
spacing: node.attr("spacing"),
|
38
|
+
))
|
35
39
|
end
|
36
40
|
|
37
41
|
def todo_attrs(node)
|
@@ -39,8 +43,7 @@ module Metanorma
|
|
39
43
|
end
|
40
44
|
|
41
45
|
def sidebar(node)
|
42
|
-
|
43
|
-
|
46
|
+
draft? or return
|
44
47
|
noko do |xml|
|
45
48
|
xml.review **sidebar_attrs(node) do |r|
|
46
49
|
node.title.nil? or r.name { |name| name << node.title }
|
@@ -51,8 +54,9 @@ module Metanorma
|
|
51
54
|
|
52
55
|
def note(node)
|
53
56
|
noko do |xml|
|
54
|
-
xml.note **attr_code(
|
55
|
-
|
57
|
+
xml.note **attr_code(id_attr(node).merge(
|
58
|
+
removeInRFC: node.attr("remove-in-rfc"),
|
59
|
+
)) do |c|
|
56
60
|
node.title.nil? or c.name { |name| name << node.title }
|
57
61
|
wrap_in_para(node, c)
|
58
62
|
end
|
@@ -64,9 +68,7 @@ module Metanorma
|
|
64
68
|
xml.figure **literal_attrs(node) do |f|
|
65
69
|
figure_title(node, f)
|
66
70
|
f.pre node.lines.join("\n"),
|
67
|
-
**attr_code(align: node.attr("align"),
|
68
|
-
id: ::Metanorma::Utils::anchor_or_uuid(nil),
|
69
|
-
alt: node.attr("alt"))
|
71
|
+
**attr_code(align: node.attr("align"), alt: node.attr("alt"))
|
70
72
|
end
|
71
73
|
end
|
72
74
|
end
|
@@ -26,7 +26,7 @@ module Metanorma
|
|
26
26
|
|
27
27
|
def cref_cleanup(xmldoc)
|
28
28
|
xmldoc.xpath("//crefref").each do |r|
|
29
|
-
if c = xmldoc.at("//review[@
|
29
|
+
if c = xmldoc.at("//review[@anchor = '#{r.text}']")
|
30
30
|
id = "_#{UUIDTools::UUID.random_create}"
|
31
31
|
c["from"] = id
|
32
32
|
c["to"] = id
|
@@ -43,12 +43,11 @@ module Metanorma
|
|
43
43
|
"NOT RECOMMENDED", "OPTIONAL"].freeze
|
44
44
|
|
45
45
|
def bcp14_cleanup(xmldoc)
|
46
|
-
|
47
|
-
|
46
|
+
@bcp_bold or return
|
48
47
|
xmldoc.xpath("//strong").each do |s|
|
49
|
-
|
50
|
-
|
51
|
-
s.name = "
|
48
|
+
BCP_KEYWORDS.include?(s.text) or next
|
49
|
+
s["class"] = "bcp14"
|
50
|
+
s.name = "span"
|
52
51
|
end
|
53
52
|
end
|
54
53
|
|
@@ -56,14 +56,19 @@ module Metanorma
|
|
56
56
|
when :latexmath then stem_parse(node.text, xml, :latexmath, node)
|
57
57
|
else
|
58
58
|
case node.role
|
59
|
-
when "bcp14" then
|
60
|
-
else
|
61
|
-
xml << node.text
|
59
|
+
when "bcp14" then bcp14(node, xml)
|
60
|
+
else xml << node.text
|
62
61
|
end
|
63
62
|
end
|
64
63
|
end
|
65
64
|
end
|
66
65
|
|
66
|
+
def bcp14(node, xml)
|
67
|
+
xml.span **{ class: "bcp14" } do |s|
|
68
|
+
s << node.text.upcase
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
67
72
|
def inline_anchor_xref(node)
|
68
73
|
f, c = xref_text(node)
|
69
74
|
f1, c = eref_text(node) if f.nil?
|
@@ -119,14 +124,14 @@ module Metanorma
|
|
119
124
|
|
120
125
|
def norm_ref_preface(sect); end
|
121
126
|
|
122
|
-
def
|
127
|
+
def clause_attrs_preprocess(attrs, node)
|
123
128
|
attrs[:numbered] = node.attr("numbered")
|
124
129
|
attrs[:removeInRFC] = node.attr("removeInRFC")
|
125
130
|
attrs[:toc] = node.attr("toc")
|
126
131
|
super
|
127
132
|
end
|
128
133
|
|
129
|
-
def
|
134
|
+
def annex_attrs_preprocess(attrs, node)
|
130
135
|
attrs[:numbered] = node.attr("numbered")
|
131
136
|
attrs[:removeInRFC] = node.attr("removeInRFC")
|
132
137
|
attrs[:toc] = node.attr("toc")
|
data/lib/metanorma/ietf/ietf.rng
CHANGED
@@ -100,11 +100,6 @@
|
|
100
100
|
<ref name="note"/>
|
101
101
|
</zeroOrMore>
|
102
102
|
</define>
|
103
|
-
<define name="ReviewAttributes" combine="interleave">
|
104
|
-
<optional>
|
105
|
-
<attribute name="display"/>
|
106
|
-
</optional>
|
107
|
-
</define>
|
108
103
|
<define name="NoteAttributes">
|
109
104
|
<optional>
|
110
105
|
<attribute name="removeInRFC"/>
|
@@ -126,19 +121,6 @@
|
|
126
121
|
<attribute name="align"/>
|
127
122
|
</optional>
|
128
123
|
</define>
|
129
|
-
<define name="ImageAttributes" combine="interleave">
|
130
|
-
<optional>
|
131
|
-
<attribute name="align"/>
|
132
|
-
</optional>
|
133
|
-
</define>
|
134
|
-
<define name="SourceAttributes" combine="interleave">
|
135
|
-
<optional>
|
136
|
-
<attribute name="number"/>
|
137
|
-
</optional>
|
138
|
-
<optional>
|
139
|
-
<attribute name="markers"/>
|
140
|
-
</optional>
|
141
|
-
</define>
|
142
124
|
<define name="xref">
|
143
125
|
<element name="xref">
|
144
126
|
<attribute name="target">
|
@@ -185,17 +167,6 @@
|
|
185
167
|
<ref name="erefTypeURI"/>
|
186
168
|
</element>
|
187
169
|
</define>
|
188
|
-
<define name="TableAttributes" combine="interleave">
|
189
|
-
<optional>
|
190
|
-
<attribute name="number"/>
|
191
|
-
</optional>
|
192
|
-
<optional>
|
193
|
-
<attribute name="align"/>
|
194
|
-
</optional>
|
195
|
-
<optional>
|
196
|
-
<attribute name="width"/>
|
197
|
-
</optional>
|
198
|
-
</define>
|
199
170
|
<define name="Clause-Section">
|
200
171
|
<ref name="Section-Attributes"/>
|
201
172
|
<optional>
|
@@ -288,18 +259,30 @@
|
|
288
259
|
<ref name="index-tertiary"/>
|
289
260
|
</element>
|
290
261
|
</define>
|
262
|
+
<define name="TextElement" combine="choice">
|
263
|
+
<ref name="review"/>
|
264
|
+
</define>
|
291
265
|
</include>
|
292
266
|
<!-- end overrides -->
|
293
|
-
<define name="
|
294
|
-
<
|
295
|
-
<
|
296
|
-
|
297
|
-
</choice>
|
267
|
+
<define name="ReviewAttributes" combine="interleave">
|
268
|
+
<optional>
|
269
|
+
<attribute name="display"/>
|
270
|
+
</optional>
|
298
271
|
</define>
|
299
|
-
<define name="
|
300
|
-
<
|
301
|
-
<
|
302
|
-
</
|
272
|
+
<define name="ImageAttributes" combine="interleave">
|
273
|
+
<optional>
|
274
|
+
<attribute name="align"/>
|
275
|
+
</optional>
|
276
|
+
</define>
|
277
|
+
<define name="SourceAttributes" combine="interleave">
|
278
|
+
<optional>
|
279
|
+
<attribute name="markers"/>
|
280
|
+
</optional>
|
281
|
+
</define>
|
282
|
+
<define name="TableAttributes" combine="interleave">
|
283
|
+
<optional>
|
284
|
+
<attribute name="align"/>
|
285
|
+
</optional>
|
303
286
|
</define>
|
304
287
|
<define name="erefTypeURI">
|
305
288
|
<optional>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<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">
|
3
|
-
<!-- VERSION v2.0.
|
3
|
+
<!-- VERSION v2.0.5 -->
|
4
4
|
|
5
5
|
<!--
|
6
6
|
ALERT: cannot have root comments, because of https://github.com/metanorma/metanorma/issues/437
|
@@ -36,6 +36,12 @@
|
|
36
36
|
</zeroOrMore>
|
37
37
|
</element>
|
38
38
|
</define>
|
39
|
+
<define name="IdRefType">
|
40
|
+
<a:documentation>Cross-references are not normalised to xsd:IDREF in Semantic XML: that is deferred to Presentation XML.
|
41
|
+
All IdRefType instances point not to `@id` in Semantic XML, which is the Content GUID for an element,
|
42
|
+
but to `@anchor`, the user-supplied cross-reference</a:documentation>
|
43
|
+
<text/>
|
44
|
+
</define>
|
39
45
|
<define name="index-primary">
|
40
46
|
<element name="primary">
|
41
47
|
<oneOrMore>
|
@@ -238,7 +244,7 @@
|
|
238
244
|
<a:documentation>Notes specific to this block</a:documentation>
|
239
245
|
</ref>
|
240
246
|
</zeroOrMore>
|
241
|
-
<ref name="
|
247
|
+
<ref name="BlockSource">
|
242
248
|
<a:documentation>A source for the table</a:documentation>
|
243
249
|
</ref>
|
244
250
|
</define>
|
@@ -262,10 +268,112 @@ and is intended to be referenced by a callout within the source code</a:document
|
|
262
268
|
<a:documentation>Notes whose scope is the current block</a:documentation>
|
263
269
|
</ref>
|
264
270
|
</zeroOrMore>
|
265
|
-
<ref name="
|
271
|
+
<ref name="BlockSource">
|
272
|
+
<a:documentation>A source for the block</a:documentation>
|
273
|
+
</ref>
|
274
|
+
</define>
|
275
|
+
<define name="FigureBody">
|
276
|
+
<optional>
|
277
|
+
<ref name="tname">
|
278
|
+
<a:documentation>The caption of the block</a:documentation>
|
279
|
+
</ref>
|
280
|
+
</optional>
|
281
|
+
<choice>
|
282
|
+
<a:documentation>Content of the figure</a:documentation>
|
283
|
+
<ref name="image"/>
|
284
|
+
<ref name="video"/>
|
285
|
+
<ref name="audio"/>
|
286
|
+
<ref name="pre"/>
|
287
|
+
<oneOrMore>
|
288
|
+
<ref name="paragraph-with-footnote"/>
|
289
|
+
</oneOrMore>
|
290
|
+
<zeroOrMore>
|
291
|
+
<ref name="figure"/>
|
292
|
+
</zeroOrMore>
|
293
|
+
</choice>
|
294
|
+
<zeroOrMore>
|
295
|
+
<ref name="fn">
|
296
|
+
<a:documentation>Footnotes specific to the figure</a:documentation>
|
297
|
+
</ref>
|
298
|
+
</zeroOrMore>
|
299
|
+
<optional>
|
300
|
+
<ref name="dl">
|
301
|
+
<a:documentation>An optional definitions list defining any symbols used in the figure</a:documentation>
|
302
|
+
</ref>
|
303
|
+
</optional>
|
304
|
+
<zeroOrMore>
|
305
|
+
<ref name="note">
|
306
|
+
<a:documentation>Notes whose scope is the current block</a:documentation>
|
307
|
+
</ref>
|
308
|
+
</zeroOrMore>
|
309
|
+
<ref name="BlockSource">
|
266
310
|
<a:documentation>A source for the block</a:documentation>
|
267
311
|
</ref>
|
268
312
|
</define>
|
313
|
+
<define name="FigureNoIdBody">
|
314
|
+
<optional>
|
315
|
+
<ref name="source">
|
316
|
+
<a:documentation>A URI or other reference intended to link to an externally hosted image (or equivalent)</a:documentation>
|
317
|
+
</ref>
|
318
|
+
</optional>
|
319
|
+
<optional>
|
320
|
+
<ref name="tname">
|
321
|
+
<a:documentation>The caption of the block</a:documentation>
|
322
|
+
</ref>
|
323
|
+
</optional>
|
324
|
+
<choice>
|
325
|
+
<a:documentation>Content of the figure</a:documentation>
|
326
|
+
<ref name="image-no-id"/>
|
327
|
+
<ref name="video-no-id"/>
|
328
|
+
<ref name="audio-no-id"/>
|
329
|
+
<ref name="pre-no-id"/>
|
330
|
+
<oneOrMore>
|
331
|
+
<ref name="paragraph-with-footnote-no-id"/>
|
332
|
+
</oneOrMore>
|
333
|
+
<zeroOrMore>
|
334
|
+
<ref name="figure-no-id"/>
|
335
|
+
</zeroOrMore>
|
336
|
+
</choice>
|
337
|
+
<zeroOrMore>
|
338
|
+
<ref name="fn">
|
339
|
+
<a:documentation>Footnotes specific to the figure</a:documentation>
|
340
|
+
</ref>
|
341
|
+
</zeroOrMore>
|
342
|
+
<optional>
|
343
|
+
<ref name="dl-no-id">
|
344
|
+
<a:documentation>An optional definitions list defining any symbols used in the figure</a:documentation>
|
345
|
+
</ref>
|
346
|
+
</optional>
|
347
|
+
<zeroOrMore>
|
348
|
+
<ref name="note-no-id">
|
349
|
+
<a:documentation>Notes whose scope is the current block</a:documentation>
|
350
|
+
</ref>
|
351
|
+
</zeroOrMore>
|
352
|
+
<ref name="BlockSource">
|
353
|
+
<a:documentation>A source for the block</a:documentation>
|
354
|
+
</ref>
|
355
|
+
</define>
|
356
|
+
<define name="source">
|
357
|
+
<element name="source">
|
358
|
+
<attribute name="status">
|
359
|
+
<a:documentation>The status of the term as it is used in this document, relative to its definition in the original document</a:documentation>
|
360
|
+
<ref name="SourceStatusType"/>
|
361
|
+
</attribute>
|
362
|
+
<attribute name="type">
|
363
|
+
<a:documentation>The type of the managed term in the present context</a:documentation>
|
364
|
+
<ref name="SourceTypeType"/>
|
365
|
+
</attribute>
|
366
|
+
<ref name="origin">
|
367
|
+
<a:documentation>The original document and location where the term definition has been obtained from</a:documentation>
|
368
|
+
</ref>
|
369
|
+
<optional>
|
370
|
+
<ref name="modification">
|
371
|
+
<a:documentation>Any changes that the definition of the term has undergone relative to the original document,
|
372
|
+
in order to be applicable in this standardisation document</a:documentation>
|
373
|
+
</ref>
|
374
|
+
</optional>
|
375
|
+
</element>
|
376
|
+
</define>
|
269
377
|
<define name="sourcecodebody">
|
270
378
|
<a:documentation>The computer code or other such text presented in the block, as a single unformatted string.
|
271
379
|
(The string should be treated as pre-formatted text, with whitespace treated as significant)</a:documentation>
|
@@ -687,6 +795,20 @@ titlecase, or lowercase</a:documentation>
|
|
687
795
|
</attribute>
|
688
796
|
</optional>
|
689
797
|
</define>
|
798
|
+
<define name="RequiredId" combine="interleave">
|
799
|
+
<optional>
|
800
|
+
<attribute name="anchor">
|
801
|
+
<a:documentation>User-supplied anchor of element; replaced by content-based id, with all references to the anchor updated accordingly</a:documentation>
|
802
|
+
</attribute>
|
803
|
+
</optional>
|
804
|
+
</define>
|
805
|
+
<define name="OptionalId" combine="interleave">
|
806
|
+
<optional>
|
807
|
+
<attribute name="anchor">
|
808
|
+
<a:documentation> User-supplied anchor of element; replaced by content-based id, with all references to the anchor updated accordingly</a:documentation>
|
809
|
+
</attribute>
|
810
|
+
</optional>
|
811
|
+
</define>
|
690
812
|
<define name="ObligationType">
|
691
813
|
<a:documentation>The force of a clause in a standard document: whether it has normative or informative effect</a:documentation>
|
692
814
|
<choice>
|
@@ -1081,7 +1203,7 @@ That concept may be defined as a term within the current document, or it may be
|
|
1081
1203
|
<element name="label">
|
1082
1204
|
<!-- Identifier of form input element that this element is a label of -->
|
1083
1205
|
<attribute name="for">
|
1084
|
-
<
|
1206
|
+
<ref name="IdRefType"/>
|
1085
1207
|
</attribute>
|
1086
1208
|
<zeroOrMore>
|
1087
1209
|
<ref name="PureTextElement"/>
|
@@ -1328,6 +1450,7 @@ numbers</a:documentation>
|
|
1328
1450
|
<ref name="foreword"/>
|
1329
1451
|
<ref name="introduction"/>
|
1330
1452
|
<ref name="acknowledgements"/>
|
1453
|
+
<ref name="executivesummary"/>
|
1331
1454
|
</choice>
|
1332
1455
|
</oneOrMore>
|
1333
1456
|
</element>
|
@@ -1351,6 +1474,11 @@ numbers</a:documentation>
|
|
1351
1474
|
<ref name="Content-Section"/>
|
1352
1475
|
</element>
|
1353
1476
|
</define>
|
1477
|
+
<define name="executivesummary">
|
1478
|
+
<element name="executivesummary">
|
1479
|
+
<ref name="Content-Section"/>
|
1480
|
+
</element>
|
1481
|
+
</define>
|
1354
1482
|
<define name="indexsect">
|
1355
1483
|
<element name="indexsect">
|
1356
1484
|
<ref name="Content-Section"/>
|
@@ -1576,6 +1704,15 @@ used in document amendments</a:documentation>
|
|
1576
1704
|
<define name="annex">
|
1577
1705
|
<element name="annex">
|
1578
1706
|
<ref name="Annex-Section"/>
|
1707
|
+
<zeroOrMore>
|
1708
|
+
<ref name="annex-appendix"/>
|
1709
|
+
</zeroOrMore>
|
1710
|
+
</element>
|
1711
|
+
</define>
|
1712
|
+
<define name="annex-appendix">
|
1713
|
+
<a:documentation>Appendix, distinct subclause type for annexes (annex to annex, rather than subclause to annex)</a:documentation>
|
1714
|
+
<element name="appendix">
|
1715
|
+
<ref name="Clause-Section"/>
|
1579
1716
|
</element>
|
1580
1717
|
</define>
|
1581
1718
|
<define name="terms">
|
@@ -2106,7 +2243,7 @@ used in document amendments</a:documentation>
|
|
2106
2243
|
</define>
|
2107
2244
|
<define name="termsource">
|
2108
2245
|
<a:documentation>The bibliographic source where a term is defined in the sense applicable in this standardisation document</a:documentation>
|
2109
|
-
<element name="
|
2246
|
+
<element name="source">
|
2110
2247
|
<attribute name="status">
|
2111
2248
|
<a:documentation>The status of the term as it is used in this document, relative to its definition in the original document</a:documentation>
|
2112
2249
|
<ref name="SourceStatusType"/>
|
@@ -2488,6 +2625,11 @@ Normative References contents contain normative references, but as a clause in t
|
|
2488
2625
|
<ref name="termsource"/>
|
2489
2626
|
</zeroOrMore>
|
2490
2627
|
</define>
|
2628
|
+
<define name="BlockSource">
|
2629
|
+
<zeroOrMore>
|
2630
|
+
<ref name="source"/>
|
2631
|
+
</zeroOrMore>
|
2632
|
+
</define>
|
2491
2633
|
<start>
|
2492
2634
|
<ref name="standard-document"/>
|
2493
2635
|
</start>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-ietf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.5.
|
4
|
+
version: 3.5.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-05-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-ietf-data
|