Presentation is loading. Please wait.

Presentation is loading. Please wait.

Interoperability Between Aleph and Primo: Aleph Restful APIs

Similar presentations


Presentation on theme: "Interoperability Between Aleph and Primo: Aleph Restful APIs"— Presentation transcript:

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


Download ppt "Interoperability Between Aleph and Primo: Aleph Restful APIs"

Similar presentations


Ads by Google