Release Notes - ILL Wizard
Version 1.0 Technology Preview

Welcome to ILL Wizard for Java, version 1.0 Technology Preview (OCLC Direct Request Edition). ILL Wizard is a web-client program that allows library users to request interlibrary loan (ILL) materials through its ILL service provider (in this case OCLC) directly without needing to fill out a paper form or consult a librarian. This increases the efficiency of the library staff and allows patrons to feel more in control of their library experience. The program takes advantage of a new OCLC technology called Direct Request, which uses the international interlibrary loan standard designated ISO-10161, and lets libraries choose the method used to handle interlibrary loan requests: 1) to send the output directly to OCLC's Review File; 2) to send the output directly to the first lender in a string of five which is generated automatically based on priorities created by library staff; or 3) to send the output to a predetermined list of OCLC ILL lenders.

The term wizard is a Windows standard that means "a sequence of dialog boxes that present specific questions about what you want to create. Once you answer the questions, the wizard completes the task. (MSDN Library Visual Studio 6.0 Release)" This is precisely what ILL Wizard does. Although the individual pages of the applet are not literally dialog boxes, they are representative of information retrieved in a dialog format. Each page gets part of the information required for the entire request, and when the user is ready to submit the request the applet takes all the information entered by the user and constructs a complete, formatted request.

Contents
Distribution
Installation
Applet Parameters
Operation
Known Issues
Contacts and Credits


Distribution

ILL Wizard 1.0 is distributed in ZIP archive format at http://www.bwilhelm.org/illwizard/illwizard-current.zip and also at http://www.olivet.edu/departments/Library/ILL/ill.html. It contains the following files:

       matrixgen
             matrixgen.exe
             README.txt
       readme
             binary.xbm
             dir.xbm
             icon_error.png
             icon_information.png
             icon_warning.png
             illwizard.png
             image.xbm
             README.html (This document)
             security_microsoft.png
             security_netscape.png
             text.xbm
             xbm.xbm
       icon_error.png
       icon_information.png
       icon_warning.png
       illwizard.cab
       illwizard.png
       illwizard.html
       illwizard.jar

The matrixgen directory contains the utility for encoding the authorization and password for the applet parameter list. The readme directory contains all the files necessary for this document. The Root directory contains the files for the ILL Wizard Java applet program.


Installation

Server System Requirements: Any web server platform will handle this program correctly.
Client System Requirements: Minimum: Microsoft Internet Explorer 4.01 or Netscape Navigator 4.51. Recommended: Microsoft Internet Explorer 5.0.

IMPORTANT NOTICE:
This applet will function properly as is if the output is sent to the Review File. The applet will not function properly if the output is sent Direct to Vender or Direct to Profile until the OCLC Direct Request planning guide has been completed.

The final two applet parameters in the illwizard.html file will send the output to OCLC's test environment server. You must call OCLC at 800-848-5800 to verify that your test requests have processed correctly. OCLC will supply the address and port for their interlibrary loan production server. Note that the corresponding applet parameters will need to be changed to the new target when this occurs.

The URL of the planning guide is: http://www.oclc.org/oclc/man/9921dill/


  1. Download. Download the distribution archive (illwizard-current.zip) to your workstation and extract the files into a temporary directory. There are several good extraction utilities available for Windows such as WinZip and PKZip. Utilities are also available for Macintosh, and Unix platforms.
  2. Edit. Open the HTML file in a text editor1 and modify the page so that it is as consistent with the rest of your site as possible. The applet parameters must also be modified to match your local requirements and situation. The parameters are to be placed in the JavaScript variables at the beginning of the Java section of the page. Full descriptions of the applet parameters are given later in this document.
  3. Upload. When the files are completely prepared, upload the program files (those listed in the root directory above in the distribution section) to the server in the same directory where you plan to link to the HTML file.
1 Do not open the file in a graphical web page editor, such as FrontPage. Most of these editors will remove or distort the Java and JavaScript code on the page.

Side Notes
Those familiar with ONU-ILL 3.2 will recall the server dæmon, redir, which is conspicuously absent from the distribution and installation directions. This applet gets permission from Java applet security to use the client system network facilities, allowing the applet to connect directly with OCLC rather than indirectly through the host server. This eliminates the burden on the web server and streamlines the installation process.

Another major improvement over the previous product is that no source code modification or recompilation is required. This is because all modifications and customizations can be made through the applet parameters. This means that there is no need to download additional products and utilities, dig through pages of source code, or worry about the Java or command line syntaxes.


Applet Parameters

The applet is configured entirely through the parameters passed to the applet. These parameters can be seen below, and take the form

<param name="Parameter-Name" value="Parameter value">

In the current implementation, the parameters are generated by JavaScript from parameter variables which take the form

var ParameterName = "Parameter value" ;

The parameters used by this applet are:

Main-Background-Color
The background color of the main part of the applet (normally the same as the HTML page background color). Possible values include the six hexadecimal digit value (RGB) that is used for HTML color values with the leading '#' symbol, or one of the following color strings.

ALICEBLUE
(#F0F8FF)
ANTIQUEWHITE
(#FAEBD7)
AQUA
(#00FFFF)
AQUAMARINE
(#7FFFD4)
AZURE
(#F0FFFF)
BEIGE
(#F5F5DC)
BISQUE
(#FFE4C4)
BLACK
(#000000)
BLANCHEDALMOND
(#FFEBCD)
BLUE
(#0000FF)
BLUEVIOLET
(#8A2BE2)
BROWN
(#A52A2A)
BURLYWOOD
(#DEB887)
CADETBLUE
(#5F9EA0)
CHARTREUSE
(#7FFF00)
CHOCOLATE
(#D2691E)
CORAL
(#FF7F50)
CORNFLOWER
(#6495ED)
CORNSILK
(#FFF8DC)
CRIMSON
(#DC143C)
CYAN
(#00FFFF)
DARKBLUE
(#00008B)
DARKCYAN
(#008B8B)
DARKGOLDENROD
(#B8860B)
DARKGRAY
(#A9A9A9)
DARKGREEN
(#006400)
DARKKHAKI
(#BDB76B)
DARKMAGENTA
(#8B008B)
DARKOLIVEGREEN
(#556B2F)
DARKORANGE
(#FF8C00)
DARKORCHID
(#9932CC)
DARKRED
(#8B0000)
DARKSALMON
(#E9967A)
DARKSEAGREEN
(#8FBC8B)
DARKSLATEBLUE
(#483D8B)
DARKSLATEGRAY
(#2F4F4F)
DARKTURQUOISE
(#00CED1)
DARKVIOLET
(#9400D3)
DEEPPINK
(#FF1493)
DEEPSKYBLUE
(#00BFFF)
DIMGRAY
(#696969)
DODGERBLUE
(#1E90FF)
FIREBRICK
(#B22222)
FLORALWHITE
(#FFFAF0)
FORESTGREEN
(#228B22)
FUCHIA
(#FF00FF)
GAINSBORO
(#DCDCDC)
GHOSTWHITE
(#F8F8FF)
GOLD
(#FFD700)
GOLDENROD
(#DAA520)
GRAY
(#808080)
GREEN
(#008000)
GREENYELLOW
(#ADFF2F)
HONEYDEW
(#F0FFF0)
HOTPINK
(#FF69B4)
INDIANRED
(#CD5C5C)
INDIGO
(#4B0082)
IVORY
(#FFFFF0)
KHAKI
(#F0E68C)
LAVENDER
(#E6E6FA)
LAVENDERBLUSH
(#FFF0F5)
LAWNGREEN
(#7CFC00)
LEMONCHIFFON
(#FFFACD)
LIGHTBLUE
(#ADD8E6)
LIGHTCORAL
(#F08080)
LIGHTCYAN
(#E0FFFF)
LIGHTGOLDENRODYELLOW
(#FAFAD2)
LIGHTGREEN
(#90EE90)
LIGHTGREY
(#D3D3D3)
LIGHTPINK
(#FFB6C1)
LIGHTSALMON
(#FFA07A)
LIGHTSEAGREEN
(#20B2AA)
LIGHTSKYBLUE
(#87CEFA)
LIGHTSLATEGRAY
(#778899)
LIGHTSTEELBLUE
(#B0C4DE)
LIGHTYELLOW
(#FFFFE0)
LIME
(#00FF00)
LIMEGREEN
(#32CD32)
LINEN
(#FAF0E6)
MAGENTA
(#FF00FF)
MAROON
(#800000)
MEDIUMAQUAMARINE
(#66CDAA)
MEDIUMBLUE
(#0000CD)
MEDIUMORCHID
(#BA55D3)
MEDIUMPURPLE
(#9370DB)
MEDIUMSEAGREEN
(#3CB371)
MEDIUMSLATEBLUE
(#7B68EE)
MEDIUMSPRINGGREEN
(#00FA9A)
MEDIUMTURQUOISE
(#48D1CC)
MEDIUMVIOLETRED
(#C71585)
MIDNIGHTBLUE
(#191970)
MINTCREAM
(#F5FFFA)
MISTYROSE
(#FFE4E1)
MOCCASIN
(#FFE4B5)
NAVAJOWHITE
(#FFDEAD)
NAVY
(#000080)
OLDLACE
(#FDF5E6)
OLIVE
(#808000)
OLIVEDRAB
(#6B8E23)
ORANGE
(#FFA500)
ORANGERED
(#FF4500)
ORCHID
(#DA70D6)
PALEGOLDENROD
(#EEE8AA)
PALEGREEN
(#98FB98)
PALETURQUOISE
(#AFEEEE)
PALEVIOLETRED
(#DB7093)
PAPAYAWHIP
(#FFEFD5)
PEACHPUFF
(#FFDAB9)
PERU
(#CD853F)
PINK
(#FFC0CB)
PLUM
(#DDA0DD)
POWDERBLUE
(#B0E0E6)
PURPLE
(#800080)
RED
(#FF0000)
ROSYBROWN
(#BC8F8F)
ROYALBLUE
(#4169E1)
SADDLEBROWN
(#8B4513)
SALMON
(#FA8072)
SANDYBROWN
(#F4A460)
SEAGREEN
(#2E8B57)
SEASHELL
(#FFF5EE)
SIENNA
(#A0522D)
SILVER
(#C0C0C0)
SKYBLUE
(#87CEEB)
SLATEBLUE
(#6A5ACD)
SLATEGRAY
(#708090)
SNOW
(#FFFAFA)
SPRINGGREEN
(#00FF7F)
STEELBLUE
(#4682B4)
TAN
(#D2B48C)
TEAL
(#008080)
THISTLE
(#D8BFD8)
TOMATO
(#FF6347)
TURQUOISE
(#40E0D0)
VIOLET
(#EE82EE)
WHEAT
(#F5DEB3)
WHITE
(#FFFFFF)
WHITESMOKE
(#F5F5F5)
YELLOW
(#FFFF00)
YELLOWGREEN
(#9ACD32)

The color strings are not case-sensitive. This parameter is NOT required. The default color is WHITE.

Main-Foreground-Color
The color of the text on the main part of the applet. Possible values are the same as for Main-Background-Color. This parameter is NOT required. The default color is BLACK.

Menu-Background-Color
The background color of the menu bar on the applet. Possible values are the same as for Main-Background-Color. This parameter is NOT required. The default color is WHITE.

Institution-Name (*)
The name of the sponsoring institution, usually this will be the name of the college or university. THIS IS A REQUIRED PARAMETER.

Library-Name (*)
The name of the borrowing library sponsoring the ILL activity. THIS IS A REQUIRED PARAMETER.

Library-Symbol (*)
The OCLC-assigned three-letter authorization symbol. THIS IS A REQUIRED PARAMETER.

Access-Security-Matrix (*)
This is an encoded field containing the information for the authorization and password to the interlibrary loan service provider, OCLC. The security matrix code is generated with matrixgen.exe provided with ILL Wizard. See the MatrixGen readme text file for more information. THIS IS A REQUIRED PARAMETER.

Valid-Users
Specifies the valid network addresses that may access this program. The values are IP addresses or partial IP addresses separated by semicolons. For example, "172" specifies that all IP users in 172.X.X.X may access the applet, "172.16;172.17" specifies that all IP users in 172.16.X.X and 172.17.X.X may access the applet. If a full IP address is given then only the single machine with that IP may use the applet. This is NOT a required parameter, but is highly recommended. If this parameter is missing or blank then all users are allowed access. If an invalid user attempts to access the page, they are immediately redirected to the URL specified in the Cancel-Page parameter.

ILL-Service-Type
The processing method used for online requests. Possible values include PROFILE, LENDER, and REVIEW FILE. These values are not case-sensitive. THIS IS A REQUIRED PARAMETER.

Set this parameter to PROFILE to send all requests directly to the first lender which is generated by OCLC's Direct Request. Use LENDER to send all requests to a specified list of OCLC lender instituion symbols. Use REVIEW FILE to send all requests to the OCLC ILL module which is accessed through OCLC's Passport or ILL MicroEnhancer.

Lender-List (**)
If the ILL-Service-Type is set to LENDER, this is the list of lending institution to send the request. This is a required parameter if the ILL-Service-Type is set to LENDER, otherwise it is ignored.

Max-Requests
The maximum number of requests that are allowed per session. This should be a positive integer value. If the value is 0, missing, or invalid, the value is practically unlimited. This parameter is NOT required.

The following fields are combined to create a mailing address to the borrowing institution. They should be filled in as completely as possible.
Delivery-Name (*) REQUIRED
Delivery-Extension NOT REQUIRED
Delivery-Street (*) REQUIRED (only if Delivery-POBox is empty)
Delivery-POBox (*) REQUIRED (only if Delivery-Street is empty)
Delivery-City (*) REQUIRED
Delivery-State (*) REQUIRED
Delivery-Country NOT REQUIRED (default value is "USA")
Delivery-ZIP-Code (*) REQUIRED

Delivery-Service
Defines reciprocal agreements or other library organizations to which the borrowing institution may belong. This parameter is NOT required.

Electronic-Service
Defines electronic reciprocal agreements or other library organizations to which the borrowing institution may belong. This parameter is NOT required.

Library-Phone
The phone number for the borrowing institution, usually for the interlibrary loan personnel. This parameter is NOT required.

Library-Fax
The fax number for the borrowing institution, usually for the interlibrary loan personnel. This parameter is NOT required, but is highly recommended in for article request service.

Library-Email
The email address for the borrowing institution, usually for the interlibrary loan personnel. This parameter is NOT required.

Max-Cost (*)
A string value representing the maximum allowable cost that the borrowing institution will pay for an item. THIS IS A REQUIRED PARAMETER.

Nonmember-Request
Determines whether the borrowing institution allows anyone other than faculty, staff, or students to use the interlibrary loan service. Others may include library-card holders, guests or visitors of the library, or any other patron types. Possible values are "YES" and "NO". These values are not case-sensitive. This parameter is NOT required, but the default value is "NO".

Book-Note
Any message that the borrowing institution wishes to attach to all book requests from this library. This parameter is NOT required.

Periodical-Note
Any message that the borrowing institution wishes to attach to all periodical requests from this library. This parameter is NOT required.

Cancel-Page (*)
The URL of the page where the browser should go if the user presses the Cancel button or an invalid user attempts to access the page. This value must be a valid URL. THIS IS A REQUIRED PARAMETER.

Submit-Page (*)
The URL of the page where the browser should go if the user presses the Submit button. This value must be a valid URL. THIS IS A REQUIRED PARAMETER.

Online-Catalog-Page
The URL of the borrowing institution's online catalog. This value must be a valid URL. This parameter is NOT required.

Periodical-Holdings-Page
The URL of the borrowing institution's periodical holdings page. The value must be a valid URL. This parameter is NOT required.

ILL-Server-Address (*)
The address for the server of the ILL service provider, OCLC. While in the testing phase of the OCLC planning guide, this parameter should be set to "testenv.oclc.org". THIS IS A REQUIRED PARAMETER.

ILL-Server-Port (*)
The port for the server of the ILL service provider, OCLC. While in the testing phase of the OCLC planning guide, this parameter should be set to "5771". THIS IS A REQUIRED PARAMETER.

Important Defaults To Note

The current implementation of ILL Wizard provides ample customization through the applet parameters; however, there are several important default settings that libraries should be aware of.

* Indicates a required parameter.
** Lender-List is required only when ILL-Service-Type is set to LENDER.


Operation

In order for the applet to load, it will require certain permissions that are not granted to Java applets by default. For this to happen, the applet has been signed with a digital certificate from Thawte Consulting. Before the browser loads the applet it will ask the user if they accept the certificate. Once this is done, the applet will be trusted by that browser on that computer. Due to differences in signature protocols, Microsoft Internet Explorer and Netscape Navigator require separately signed applet archives and will display different dialogs to the user for acceptance of the applet. These dialogs will appear similar to those below.


Figure 1 A Microsoft Internet Explorer Certificate Acceptance Dialog


Figure 2 A Netscape Navigator Certificate Acceptance Dialog

These dialogs will only be displayed once if the "Always trust content from Bryan Wilhelm" (Microsoft Internet Explorer) or "Remember this decision" (Netscape Navigator) is checked.

Operation of this applet program is relatively straight-forward. The interface helps users create a complete interlibrary loan request by allowing only the actions for which prerequisite information has been supplied. When the applet is first loaded, the proper behavior of the program is to allow the user to fill in only the user profile information. The program must have this in order to associate the request with the individual who submits it, therefore all other options on the applet menu are disabled (except "About" and "Cancel"). The program will not allow the user to continue without filling in all required fields of the user profile. The required fields are labeled with bold text. When the profile has been completed and saved the "Book Request" and "Article Request" options are enabled, but the "View Requests" and "Submit Requests" remain disabled until an item has been successfully completed and saved.

After the user has completed a request, or set of requests, they can submit them by pressed the "Submit Requests" button on the menu bar. All requested items will be submitted at once, and the OCLC server response will be posted. The condition of the submission can be plainly seen by the informational icon directly to the left of the text area.

The Meaning of the Icons on the Request Submission Page
Indicates that the request, or request set, was submitted completely and received a favorable response from the ILL host server.
Indicates that the request, or request set, was submitted completely but received a warning from the ILL host server.
Indicates that a fatal error occurred during submission of the request, or request set, and either some or all of the requests could not be submitted to the ILL host server.

Warnings typically result in the request being sent to the review file where library personnel can handle it. If a fatal error occurs, the message will indicate the problem. In most cases these can be resolved by computer professionals at the library. A few may require support from the developer, in which case the message displayed in the text area should be submitted along with a request for support.

NOTE ABOUT DUPLICATES: Duplicate requests are not handled by ILL Wizard. ILL Direct Request creates a duplicate detection key for each request using the patron name, title, and article information. If ILL Direct Request finds an ILL or Review file record with the same duplicate detection key, the request is considered a potential duplicate. Only Direct-to-Profile processing can be affected by the identification of a potential duplicate. If the Direct-to-Profile service is used, it is recommended that the profile specify that duplicates be send to the review file.


Known Issues

Known Tested Platforms

If you have tested any other platforms not mentioned in this list, submit your results to Bryan Wilhelm.

Bug Reports
Bug reports can be sent directly to Bryan Wilhelm. All reports will be investigated and results will be posted. When sending the report, be as specific as possible and include details such as the network environment, operating system (including any service packs), and browser being used. If the problem occurs on the request submission page, include a screen shot of the applet (as an attachment) and copy/paste the result text into the email.

Contacts and Credits

Research and Development
Bryan Wilhelm (bwilhelm@carolina.rr.com) graduated from Olivet Nazarene University in Bourbonnais, Illinois in 1999 with a Bachelor of Science in Computer Science and Mathematics.

Librarian Consultants
Joe Gutekanst (jogutekanst@davidson.edu) works at E.H. Little Library at Davidson College, Davidson, North Carolina.
Craighton Hippenhammer (chhammer@olivet.edu) is the Access and Information Technology Librarian for Benner Library at Olivet Nazarene University in Bourbonnais, Illinois.
Derek Rodriguez (derodriguez@davidson.edu) is the Systems Librarian at E.H. Little Library at Davidson College, Davidson, North Carolina.
Travis Ritter (tritter@darkwing.uoregon.edu) is the Library Network Manager at the University of Oregon, Eugene, Oregon.
John Rutherford (Rutherford@mail.ccsu.edu) is the Systems Librarian at Burritt Library at Central Connecticut State University in New Britain, Connecticut.

Development Tools
Microsoft Software Development Kit (SDK) for Java 4.0 (http://www.microsoft.com/java/)
Netscape Signing Tool 1.1 (http://developer.netscape.com/)
OCLC Java ASN.1/BER Library (ftp://ftp.rsch.oclc.org/pub/BER_Utilities)

MatrixGen was developed in:
Microsoft Visual C++ 6.0 (http://www.microsoft.com/vstudio)