Download presentation
Presentation is loading. Please wait.
Published byJulian Tyler Modified over 6 years ago
1
Interoperability Between Aleph and Primo: Aleph Restful APIs
Yoel Kortick IGeLU Conference Ex Libris Systems Seminar Haifa, Israel, 2011
2
Table of contents Content Slides Introduction 3-4
EL Commons and the APIs 5-6 Functions vs. resources 7-8 jboss and jlog 9 Retrieval of record item 10-12 Bibliographic information 13 Retrieval of patron information 14-18 Retrieval of circulation actions 19-22 Viewing the jboss logs and comparing to Primo 23-32 Changing the item display text in Primo 33-38 Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
3
Introduction To see a full list of the Aleph Restful APIs: An introduction to the Aleph Restful APIs (including Jboss configuration) may be found at: Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
4
Introduction This presentation will not attempt to restate what is already in the previously mentioned documents. It will instead show actual examples via a standard URL, with a stress on the Restful API syntax. The presentation is designed to be an accompaniment to a real live lecture. Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
5
Documentation Via EL Commons
Begin with the EL Commons CodeShare Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
6
Via EL Commons One way to arrive to information about the RESTful APIs is to choose Aleph > Open Interfaces from within CodeShare Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
7
Functions and Resources
The list of RESTful APIs contains both “functions” and “resources”. In general, verbs are “functions” and nouns are “resources”. Thus: “bookings” is a “resource” and has a corresponding URL: “holds” is a “resource” and has a corresponding URL: Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
8
Functions and Resources
“Renew Loan” is a function. It is activated, for example, when a patron renews his loans from Primo This presentation deals only with resources Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
9
Jboss and jlog For the APIs to work the jboss must be running.
There is information regarding jboss configuration on EL commons at The jboss log files are in the jlog directory jlog cd $aleph_dev/ng/aleph/home/system/thirdparty/openserver/server/default/log Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
10
Record items This URL shows the items related to a particular record Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
11
Record items If we remove the /items at the end of the URL …
Then we get a list of the possible additional URLs which may be used for the API. In this case the possibilities are “items” and “holdings” (as we see in the next slide) Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
12
Record items Possibilities to use with the “record” parameter
Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Possibilities to use with the “record” parameter
13
Bibliographic information
If we remove use the ?view=full option then we can see the record in xml format Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
14
patron patronInformation address
This URL shows the address of the patron Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
15
patron If the URL is changed so that only “patron” and the “patron ID appear” (patronInformation is removed) … Then a list of all possible options to use with “patron” will appear (as we see on the next slide) Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
16
patron Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach We see here four possible options which may be used with “patron”
17
patron Each of the four options on the previous slide also may have additional options. For example the third option gives two additional options: blocks and registration Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Option one Option two
18
Patron patronStatus blocks
Here we are using patron, patronStatus and Blocks Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
19
circulationActions cash
This URL shows cash transactions of the patron Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
20
circulationActions cash
Note that the results also include a link to each specific cash transaction Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
21
circulationActions If we remove the /cash from the URL …
Then we will get a list of links to the possible options which may be used with circulationActions Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
22
Options with circulationActions
Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Links to the three options which may be used with circulationActions
23
Viewing DLFs in the jboss log
It is also possible to view the DLFs used by Primo by looking in the jboss log. The jboss log is in directory “$aleph_dev/ng/aleph/home/system/thirdparty/openserver/server/default/log” An alias “jlog” exists to this directory /exlibris/aleph/u20_1/alephe/scratch /exlibris/aleph/a20_1/ng/aleph/home/system/thirdparty/openserver/server/default/log_w1 jlog cd $aleph_dev/ng/aleph/home/system/thirdparty/openserver/server/default/log Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
24
Viewing DLFs in the jboss log
The log file is called: “localhost_access_log.YYYY-MM-DD.log” Each day it automatically is renewed -lrt localhost_access_log.2011* -rw-r--r-- 1 aleph exlibris Jun 13 23:45 localhost_access_log log -rw-r--r-- 1 aleph exlibris Jun 14 23:45 localhost_access_log log -rw-r--r-- 1 aleph exlibris Jun 15 23:55 localhost_access_log log -rw-r--r-- 1 aleph exlibris Jun 16 06:42 localhost_access_log log Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
25
Viewing DLFs in the jboss log
Let’s say for example that I am viewing records in Primo and click “locations” on one of the records… Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
26
Viewing DLFs in the jboss log
I will see this in Primo Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
27
Viewing DLFs in the jboss log
And I will see this in the jboss log [16/Jun/2011:07:20: ] "GET /rest-dlf/record/EMY /items?noItems=100&lang=eng&view=full&patron=&volume=&year=&sublibrary= HTTP/1.1" This URL can then be used to see the raw xml that was sent to Primo Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
28
Viewing DLFs in the jboss log
For example: Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
29
Viewing DLFs in the jboss log
The XML from Aleph and the display in Primo XML Sent from Aleph Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Appearance in Primo
30
Viewing DLFs in the jboss log
Now a reader who is logged in to Primo clicks “My Account” and then “Loans” Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
31
Viewing DLFs in the jboss log
The following appears in the jboss log [16/Jun/2011:07:41: ] "GET /rest-dlf/patron/ /circulationActions/loans?lang=eng&view=brief&type=active&institution=&no_loans= HTTP/1.1" This URL: Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Will bring the data on the list of loans
32
Viewing DLFs in the jboss log
XML Sent from Aleph Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach Appearance in Primo
33
Using tab_www_item_desc.eng
We will now use the table $data_tab/tab_www_item_desc.eng to change the display text of particular item information in Primo We are not changing actual data, only display information. For example a library may want a certain status to be called “Two weeks” but in Primo they may want to call it “14 days”. Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
34
Using tab_www_item_desc.eng
Here the status is “Two Weeks” in Primo Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
35
Using tab_www_item_desc.eng
It comes from here in the xml sent from Aleph Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
36
Using tab_www_item_desc.eng
Now in Primo instead of “Two weeks” it states “14 days” Previously it stated “Two weeks” Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
37
Using tab_www_item_desc.eng
The XML has not changed, it still states “Two weeks” Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach
38
Using tab_www_item_desc.eng
The reason it appears differently in Primo than it does in the XML is because in ADM library table $data_tab/tab_www_item_desc.eng we have translated “Two weeks” to “14 Days” ! !!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ITEM-STATUS Two weeks Days Unlike our competitors, we did not release a new revolutionized system every few years but rather took the evolutionary approach For more information see the table header
39
Thank You
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.