Multitarget/multiprotocol client application for search and retrieval of bibliographic records. - Zarić, Miroslav; Krstićev, Danijela Boberić; Surla, Dušan (Electronic Library, 2012)
Purpose – The aim of the research is modelling and implementation of a client application that enables parallel search and retrieval of bibliographic records from multiple servers. The client application supports simultaneous communication over Z39.50 and SRW/SRU protocols. The application design is flexible and later addition of other communication protocols for search/retrieval is envisioned and supported. Design/methodology/approach – Object-oriented approach has been used for modelling and implementation of client application. CASE tool, Sybase PowerDesigner, supporting Unified Modelling Language (UML 2.0), was used for modelling. Java programming language and Eclipse environment were used for implementation. Findings – The result of the research is a client application that enables parallel search and retrieval of multiple Z39.50 and SRW/SRU servers. Additionally, the application supports conversion from type-1 query language, defined by Z39.50 standard, to CQL query language required for search/retrieval from SRW/SRU servers. The application was verified by performing parallel search and retrieval from several publicly accessible Z39.50 and SRW/SRU servers. Research limitations/implications – The application supports only the use of bib-1 attribute set for type-1 queries created according to Z39.50 standard. Hence, only such queries can be converted to CQL notation. The use of other attribute sets is not supported. Practical implications – The client application is integrated into the BISIS software system, version 4. This enables the cataloguing of bibliographic records retrieved over Z39.50 and SRW/SRU protocol. Originality/value – The contribution of this work is in client application architecture that enables parallel communication with multiple servers, which can use different communication protocols, Z39.50 or SRW/SRU. Search/retrieval from servers using some other protocol is also supported. This can be achieved by adding new classes that implement protocol specification, and classes for query transformation into notation required by that new protocol, if required.