Class: Metanorma::IsoDocument::Metadata::IsoBibliographicItem

Inherits:
Lutaml::Model::Serializable
  • Object
show all
Defined in:
lib/metanorma/iso_document/metadata/iso_bibliographic_item.rb

Instance Method Summary collapse

Instance Method Details

#titleObject

Primary title (English by default)



169
170
171
# File 'lib/metanorma/iso_document/metadata/iso_bibliographic_item.rb', line 169

def title
  @title ||= title_for("en")
end

#title_for(language = "en") ⇒ Object

Returns the title for a given language (defaults to English) Uses consolidation-mapped per_language grouping for efficiency



155
156
157
158
159
160
161
162
163
164
165
166
# File 'lib/metanorma/iso_document/metadata/iso_bibliographic_item.rb', line 155

def title_for(language = "en")
  return nil unless titles

  if titles.is_a?(TitleCollection)
    titles.for_language(language)
  elsif titles.is_a?(Array)
    titles.find { |t|
      lang = safe_attr(t, :language) || safe_attr(t, :lang)
      lang == language
    }
  end
end