NYULibraries/ichabod — pull request #60 by scotdalton (2014-09-02 20:00:57+00:00)
Title: Feature/multiple metadata streams

@jgpawletko, @barnabyalter, @NYULibraries/hydra

This PR isn't quite ready to be merged but wanted to get some eyes on it.

Highlights:
- Multiple `NyucoreRdfDatastreams`, one for "source" and one for "native"
- Nyucore attribute readers that return both "source" and "native", e.g.

```ruby
pid = 'prefix:pid'
item = Nyucore.new(pid: pid)
item.native_metadata.title = 'Native title'
item.source_metadata.title = 'Source title'
item.title
# => ['Source title', 'Native title']
```
- Nyucore attribute writers that write to the "native" datastream, e.g.

```ruby
pid = 'prefix:pid'
item = Nyucore.new(pid: pid)
item.native_metadata.title
# => []
item.title = 'Native title'
item.native_metadata.title
# => ['Native title']
```
- Documentation in the form of comments on the Nyucore functionality
- `Nyucore::Metadatum` that extends `String` to provide insight into the value's datastream
- Default editor applied at the controller level on creation of an Nyucore
- Expdanded testing coverage for the Nyucore model
- Display "source" metadata as un-editable HTML `

`s and "native" metadata as
- Find or initialize an Nyucore when loading data from source via a ResourceSet::Resource in order to preserve "native" metadata