metanorma-un 0.8.8 → 0.9.0

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.
@@ -4,21 +4,25 @@ module IsoDoc
4
4
  module UN
5
5
  class Xref < IsoDoc::Xref
6
6
  def initial_anchor_names(doc)
7
- preface_names(doc.at(ns("//preface/abstract")))
8
- preface_names(doc.at(ns("//foreword")))
9
- preface_names(doc.at(ns("//introduction")))
10
- doc.xpath(ns("//preface/clause")).each do |c|
11
- preface_names(c)
7
+ if @parse_settings.empty? || @parse_settings[:clauses]
8
+ preface_names(doc.at(ns("//preface/abstract")))
9
+ preface_names(doc.at(ns("//foreword")))
10
+ preface_names(doc.at(ns("//introduction")))
11
+ doc.xpath(ns("//preface/clause")).each do |c|
12
+ preface_names(c)
13
+ end
14
+ preface_names(doc.at(ns("//acknowledgements")))
15
+ clause_names(doc, 0)
16
+ end
17
+ if @parse_settings.empty?
18
+ sequential_asset_names(
19
+ doc.xpath(ns("//preface/abstract | //foreword | //introduction | "\
20
+ "//preface/clause | //acknowledgements")),
21
+ )
22
+ middle_section_asset_names(doc)
23
+ termnote_anchor_names(doc)
24
+ termexample_anchor_names(doc)
12
25
  end
13
- preface_names(doc.at(ns("//acknowledgements")))
14
- sequential_asset_names(
15
- doc.xpath(ns("//preface/abstract | //foreword | //introduction | "\
16
- "//preface/clause | //acknowledgements")),
17
- )
18
- middle_section_asset_names(doc)
19
- clause_names(doc, 0)
20
- termnote_anchor_names(doc)
21
- termexample_anchor_names(doc)
22
26
  end
23
27
 
24
28
  def clause_names(docxml, _sect_num)
@@ -122,8 +126,9 @@ module IsoDoc
122
126
  leaf_section?(clause) and
123
127
  label_annex_leaf_section(clause, num, 1) and return
124
128
  @anchors[clause["id"]] = annex_name_anchors(clause, num)
125
- if a = single_annex_special_section(clause)
126
- annex_names1(a, num.to_s, 1)
129
+ if @klass.single_term_clause?(clause)
130
+ annex_names1(clause.at(ns("./references | ./terms | ./definitions")),
131
+ num.to_s, 1)
127
132
  else
128
133
  i = 1
129
134
  clause.xpath(ns(SUBCLAUSES)).each do |c|
@@ -851,17 +851,46 @@
851
851
  </define>
852
852
  <define name="bplace">
853
853
  <element name="place">
854
- <optional>
855
- <attribute name="uri">
856
- <data type="anyURI"/>
857
- </attribute>
858
- </optional>
859
- <optional>
860
- <attribute name="region"/>
861
- </optional>
854
+ <choice>
855
+ <text/>
856
+ <group>
857
+ <ref name="bibliocity"/>
858
+ <zeroOrMore>
859
+ <ref name="biblioregion"/>
860
+ </zeroOrMore>
861
+ <zeroOrMore>
862
+ <ref name="bibliocountry"/>
863
+ </zeroOrMore>
864
+ </group>
865
+ </choice>
866
+ </element>
867
+ </define>
868
+ <define name="bibliocity">
869
+ <element name="city">
862
870
  <text/>
863
871
  </element>
864
872
  </define>
873
+ <define name="biblioregion">
874
+ <element name="region">
875
+ <ref name="RegionType"/>
876
+ </element>
877
+ </define>
878
+ <define name="bibliocountry">
879
+ <element name="country">
880
+ <ref name="RegionType"/>
881
+ </element>
882
+ </define>
883
+ <define name="RegionType">
884
+ <optional>
885
+ <attribute name="iso"/>
886
+ </optional>
887
+ <optional>
888
+ <attribute name="recommended">
889
+ <data type="boolean"/>
890
+ </attribute>
891
+ </optional>
892
+ <text/>
893
+ </define>
865
894
  <define name="bprice">
866
895
  <element name="price">
867
896
  <attribute name="currency"/>
@@ -126,13 +126,13 @@ module Metanorma
126
126
  end
127
127
 
128
128
  def outputs(node, ret)
129
- File.open(@filename + ".xml", "w:UTF-8") { |f| f.write(ret) }
130
- presentation_xml_converter(node).convert(@filename + ".xml")
131
- html_converter(node).convert(@filename + ".presentation.xml",
129
+ File.open("#{@filename}.xml", "w:UTF-8") { |f| f.write(ret) }
130
+ presentation_xml_converter(node).convert("#{@filename}.xml")
131
+ html_converter(node).convert("#{@filename}.presentation.xml",
132
132
  nil, false, "#{@filename}.html")
133
- doc_converter(node).convert(@filename + ".presentation.xml",
133
+ doc_converter(node).convert("#{@filename}.presentation.xml",
134
134
  nil, false, "#{@filename}.doc")
135
- pdf_converter(node)&.convert(@filename + ".presentation.xml",
135
+ pdf_converter(node)&.convert("#{@filename}.presentation.xml",
136
136
  nil, false, "#{@filename}.pdf")
137
137
  end
138
138
 
@@ -32,6 +32,43 @@
32
32
  <ref name="DocumentType"/>
33
33
  </element>
34
34
  </define>
35
+ <define name="admonition">
36
+ <element name="admonition">
37
+ <attribute name="type">
38
+ <ref name="AdmonitionType"/>
39
+ </attribute>
40
+ <optional>
41
+ <attribute name="class"/>
42
+ </optional>
43
+ <attribute name="id">
44
+ <data type="ID"/>
45
+ </attribute>
46
+ <optional>
47
+ <attribute name="uri">
48
+ <data type="anyURI"/>
49
+ </attribute>
50
+ </optional>
51
+ <optional>
52
+ <attribute name="coverpage">
53
+ <data type="boolean"/>
54
+ </attribute>
55
+ </optional>
56
+ <optional>
57
+ <attribute name="notag">
58
+ <data type="boolean"/>
59
+ </attribute>
60
+ </optional>
61
+ <optional>
62
+ <ref name="tname"/>
63
+ </optional>
64
+ <zeroOrMore>
65
+ <ref name="paragraph-with-footnote"/>
66
+ </zeroOrMore>
67
+ <zeroOrMore>
68
+ <ref name="note"/>
69
+ </zeroOrMore>
70
+ </element>
71
+ </define>
35
72
  <define name="index">
36
73
  <element name="index">
37
74
  <optional>
@@ -851,6 +888,16 @@
851
888
  <ref name="MultilingualRenderingType"/>
852
889
  </attribute>
853
890
  </optional>
891
+ <optional>
892
+ <attribute name="coverpage">
893
+ <data type="boolean"/>
894
+ </attribute>
895
+ </optional>
896
+ <optional>
897
+ <attribute name="notag">
898
+ <data type="boolean"/>
899
+ </attribute>
900
+ </optional>
854
901
  <oneOrMore>
855
902
  <choice>
856
903
  <ref name="paragraph"/>
@@ -1178,6 +1225,7 @@
1178
1225
  <ref name="concept"/>
1179
1226
  <ref name="add"/>
1180
1227
  <ref name="del"/>
1228
+ <ref name="span"/>
1181
1229
  </choice>
1182
1230
  </define>
1183
1231
  <define name="add">
@@ -1204,6 +1252,14 @@
1204
1252
  </choice>
1205
1253
  </element>
1206
1254
  </define>
1255
+ <define name="span">
1256
+ <element name="span">
1257
+ <attribute name="class"/>
1258
+ <oneOrMore>
1259
+ <ref name="TextElement"/>
1260
+ </oneOrMore>
1261
+ </element>
1262
+ </define>
1207
1263
  <define name="concept">
1208
1264
  <element name="concept">
1209
1265
  <optional>
@@ -48,6 +48,16 @@
48
48
  <value>safety precautions</value>
49
49
  </choice>
50
50
  </attribute>
51
+ <optional>
52
+ <attribute name="coverpage">
53
+ <data type="boolean"/>
54
+ </attribute>
55
+ </optional>
56
+ <optional>
57
+ <attribute name="notag">
58
+ <data type="boolean"/>
59
+ </attribute>
60
+ </optional>
51
61
  <optional>
52
62
  <ref name="tname"/>
53
63
  </optional>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module UN
3
- VERSION = "0.8.8".freeze
3
+ VERSION = "0.9.0".freeze
4
4
  end
5
5
  end
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.add_dependency "roman-numerals"
31
31
  spec.add_dependency "twitter_cldr"
32
32
 
33
- spec.add_dependency "metanorma-standoc", "~> 2.0.0"
33
+ spec.add_dependency "metanorma-standoc", "~> 2.1.0"
34
34
 
35
35
  spec.add_development_dependency "debug"
36
36
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-un
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.8
4
+ version: 0.9.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: 2022-04-18 00:00:00.000000000 Z
11
+ date: 2022-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iso-639
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 2.0.0
61
+ version: 2.1.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: 2.0.0
68
+ version: 2.1.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: debug
71
71
  requirement: !ruby/object:Gem::Requirement