Library catalogues

This article explains how Talis products integrate with third party library management systems. Warning - it is quite in-depth!

Integration with library catalogues

This article is intended for a technical audience with assumed familiarity with the following topic areas:

  • Library Management Systems
  • MARC records
  • z39.50 services
  • JavaScript, CSS and HTML.

Basic concept

When constructing a reading list, the user will want to assemble a number of resources from different locations into the list.

TARL will try to find as much information out about the resource been bookmarked as possible. This information is used to lead the student back to the resource and make resource access as straightforward as possible.

Bookmarklet

The end user (often an academic or member of library staff) will add a javascript bookmarklet to their web browser favourites toolbar.

The user will be browsing a library catalogue or another website which has a page about a resource. If the user wants to add that resource to their library catalogue, they will click the Add to my bookmarks button.

Bookmarklet parser

The bookmarklet javascript will:

  • Inject a <script> tag into the HTML of the page being viewed.
  • Send the URL of the page being bookmarked to Talis Aspire.

Talis Aspire will send back some more javascript bookmarklet parser rules which are specific to the URL of the page being bookmarked. This javascript will look for data in the page that we can use to identify the resource. Typically we use jQuery andCSS selectors to find the elements on the page. Occasionally we can load other pages from the same domain and retrieve additional data from there.

Construct an openURL string to send to Talis Aspire

We use the data scraped from the page to build a set of openURL parameters which are then sent back to Talis Aspire. The parameters that we are able to use are explained in the Bookmarklet API documentation.

We automatically then redirect the user to Talis Aspire.

Temporarily redirect the user to Talis Aspire

The user is redirected to Talis Aspire Reading Lists in order to complete the bookmarking process. The user has the opportunity to:

  • Amend the data that is found
  • Add additional data if required.
  • Add the bookmark to their My Bookmarks, or
  • Add the bookmark to a recent list that has been worked on as well as My Bookmarks

Catalogue lookup

Where possible, we will prefer to lookup data from trusted sources, rather than use the data scraped from the source web page. A user could be bookmarking from a bookstore catalogue page or from some other web page containing ISBNs.

The data sent to the bookmarking API is used to determine what sort of lookup we will do.

IdentifierLookup from…Method
Local Control Number Local Library Catalogue only z39.50
ISBN Local Library Catalogue or else the Open Library z39.50 or in the case of Open Library URLbased
ISSN Cross Ref (Plus additional info such as volume and issue details) URL based
DOI Cross Ref URL based

Talis Aspire is able to read the resulting record and choose data from the record to build into its resource display. The record might be in MARC or some other XML format.

If the catalogue lookup fails to find a usable record then we resort to using the data passed to Talis Aspire via the Bookmarklet.

Z39.50

Where a library uses z39.50, in order to make this available to a number of parts of the Talis Aspire system, a single z39.50 endpoint is created within Talis Aspire Reading Lists which essentially proxies requests to the z39.50 service. This allows the application to easily make certain limited types of searches.

All z39.50 servers are required to support searching for ISBN, ISSN and Local Control Number. The attribute set expected to be in use is the Bib-1 attribute set

If multiple records are returned, the first result is the one that will be used.

Search for…TARL endpointEquivalent z39.50 searchNotes
ISBN /catalog/records/isbn/<ISBN> find @attr 1=7 <ISBN>  
Local Control Number /catalog/records/<LCN> find @attr 1=12 <LCN> This sometimes has to be requested as a special index. For Primo customers both the IE.MID (source record number) and the MARC record 001 need to be indexed in this field
CKey /catalog/records/ckey/<CKEY> find ^C <CKEY> Additional configuration is required in the tenancy to support the use of CKey as the default search type
any /catalog/records/any/<anything> find @attr 1=1016 <anything> This is rarely used as at allows a search in ANY field that is indexed by the z39.50 service. Not all z39.50 services support this.

Local Control Numbers

If we are successful with getting a MARC record from the Library catalogue, then one of the most important bits of information that we pull from the record is the Local Catalogue Number. This may or may not be the identifier used to get the record in the first place (e.g. ISBN lookup) but will be required by Talis Aspire for two purposes.

  1. To allow deep linking back in to the library catalogue from within the resource display of Talis Aspire.
  2. To allow library availability lookup to take place every time a user views the resource.

The exact location of the Local control number can vary between library systems. This is not an exhaustive list but typical known locations are:

System VendorProductLocal nameMarc fieldvalidation regular expression
ExLibris Alma Source Record Number (not present) Captured via Bookmarking
III Millennium and Sierra Record Number 907a or 035a /b[0-9]{7}/ (the check digit is ignored as it cannot be used when passed to the online catalogue)
SirsiDynix Unicorn and Symphony CKey May not be present or 001 use full value
Capita Alto and Chorus work id 001 use full value - always a numeric of varying length
Infor V-Smart   001

This LCN is unusual in that it will contain a forward slash

IS Oxford Heritage   Not applicable

The LCN is often a user entered field so varies wildly.

Library Availability

This is shown in Talis Aspire from the resource view of an item on a list. The availability will be fetched on each page load so that it always returns the most recent data.

Talis Aspire supports the following sources for Library Availability.

System VendorSystemService
ExLibris Alma z39.50 (Opac format record with <holdings>)
Exlibris Aleph X-Services
Capita Alto or Chorus Local Data Services - Capita Connect for Talis Aspire
III Millennium z39.50 (opac format record with <holdings>)
III Sierra (opac format record with <holdings>)
SirsiDynix Symphony z39.50 - Holdings are in the MARC 926 fields

Deep linking

Talis Aspire offers deep links back into the Library Catalogue in order to provide the student with an opportunity to place holds or find additional information about a resource.

Deep Link typeInfo
A deep link to the item Uses the Local Control Number
An optional deep link to an author and title search to aid alternative format and edition searches. Uses the title and author as seen on the resource in Aspire

Deep Links require the library catalogue to have a stable URL into which the appropriate value is placed by Talis Aspire. This will be the value as captured in the resource details and may have been edited by the user.

Typical stable URL patterns for different online catalogues might be as shown in the table below.

Example URLs

The *LCN* part of any of these URLs refers to a token that Talis Aspire uses to replace with the actual token captured by the bookmarking. The *author* and *title* are used in the other formats and editions urls and will be replaced with the author and title taken from the current resource being displayed.

The <customer> part in these examples refers to any specific identifier that identifies that particular customer to the system vendor and would be a static value.

System VendorOnline Catalogue ProductDeep Link Typeexample URL
Capita Prism 3 item http://capitadiscovery.co.uk/<customer>/items/*LCN*
Serial Solutions Summon 2 view in catalogue http://<customer>.summon.serialssolutions.com/#!/search/document?id=FETCHMERGED-<customer>_catalog_1_*LCN*1
Serial Solutions Summon 2 other formats editions http://<customer>.summon.serialssolutions.com/search?s.q=TitleCombined:(*title*)%20AND%20AuthorCombined:(*author*)
III Classic catalogue view in catalogue http://<customer-domain>/record=*LCN*
III Encore view in catalogue http://<customer-domain>/iii/encore/record/C__R*LCN*
SirsiDynix Symphony view in catalogue http://<customer-domain>/uhtbin/cgisirsi/x/0/0/5?user_id=WEBSERVER&&searchdata1=*LCN*{001}
ExLibris Aleph view in catalogue http://<customer-domain>/F?func=item-global&doc_library=<customer>&doc_number=*LCN*
ExLibris Primo view in catalogue http://<customer-domain>/primo_library/libweb/action/display.do?&vid=<customer>&doc=<customer-prefix>*LCN*
ExLibris Primo (alternative) view in catalogue http://<customer-domain>/primo_library/libweb/action/dlSearch.do?institution=<customer>&onCampus=false&vid=<customer>&query=any,contains,*LCN*&indx=1&bulkSize=10&dym=true&highlight=false&displayField=creator
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk