190 likes | 702 Views
cat and fish (((cat or dog) or horse) and frog) cat prox/word/=/3 ... ZeeRex (Z39.50 Explain, Explained and ReEngineered in XML) XML schema used to describe ...
E N D
1. Z39.50 and the ZING Initiatives: MAVIS Users Conference, 2003November 6, 2003
2. Presentation Overview Z39.50 Description and History
Z39.50 Maintenance
Z39.50 Interoperability
Z39.50 Profiles
ZING Initiatives
3. Z39.50 Description National and international standard
Client / server environment
Client developer controls display
Examples:
Language preference
System display preference
Retrieve records into an application
4. Z39.50 Historical Development • 1982: LSP/ Information Retrieval
• 1983: LSP/IR submitted as ANSI standard
• 1984: ISO SR introduced
• 1988: NISO Z39.50-1988
• 1990: LC Maintenance Agency
• 1990: Z39.50 Implementors’ Group
• 1991: ISO SR approved (10162-10163)
• 1992: NISO Z39.50-1992
• 1995: NISO Z39.50-1995
• 1998: ISO IR 23950
• 2000: ZING (Z39.50 International: Next Generation)
5. Z39.50 Maintenance Z39.50 Maintenance Agency at LC
http://lcweb.loc.gov/z3950/agency/
Editor: Ray Denenberg (rden@loc.gov)
Z39.50-1995 Document
Z39.50 Implementors’ Group
http://lcweb.loc.gov/z3950/agency/zig/zig-meetings.html
http://lists.w3.org/Archives/Public/www-zig/
6. Z39.50 Interoperability Why aren’t all Z39.50 implementations the same?
Z39.50 implemented by existing, mature search systems with different search behavior
Indexing not standardized across systems
Bibliographic community did not profile prior to implementing protocol in 1992 – search functionality was decided by each system vendor
Implementors sometimes differed on interpretation of the standard
7. Z39.50 Profiles Profiles developed by committee
Customer base
Vendors
Protocol experts
Reasons for profiles
Specification for vendors (interoperability)
Specification for customers (procurement)
8. Z39.50 Profile Examples Bath Profile (International)
http://www.nlc-bnc.ca/bath/tp-bath2-e.htm
US National Profile (Z39.89)
http://www.unt.edu/zprofile/Profile/specifications.htm
Other Profiles
http://lcweb.loc.gov/z3950/agency/profiles/profiles.html
9. Z39.50 Characteristics Large, complex standard, rich in functionality
Implementations are subsets of the standard
Pre-dates the Web – connection oriented and transfer syntax not human readable
Z39.50 session data units:
TCP/IP (request and response)
Initialization (request and response)
Search (request and response)
Present (request and response)
Close (request and response)
10. Z39.50 Search Request attributeType 1
numeric 1003
attributeType 2
numeric 3
attributeType 3
numeric 1
attributeType 4
numeric 1
attributeType 5
numeric 1
attributeType 6
numeric 1
Term 61 76 72 61 6D 2C 20 68 65 6E 72 69 65 74 74 65
11. ZING Initiatives ZING (Z39.50 International: Next Generation)
http://www.loc.gov/z3950/agency/zing/zing-home.html
SRW (Search / Retrieval Web Service)
SRU (Search / Retrieval URL)
CQL (Common Query Language)
ZOOM (Z39.50 Object-Orientation Model)
ez3950
ZeeRex (Z39.50 Explain, Explained and ReEngineered in XML)
12. SRW Search/Retrieve POST / srw.loc.gov/LCDB HTTP/1.1
[. . . ]
<?xml version=“1.0”>
<SOAP:Envelope>
<SOAP:Body>
<SRW:searchRetrieveRequest xmlns:SRW=http://www.loc.gov/zing/…>
<SRW:query>bath.author=“^avram,henriette”</SRW:query>
<SRW:startRecord>1</SRW:startRecord>
<SRW:maximumRecords>10</SRW:maximumRecords>
<SRW:recordSchema>http://www.loc.gov/mods/</SRW:recordsSchema>
</SRW:searchRetrieveRequest>
</SOAP:Body>
</SOAP:Envelope>
13. SRU Search/Retrieve http://sru.loc.gov/LCDB/searchRetrieve?query=bath.author=^avram,henriette”&maximumRecords=10&recordSchema=http%3a//www.loc.gov/mods/&startRecord=1
14. CQL Examples Author Search – First words in field
bath.author=“^avram, henriette”
Title Search – Exact match
bath.title exact “xml & sgml cookbook”
Other examples
cat and fish
(((cat or dog) or horse) and frog)
cat prox/word/=/3/ordered hat
15. ez3950 Uses XER (XML encoding rules) over SOAP to encode Z39.50 ASN.1 data units
http://www.lib.ox.ac.uk/jafer/ez3950/ez3950.html
16. ZOOM ZOOM (Z39.50 Object-Orientation Model)
Specifications for API bindings exist in:
C, C++, Perl, Java, Visual Basic, etc.
http://zoom.z3950.org/index.html
17. ZeeRex ZeeRex (Z39.50 Explain, Explained and ReEngineered in XML)
XML schema used to describe the configuration and capabilities of Z39.50 and SRW/SRU servers:
http://explain.z3950.org/
18. Summary Z39.50 widely deployed in library community
Z39.50 still an essential tool to provide access to library catalogs
ZOOM API and toolkits hide complexity of Z39.50 implementation
SRW, SRU, ZeeRex, and ez3950 growth is not easy to predict at this time
19. Questions