SlideShare a Scribd company logo
Single API for library services
Milan Janíček (milan.janicek@techlib.cz)
National Technical Library, Prague, Czech Republic
                                                                                                                     555 mm




Introduction                                                                                                             Background
If we have data from library systems accessible in a simple format it will be much easier to work with them              It is not always necessary for users to visit the library's OPAC when they need some basic information about
and even to present them in many various ways. However library system’s APIs are often focused more                      a book or journal. Title, author, subject headings or accessibility is the information which can be viewed quickly
on interoperability rather than data presentation. This poster introduces draft of a single API point which allows       and often it is all what OPAC is expected to provide. Assuming we have an identifier, there are actually a few
to access basic data in simple formats. JavaScript demo application which fetches the data from created API              options how to provide the information to the users. Hard links to OPACs seem to be quite complicated and they
and displays them in user friendly manner is also presented.                                                             make the users leave the page they are visiting. SFX can help but SFX Menu provides mainly links not
                                                                                                                         information.

        Data Sources                             Single API                                                              How else can be the data for the user’s ‘first look’ provided? The best way would be to pick them from systems
                                               (Server Side)                                 Clients                     where they actually are and to display them (for example using some JavaScript code). There are some existing
                                                                                                                         ways how to get the data, but for example Aleph APIs are better suited to interoperability than to providing
                                                                                                                         the data itself. Used XML formats are quite complex and it is almost necessary to have access not only to API
                                                                                                                         itself but also to the documentation.

        SFX                                                                                                              The main idea of this work is to
        (SFX XML API)                                                                                 Client             
                                                                                                                           use data from existing APIs
                                SFX                                                                (Javascript)          
                                                                                                                           modify them on the server and to publish them in a simple format
                                model                              JSON                                                  
                                                                                                                           build applications / use the data in this simple format


                                                                                                                         Client side
        Aleph                                                                                                            There are several possible usage scenarios – data can be processed by JavaScript in web browsers (as described
                                                                                                       Client
        (Aleph X-Server)                                                                                                 in this poster) but also by servers (eg. using PHP Perl, ASP for example for OPAC enhancements.
                                                                                                                                                                           ,         ...)
                                                                                                       (PHP)
                                Aleph        Processing
                                model          fetched             HTML                                                  JavaScript Demo
                                                                                                                         Demo application gets data from Single API and displays them on any webpage.
                                                 data                                                                    It is not necessary to fetch the data which are not displayed.
                                                                                                      Client             Asynchronous JavaScript is used – there is no delay between getting the results and displaying them.
        Book covers                                                                                 (Browser)
        (different sources)                                                                                              How does it work?
                                Covers                                                                                   At first empty frame is created.
                                model                             plaintext

                                                                                                       Client



Picture 1: Application Scheme.
Data are fetched from Data sources, then processed and provided to the clients in simple formats.
                                                                                                                         Data are fetched from Single API – identifier is given to JavaScript as an argument (ISSN, ISBN, system number).
                                                                                                                              (Using of queries is described in „Server Side“ Section)
                                                                                                                         Data are filled into right places in the frame.
Server Side
Single API application is written in Ruby on Rails and uses data from APIs of Aleph, SFX etc. for creating of            There are 4 tabs in demo application: Info, SFX, PSH Headings, Holdings
simple responses to specified queries.
Although only 3 services are used in the current state, more can be added in a similar way.                              Info
                                                                                                                         Displays basic information – Title, Author, Publisher, Year, ISBN, system number
  ●
      input: multiple services API (SFX XML API, Aleph X-Server, different book covers services)
  ●
      output: data in a simple format (plaintext, HTML, JSON)

Queries / Responses Examples:
What is the title of the book with ISBN 0-9776166-3-0?
Q: http://localhost:3000/aleph/title?isbn=0-9776166-3-0
R: Agile web development with rails
                                                                                                                         SFX
Who is the author of the book with system number 000670373?
Q: http://localhost:3000/aleph/author?sysno=000670373                                                                    Displays selected services from SFX menu (max. 4 items) – getFullTxt, getAbstract, getTOC, getHolding
R: Knuth, Donald Ervin,                                                                                                  All links are active – same as in SFX menu.
                                                                                                                         Link to SFX instance is also created.
What are the subject headings terms (psh) for journal with ISSN 0028-0836?
Q: http://localhost:3000/aleph/psh?issn=0028-0836&call=json                                                                                                                    In this case SFX links to:
R: {"psh": ["natural sciences",                                                                                                                                                
                                                                                                                                                                                 library's OPAC,
               "science",                                                                                                                                                      
                                                                                                                                                                                 OCLC WorldCat Service
               "nature and evolution",
               "medicine"]}
                                                                                                                                                                               
                                                                                                                                                                                 library's Metalib set for searching in other technical
                                                                                                                                                                               libraries
Does the journal with ISSN 0028-0836 have any fulltext services in SFX?                                                                                                        Link to SFX (button) is displayed in the top right corner.
Q: http://localhost:3000/sfx/getFullTxt?issn=0028-0836&call=json                                                         PSH Headings („Hesla PSH“)
R: {"fullTxt": [{"name":"EBSCOhost Academic Search Complete",                                                            Displays subject headings from bibliographic record.
                       "link":"htps://ezproxy.techlib.cz/login?
                        url=http://search.ebscohost.com/direct.asp?db=a9h&jn=NAE&scope=site"                             National Technical Library subject heading system PSH (Polythematic Structured Subject Heading System)
                     },{                                                                                                 is used in bibliographic records.
                     "name":"Free E- Journals",                                                                          Headings are linked to specialized subject headings search interface.
                     "link":"http://digital.library.wisc.edu/1711.dl/HISTSCITECH.NATURE"
                     }]}
                                                                                                                                                                               There are three subject headings in library's Aleph
Do you have cover image for ISBN 978-0-201-89683-1?
                                                                                                                                                                               bibliographic record.
Q: http://data.ntkcz.cz:3000/cover/big?id=978-0-201-89683-1&type=isbn&call=html
R: <a href="">
     <img style="border:0px"
           src="http://aleph.techlib.cz/obalky/velke/3/000670373.jpg"/>
   </a>                                                                                                                  Holdings („Jednotky“)
                                                                                                                         Displays information about holdings availability (max 4 items)
Do you have any holdings available for ISBN 978-80-247-1116-4 ?                                                          Also creates link („všechny jednotky“) to Aleph page with holdings for this document.
Q: http://data.ntkcz.cz:3000/aleph/circ?isbn=978-80-247-1116-4&call=json
R: {"circ_status":[{"loan_status":"Regular loan I",
                       "due_date":"On Shelf",
                       "collection":"6th floor, shelf 6D/045"                                                                                                                  There is one copy of the book in the library – it is currently
                      },{                                                                                                                                                      available and located on shelf 4D/104.
                       "loan_status":"Regular loan I",
                       "due_date":"On Shelf","collection":"6th floor, shelf 6D/045"
                      },{
                       "loan_status":"Regular loan I",
                       "due_date":"14/09/11","collection":"6th floor, shelf 6D/045"}]}




                                                                                                                         SFX services for the journal Nature.                             There is no valid ISBN in the record.
                                                                                                                                                                                          In this case Aleph system number is used.




                                                                                                                         There is no bibliographic record for this book                     ... but it is still possible to provide some useful
                                                                                                                         in our ILS...                                                      links using SFX – in this case WorldCat Service
Picture 2: NTK's New books RSS feed (generated in Aleph) can be displayed this way.                                                                                                         and the Union Catalogue of Czech Republic.
After clicking on a cover image, more detailed informations are fetched and provided to the user.
                                                                                                                         Picture 3: Several more examples of JavaScript Demo behaviour.


Conclusion
Advantages                                                                                                               Disadvantages
Data are easily available.                                                                                               It is not always sure which data will be returned.
Data can be provided in a very simple format and thus it is easy to process them.                                        One more server on the way between the systems and user.
Data can be integrated into other webpages (OPAC, e-learning sites, information systems)
It is not necessary understand Aleph/SFX APIs but data can be used anyway.

                                                                                                                                                  ЛЯ                      4                  15                     38                      63

More Related Content

What's hot

Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6
Arun Gupta
 
J2EE - JSP-Servlet- Container - Components
J2EE - JSP-Servlet- Container - ComponentsJ2EE - JSP-Servlet- Container - Components
J2EE - JSP-Servlet- Container - Components
Kaml Sah
 
Html5 form attributes
Html5 form attributesHtml5 form attributes
Html5 form attributes
OPENLANE
 
Jsp ppt
Jsp pptJsp ppt
Jsp ppt
Vikas Jagtap
 
Java server pages
Java server pagesJava server pages
Java server pages
Abhishek Kesharwani
 
02.egovFrame Development Environment training book
02.egovFrame Development Environment training book02.egovFrame Development Environment training book
02.egovFrame Development Environment training book
Chuong Nguyen
 
Domino java
Domino javaDomino java
Domino java
Sumit Tambe
 
Jsp
JspJsp
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Kazuyuki Kawamura
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
Moumie Soulemane
 
Java part 3
Java part  3Java part  3
Abap course chapter 6 specialities for erp software
Abap course   chapter 6 specialities for erp softwareAbap course   chapter 6 specialities for erp software
Abap course chapter 6 specialities for erp software
Milind Patil
 
Jsf+ejb 50
Jsf+ejb 50Jsf+ejb 50
Jsf+ejb 50
lullabyte
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
slire
 
Javabeans .pdf
Javabeans .pdfJavabeans .pdf
Javabeans .pdf
Rajkiran Mummadi
 

What's hot (15)

Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6
 
J2EE - JSP-Servlet- Container - Components
J2EE - JSP-Servlet- Container - ComponentsJ2EE - JSP-Servlet- Container - Components
J2EE - JSP-Servlet- Container - Components
 
Html5 form attributes
Html5 form attributesHtml5 form attributes
Html5 form attributes
 
Jsp ppt
Jsp pptJsp ppt
Jsp ppt
 
Java server pages
Java server pagesJava server pages
Java server pages
 
02.egovFrame Development Environment training book
02.egovFrame Development Environment training book02.egovFrame Development Environment training book
02.egovFrame Development Environment training book
 
Domino java
Domino javaDomino java
Domino java
 
Jsp
JspJsp
Jsp
 
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
Spring as a Cloud Platform (Developer Summit 2011 17-C-5)
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
 
Java part 3
Java part  3Java part  3
Java part 3
 
Abap course chapter 6 specialities for erp software
Abap course   chapter 6 specialities for erp softwareAbap course   chapter 6 specialities for erp software
Abap course chapter 6 specialities for erp software
 
Jsf+ejb 50
Jsf+ejb 50Jsf+ejb 50
Jsf+ejb 50
 
Advance Java Topics (J2EE)
Advance Java Topics (J2EE)Advance Java Topics (J2EE)
Advance Java Topics (J2EE)
 
Javabeans .pdf
Javabeans .pdfJavabeans .pdf
Javabeans .pdf
 

Similar to Single API for library services (poster)

Learn C Programming Language by Using GDB
Learn C Programming Language by Using GDBLearn C Programming Language by Using GDB
Learn C Programming Language by Using GDB
National Cheng Kung University
 
Introduction Java Web Framework and Web Server.
Introduction Java Web Framework and Web Server.Introduction Java Web Framework and Web Server.
Introduction Java Web Framework and Web Server.
suranisaunak
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
Prabhat gangwar
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
thisismusthafa
 
Riding with camel
Riding with camelRiding with camel
Riding with camel
Sunitha Satyadas
 
As 400
As 400As 400
As 400
EMSNEWS
 
Jsp Tutorial
Jsp TutorialJsp Tutorial
Jsp Tutorial
Adil Jafri
 
Introducing spring
Introducing springIntroducing spring
Introducing spring
Ernesto Hernández Rodríguez
 
Spatial approximate string search Doc
Spatial approximate string search DocSpatial approximate string search Doc
Spatial approximate string search Doc
Sudha Hari Tech Solution Pvt ltd
 
Ajaxworld West 08
Ajaxworld West 08Ajaxworld West 08
Ajaxworld West 08
rajivmordani
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platform
Alfresco Software
 
FraSCAti Adaptive and Reflective Middleware of Middleware
FraSCAti Adaptive and Reflective Middleware of MiddlewareFraSCAti Adaptive and Reflective Middleware of Middleware
FraSCAti Adaptive and Reflective Middleware of Middleware
philippe_merle
 
cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)
Varsha Krishna
 
Eclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three RuntimesEclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three Runtimes
Suresh Krishna Madhuvarsu
 
Flex Rails Pres
Flex Rails PresFlex Rails Pres
Flex Rails Pres
philipsexton
 
Silver Light1.0
Silver Light1.0Silver Light1.0
Silver Light1.0
coolajju143
 
Java EE 7 introduction
Java EE 7  introductionJava EE 7  introduction
Java EE 7 introduction
Moumie Soulemane
 
An Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP ProgrammersAn Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP Programmers
jphl
 
Krug Fat Client
Krug Fat ClientKrug Fat Client
Krug Fat Client
Paul Klipp
 
WORKS 11 Presentation
WORKS 11 PresentationWORKS 11 Presentation
WORKS 11 Presentation
dgarijo
 

Similar to Single API for library services (poster) (20)

Learn C Programming Language by Using GDB
Learn C Programming Language by Using GDBLearn C Programming Language by Using GDB
Learn C Programming Language by Using GDB
 
Introduction Java Web Framework and Web Server.
Introduction Java Web Framework and Web Server.Introduction Java Web Framework and Web Server.
Introduction Java Web Framework and Web Server.
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
 
Riding with camel
Riding with camelRiding with camel
Riding with camel
 
As 400
As 400As 400
As 400
 
Jsp Tutorial
Jsp TutorialJsp Tutorial
Jsp Tutorial
 
Introducing spring
Introducing springIntroducing spring
Introducing spring
 
Spatial approximate string search Doc
Spatial approximate string search DocSpatial approximate string search Doc
Spatial approximate string search Doc
 
Ajaxworld West 08
Ajaxworld West 08Ajaxworld West 08
Ajaxworld West 08
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platform
 
FraSCAti Adaptive and Reflective Middleware of Middleware
FraSCAti Adaptive and Reflective Middleware of MiddlewareFraSCAti Adaptive and Reflective Middleware of Middleware
FraSCAti Adaptive and Reflective Middleware of Middleware
 
cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)
 
Eclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three RuntimesEclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three Runtimes
 
Flex Rails Pres
Flex Rails PresFlex Rails Pres
Flex Rails Pres
 
Silver Light1.0
Silver Light1.0Silver Light1.0
Silver Light1.0
 
Java EE 7 introduction
Java EE 7  introductionJava EE 7  introduction
Java EE 7 introduction
 
An Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP ProgrammersAn Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP Programmers
 
Krug Fat Client
Krug Fat ClientKrug Fat Client
Krug Fat Client
 
WORKS 11 Presentation
WORKS 11 PresentationWORKS 11 Presentation
WORKS 11 Presentation
 

More from Milan Janíček

Linked data (nejen) v knihovnách
Linked data (nejen) v knihovnáchLinked data (nejen) v knihovnách
Linked data (nejen) v knihovnách
Milan Janíček
 
"Máte to?" - Summon jako základní vyhledávací nástroj NTK
"Máte to?" - Summon jako základní vyhledávací nástroj NTK"Máte to?" - Summon jako základní vyhledávací nástroj NTK
"Máte to?" - Summon jako základní vyhledávací nástroj NTK
Milan Janíček
 
SFX NTK - po 3 letech a 3 dnech
SFX NTK - po 3 letech a 3 dnechSFX NTK - po 3 letech a 3 dnech
SFX NTK - po 3 letech a 3 dnech
Milan Janíček
 
Od federativního vyhledávání k jednotným indexům
Od federativního vyhledávání k jednotným indexůmOd federativního vyhledávání k jednotným indexům
Od federativního vyhledávání k jednotným indexům
Milan Janíček
 
Sec 2010-do knihovny-skrze_prohlizec
Sec 2010-do knihovny-skrze_prohlizecSec 2010-do knihovny-skrze_prohlizec
Sec 2010-do knihovny-skrze_prohlizecMilan Janíček
 
Do knihovny skrze webovy prohlize
Do knihovny skrze webovy prohlizeDo knihovny skrze webovy prohlize
Do knihovny skrze webovy prohlizeMilan Janíček
 
Vzdálený přístup k el. zdrojům NTK
Vzdálený přístup k el. zdrojům NTKVzdálený přístup k el. zdrojům NTK
Vzdálený přístup k el. zdrojům NTK
Milan Janíček
 
SFX NTK - úpravy, vývoj, zkušenosti
SFX NTK - úpravy, vývoj, zkušenostiSFX NTK - úpravy, vývoj, zkušenosti
SFX NTK - úpravy, vývoj, zkušenostiMilan Janíček
 
Služby k elektronickým zdrojům NTK - SFX, EZproxy, Zotero
Služby k elektronickým zdrojům NTK - SFX, EZproxy, ZoteroSlužby k elektronickým zdrojům NTK - SFX, EZproxy, Zotero
Služby k elektronickým zdrojům NTK - SFX, EZproxy, ZoteroMilan Janíček
 
COinS (eng version)
COinS (eng version)COinS (eng version)
COinS (eng version)
Milan Janíček
 

More from Milan Janíček (11)

Linked data (nejen) v knihovnách
Linked data (nejen) v knihovnáchLinked data (nejen) v knihovnách
Linked data (nejen) v knihovnách
 
"Máte to?" - Summon jako základní vyhledávací nástroj NTK
"Máte to?" - Summon jako základní vyhledávací nástroj NTK"Máte to?" - Summon jako základní vyhledávací nástroj NTK
"Máte to?" - Summon jako základní vyhledávací nástroj NTK
 
SFX NTK - po 3 letech a 3 dnech
SFX NTK - po 3 letech a 3 dnechSFX NTK - po 3 letech a 3 dnech
SFX NTK - po 3 letech a 3 dnech
 
Od federativního vyhledávání k jednotným indexům
Od federativního vyhledávání k jednotným indexůmOd federativního vyhledávání k jednotným indexům
Od federativního vyhledávání k jednotným indexům
 
Sec 2010-do knihovny-skrze_prohlizec
Sec 2010-do knihovny-skrze_prohlizecSec 2010-do knihovny-skrze_prohlizec
Sec 2010-do knihovny-skrze_prohlizec
 
Do knihovny skrze webovy prohlize
Do knihovny skrze webovy prohlizeDo knihovny skrze webovy prohlize
Do knihovny skrze webovy prohlize
 
Vzdálený přístup k el. zdrojům NTK
Vzdálený přístup k el. zdrojům NTKVzdálený přístup k el. zdrojům NTK
Vzdálený přístup k el. zdrojům NTK
 
SFX NTK - úpravy, vývoj, zkušenosti
SFX NTK - úpravy, vývoj, zkušenostiSFX NTK - úpravy, vývoj, zkušenosti
SFX NTK - úpravy, vývoj, zkušenosti
 
Služby k elektronickým zdrojům NTK - SFX, EZproxy, Zotero
Služby k elektronickým zdrojům NTK - SFX, EZproxy, ZoteroSlužby k elektronickým zdrojům NTK - SFX, EZproxy, Zotero
Služby k elektronickým zdrojům NTK - SFX, EZproxy, Zotero
 
COinS (eng version)
COinS (eng version)COinS (eng version)
COinS (eng version)
 
COinS
COinS COinS
COinS
 

Recently uploaded

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
maazsz111
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Public CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptxPublic CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptx
marufrahmanstratejm
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
Shinana2
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 

Recently uploaded (20)

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Public CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptxPublic CyberSecurity Awareness Presentation 2024.pptx
Public CyberSecurity Awareness Presentation 2024.pptx
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 

Single API for library services (poster)

  • 1. Single API for library services Milan Janíček (milan.janicek@techlib.cz) National Technical Library, Prague, Czech Republic 555 mm Introduction Background If we have data from library systems accessible in a simple format it will be much easier to work with them It is not always necessary for users to visit the library's OPAC when they need some basic information about and even to present them in many various ways. However library system’s APIs are often focused more a book or journal. Title, author, subject headings or accessibility is the information which can be viewed quickly on interoperability rather than data presentation. This poster introduces draft of a single API point which allows and often it is all what OPAC is expected to provide. Assuming we have an identifier, there are actually a few to access basic data in simple formats. JavaScript demo application which fetches the data from created API options how to provide the information to the users. Hard links to OPACs seem to be quite complicated and they and displays them in user friendly manner is also presented. make the users leave the page they are visiting. SFX can help but SFX Menu provides mainly links not information. Data Sources Single API How else can be the data for the user’s ‘first look’ provided? The best way would be to pick them from systems (Server Side) Clients where they actually are and to display them (for example using some JavaScript code). There are some existing ways how to get the data, but for example Aleph APIs are better suited to interoperability than to providing the data itself. Used XML formats are quite complex and it is almost necessary to have access not only to API itself but also to the documentation. SFX The main idea of this work is to (SFX XML API) Client  use data from existing APIs SFX (Javascript)  modify them on the server and to publish them in a simple format model JSON  build applications / use the data in this simple format Client side Aleph There are several possible usage scenarios – data can be processed by JavaScript in web browsers (as described Client (Aleph X-Server) in this poster) but also by servers (eg. using PHP Perl, ASP for example for OPAC enhancements. , ...) (PHP) Aleph Processing model fetched HTML JavaScript Demo Demo application gets data from Single API and displays them on any webpage. data It is not necessary to fetch the data which are not displayed. Client Asynchronous JavaScript is used – there is no delay between getting the results and displaying them. Book covers (Browser) (different sources) How does it work? Covers At first empty frame is created. model plaintext Client Picture 1: Application Scheme. Data are fetched from Data sources, then processed and provided to the clients in simple formats. Data are fetched from Single API – identifier is given to JavaScript as an argument (ISSN, ISBN, system number). (Using of queries is described in „Server Side“ Section) Data are filled into right places in the frame. Server Side Single API application is written in Ruby on Rails and uses data from APIs of Aleph, SFX etc. for creating of There are 4 tabs in demo application: Info, SFX, PSH Headings, Holdings simple responses to specified queries. Although only 3 services are used in the current state, more can be added in a similar way. Info Displays basic information – Title, Author, Publisher, Year, ISBN, system number ● input: multiple services API (SFX XML API, Aleph X-Server, different book covers services) ● output: data in a simple format (plaintext, HTML, JSON) Queries / Responses Examples: What is the title of the book with ISBN 0-9776166-3-0? Q: http://localhost:3000/aleph/title?isbn=0-9776166-3-0 R: Agile web development with rails SFX Who is the author of the book with system number 000670373? Q: http://localhost:3000/aleph/author?sysno=000670373 Displays selected services from SFX menu (max. 4 items) – getFullTxt, getAbstract, getTOC, getHolding R: Knuth, Donald Ervin, All links are active – same as in SFX menu. Link to SFX instance is also created. What are the subject headings terms (psh) for journal with ISSN 0028-0836? Q: http://localhost:3000/aleph/psh?issn=0028-0836&call=json In this case SFX links to: R: {"psh": ["natural sciences",  library's OPAC, "science",  OCLC WorldCat Service "nature and evolution", "medicine"]}  library's Metalib set for searching in other technical libraries Does the journal with ISSN 0028-0836 have any fulltext services in SFX? Link to SFX (button) is displayed in the top right corner. Q: http://localhost:3000/sfx/getFullTxt?issn=0028-0836&call=json PSH Headings („Hesla PSH“) R: {"fullTxt": [{"name":"EBSCOhost Academic Search Complete", Displays subject headings from bibliographic record. "link":"htps://ezproxy.techlib.cz/login? url=http://search.ebscohost.com/direct.asp?db=a9h&jn=NAE&scope=site" National Technical Library subject heading system PSH (Polythematic Structured Subject Heading System) },{ is used in bibliographic records. "name":"Free E- Journals", Headings are linked to specialized subject headings search interface. "link":"http://digital.library.wisc.edu/1711.dl/HISTSCITECH.NATURE" }]} There are three subject headings in library's Aleph Do you have cover image for ISBN 978-0-201-89683-1? bibliographic record. Q: http://data.ntkcz.cz:3000/cover/big?id=978-0-201-89683-1&type=isbn&call=html R: <a href=""> <img style="border:0px" src="http://aleph.techlib.cz/obalky/velke/3/000670373.jpg"/> </a> Holdings („Jednotky“) Displays information about holdings availability (max 4 items) Do you have any holdings available for ISBN 978-80-247-1116-4 ? Also creates link („všechny jednotky“) to Aleph page with holdings for this document. Q: http://data.ntkcz.cz:3000/aleph/circ?isbn=978-80-247-1116-4&call=json R: {"circ_status":[{"loan_status":"Regular loan I", "due_date":"On Shelf", "collection":"6th floor, shelf 6D/045" There is one copy of the book in the library – it is currently },{ available and located on shelf 4D/104. "loan_status":"Regular loan I", "due_date":"On Shelf","collection":"6th floor, shelf 6D/045" },{ "loan_status":"Regular loan I", "due_date":"14/09/11","collection":"6th floor, shelf 6D/045"}]} SFX services for the journal Nature. There is no valid ISBN in the record. In this case Aleph system number is used. There is no bibliographic record for this book ... but it is still possible to provide some useful in our ILS... links using SFX – in this case WorldCat Service Picture 2: NTK's New books RSS feed (generated in Aleph) can be displayed this way. and the Union Catalogue of Czech Republic. After clicking on a cover image, more detailed informations are fetched and provided to the user. Picture 3: Several more examples of JavaScript Demo behaviour. Conclusion Advantages Disadvantages Data are easily available. It is not always sure which data will be returned. Data can be provided in a very simple format and thus it is easy to process them. One more server on the way between the systems and user. Data can be integrated into other webpages (OPAC, e-learning sites, information systems) It is not necessary understand Aleph/SFX APIs but data can be used anyway. ЛЯ 4 15 38 63