metanorma-iec 2.0.7 → 2.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,12 +10,14 @@ module IsoDoc
10
10
  @meta = Metadata.new(lang, script, labels)
11
11
  end
12
12
 
13
- def xref_init(lang, script, klass, labels, options)
14
- @xrefs = Xref.new(lang, script, HtmlConvert.new(language: lang, script: script), labels, options)
13
+ def xref_init(lang, script, _klass, labels, options)
14
+ @xrefs = Xref.new(lang, script,
15
+ HtmlConvert.new(language: lang, script: script),
16
+ labels, options)
15
17
  end
16
18
 
17
- def i18n_init(lang, script, i18nyaml = nil)
18
- @i18n = I18n.new(lang, script, i18nyaml || @i18nyaml)
19
+ def i18n_init(lang, script, i18nyaml = nil)
20
+ @i18n = I18n.new(lang, script, i18nyaml: i18nyaml || @i18nyaml)
19
21
  end
20
22
 
21
23
  def convert1(docxml, filename, dir)
@@ -26,4 +28,3 @@ module IsoDoc
26
28
  end
27
29
  end
28
30
  end
29
-
@@ -3,7 +3,7 @@ require "metanorma-iso"
3
3
 
4
4
  module IsoDoc
5
5
  module Iec
6
- class Metadata < IsoDoc::Iso::Metadata
6
+ class Metadata < IsoDoc::Iso::Metadata
7
7
  def docstatus(isoxml, _out)
8
8
  docstatus = isoxml.at(ns("//bibdata/status/stage"))
9
9
  substage = isoxml.at(ns("//bibdata/status/substage"))
@@ -22,7 +22,7 @@ module IsoDoc
22
22
 
23
23
  def doctype(isoxml, _out)
24
24
  super
25
- b = isoxml&.at(ns("//bibdata/ext/doctype#{NOLANG}"))&.text
25
+ b = isoxml&.at(ns("//bibdata/ext/doctype#{NOLANG}"))&.text
26
26
  b1 = isoxml&.at(ns("//bibdata/ext/doctype[@language = 'en']"))&.text || b
27
27
  b1 and set(:doctype_en, status_print(b1))
28
28
  b1 = isoxml&.at(ns("//bibdata/ext/doctype[@language = 'fr']"))&.text || b
@@ -7,8 +7,8 @@ module IsoDoc
7
7
  def i18n_init(lang, script, i18nyaml = nil)
8
8
  super
9
9
  @i18n_lg = {}
10
- @i18n_lg["en"] = I18n.new("en", "Latn", i18nyaml || @i18nyaml)
11
- @i18n_lg["fr"] = I18n.new("fr", "Latn", i18nyaml || @i18nyaml)
10
+ @i18n_lg["en"] = I18n.new("en", "Latn", i18nyaml: i18nyaml || @i18nyaml)
11
+ @i18n_lg["fr"] = I18n.new("fr", "Latn", i18nyaml: i18nyaml || @i18nyaml)
12
12
  @i18n_lg["default"] = @i18n
13
13
  end
14
14
 
@@ -89,7 +89,7 @@ module IsoDoc
89
89
  fr = docxml.at(ns("//term[@language = 'fr'][@tag = '#{en['tag']}']"))
90
90
  merge_fr_into_en_term1(en, fr) if fr
91
91
  end
92
- @xrefs.parse docxml
92
+ @xrefs.parse_inclusions(clauses: true).parse docxml
93
93
  docxml.xpath(ns("//term/name")).each(&:remove)
94
94
  term(docxml)
95
95
  end
@@ -58,7 +58,7 @@ module IsoDoc
58
58
  <span lang="EN-GB"><span
59
59
  style='mso-element:field-begin'></span><span
60
60
  style='mso-spacerun:yes'>&#xA0;</span>TOC
61
- \\h \\z \\t &quot;TableTitle,tabletitle&quot; <span
61
+ \\h \\z \\t "TableTitle,tabletitle" <span
62
62
  style='mso-element:field-separator'></span></span>
63
63
  TOC
64
64
 
@@ -66,7 +66,7 @@ module IsoDoc
66
66
  <span lang="EN-GB"><span
67
67
  style='mso-element:field-begin'></span><span
68
68
  style='mso-spacerun:yes'>&#xA0;</span>TOC
69
- \\h \\z \\t &quot;FigureTitle,figuretitle&quot; <span
69
+ \\h \\z \\t "FigureTitle,figuretitle" <span
70
70
  style='mso-element:field-separator'></span></span>
71
71
  TOC
72
72
 
@@ -93,7 +93,7 @@ module IsoDoc
93
93
  <span lang="EN-GB"><span
94
94
  style='mso-element:field-begin'></span><span
95
95
  style='mso-spacerun:yes'>&#xA0;</span>TOC
96
- \\o &quot;1-#{level}&quot; \\h \\z \\u <span
96
+ \\o "1-#{level}" \\h \\z \\u <span
97
97
  style='mso-element:field-separator'></span></span>
98
98
  TOC
99
99
  end
@@ -17,10 +17,14 @@ module IsoDoc
17
17
  super
18
18
  return unless @is_iev
19
19
 
20
+ if @parse_settings.empty? || @parse_settings[:clauses]
20
21
  terms_iev_names(docxml)
22
+ end
23
+ if @parse_settings.empty?
21
24
  middle_section_asset_names(docxml)
22
25
  termnote_anchor_names(docxml)
23
26
  termexample_anchor_names(docxml)
27
+ end
24
28
  end
25
29
 
26
30
  def terms_iev_names(docxml)
@@ -527,7 +527,7 @@
527
527
  </define>
528
528
  <define name="LocalityType">
529
529
  <data type="string">
530
- <param name="pattern">section|clause|part|paragraph|chapter|page|whole|table|annex|figure|note|list|example|volume|issue|time|anchor|locality:[a-zA-Z0-9_]+</param>
530
+ <param name="pattern">section|clause|part|paragraph|chapter|page|title|line|whole|table|annex|figure|note|list|example|volume|issue|time|anchor|locality:[a-zA-Z0-9_]+</param>
531
531
  </data>
532
532
  </define>
533
533
  <define name="referenceFrom">
@@ -677,6 +677,9 @@
677
677
  <zeroOrMore>
678
678
  <ref name="extent"/>
679
679
  </zeroOrMore>
680
+ <optional>
681
+ <ref name="bibliographic_size"/>
682
+ </optional>
680
683
  <zeroOrMore>
681
684
  <ref name="accesslocation"/>
682
685
  </zeroOrMore>
@@ -848,17 +851,46 @@
848
851
  </define>
849
852
  <define name="bplace">
850
853
  <element name="place">
851
- <optional>
852
- <attribute name="uri">
853
- <data type="anyURI"/>
854
- </attribute>
855
- </optional>
856
- <optional>
857
- <attribute name="region"/>
858
- </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">
859
870
  <text/>
860
871
  </element>
861
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>
862
894
  <define name="bprice">
863
895
  <element name="price">
864
896
  <attribute name="currency"/>
@@ -922,9 +954,29 @@
922
954
  <text/>
923
955
  </element>
924
956
  </define>
957
+ <define name="sizevalue">
958
+ <element name="value">
959
+ <attribute name="type"/>
960
+ <text/>
961
+ </element>
962
+ </define>
963
+ <define name="bibliographic_size">
964
+ <element name="size">
965
+ <oneOrMore>
966
+ <ref name="sizevalue"/>
967
+ </oneOrMore>
968
+ </element>
969
+ </define>
925
970
  <define name="extent">
926
971
  <element name="extent">
927
- <ref name="BibItemLocality"/>
972
+ <choice>
973
+ <zeroOrMore>
974
+ <ref name="locality"/>
975
+ </zeroOrMore>
976
+ <zeroOrMore>
977
+ <ref name="localityStack"/>
978
+ </zeroOrMore>
979
+ </choice>
928
980
  </element>
929
981
  </define>
930
982
  <define name="series">
@@ -46,7 +46,7 @@ module Metanorma
46
46
 
47
47
  part, subpart = node&.attr("partnumber")&.split(/-/)
48
48
  dn = add_id_parts(node.attr("docnumber"), part, subpart)
49
- dn = id_stage_prefix(dn, node, false)
49
+ dn = id_stage_prefix(dn, node)
50
50
  dn = id_edition_suffix(dn, node)
51
51
  xml.docidentifier dn, **attr_code(type: "ISO")
52
52
  end
@@ -14,6 +14,7 @@
14
14
  <value>international-workshop-agreement</value>
15
15
  <value>guide</value>
16
16
  <value>industry-technical-agreement</value>
17
+ <value>system-reference-delivrabble</value>
17
18
  </choice>
18
19
  </define>
19
20
  <define name="BibDataExtensionType">
@@ -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>
@@ -1,6 +1,6 @@
1
1
  module Metanorma
2
2
  module Iec
3
- VERSION = "2.0.7".freeze
3
+ VERSION = "2.1.1".freeze
4
4
  end
5
5
  end
6
6
 
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  spec.email = ["open.source@ribose.com"]
12
12
 
13
13
  spec.summary = "metanorma-iec lets you write IEC standards "\
14
- "in AsciiDoc."
14
+ "in AsciiDoc."
15
15
  spec.description = <<~DESCRIPTION
16
16
  metanorma-iec lets you write IEC standards in AsciiDoc syntax.
17
17
 
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.test_files = `git ls-files -- {spec}/*`.split("\n")
28
28
  spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
29
29
 
30
- spec.add_dependency "metanorma-iso", "~> 2.0.0"
30
+ spec.add_dependency "metanorma-iso", "~> 2.1.1"
31
31
  spec.add_dependency "ruby-jing"
32
32
 
33
33
  spec.add_development_dependency "debug"
@@ -41,4 +41,5 @@ Gem::Specification.new do |spec|
41
41
  spec.add_development_dependency "sassc", "2.4.0"
42
42
  spec.add_development_dependency "simplecov", "~> 0.15"
43
43
  spec.add_development_dependency "timecop", "~> 0.9"
44
+ # spec.metadata["rubygems_mfa_required"] = "true"
44
45
  end