metanorma-iso 1.3.1 → 1.3.2

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: 7e608abed8ce4aa5c4ca053f1f144fa46e1e613bdd4727054e2e55f86caf8fe4
4
- data.tar.gz: c156d095288a2d586c0780fbca85b0fc775580ba9725b3ef4b821449e4a646fa
3
+ metadata.gz: c19e6c74f9375995e56a1e37a32ddb30772d952ace1c418e69a9a833c3ab2bd2
4
+ data.tar.gz: b0a914f36aea83bc10d3b01f699c6f0362d83e6f63827742dc27c8bea789c958
5
5
  SHA512:
6
- metadata.gz: 426a44d2e547b14919eda3726cd9c7df60f59122b94a3e50db3b2f783e2ade2552d142f138750b4601c90e429eaf2293c9e15e23f38fb1e5018e924cc348f4de
7
- data.tar.gz: 6ac6979ee3394d59b80ad02e46d713eee22a2691c73334c95ec9f792b9e4cc450b95efa1866805ec77789d7f10b70e992d37676e0e3291483eeaddb82200f96a
6
+ metadata.gz: a98a998ebf542a21aa53996ba826827fcf6a5216b109356c40ea8edd86f4fcf18f4d8d20168e014817fac422632af5ff4326bc297600d4a5b9e42f671698aaa2
7
+ data.tar.gz: 004766f312b82a75a7b9831d6da6e024dcc1fc4db75f1971a4496255861e6b7a7a6d102b5e73c17c9872c3a09a0817d61d8a1614afab4c69ebe8a360527136ad
data/Gemfile CHANGED
@@ -2,6 +2,10 @@ Encoding.default_external = Encoding::UTF_8
2
2
  Encoding.default_internal = Encoding::UTF_8
3
3
 
4
4
  source "https://rubygems.org"
5
+ git_source(:github) { |repo| "https://github.com/#{repo}" }
5
6
 
6
- # Specify your gem's dependencies in gemspec
7
7
  gemspec
8
+
9
+ if File.exist? 'Gemfile.devel'
10
+ eval File.read('Gemfile.devel'), nil, 'Gemfile.devel' # rubocop:disable Security/Eval
11
+ end
@@ -66,10 +66,8 @@ module Asciidoctor
66
66
  return 2 if bib.at("#{PUBLISHER}[abbreviation = 'IEC']")
67
67
  return 2 if bib.at("#{PUBLISHER}[name = 'International "\
68
68
  "Electrotechnical Commission']")
69
- return 3 if bib.at("./docidentifier[@type][not(@type = 'DOI')]"\
70
- "[not(@type = 'metanorma')]")
71
- return 3 if bib.at("./docidentifier[not(@type)]") &&
72
- !bib.at("./docidentifier[@type]")
69
+ return 3 if bib.at("./docidentifier[@type][not(@type = 'DOI' or "\
70
+ "@type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN')]")
73
71
  4
74
72
  end
75
73
 
@@ -80,15 +78,23 @@ module Asciidoctor
80
78
  end
81
79
 
82
80
  # TODO sort by authors
81
+ # sort by: doc class (ISO, IEC, other standard (not DOI &c), other
82
+ # then standard class (docid class other than DOI &c)
83
+ # then docnumber if present, numeric sort
84
+ # else alphanumeric metanorma id (abbreviation)
85
+ # then doc id (not DOI &c)
86
+ # then title
83
87
  def sort_biblio_key(bib)
84
88
  pubclass = pub_class(bib)
85
89
  num = bib&.at("./docnumber")&.text
86
- id = bib&.at("./docidentifier[not(@type = 'metanorma')]"\
87
- "[not(@type = 'DOI')]")
90
+ id = bib&.at("./docidentifier[not(@type = 'DOI' or "\
91
+ "@type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN')]")
92
+ metaid = bib&.at("./docidentifier[@type = 'metanorma']")&.text
93
+ abbrid = metaid unless /^\[\d+\]$/.match(metaid)
88
94
  type = id['type'] if id
89
95
  title = bib&.at("./title[@type = 'main']")&.text ||
90
96
  bib&.at("./title")&.text || bib&.at("./formattedref")&.text
91
- "#{pubclass} :: #{type} :: #{num.nil? ? "" : num % "09%d"} :: #{id&.text} :: #{title}"
97
+ "#{pubclass} :: #{type} :: #{num.nil? ? abbrid : sprintf("%09d", num.to_i)} :: #{id&.text} :: #{title}"
92
98
  end
93
99
  end
94
100
  end
@@ -138,20 +138,20 @@ module Asciidoctor
138
138
  def title_intro(node, t, lang, at)
139
139
  return unless node.attr("title-intro-#{lang}")
140
140
  t.title(**attr_code(at.merge(type: "title-intro"))) do |t1|
141
- t1 << asciidoc_sub(node.attr("title-intro-#{lang}"))
141
+ t1 << Asciidoctor::Standoc::Utils::asciidoc_sub(node.attr("title-intro-#{lang}"))
142
142
  end
143
143
  end
144
144
 
145
145
  def title_main(node, t, lang, at)
146
146
  t.title **attr_code(at.merge(type: "title-main")) do |t1|
147
- t1 << asciidoc_sub(node.attr("title-main-#{lang}"))
147
+ t1 << Asciidoctor::Standoc::Utils::asciidoc_sub(node.attr("title-main-#{lang}"))
148
148
  end
149
149
  end
150
150
 
151
151
  def title_part(node, t, lang, at)
152
152
  return unless node.attr("title-part-#{lang}")
153
153
  t.title(**attr_code(at.merge(type: "title-part"))) do |t1|
154
- t1 << asciidoc_sub(node.attr("title-part-#{lang}"))
154
+ t1 << Asciidoctor::Standoc::Utils::asciidoc_sub(node.attr("title-part-#{lang}"))
155
155
  end
156
156
  end
157
157
 
@@ -162,7 +162,7 @@ module Asciidoctor
162
162
  title = "#{intro} -- #{title}" if intro
163
163
  title = "#{title} -- #{part}" if part
164
164
  t.title **attr_code(at.merge(type: "main")) do |t1|
165
- t1 << asciidoc_sub(title)
165
+ t1 << Asciidoctor::Standoc::Utils::asciidoc_sub(title)
166
166
  end
167
167
  end
168
168
 
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module ISO
3
- VERSION = "1.3.1".freeze
3
+ VERSION = "1.3.2".freeze
4
4
  end
5
5
  end
@@ -799,28 +799,32 @@ r = 1 %</stem>
799
799
  * [[[ref1,ISO 123]]], _Standard ISO 123_
800
800
  * [[[ref4,GB 123]]], _Standard GB 123_
801
801
  * [[[ref2,ISO/IEC 123]]], _Standard ISO/IEC 123_
802
+ * [[[ref6,(B)]]], _Standard 20_
803
+ * [[[ref7,(A)]]], _Standard 30_
802
804
 
803
805
  [bibliography]
804
806
  === {blank}
805
- * [[[ref10,20]]], _Standard 10_
806
- * [[[ref9,GB 123]]], _Standard GB 123_
807
- * [[[ref8,IEC 123]]], _Standard IEC 123_
808
- * [[[ref7,ISO 123]]], _Standard ISO 123_
809
- * [[[ref6,ISO/IEC 123]]], _Standard ISO/IEC 123_
807
+ * [[[ref15,20]]], _Standard 10_
808
+ * [[[ref14,GB 123]]], _Standard GB 123_
809
+ * [[[ref13,IEC 123]]], _Standard IEC 123_
810
+ * [[[ref11,ISO 123]]], _Standard ISO 123_
811
+ * [[[ref10,ISO/IEC 123]]], _Standard ISO/IEC 123_
812
+ * [[[ref16,(B)]]], _Standard 20_
813
+ * [[[ref17,(A)]]], _Standard 30_
810
814
  INPUT
811
815
  #{BLANK_HDR}
812
- <sections><clause id="_" inline-header="false" obligation="normative">
816
+ <sections><clause id="_" inline-header="false" obligation="normative">
813
817
  <title>Clause 1</title>
814
818
  <p id="_"><eref type="inline" bibitemid="ref1" citeas="ISO 123"/>
815
819
  <eref type="inline" bibitemid="ref2" citeas="ISO/IEC 123"/>
816
820
  <eref type="inline" bibitemid="ref3" citeas="IEC 123"/>
817
821
  <eref type="inline" bibitemid="ref4" citeas="GB 123"/>
818
- <eref type="inline" bibitemid="ref5" citeas="[5]"/>
819
- <eref type="inline" bibitemid="ref6" citeas="ISO/IEC 123"/>
820
- <eref type="inline" bibitemid="ref7" citeas="ISO 123"/>
821
- <eref type="inline" bibitemid="ref8" citeas="IEC 123"/>
822
- <eref type="inline" bibitemid="ref9" citeas="GB 123"/>
823
- <eref type="inline" bibitemid="ref10" citeas="[10]"/></p>
822
+ <eref type="inline" bibitemid="ref5" citeas="[4]"/>
823
+ <eref type="inline" bibitemid="ref6" citeas="[B]"/>
824
+ <eref type="inline" bibitemid="ref7" citeas="[A]"/>
825
+ <xref target="ref8"/>
826
+ <xref target="ref9"/>
827
+ <eref type="inline" bibitemid="ref10" citeas="ISO/IEC 123"/></p>
824
828
  </clause>
825
829
  </sections><bibliography><clause id="_" obligation="informative"><title>Bibliography</title><references id="_" obligation="informative">
826
830
  <title>Clause 1</title><bibitem id="ref1" type="standard">
@@ -860,25 +864,37 @@ r = 1 %</stem>
860
864
  <abbreviation>IEC</abbreviation>
861
865
  </organization>
862
866
  </contributor>
867
+ </bibitem><bibitem id="ref5">
868
+ <formattedref format="application/x-isodoc+xml">
869
+ <em>Standard 10</em>
870
+ </formattedref>
871
+ <docidentifier type="metanorma">[4]</docidentifier>
863
872
  </bibitem><bibitem id="ref4">
864
873
  <formattedref format="application/x-isodoc+xml">
865
874
  <em>Standard GB 123</em>
866
875
  </formattedref>
867
876
  <docidentifier>GB 123</docidentifier>
868
- </bibitem><bibitem id="ref5">
877
+ </bibitem><bibitem id="ref7">
869
878
  <formattedref format="application/x-isodoc+xml">
870
- <em>Standard 10</em>
879
+ <em>Standard 30</em>
880
+ </formattedref>
881
+ <docidentifier type="metanorma">[A]</docidentifier>
882
+ </bibitem><bibitem id="ref6">
883
+ <formattedref format="application/x-isodoc+xml">
884
+ <em>Standard 20</em>
871
885
  </formattedref>
872
- <docidentifier type="metanorma">[5]</docidentifier>
886
+ <docidentifier type="metanorma">[B]</docidentifier>
873
887
  </bibitem>
874
888
 
875
889
 
876
890
 
877
891
 
878
892
 
893
+
894
+
879
895
  </references>
880
896
  <references id="_" obligation="informative">
881
- <bibitem id="ref7" type="standard">
897
+ <bibitem id="ref11" type="standard">
882
898
  <title format="text/plain">Standard ISO 123</title>
883
899
  <docidentifier>ISO 123</docidentifier>
884
900
  <contributor>
@@ -888,7 +904,7 @@ r = 1 %</stem>
888
904
  <abbreviation>ISO</abbreviation>
889
905
  </organization>
890
906
  </contributor>
891
- </bibitem><bibitem id="ref6" type="standard">
907
+ </bibitem><bibitem id="ref10" type="standard">
892
908
  <title format="text/plain">Standard ISO/IEC 123</title>
893
909
  <docidentifier>ISO/IEC 123</docidentifier>
894
910
  <contributor>
@@ -905,7 +921,7 @@ r = 1 %</stem>
905
921
  <abbreviation>IEC</abbreviation>
906
922
  </organization>
907
923
  </contributor>
908
- </bibitem><bibitem id="ref8" type="standard">
924
+ </bibitem><bibitem id="ref13" type="standard">
909
925
  <title format="text/plain">Standard IEC 123</title>
910
926
  <docidentifier>IEC 123</docidentifier>
911
927
  <contributor>
@@ -915,22 +931,34 @@ r = 1 %</stem>
915
931
  <abbreviation>IEC</abbreviation>
916
932
  </organization>
917
933
  </contributor>
918
- </bibitem><bibitem id="ref9">
934
+ </bibitem><bibitem id="ref15">
935
+ <formattedref format="application/x-isodoc+xml">
936
+ <em>Standard 10</em>
937
+ </formattedref>
938
+ <docidentifier type="metanorma">[11]</docidentifier>
939
+ </bibitem><bibitem id="ref14">
919
940
  <formattedref format="application/x-isodoc+xml">
920
941
  <em>Standard GB 123</em>
921
942
  </formattedref>
922
943
  <docidentifier>GB 123</docidentifier>
923
- </bibitem><bibitem id="ref10">
944
+ </bibitem><bibitem id="ref17">
924
945
  <formattedref format="application/x-isodoc+xml">
925
- <em>Standard 10</em>
946
+ <em>Standard 30</em>
926
947
  </formattedref>
927
- <docidentifier type="metanorma">[10]</docidentifier>
948
+ <docidentifier type="metanorma">[A]</docidentifier>
949
+ </bibitem><bibitem id="ref16">
950
+ <formattedref format="application/x-isodoc+xml">
951
+ <em>Standard 20</em>
952
+ </formattedref>
953
+ <docidentifier type="metanorma">[B]</docidentifier>
928
954
  </bibitem>
929
955
 
930
956
 
931
957
 
932
958
 
933
959
 
960
+
961
+
934
962
  </references></clause></bibliography>
935
963
  </iso-standard>
936
964
  OUTPUT
@@ -355,7 +355,7 @@ standardization at the following addresses:</p>
355
355
  </foreword></preface><sections>
356
356
  <terms id="_" obligation="normative">
357
357
  <title>Terms and definitions</title><p>For the purposes of this document, the terms and definitions
358
- given in <eref bibitem="iso1234"/> and <eref bibitem="iso5678"/> and the following apply.</p>
358
+ given in <eref bibitemid="iso1234"/> and <eref bibitemid="iso5678"/> and the following apply.</p>
359
359
  <p>ISO and IEC maintain terminological databases for use in
360
360
  standardization at the following addresses:</p>
361
361
 
@@ -427,7 +427,7 @@ standardization at the following addresses:</p>
427
427
  <terms id="_" obligation="normative">
428
428
  <title>Terms and definitions</title>
429
429
  <p>For the purposes of this document,
430
- the terms and definitions given in <eref bibitem="iso1234"/> and <eref bibitem="iso5678"/> apply.</p>
430
+ the terms and definitions given in <eref bibitemid="iso1234"/> and <eref bibitemid="iso5678"/> apply.</p>
431
431
  <p>ISO and IEC maintain terminological databases for use in
432
432
  standardization at the following addresses:</p>
433
433
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-iso
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-01 00:00:00.000000000 Z
11
+ date: 2019-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciidoctor