Skip to content

Commit

Permalink
Collections (#1769)
Browse files Browse the repository at this point in the history
  • Loading branch information
rosiel authored Mar 4, 2021
1 parent 528ecf0 commit 252f013
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 13 deletions.
38 changes: 38 additions & 0 deletions docs/concepts/collection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Collections

Collections are groups of related content that can be viewed or managed as a unit. Islandora-specific use cases include:

- an archival fonds that needs to be grouped together, with internal hierarchy
- various collections of artifacts, grouped for display
- theses and dissertations, which are organized and managed separately from other objects.

Islandora provides:

- a field storage called "Member of" (field_member_of) that can be used to declare items to be members of other resources.
- a "Children" tab on resources, which provides a management interface to access, re-order, add, or delete the members of a resource.

Islandora on its own does not prescribe any particular content types, so this field storage can be implemented on any node bundle inteneded to represent Islandora resources. Islandora provides a generic "member of" relationship field to group objects under a "parent" object. This mechanism is shared by similar use cases: Paged Content and Compound Objects.

## Bulk management of members of a collection

Bulk management of items can be done using the Drupal contrib module [Views Bulk Edit Drupal module](https://www.drupal.org/project/views_bulk_edit). In short, build a view using this views field, and you will be able to perform Drupal Actions on objects. Neither Islanodra nor Islandora Defaults provide out-of-the-box management tools, but the sandbox provides some sample content and views that use Views Bulk Edit.

For more information see [forthcoming page] Concept: Bulk Edit

## Configuration provided by Islandora Defaults

Islandora (Defaults) provides:

- a content type ("Repository Item") that has the "member_of" field, so that users may add nodes of this type to a collection (or paged content, or compound resource),
- logic (a context) such that if a resource is tagged as a "collection", a view of its members will show on the collection's page.

For more details, see the tutorial on [How to create and add to a collection](../tutorials/how-to-create-collection.md)

## Tutorials

- [How to create and add to a collection](../tutorials/how-to-create-collection.md)





Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
Collections are groups of repository content that can be described themselves. Repository content is aggregated in a collection by setting the `field_member_of`
entity reference field to point to a collection. Generally speaking, anything can behave as a collection, and anything with `field_member_of` can be a member of a collection.
However, Islandora provides a "Collection" taxonomy term in the Islandora Models vocabulary that can be used to trigger collection-specific behavior.
For example, a context provided by Islandora Defaults will display a list of child resource node teasers on the resources' display page when this term is applied to the `field_model` field.

!!! Tip "Collections and Deleting"
Collections and their members are
independent of each other, and removing something from a collection does not delete it. **Similarly, deleting a
collection does not delete its members.**
# How to create and add to a Collection

This how-to demonstrates creating a collection and adding items to it in Islandora Defaults. For more about collections, see [Concept: Collection](../concepts/collection.md).

## Introduction

In Islandora Defaults, Collections that are tagged as "Collection" under System > Model will show a view of their member objects. A member is any object that is "member_of" that object, and can be added via the "Members" tab. This is the mechanism in Islandora Defaults; individual instances may vary.

!!! Warning "Collections and Deleting"
Collections and their members are independent of each other,
and removing something from a collection does not delete it.
**Similarly, deleting a collection does not delete its members.**

## Creating a Collection

Expand Down
8 changes: 4 additions & 4 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ nav:
# what everybody needs to know to understand Islandora and interact with it
# Possibly add page/section: How to use this documentation (containing user role definitions)
- Concepts:
- 'Collections': 'concepts/collection.md'
- 'Component Overview': 'installation/component_overview.md'
# moved from "Installation" section; alternatively duplicate a simplified version in the overview section
# also see Architecture Diagram in Developer documentation
Expand Down Expand Up @@ -88,7 +89,9 @@ nav:
# explaining why, and let the user decide if they want to look deeper at
# what these concepts are.
- 'Create a Resource Node': 'tutorials/create-a-resource-node.md'
# procedural, for people learning what islandora is.
# procedural, for people learning what islandora is.
- 'Create a Collection': 'tutorials/how-to-create-collection.md'
# procedural, repository managers/ curators
- 'Video Documentation': 'user-documentation/video-docs.md'
# mostly procedural, repository managers

Expand All @@ -112,9 +115,6 @@ nav:
- 'Media': 'user-documentation/media.md'
# conceptual and procedural, repository managers
# move out procedural description for deleting Media
- 'Collections': 'user-documentation/collections.md'
# conceptual and procedural, repository managers/ curators
# move out procedural description for creating and populating collections
- 'Paged Content': 'user-documentation/paged-content.md'
# conceptual and procedural, repository managers/ curators
# move out procedural description for ordering pages
Expand Down

0 comments on commit 252f013

Please sign in to comment.