z39.50 as a web service ralph levan research scientist

20
Z39.50 as a Web Service Ralph LeVan Research Scientist

Upload: devin-hale

Post on 27-Mar-2015

224 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Z39.50 as a Web Service Ralph LeVan Research Scientist

Z39.50 as a Web Service

Ralph LeVanResearch Scientist

Page 2: Z39.50 as a Web Service Ralph LeVan Research Scientist

RoadmapRoadmap

• Why Z39.50 as a Web Service?

– The Weaknesses of Classic Z39.50

• The Strengths of Classic Z39.50

• SRW: Search and Retrieve on the Web

• SRU: Search and Retrieve with URL’s

• Outlook for SRW/SRU

Page 3: Z39.50 as a Web Service Ralph LeVan Research Scientist

The Weaknesses of Classic Z39.50The Weaknesses of Classic Z39.50

• Not popular with the Web community

– Connection-based Sessions

– Binary Encoding

– Transmitted directly over TCP/IP

• Complicated

Page 4: Z39.50 as a Web Service Ralph LeVan Research Scientist

Z39.50 Complicated?Z39.50 Complicated?

• 11 Native Services– Init, Search, Present, DeleteResultSet,

AccessControl, ResourceControl, TriggerResourceControl, ResourceReport, Scan, Sort, Segment.

• 7 Extended Services– PersistentResultSet, PersistentQuery,

PeriodicQuerySchedule, ItemOrder, DatabaseUpdate, ExportSpecification, ExportInvocation

Page 5: Z39.50 as a Web Service Ralph LeVan Research Scientist

Z39.50 Complicated?Z39.50 Complicated?

• 156 page standard

– 147 in the 2002 draft

• Vocabulary from the OSI community

– Target, Origin, APDU, A-association, Z-association..

• Records described with ASN.1

• Attribute Sets

Page 6: Z39.50 as a Web Service Ralph LeVan Research Scientist

The Strengths of Classic Z39.50The Strengths of Classic Z39.50

• Result Sets (a.k.a. Statefulness)

• Abstraction

– Abstract Access Points (Attribute Sets)

– Abstract Record Schemas

• Explain

Page 7: Z39.50 as a Web Service Ralph LeVan Research Scientist

SRW: Search and Retrieve on the WebSRW: Search and Retrieve on the Web

• SOAP (Simple Object Access Protocol) Based

– HTTP

– XML

• Records Described in WSDL (Web Service Description Language)

• 1 Service: SearchAndRetrieve

• No Documentation :-)

Page 8: Z39.50 as a Web Service Ralph LeVan Research Scientist

Semantically equivalent to classic Z39.50Semantically equivalent to classic Z39.50

• Gateways Trivial

• Preserves the experience of the ZIG without the baggage of the standard

• Syntactic equivalence discounted

Page 9: Z39.50 as a Web Service Ralph LeVan Research Scientist

SRW: The BasicsSRW: The Basics

• Only one database per request

• String (not structure) based queries

• Index Sets, not Attribute Sets

• One Record Syntax (XML)

Page 10: Z39.50 as a Web Service Ralph LeVan Research Scientist

The SRW RequestThe SRW Request

• String Query

• Integer StartRecord

• Integer MaximumRecords

• String RecordSchema

Page 11: Z39.50 as a Web Service Ralph LeVan Research Scientist

The SOAP Encoding of the SRW RequestThe SOAP Encoding of the SRW Request<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope

SOAP-ENV:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/

xmlns:SOAP-ENC=http://schemas.xmlsoap.org/soap/encoding/

xmlns:xsi=http://www.w3.org/1999/XMLSchema-instance

xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/

xmlns:xsd="http://www.w3.org/1999/XMLSchema">

<SOAP-ENV:Body>

<ns1:searchRetrieve xmlns:ns1="urn:z3950:ZNG_Prototype1" SOAP-ENC:root="1">

<v1 xsi:type="xsd:str">nuclear</v1> <v2 xsi:type="xsd:int">4</v2>

<v3 xsi:type="xsd:int">1</v3> <v4 xsi:type="xsd:str"></v4>

<v5 xsi:type="xsd:str"></v5> </ns1:searchRetrieve>

</SOAP-ENV:Body>

</SOAP-ENV:Envelope>

Page 12: Z39.50 as a Web Service Ralph LeVan Research Scientist

The SRW ResponseThe SRW Response

• String ResultSetReference

– ResultSetName

– ResultSetTimeToLive

• Integer TotalHits

• Records

• Status (Status Code & Diagnostic)

Page 13: Z39.50 as a Web Service Ralph LeVan Research Scientist

The SOAP Encoding of the SRW ResponseThe SOAP Encoding of the SRW Response<SOAP-ENV:Envelope … ><SOAP-ENV:Body>

<ns1:searchRetrieveResponse xmlns:ns1="urn:z3950:ZNG_Prototype1“

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<return xsi:type="xsd:string"><?xml version='1.0' encoding='UTF-8'?>

<searchRetrieveResponse xmlns='urn:z3950:ZNG_Prototype1'>

<totalHits>115</totalHits>

<records><record><schema>http://purl.org/dc/elements/1.1/</schema>

<recordData> … </recordData>

</record></records>

<status><statusCode>0</statusCode></status>

</searchRetrieveResponse></return>

</ns1:searchRetrieveResponse>

</SOAP-ENV:Body></SOAP-ENV:Envelope>

Page 14: Z39.50 as a Web Service Ralph LeVan Research Scientist

The SOAP Encoding of the SRW ResponseThe SOAP Encoding of the SRW Response<dc:dc xmlns:dc='http://purl.org/dc/elements/1.1/‘

xmlns:t='http://www.ndltd.org/standards/metadata/etdms/1.0/‘

xmlns='http://www.w3.org/TR/xhtml1/strict'>

<language/><date>1971</date><type/><identifier/><coverage/>

<subject>Pions--Scattering.</subject>

<creator>Garland, Richard.</creator>

<title>Measurement of the charged pion form factor slope at rest.</title>

<publisher>Irvington-on-Hudson, N.Y.,Nevis Laboratories, Columbia University,</publisher>

<format/><relation/></dc:dc>

Page 15: Z39.50 as a Web Service Ralph LeVan Research Scientist

CQL: Common Query LanguageCQL: Common Query Language

• Loosely based on CCL Search

• Boolean & Proximity Operators

• Index Sets & Indexes

• Truncation Characters ‘*’, ‘#’ & ‘?’

• Example:

dc.title=“harry potter” or bib1.isbn=123-456-78x

Page 16: Z39.50 as a Web Service Ralph LeVan Research Scientist

Explain Now PossibleExplain Now Possible

• Not practical for classic Z39.50

• List of supported Schemas

• List of supported Indexes

Page 17: Z39.50 as a Web Service Ralph LeVan Research Scientist

SRU: Search and Retrieve with URL’sSRU: Search and Retrieve with URL’s

• SRW Without the SOAP Wrapper

• Intended for Thin Clients

• Example

http://alcme.oclc.org/axis/SOAR/services/SearchRetrieveService?query=education&maxRecords=10

Page 18: Z39.50 as a Web Service Ralph LeVan Research Scientist

Outlook for SRW/SRUOutlook for SRW/SRU

• A solution looking for a problem?

• Not likely to be quickly adopted by the library community

• Could show up first in other communities: Geospatial, Biodiversity, OAI(?)

• Will be seen as a competitor with XML Query

Page 19: Z39.50 as a Web Service Ralph LeVan Research Scientist

LinksLinks

• http://www.loc.gov/z3950/agency/zing/zing.html

• http://staff.oclc.org/~levan/docs/srw-niso20030430.ppt

Page 20: Z39.50 as a Web Service Ralph LeVan Research Scientist

&QuestionsAA

nswersnswers