sul-dlss / stanford-mods

Stanford specific parsings of MODS metadata
Other
3 stars 2 forks source link
access gem

Stanford::Mods

<img src="https://secure.travis-ci.org/sul-dlss/stanford-mods.png?branch=master" alt="Build Status"/> <img src="https://coveralls.io/repos/sul-dlss/stanford-mods/badge.png" alt="Coverage Status"/> <img src="https://gemnasium.com/sul-dlss/stanford-mods.png" alt="Dependency Status"/> <img src="https://badge.fury.io/rb/stanford-mods.svg" alt="Gem Version"/>

A Gem with Stanford specific wranglings of MODS (Metadata Object Description Schema) metadata from DOR, the Stanford Digital Object Repository.

Source code at github.

Generated API docs at rubydoc.info.

Installation

Add this line to your application's Gemfile:

gem 'stanford-mods'

And then execute:

$ bundle

Or install it yourself as:

$ gem install stanford-mods

Usage

  1. add stanford-mods to your gemfile
  2. require 'stanford-mods'
    m = Stanford::Mods::Record.new
    m.from_str('<mods><genre>ape</genre></mods>')
    m.genre      # <Nokogiri::XML::Element:0x3fe07b48bb24 name="genre" children=[#<Nokogiri::XML::Text:0x3fe07a09a7dc "ape">]>
    m.genre.text # "ape"

Example Using SearchWorks Mixins:

require 'stanford-mods/searchworks'
m = Stanford::Mods::Record.new
m.from_str('<mods><language><languageTerm authority="iso639-2b" type="code">dut</languageTerm></language></mods>')
m.language_facet  # ['Dutch'], from Searchworks mixin
m.languages       # ['Dutch; Flemish'] from mods gem

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Write code and tests.
  4. Commit your changes (git commit -am 'Added some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create new Pull Request

Releases