Class: RelatonBib::StructuredIdentifierCollection

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Includes:
RelatonBib
Defined in:
lib/relaton_bib/structured_identifier.rb

Constant Summary

Constants included from RelatonBib

VERSION

Instance Method Summary collapse

Methods included from RelatonBib

parse_date

Constructor Details

#initialize(collection) ⇒ StructuredIdentifierCollection

Returns a new instance of StructuredIdentifierCollection.

Parameters:



9
10
11
# File 'lib/relaton_bib/structured_identifier.rb', line 9

def initialize(collection)
  @collection = collection
end

Instance Method Details

#all_partsObject



43
44
45
# File 'lib/relaton_bib/structured_identifier.rb', line 43

def all_parts
  @collection.each &:all_parts
end

#presence?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'lib/relaton_bib/structured_identifier.rb', line 47

def presence?
  any?
end

#remove_dateObject

remoe year from docnumber



35
36
37
# File 'lib/relaton_bib/structured_identifier.rb', line 35

def remove_date
  @collection.each &:remove_date
end

#remove_partObject



39
40
41
# File 'lib/relaton_bib/structured_identifier.rb', line 39

def remove_part
  @collection.each &:remove_part
end

#to_asciibib(prefix = "") ⇒ String

Parameters:

  • prefix (String) (defaults to: "")

Returns:

  • (String)


25
26
27
28
29
30
31
32
# File 'lib/relaton_bib/structured_identifier.rb', line 25

def to_asciibib(prefix = "")
  pref = prefix.empty? ? prefix : prefix + "."
  pref += "structured_identifier"
  @collection.reduce("") do |out, si|
    out += "#{pref}::\n" if @collection.size > 1
    out + si.to_asciibib(pref)
  end
end

#to_hashArray<Hash>

Returns:



19
20
21
# File 'lib/relaton_bib/structured_identifier.rb', line 19

def to_hash
  single_element_array @collection
end

#to_xml(builder) ⇒ Object

Parameters:

  • builder (Nokogiri::XML::Builder)


14
15
16
# File 'lib/relaton_bib/structured_identifier.rb', line 14

def to_xml(builder)
  @collection.each { |si| si.to_xml builder }
end