Net::Z3950, OPAC record syntax multiple MFHD 866

2004-08-18 Thread Michael D Doran
Please excuse the cross-posting (perl4lib  Net-z3950).

I am working with a Perl script designed to query our catalog via Net::Z3950
and retrieve a journal record.  The OPAC record syntax is specified because
the ultimate point of the script [1] is to parse the journal holdings to
determine if a particular year is owned by our library.  Our holdings (MFHD)
records often contain multiple 866 fields (which contain the actual holdings
info); however, Net::Z3950 only returns the *last* 866 from a MFHD record,
thereby giving an incomplete list of holdings.  

Below is the relevant code:
 
  use Net::Z3950;
  $issn = '0028-0836'
  $query = '@attr 1=8 ' . $issn;
  $target = 'pulse.uta.edu';
  $port = 7099;
  $database = 'pulse';
  $recordSyntax = 'OPAC';
  $conn = new Net::Z3950::Connection($target, $port, databaseName =
$database);
  $rs = $conn-search(-prefix = $query);
  $rs-option(preferredRecordSyntax = $recordSyntax);
  for ( $i = 1; $i = $rs-size(); $i++ ) {
$rec = $rs-record($i);
$marc = $rec-render();
print $marc;
  }

If I search for the journal Nature (ISSN 0028-0836) which in our catalog has
these multiple 866s in the first holdings record:

  866  0 _av.253(1975)-v.344(1990:Apr.),
  866  0 _av.345(1990)-v.426(2003:Nov.20),
  866  0 _av.426(2003:Dec.)-v.429(2004:May)
  866  0 _aINDEXES
v.277(1979)-v.348(1990),v.403-408(2000),v.415(2002)-v.426(2003)

...I get this MARC data returned by Net::Z3950.  Note the enumAndChron
line which contains the 866 info.

* Bibliographic record:
snip
245  00  $aNature.
260  $a[London, etc.,$bMacmillan Journals ltd.]
snip
* Holdings record 1 of 4:
typeOfRecord: y
encodingLevel: 4
receiptAcqStatus: 4
generalRetention: 8
completeness: 4
dateOfReport: 00
nucCode: sel,per
localLocation: Science  Engineering Library: Periodicals
callNumber: Q 1
enumAndChron: ^_aINDEXES
v.277(1979)-v.348(1990),v.403-408(2000),v.415(2002)-v.426(2003)
snip

As you can see, Net::Z3950 only returns the last 866 field.

So my questions are:
1) Has anyone else noticed/experienced this behavior (i.e. only getting the
last 866)?  I'm trying to determine if this behavior is unique to how I am
implementing/configuring Net::Z3950 and/or if it is ILMS specific.  This is
my first time using Net::Z3950, so if I'm doing something wrong, please
correct me.

2) Is this behavior by design or is it a bug?  According to the MARC
standard, the MFHD 866 is repeatable [2].  Please disregard the fact that we
have Index holdings in the 866 rather than the 868 ...or why we are using
multiple 866 even for regular holdings.  Those issues are not under my
control.

3) If it is a bug, is it in Net::Z3950 or is it in the Z39.50 protocol or in
the Voyager Z39.50 implementation/API.  (I have limited experience with
Z39.50 and the only other client I have, BookWhere, does not appear to offer
the OPAC record syntax.)  If it is in the Net::Z3950 module can it be
fixed?  :-)

I have browsed the Net-z3950 listserv archive back to September 2003 (when
version 0.36, which added support for the OPAC record syntax, was released)
and didn't see any mention of this behavior.

Our software and versions:
  Net::Z3950 version 0.39 (on Solaris)
  Our ILMS is Endeavor's Voyager, version 2001.2

Thanks!

-- Michael

[1] The script is designed as an SFX plug-in and was written by David Walker
of Cal State San Marcos
http://library.csusm.edu/csu/sfx/local_holding_chameleon.asp
[2] MARC 21 Concise Holdings: Textual Holdings Statement Fields (866-868)
http://www.loc.gov/marc/holdings/echdtext.html

# Michael Doran, Systems Librarian
# University of Texas at Arlington
# 817-272-5326 office
# 817-688-1926 cell
# [EMAIL PROTECTED]
# http://rocky.uta.edu/doran/


RE: Undelivered Mail Returned to Sender

2004-08-05 Thread Michael D Doran
Hi Linh,

Perl4lib is no longer hosted at listserv.rice.edu.  Try one of the options
below.

To unsubscribe, send a message to:

[EMAIL PROTECTED]

...or...

 To remove your address from the list, just send a message to
 the address in the ``List-Unsubscribe'' header of any list
 message. If you haven't changed addresses since subscribing,
 you can also send a message to:

   [EMAIL PROTECTED]

-- Michael

# Michael Doran, Systems Librarian
# University of Texas at Arlington
# 817-272-5326 office
# 817-688-1926 cell
# [EMAIL PROTECTED]
# http://rocky.uta.edu/doran/ 

 -Original Message-
 From: Linh Le [mailto:[EMAIL PROTECTED] 
 Sent: Tuesday, August 03, 2004 3:51 PM
 To: [EMAIL PROTECTED]
 Subject: Fwd: Undelivered Mail Returned to Sender
 
 Help, 
  
 I tried to send a signoff command to 
 [EMAIL PROTECTED] but got the error.
  
 Linh
 


RE: Displaying diacritics in a terminal vs. a browser

2004-07-06 Thread Michael D Doran
 MARC-XML uses Unicode Normal form D, which means that the base
 character is separate from the diacritic.

I am not familiar with the MARC-XML specifications, so at the risk of
embarrasing myself would it be correct to posit that it may not be that
MARC-XML uses Unicode Normal form D, so much as the fact that the MARC 21
UCS/Unicode environment is essentially the MARC-8 character repertoire
translated into the Unicode equivalent code points [1].  Since the MARC-8
character repertoire relies largely on combining characters, the end result
will mostly be Unicode Normal form D.  However, there *are* exceptions.  One
example is UPPERCASE O-HOOK which is a single character in MARC-8 (hex AC),
and therefore a precomposed character in MARC UCS/Unicode (hex 01A1) [and
therefore I assume MARC-XML], even though there is a decomposed (i.e. Normal
Form D) Unicode version (hex 006F 031B) of that character.

I have been trying to learn about character sets, especially in regards to
MARC and library environments and have put some (hopefully) useful
information on the web [2].  Included is a technical primer for librarians
as well as extensive code charts/matrices for MARC character sets.  There is
a fairly decent list of web resources [3].  Note that the powerpoint slide
show is of limited use without the original commentary and is a huge file
due to including embedded fonts.

[1] Coded Character Sets  A Technical Primer for Librarians  MARC Unicode
http://rocky.uta.edu/doran/charsets/unicode.html

[2] Coded Character Sets
http://rocky.uta.edu/doran/charsets/

[3] Resources on the Web: With an emphasis on library automation and the
internet
http://rocky.uta.edu/doran/charsets/resources.html

BTW, the earlier message I sent to the list had an unfinished sentence.  I
should have proofread before sending and I apologize.

-- Michael

# Michael Doran, Systems Librarian
# University of Texas at Arlington
# 817-272-5326 office
# 817-239-5368 cell
# [EMAIL PROTECTED]
# http://rocky.uta.edu/doran/