Aeon ArchivesSpace Client Addon (WebView2 & Chromium)

NameAeon ArchivesSpace Client Addon
Version3.0.2
AuthorAtlas Systems, Inc.
Description
This addon is used to integrate the ArchivesSpace staff interface into the Aeon Client request form so that staff can search the records of their ArchivesSpace instance and import details into Aeon requests.
Custom Fields SupportNo
WebView2 SupportYes

You must be on Aeon version 5.0 to use this Addon. Note that if you are on Aeon 5.2, the addon will use the WebView2 browser. If you are on Aeon 5.0 or 5.1, the addon will use the Chromium browser.

Developers

This addon is available for developers to modify and extend. Developers are encouraged to submit changes to this addon by forking the git repository from GitHub and creating a pull request.

Download

Release Notes

Release notes are available for Aeon ArchivesSpace Client Addon v3.0.2 and later.
  • v3.0.2:
    • Fixed an issue where the addon would not properly dispose of the WebClients used for API calls, which could potentially lead to memory leak issues.

Configuration

Addon settings are configured in the Manage Addons form.

SettingDefaultTypeDescription
AutoSearch
True 
Boolean


Defines whether the search should be automatically performed when the form opens.
ArchivesSpaceStaffURL

String
The URL of the ArchivesSpace web interface for staff. An example would be "http://127.0.0.1:8080/"
ArchivesSpaceBackendURL

String
The URL of the ArchviesSpace API service. An example would be "http://127.0.0.1:8089/"
AS_Username

String


The staff username to use when logging in to the web interface. An example would be "admin"
AS_Password

String
The staff password to use when logging in to the web interface. An example would be "admin"
AutoSearchPriority
Title, Author,
CallNumber
String
A comma-separated list of searches to be performed in order.

Note

Because the username and password fields are stored in plain text, it is recommended that staff do not use their own account for this addon. Instead, administrators should create an account specifically for this addon that has read-only permissions on the relevant repositories.

Data Mappings


The DataMapping.lua file contains mappings that can be modified in order to fine-tune the addon to a particular instance of ArchivesSpace. Examples of mapping includes adjusting the ArchivesSpace search types to specific Aeon fields, the mapping between Aeon fields and the different ArchivesSpace object types, and the patterns used to identify the types of pages the user is on.

Caution

Be sure to backup the DataMapping.lua file before making modifications Incorrectly configured mappings may cause the addon to stop functioning correctly. 

ASpaceSearchCode

ASpaceSearchCode defines the keyword in the search url that defines the type of search ArchivesSpace will perform.

Example

{ArchivesSpace Instance URL}:8080/advanced_search?utf8=%E2%9C%93&advanced=true&t0=text&op0=&f0={ASpaceSearchCode}&top0=contains&v0={Query}

SearchMapping

SearchMapping defines the relationship between an Aeon field and the type of ArchivesSpace search will be performed. The AeonSourceField takes an Aeon Transaction's field and the ASpaceSearchType takes an ASpaceSearchCode from the mapping above.

InstanceDataImport

InstanceDataImport establishes the mapping between an Aeon field and data from ArchivesSpace. The mapping also requires the field length of the Aeon field and the column the data will be placed into in the addon's item grid.

Note

Information about the Aeon Database such as field names and lengths can be found in our documentation.

Item Grid Fields

Fields
Title
SubTitle
Call Number
Author
Volume


Available ArchivesSpace Data - Archival Object

Data Mapping NameDescriptionArchivesSpace API Property
ArchivalObjectTitle

The title of the archival object

archival_objects > title 

ResourceTitle

The title of the resource that the archival object belongs to 

resources > title 

EadId

The resource's EAD ID

resources > ead_id 

Creators

The primary names of the creators associated with the archival object delimited by a

agents > people > display_name > primary_name 

ArchivalObjectContainer

The display string of the archival object's top container 

top_containers > long_display_string 

Further information about the ArchivesSpace API can be found on their documentation page

Important

Do not modify the HostAppInfo.InstanceDataImport table name (E.G. HostAppInfo.InstanceDataImport[{Table Name}]). The addon uses the table name to find the information. The data within the table, however, is designed to be customized.


CitationDataImport

Citation data can be imported when a specific instance of an object can't be imported or isn't supported yet. The citation data can be imported for Resources, Accessions, and Digital Objects. Each citation data type has its own mappings.

Available ArchivesSpace Data - Resources

Data Mapping NameDescriptionArchivesSpace API Property

Title 

The title of the resource 

resources > title

FindingAidTitle

The title of the resource that the archival object belongs to 

resources > finding_aid_title 

DateExpression

The date expression of the resource 

resources > dates > date_expression 

Creators

The primary names of the creators associated with the archival object delimited by a

agents > people > display_name > primary_name 

CreatedBy

The user that created the record 

resources > created_by 

EadId

The EAD ID of the resource 

resources > ead_id 


Available ArchivesSpace Data - Accessions

Data Mapping NameDescriptionArchivesSpace API Property

Title 

The title of the accession

accessions > title

DisplayString

The display string of the accession record

accessions > display_string

DateExpression

The date expression of the accession record

accessions > dates > date_expression

CreatedBy

The user that created the record 

accessions > created_by

AccessionDate

The date the accession was created

accessions > accession_date


Available ArchivesSpace Data - Digital Objects

Data Mapping NameDescriptionArchivesSpace API Property

Title 

The title of the digital object

digital_objects > title 

DateExpression

The date expression of the digital object 

digital_objects > dates > date_expression

Creators

The primary names of the creators associated with the archival object delimited by a

agents > people > display_name > primary_name 

CreatedBy

The user that created the record 

resources > created_by 

FileUriThe URI to the digital object's file

digital_objects > file_uri

DigitalObjectIdThe ID of the digital objectdigital_objects > digital_object_id

PageUri

The PageUri mapping is the pattern that identifies the page type the addon is currently on. These are not likely to change from site to site, but can be adjusted if necessary.

Addon Files

Config.xmlThe addon configuration file.
DataMapping.luaThe data mapping file contains mappings that can customize the addon to the specific ArchivesSpace Instance
Aeon-ArchivesSpace.luaThe Aeon-ArchivesSpace.lua is the main file for the addon.
layout.xmlThe layout definition for the addon in Aeon


Additional Dependencies

The addon has additional dependencies for it to work. The dependencies must be added into your Aeon addon folder. The dependencies are included with the download of the addon.

AtlasHelpersContains various utility functions that are common to many Atlas addons.
Atlas-Addons-Lua-ParseJsonA JSON Parser for lua. It is used to parse the information returned by the ArchivesSpace API