Class: Pubid::Bsi::Identifiers::NationalAnnex

Inherits:
SingleIdentifier show all
Defined in:
lib/pubid/bsi/identifiers/national_annex.rb

Overview

National Annex (NA) identifier Can have own supplements: “NA+A1:2012 to BASE”

Constant Summary collapse

TYPED_STAGES =
[
  Pubid::Components::TypedStage.new(
    code: :pubna,
    stage_code: :published,
    type_code: :na,
    abbr: ["NA"],
    name: "National Annex",
    harmonized_stages: %w[60.00 60.60],
  ),
].freeze

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from SingleIdentifier

#<=>, #publisher

Methods included from Pubid::Bsi::Identifier

parse

Methods included from IdentifierFacade

#from_hash, #polymorphic_type_map

Methods inherited from Identifier

#base_identifier, #eql?, #exclude, #hash, #initialize, #mr_number, #mr_number_with_part, #mr_part, #mr_publisher, #mr_type, #mr_year, #new_edition_of?, polymorphic_name, #render, #resolve_urn_generator, #root, #to_mr_string, #to_supplement_s, #to_urn, #urn_supplement_type, #urn_type_code, #year

Constructor Details

This class inherits a constructor from Pubid::Identifier

Class Method Details

.typeObject



23
24
25
26
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 23

def self.type
  { key: :na,
    web: :national_annex, title: "National Annex", short: "NA" }
end

Instance Method Details

#dateObject



33
34
35
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 33

def date
  base_doc&.date || super
end

#numberObject

Delegation methods to access wrapped base_doc attributes



29
30
31
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 29

def number
  base_doc&.number || super
end

#partObject



37
38
39
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 37

def part
  base_doc&.part || super
end

#subpartObject



41
42
43
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 41

def subpart
  base_doc&.subpart || super
end

#to_s(lang: :en, lang_single: false) ⇒ Object



45
46
47
# File 'lib/pubid/bsi/identifiers/national_annex.rb', line 45

def to_s(lang: :en, lang_single: false)
  render(format: :human, lang: lang, lang_single: lang_single)
end