Class: Pubid::Nist::Identifiers::CircularSupplement
- Inherits:
-
SupplementIdentifier
- Object
- Lutaml::Model::Serializable
- Identifier
- Pubid::Nist::Identifier
- SupplementIdentifier
- Pubid::Nist::Identifiers::CircularSupplement
- Defined in:
- lib/pubid/nist/identifiers/circular_supplement.rb
Overview
NBS Circular Supplement Identifier Wraps a base Circular identifier with supplement information
Examples:
- "NBS CIRC 101e2supp" → CircularSupplement(base: Circular(101, e2))
- "NBS CIRC 25supp-1924" → CircularSupplement(base: Circular(25), edition: 1924)
- "NBS CIRC suppJun1925-Jun1926" → CircularSupplement(edition with date range)
Constant Summary collapse
- TYPED_STAGES =
NOTE: CircularSupplement uses same TYPED_STAGES as Circular It's a variant edition pattern, not a separate series type
[ Pubid::Components::TypedStage.new( abbr: ["CIRC", "NBS CIRC"], stage_code: "published", type_code: "circ", ), ].freeze
Constants inherited from Pubid::Nist::Identifier
Pubid::Nist::Identifier::COMPACT_DROP_ATTRS, Pubid::Nist::Identifier::COMPACT_FLAT_CODES, Pubid::Nist::Identifier::COMPACT_FLAT_VALUES, Pubid::Nist::Identifier::EQUALITY_IGNORED_ATTRS
Class Method Summary collapse
Instance Method Summary collapse
Methods inherited from SupplementIdentifier
Methods inherited from Pubid::Nist::Identifier
#==, #append_mr_components, #append_short_components, #default_publisher, #edition_greater?, expand_code, expand_compact_hash, #extract_edition_number, from_hash, #hash, #initialize, #language, #matches?, #merge, parse, #publisher_abbreviated_name, #publisher_full_name, #render, #revision, #series_abbreviated_name, #series_code, #series_full_name, #supplement_short, #to_abbreviated_style, #to_full_style, #to_hash, #to_mr_string, #to_mr_style, #to_short_style, #to_slug, #translation, #weight
Methods inherited from 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_slug, #to_supplement_s, #to_urn, #urn_supplement_type, #urn_type_code, #year
Constructor Details
This class inherits a constructor from Pubid::Nist::Identifier
Class Method Details
.type ⇒ Object
29 30 31 32 |
# File 'lib/pubid/nist/identifiers/circular_supplement.rb', line 29 def type { key: :circ_supp, web: :circular_supplement, title: "NBS Circular Supplement", short: "CIRC" } end |
.typed_stages ⇒ Object
25 26 27 |
# File 'lib/pubid/nist/identifiers/circular_supplement.rb', line 25 def typed_stages TYPED_STAGES end |
Instance Method Details
#to_s(format = :short) ⇒ Object
39 40 41 42 43 44 45 46 47 |
# File 'lib/pubid/nist/identifiers/circular_supplement.rb', line 39 def to_s(format = :short) # Handle date range supplements (no base identifier) if supplement_date_range_start && supplement_date_range_end return "NBS CIRC sup#{supplement_date_range_start}-#{supplement_date_range_end}" end # Use parent's rendering for base + supplement super end |