RE: ZNG: "Z39.50 Next Generation"

Hang on Ralph,

> Give the response to the XML record handling utility and get the title.

You could have said the same for Z39.50 to make it look easy:

Call your z39.50 client library with the search.
Get a result back and hand it to your MARC record handling utility to extract the title.

Or to put it another, why not say that using XML is hard because you have to write an XML parser in order to retrieve the data you want from the ZNG response whereas you already have a MARC handler.

Reading the ZNG paper it looks to me like ZNG is in danger of throwing the baby out with the bath water.

-- Ed --

===========================================================
Ed Davidson                  | Net: ed.davidson@fdgroup.com            
Software Manager             | Tel: +44-(0)114-2816473
Fretwell-Downing Informatics | Fax: +44-(0)114-2816041                                      
===========================================================

The information transmitted in this electronic mail message and any 
documents attached are intended only for the person or entity to which it 
is addressed and may contain confidential and or privileged materials.  Any 
review, retransmission, dissemination or other use of or taking of any 
action in reliance upon, this information by persons or entities other than 
the intended recipient is prohibited.  If you receive this e-mail in error, 
please contact the sender and delete the material from any computer.
===========================================================



-----Original Message-----
From:	LeVan,Ralph [SMTP:levan@oclc.org]
Sent:	Friday, 13 July, 2001 4:41 PM
To:	'Joe Futrelle'; ZIG
Subject:	RE: ZNG: "Z39.50 Next Generation"

> -----Original Message-----
> From: Joe Futrelle [mailto:futrelle@ncsa.uiuc.edu]
> Sent: Friday, July 13, 2001 10:56 AM
> To: ZIG
> Subject: Re: ZNG: "Z39.50 Next Generation"
> What is the feeling of ZNG proponents about XER?  To me the advantage
> it has over XML-Schema is its nice, simple system for encoding binary
> data.
> 
> A much more conservative approach to "modernizing" Z39.50 is to encode
> protocol messages in XER and transport them over HTTP, say in SOAP.

We weren't looking for conservative.  We were looking to make it easy for
non-Z39.50 implementors to use our databases.  I have developers here at
OCLC that are desperate for something much lighter than embedded Z39.50
clients to fetch records out of databases.

If a developer needs the title of the record with ISBN of 12345, they can do
it either of these two ways:

Z39.50 Classic: Open a connection to a Z39.50 server.  Create an
InitRequest.  Send the request.  Try to read the response (not a trivial
task, especially with indefinite length BER).  Decode the response and
verify that a session has been established.  Create a SearchRequest for term
"12345" with Use attribute=7, Relation attribute=3, Position attribute=3,
Structure attribute=? (should that be a Word or a Phrase or a Key?),
Truncation attribute=100 and God only knows what the Completeness attribute
means anyway.  Send the request and wait for the response.  Verify that the
search worked.  Create a PresentRequest asking for the first (and hopefully
only) document in USMARC format.  Send the request and wait for the
response.  Get the record out of the response, give it to the USMARC record
handling utility and get the title.  Close the connection to the Z39.50
server.

ZNG: Make the URL, send it and get the response (done with these six lines
of Java code: URLConnection uc= new URLConnection(new URL(
"http://www.firstsearch.oclc.org/WorldCat/recordSchema=DublinCore?isbn=12345
"));
int reclen=uc.getContentLength(); InputStream is=uc.getInputStream(); byte[]
buf=new byte[reclen]; while((len=is.read(buf, offset, buf.length-offset))>0)
offset+=len; is.close(); )
Give the response to the XML record handling utility and get the title.

We've been developing Z39.50 utilities here at OCLC for more than ten years
now and have considerable expertise in the area.  But we constantly have
problems trying to explain how to do this to our programmers.  The new way
to do it is trivial and uses standard tools that we expect all programmers
to understand.

Ralph

Ralph

Received on Friday, 13 July 2001 12:20:36 UTC