relaton-bib 1.9.22 → 1.9.23
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/lib/relaton_bib/bibliographic_item.rb +21 -14
- data/lib/relaton_bib/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 69ae43ef45d31008eb5fcfb3939335a6ecb7731a198c7fb944ff671a018180c2
|
|
4
|
+
data.tar.gz: 82154362500a3a1476efd7415ccc37e2a9f8a878b889b2562b51024f8d691884
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d151df39d087c6dfd66d50eeede28c8b14c3d4551197122f955000611f958fe89b7caa36c05730b77f34e5729ed4838d3d1cb52f85f53169babf624c5ac56c38
|
|
7
|
+
data.tar.gz: 2f0a0f3bf334cd1204eaafe55d90ce4825f6eeed884730f44ae4956ecb43a6bca9356bb27af473b421fb4a4a4ab4ad565721c0ced92f0e7b5b40b5b4a0104a49
|
|
@@ -330,15 +330,16 @@ module RelatonBib
|
|
|
330
330
|
# Render BibXML (RFC)
|
|
331
331
|
#
|
|
332
332
|
# @param [Nokogiri::XML::Builder, nil] builder
|
|
333
|
+
# @param [Boolean] include_keywords (false)
|
|
333
334
|
#
|
|
334
335
|
# @return [String, Nokogiri::XML::Builder::NodeBuilder] XML
|
|
335
336
|
#
|
|
336
|
-
def to_bibxml(builder = nil)
|
|
337
|
+
def to_bibxml(builder = nil, include_keywords: false)
|
|
337
338
|
if builder
|
|
338
|
-
render_bibxml builder
|
|
339
|
+
render_bibxml builder, include_keywords
|
|
339
340
|
else
|
|
340
341
|
Nokogiri::XML::Builder.new(encoding: "UTF-8") do |xml|
|
|
341
|
-
render_bibxml xml
|
|
342
|
+
render_bibxml xml, include_keywords
|
|
342
343
|
end.doc.root.to_xml
|
|
343
344
|
end
|
|
344
345
|
end
|
|
@@ -764,14 +765,15 @@ module RelatonBib
|
|
|
764
765
|
# Render BibXML (RFC, BCP)
|
|
765
766
|
#
|
|
766
767
|
# @param [Nokogiri::XML::Builder] builder
|
|
768
|
+
# @param [Boolean] include_bibdata
|
|
767
769
|
#
|
|
768
|
-
def render_bibxml(builder)
|
|
770
|
+
def render_bibxml(builder, include_keywords)
|
|
769
771
|
target = link.detect { |l| l.type.casecmp("src").zero? } ||
|
|
770
772
|
link.detect { |l| l.type.casecmp("doi").zero? }
|
|
771
773
|
bxml = if docnumber&.match(/^BCP/) || docidentifier[0].id.include?("BCP")
|
|
772
|
-
render_bibxml_refgroup(builder)
|
|
774
|
+
render_bibxml_refgroup(builder, include_keywords)
|
|
773
775
|
else
|
|
774
|
-
render_bibxml_ref(builder)
|
|
776
|
+
render_bibxml_ref(builder, include_keywords)
|
|
775
777
|
end
|
|
776
778
|
bxml[:target] = target.content.to_s if target
|
|
777
779
|
end
|
|
@@ -780,11 +782,12 @@ module RelatonBib
|
|
|
780
782
|
# Render BibXML (BCP)
|
|
781
783
|
#
|
|
782
784
|
# @param [Nokogiri::XML::Builder] builder
|
|
785
|
+
# @param [Boolean] include_keywords
|
|
783
786
|
#
|
|
784
|
-
def render_bibxml_refgroup(builder)
|
|
787
|
+
def render_bibxml_refgroup(builder, include_keywords)
|
|
785
788
|
builder.referencegroup(**ref_attrs) do |b|
|
|
786
789
|
relation.each do |r|
|
|
787
|
-
r.bibitem.to_bibxml(b) if r.type == "includes"
|
|
790
|
+
r.bibitem.to_bibxml(b, include_keywords: include_keywords) if r.type == "includes"
|
|
788
791
|
end
|
|
789
792
|
end
|
|
790
793
|
end
|
|
@@ -793,18 +796,19 @@ module RelatonBib
|
|
|
793
796
|
# Render BibXML (RFC)
|
|
794
797
|
#
|
|
795
798
|
# @param [Nokogiri::XML::Builder] builder
|
|
799
|
+
# @param [Boolean] include_keywords
|
|
796
800
|
#
|
|
797
|
-
def render_bibxml_ref(builder)
|
|
801
|
+
def render_bibxml_ref(builder, include_keywords)
|
|
798
802
|
builder.reference(**ref_attrs) do |xml|
|
|
799
803
|
xml.front do
|
|
800
804
|
xml.title title[0].title.content if title.any?
|
|
801
|
-
render_seriesinfo xml
|
|
802
805
|
render_authors xml
|
|
803
806
|
render_date xml
|
|
804
807
|
render_workgroup xml
|
|
805
|
-
render_keyword xml
|
|
808
|
+
render_keyword xml if include_keywords
|
|
806
809
|
render_abstract xml
|
|
807
810
|
end
|
|
811
|
+
render_seriesinfo xml
|
|
808
812
|
end
|
|
809
813
|
end
|
|
810
814
|
|
|
@@ -849,8 +853,11 @@ module RelatonBib
|
|
|
849
853
|
elm[:year] = y if y
|
|
850
854
|
m = dt.on(:month) || dt.from(:month) || dt.to(:month)
|
|
851
855
|
elm[:month] = Date::MONTHNAMES[m] if m
|
|
856
|
+
# rfcs = %w[RFC BCP FYI STD]
|
|
857
|
+
# unless rfcs.include?(doctype) && docidentifier.detect { |di| rfcs.include? di.type }
|
|
852
858
|
d = dt.on(:day) || dt.from(:day) || dt.to(:day)
|
|
853
859
|
elm[:day] = d if d
|
|
860
|
+
# end
|
|
854
861
|
end
|
|
855
862
|
|
|
856
863
|
# @param [Nokogiri::XML::Builder] builder
|
|
@@ -942,10 +949,10 @@ module RelatonBib
|
|
|
942
949
|
# @param [Nokogiri::XML::Builder] builder
|
|
943
950
|
# @param [RelatonBib::Organization] org
|
|
944
951
|
def render_organization(builder, org)
|
|
945
|
-
return unless org
|
|
952
|
+
# return unless org
|
|
946
953
|
|
|
947
|
-
ab = org
|
|
948
|
-
on = org
|
|
954
|
+
ab = org&.abbreviation&.content
|
|
955
|
+
on = org&.name&.first&.content
|
|
949
956
|
orgname = if BibXMLParser::ORGNAMES.key?(ab) then ab
|
|
950
957
|
else BibXMLParser::ORGNAMES.key(on) || on || ab
|
|
951
958
|
end
|
data/lib/relaton_bib/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: relaton-bib
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.9.
|
|
4
|
+
version: 1.9.23
|
|
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-01-
|
|
11
|
+
date: 2022-01-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: byebug
|