...
Islandora Workbench works best when ingesting one collection at a time. To begin, login to Islandora 2.0 in your web browser and create a new collection called “Pacific Northwest Agricultural Photograph Collection”.
Step 3:
...
Acquire The CSV
Islandora Workbench requires a csv in either Google Sheets or on your local disk. The AG_Photos spreadsheet is provided as a sample input_csv and can be upload to your Google Drive.
https://wiki.lyrasis.org/download/attachments/273351526/Newspapers1909-10.xlsx?api=v2
Step 4: Build a Config File
Islandora Workbench uses YAML files to configure its operations. These files are documented in detail already, so for the purposes of this sample ingest we will use this config file:
task: create
host: "https://islandora.traefik.me/"
username: xxxx
password: xxxx
media_type: file
input_csv: 'xxx
...
Islandora Workbench uses YAML files to configure its operations. These files are documented in detail already, so for the purposes of this sample ingest we will use this config file: (update AG .xlsx link below after publish)
task: create
host: "https://islandora.traefik.me/"
username: xxxx
password: xxxx
media_type: file
input_csv: 'AG.xlsx'
id_field: PID
csv_field_templates:
- field_rights: "http://rightsstatements.org/vocab/CNE/1.0/"
- field_member_of: 103xxxx
- field_model: 13xxxx
- field_resource_type: 25xxxx
- field_display_hints: 21xxxx
default_file_mimetype: 'image/tiff'
default_file_extension: ".tif"
use_node_title_for_media: 1
allow_adding_terms: true
The csv_field_templates are fields that will apply to every resource in the collection. The numbers referenced in these fields are Drupal Node IDs; you will need to update these numbers in your config file based on the Node IDs in your Drupal instance:_field_templates are fields that will apply to every resource in the collection. The numbers referenced in these fields are Drupal Node IDs; you will need to update these numbers in your config file based on the Node IDs in your Drupal instance:
input_csv
The public link to your spreadsheet in Google Sheets
Note: If the gid of your spreadsheet does not automatically set to 0, you may need to set google_sheets_gid with the value from your spreadsheet. More information is available in the relevant workbench documentation .
field_member_of
This is the Node ID of the collection you created in step 2. You can find the ID by hovering over any of the tabs when you view the collection - it will be in the URL as “/node/id”.
...
Display hints are used to indicate where a viewer should be used. You can find the list of display hints and associated IDs at https://your.site/admin/structure/taxonomy/manage/islandora_display/overview. These are large images so we’ll want to use the Open Seadragon viewer.
Step
...
5: Prepare Ingest Spreadsheets
For this exercise we’ll be using a sample collection of 100 photographs. You can make a copy of the spreadsheet to try this exercise locally.
List of Fields
Label | Machine Name | Field Type | Vocabulary |
Identifier | field_identifier | Text(plain) | |
Title | Text(plain) | ||
Description | field_description_long | Text(formatted, long) | |
Abstract | field_abstract | Text(formatted, long) | |
Date (EDTF) | field_edtf_date | EDTF | |
Date | field_date_display | Text(plain) | |
Date Created | field_edtf_date_created | EDTF | |
Subject | field_subject | Entity Reference | Subject |
Geographic Subject | field_geographic_subject | Entity Reference | Geographic Subject |
Genre | field_genre | Entity Reference | Genre |
Extent | field_extent | Text(plain) | |
Source | field_source | Text(plain) | |
Language | field_language | Entity Reference | Language |
Contact Us | field_rights_contact | Text(formatted, long) | |
Rights | field_rights | Link | |
Resource Type | field_resource_type | Entity Reference | Resource Type |
Linked Agent | field_linked_agent | Typed Relation | Family, Corporate Body, Person |
Each of these fields will need to exist in your Islandora 2.0 installation prior to running Workbench or the operation will fail. Any fields that don’t already exist can be created using the Drupal interface. The name of the field in the CSV must match the machine name of the field in Drupal. Each field has a corresponding type that will also need to be set. This will be covered in detail in the next step.
Step
...
6: Configure Drupal Fields and Taxonomies
Taxonomies will need to be created for fields that use the Entity Reference or Typed Relation field types. For demo purposes you can leave these fields unpopulated or add a few test terms; new terms will be added automatically during the ingest if they do not already exist.
...
Note: RDF mappings are defined in a YAML configuration file. You can view and edit this file by going to /admin/config/development/configuration/single/export. Select RDF mapping for Configuration type and node.islandora_object for Configuration name. You can view the list of available RDF namespaces by going to /admin/config/search/jsonld.
Step
...
7: Check, Then Run
You should always check your configuration and spreadsheet are valid before running the ingest. Fortunately, Islandora Workbench makes this easy with the --check command:
...
Islandora Workbench works best when ingesting one collection at a time. To begin, login to Islandora 2.0 in your web browser and create a new collection called “Whitman College Pioneer, 1896-11-01”.
...
-11-01”.
Step 3: Acquire the CSV
Islandora Workbench requires a csv in either Google Sheets or on your local disk. The AG_Photos spreadsheet is provided as a sample input_csv and can be upload to your Google Drive.
Newspaper.xlsx
Step 4: Build a Config File
Islandora Workbench uses YAML files to configure its operations. These files are documented in detail already, so for the purposes of this sample ingest we will use this config file: (update newspaper.xlsx link below after publish)
task: create
host: "https://islandora.traefik.me/"
username: xxxxxxx
password: xxxxxxxxxxxx
input_csv: 'newspaper.xlsxhttps://wiki.lyrasis.org/download/attachments/273351526/Newspaper_fixed.xlsx?version=1&modificationDate=1674548425416&api=v2'
id_field: id
csv_field_templates:
- field_rights: "http://rightsstatements.org/vocab/CNE/1.0/"
- field_display_hints: 21xxxx
use_node_title_for_media: 1
allow_adding_terms: true
list_missing_drupal_fields: true
...
The csv_field_templates are fields that will apply to every resource in the collection. The numbers referenced in these fields are Drupal Node IDs; you will need to update these numbers in your config file based on the Node IDs in your Drupal instance:are Drupal Node IDs; you will need to update these numbers in your config file based on the Node IDs in your Drupal instance:
input_csv
The public link to your spreadsheet in Google Sheets
Note: If the gid of your spreadsheet does not automatically set to 0, you may need to set google_sheets_gid with the value from your spreadsheet. More information is available in the relevant workbench documentation .
field_display_hints
Display hints are used to indicate where a viewer should be used. You can find the list of display hints and associated IDs at https://your.site/admin/structure/taxonomy/manage/islandora_display/overview. These are large images so we’ll want to use the Open Seadragon viewer.
Step
...
5: Prepare Ingest Spreadsheets
For this exercise we’ll be using a sample collection of100 of 100 newspaper issues and pages. You can make a copy of the spreadsheet to try this exercise locally.
The first two columns are ‘id’ and ‘parent_id’. Each item is created one at a time, so the first item (a newspaper issue) serves as the parent for the subsequent items (pages). Field_weight is used to set the order of the pages, and field_member_of is used to put the issues in the top-level collection.
List of Fields
Label | Machine Name | Field Type | Vocabulary |
parent_id | |||
Weight | field_weight | Number(integer) | |
Member Of | field_member_of | Entity Reference | |
Model | field_model | Entity Reference | |
Identifier | field_identifier | Text(plain) | |
Title | Text(plain) | ||
Description | field_description_long | Text(formatted, long) | |
Abstract | field_abstract | Text(formatted, long) | |
Date Issued | field_edtf_date_issued | EDTF | |
Date (EDTF) | field_edtf_date | EDTF | |
Date | field_date_display | Text(plain) | |
Date Created | field_edtf_date_created | EDTF | |
Volume | field_volume_num | Text(plain) | |
Issue | field_issue_num | Text(plain) | |
Subject | field_subject | Entity Reference | Subject |
Geographic Subject | field_geographic_subject | Entity Reference | Geographic Subject |
Genre | field_genre | Entity Reference | Genre |
Extent | field_extent | Text(plain) | |
Source | field_source | Text(plain) | |
Language | field_language | Entity Reference | Language |
Contact Us | field_rights_contact | Text(formatted, long) | |
Rights | field_rights | Link | |
Resource Type | field_resource_type | Entity Reference | Resource Type |
Linked Agent | field_linked_agent | Typed Relation | Family, Corporate Body, Person |
Each of these fields will need to exist in your Islandora 2.0 installation prior to running Workbench or the operation will fail. Any fields that don’t already exist can be created using the Drupal interface. The name of the field in the CSV must match the machine name of the field in Drupal. Each field has a corresponding type that will also need to be set. This will be covered in detail in the next step.
Step
...
6: Configure Drupal Fields and Taxonomies
Taxonomies will need to be created for fields that use the Entity Reference or Typed Relation field types. For demo purposes you can leave these fields unpopulated or add a few test terms; new terms will be added automatically during the ingest if they do not already exist.
...
Note: RDF mappings are defined in a YAML configuration file. You can view and edit this file by going to /admin/config/development/configuration/single/export. Select RDF mapping for Configuration type and node.islandora_object for Configuration name. You can view the list of available RDF namespaces by going to /admin/config/search/jsonld.
Step
...
7: Check, Then Run
You should always check your configuration and spreadsheet are valid before running the ingest. Fortunately, Islandora Workbench makes this easy with the --check command:
...