def marc_series_facet(spec = "440a:490a:800abcdt:810abcdt:811acdeft:830adfgklmnoprst")
      extractor = MarcExtractor.new(spec)

      lambda do |record, accumulator|
        values = extractor.collect_matching_lines(record) do |field, spec, extractor|
          extractor.collect_subfields(field, spec) unless (field.tag == "490" && field.indicator1 == "1")
        end.compact

        # trim punctuation
        values.collect! do |s|
          Marc21.trim_punctuation(s)
        end

        accumulator.concat( values )
      end
    end
def marc_series_facet(spec = "440a:490a:800abcdt:810abcdt:811acdeft:830adfgklmnoprst")
      extractor = MarcExtractor.new(spec)

      lambda do |record, accumulator|
        values = extractor.collect_matching_lines(record) do |field, spec, extractor|
          extractor.collect_subfields(field, spec) unless (field.tag == "490" && field.indicator1 == "1")
        end.compact

        # trim punctuation
        values.collect! do |s|
          Marc21.trim_punctuation(s)
        end

        accumulator.concat( values )
      end
    end
Adds in marc fields in spec (default is recommended series spec, but you can specify your own)
 -- only trick is that 490's are skipped of first indicator is 1 -- if 490 first
 indicator is "1", "series traced", that means the series title mentioned here is
 already covered by another field we're including, so we don't want to double count it, possibly
 with slight variation.