metanorma-standoc 2.4.1 → 2.4.3

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: 29a338b7e2acb906be1a2f9fb958fec1281991d934cae8f33279605d4c7296e7
4
- data.tar.gz: 104dfd478b186a14b6a7acd276c28785ada074ce3f747839ee30a4620269b74e
3
+ metadata.gz: d0ade5d859084779fe2f7357438926e03e0359adbf528d4db67a1851200f7e45
4
+ data.tar.gz: d17ee40a8d465764b0d7577a0ab69db5d96ab1c4e5c923b77059326d2e52e45c
5
5
  SHA512:
6
- metadata.gz: 94ef91339b3743becae21df403eeb7b9af5910257ba97756c72111ddababda0523d9e6b961aa6eab9737af6c460f4c3c89aecf0af3ecbacbb391aa9e10493af3
7
- data.tar.gz: 0ef86c13ca5bea907b55aa9e9ce98b1447e9c887e388db737855f9d8f55f3db39d20cf34aa526e2c2f0ccf140792cfd6f396b4ba117a1d50f67f28a0dd027442
6
+ metadata.gz: 794db303464ba57e25b5ccb240b794524842fe99a42cf136f7f0ff3d0e77f82eb017676b3a0b9ef491b655ffe42b50d9332d880c4a10c9ca7a705252e62c5199
7
+ data.tar.gz: 6f9f27b816283a7cf27fc3b441cfd9d04a72c7a26da7d66264f3984e391e4ab3f3be384e167e1a813d8bfabcc070d98f162908a5f1a9dd5670dca3614e002873
data/Gemfile CHANGED
@@ -10,3 +10,4 @@ if File.exist? 'Gemfile.devel'
10
10
  eval File.read('Gemfile.devel'), nil, 'Gemfile.devel' # rubocop:disable Security/Eval
11
11
  end
12
12
 
13
+
@@ -168,9 +168,14 @@ module Metanorma
168
168
  Metanorma.versioned(Metanorma, flavour)[-1]::VERSION
169
169
  end
170
170
 
171
- def clean_exit
172
- @log.write("#{@output_dir}#{@filename}.err") unless @novalid
171
+ def schema_version
172
+ f = File.read(File.join(File.dirname(__FILE__), "isodoc.rng"))
173
+ m = / VERSION (v\S+)/.match(f)
174
+ m[1]
175
+ end
173
176
 
177
+ def clean_exit
178
+ @novalid or @log.write("#{@output_dir}#{@filename}.err")
174
179
  @files_to_delete.each { |f| FileUtils.rm f }
175
180
  end
176
181
 
@@ -185,7 +190,8 @@ module Metanorma
185
190
 
186
191
  def makexml1(node)
187
192
  result = ["<?xml version='1.0' encoding='UTF-8'?>",
188
- "<#{xml_root_tag} type='semantic' version='#{version}'>"]
193
+ "<#{xml_root_tag} type='semantic' version='#{version}' " \
194
+ "schema-version='#{schema_version}'>"]
189
195
  result << noko { |ixml| front node, ixml }
190
196
  result << noko { |ixml| middle node, ixml }
191
197
  result << "</#{xml_root_tag}>"
@@ -225,8 +231,7 @@ module Metanorma
225
231
  def metadata_attrs(node)
226
232
  node.attributes.each_with_object([]) do |(k, v), ret|
227
233
  %w(presentation semantic).each do |t|
228
- next unless /^#{t}-metadata-/.match?(k)
229
-
234
+ /^#{t}-metadata-/.match?(k) or next
230
235
  k = k.sub(/^#{t}-metadata-/, "")
231
236
  csv_split(v, ",")&.each do |c|
232
237
  ret << "<#{t}-metadata><#{k}>#{c}</#{k}></#{t}-metadata>"
@@ -31,11 +31,12 @@ module Metanorma
31
31
  obligations_cleanup(xmldoc)
32
32
  para_index_cleanup(xmldoc)
33
33
  block_index_cleanup(xmldoc)
34
- table_cleanup(xmldoc)
34
+ table_cleanup(xmldoc) # feeds: blocksource_cleanup
35
35
  formula_cleanup(xmldoc)
36
36
  form_cleanup(xmldoc)
37
37
  sourcecode_cleanup(xmldoc) # feeds: callout_cleanup
38
38
  figure_cleanup(xmldoc)
39
+ blocksource_cleanup(xmldoc)
39
40
  requirement_cleanup(xmldoc) # feeds: xref_cleanup
40
41
  element_name_cleanup(xmldoc)
41
42
  ref_cleanup(xmldoc) # feeds: bibitem_cleanup
@@ -79,8 +79,7 @@ module Metanorma
79
79
  def single_subfigure_cleanup(xmldoc)
80
80
  xmldoc.xpath("//figure[figure]").each do |e|
81
81
  s = e.xpath("./figure")
82
- return unless s.size == 1
83
-
82
+ s.size == 1 or next
84
83
  s[0].replace(s[0].children)
85
84
  end
86
85
  end
@@ -228,6 +227,13 @@ module Metanorma
228
227
  "Style override set for ordered list")
229
228
  end
230
229
  end
230
+
231
+ def blocksource_cleanup(xmldoc)
232
+ xmldoc.xpath("//figure//termsource | //table//termsource").each do |s|
233
+ s.name = "source"
234
+ s.delete("type")
235
+ end
236
+ end
231
237
  end
232
238
  end
233
239
  end
@@ -42,11 +42,15 @@ module Metanorma
42
42
  outnum = idx
43
43
  seen[content] = outnum
44
44
  end
45
- fnote["reference"] = (outnum - 1 + "a".ord).chr
45
+ fnote["reference"] = table_footnote_number(outnum)
46
46
  fnote["table"] = true
47
47
  [idx, seen]
48
48
  end
49
49
 
50
+ def table_footnote_number(outnum)
51
+ (outnum - 1 + "a".ord).chr
52
+ end
53
+
50
54
  def table_footnote_renumber(xmldoc)
51
55
  xmldoc.xpath("//table | //figure").each do |t|
52
56
  seen = {}
@@ -90,16 +94,28 @@ module Metanorma
90
94
  end
91
95
 
92
96
  def footnote_block_cleanup(xmldoc)
93
- xmldoc.xpath("//footnoteblock").each do |f|
97
+ ids = xmldoc.xpath("//footnoteblock").each_with_object([]) do |f, m|
94
98
  f.name = "fn"
99
+ m << f.text
95
100
  if id = xmldoc.at("//*[@id = '#{f.text}']")
96
- f.children = id.remove.children
97
- else
98
- @log.add("Crossreferences", f,
99
- "Could not resolve footnoteblock:[#{f.text}]")
100
- f.children = "[ERROR]"
101
+ f.children = id.dup.children
102
+ else footnote_block_error(f)
101
103
  end
102
104
  end
105
+ footnote_block_remove(xmldoc, ids)
106
+ end
107
+
108
+ def footnote_block_remove(xmldoc, ids)
109
+ ids.each do |id|
110
+ n = xmldoc.at("//*[@id = '#{id}']") and
111
+ n.remove
112
+ end
113
+ end
114
+
115
+ def footnote_block_error(fnote)
116
+ @log.add("Crossreferences", fnote,
117
+ "Could not resolve footnoteblock:[#{fnote.text}]")
118
+ fnote.children = "[ERROR]"
103
119
  end
104
120
 
105
121
  def footnote_cleanup(xmldoc)
@@ -17,9 +17,9 @@ module Metanorma
17
17
  def asciimath_key(sym)
18
18
  key = sym.dup
19
19
  key.traverse do |n|
20
- if n.name == "math"
20
+ if n.name == "stem" && a = n.at(".//asciimath")
21
21
  n.children = @c.encode(
22
- @c.decode(grkletters(MathML2AsciiMath.m2a(n.to_xml))), :basic
22
+ @c.decode(grkletters(a.text)), :basic
23
23
  )
24
24
  end
25
25
  end
@@ -46,16 +46,30 @@ module Metanorma
46
46
  def table_cleanup(xmldoc)
47
47
  dl1_table_cleanup(xmldoc)
48
48
  dl2_table_cleanup(xmldoc)
49
+ sources_table_cleanup(xmldoc)
49
50
  notes_table_cleanup(xmldoc)
50
51
  header_rows_cleanup(xmldoc)
51
52
  end
52
53
 
54
+ def sources_table_cleanup(xmldoc)
55
+ nomatches = false
56
+ until nomatches
57
+ nomatches = true
58
+ xmldoc.xpath("//table/following-sibling::*[1]" \
59
+ "[self::termsource]").each do |n|
60
+ n.previous_element << n.remove
61
+ nomatches = false
62
+ # will be renamed source from termsource later
63
+ end
64
+ end
65
+ end
66
+
53
67
  # move notes into table
54
68
  def notes_table_cleanup(xmldoc)
55
69
  nomatches = false
56
70
  until nomatches
57
71
  nomatches = true
58
- xmldoc.xpath("//table/following-sibling::*[1]"\
72
+ xmldoc.xpath("//table/following-sibling::*[1]" \
59
73
  "[self::note[not(@keep-separate = 'true')]]").each do |n|
60
74
  n.delete("keep-separate")
61
75
  n.previous_element << n.remove
@@ -27,7 +27,7 @@ module Metanorma
27
27
  end
28
28
 
29
29
  TERMDEF_BLOCKS =
30
- "./p | ./ol | ./dl[not(@metadata = 'true')] | ./ul | ./figure | "\
30
+ "./p | ./ol | ./dl[not(@metadata = 'true')] | ./ul | ./figure | " \
31
31
  "./formula | ./table".freeze
32
32
 
33
33
  def generate_termdefinitions(xmldoc)
@@ -47,7 +47,7 @@ module Metanorma
47
47
  if d.at("./p | ./ol | ./dl | ./ul")
48
48
  d.children = "<verbal-definition>#{d.children}</verbal-definition>"
49
49
  else
50
- d.children = "<non-verbal-representation>"\
50
+ d.children = "<non-verbal-representation>" \
51
51
  "#{d.children}</non-verbal-representation>"
52
52
  end
53
53
  end
@@ -2,7 +2,6 @@ module Metanorma
2
2
  module Standoc
3
3
  module Cleanup
4
4
  def termdef_stem_cleanup(xmldoc)
5
- termdef_stem2admitted(xmldoc)
6
5
  xmldoc.xpath("//term//expression/name[stem]").each do |n|
7
6
  test = n.dup
8
7
  test.at("./stem").remove
@@ -12,25 +11,6 @@ module Metanorma
12
11
  end
13
12
  end
14
13
 
15
- def termdef_stem2admitted(xmldoc)
16
- xmldoc.xpath("//term/p/stem").each do |a|
17
- if initial_formula(a.parent)
18
- parent = a.parent
19
- parent.replace("<admitted>#{term_expr(a.to_xml)}</admitted>")
20
- end
21
- end
22
- xmldoc.xpath("//term/formula").each do |a|
23
- initial_formula(a) and
24
- a.replace("<admitted>#{term_expr(a.children.to_xml)}</admitted>")
25
- end
26
- end
27
-
28
- def initial_formula(elem)
29
- elem.elements.size == 1 && # para contains just stem expression
30
- !elem.at("./preceding-sibling::p | ./preceding-sibling::dl | "\
31
- "./preceding-sibling::ol | ./preceding-sibling::ul")
32
- end
33
-
34
14
  # release termdef tags from surrounding paras
35
15
  def termdef_unnest_cleanup(xmldoc)
36
16
  desgn = "//p/admitted | //p/deprecates | //p/preferred | //p//related"
@@ -136,7 +116,7 @@ module Metanorma
136
116
  def dl_to_designation(dlist)
137
117
  prev = dlist.previous_element
138
118
  unless %w(preferred admitted deprecates related).include? prev&.name
139
- @log.add("AsciiDoc Input", dlist, "Metadata definition list does "\
119
+ @log.add("AsciiDoc Input", dlist, "Metadata definition list does " \
140
120
  "not follow a term designation")
141
121
  return nil
142
122
  end
@@ -86,7 +86,7 @@ module Metanorma
86
86
  basebackend "html"
87
87
  outfilesuffix ".xml"
88
88
  @libdir = File.dirname(self.class::_file || __FILE__)
89
- @c = HTMLEntities.new
89
+ @c = HTMLEntities.new
90
90
  end
91
91
 
92
92
  class << self
@@ -17,6 +17,7 @@
17
17
  these elements; we just want one namespace for any child grammars
18
18
  of this.
19
19
  -->
20
+ <!-- VERSION v1.2.1 -->
20
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">
21
22
  <include href="reqt.rng"/>
22
23
  <include href="basicdoc.rng">
@@ -382,6 +383,9 @@
382
383
  <optional>
383
384
  <ref name="dl"/>
384
385
  </optional>
386
+ <optional>
387
+ <ref name="source"/>
388
+ </optional>
385
389
  </element>
386
390
  </define>
387
391
  <define name="figure">
@@ -404,9 +408,6 @@
404
408
  <attribute name="class"/>
405
409
  </optional>
406
410
  <ref name="BlockAttributes"/>
407
- <optional>
408
- <ref name="source"/>
409
- </optional>
410
411
  <optional>
411
412
  <ref name="tname"/>
412
413
  </optional>
@@ -431,6 +432,20 @@
431
432
  <zeroOrMore>
432
433
  <ref name="note"/>
433
434
  </zeroOrMore>
435
+ <optional>
436
+ <ref name="source"/>
437
+ </optional>
438
+ </element>
439
+ </define>
440
+ <define name="source">
441
+ <element name="source">
442
+ <attribute name="status">
443
+ <ref name="SourceStatusType"/>
444
+ </attribute>
445
+ <ref name="origin"/>
446
+ <optional>
447
+ <ref name="modification"/>
448
+ </optional>
434
449
  </element>
435
450
  </define>
436
451
  <define name="sourcecode">
@@ -1335,15 +1350,19 @@
1335
1350
  </choice>
1336
1351
  </element>
1337
1352
  </define>
1353
+ <define name="Root-Attributes">
1354
+ <attribute name="version"/>
1355
+ <attribute name="schema-version"/>
1356
+ <attribute name="type">
1357
+ <choice>
1358
+ <value>semantic</value>
1359
+ <value>presentation</value>
1360
+ </choice>
1361
+ </attribute>
1362
+ </define>
1338
1363
  <define name="standard-document">
1339
1364
  <element name="standard-document">
1340
- <attribute name="version"/>
1341
- <attribute name="type">
1342
- <choice>
1343
- <value>semantic</value>
1344
- <value>presentation</value>
1345
- </choice>
1346
- </attribute>
1365
+ <ref name="Root-Attributes"/>
1347
1366
  <ref name="bibdata"/>
1348
1367
  <optional>
1349
1368
  <ref name="misccontainer"/>
@@ -2099,10 +2118,7 @@
2099
2118
  <define name="termsource">
2100
2119
  <element name="termsource">
2101
2120
  <attribute name="status">
2102
- <choice>
2103
- <value>identical</value>
2104
- <value>modified</value>
2105
- </choice>
2121
+ <ref name="SourceStatusType"/>
2106
2122
  </attribute>
2107
2123
  <attribute name="type">
2108
2124
  <choice>
@@ -2116,6 +2132,17 @@
2116
2132
  </optional>
2117
2133
  </element>
2118
2134
  </define>
2135
+ <define name="SourceStatusType">
2136
+ <choice>
2137
+ <value>identical</value>
2138
+ <value>modified</value>
2139
+ <value>restyled</value>
2140
+ <value>context-added</value>
2141
+ <value>generalisation</value>
2142
+ <value>specialisation</value>
2143
+ <value>unspecified</value>
2144
+ </choice>
2145
+ </define>
2119
2146
  <define name="origin">
2120
2147
  <element name="origin">
2121
2148
  <choice>
@@ -122,7 +122,7 @@ module Metanorma
122
122
  t.formattedref format: "application/x-isodoc+xml" do |i|
123
123
  i << ref_normalise_no_format(match[:text])
124
124
  end
125
- yr_match = /[:-](?<year>(?:19|20)[0-9][0-9])\b/.match(code[:id])
125
+ yr_match = refitem1yr(code[:id])
126
126
  refitem_render1(match, code, t)
127
127
  /^\d+$|^\(.+\)$/.match?(code[:id]) or
128
128
  docnumber(t, code[:id].sub(/[:-](19|20)[0-9][0-9]$/, ""))
@@ -143,16 +143,17 @@ module Metanorma
143
143
  ((code[:id] && code[:numeric]) || code[:nofetch]) and
144
144
  return { code: nil, match: match, analyse_code: code,
145
145
  hidden: code[:hidden] }
146
- year = refitem1yr(code[:id])
147
146
  { code: code[:id], analyse_code: code, localfile: code[:localfile],
148
- year: year,
147
+ year: (m = refitem1yr(code[:id])) ? m[:year] : nil,
149
148
  title: match[:text], match: match, hidden: code[:hidden],
150
149
  usrlbl: match[:usrlbl], lang: (@lang || :all) }
151
150
  end
152
151
 
153
152
  def refitem1yr(code)
154
- yr_match = /[:-](?<year>(?:19|20)[0-9][0-9])\b/.match(code)
155
- yr_match ? yr_match[:year] : nil
153
+ yr_match = /[:-](?<year>(?:19|20)[0-9][0-9])$/.match(code)
154
+ /[:-](?:19|20)[0-9][0-9].*?[:-](?:19|20)[0-9][0-9]$/.match(code) and
155
+ yr_match = nil
156
+ yr_match
156
157
  end
157
158
 
158
159
  def refitemout(item, xml)
@@ -1,6 +1,7 @@
1
1
  require "metanorma/standoc/utils"
2
2
  require_relative "./validate_section"
3
3
  require_relative "./validate_table"
4
+ require_relative "./validate_xref"
4
5
  require "nokogiri"
5
6
  require "jing"
6
7
  require "iev"
@@ -155,22 +156,6 @@ module Metanorma
155
156
  ret
156
157
  end
157
158
 
158
- def repeat_id_validate1(elem)
159
- if @doc_ids[elem["id"]]
160
- @log.add("Anchors", elem, "Anchor #{elem['id']} has already been " \
161
- "used at line #{@doc_ids[elem['id']]}")
162
- @fatalerror << "Multiple instances of same ID: #{elem['id']}"
163
- end
164
- @doc_ids[elem["id"]] = elem.line
165
- end
166
-
167
- def repeat_id_validate(doc)
168
- @doc_ids = {}
169
- doc.xpath("//*[@id]").each do |x|
170
- repeat_id_validate1(x)
171
- end
172
- end
173
-
174
159
  def schema_validate(doc, schema)
175
160
  Tempfile.open(["tmp", ".xml"], encoding: "UTF-8") do |f|
176
161
  schema_validate1(f, doc, schema)
@@ -214,17 +199,6 @@ module Metanorma
214
199
  doc
215
200
  end
216
201
 
217
- # manually check for xref/@target, xref/@to integrity
218
- def xref_validate(doc)
219
- @doc_xrefs = doc.xpath("//xref/@target | //xref/@to")
220
- .each_with_object({}) do |x, m|
221
- m[x.text] = x
222
- @doc_ids[x.text] and next
223
- @log.add("Anchors", x.parent,
224
- "Crossreference target #{x} is undefined")
225
- end
226
- end
227
-
228
202
  def image_validate(doc)
229
203
  image_exists(doc)
230
204
  png_validate(doc)
@@ -13,10 +13,16 @@ module Metanorma
13
13
  root.xpath("//sourcecode").each do |x|
14
14
  callouts = x.elements.select { |e| e.name == "callout" }
15
15
  annotations = x.elements.select { |e| e.name == "annotation" }
16
- if callouts.size != annotations.size
17
- @log.add("AsciiDoc Input", x,
18
- "mismatch of callouts and annotations")
19
- end
16
+ callouts_error(x, callouts, annotations)
17
+ end
18
+ end
19
+
20
+ def callouts_error(elem, callouts, annotations)
21
+ if callouts.size != annotations.size && !annotations.empty?
22
+ err = "mismatch of callouts (#{callouts.size}) and annotations " \
23
+ "(#{annotations.size})"
24
+ @log.add("AsciiDoc Input", elem, err)
25
+ @fatalerror << err
20
26
  end
21
27
  end
22
28
 
@@ -0,0 +1,32 @@
1
+ module Metanorma
2
+ module Standoc
3
+ module Validate
4
+ def repeat_id_validate1(elem)
5
+ if @doc_ids[elem["id"]]
6
+ @log.add("Anchors", elem, "Anchor #{elem['id']} has already been " \
7
+ "used at line #{@doc_ids[elem['id']]}")
8
+ @fatalerror << "Multiple instances of same ID: #{elem['id']}"
9
+ end
10
+ @doc_ids[elem["id"]] = elem.line
11
+ end
12
+
13
+ def repeat_id_validate(doc)
14
+ @doc_ids = {}
15
+ doc.xpath("//*[@id]").each do |x|
16
+ repeat_id_validate1(x)
17
+ end
18
+ end
19
+
20
+ # manually check for xref/@target, xref/@to integrity
21
+ def xref_validate(doc)
22
+ @doc_xrefs = doc.xpath("//xref/@target | //xref/@to")
23
+ .each_with_object({}) do |x, m|
24
+ m[x.text] = x
25
+ @doc_ids[x.text] and next
26
+ @log.add("Anchors", x.parent,
27
+ "Crossreference target #{x} is undefined")
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -19,6 +19,6 @@ module Metanorma
19
19
  end
20
20
 
21
21
  module Standoc
22
- VERSION = "2.4.1".freeze
22
+ VERSION = "2.4.3".freeze
23
23
  end
24
24
  end
@@ -30,8 +30,8 @@ Gem::Specification.new do |spec|
30
30
 
31
31
  spec.add_dependency "asciidoctor", "~> 2.0.0"
32
32
  spec.add_dependency "iev", "~> 0.3.0"
33
- spec.add_dependency "isodoc", "~> 2.5.0"
34
- spec.add_dependency "metanorma"
33
+ spec.add_dependency "isodoc", "~> 2.5.4"
34
+ spec.add_dependency "metanorma", ">= 1.5.0"
35
35
  spec.add_dependency "metanorma-plugin-datastruct", "~> 0.2.0"
36
36
  spec.add_dependency "metanorma-plugin-lutaml"
37
37
  spec.add_dependency "ruby-jing"
@@ -41,7 +41,7 @@ Gem::Specification.new do |spec|
41
41
  spec.add_dependency "plurimath"
42
42
  spec.add_dependency "pngcheck"
43
43
  spec.add_dependency "relaton-cli", "~> 1.15.0"
44
- spec.add_dependency "relaton-iev", "~> 1.1.0"
44
+ spec.add_dependency "relaton-iev", "~> 1.1.5"
45
45
  spec.add_dependency "unicode2latex", "~> 0.0.1"
46
46
 
47
47
  spec.add_development_dependency "debug"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-standoc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.1
4
+ version: 2.4.3
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-03-27 00:00:00.000000000 Z
11
+ date: 2023-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciidoctor
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 2.5.0
47
+ version: 2.5.4
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 2.5.0
54
+ version: 2.5.4
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: metanorma
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 1.5.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 1.5.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: metanorma-plugin-datastruct
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -184,14 +184,14 @@ dependencies:
184
184
  requirements:
185
185
  - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: 1.1.0
187
+ version: 1.1.5
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: 1.1.0
194
+ version: 1.1.5
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: unicode2latex
197
197
  requirement: !ruby/object:Gem::Requirement
@@ -514,6 +514,7 @@ files:
514
514
  - lib/metanorma/standoc/validate.rb
515
515
  - lib/metanorma/standoc/validate_section.rb
516
516
  - lib/metanorma/standoc/validate_table.rb
517
+ - lib/metanorma/standoc/validate_xref.rb
517
518
  - lib/metanorma/standoc/version.rb
518
519
  - lib/metanorma/standoc/views/datamodel/model_representation.adoc.erb
519
520
  - lib/metanorma/standoc/views/datamodel/plantuml_representation.adoc.erb