/gist:153b46eb5b28045baf9c Secret
Last active
December 15, 2015 18:29
Northwestern's Digital Image Library (DIL) collection building features
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Features of user-generated groups: | |
- Generate new group (defaults to private access) | |
- See list of groups you have edit permissions for | |
- Drag image from search results to the collection you want to add it to | |
- Drag a collection onto another collection, making it a subcollection | |
- Expand a collection to see it's subcollections | |
- View the content of the collection (images and subcollections) | |
- Reorder the items within a collection | |
- Export the collection to Powerpoint | |
Screenshots: | |
http://imgur.com/NSlEHxJ,5sarg7k#0 | |
http://imgur.com/NSlEHxJ,5sarg7k#1 | |
Techincal implementation overview: | |
It was decided to persit our collection information in Fedora because these collections are considered | |
intellectual arrangements. Since we started with this app back in the Hydrangea days, we utilized the | |
existing MODS Om terminologies to store collection information. It might not be the best choice, | |
but we haven't gotten to changing it yet. | |
Our DILCollection Active-Fedora model: | |
https://gist.github.com/mstroming/78a3e020310f4cb81550 | |
We store the general information about the collection (it's title and not it's members) in this datastream. | |
This is a candidate for re-design. | |
It's OM terminology is here: | |
https://gist.github.com/mstroming/74ff24e02fc464620647 | |
The MODS XML is here: | |
https://gist.github.com/mstroming/130188be38b2699b0423 | |
When a member is added to a collection, we update the RELS-EXT in the collection and the member objects | |
(hasImage, hasSubcollection, isMemberOf relationships) and modify the MODS Collection Members datastream. | |
Example Fedora RELS-EXT RDF for a Collection that has a Subcollection, is a Subcollection and has an Image: | |
<rdf:RDF> | |
<rdf:Description rdf:about="info:fedora/inu:dil-local-6c39174b-2ad3-499c-a25a-414f89bcc426"> | |
<nulib-rel:hasImage rdf:resource="info:fedora/inu:dil-6ef3b0ac-6083-4027-89a3-139322c1c2a4"/> | |
<nulib-rel:hasSubcollection rdf:resource="info:fedora/inu:dil-local-279d372a-8dba-439d-bf76-ba4ce3380507"/> | |
<fedora-model:hasModel rdf:resource="info:fedora/afmodel:DILCollection"/> | |
<fedora-relations-model:isMemberOf rdf:resource="info:fedora/inu:dil-local-3b90783a-3001-4fdf-bc59-dea1fe4885a5"/> | |
</rdf:Description> | |
</rdf:RDF> | |
We also upate the MODS Collection Member datastream which maintains the order and allows duplicates. The Fedora | |
RELS-EXT does not do either. | |
Information about the members of the collections is in the MODS Collection Members datastream. | |
The OM terminology is here: | |
https://gist.github.com/mstroming/74ff24e02fc464620647 | |
The MODS Collection Member XML is here: | |
https://gist.github.com/mstroming/8b42d3d0139d26f3e274 | |
The Export to Powerpoint drops an XML JMS message to a Apache ActiveMQ JMS listener, routed using Apache Camel. | |
The Powerpoint is generate using the Apache POI Java library. | |
The DILCollection controller code is here: | |
https://gist.github.com/mstroming/e7b8d061febf3f6e492a |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment