Class: Pubid::Iso::Identifier::Amendment

Inherits:
Supplement
  • Object
show all
Defined in:
lib/pubid/iso/identifier/amendment.rb

Constant Summary collapse

TYPED_STAGES =
{
  damd: {
    abbr: "DAM",
    legacy_abbr: %w[DAmd FPDAM],
    name: "Draft Amendment",
    harmonized_stages: %w[40.00 40.20 40.60 40.92 40.93 40.98 40.99],
  },
  fdamd: {
    abbr: "FDAM",
    legacy_abbr: %w[FDAmd],
    name: "Final Draft Amendment",
    harmonized_stages: %w[50.00 50.20 50.60 50.92 50.98 50.99],
  },
}.freeze

Instance Attribute Summary

Attributes inherited from Base

#addendum, #base, #dirtype, #iteration, #joint_document, #jtc_dir, #month, #scnumber, #sctype, #stage, #supplements, #tcnumber, #tctype, #wgnumber, #wgtype

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Supplement

#base_has_edition?, #initialize

Methods inherited from Base

get_amendment_class, get_corrigendum_class, get_identifier, get_parser_class, get_transformer_class, get_update_codes, #initialize, #render_joint_document, #resolve_format, #root, supplement_by_type, supplements_has_type?, #to_s, transform, transform_supplements, type_match?

Constructor Details

This class inherits a constructor from Pubid::Iso::Identifier::Supplement

Class Method Details

.get_renderer_classObject



27
28
29
# File 'lib/pubid/iso/identifier/amendment.rb', line 27

def self.get_renderer_class
  Renderer::Amendment
end

.typeObject



23
24
25
# File 'lib/pubid/iso/identifier/amendment.rb', line 23

def self.type
  { key: :amd, title: "Amendment", short: "AMD" }
end

Instance Method Details

#urnObject



31
32
33
34
35
# File 'lib/pubid/iso/identifier/amendment.rb', line 31

def urn
  raise Errors::NoEditionError, "Base document must have edition" unless base_has_edition?

  Renderer::UrnAmendment.new(to_h(deep: false)).render
end