Class: Pubid::Jcgm::UrnParser

Inherits:
UrnParser::Base show all
Defined in:
lib/pubid/jcgm/urn_parser.rb

Overview

Parses JCGM URNs back into identifiers.

UrnGenerator emits urn:jcgm:{number}:{year} for guides and urn:jcgm:meeting:{number}:{year} for committee/meeting records.

Examples:

  • urn:jcgm:200:2012 → JCGM 200:2012
  • urn:jcgm:100:2008 → JCGM 100:2008
  • urn:jcgm:meeting:17:2012 → JCGM 17th Meeting (2012)

Instance Method Summary collapse

Methods inherited from UrnParser::Base

parse

Instance Method Details

#parse_urn(urn) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/pubid/jcgm/urn_parser.rb', line 15

def parse_urn(urn)
  parts = split_parts(strip_namespace(urn))
  return parse_meeting_urn(parts) if parts.first == "meeting"

  number, year = parts
  text = "JCGM #{number}"
  text += ":#{year}" if year
  flavor_parse(text)
end