Module: Pubid::Nist

Defined in:
lib/pubid/nist.rb,
lib/pubid/nist/parser.rb,
lib/pubid/nist/scheme.rb,
lib/pubid/nist/builder.rb,
lib/pubid/nist/components.rb,
lib/pubid/nist/identifiers.rb,
lib/pubid/nist/configuration.rb,
lib/pubid/nist/urn_generator.rb,
lib/pubid/nist/components/code.rb,
lib/pubid/nist/components/part.rb,
lib/pubid/nist/components/stage.rb,
lib/pubid/nist/identifiers/base.rb,
lib/pubid/nist/components/update.rb,
lib/pubid/nist/components/volume.rb,
lib/pubid/nist/identifiers/nsrds.rb,
lib/pubid/nist/identifiers/owmwp.rb,
lib/pubid/nist/components/edition.rb,
lib/pubid/nist/components/version.rb,
lib/pubid/nist/identifiers/ncstar.rb,
lib/pubid/nist/identifiers/report.rb,
lib/pubid/nist/components/publisher.rb,
lib/pubid/nist/identifiers/circular.rb,
lib/pubid/nist/identifiers/handbook.rb,
lib/pubid/nist/components/supplement.rb,
lib/pubid/nist/identifiers/monograph.rb,
lib/pubid/nist/supplement_identifier.rb,
lib/pubid/nist/components/translation.rb,
lib/pubid/nist/components/issue_number.rb,
lib/pubid/nist/identifiers/crpl_report.rb,
lib/pubid/nist/identifiers/technical_note.rb,
lib/pubid/nist/identifiers/internal_report.rb,
lib/pubid/nist/identifiers/letter_circular.rb,
lib/pubid/nist/identifiers/circular_supplement.rb,
lib/pubid/nist/identifiers/commercial_standard.rb,
lib/pubid/nist/identifiers/special_publication.rb,
lib/pubid/nist/identifiers/grant_contractor_report.rb,
lib/pubid/nist/identifiers/miscellaneous_publication.rb,
lib/pubid/nist/identifiers/commercial_standards_monthly.rb,
lib/pubid/nist/identifiers/commercial_standard_emergency.rb,
lib/pubid/nist/identifiers/federal_information_processing_standards.rb

Defined Under Namespace

Modules: Components, Identifiers Classes: Builder, Configuration, ConfigurationError, Parser, Scheme, SupplementIdentifier, UrnGenerator

Class Method Summary collapse

Class Method Details

.configurationConfiguration

Get the configuration instance

Returns:



30
31
32
# File 'lib/pubid/nist.rb', line 30

def self.configuration
  @configuration ||= Configuration.new
end

.parse(identifier) ⇒ Identifiers::Base

Parse a NIST identifier string

Parameters:

  • identifier (String)

    the identifier string to parse

Returns:



17
18
19
20
21
22
23
24
25
26
# File 'lib/pubid/nist.rb', line 17

def self.parse(identifier)
  # Use the Parser class's preprocessing method
  # Note: We call the class method directly to ensure preprocessing is applied
  parsed = Parser.class_parse_with_preprocessing(identifier)

  # Use Scheme and Builder for clean architecture
  # ONE CLASS PER SERIES TYPE (like ISO)
  builder = Builder.new(Scheme)
  builder.build(parsed)
end