Class: RelatonBib::OrgIdentifier

Inherits:
Object
  • Object
show all
Defined in:
lib/relaton_bib/organization.rb

Overview

Organization identifier.

Constant Summary collapse

ORCID =
"orcid"
URI =
"uri"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type, value) ⇒ OrgIdentifier

Returns a new instance of OrgIdentifier.

Parameters:

  • type (String)

    “orcid” or “uri”

  • value (String)


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

def initialize(type, value)
  unless [ORCID, URI].include? type
    raise ArgumentError, 'Invalid type. It should be "orsid" or "uri".'
  end

  @type  = type
  @value = value
end

Instance Attribute Details

#typeString (readonly)

Returns:

  • (String)


17
18
19
# File 'lib/relaton_bib/organization.rb', line 17

def type
  @type
end

#valueString (readonly)

Returns:

  • (String)


20
21
22
# File 'lib/relaton_bib/organization.rb', line 20

def value
  @value
end

Instance Method Details

#to_hashHash

Returns:

  • (Hash)


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

def to_hash
  { "type" => type, "id" => value }
end

#to_xml(builder) ⇒ Object

Parameters:

  • builder (Nokogiri::XML::Builder)


34
35
36
# File 'lib/relaton_bib/organization.rb', line 34

def to_xml(builder)
  builder.identifier(value, type: type)
end