Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

22
Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections

Transcript of Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Page 1: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Marcus Barnes, Simon Fraser University, June 2, 2012

Drupal with CONTENTdm Digital Collections

Page 2: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

2

Outline

• Overview and Introduction: Drupal in Libraries and CONTENTdm

• CONTENTdm Integration Modules

• Tutorial Demo: Getting started with the CONTENTdm Integration Modules

• Closing Remarks with Q/A.

Page 3: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Drupal in Libraries

• Used by many libraries • Rich API• Thousands of ‘contrib’ modules• Ease of integrating with other systems• Thriving Drupal library community

• http://drupalib.interoperating.info• http://groups.drupal.org/libraries• drupal4lib email list

3

Bottom Line: Drupal offers the flexibility and control necessary for a library website while leveraging the power of an active open source community.

Page 4: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm

• CONTENTdm: “digital collection management software that allows for the upload, description, management and access of digital collections.”1 (Product offering of the Online Computer Library Center, Inc. (OCLC) [a non-profit membership cooperative.]

• Complex issues involved with digital collections – CONTENTdm is a vertical application that helps better manage these issues into the workflow.

• Windows client especially useful for enforcing business rules and quality control during the digitization and uploading stages of a project.

4

Page 5: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm Windows Client:Editing an Uploaded Item

5

Page 6: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm Windows Client:Adding Multiple Compound Objects

6

Page 7: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Overview of the CONTENTdm modules

• “A set of modules that allows users to search, browse and view CONTENTdm 6.x collections from within a Drupal website”

• Hosted at http://drupal.org/project/contentdm• Design principles

– Modularity– Extensibility– Ease of customization

7

Page 8: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Out of the box

• Basic search module• Viewers for image, PDF, media, compound

items, URL, and plain text items• Hierarchical document browser• Custom queries module, for prebuilt search

results• A 'scopes' module, which defines subsets of

CONTENTdm collections for searching and browsing

8

Page 9: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Technical architecture

9

CONTENTdm API

Drupal

search

Result 1Result 2Result 3Result 4Result 5

Query

Results

Display

Get / createDrupalnode

Determineviewer

TitleCreatorDescription

CommentsTags

Renderoutput

Page 10: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm Web Services API

• The Web Services API makes the CONTENTdm PHP API available through a REST interface

• SFU developed this API during the Multicultural Canada project, in partnership with Athabasca University

• Rationale: We needed to run the MCC website on a different web server than CONTENTdm was running on.– The PHP API was only available if you ran your

application (e.g., Drupal) on the same web server as CONTENTdm

10

Page 11: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm API details

• Released by OCLC as part of CONTENTdm 6.x

• REST calls mirror CONTENTdm 5.x PHP API functions– E.g., dmGetCollectionList, dmQuery,

dmGetItemInfo

• Response from CONTENTdm is returned in either XML or JSON

11

Page 12: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm API REST URLs

• Generic form– http://CdmServer.com:port/dmwebsetrvices/

index.php?q=function/param1/param2/format/help/log

• Specific example– http://content.lib.sfu.ca:81/dmwebservices/

index.php?q=dmQuery/all/subjec^canada^all^and/title!subjec/title/50/1/0/0/0/0/json

12

Page 13: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

13

• Sites that run the modules:

– Multicultural Canada (SFU)

– Denver Public Library

– Komagata Maru Journey (SFU)

– Chinese Canadian Stories (UBC)

CONTENTdm Integration Modules

Page 14: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm REST API:Typical Use Pattern

1. dmQuery– Searches CONTENTdm and returns a result list

2. dmGetItemInfo– Returns metadata, filename, and full text for the

designated item

3. dmGetCompoundObjectInfo– If the item is compound, returns a list of all its

children and its hierarchical structure

14

Page 15: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

CONTENTdm API: Applications

• CONTENTdm Integration modules for Drupal– http://drupal.org/project/contentdm

• Canadiana.org Metadata Exporter

• LOCKSS-friendly front end to CONTENTdm

• SFU Multisearch also uses the API to query CONTENTdm

15

Page 16: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Chinese Head Tax search

16

Page 17: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Komagata Maru passenger list entry

17

Page 18: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Google Docs Viewer integration

18

Page 19: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Demo

19

Assumptions:

•You know how to install an instance of Drupal 6.

•You have access to a CONTENTdm Server.

Page 20: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Future plans

• Migration to Drupal 7• Better synchronizing of updated / reloaded

items in CONTENTdm• Integration of more media viewers

– HTML5 media– PDFObject

• Integrate new features of the CONTENTdm APIs as they become available– Catcher

20

Page 21: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Closing Remarks

• http://drupal.org/project/contentdm• Contributors:

– Mark Jordan: markj (Project Creator & Leader)– Marcus Barnes: M.E.B. (forthcoming)– Andy Laken: laken (CONTENTdm Organic Groups integration)

21

A special thank you to the Simon Fraser University Library and the Library Systems group for their encouragement and support on this and other projects.

Page 22: Marcus Barnes, Simon Fraser University, June 2, 2012 Drupal with CONTENTdm Digital Collections.

Resources

• Putting content online: a practical guide for libraries by Mark Jordan (Oxford: Chandos, 2006)

22