Class: PennMARC::Encoding
- Defined in:
- lib/pennmarc/helpers/encoding.rb
Overview
Extract encoding level and provide an opinionated rating of the encoding level
Constant Summary collapse
- LEADER_POSITION =
17
Constants included from Util
Util::TRAILING_PUNCTUATIONS_PATTERNS
Class Method Summary collapse
-
.level_sort(record) ⇒ Integer?
Return a value corresponding to the encoding level from the MARC leader.
Methods included from Util
#append_relator, #append_trailing, #datafield_and_linked_alternate, #field_defined?, #field_or_its_linked_alternate?, #join_and_squish, #join_subfields, #linked_alternate, #linked_alternate_not_6_or_8, #no_subfield_value_matches?, #prefixed_subject_and_alternate, #relator, #relator_join_separator, #relator_term_subfield, #remove_paren_value_from_subfield_i, #subfield_defined?, #subfield_in?, #subfield_not_in?, #subfield_undefined?, #subfield_value?, #subfield_value_in?, #subfield_value_not_in?, #subfield_values, #subfield_values_for, #substring_after, #substring_before, #translate_relator, #trim_punctuation, #trim_trailing, #trim_trailing!, #valid_subject_genre_source_code?
Class Method Details
.level_sort(record) ⇒ Integer?
Return a value corresponding to the encoding level from the MARC leader. Lower numbers indicate a higher level of description. See PennMARC::EncodingLevel for hash that determines the ranking. We still consider some “legacy” OCLC non-numeric codes here, though they are no longer recommended for use by OCLC. If an invalid value is found, nil is returned.
15 16 17 18 19 |
# File 'lib/pennmarc/helpers/encoding.rb', line 15 def level_sort(record) EncodingLevel::RANK[ record.leader[LEADER_POSITION] ] end |