Using ArchivesSpace

For a class I taught in summer 2014 at the Univ. of Texas at Austin School of Information, students used a basic installation of ArchivesSpace to create collection descriptions. The public interface of the ArchivesSpace installation they used is no longer available.

We did not have any kind of membership agreement with ArchivesSpace at the time I taught the class. I will note that working through ArchivesSpace without access to the members-only help is very frustrating. While the web-based interface to the system is fairly well documented (mostly taking the form of roll-over tooltips), the overall usability of the interface is only adequate, and the system would require extensive customization and configuration to be usable in an archival setting. Substantial configuration of the system would require back-end access to the server, which I don’t currently have.

The labs I created for students were minimal. Students did create some tutorials as one of their assignments; if I can get permission from students to share them, I’ll add some of them here, as well.

ArchivesSpace Labs & Instructions

  • Creating Accessions and Resources (pptx)
  • Creating Subject and Agent Authority Records (pptx)
  • Creating Rights Statements and Events (pptx)
  • Exporting EAD (pptx)
  • ArchivesSpace User and Group Management (docx)

ArchivesSpace Bugs and “Features”

Interface Issues

1. A default configuration of ArchivesSpace has “Help” links that go to the members-only documentation. Not very helpful. You can suppress the Help settings by changing the following options in archivesspace/config/config.rb:

## Help Configuration
#AppConfig[:help_enabled] = true
#AppConfig[:help_url] = “”
#AppConfig[:help_topic_prefix] = “/Default_CSH.htm#”

2. The default configuration of ArchivesSpace is apparently hard-coded to use “localspace” as the URL of the collection. The link to go from the public interface to the staff interface shows up as http://localhost:8080/ (and the public interface is conversely linked as http://localhost:8081/):

ArchivesSpace localhost

The settings for this are controlled in archivesspace/config/config.rb. To customize URLs, uncomment and modify the following settings:

#AppConfig[:backend_url] = “http://localhost:8089”
#AppConfig[:frontend_url] = “http://localhost:8080”
#AppConfig[:frontend_prefix] = proc { “#{URI(AppConfig[:frontend_url]).path}/”.gsub(%r{/+$}, “/”) }
#AppConfig[:solr_url] = “http://localhost:8090”
#AppConfig[:public_url] = “http://localhost:8081”
#AppConfig[:public_prefix] = proc { “#{URI(AppConfig[:public_url]).path}/”.gsub(%r{/+$}, “/”) }

3. The interface breaks if you scale the text up or shrink the window down. And when I say “breaks,” I mean in fairly unhelpful ways:

ArchivesSpace interface fail

The interface as it ought to appear:

ArchivesSpace home page

Adding an Agent

1. There is a nice little Plug-In for LCNAF Import. At least, it seems nice until you try to use it and have to parse through the MARC data for the various possible matches. It is actually pretty unusable.

ArchivesSpace LCNAF Plug-in

2. If you choose to Add an Agent –> Person, you note that LCNAF is not a possible source. ULAN is.

ArchivesSpace Agent Source drop-down

3. It is possible to add LCNAF to the list of controlled values in the drop-down box; the list to look for is name_source. Unfortunately, you can’t create both the short-form and translation; whatever you enter in the Value of the Add Source pop-up will also be used as the Translation.

ArchivesSpace Create Value

Adding a Resource

1. The Language field in the Basic Information panel is not marked as a required or even a recommended element, but if you don’t add the information you will get a warning when you try to save the resource.

ArchivesSpace Resource Language tooltip

2. Dates. If you add a date, the Expression is marked as “Conditionally Required … Required when a normalized date is not recorded.”

ArchivesSpace Resource Dates Expression tooltip

However, there is a bug that only appears if you select Bulk Date from the drop-down and you add normalized dates without also adding an Expression. If you don’t add any dates, you get an error on save, which is correct. If you add normalized dates but don’t also add an Expression, you get an error that only shows up when you export the EAD. The error file is attached, but it’s pretty cryptic. It took me a while to figure out and almost make one of my students have a nervous breakdown. Perhaps it ought to pop up as an HTML pop-up (though it would be pretty unhelpful even so), but instead it’s saved as an XML file with the name of the resource, as if it really were EAD.

The error as it would appear if it were HTML (which it’s not; the original filename here is 001.TX-LS.US_ead.xml):

ArchivesSpace error

The error as it appears if you open the xml file in a text editor, as if it were EAD. Trying to run a transform on it fails, of course, as my student found out the hard way.

ArchivesSpace EAD error

3. Finding Aid Data –> Description rules is an optional drop-down to select the content standard used. “Describing Archives: A Content Standard” is listed twice. Perhaps the second entry was supposed to refer to the 3rd edition? All of the tooltips refer to the second edition.

ArchivesSpace Content Standard drop-down

This is an editable list of values (many are not), so I could delete the redundant entry (although you can’t delete one once it has been used) or merge it with the other DACS entry, which is what I did (make sure that you merge the bad one into the good one, to preserve the short name for the drop-down). I also added a new entry DACS 2nd edition, but I can’t create both a short value (dacs2) and translation, as noted above.

ArchivesSpace Content Standard Controlled Value list

4. Adding Instances of Digital Objects with links. From a Resource (or any child element), go to the Instances section. Add a new Digital Object. A non-Digital Object Instance would be used to manage physical instances (boxes, folders, etc.).

 Screen Shot 2014-07-27 at 12.05.21 PM

In the File Version section of the Digital Object, add a valid URL as the URI. Make sure that Publish is marked as True. I’m not sure about the XLink settings; changing them doesn’t seem to affect the public interface, but the values do export to the EAD.

Screen Shot 2014-07-27 at 12.05.38 PM

Adding multiple File Versions is possible, but in my test only the first File Version appeared in the EAD output (though both appear in the public interface). If you want multiple hyperlinks in your EAD, it seems like you need to create a separate Digital Object for each one.

Alternatively, if you already have Digital Objects, you can associate them with a resource through the Instances panel. Click “Add Digital Object” and type a few letters of the name of the Digital Object you want to add in the search box. ArchivesSpace will attempt to identify possible Digital Objects in the same repository. You can click on the name of a Digital Object to view it (you have to click on the View button that pops up; the Digital Object will open in a new window/tab, so you don’t lose any changes you’ve made the the Resource you’re editing).

Screen Shot 2014-07-27 at 7.01.50 PM

When you have selected the correct Digital Object(s), save the resource. Although it’s tempting to click “Add Digital Object” again to confirm the addition, you should not do that. That button simply causes a new Digital Object entry box to appear.

Screen Shot 2014-07-27 at 7.00.55 PM

If you try to save the resource with an empty Digital Object, you will get a rather cryptic error:

 Screen Shot 2014-07-27 at 7.01.21 PM

Make sure the resource and all the children, etc. are published. You should be able to view your resource in the public interface to confirm that the digital objects exist and have hyperlinks.

Another bug in ArchivesSpace occurs if you select “Add Digital Object” from the Instances panel

A note about XLink: In general, the XLink Show Attribute “New” is supposed to cause the resource to open in a new window, while “embed” ought to work like an <img> element in HTML. The XLink Show Attribute “onLoad” ought to make an embedded image embed immediately, while “onRequest” should suppress it until it is clicked. See for more information. I don’t know why these don’t work in the ArchivesSpace public interface.


I’m not quite sure what sorts of events ArchivesSpace logs internally. It does create an event when transferring a resources from one repository to another. It does not log creation or deletion of resources or even accessions as events that can be viewed from the web interface. If I were to use the system in an archival setting, I’d want to be able to customize which events get logged. I’d also want to have an option to make copies of accessions/resources/digital objects — not just export the EAD or whatever, but actually start working on a record in a sandbox (which could be set not to have any public interface) and copy it over to a repository when ready, without deleting the original.

ArchivesSpace does have some logging at the backend. You can config this in archivesspace/config/config.rb:

## Log level for the backend, values: (everything) debug, info, warn, error, fatal (severe only)
#AppConfig[:backend_log_level] = “debug”

I need to experiment with this to see if anything useful gets logged with different settings.

In general, I’m not comfortable working on live systems. I want to have some level of version control in everything I’m doing. In my class, either I or a student managed to delete an accession the student had put a tremendous amount of work into. Poof! All gone, with no record of the work. This was an accession record — I don’t think you should be able to just delete those out of the system without leaving some trace of what happened.

Most of the issues listed here are just bad design, I think. The EAD export when using the Bulk Dates has been reported as an actual bug, as has the error message concerning empty Digital Objects. I’m assuming that the “Send Feedback” link actually works, of course; I haven’t yet received confirmation that a bug report was in fact received by anyone at ArchivesSpace.


I am an independent digital collections and library technology consultant in Austin, TX.

Leave a Reply