relaton-itu 1.16.1 → 1.17.0

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: ba25af96c755b3ba32e9318e989f3a7396538c23667112dcde1282fd22b64c4b
4
- data.tar.gz: 1757b9672eeeae25548c7cf2ea3c6f2fb7beb9dbdc5740b452177e20540fc4dc
3
+ metadata.gz: 3fe7b62f593b31cdf9a2441ecafb931c0e53d3aff3bc0abc089f4b8227dc00bc
4
+ data.tar.gz: e727a837e88114c9d80d4d606551721f45dcb0de32df74826fd765b2616c3802
5
5
  SHA512:
6
- metadata.gz: adc9864ea7e48260cb0aa5550b0fbaa2a4943359537acaf75a974514f9a034dd34a01842da5abd2b5b65cffb796f022dbb5f8527fc1addcd915e4646340eb502
7
- data.tar.gz: 24b824c4af92c5aa195abd7681f9e24f370450555cef3018e67280257eccc0b6e4290a70c2270406f70e0714cbc5c651b2d1fdf94d4babff2ca37209a0455918
6
+ metadata.gz: 5f92d14d1e7b0e019360a1c988abcbaedaf24dc4186e48f6b7308dd605777581ec16c5a5188b0e24ffd1a18f48341b7bfe70440a08b0d01ab0dde245c8a18d32
7
+ data.tar.gz: 4d075c9d458e88e02741fc017d99e930d516ee5810aa374c08519e2a1964d3c1b20b9156bf11a643318408efe20f080daea7976317467ab809bd2f1de0e58031
data/README.adoc CHANGED
@@ -29,13 +29,24 @@ Or install it yourself as:
29
29
 
30
30
  == Usage
31
31
 
32
- === Search for a standard using keywords
32
+ === Configuration
33
+
34
+ Configuration is optional. The available option is `logger` which is a `Logger` instance. By default, the logger is `Logger.new($stderr)` with `Logger::WARN` level. To change the logger level, use `RelatonItu.configure` block.
33
35
 
34
36
  [source,ruby]
35
37
  ----
36
38
  require 'relaton_itu'
37
39
  => true
38
40
 
41
+ RelatonItu.configure do |config|
42
+ config.logger.level = Logger::DEBUG
43
+ end
44
+ ----
45
+
46
+ === Search for a standard using keywords
47
+
48
+ [source,ruby]
49
+ ----
39
50
  hit_collection = RelatonItu::ItuBibliography.search("ITU-T L.163")
40
51
  => <RelatonItu::HitCollection:0x007fbf5fb4ab60 @ref=ITU-T L.163 @fetched=false>
41
52
 
@@ -73,8 +84,8 @@ item.to_xml bibdata: true
73
84
  [source,ruby]
74
85
  ----
75
86
  RelatonItu::ItuBibliography.get("ITU-T L.163", "2018", {})
76
- [relaton-itu] ("ITU-T L.163") fetching...
77
- [relaton-itu] ("ITU-T L.163") found ITU-T L.163
87
+ [relaton-itu] (ITU-T L.163) Fetching from www.itu.int ...
88
+ [relaton-itu] (ITU-T L.163) Found: `ITU-T L.163`
78
89
  => #<RelatonItu::ItuBibliographicItem:0x007fbf5f94b9b8
79
90
  ...
80
91
  ----
@@ -83,8 +94,8 @@ RelatonItu::ItuBibliography.get("ITU-T L.163", "2018", {})
83
94
  [source,ruby]
84
95
  ----
85
96
  RelatonItu::ItuBibliography.get "ITU-T G.989.2/Amd 1"
86
- [relaton-itu] ("ITU-T G.989.2/Amd 1") fetching...
87
- [relaton-itu] ("ITU-T G.989.2/Amd 1") found ITU-T G.989.2/Amd 1
97
+ [relaton-itu] (ITU-T G.989.2/Amd 1) Fetching from www.itu.int ...
98
+ [relaton-itu] (ITU-T G.989.2/Amd 1) Found: `ITU-T G.989.2/Amd 1`
88
99
  => #<RelatonItu::ItuBibliographicItem:0x007fe5409e5840
89
100
  ...
90
101
  ----
@@ -94,8 +105,8 @@ RelatonItu::ItuBibliography.get "ITU-T G.989.2/Amd 1"
94
105
  [source,ruby]
95
106
  ----
96
107
  RelatonItu::ItuBibliography.get "ITU-R BO.600-1"
97
- [relaton-itu] ("ITU-R BO.600-1") fetching...
98
- [relaton-itu] ("ITU-R BO.600-1") found ITU-R BO.600-1
108
+ [relaton-itu] (ITU-R BO.600-1) Fetching from www.itu.int ...
109
+ [relaton-itu] (ITU-R BO.600-1) Found: `ITU-R BO.600-1`
99
110
  => #<RelatonItu::ItuBibliographicItem:0x00007fb0cf8a1308
100
111
  ...
101
112
  ----
@@ -105,9 +116,9 @@ RelatonItu::ItuBibliography.get "ITU-R BO.600-1"
105
116
  [source,ruby]
106
117
  ----
107
118
  RelatonItu::ItuBibliography.get 'ITU-R RR (2020)'
108
- [relaton-itu] ("ITU-R RR") fetching...
109
- [relaton-itu] WARNING: invalid doctype: publication
110
- [relaton-itu] ("ITU-R RR") found ITU-R RR
119
+ [relaton-itu] (ITU-R RR) Fetching from www.itu.int ...
120
+ [relaton-itu] WARNING: Invalid doctype: `publication`
121
+ [relaton-itu] (ITU-R RR) Found: ITU-R RR
111
122
  => #<RelatonItu::ItuBibliographicItem:0x007fb4b55eb660
112
123
  ...
113
124
  ----
@@ -346,6 +346,8 @@
346
346
  <ref name="keyword"/>
347
347
  <ref name="xref"/>
348
348
  <ref name="hyperlink"/>
349
+ <ref name="index"/>
350
+ <ref name="index-xref"/>
349
351
  </choice>
350
352
  </oneOrMore>
351
353
  </element>
@@ -623,6 +625,8 @@
623
625
  <ref name="eref"/>
624
626
  <ref name="xref"/>
625
627
  <ref name="hyperlink"/>
628
+ <ref name="index"/>
629
+ <ref name="index-xref"/>
626
630
  </choice>
627
631
  </zeroOrMore>
628
632
  </element>
@@ -636,6 +640,8 @@
636
640
  <ref name="eref"/>
637
641
  <ref name="xref"/>
638
642
  <ref name="hyperlink"/>
643
+ <ref name="index"/>
644
+ <ref name="index-xref"/>
639
645
  </choice>
640
646
  </zeroOrMore>
641
647
  </element>
@@ -648,6 +654,8 @@
648
654
  <ref name="eref"/>
649
655
  <ref name="xref"/>
650
656
  <ref name="hyperlink"/>
657
+ <ref name="index"/>
658
+ <ref name="index-xref"/>
651
659
  </choice>
652
660
  </zeroOrMore>
653
661
  </element>
@@ -655,7 +663,11 @@
655
663
  <define name="keyword">
656
664
  <element name="keyword">
657
665
  <zeroOrMore>
658
- <ref name="PureTextElement"/>
666
+ <choice>
667
+ <ref name="PureTextElement"/>
668
+ <ref name="index"/>
669
+ <ref name="index-xref"/>
670
+ </choice>
659
671
  </zeroOrMore>
660
672
  </element>
661
673
  </define>
@@ -676,7 +688,11 @@
676
688
  <define name="strike">
677
689
  <element name="strike">
678
690
  <zeroOrMore>
679
- <ref name="PureTextElement"/>
691
+ <choice>
692
+ <ref name="PureTextElement"/>
693
+ <ref name="index"/>
694
+ <ref name="index-xref"/>
695
+ </choice>
680
696
  </zeroOrMore>
681
697
  </element>
682
698
  </define>
data/grammars/biblio.rng CHANGED
@@ -942,6 +942,7 @@
942
942
  <value>obsoleted</value>
943
943
  <value>confirmed</value>
944
944
  <value>updated</value>
945
+ <value>corrected</value>
945
946
  <value>issued</value>
946
947
  <value>transmitted</value>
947
948
  <value>copied</value>
@@ -16,7 +16,7 @@ module RelatonItu
16
16
  docid: fetch_docid(doc), title: fetch_title(doc),
17
17
  abstract: fetch_abstract(doc), date: fetch_date(doc), language: ["en"],
18
18
  link: fetch_link(url), script: ["Latn"], docstatus: fetch_status(doc),
19
- type: "standard", doctype: type
19
+ type: "standard", doctype: fetch_doctype(type)
20
20
  )
21
21
  end
22
22
 
@@ -90,5 +90,9 @@ module RelatonItu
90
90
 
91
91
  RelatonBib::DocumentStatus.new stage: s.text
92
92
  end
93
+
94
+ def fetch_doctype(type)
95
+ DocumentType.new(type: type)
96
+ end
93
97
  end
94
98
  end
@@ -0,0 +1,21 @@
1
+ module RelatonItu
2
+ class DocumentType < RelatonBib::DocumentType
3
+ TYPES = %w[
4
+ recommendation recommendation-supplement recommendation-amendment
5
+ recommendation-corrigendum recommendation-errata recommendation-annex
6
+ focus-group implementers-guide technical-paper technical-report
7
+ joint-itu-iso-iec resolution service-publication handbook question
8
+ ].freeze
9
+
10
+ def initialize(type:, abbreviation: nil)
11
+ check_type type
12
+ super
13
+ end
14
+
15
+ def check_type(type)
16
+ unless TYPES.include? type
17
+ Util.warn "WARNING: Invalid doctype: `#{type}`"
18
+ end
19
+ end
20
+ end
21
+ end
@@ -17,8 +17,8 @@ module RelatonItu
17
17
  # @param workgroup [Hash, RelatonItu::ItuGroup, NilClass]
18
18
  def initialize(bureau:, group:, subgroup: nil, workgroup: nil)
19
19
  unless BUREAUS.include? bureau
20
- Util.warn "WARNING: invalid bureau: `#{bureau}`"
21
- Util.warn "WARNING: valid bureaus are: `#{BUREAUS.join('`, `')}`"
20
+ Util.warn "WARNING: Invalid bureau: `#{bureau}`"
21
+ Util.warn "WARNING: Valid bureaus are: `#{BUREAUS.join('`, `')}`"
22
22
  end
23
23
  @bureau = bureau
24
24
  @group = group.is_a?(Hash) ? ItuGroup.new(**group) : group
@@ -1,32 +1,37 @@
1
1
  module RelatonItu
2
- class HashConverter < RelatonBib::HashConverter
3
- class << self
4
- private
2
+ module HashConverter
3
+ include RelatonBib::HashConverter
4
+ extend self
5
5
 
6
- #
7
- # Ovverides superclass's method
8
- #
9
- # @param item [Hash]
10
- # @retirn [RelatonItu::ItuBibliographicItem]
11
- def bib_item(item)
12
- ItuBibliographicItem.new(**item)
13
- end
6
+ private
14
7
 
15
- def editorialgroup_hash_to_bib(ret)
16
- eg = ret[:editorialgroup]
17
- return unless eg
8
+ #
9
+ # Ovverides superclass's method
10
+ #
11
+ # @param item [Hash]
12
+ # @retirn [RelatonItu::ItuBibliographicItem]
13
+ def bib_item(item)
14
+ ItuBibliographicItem.new(**item)
15
+ end
16
+
17
+ def editorialgroup_hash_to_bib(ret)
18
+ eg = ret[:editorialgroup]
19
+ return unless eg
18
20
 
19
- ret[:editorialgroup] = EditorialGroup.new **eg
20
- end
21
+ ret[:editorialgroup] = EditorialGroup.new(**eg)
22
+ end
21
23
 
22
- # @param ret [Hash]
23
- def structuredidentifier_hash_to_bib(ret)
24
- return unless ret[:structuredidentifier]
24
+ # @param ret [Hash]
25
+ def structuredidentifier_hash_to_bib(ret)
26
+ return unless ret[:structuredidentifier]
27
+
28
+ ret[:structuredidentifier] = StructuredIdentifier.new(
29
+ **ret[:structuredidentifier]
30
+ )
31
+ end
25
32
 
26
- ret[:structuredidentifier] = StructuredIdentifier.new(
27
- **ret[:structuredidentifier]
28
- )
29
- end
33
+ def create_doctype(**args)
34
+ DocumentType.new(**args)
30
35
  end
31
36
  end
32
37
  end
@@ -21,6 +21,7 @@ module RelatonItu
21
21
  # @param refid [RelatonItu::Pubid] reference
22
22
  #
23
23
  def initialize(refid) # rubocop:todo Metrics/MethodLength
24
+ @refid = refid
24
25
  text = refid.to_ref.sub(/(?<=\.)Imp\s?(?=\d)/, "")
25
26
  super text, refid.year
26
27
  @agent = Mechanize.new
@@ -32,25 +33,24 @@ module RelatonItu
32
33
  when /^(ITU-T|ITU-R\sRR)/
33
34
  request_search
34
35
  when /^ITU-R\s/
35
- request_document(refid)
36
+ request_document
36
37
  end
37
38
  end
38
39
 
39
40
  private
40
41
 
41
42
  def request_search
43
+ Util.warn "(#{@refid}) Fetching from www.itu.int ..."
42
44
  url = "#{DOMAIN}/net4/ITU-T/search/GlobalSearch/RunSearch"
43
45
  data = { json: params.to_json }
44
46
  resp = agent.post url, data
45
47
  @array = hits JSON.parse(resp.body)
46
48
  end
47
49
 
48
- #
49
- # @param refid [RelatonItu::Pubid] a document reference
50
- #
51
- def request_document(refid) # rubocop:todo Metrics/MethodLength, Metrics/AbcSize
50
+ def request_document # rubocop:todo Metrics/MethodLength, Metrics/AbcSize
51
+ Util.warn "(#{@refid}) Fetching from Relaton repository ..."
52
52
  index = Relaton::Index.find_or_create :itu, url: "#{GH_ITU_R}index-v1.zip", file: INDEX_FILE
53
- row = index.search(refid.to_ref).min_by { |i| i[:id] }
53
+ row = index.search(@refid.to_ref).min_by { |i| i[:id] }
54
54
  return unless row
55
55
 
56
56
  uri = URI("#{GH_ITU_R}#{row[:file]}")
@@ -77,8 +77,10 @@ module RelatonItu
77
77
 
78
78
  # @return [Hash]
79
79
  def params # rubocop:disable Metrics/MethodLength
80
+ input = @refid.dup
81
+ input.year = nil
80
82
  {
81
- "Input" => text,
83
+ "Input" => input.to_s,
82
84
  "Start" => 0,
83
85
  "Rows" => 10,
84
86
  "SortBy" => "RELEVANCE",
@@ -1,19 +1,9 @@
1
1
  module RelatonItu
2
2
  class ItuBibliographicItem < RelatonBib::BibliographicItem
3
- TYPES = %w[
4
- recommendation recommendation-supplement recommendation-amendment
5
- recommendation-corrigendum recommendation-errata recommendation-annex
6
- focus-group implementers-guide technical-paper technical-report
7
- joint-itu-iso-iec resolution service-publication handbook question
8
- ].freeze
9
-
10
3
  # @params structuredidentifier [RelatonItu::StructuredIdentifier]
11
- def initialize(**args)
12
- if args[:doctype] && !TYPES.include?(args[:doctype])
13
- Util.warn "WARNING: invalid doctype: `#{args[:doctype]}`"
14
- end
15
- super
16
- end
4
+ # def initialize(**args)
5
+ # super
6
+ # end
17
7
 
18
8
  #
19
9
  # Fetch flavor schema version
@@ -22,9 +22,9 @@ module RelatonItu
22
22
  def search(refid)
23
23
  refid = RelatonItu::Pubid.parse refid if refid.is_a? String
24
24
  if refid.to_ref =~ /(ITU[\s-]T\s\w)\.(Suppl\.|Annex)\s?(\w?\d+)/
25
- correct_ref = "`#{$~[1]}` `#{$~[2]}` `#{$~[3]}`"
26
- Util.warn "WARNING: Incorrect reference `#{refid}`"
27
- Util.warn "the reference should be #{correct_ref}"
25
+ correct_ref = "#{$~[1]} #{$~[2]} #{$~[3]}"
26
+ Util.warn "WARNING: Incorrect reference: `#{refid}`"
27
+ Util.warn "the reference should be: `#{correct_ref}`"
28
28
  end
29
29
  HitCollection.new refid
30
30
  rescue SocketError, Timeout::Error, Errno::EINVAL, Errno::ECONNRESET, EOFError, Net::HTTPBadResponse,
@@ -63,19 +63,21 @@ module RelatonItu
63
63
  private
64
64
 
65
65
  def fetch_ref_err(refid, missed_years) # rubocop:disable Metrics/MethodLength
66
- Util.warn "WARNING: no match found online for `#{refid}`. " \
67
- "The code must be exactly like it is on the standards website."
68
- unless missed_years.empty?
69
- Util.warn "(There was no match for `#{refid.year}`, though there " \
70
- "were matches found for `#{missed_years.join('`, `')}`.)"
66
+ # Util.warn "WARNING: no match found online for `#{refid}`. " \
67
+ # "The code must be exactly like it is on the standards website."
68
+ Util.warn "(#{refid}) Not found."
69
+ if missed_years.any?
70
+ plural = missed_years.size > 1 ? "s" : ""
71
+ Util.warn "(#{refid}) There was no match for `#{refid.year}` year, though " \
72
+ "there were matches found for `#{missed_years.join('`, `')}` year#{plural}."
71
73
  end
72
74
  # if /\d-\d/.match? refid.code
73
75
  # warn "[relaton-itu] The provided document part may not exist, or " \
74
76
  # "the document may no longer be published in parts."
75
77
  # else
76
- Util.warn "If you wanted to cite all document parts for the reference, " \
77
- "use `#{refid} (all parts)`.\nIf the document is not a standard, " \
78
- "use its document type abbreviation `S`, `TR`, `PAS`, `Guide`)."
78
+ # Util.warn "If you wanted to cite all document parts for the reference, " \
79
+ # "use `#{refid} (all parts)`.\nIf the document is not a standard, " \
80
+ # "use its document type abbreviation `S`, `TR`, `PAS`, `Guide`)."
79
81
  # end
80
82
  nil
81
83
  end
@@ -90,7 +92,6 @@ module RelatonItu
90
92
  # (?:\s\((?:(?<cormonth1>\d{2})/)?(?<coryear1>\d{4})\))?
91
93
  # }x =~ code
92
94
  # year ||= year1
93
- Util.warn "(#{refid}) fetching..."
94
95
  result = search(refid)
95
96
  # refid.code.sub!(/(?<=\.)Imp(?=\d)/, "") if result.gi_imp
96
97
  # if corr1
@@ -101,7 +102,7 @@ module RelatonItu
101
102
  next true unless i.hit[:code]
102
103
 
103
104
  pubid = Pubid.parse i.hit[:code]
104
- refid === pubid
105
+ refid.===(pubid, [:year])
105
106
  # %r{
106
107
  # ^(?<pref2>ITU)?(?:-(?<type2>\w))?\s?(?<code2>\S+)
107
108
  # (?:\s\(?(?<ver2>v\d+)\)?)?
@@ -143,7 +144,7 @@ module RelatonItu
143
144
  result = search_filter(refid) || return
144
145
  ret = isobib_results_filter(result, refid)
145
146
  if ret[:ret]
146
- Util.warn "(#{refid}) found `#{ret[:ret].docidentifier.first&.id}`"
147
+ Util.warn "(#{refid}) Found: `#{ret[:ret].docidentifier.first&.id}`"
147
148
  ret[:ret]
148
149
  else
149
150
  fetch_ref_err(refid, ret[:years])
@@ -65,8 +65,8 @@ module RelatonItu
65
65
  id_parts = Parser.new.parse(id).to_h.transform_values(&:to_s)
66
66
  new(**id_parts)
67
67
  rescue Parslet::ParseFailed => e
68
- warn "[relaton-itu] WARNING: #{id} is invalid ITU publication identifier"
69
- warn e.parse_failure_cause.ascii_tree
68
+ Util.warn "WARNING: `#{id}` is invalid ITU publication identifier \n" \
69
+ "#{e.parse_failure_cause.ascii_tree}"
70
70
  raise e
71
71
  end
72
72
 
@@ -96,11 +96,12 @@ module RelatonItu
96
96
  s
97
97
  end
98
98
 
99
- def ===(other)
99
+ def ===(other, ignore_args = [])
100
100
  hash = to_h with_type: false
101
101
  other_hash = other.to_h with_type: false
102
102
  hash.delete(:month)
103
103
  other_hash.delete(:month)
104
+ hash.delete(:year) if ignore_args.include?(:year)
104
105
  other_hash.delete(:year) unless hash[:year]
105
106
  hash == other_hash
106
107
  end
@@ -49,7 +49,7 @@ module RelatonItu
49
49
  language: ["en"],
50
50
  script: ["Latn"],
51
51
  title: fetch_titles(doc),
52
- doctype: hit.hit[:type],
52
+ doctype: DocumentType.new(type: hit.hit[:type]),
53
53
  docstatus: fetch_status(doc),
54
54
  ics: [], # fetch_ics(doc),
55
55
  date: fetch_dates(doc),
@@ -75,7 +75,7 @@ module RelatonItu
75
75
  url = abstract_url[:onclick].match(/https?[^']+/).to_s
76
76
  rsp = hit.hit_collection.agent.get url
77
77
  d = Nokogiri::HTML rsp.body.encode(undef: :replace, replace: "")
78
- d.css("p.MsoNormal").text.gsub(/\r\n/, "").squeeze(" ").gsub(/\u00a0/, "")
78
+ d.css("p.MsoNormal").text.gsub("\r\n", "").squeeze(" ").gsub("\u00a0", "")
79
79
  elsif a = doc.at('//table/tr/td/span[contains(@class, "observation")]/text()')
80
80
  a.text.strip
81
81
  end
@@ -87,7 +87,7 @@ module RelatonItu
87
87
  script: "Latn",
88
88
  }]
89
89
  rescue Mechanize::ResponseCodeError => e
90
- warn "HTTP Service Unavailable: #{e.message}"
90
+ Util.warn "HTTP Service Unavailable: #{e.message}"
91
91
  []
92
92
  end
93
93
 
@@ -11,7 +11,7 @@ module RelatonItu
11
11
  # @param annexid [String, NilClass]
12
12
  def initialize(bureau:, docnumber:, annexid: nil)
13
13
  unless EditorialGroup::BUREAUS.include? bureau
14
- warn "[relaton-itu] WARNING: invalid bureau: #{bureau}"
14
+ Util.warn "WARNING: Invalid bureau: `#{bureau}`"
15
15
  end
16
16
  @bureau = bureau
17
17
  @docnumber = docnumber
@@ -1,3 +1,3 @@
1
1
  module RelatonItu
2
- VERSION = "1.16.1".freeze
2
+ VERSION = "1.17.0".freeze
3
3
  end
data/lib/relaton_itu.rb CHANGED
@@ -6,6 +6,7 @@ require "relaton_bib"
6
6
  require "relaton_itu/version"
7
7
  require "relaton_itu/config"
8
8
  require "relaton_itu/util"
9
+ require "relaton_itu/document_type"
9
10
  require "relaton_itu/pubid"
10
11
  require "relaton_itu/itu_bibliography"
11
12
  require "relaton_itu/data_fetcher"
data/relaton-itu.gemspec CHANGED
@@ -27,6 +27,6 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_dependency "mechanize", "~> 2.8.0"
29
29
  spec.add_dependency "parslet", "~> 2.0.0"
30
- spec.add_dependency "relaton-bib", "~> 1.16.0"
30
+ spec.add_dependency "relaton-bib", "~> 1.17.0"
31
31
  spec.add_dependency "relaton-index", "~> 0.2.0"
32
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-itu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.16.1
4
+ version: 1.17.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: 2023-09-21 00:00:00.000000000 Z
11
+ date: 2023-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mechanize
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.16.0
47
+ version: 1.17.0
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: 1.16.0
54
+ version: 1.17.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: relaton-index
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -95,6 +95,7 @@ files:
95
95
  - lib/relaton_itu/config.rb
96
96
  - lib/relaton_itu/data_fetcher.rb
97
97
  - lib/relaton_itu/data_parser_r.rb
98
+ - lib/relaton_itu/document_type.rb
98
99
  - lib/relaton_itu/editorial_group.rb
99
100
  - lib/relaton_itu/hash_converter.rb
100
101
  - lib/relaton_itu/hit.rb