Class: Pubid::Itu::Identifiers::SpecialPublication

Inherits:
Pubid::Itu::Identifier show all
Includes:
StandardSerialization
Defined in:
lib/pubid/itu/identifiers/special_publication.rb

Overview

ITU Special Publication — currently models the Operational Bulletin (OB). OB is a cross-bureau publication (no sector) rendered as "ITU OB No. Pubid::Itu::Identifier#number" with optional date.

Pattern: "ITU OB No. 1283 (01/2024)"

Constant Summary

Constants inherited from Pubid::Itu::Identifier

Pubid::Itu::Identifier::LANGUAGES

Instance Method Summary collapse

Methods included from StandardSerialization

included

Methods inherited from Pubid::Itu::Identifier

#==, #base_from_kv, #base_to_kv, #code_for, #common_text_twin_from_kv, #common_text_twin_to_kv, #date_for, #emit_kv, #exclude_from_nested, #imp_marker_from_kv, #imp_marker_to_kv, #initialize, #month_from_kv, #month_to_kv, #mr_number_with_part, #mr_publisher, #mr_type, normalize_to_s_opts, #number, #number_from_kv, #number_to_kv, parse, #parts_from_kv, #parts_to_kv, #qualifier_from_kv, #qualifier_glued_from_kv, #qualifier_glued_to_kv, #qualifier_to_kv, #render_date_suffix, #render_language_suffix, #sector_from_kv, #sector_to_kv, #series_from_kv, #series_suffix_from_kv, #series_suffix_spaced_from_kv, #series_suffix_spaced_to_kv, #series_suffix_to_kv, #series_to_kv, #subseries_from_kv, #subseries_to_kv, #to_s, #year_from_kv, #year_to_kv

Methods inherited from Pubid::Identifier

apply_mappings, #base, #base_document, concrete_class_for, #dated_version_of?, #draft_of?, #drop_supplements, #edition_of?, #eql?, #exclude, from_hash, #has_supplement?, #hash, #includes?, #initialize, #matches?, #mr_all_parts, #mr_edition, #mr_languages, #mr_number, #mr_number_with_part, #mr_part, #mr_publisher, #mr_subpart, #mr_supplement_suffix, #mr_type, #mr_year, #new_edition_of?, polymorphic_name, polymorphic_type_map, #related_to?, #render, #resolve_urn_generator, #root, #sibling_of?, #supplement_of?, #to_hash, #to_mr_string, #to_s, #to_slug, #to_supplement_s, #to_urn, #urn_supplement_type, #urn_type_code, #year

Constructor Details

This class inherits a constructor from Pubid::Itu::Identifier

Instance Method Details

#render_base(**_opts) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/pubid/itu/identifiers/special_publication.rb', line 14

def render_base(**_opts)
  number = code&.number
  result = "#{publisher} #{series} No. #{number}"

  if date
    result += if date.month
                " (#{date.month.to_s.rjust(2, '0')}/#{date.year})"
              else
                " (#{date.year})"
              end
  end

  result
end