Sha256: 3866f962f413c0f4547f35e6d4ff842399b6775fd87826b5c521dd64fe734c86

Contents?: true

Size: 1.28 KB

Versions: 17

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

module Briard
  module Writers
    module RisWriter
      def ris
        {
          'TY' => types['ris'],
          'T1' => parse_attributes(titles, content: 'title', first: true),
          'T2' => container && container['title'],
          'AU' => to_ris(creators),
          'DO' => doi,
          'UR' => url,
          'AB' => parse_attributes(descriptions, content: 'description', first: true),
          'KW' => Array.wrap(subjects).map do |k|
                    parse_attributes(k, content: 'subject', first: true)
                  end.presence,
          'PY' => publication_year,
          'PB' => publisher,
          'LA' => language,
          'VL' => container.to_h['volume'],
          'IS' => container.to_h['issue'],
          'SP' => container.to_h['firstPage'],
          'EP' => container.to_h['lastPage'],
          'SN' => Array.wrap(related_identifiers).find do |ri|
                    ri['relationType'] == 'IsPartOf'
                  end.to_h.fetch('relatedIdentifier', nil),
          'ER' => ''
        }.compact.map do |k, v|
          if v.is_a?(Array)
            v.map do |vi|
              "#{k}  - #{vi}"
            end.join("\r\n")
          else
            "#{k}  - #{v}"
          end
        end.join("\r\n")
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
briard-2.9.4 lib/briard/writers/ris_writer.rb
briard-2.9.3 lib/briard/writers/ris_writer.rb
briard-2.9.2 lib/briard/writers/ris_writer.rb
briard-2.9.1 lib/briard/writers/ris_writer.rb
briard-2.9.0 lib/briard/writers/ris_writer.rb
briard-2.8.2 lib/briard/writers/ris_writer.rb
briard-2.8.1 lib/briard/writers/ris_writer.rb
briard-2.8.0 lib/briard/writers/ris_writer.rb
briard-2.7.1 lib/briard/writers/ris_writer.rb
briard-2.7.0 lib/briard/writers/ris_writer.rb
briard-2.6.7 lib/briard/writers/ris_writer.rb
briard-2.6.6 lib/briard/writers/ris_writer.rb
briard-2.6.5 lib/briard/writers/ris_writer.rb
briard-2.6.4 lib/briard/writers/ris_writer.rb
briard-2.6.2 lib/briard/writers/ris_writer.rb
briard-2.6.1 lib/briard/writers/ris_writer.rb
briard-2.6.0 lib/briard/writers/ris_writer.rb