Class: Pubid::Iec::Identifiers::InternationalStandard

Inherits:
Base show all
Defined in:
lib/pubid/iec/identifiers/international_standard.rb

Overview

International Standard identifier class Single Responsibility: Represents IEC International Standard documents

Constant Summary collapse

TYPED_STAGES =

International Standards need a TypedStage with empty abbr for published standards From gems/pubid-iec/lib/pubid/iec/identifier/international_standard.rb

[
  Pubid::Components::TypedStage.new(
    code: :pwi,
    stage_code: :pwi,
    type_code: :is,
    abbr: ["PWI"],
    name: "Preliminary Work Item",
    harmonized_stages: %w[00.00 00.20 00.60 00.98 00.99],
  ),
  Pubid::Components::TypedStage.new(
    code: :np,
    stage_code: :np,
    type_code: :is,
    abbr: ["NP"],
    name: "New Proposal",
    harmonized_stages: %w[10.00 10.20 10.60 10.92 10.98],
  ),
  Pubid::Components::TypedStage.new(
    code: :anw,
    stage_code: :anw,
    type_code: :is,
    abbr: ["ANW"],
    name: "Approved New Work Item",
    harmonized_stages: %w[10.99 20.00],
  ),
  Pubid::Components::TypedStage.new(
    code: :wd,
    stage_code: :wd,
    type_code: :is,
    abbr: ["WD"],
    name: "Working Draft",
    harmonized_stages: %w[20.20 20.60 20.98 20.99],
  ),
  Pubid::Components::TypedStage.new(
    code: :cd,
    stage_code: :cd,
    type_code: :is,
    abbr: ["CD"],
    name: "Committee Draft",
    harmonized_stages: %w[30.00 30.20 30.60 30.92 30.98 30.99],
  ),
  Pubid::Components::TypedStage.new(
    code: :cdv,
    stage_code: :cdv,
    type_code: :is,
    abbr: ["CDV"],
    name: "Committee Draft for Vote",
    harmonized_stages: %w[40.00 40.20 40.60 40.92 40.98 40.99],
  ),
  Pubid::Components::TypedStage.new(
    code: :fdis,
    stage_code: :fdis,
    type_code: :is,
    abbr: ["FDIS", "PRF"],
    name: "Final Draft International Standard",
    harmonized_stages: %w[50.00 50.20 50.60 50.92 50.98 50.99],
  ),
  Pubid::Components::TypedStage.new(
    code: :is,
    stage_code: :published,
    type_code: :is,
    abbr: [""],
    name: "International Standard",
    harmonized_stages: %w[60.00 60.60 90.20 90.60 90.92 90.93 90.99
                          95.20 95.60 95.92 95.99],
  ),
].freeze
PROJECT_STAGES =

Project stages specific to International Standards These are IEC-specific workflow stages

{
  afdis: {
    abbr: "AFDIS",
    name: "Approved for FDIS",
    harmonized_stages: %w[40.99],
  },
  ccdv: {
    abbr: "CCDV",
    name: "Draft circulated as CDV",
    harmonized_stages: %w[40.20],
  },
  cdvm: {
    abbr: "CDVM",
    name: "Rejected CDV to be discussed at a meeting",
    harmonized_stages: %w[40.91],
  },
  cfdis: {
    abbr: "CFDIS",
    name: "Draft circulated as FDIS",
    harmonized_stages: %w[50.20],
  },
  decfdis: {
    abbr: "DECFDIS",
    name: "FDIS at editing check",
    harmonized_stages: %w[50.00],
  },
  ncdv: {
    abbr: "NCDV",
    name: "CDV rejected",
    harmonized_stages: %w[40.91],
  },
  nfdis: {
    abbr: "NFDIS",
    name: "FDIS rejected",
    harmonized_stages: %w[50.92],
  },
  prvc: {
    abbr: "PRVC",
    name: "Preparation of RVC",
    harmonized_stages: %w[40.60],
  },
  prvd: {
    abbr: "PRVD",
    name: "Preparation of RVD",
    harmonized_stages: %w[50.60],
  },
  rfdis: {
    abbr: "RFDIS",
    name: "FDIS received and registered",
    harmonized_stages: %w[50.00],
  },
  tcdv: {
    abbr: "TCDV",
    name: "Translation of CDV",
    harmonized_stages: %w[40.00],
  },
}.freeze

Class Method Summary collapse

Methods inherited from Base

#number_portion, #to_s, #validate!

Methods inherited from SingleIdentifier

#edition_portion, #language_portion, #number_portion, #publisher_portion, #to_s

Methods inherited from Pubid::Iec::Identifier

parse

Methods inherited from Pubid::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_s, #to_supplement_s, #to_urn, #urn_supplement_type, #urn_type_code

Constructor Details

This class inherits a constructor from Pubid::Identifier

Class Method Details

.typeObject



141
142
143
# File 'lib/pubid/iec/identifiers/international_standard.rb', line 141

def self.type
  { key: :is, title: "International Standard", short: nil }
end