class Datacite::Mapping::Title

A name or title by which a {Resource} is known.

Public Class Methods

new(value:, language: nil, type: nil) click to toggle source

Initializes a new {Title}. @param language [String, nil] an IETF BCP 47, ISO 639-1 language code identifying the language. @param value [String] the title itself. @param type [TitleType, nil] the title type. Optional.

# File lib/datacite/mapping/title.rb, line 29
def initialize(value:, language: nil, type: nil)
  self.language = language
  self.type = type
  self.value = value
end

Public Instance Methods

language=(value) click to toggle source
# File lib/datacite/mapping/title.rb, line 35
def language=(value)
  @language = value&.strip
end
value=(value) click to toggle source
# File lib/datacite/mapping/title.rb, line 39
def value=(value)
  new_value = value&.strip
  raise ArgumentError, 'Value cannot be empty or nil' unless new_value && !new_value.empty?

  @value = new_value.strip
end