Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Collections #1769

Merged
merged 7 commits into from
Mar 4, 2021
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 can be used to add a resource to a collection (or paged content, or compound resource),
seth-shaw-unlv marked this conversation as resolved.
Show resolved Hide resolved
- 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)
seth-shaw-unlv marked this conversation as resolved.
Show resolved Hide resolved

## 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