relaton-ieee 1.9.1 → 1.9.2
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.
- checksums.yaml +4 -4
- data/README.adoc +10 -0
- data/lib/relaton_ieee/bibxml_parser.rb +14 -0
- data/lib/relaton_ieee/data_fetcher.rb +11 -4
- data/lib/relaton_ieee/version.rb +1 -1
- data/lib/relaton_ieee.rb +1 -0
- data/relaton_ieee.gemspec +1 -1
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b87fe1e68a822c6589d00479407ad483f13bcffd1d652885839e0e15c0f0b8c
|
4
|
+
data.tar.gz: 8592b17b9d14faaa3b4a117c1f453af5591884230b6f92f68a4caf4a7dc89bed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0463f9179cd438c1c9bcd146b586aa82143ddf119b00b36b24a33bead1f9cfc597553cc277c3ff24e5c2f58b4c7ded9bd553bdfec3e2a327d14377f000a94346
|
7
|
+
data.tar.gz: 3777fa1634406a12a0734a6efab5d0ac9df0aa540f4f7fb7e26118657809a3120bc796b257e02b2a460cf79757cdfbeb38e224ec1be30798ee9aa23649a0ee63
|
data/README.adoc
CHANGED
@@ -138,6 +138,16 @@ RelatonIeee::IeeeBibliography.get("IEEE 528-2019")
|
|
138
138
|
...
|
139
139
|
----
|
140
140
|
|
141
|
+
=== Typed links
|
142
|
+
|
143
|
+
Each IEEE document has `src` type link.
|
144
|
+
|
145
|
+
[source,ruby]
|
146
|
+
----
|
147
|
+
item.link
|
148
|
+
=> [#<RelatonBib::TypedUri:0x00007fe885219ba0 @content=#<Addressable::URI:0x8ac URI:https://standards.ieee.org/standard/528-2019.html>, @type="src">]
|
149
|
+
----
|
150
|
+
|
141
151
|
=== Create bibliographic item from XML
|
142
152
|
[source,ruby]
|
143
153
|
----
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module RelatonIeee
|
2
|
+
module BibXMLParser
|
3
|
+
extend RelatonBib::BibXMLParser
|
4
|
+
extend BibXMLParser
|
5
|
+
|
6
|
+
FLAVOR = "IEEE"
|
7
|
+
|
8
|
+
# @param attrs [Hash]
|
9
|
+
# @return [RelatonBib::IetfBibliographicItem]
|
10
|
+
def bib_item(**attrs)
|
11
|
+
IeeeBibliographicItem.new(**attrs)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -27,6 +27,7 @@ module RelatonIeee
|
|
27
27
|
def initialize(output, format)
|
28
28
|
@output = output
|
29
29
|
@format = format
|
30
|
+
@ext = format.sub(/^bib/, "")
|
30
31
|
@crossrefs = {}
|
31
32
|
@backrefs = {}
|
32
33
|
end
|
@@ -130,7 +131,11 @@ module RelatonIeee
|
|
130
131
|
# @param [RelatonIeee::IeeeBibliographicItem] bib
|
131
132
|
#
|
132
133
|
def save_doc(bib)
|
133
|
-
c = @format
|
134
|
+
c = case @format
|
135
|
+
when "xml" then bib.to_xml(bibdata: true)
|
136
|
+
when "yaml" then bib.to_hash.to_yaml
|
137
|
+
else bib.send("to_#{@format}")
|
138
|
+
end
|
134
139
|
File.write file_name(bib.docnumber), c, encoding: "UTF-8"
|
135
140
|
end
|
136
141
|
|
@@ -142,8 +147,8 @@ module RelatonIeee
|
|
142
147
|
# @return [String] filename
|
143
148
|
#
|
144
149
|
def file_name(docnumber)
|
145
|
-
name = docnumber.gsub(/[.\s,:\/]/, "_").squeeze("_").upcase
|
146
|
-
File.join @output, "#{name}.#{@
|
150
|
+
name = docnumber.gsub(/\s-/, "-").gsub(/[.\s,:\/]/, "_").squeeze("_").upcase
|
151
|
+
File.join @output, "#{name}.#{@ext}"
|
147
152
|
end
|
148
153
|
|
149
154
|
#
|
@@ -198,7 +203,9 @@ module RelatonIeee
|
|
198
203
|
#
|
199
204
|
def read_bib(docnumber)
|
200
205
|
c = File.read file_name(docnumber), encoding: "UTF-8"
|
201
|
-
|
206
|
+
case @format
|
207
|
+
when "xml" then XMLParser.from_xml c
|
208
|
+
when "bibxml" then BibXMLParser.parse c
|
202
209
|
else IeeeBibliographicItem.from_hash YAML.safe_load(c)
|
203
210
|
end
|
204
211
|
end
|
data/lib/relaton_ieee/version.rb
CHANGED
data/lib/relaton_ieee.rb
CHANGED
@@ -9,6 +9,7 @@ require "relaton_ieee/scrapper"
|
|
9
9
|
require "relaton_ieee/ieee_bibliographic_item"
|
10
10
|
require "relaton_ieee/committee"
|
11
11
|
require "relaton_ieee/xml_parser"
|
12
|
+
require "relaton_ieee/bibxml_parser"
|
12
13
|
require "relaton_ieee/hash_converter"
|
13
14
|
require "relaton_ieee/data_fetcher"
|
14
15
|
|
data/relaton_ieee.gemspec
CHANGED
@@ -38,6 +38,6 @@ Gem::Specification.new do |spec|
|
|
38
38
|
spec.add_development_dependency "webmock"
|
39
39
|
|
40
40
|
spec.add_dependency "faraday", "~> 1.1"
|
41
|
-
spec.add_dependency "relaton-bib", "
|
41
|
+
spec.add_dependency "relaton-bib", ">= 1.9.5"
|
42
42
|
spec.add_dependency "rubyzip", "~> 2.3.0"
|
43
43
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: relaton-ieee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-10-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: equivalent-xml
|
@@ -98,16 +98,16 @@ dependencies:
|
|
98
98
|
name: relaton-bib
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.9.
|
103
|
+
version: 1.9.5
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 1.9.
|
110
|
+
version: 1.9.5
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: rubyzip
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -146,6 +146,7 @@ files:
|
|
146
146
|
- grammars/isodoc.rng
|
147
147
|
- grammars/reqt.rng
|
148
148
|
- lib/relaton_ieee.rb
|
149
|
+
- lib/relaton_ieee/bibxml_parser.rb
|
149
150
|
- lib/relaton_ieee/committee.rb
|
150
151
|
- lib/relaton_ieee/data_fetcher.rb
|
151
152
|
- lib/relaton_ieee/data_parser.rb
|