Skip to content
This repository has been archived by the owner on May 8, 2023. It is now read-only.

CDLUC3/merritt-manifest

Repository files navigation

Merritt Manifest Tools

This library is part of the Merritt Preservation System.

This library is not likely in active use, but it has been shared to RubyGems.

See https://rubygems.org/gems/merritt-manifest

Purpose

A library for creating Merritt text-based manifests (a specialization of the Checkm text-based manifest format).

See the Merritt ingest service docs for more information.

Object support

Single-object manifests are supported via the Merritt::Manifest::Object class:

obj_manifest = Merritt::Manifest::Object.new(
  files: [
    {
      file_url: 'http://merritt.cdlib.org/samples/4blocks.jpg',
      hash_algorithm: 'md5',
      hash_value: '0b21c6d48e815dd537d42dc1cfac0111',
      file_name: '4blocks.jpg'
    },
    {
      file_url: 'http://merritt.cdlib.org/samples/4blocks.txt',
      hash_algorithm: 'md5',
      hash_value: 'ed04a855f89f31f8dc8e9bb946f5f159',
      file_name: '4blocks.txt'
    }
  ].map { |h| OpenStruct.new(h) }
)

puts obj_manifest.write_to_string
#%checkm_0.7
#%profile | http://uc3.cdlib.org/registry/ingest/manifest/mrt-ingest-manifest
#%prefix | mrt: | http://merritt.cdlib.org/terms#
#%prefix | nfo: | http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#
#%fields | nfo:fileUrl | nfo:hashAlgorithm | nfo:hashValue | nfo:fileSize | nfo:fileLastModified | nfo:fileName | mrt:mimeType
http://merritt.cdlib.org/samples/4blocks.jpg | md5 | 0b21c6d48e815dd537d42dc1cfac0111 |  |  | 4blocks.jpg
http://merritt.cdlib.org/samples/4blocks.txt | md5 | ed04a855f89f31f8dc8e9bb946f5f159 |  |  | 4blocks.txt
#%eof

Batch support

Batch manifests are not yet supported.

DataONE Manifest support

DataONE manifests are supported via the Merritt::Manifest::DataONE class:

dataone_manifest = Merritt::Manifest::DataONE.new(
  files: {
    'Laney_300394_Exempt_Determination_Letter.pdf' => 'application/pdf',
    'Laney_IRBProposal.docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
    'SensorSurvey_Printout.pdf' => 'application/pdf',
    'clean_survey_data_no_ids.csv' => 'text/csv',
    'research_coords.csv' => 'text/csv',
    'survey/Q10/research_sites.R' => 'text/plain',
    'survey/Q11-23/sensors_platforms.R' => 'text/plain',
    'survey/Q24/limitsToExpansion.R' => 'text/plain',
    'survey/Q25-32/data_metadata_management.R' => 'text/plain',
    'survey/Q3-9/respondent_info.R' => 'text/plain',
    'survey/Q33-37/networking.R' => 'text/plain',
    'survey/Q38-42/publications.R' => 'text/plain',
    'survey_data_prep.R' => 'text/plain'
  }.map { |name, type| OpenStruct.new(name: name, type: type) }
)

puts dataone_manifest.write_to_string
#%dataonem_0.1
#%profile | http://uc3.cdlib.org/registry/ingest/manifest/mrt-dataone-manifest
#%prefix | dom: | http://uc3.cdlib.org/ontology/dataonem
#%prefix | mrt: | http://uc3.cdlib.org/ontology/mom
#%fields | dom:scienceMetadataFile | dom:scienceMetadataFormat | dom:scienceDataFile | mrt:mimeType
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | Laney_300394_Exempt_Determination_Letter.pdf | application/pdf
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | Laney_300394_Exempt_Determination_Letter.pdf | application/pdf
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | Laney_IRBProposal.docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | Laney_IRBProposal.docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | SensorSurvey_Printout.pdf | application/pdf
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | SensorSurvey_Printout.pdf | application/pdf
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | clean_survey_data_no_ids.csv | text/csv
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | clean_survey_data_no_ids.csv | text/csv
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | research_coords.csv | text/csv
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | research_coords.csv | text/csv
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q10/research_sites.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q10/research_sites.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q11-23/sensors_platforms.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q11-23/sensors_platforms.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q24/limitsToExpansion.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q24/limitsToExpansion.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q25-32/data_metadata_management.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q25-32/data_metadata_management.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q3-9/respondent_info.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q3-9/respondent_info.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q33-37/networking.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q33-37/networking.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey/Q38-42/publications.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey/Q38-42/publications.R | text/plain
mrt-datacite.xml | http://datacite.org/schema/kernel-3.1 | survey_data_prep.R | text/plain
mrt-oaidc.xml | http://dublincore.org/schemas/xmls/qdc/2008/02/11/qualifieddc.xsd | survey_data_prep.R | text/plain
#%eof

About

Merritt manifest generation library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages