Sha256: 71086f1245a2f6a6d7a651bd8ebd8b78129f0d1e6ab23faa43aacae9bf80d1ed
Contents?: true
Size: 1 KB
Versions: 35
Compression:
Stored size: 1 KB
Contents
module Krikri::Enrichments ## # Enrichment to remove non-genre fields from # # StripHtml.new.enrich_value('Book') => 'Book' # StripHtml.new.enrich_value('not a book') => nil # # Allowed genre terms are: # # - Book # - Film/Video # - Manuscript # - Maps # - Music # - Musical Score # - Newspapers # - Nonmusic # - Photograph/Pictorial Works # - Serial # # Removes all non-string values class GenreFilter include Audumbla::FieldEnrichment TERMS = ['Book', 'Film/Video', 'Manuscript', 'Maps', 'Music', 'Musical Score', 'Newspapers', 'Nonmusic', 'Photograph/Pictorial Works', 'Serial'] def enrich_value(value) return nil unless value.is_a? String term = TERMS.select do |t| t.downcase.gsub(/[^a-zA-Z]/, '') == value.downcase.gsub(/[^a-zA-Z]/, '') end term.empty? ? nil : term.first end end end
Version data entries
35 entries across 35 versions & 1 rubygems