Wenger sf xin-barton
-
Upload
enug -
Category
Technology
-
view
1.252 -
download
2
description
Transcript of Wenger sf xin-barton
SFX in Barton The project that wouldn't end
Beth Brennan, Metadata Systems Librarian
Rich Wenger, E-resource Systems Manager
Why put SFX buttons in the catalog?
Accessing e-resources via Barton has always been a problem, especially from off campus
Needed a consistent way to send users through the proxy server
Wanted to stop maintaining URLs in Aleph records
Recent explosion of e-book records in the catalog
SFX in Barton | ENUG 2011 Page 2
A collaborative effort Other members of the project team: Systems
Goddess (Christine Moulen),catalogers (Ben Abrahamse, Jennifer Edwards), serials acquisitions (Kim Maxwell), and usability experts (Darcy Duke, Melissa Feiden) Everyone worked on different pieces of the puzzle;
none of us could do this presentation alone Working meetings, where we threw out ideas, made
quick server-side changes, and saw immediate results (to embrace or discard) SFX in Barton | ENUG 2011
Page 3
Why this project took so long
SFX buttons could be integrated into Aleph since version 14. And others have done so. However...
We wanted to put SFX buttons where we wanted them, and when we wanted them
Only show the button if it is very likely to take the user to an e-resource
SFX in Barton | ENUG 2011 Page 4
Why this project took so long
Earlier attempts failed to get the information we needed onto the OPAC pages we needed it to appear on
Poor collaboration between Ex Libris' Aleph and SFX support teams
Other projects took priority while we struggled for solutions
SFX in Barton | ENUG 2011 Page 5
Obstacles Aleph provides a conditional SFX button on the Full
record display only, but patrons often don't look past the Brief results
Aleph puts the button at the top of the page, and we preferred other placement
Conditionality options were not sufficient
Aleph provides an unconditional SFX button on the Brief results, in table view only. Our default is list view
SFX in Barton | ENUG 2011 Page 6
Solution: Aleph fix scripts Finally created a simple fix script that put the system
number into the OPAC record displays
From there, things started to fall into place, and the fix script blossomed into a display tag that helps to determine:
o Conditionality and quantity of SFX buttons, display of URL and HOL public notes, and even whether to display HOL at all
o C:\Users\rwenger\Documents\Aleph\OPAC\Hi-level_animated.pptx
SFX in Barton | ENUG 2011 Page 7
Aleph fix scripts The fix builds this: SFX91 L $$s0-0-0-2-9-3-5-9-2 $$lMIT01$$901$$zbutton~~~$$pAvail$$av.122:no.1
(2000:Feb.)- Which tells the Java Script:
o Aleph system number 000293592 (for SFX Z39.50 lookup) is an MIT01 record (as opposed to MIT30 course record)
o It should display 1 SFX button, with the caption: v.122:no.1 (2000:Feb.)-
o Availability lines should be shown (print HOL)
SFX in Barton | ENUG 2011 Page 8
SFX tag Created from SYS so EVERY record has one
Determines if the record gets a button and how many
Determines if there are print holdings to display as well
Shows summary holdings statement next to button, if Barton has only one, or shows generic message and lets the SFX menu show more complicated details
SFX in Barton | ENUG 2011 Page 9
Subfields: part 1 $$a: Summary holdings statement
$$i: Summary holdings public note
$$l: MIT01 or MIT30 (doc library identifier)
$$p: Avail (only possible value - means there ARE non-internet holdings)
$$q: NoAva (only possible value - means there are NO non-internet holdings)
$$s: SYS padded with hyphens
SFX in Barton | ENUG 2011 Page 10
Subfields: part 2
$$z: Place holder saying if you need a button, and how to count it for stats
$$8: 00 (only possible value - meaning this record has NO URLs)
$$9: Counter, tells you how many URLs are in the record
SFX in Barton | ENUG 2011 Page 11
Temporary subfields
There are two subfields that are temporarily used during the script, but are gone before the final rendering of the page:
o $$a (used and deleted before the summary holdings are made) holds the marker identifying a Books24x7 or MARCit record
o $$u holds the URL itself (http://.....)
SFX in Barton | ENUG 2011 Page 12
URL counting We needed to know how many URLs are in the
record, and which to turn into buttons
We use two tags to figure this out...
o One ends up feeding the final count and other details to the SFX tag which generates the button (URL tag)
o The other is used to hold data to enable multiple buttons to display (U564 tag)
SFX in Barton | ENUG 2011 Page 13
URL tag We prevent the fix from counting certain kinds of
URLs
o Local 'get' URLs (unless it's the only one)
o Table of Contents
Use col.7 of fix table to add counter
Only the LAST copy of this tag is kept
This tag feeds data to the SFX tag and helps create summary holdings or generic message
SFX in Barton | ENUG 2011 Page 14
Adding summary holdings Split NET from other summary holdings statements
(SMHL tag)
Convoluted way to mark if there's more than one NET summary holding o Mark NOT-FIRST with $$7mlt o Combine $$7 into URL tag o Re-combine $$7 and $$9 of URL tag into SMHL
tag Delete SMHL if $$9 ≠ 0; or if $$7mlt is present
SFX in Barton | ENUG 2011 Page 15
U564 tag
Holds URL data when multiple buttons are displayed
This is where 856 $z and $3 notes are really displayed from
Counter ($$9) says which button the data goes with
All U564 tags are kept, EXCEPT for serials which only ever get one button
SFX in Barton | ENUG 2011 Page 16
Data clean up
Consistency of public notes in URL and HOL tags
o Remove references to on campus vs. off campus access, as the proxy server handles this now
Fix incorrect or obsolete indicators on URL tags
Fix subfielding in URL tags
Clean up URLs that contain proxy string
SFX in Barton | ENUG 2011 Page 17
Aleph OPAC
Construct conditional buttons on Brief lists and Full pages, short-b-body-mit01 and full-999-body-mit01 according to information passed to the page(s) from sfx_brief.fix and sfx_full.fix
o Use Aleph-supplied SFX button when possible
o Remove disabled Aleph-supplied button in all cases where it exists
SFX in Barton | ENUG 2011 Page 19
JavaScript (1/3)
0-0-0-2-9-3-5-9-2MIT0101button~~~Avail | v.122:no.1 (2000:Feb.)-
000293592 System number MIT01 Doclib 01 URL count button~~~ 'button~~~', or 'Books24x7', or 'MARCit~~~' Avail 'Avail' or 'NoAva' v.122:no.1 (2000:Feb.)- text string to append after the button
SFX in Barton | ENUG 2011 Page 21
JavaScript (2/3)
o Uses DOM methods throughout • document.getElementsByTagName • document.getElementById • document.createElement • document.createTextNode • parentNode.removeChild • encodeURIComponent • firstChild.nodeValue • setAttribute • appendChild
SFX in Barton | ENUG 2011 Page 22
JavaScript (3/3)
o Function library loaded by header files: • direct-head-mit01 • full-set-head-ill • full-set-head-ill-nobor • short-1-head-mit01 • short-2-head-mit01 • short-4-head-mit01
SFX in Barton | ENUG 2011 Page 23
URL construction (1/5)
Construct 4 different types of URLs depending on the data passed from the fix routines
SFX in Barton | ENUG 2011 Page 24
URL construction (2/5) 1. Books24x7
http://owens.mit.edu/sfx_local? bookid=14841 &rft.genre=book &sid=Barton:Books24x7
2. MARCit http://owens.mit.edu/sfx_local? &rft.object_id=1000000000216454 &rfr_id=info:sid/sfxit.com:MARCit file://C:\Users\rwenger\Documents\Aleph\OPAC\url1.pptx
SFX in Barton | ENUG 2011 Page 25
URL construction (3/5)
3. Aleph
http://library.mit.edu:80/F/? func=service-sfx &doc_number=001701742 &line_number=0000 &service_type=RECORD file://C:\Users\rwenger\Documents\Aleph\OPAC\url2.pptx
SFX in Barton | ENUG 2011 Page 26
URL construction (4/5)
4. 856_url
http://walter.mit.edu/F/? func=service-sfx &line_number=0000 &service_type=RECORD &doc_number=001706051 C:\Users\rwenger\Documents\Aleph\OPAC\url3.pptx
SFX in Barton | ENUG 2011 Page 27
URL construction (5/5)
856_url (second of 2)
http://owens.mit.edu/sfx_local? &rfr_id=info:sid/ALEPH:MIT01 &856_url=http://purl.access.gpo.gov/GPO/LPS117034
SFX in Barton | ENUG 2011 Page 28
SFX (1/2)
Using OpenURL version 1.0
Activate 856_url target with proxy flag checked
Enable z39.50 fetch of MARC record from Aleph
o We set up a separate logical base for this, specified in config/source/OpenURL_0_1/aleph.config_ and config/z3950_lookup.config
SFX in Barton | ENUG 2011 Page 29
SFX (2/2)
Display logic rule
o Only display 856_url target if there are no other full text targets eligible
SFX in Barton | ENUG 2011 Page 30
Ezproxy
Include Barton URLs in config.txt
Set up proxy_URL API for catalogers
o Requires "ProxyURLPassword xxxxxxxx" directive in config.txt
o https://walter.mit.edu/shib/proxylookup.cgi
SFX in Barton | ENUG 2011 Page 31
Obstacles (1/8)
Semicolons and ampersands in URLs croak SFX http://library.mit.edu/item/001733820
o Regular encoding doesn't work because JavaScript window.location and window.open automatically decode them
SFX in Barton | ENUG 2011 Page 32
Obstacles (2/8)
o Required double encoding. Semicolon becomes '%253b'. JS will convert '%25' to '&'. SFX will convert '&3b' to semicolon on the redirect URL
o Doesn't work on Books24x7 & MARCit URLs. Only applied to "856_url=" parameters
SFX in Barton | ENUG 2011 Page 33
Obstacles (3/8) SFX source parser errors
o ALEPH.pm chokes on some author names. Early failures were bypassed by switching to ver. 1.0 OpenURLs. Currently this is also failing in a few cases
o Temporarily circumvented it by modifying the parser
o SI 16384-249922 is open and in development
SFX in Barton | ENUG 2011 Page 34
Obstacles (4/8)
Some browsers require structures be closed before invoking JavaScript on them. Good practice.
o Wrong: <td> <script> </script> </td>
o Right: <td> </td> <script> </script>
SFX in Barton | ENUG 2011 Page 35
Obstacles (5/8)
ALEPH.pm does not retrieve URLs in 956 fields
o Constructed a server-side fix routine for z39.50 that moves URLs in local 956 fields into 856 fields. sfx_z39.fix
o Logical base created to invoke this fix and handle record length problem (new z39_server_MIT01SFX.conf)
SFX in Barton | ENUG 2011 Page 36
Obstacles (6/8)
We were seeing duplicate 856_url targets on the SFX menu
o Needed to turn on the 'deduplication' option on the Related Objects Admin page
SFX in Barton | ENUG 2011 Page 37
Obstacles (7/8)
Aleph was constructing mangled OpenURLs
o Fixed in sfx-record-ver-1.0
SFX in Barton | ENUG 2011 Page 38
Obstacles (8/8)
SFX record fetch for MIT30 records failed because of different doc numbers
o /exlibris/sfx_ver/sfx_version_3/sfxlcl3/config/source/source_v1_0.dir modified. Changed "ALEPH.*" to "ALEPH.MIT01". This allows MIT30 URLs with ISBNs and ISSNs to resolve successfully until we decide how to handle MIT30 doc numbers
SFX in Barton | ENUG 2011 Page 39
Demos SFX button supplied by Aleph
o http://walter.mit.edu/item/000336947
856_url
o http://walter.mit.edu/item/001706051
Multiple URLs
o http://walter.mit.edu/item/000922127
SFX in Barton | ENUG 2011 Page 40
Round 2 adjustments Overrides:
o SE were forced to have 1 button, but we found times we needed the multiple button
o Sometimes SFX knew less than Barton, and was interfering by trying a title search (e.g. Annual report)
Display text coming from summary HOL *and* notes with the URL
New index on the 'button~~~' led to improved logical base for electronic resources
SFX in Barton | ENUG 2011 Page 41
Finis
Aleph, SFX, Searching, one for the other,
Together at last.
Beth Brennan, [email protected] Rich Wenger, [email protected]
SFX in Barton | ENUG 2011 Page 42