kio_z3950r is a kio slave for connecting to z39.50 servers for information retrieval. It uses the KDE librairies for communication.
kio_z3950r is still a very simple, very rudimentary, initial proof-of-concept. Once installed, Konqueror is able to open URLs which use the z39.50r protocol, as defined in RFC 2056 with slight modifications detailed in a proposed extension to RFC 2056kio_z3950r doesn't seem to build on current versions of yaz and yaz++. I've posted about the problem.
kio_z3950r is built on top of the yaz and yaz++ librairies and accesses z39.50 servers using the ZOOM protocol within yaz++. For now, only the Prefix Query Notation is supported for queries to the server. For a list of possible use attributes, see the supported list at the Library of Congress.
Ultimately, I intent to use kio_z3950r in my book collection application, Bookcase, for downloading book information online.
Syntax
The Z39.50 Session and Retrieval URLs follow the Common Internet Scheme Syntax as defined in RFC 1738, "Uniform Resource Locators (URL)". In the definition, literals are quoted with "", optional elements are enclosed in [brackets], "|" is used to designate alternatives, and elements may be preceded with* to designate n or more repetitions of the following element; n defaults to 0. zscheme = z3950r "://" [username ":" password "@"] host [":" port] ["/" [database *["+" database] ["?" docid] | ["search?query=(" pqn ")"]| ["scan?query=(" pqn ")"]] ["&close=" | session] ["&esn=" elementset] ["&rs=" recordsyntax *[ "+" recordsyntax]] ["&encode=" encodehtml ] ["&maxrecs=" max] ["&stylesheet=" URL]] zscheme = "z3950" | "z3950s" |"z39.50s" | "z3950r" |"z39.50r" username = uchar password = uchar host = TCP/IP host name port = TCP/IP port number database = uchar docid = uchar pqn = uchar session = "1" | "0" elementset = "B" | "F" | "G" | "S" | uchar recordsyntax = "GRS-1" | "SUTRS" | "USMARC" | uchar encodehtml = "1" | "0" max = integer URL = TCP/IP URL
Available Options
- The element zcheme must be z3950r.
- The element search?query conveys the query string for Search.
- The element scan?query conveys the query string for Scan. Treated equally to search?query for now.
- The parameter pqn refers to Prefix Query Notation (see above).
- The element max specifies the maximum number of records to retrieve.
- The element recordsyntax specifies record syntax. Not all z39.50 servers support all the syntax types.
- The element encodehtml specifies to turn on ("1") or off ("0") the HTML encoding of characters.
- username
- password
- docid
- stylesheet
Examples
After you have installed kio_z3950r, you might want to try the following URLs (If you are not using Konqueror, these won't work!):
- The example used in the yaz++ handbook is the MARC record for Farlow & Brett Surman's The Complete Dinosaur from the Library of Congress's Z39.50 server:
z3950r://z3950.loc.gov:7090/Voyager/Search?query=(@attr 1=7 0253333490)&rs=USMARC&encodehtml=0 - Books by one of my favorite authors, Eric Flint, again from the LOC:
z3950r://z3950.loc.gov:7090/Voyager/Search?query=(@attr 1=1 Flint,Eric)&rs=USMARC&encodehtml=0
Changelog
kio_z3950r 0.1 - 11 March 2003
- Initial Release