Islandora Camp Colorado Admin Track.pdf · Select +Add link Name the new link Home and enter as...

Post on 07-Aug-2020

0 views 0 download

transcript

Islandora Camp ColoradoOctober 14th - Admin Track

Melissa Anez- Islandora FoundationErin Tripp - discoverygarden, Inc.

Course Outline● Intro to Drupal

○ Drupal/Fedora/Islandora○ Site content & structure○ Managing users and permissions○ Setting Blocks

● Setting up Islandora○ Basic configuration and check-ups○ Solution packs○ Creating collections

Course Outline● More setting up Islandora

○ Ingesting objects - single and batch○ Editing forms○ XACML Editor

● Setting up Search○ Intro to Solr○ Configure Solr search○ Setting Solr Blocks

Intro to Drupal

Drupal is...● open Content Management Framework

software maintained and developed by 630,000+ users and developers.

● endlessly customizable via Modules - functional plugins that either come with drupal or are developed by the community.

Drupal is...● the "website" side of Islandora. Non-repo

pages, menus, site theme, users - These are all managed by Drupal.

● content (pages, news items, users, etc) stored as nodes.

Fedora is...Flexible, Extensible, Digital/durable Object

Repository Architecture (general-purpose, open-source digital object repository system).

● originally developed by researchers at Cornell University as an architecture for storing, managing, and accessing digital content in the form of digital objects.

Fedora is...● a unique content and relationship modeling

framework that preserves the integrity of collections and can be modified to manage any digital asset.

● the storage layer of Islandora. Objects ingested into and managed with Islandora are stored in a Fedora repository - not in Drupal.

Islandora is...● a collection of Drupal modules that enables

you to create, ingest, and manage objects stored in a Fedora repository.

● the flexibility of Drupal on top of the robust storage of Fedora.

Islandora is...● an open source framework developed by the

University of Prince Edward Island's Robertson Library

● constantly being improved and developed. The latest version is 7.x-1.3 for Drupal 7, but version 7.x-1.4 will be released at the end of the month.

First Steps● Is Virtualbox running?

● Find your Islandora Camp VM and click Start

● Watch it go.

First Steps

Go to the home page of your Islandora site:

http://localhost:8181/username: admin

password: islandora

Create a Front Page● Select "Add Content"

Create a Front Page● Select Basic Page and fill out a title and basic

content.● Give your page a URL alias of home

● Navigate to Configuration -> Site information● Under Default front page, enter home● Save your changes.

Exercise - Site InfoGive your site a new name, slogan, and default email address.

Change the Logo● Navigate to Appearance

● Find the default theme (Bartik)○ Select Settings

● Find Logo Image Settings

● Browse to the Images folder in your Course

Pack and upload icampCO.png.

Menus● Navigate to Structure -> Menus

● Pick Main menu and list links:

Add a Home Link● Select +Add link

● Name the new link Home and enter <front> as the path○ This is a Drupal term that will always point to the

front page of your site.

Add a Home Link● Make sure the link is enabled and that the

parent link is <Main menu>

● Give a weight of -50 so the link will be first in the menu bar.

Exercise - MenusCreate an About page with a brief description of your site and create an About menu item that comes after Home.

Create a User● Navigate to People and the List tab

● Select +Add user○ Use whatever email address and username you like.

○ Do not set this user as an administrator.

● Create new account

Create a Role● Under People, navigate to the Permissions

tab and select Roles.

Create a Role● Add a new role called repo user

● Edit permissions for the repo user role

● Scroll to the islandora permissions.

○ This is where you need to understand basic FedoraCommons concepts...

FedoraCommons Concepts● Everything is an object● Objects are made of datastreams ● Content Models are templates for Objects● All Objects have unique persistent

identifiers, or PIDs● Objects are connected in a graph-like

structure

Graph

Hierarchy

This is a useful oversimplification

Islandora Permissions● View repository objects

○ View objects in the repository. Fedora XACML

security policies may override this permission.

● Add datastreams to repository objects

○ Add datastreams to objects in the repository. Fedora

XACML security policies may override this position.

Islandora Permissions● Edit metadata

○ Edit metadata for objects in the repository.

● Create new repository objects ○ Ingest new objects into the repository.

Islandora Permissions● Permanently remove objects from the

repository○ Purge Objects

● Manage object properties ○ Modify object labels, owner IDs, and states.

Islandora Permissions● View datastream history

○ View all previous versions of a datastream.

● Revert datastream history○ Roll back to previous version.

Islandora Permissions● Manage deleted objects

○ View and manage objects with a status set to

“deleted”

● Regenerate derivatives

○ Regenerate derivatives for an object or per

datastream.

● Replace Datastreams

○ Add new datastream content as latest version.

Islandora Permissions

● Islandora BagIt● Islandora Batch● Islandora Bookmark● Islandora FITS● Islandora Image Annotation● Islandora PREMIS● Islandora Paged Content● Islandora Scholar Embargo

● Islandora Simple Workflow● Islandora Solr● Islandora Solr Metadata● Islandora Sync● Islandora XACML editor (and

Api)● Islandora basic collection● Islandora Compound Object● Islandora XML Form Builder

● Many other modules come with permissions

Edit Permissions● Under Islandora permissions, find the

permission to View repository objects and:

○ Remove from Anonymous and Authenticated

○ Grant to repo user role

● Save permissions

Give your user this role● Return to People (admin/people) and find the user you

created earlier, edit this user, and grant them the repo user role

Exercise - Users● Create a new user and a repo manager

role. ● Give the repo manager role permissions

appropriate to edit and delete objects.● Assign the new user

to the repo manager role.

Working with BlocksBlocks are the boxes visible in various area of your Drupal website's screens. Most blocks (e.g., recent forum topics) are generated on-the-fly by various Drupal modules.

Whether, and where, a given block will appear on a page depends on both the theme enabled and on administrative block settings.

https://drupal.org/documentation/blocks

Working with Blocks● In the administrative menu, select Structure

and then Blocks

● Scroll down to the Disabled blocks at the bottom of the page and find Islandora simple search

● Click Configure

Working with Blocks● In Region Settings, set the block to display

in the First Sidebar○ To see where each region is, click Demonstrate

block regions in the main Block menu

● Scroll down Pages. Under Show block on specific pages, check All pages except those listed

● Enter islandora/search/* and save block.

Working with Blocks● Close the Blocks administrative menu and

go back to the front page of the site.● Search in the first search box for cats.● Search in the Islandora simple search box

for cats. You’re now searching the contents of your Fedora repository (we’ll make the results look better later).

Exercise - Blocks● Navigate back to the Blocks admin menu, look

for the blocks displayed in the First sidebar● Find Search form and set it to -none-● Scroll to the bottom and and save blocks. Now

only Islandora simple search is available for quick searching.

● Remove the visible label from the Islandora simple search block

● Set the block so that it does not display on your About page.

Setting up Islandora

Basic Settings● Islandora 7.x has its own administrative

menu, found under /admin/islandora

● All configuration options for Islandora modules (solution packs, tools, forms, etc) can be found here.

General configuration● admin/islandora/configure or

Configuration in the Islandora admin menu. Here you can:

○ Verify your site's connection to Fedora

○ Set the root collection PID used by Fedora

Solution PacksIslandora Solution Packs are Drupal modules offering custom Content Model Objects, Workflows, and Ingest Forms.

Solution Packs present a starting point for users with particular types of data, such as books or audio files, based on standard use cases.

Adding a Solution Pack● Islandora Solution Packs can be found via

http://islandora.ca/downloads (or check your iCampCO stick)

● Select your version, scroll down to the Downloads section, and download the modules you want to use.

Adding a Solution Pack

● For today, we have provided the SP you need in the Modules folder of your flash drive.

Adding a Solution Pack● Navigate to the Modules admin page● Click +Install new module

Adding a Solution Pack● Browse to Modules folder of your Course

Pack and install islandora_solution_pack_audio-7.x-1.3.zip

● Scroll to the Islandora section and enable Islandora Audio.

● Scroll to the bottom of the Modules page and Save Configuration.

Verify the New SP● Go to the Islandora admin page● Select Solution packs● Verify that all is well with your new SP:

Verify the new SP● If there is a problem with the content model

or default collection objects, you will see this:

Exercise - Installing a SPInstall the Video Solution Pack

CollectionsCollections are objects just like everything else, but in practice they can be considered synonymous with the traditional concept of a collection.

An Islandora collection has “Collection” Content Model in addition to data content models that define what kinds of data objects can "belong" to that collection.

Creating a New Collection● Navigate to where you want your collection

○ For today, let's use the root collection: Islandora Repository in the sidebar.

● Click Manage and then Collection

● Select +Add an object to this collection

Creating a New Collection● Collection Label: The human-readable name of

your collection.○ Please call it Cats

● Collection PID: assign a namespace and an identifier for your collection.○ Please use cats:collection

● Inherit collection policy: Should your collection take on the collection policies of its parent?○ Uncheck this and enable Islandora Basic Image

Content Model

Creating a New Collection● PID (Persistent Identifier): Every object in a

Fedora repository has a unique id with the format namespace:ID. This id is assigned when the object is created, and cannot be changed. The PID can be user-generated or managed based on information specified in the collection policy.

● Namespace: The namespace is a component of the PID. The namespace is defined in the collection policy, and will then be used to generate PIDs for the objects ingested into that collection.

Creating a New Collection● To create a collection within another

collection, the parent collection must have the Islandora Collection Content Model (islandora:collectionCModel) enabled under Manage collection policy.

○ Without this content model enabled, you will not have the option to Create child collection.

Setting Collection Policy● View your new empty collection Cats and

click Manage

○ View Datastreams - these are all created by default when a new collection object is created.

○ View Properties - this allows you to edit name, ownership, and status, and to delete your collection.

○ View Collection - This provides a number of collection management options.

Collection Tab

● Manage collection policy - Select which content models to enable and assign namespaces on a per-content model basis.

● Share members - Link objects in this collection to other collections in your repo.

Collection Tab● Migrate members - Move objects from one

collection to another. Unlike Share members, this removes the object from the starting collection.

● Delete members of this collection - Exactly what it sounds like. Use this to mass-delete selected objects. Use with caution - they cannot be recovered!

Exercise - CollectionsCreate a new collection under the root collection called Cat Pictures with an appropriate PID and the Basic Image collection enabled.

Sharing or Migrating ObjectsObjects in a collection can be moved to a new collection or shared among multiple collections, allowing for complex and changing structures in how your objects are organized and presented to visitors.

Sharing Objects● Migrate to the Basic Image Collection and

open the Manage tab.

● Select Collection and then Share members

● Share Cat Hug and Lasers! with Cat Pictures.

Migrating Objects● Migrate back to the Basic Image Collection

and open the Manage tab.

● Select Collection and then Migrate members

● Migrate both “Twisty” pictures to the collection Cat Pictures.

Ingesting ObjectsTo add new objects to a collection, they must be ingested. Objects can be ingested individually or in batches.

Ingesting a Single Object● Navigate back to the PEI Postcard

Collection.

● Click the Manage tab

● Select + Add an object to this collection

Ingesting a Single Object● Under Title enter: Carleton Beach, Sunset

● Type of Resource: Still image

● Geographic Information:○ Continent: North America○ Country: Canada○ Province: Prince Edward Island○ City: Carleton

Ingesting a Single Object● Click Next

● Browse in your Course Pack to the Images folder and select sunset.jpg. Ingest the object.

● View your object. Expand the Details tab to view the metadata you entered.

Batch IngestingFor larger collections, Islandora is able to pull multiple files out of a zipped archive and ingest them into Fedora as a batch, using the Islandora Batch Importer module.

Batch IngestingYou can zip and batch ingest:

● Content files (images, videos, etc)

● XML metadata that can later have content files added

● Both content files to be ingested and XML metadata to be appended to files

● Books, formatted with a specific directory structure

Batch Ingesting● In your Course Pack, navigate to the

Images folder and open the file sunset.xml with a text editing program (TextWrangler, Wordpad, Notepad, etc.)

● This file contains xml formatted metadata for the postcard you uploaded as a single object.

Batch Ingesting● Navigate back to the PEI Postcards

collection.

● Click Manage

● Click Collection

● Select + Batch Import Objects

Batch Ingesting● Importer: Zip File Importer

● Submit

● In your Course Pack, browse to Images and select PEI_Postcards.zip

Batch Ingesting● Content model: Islandora Basic Image

Content Model

● Object namespace: postcards

● Import. A progress bar will appear showing your progress.

Purging Objects● Navigate to Manage -> Collection and to

Delete members of this collection

● Find the duplicated records, check off one, and delete.

Editing Object Metadata● Navigate to the Cat Pictures and open

Twisty Cat. Click Manage.

● Go to the Datastreams tab and find the MODS datastream. Click edit.

● Under Name, change Pip to Ani.

● Scroll to the bottom of the form and click Update.

Exercise - Collections IICreate a new collection under the root collection called Dog Pictures and populate it from the Basic Image Collection. Ingest the picture gracie.jpg with the info in gracie_metadata.rtf. Correct the metadata of Not a Bear.

FormsXML Forms is a collection of Drupal modules that allow for the manipulation of XML documents though Drupal forms.

XML Form Builder makes it possible to create, copy, and edit ingest forms, and to affiliate them with Content Models in the repository.

FormsIn this section we will cover how to:

● Clone a form

● Change a form label

● Set a default entry

Cloning a FormWhen customizing a form, it is prudent to first clone the form and make your alterations to the clone, rather than editing the original form directly.

It is best to start by cloning the existing form associated with the content model your collection is utilizing

Cloning a Form● Go to Islandora -> Form Builder

● Find the Basic image MODS form

● Select Copy

● Name your form Custom Basic image MODS form

Cloning a Form● Click Copy

● You are now viewing the form editor for your new form.

● Select Form Properties to view the properties of your form

Changing a Form LabelForm labels and descriptions are editable, so you can customize a form to match the needs of your collection and provide relevant help text for users entering data.

Changing a Form Label● All fields in the form are listed in the

Elements panel

● Find the name element

● Alter the title of this element from Name to Creator

● Click Save & Preview

Set a Default ValueOn occasion you may wish to pre-populate certain fields to save time or prevent data entry errors. For instance, a large collection by a single creator or within a single genre.

Set a Default Value● Return to the Elements panel and find role

(textfield) under name (tabs)

● Under Default Value enter Photographer

● Save & Preview

Associate the FormFor a form to appear as an option on ingest, it must be associated with an appropriate content model.

Associate the Form● Go to Islandora -> Form Builder

● Find the Custom Basic image MODS form

● Click Associate

Associate the Form● Content Model: islandora:sp_basic_image

○ Begin typing the PID of the content model you wish to affiliate a form with, and the name will auto-complete. Try "basic"

● Metadata Datastream ID: MODS

● Title Field: ['titleInfo']['title]

Associate the Form● Click Add Association

● Navigate to the PEI Postcards Collection and ingest a new object. Your custom form is now available as an option on ingest.

Exercise - Forms● Clone the Basic image MODS form

● Name it Postcard basic image MODS form

● Change the label of genre(textfield) to Type.

● Set Postcards as the default value.

● Associate the form with the Basic Image CM

XACMLObject security in Fedora is defined by XACML (eXtensible Access Control Markup Language) policies.

Only adds restrictions. You cannot use object-specific XACML to remove a restriction that is set at the Fedora-wide level.

XACML Editor● Go to the PEI Postcard collection.

● Click Manage -> Object Policy

● You will see three sections for setting policy.

XACML Editor● Object Management: Controls who can set

XACML policies for an object/collection.

● Object Viewing: Controls who can view an object/collection.

● Datastreams and MIME types: Controls who can view datastreams by DSID and MIME type.

XACML Editor● What items would you like to apply this

policy to?

○ Determines how policies are applied to objects within the collection.

XACML Editor● Check Enable XACML Restrictions on

Object Viewing

● Under Allowed Roles, select all roles except repo user.

● Set Permissions

XACML Editor● See a warning? In order to prevent locking

yourself out, the XACML Editor will prompt you to always select your account and that of the admin user for Object Management.

● Under Object Management, select the admin user and Set Permissions again.

● Log in as the repo user and observe the change.

Exercise - XACML● Restore Object Viewing access to the

collection for the repo user role.

● Restrict the user in that role from viewing just the Carleton Beach, Sunset object in the collection.

● Log in as the repo user and observe the change.

Setting up Search

Searching with SolrIslandora uses Solr to make objects in your Islandora installation discoverable and allow you to configure search fields for searching and faceting.

Whenever you add a new object in Fedora, the Solr module updates your index, and makes those results available to your users.

Configuring Solr BlocksIslandora Solr comes with several blocks that need to be set in regions:● Islandora advanced search - place in First

sidebar● Islandora facets - place in First sidebar● Islandora query - place in Help● Islandora sort - place in Help

Configuring Solr Results● Go to Islandora -> Solr index -> Solr

settings

● Go to Default display settings

● Start typing mods_titleInfo_title_ms (autocomplete field should narrow the results quickly) and add the field once complete.

Configuring Solr Results● Click Configure

● Label the field Title and check Link to object

● Save Solr configuration and go search for cats.

● Check Limit results to fields listed above and resave.

Configuring Solr Results● Go to Solr settings

● Go to Sort settings

● Start typing mods_originInfo_dateIssued_dt and add the field once complete.

● Click Configure and label the field Sort by Date.

Configuring Solr Facets● Go to Solr settings

● Go to Facet settings

● Start typing mods_subject_hierarchicalGeographic_city_ms and add the field once complete.

● Click Configure and label the facet City.

Configuring Solr Facets● Start typing mods_name_personal_namePart_ms

and add the field once complete.

● Click Configure and label the facet Name.

● Set the Minimum limit to 1 and save.

● Go search for cats.

Configuring Advanced Search● Go to Solr settings

● Go to Advanced search block

● Start typing mods_name_personal_namePart_ms and add the field once complete.

● Click Configure and label the field Name.

● Save Solr configuration and go search for Doc.

Other Config Options● Query defaults

○ Can be used to shape the way Solr results are presented to the end user, e.g. by limiting to particular namespaces.

● Required Solr fields○ Defaults should be fine unless you’re doing

advanced configuration.

● Other○ Debug mode for testing.

Exercise - Solr● Set display fields for two other pieces of

metadata (look at a cat or dog record to see what’s available).

● Set another facet.

● Set another Advanced Search field.

Thanks!

http://xkcd.com/851/