Class: ResearchMetadata::Transformer::ResearchOutput
- Inherits:
-
Object
- Object
- ResearchMetadata::Transformer::ResearchOutput
- Defined in:
- lib/research_metadata/transformer/research_output.rb
Overview
Note:
Do not use directly.
Extracts research output metadata from the Pure Research Information System and converts it into the DataCite format. For text-based resources.
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize(config) ⇒ ResearchOutput
constructor
A new instance of ResearchOutput.
-
#transform(id:, doi:) ⇒ String?
Research output transformation.
Constructor Details
#initialize(config) ⇒ ResearchOutput
Returns a new instance of ResearchOutput.
17 18 19 20 |
# File 'lib/research_metadata/transformer/research_output.rb', line 17 def initialize(config) @config = config @research_output_extractor = Puree::Extractor::ResearchOutput.new config end |
Instance Method Details
#transform(id:, doi:) ⇒ String?
Research output transformation
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/research_metadata/transformer/research_output.rb', line 27 def transform(id:, doi:) begin @research_output = @research_output_extractor.find id return nil if !@research_output person_o = person file_o = file resource = ::Datacite::Mapping::Resource.new( identifier: identifier(doi), creators: person_o['creator'], titles: titles, publication_year: publication_year, publisher: publisher, subjects: subjects, contributors: person_o['contributor'], language: language, resource_type: resource_type, sizes: sizes(file_o), formats: formats(file_o), rights_list: rights_list(file_o), descriptions: description ) resource.write_xml rescue => error raise error end end |